引用:http://args.cn/post/2009/03/dtd-and-xsd/
可以通过数据类型文档(Data Type Document)或XML架构文档(XML Schema document)对XML数据进行验证。
DTD定义了根、元素、元素的重复次数和元素内的PCData。关键字都是由!开头的大写字母。
通过元素后面的圆括号列出嵌套的元素,用+ ? *定义重复次数,|表示可替换嵌套。
普通实体<!ENTITY 实体名 “内容”>,调用 &实体名
参数实体<!ENTITY % 实体名 “内容”>,调用 %实体名
属性 <!ATTLIST 元素 属性…>
#REQUIRED 必须出现,#IMPLIED 应用程序提供默认值,#FIXED 用DTD中属性值替代XML中值
ID属性可以为XML中数据定义一个唯一约束,IDREF属性引用由ID定义的数据
引用DTD:
内部 <!DOCTYPE 根元素 [DTD定义]>
外部 <!DOCTYPE 根元素 SYSTEM “DTD的URL”>
XSD使用XML的语法格式来定义XML元素。
元素定义<xs:element name = “元素”> 元素引用 <xs:element ref = “元素”>
minOcurrs和maxOcurrs定义重复次数,unbounded表示无限。
<xs:sequence> 按照sequence所指定的顺序排序
<xs:all> 按照任意顺序使用一次XML元素
<xs:choice> 将元素中任意一个放到XML文档中
属性定义<xs:attribute name = “属性名” type = “类型” use = “required/optional”>
引用XSD: <根元素 xmlns:xsi = “标准空间” xsi:noNamespaceSchemaLocation = “XSD的URL”>