private void validateFeatureAttributes(Element element) { if (fMonitor.isCanceled()) return; assertAttributeDefined(element, "id", CompilerFlags.ERROR); //$NON-NLS-1$ assertAttributeDefined(element, "version", CompilerFlags.ERROR); //$NON-NLS-1$ NamedNodeMap attributes = element.getAttributes(); for (int i = 0; i < attributes.getLength(); i++) { String name = attributes.item(i).getNodeName(); if (!attrs.contains(name)) { reportUnknownAttribute(element, name, CompilerFlags.ERROR); } else if (name.equals("id")) { //$NON-NLS-1$ validateFeatureID(element, (Attr) attributes.item(i)); } else if (name.equals("primary") || name.equals("exclusive")) { //$NON-NLS-1$ //$NON-NLS-2$ validateBoolean(element, (Attr) attributes.item(i)); } else if (name.equals("version")) { //$NON-NLS-1$ validateVersionAttribute(element, (Attr) attributes.item(i)); } if (name.equals("primary")) { //$NON-NLS-1$ reportDeprecatedAttribute(element, (Attr) attributes.item(i)); } else if (name.equals("plugin")) { //$NON-NLS-1$ validatePluginExists(element, (Attr) attributes.item(i), false); } } }
CompilerFlags.ERROR)) { validateFeatureID(include, include.getAttributeNode("id")); //$NON-NLS-1$
validatePluginID(element, plugin, false); } else if (feature != null) { validateFeatureID(element, feature);