DTD

document type definition,用来描述XML文档的语法规则。

  • 元素的定义规则,元素之间的关系规则
  • 属性的定义规则。属性标志符,属性值类型。
  • 可使用的符号规则。例如:<>、</>

    为什么要有DTD?

    通信双方发送XML文档之前,需要在本地检查数据语法正确性(如果不合格的数据传过去,接受方没法解析,费时费力),必须要定义文档规则。需要判断该文档否符合标准规范,判断元素之间的嵌套关系是否正确,规定元素中哪些属性是必须要写的。最终做到合格文档的发送。

    DTD文档和XML的关系

  • 类比:类和对象的关系

    schema

    XML schema同样用于描述文档结构。用一个指定的XML Schema来验证某个XML文档,以检查该XML文档是否符合其要求。
    语义定义文档中出现的元素、文档中出现的属性、子元素、子元素的数量、子元素的顺序、元素是否为空、元素和属性的数据类型、元素或属性的默认 和固定值。

    XSD是DTD替代者的原因?

  • 据将来的条件可扩展

  • 比DTD丰富和有用
  • 用XML书写
  • 支持数据类型
  • 支持命名空间