XML 架构 元素
❮ XML 架构完整参考
定义和使用
schema 元素定义架构的根元素。
元素信息
- 父元素: 无
语法
<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
任何属性
>
((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 或包含 extension、restriction 或 substitution 的子集的列表
|
finalDefault | 可选。指定目标命名空间中 element、simpleType 和 complexType 元素上 final 属性的默认值。final 属性阻止对 element、simpleType 或 complexType 元素进行指定类型的派生。对于 element 和 complexType 元素,此值可以包含 #all 或包含 extension 或 restriction 的子集的列表。对于 simpleType 元素,此值还可以包含 list 和 union
|
targetNamespace | 可选。此架构的命名空间的 URI 引用 |
version | 可选。指定架构的版本 |
xmlns | 一个 URI 引用,指定在此架构中使用的命名空间。如果未分配前缀,则可以使用非限定引用来使用命名空间的架构组件 |
任何属性 | 可选。指定任何其他具有非架构命名空间的属性 |
示例 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 命名空间中的架构组件(element name、type)是非限定的,而 https://w3schools.org.cn/w3schoolsschema (mystring) 中的架构组件是使用 wsc 前缀限定的
<?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:wsc="https://w3schools.org.cn/w3shoolsschema">
<element name="fname" type="wsc:mystring"/>
</schema>
❮ XML 架构完整参考