in src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java [595:636]
XmlSchemaSimpleType handleSimpleType(XmlSchema schema, Element simpleEl, Element schemaEl,
boolean topLevel) {
XmlSchemaSimpleType simpleType = new XmlSchemaSimpleType(schema, topLevel);
if (simpleEl.hasAttribute("name")) {
simpleType.setName(simpleEl.getAttribute("name"));
}
handleSimpleTypeFinal(simpleEl, simpleType);
Element simpleTypeAnnotationEl =
XDOMUtil.getFirstChildElementNS(simpleEl, XmlSchema.SCHEMA_NS, "annotation");
if (simpleTypeAnnotationEl != null) {
XmlSchemaAnnotation simpleTypeAnnotation = handleAnnotation(simpleTypeAnnotationEl);
simpleType.setAnnotation(simpleTypeAnnotation);
}
Element unionEl;
Element listEl;
Element restrictionEl;
restrictionEl = XDOMUtil.getFirstChildElementNS(simpleEl, XmlSchema.SCHEMA_NS, "restriction");
listEl = XDOMUtil.getFirstChildElementNS(simpleEl, XmlSchema.SCHEMA_NS, "list");
unionEl = XDOMUtil.getFirstChildElementNS(simpleEl, XmlSchema.SCHEMA_NS, "union");
if (restrictionEl != null) {
handleSimpleTypeRestriction(schema, schemaEl, simpleType, restrictionEl);
} else if (listEl != null) {
handleSimpleTypeList(schema, schemaEl, simpleType, listEl);
} else if (unionEl != null) {
handleSimpleTypeUnion(schema, schemaEl, simpleType, unionEl);
}
// process extra attributes and elements
processExtensibilityComponents(simpleType, simpleEl);
return simpleType;
}