void () { XmlNSDescriptor NSDescriptor = createDescriptor( "<!ELEMENT principals ANY><!ATTLIST principals path CDATA #IMPLIED smtp-host CDATA #REQUIRED>" + "<!ATTLIST principals address CDATA #IMPLIED>"); final XmlTag tag = tag("principals"); XmlElementDescriptor elementDescriptor = NSDescriptor.getElementDescriptor(tag); XmlAttributeDescriptor attributeDescriptor = elementDescriptor.getAttributeDescriptor("path", tag); assertNotNull(attributeDescriptor); attributeDescriptor = elementDescriptor.getAttributeDescriptor("xxx", tag); assertNull(attributeDescriptor); attributeDescriptor = elementDescriptor.getAttributeDescriptor("smtp-host", tag); assertNotNull(attributeDescriptor); attributeDescriptor = elementDescriptor.getAttributeDescriptor("address", tag); assertNotNull(attributeDescriptor); XmlAttributeDescriptor[] descriptors = elementDescriptor.getAttributesDescriptors(tag); assertEquals("path", descriptors[0].getName()); assertEquals("smtp-host", descriptors[1].getName()); assertEquals("address", descriptors[2].getName()); assertEquals(3, descriptors.length); }