name = getAttribute(rootElement, "name", true);
providerName = getAttribute(rootElement, "provider-name", false);
providerUrl = getAttribute(rootElement, "provider-url", false);
licenseName = getAttribute(rootElement, "license-name", true);
licenseUrl = getAttribute(rootElement, "license-url", false);
version = new Version(getAttribute(rootElement, "version", true));
className = getAttribute(rootElement, "class", false);
system = getBooleanAttribute(rootElement, "system", false);
autoStart = getBooleanAttribute(rootElement, "auto-start", false);
priority = Math.min(MAX_PRIORITY, Math.max(MIN_PRIORITY,
getIntAttribute(rootElement, "priority", DEFAULT_PRIORITY)));