| 前页 | 后页 | 
默认UML到XSD的映射
使用抽象的类模型定义简单的架构时, Enterprise Architect架构生成器使用UML到XSD构造的默认映射将UML信息转换为XSD。模式生成器还使用这些默认值在抽象模型中生成未定型的元素。
当使用图工具箱的“ XML架构”页面为XML架构建模时,工具箱元素的构造型和标记值将覆盖默认映射。
结构体
| UML构造 | 默认的XSD生产规则 | 
|---|---|
| 包 | 为目标Package生成一个Schema元素。如果目标Package包含来自另一个Package的Classes,而另一个Package的Tagged值分别设置为targetNamespace和targetNamespacePrefix,则这些元素将作为Schema元素的属性包括在内。 此外,还会为每个引用的Package创建一个import或include元素: 
 | 
| 类 | 生成根级元素声明和complexType定义。元素名称和类型与类名称相同。还生成一个XSD序列模型组,以包含作为元素生成的UML属性。 | 
| 属性 | 为每个Class属性声明一个元素。元素名称设置为UML属性名称的名称。它以Class名称为前缀,以使元素唯一。设置minOccurs和maxOccurs属性以反映属性基数。 如果属性引用了另一个Class,则元素声明后跟一个complexType定义,其中包含对适当的complexType的引用。 | 
| 协会 | 为类拥有的每个协会声明一个元素。元素名称设置为关联角色的名称。 minOccurs和maxOccurs属性反映关联的基数。 | 
| 泛化(继承) | 对于单继承,将使用base属性设置为Base类名称的方式生成扩展元素。然后,将子类的UML属性附加到扩展元素内的XSDall模型组。 | 
| 枚举 | 为Enumeration声明一个simpleType元素,并将name属性设置为Enumeration名称。限制元素将基数设置为字符串。每个Enumeration属性都作为XSD Enumeration元素附加到Restriction元素,其值设置为UML属性名称。模式生成器将忽略UML属性的任何类型规范。 | 
笔记
- 如果未指定,则minOccurs和maxOccurs属性默认为1
- 如果未指定协会的方向,则假定所有者为来源
