11.7 可以严格地定义XML的文档结构
除了之前讲解过的“格式良好的XML文档”还有一个词叫做“有效的XML文档(Valid XML document)”。所谓有效的XML文档是指在XML文档中写有DTD(Document Type Definition,文档类型描述)信息。前面没有说明,其实完整的XML文档包括XML声明、XML实例和DTD三部分。所谓XML声明,就是写在XML文档开头的,形如<?xml version=”1.0” encoding=”Shift_JIS”?>的部分。XML实例是文档中通过标签被标记的部分;而DTD的作用是定义XML实例的结构。虽然也可以省略DTD,但通过DTD可以严格地检查XML实例的内容是否有效。
图11.14展示了一个写有DTD的XML文档。
图11.14 具有DTD的XML文档
请把它想成一个描述公司名称、地址和员工数量的XML文档。用<!DOCTYPE>和]>括起来的部分就是DTD。DTD定义了在<mydata>标签中可以有一个以上<company>标签;在<company>标签中可以包含<name>,<address>,<employee>标签。只要定义了这样的DTD,当遇到那些虽然记录了公司名称和地址,但还没有员工数量的数据时,就可以判断出这不是一个有效的XML实例
与DTD相同,还有一个名为XML Schema的技术也可用于定义XML实例的结构。在XML中,DTD借用了可称得上是标记语言始祖的SGMI(Standard Generalized Markup Language,标准通用标记语言)的语法。而XML Schema是为了XML新近研发的技术,因此它可以对XML文档执行更严格的检查,例如检查数据类型或数字位数等。DTD是1996年发布的W3C推荐标准,而XML Schema发布于2001年。今后将成为主流的是XML Schema,而不是古老的DTD
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论