DTD文件规范


<?xml version="1.0" encoding="UTF-8"?>
<!-- 引入外部DTD
<!DOCTYPE 根元素 SYSTEM "DTD-URL">
或者
<!DOCTYPE 根元素 PUBLIC "DTD-NAMA" "DTD-URL">
-->

<!DOCTYPE students[ <!--students 代表root-->
<!ELEMENT student (id*,name)> <!-- *代表0或者多个 ?代表0个或者1个 +表示不少于1次-->
<!ELEMENT id (#PCDATA)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT company ANY> <!-- EMPTY代表此元素为空 ANY 代表人任意元素 #PCDATA代表任意元素-->
<!ELEMENT school EMPTY>
<!ELEMENT fullname (firstname,middlename,lastname)> <!--firstname,middlename,lastname代表子元素-->
<!ELEMENT firstname EMPTY>
<!ELEMENT middlename EMPTY>
<!ELEMENT lastname EMPTY>

<!ELEMENT onename (firstname1|middlename1)> <!--firstname1或middlename1一个子元素-->
<!ELEMENT firstname1 EMPTY>
<!ELEMENT middlename1 EMPTY>

<!ELEMENT person EMPTY>
<!ELEMENT person1 EMPTY>
<!ELEMENT person2 EMPTY>

<!--属性 元素名 属性名 属性类型 默认值情况 -->
<!ATTLIST person id CDATA "100">
<!--默认值情况 :#IMPLIED,#FIXED #REQUIRED 字符串
#IMPLIED ;代表该属性没有默认值,可以没有该属性
#REQUIRED :代表必须有该属性
#FIXED :代表无论添加不添加该属性 都有该属性 fixed后面的值
-->
<!ATTLIST person1 id CDATA #IMPLIED >
<!ATTLIST person2 id CDATA #FIXED "1001">

<!--属性类型:
CDATA:字符串类型 <!ATTLIST person id CDATA "100">
Enumerated:<!ATTLIST person id (属性1|属性2|属性3) "100"> 三个属性任一一个即可
NMTOKEN:属性值中不能含有空格符串
NMTOKENS:属性值中不能含有空白符串
ID:这个属性具有专用性,不允许其他再使用这个相同的属性
-->

<!--
ENTITY 不在具体实例化文档中使用 而在DTD内部被使用
内部实体
-->
<!ELEMENT person3 (#PCDATA)>
<!ENTITY writer "KOJIE">
<!--
外部实体
<!ENTITY writer SYSTEM URL>
-->
<!ELEMENT person4 (#PCDATA)>
<!--参数实体-->
<!ENTITY % shopaddress "
<!ELEMENT address1 (#PCDATA)>
<!ELEMENT address2 (#PCDATA)>
">
<!ELEMENT shop (address1,address2)>
%shopaddress;
<!--引入外部实体
<!ENTITY % adress SYSTEM "A.dtd">
-->

]>
<students>
<student>
<id>2006120302</id>
<id>2006120302</id>
<name>zhangjie</name>
</student>

<company>
<a>ddddd</a>
</company>

<school></school>

<school/>


<fullname>
<firstname></firstname>
<middlename></middlename>
<lastname></lastname>
</fullname>

<onename>
<firstname1></firstname1>
</onename>

<onename>
<middlename1></middlename1>
</onename>


<person3>&writer;</person3>

<shop>
<address1>浙江</address1>
<address2>杭州</address2>
</shop>

</students>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值