XML Schema 元素
❮ 完整的 XML 架构参考
定义和用法
schema 元素定义架构的根元素。
元素信息
- 父元素: NONE
语法
<schema
id=ID
attributeFormDefault=qualified|unqualified
elementFormDefault=qualified|unqualified
blockDefault=(#all|list of (extension|restriction|substitution))
finalDefault=(#all|list of (extension|restriction|list|union))
targetNamespace=anyURI
version=token
xmlns=anyURI
any attributes
>
((include|import|redefine|annotation)*,(((simpleType|complexType|
group|attributeGroup)|element|attribute|notation),annotation*)*)
</schema>
属性 | 描述 |
---|---|
id | 可选。指定元素的唯一 ID |
attributeFormDefault | 可选。 在此模式的目标命名空间中声明的属性的形式。 该值必须是 "qualified" 或 "unqualified"。 默认为 "unqualified"。 "unqualified" 表示来自目标命名空间的属性不需要使用命名空间前缀进行限定。 "qualified" 表示来自目标命名空间的属性必须使用命名空间前缀来限定 |
elementFormDefault | 可选。 在此模式的目标命名空间中声明的元素的形式。 该值必须是 "qualified" 或 "unqualified"。 默认为 "unqualified"。 "unqualified" 表示来自目标命名空间的元素不需要使用命名空间前缀进行限定。 "qualified" 表示来自目标命名空间的元素必须使用命名空间前缀来限定 |
blockDefault | 可选。 指定目标命名空间中 element 和 complexType 元素的 block 属性的默认值。 block 属性防止使用具有指定派生类型的复杂类型(或元素)代替该复杂类型。 此值可以包含 #all 或作为扩展、限制或替换子集的列表:
|
finalDefault | 可选。 指定目标命名空间中 element、simpleType 和 complexType 元素的最终属性的默认值。 final 属性防止元素、simpleType 或 complexType 元素的指定类型派生。 对于 element 和 complexType 元素,此值可以包含 #all 或作为扩展或限制子集的列表。 对于 simpleType 元素,该值还可以包含 list 和 union:
|
targetNamespace | 可选。 此架构的命名空间的 URI 引用 |
version | 可选。 指定架构的版本 |
xmlns | 一个 URI 引用,指定一个或多个在此模式中使用的命名空间。 如果没有分配前缀,则命名空间的架构组件可以与非限定引用一起使用 |
any attributes | 可选。 指定具有非模式命名空间的任何其他属性 |
实例 1
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="values" type="xs:string" />
</xs:schema>
实例 2
在此示例中,http://www.w3.org/2001/XMLSchema 命名空间中的架构组件(元素名称、类型)是不合格的,而 https://www.w3ccoo.com/w3schoolsschema(mystring ) 用 wsc 前缀限定:
<?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:wsc="https://www.w3ccoo.com/w3shoolsschema">
<element name="fname" type="wsc:mystring"/>
</schema>
❮ 完整的 XML 架构参考