Schema设置
Schema设计 | Schema设置命令在Schema视图中启用,允许您为活动Schema定义全局设置。这些设置是xs:schema元素的特性。
在上方“Schema设置”对话框中定义的设置(当XSD模式被设为1.1时)将被用于创建以下xs:schema元素。
<xs:schema xmlns="https://www.altova.com/schemas/org"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
targetNamespace="https://www.altova.com/schemas/org"
elementFormDefault="qualified"
xpathDefaultNamespace="##targetNamespace"
version="1.1"
defaultAttributes="Contact"
vc:minVersion="1.1">
请注意以下几点:
•“Schema设置”对话框中的内容因活动的XSD模式不同而有所不同。如果活动模式为XSD 1.0,则对话框中将不会显示XSD 1.1特性。
•在XSD 1.1模式下,vc:minVersion="1.1"特性必须出现在xs:schema元素中。
•defaultAttributes和xpathDefaultNamespace特性是XML Schema 1.1的特性,仅在XSD 1.1模式下可用。它们可以在XSD 1.1模式下出现。
•其他特性在XSD 1.0和XSD 1.1模式下都可用。
version特性
version特性指的是文档版本。它不是文档的XSD版本。
defaultAttributes特性
defaultAttributes特性允许您选择一个特性组作为Schema中所有复杂类型的默认特性组。
默认特性组将显示在这些复杂类型的内容模型中。例如,在下方截图中,group元素具有复杂内容。因此,在Schema中被设为所有复杂类型的默认特性组,也就是Contact特性组(有关如何设置,请参见上方截图)将自动出现在group元素中。如果您想要在某个特定的复杂类型上禁用默认特性组,则必须将该复杂类型的defaultAttributesApply特性设为false。在Schema视图中,您可以通过在该复杂类型的“详细信息”输入助手(参见下方截图)中对defAttrs属性执行此操作。
xpathDefaultNamespace特性
xpathDefaultNamespace特性为Schema中使用的XPath表达式中的元素设置默认命名空间。如果在“Schema设置”对话框中设置了此特性,它将被应用于顶级xs:schema元素。因此,该声明的范围是整个文档。您可以用允许该特性的元素上的声明来覆盖xs:schema上的声明:
•xs:assert和xs:assertion
•xs:alternative
•xs:selector和xs:field(在标识约束中)
您可以在上方列出的元素的“详细信息”输入助手中更改XPath默认命名空间。
xpathDefaultNamespace特性可以具有以下值之一:
•##targetNamespace:XPath默认命名空间将与Schema的目标命名空间相同
•##defaultNamespace:XPath默认命名空间将与Schema的默认命名空间相同
•##local:没有XPath默认命名空间
如果文档中没有声明XPath默认命名空间,则XPath表达式中的无前缀元素将不在任何命名空间中。XPath默认命名空间的声明不适用于特性。