DTD语法



DTD可以作为单独的文件编写,也可以在XML内部文件编写
XML文件使用DOCTYPE声明语句来指明它所遵循的DTD文件,DOCTYPE声明语句有两种形式:


1、引用本地文件时:<!DOCTYPE 文档根节点 SYSTEM "DTD文件的URL">

2、引用公共文件时:<!DOCTYPE 文档根节点  PUBLIC  "DTD名称"  "DTD文件的URL”>


DTD约束语法:元素定义、属性定义、实体定义 


元素定义

格式:<!ELEMENT 元素名称  元素类型>  元素类型可以是内容 或类型 ,类型有EMPTY、ANY


内容顺序问题:

1.<!ELEMENT MYFILE(TITLE,AUTHOR,EMAIL)>前后顺序
2.<!ELEMENT MYFILE(TITLE|AUTHOR|EMAIL)>只能出现一个


元素出现次数:
+:一次货多次(书+)
?:0次或一次(书?)
*:0次或多次(书*)
(书):必须出现一次
<!ELEMENT MYFILE((TITLE*,AUTHOR?,EMAIL)*|COMMENT)>


属性定义:

格式:<!ATTLIST  元素
属性名1 属性值类型 设置说明
                属性名2 属性值类型 设置说明
>
例子1:
<!ATTLIST 商品
类别 CDATA #REQUIRED
颜色 CDATA #IMPLIED

>


设置说明:#REQUIRED #IMPLIED #FIXED  直接使用默认值


例子2:
<!ATTLIST 页面制作
姓名 CDATA # IMPLIED
年龄 CDATA #IMPLIED
联系信息 CDATA #REQUIRED
网站职务 CDATA #FIXED “页面制作”
个人爱好 CDATA “上网”
>


常用属性类型:CDATA ENUMERATED ID ENTITY(实体)




ENTITY(实体):主要在XML文档中使用
引用实体
实例:<!ENTITY copyright  "I am a programmer">
         .......

         &copyright;


参数实体: 文件自身使用
实例:<!ENTITY % TAG_NAMES "姓名|EMAIL|电话|地址">

          <!ELEMENT 个人信息 (%TAG_NAMES; | 生日)>
          <!ELEMENT  客户信息 (%TAG_NAMES; | 生日)>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值