DTD验证XML文档

一、什么是DTDspa

二、DTD的重要性code

三、分类xml

四、元素的定义io

五、纯元素class

 

六、内部DTD样例test

<?xml version="1.0" encoding="UTF-8"?>
<!--
类型:最多出现1次
主演:至少是1我的
-->
<!DOCTYPE CCTV-6 [
 <!ELEMENT CCTV-6 (电影+)>
 <!ELEMENT 电影 (名称,主演+,类型?,片长)>
 <!ELEMENT 名称 (#PCDATA)>
 <!ELEMENT 主演 (#PCDATA)>
 <!ELEMENT 类型 (#PCDATA)>
 <!ELEMENT 片长 (#PCDATA)>
]>
<CCTV-6>
 <电影>
  <名称>霍元甲</名称>
  <主演>李连杰</主演>
  <类型>动做</类型>
  <片长>1时35分</片长>
 </电影>
 <电影>
  <名称>宝贝计划</名称>
  <主演>成龙</主演>
  <主演>古天乐</主演>
  <片长>1时40分</片长>
 </电影>
</CCTV-6>

 七、定义属性coding

八、CDATAim

九、IDimg

十、IDREF/IDREFSdi

十一、Enumerated

十二、#REQUIRED

1三、#IMPLIED

1四、#FIXED

1五、Default

1六、外部DTD样例

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE 家庭 SYSTEM "ExternalDTD.dtd">
<!--
 需求描述:
 * 子元素都为空元素
 * 家庭必须有一我的,能够没有家电
 * 名字和年龄是必须填写的
 * 性别男或女,默认为女
 * 住址固定为北京
-->
<家庭>
 <人 名字="张三" 性别="男" 年龄="25" 住址="北京"/>
 <人 名字="李四" 年龄="38" 爱好="作个教育家"/>
 <家电 名称="彩电" 数量="3"/>
</家庭>
<!ELEMENT 家庭 (人+,家电*)>
<!ELEMENT 人 EMPTY>
<!ELEMENT 家电 EMPTY>
<!ATTLIST 人
 名字 CDATA #REQUIRED
 性别 (男|女) "女"
 年龄 CDATA #REQUIRED
 住址 CDATA #FIXED "北京"
 爱好 CDATA #IMPLIED
>
<!ATTLIST 家电
 名称 CDATA #REQUIRED
 数量 CDATA #REQUIRED
>

 1六、实体

1七、实体样例

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book SYSTEM "test.dtd">
<!--
 country 中国
 count 印度
 rights 版权全部
 pricenotation $
 type 支票或现金 默认为现金
-->
<book>
 <details>
  <name>xml 使用详解</name>
  <author>成龙来自&country;</author>
  <publication>Mac &rights;</publication>
  <price type="支票">&pricenotation;50</price>
 </details>
 <details>
  <name>xml 揭秘</name>
  <author>Raghu 来自&count;</author>
  <publication>Mac &rights;</publication>
  <price>&pricenotation;45</price>
 </details>
</book>
<!ELEMENT book (details+)>
<!ELEMENT details (name,author,publication,price)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT publication (#PCDATA)>
<!ELEMENT price (#PCDATA)>
<!ATTLIST price
 type (支票|现金) "现金"
>
<!ENTITY country "中国">
<!ENTITY count "印度">
<!ENTITY rights "版权全部">
<!ENTITY pricenotation "$">
相关文章
相关标签/搜索