非常教程

XML Schema 教程教程

XML schema 元素

XML schema 元素

XML Schema 元素


XML schema 元素

完整 XML Schema 参考手册

定义和用法

schema 元素定义 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
any attributes
>

((include|import|redefine|annotation)*,(((simpleType|complexType|
group|attributeGroup)|element|attribute|notation),annotation*)*)

</schema>

属性 描述
id 可选。规定该元素的唯一的 ID。
attributeFormDefault

可选。在该 schema 的目标命名空间中声明的属性的形式。该值必须是下列字符串之一: "qualified" 或 "unqualified"。 默认值为 "unqualified"。

  • "unqualified" 指示无须通过命名空间前缀限定目标命名空间的属性。
  • "qualified" 指示必须通过命名空间前缀限定目标命名空间的属性。
elementFormDefault

可选。在该 schema 的目标命名空间中声明的元素的形式。该值必须是下列字符串之一: "qualified" 或 "unqualified"。 默认值为 "unqualified"。

  • "unqualified" 指示无须通过命名空间前缀限定目标命名空间的元素。
  • "qualified" 指示必须通过命名空间前缀限定目标命名空间的元素。
blockDefault

可选。规定在目标命名空间中 element 和 complexType 元素上的 block 属性的默认值。block 属性防止具有指定派生类型的复杂类型(或元素)被用来代替继承的复杂类型(或元素)。该值可以包含 #all 或者一个列表,该列表是 extension、restriction 或 substitution 的子集:

  • extension - 防止通过扩展派生的复杂类型被用来替代该复杂类型。
  • restriction - 防止通过限制派生的复杂类型被用来替代该复杂类型。
  • substitution - 防止元素的替换。
  • #all - 防止所有派生的复杂类型被用来替代该复杂类型。
finalDefault

可选。规定在该架构的目标命名空间中 element、simpleType 和 complexType 元素的 final 属性的默认值。final 属性防止 element、simpleType 或 complexType 元素的指定的派生类型。对于 element 和 complexType 元素,该值可以包含 #all 或一个列表,该列表是 extension 或 restriction 的子集。 对于 simpleType 元素,该值还可以包含 list 和 union:

  • extension - 默认情况下,该 schema 中的元素不能通过扩展派生。仅适用于 element 和 complexType 元素。
  • restriction - 防止通过限制派生。
  • list - 防止通过列表派生。仅适用于 simpleType 元素。
  • union - 防止通过联合派生。仅适用于 simpleType 元素。
  • #all - 默认情况下,该 schema 中的元素不能通过任何方法派生。
targetNamespace

该 schema 的命名空间的 URI 引用。还可以分配该命名空间的前缀。如果没有分配任何前缀,则该命名空间的 schema 组件可以和非限定的引用一起使用。

version

可选。规定 schema 的版本。

xmlns

规定在此 schema 中使用的一个或多个命名空间的 URI 引用。如果没有分配前缀,该命名空间的 schema 组件可与未限制的引用使用。

any attributes

可选。规定带有 non-schema 命名空间的任何其他属性。

实例 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 命名空间中 schema 组件 (element name, type) 是未限制的,而 http://www.w3school.com.cn/w3schoolschema (mystring) 是通过 wsc 前缀限制的:

<?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:wsc="http://www.w3cschool.cc/w3shoolsschema">

<element name="fname" type="wsc:mystring"/>

</schema>


XML schema 元素

完整 XML Schema 参考手册
XML schema 元素
XML Schema 教程

XML Schema 是基于 XML(可扩展标记语言),描述了 XML 文档的合法构建模块,可替代 DTD(文档类型定义)。XML Schema 是 W3C 的推荐标准。

XML Schema 教程目录

1.XML Schema 教程
2.如何使用 XML Schema
3.为什么使用 XML Schema?
4.XML Schemas 简介
5.XML Schema 指示器
6.XML Schema 复合类型 – 混合内容
7.XML Schema 复合元素 – 仅含文本
8.XML Schema 复合类型 – 仅含元素
9.XML Schema 复合空元素
10.XML Schema 复合元素
11.XML Schema 限定 / Facets
12.XML Schema 属性
13.XSD 简易元素
14.XML schema 元素
15.XML Schema 总结
16.XML 编辑器
17.XML Schema 杂项数据类型
18.XML Schema 数值数据类型
19.XML Schema 日期/时间 数据类型
20.XML Schema 字符串数据类型
21.XML Schema 实例
22.XML Schema 元素替换
23.XML Schema anyAttribute 元素
24.XML Schema any 元素
25.XML Schema unique 元素
26.XML Schema union 元素
27.XML Schema simpleType 元素
28.XML Schema simpleContent 元素
29.XML Schema sequence 元素
30.XML Schema selector 元素
31.XML schema 元素
32.XML Schema anyAttribute 元素
33.XML Schema any 元素
34.XML Schema annotation 元素
35.XML Schema all 元素
36.XML Schema field 元素
37.XML Schema extension 元素
38.XML Schema element 元素
39.XML Schema documentation 元素
40.XML Schema complexType 元素
41.XML Schema complexContent 元素
42.XML Schema choice 元素
43.XML Schema attributeGroup 元素
44.XML Schema attribute 元素
45.XML Schema appinfo 元素
46.XML Schema 参考手册
47.XML Schema restriction 元素
48.XML Schema redefine 元素
49.XML Schema notation 元素
50.XML Schema list 元素
51.XML Schema keyref 元素
52.XML Schema key 元素
53.XML Schema include 元素
54.XML Schema import 元素
55.XML Schema group 元素