Interpretation of source code by XSD-to-UML transformations

The transformation generates UML elements according to the characteristics of the XSD file that you specify as the source of the transformation. Although the transformation automatically applies the stereotypes of the XSD transformation profile to the UML elements that it generates, it does not apply the XSD transformation profile to the entire model.

Elements of an XSD schema that transform into UML elements

The transformation uses a set of mapping rules to determine how to generate UML elements from their corresponding XSD elements.
XSD elements UML elements
Schema <schema> Package set with the name of the XSD file
Complex type <complexType> Class with the «complexType» stereotype
Simple type <simpleType> Class with the «simpleType» stereotype
Simple type and "enumeration" facet <enumeration> Class with the «enumeration» stereotype
Model group <group> Class with the «modelGroup» stereotype
Attribute group <attributeGroup> Class with the «attributeGroup» stereotype
Attribute (global) <attribute> Class with the «global» stereotype and an attribute in this class with the «attribute» stereotype
Element (global) <element> Class with the «global» stereotype and an attribute in this class with the «element» stereotype
Elements and attributes of a complex type, simple type, model group, or attribute group Properties of a class
Enumeration facet of a simple type Properties of a class
Nested anonymous simple types, enumerations, complex types, and model groups Nested class that is named "anonymous", with the stereotype of the corresponding UML element
Restriction <restriction> of a complex type or simple type Generalization relationship with the «restriction» stereotype
Redefined simple types, complex types, attribute groups, and model groups, which are included inside the <redefine> element Class with the corresponding UML element stereotype, and a generalization relationship with the «restriction» stereotype from this class to the redefined type
<listOf> inside a simple type Dependency relationship with the «listOf» stereotype from the host simple type to the list type
<union> inside a simple type Dependency relationship with the «union» stereotype from the host simple type to each type in the union list
Annotation <annotation>: <appinfo> UML comment
Annotation <annotation>: <documentation> UML comment with the «documentation» and «annotation» stereotypes
Simple primitive type XSD type fro the XSD data library

Feedback