目录

XML 架构


XML 架构描述了 XML 文档的结构,就像 DTD 一样。

具有正确语法的 XML 文档称为"Well Formed"。

根据 XML 架构验证的 XML 文档是 "Well Formed" 和 "Valid"。


XML架构

XML Schema 是 DTD 的基于 XML 的替代方案:

<xs:element name="note">

<xs:complexType>
  <xs:sequence>
    <xs:element name="to" type="xs:string"/>
    <xs:element name="from" type="xs:string"/>
    <xs:element name="heading" type="xs:string"/>
    <xs:element name="body" type="xs:string"/>
  </xs:sequence>
</xs:complexType>

</xs:element>

上面的 Schema 解释如下:

  • <xs:element name="note"> 定义名为 "note" 的元素
  • <xs:complexType> "note" 元素是复杂类型
  • <xs:sequence> 复杂类型是元素序列
  • <xs:element name="to" type="xs:string"> 元素 "to" 的类型为字符串(文本)
  • <xs:element name="from" type="xs:string"> 元素 "from" 的类型为字符串
  • <xs:element name="heading" type="xs:string"> 元素 "heading" 的类型为字符串
  • <xs:element name="body" type="xs:string"> 元素 "body" 的类型为字符串

XML 架构比 DTD 更强大

  • XML 架构是用 XML 编写的
  • XML 架构可扩展以进行添加
  • XML 架构支持数据类型
  • XML 架构支持命名空间


为什么使用 XML 架构?

使用 XML 架构,您的 XML 文件可以携带其自身格式的描述。

通过 XML 架构,独立的群体可以就交换数据的标准达成一致。

使用 XML Schema,您可以验证数据。


XML 架构支持数据类型

XML 架构的最大优势之一是对数据类型的支持:

  • 更容易描述文档内容
  • 更容易定义数据限制
  • 更容易验证数据的正确性
  • 不同数据类型之间的数据转换更加容易

XML 架构使用 XML 语法

XML 架构的另一个强大优势是它们是用 XML 编写的:

  • 你不必学习一门新语言
  • 您可以使用 XML 编辑器来编辑架构文件
  • 您可以使用 XML 解析器来解析 Schema 文件
  • 您可以使用 XML DOM 操作您的架构
  • 您可以使用 XSLT 转换您的架构

如果您想学习 XML Schema,请阅读我们的XML 架构教程