XML—DTD约束

XML约束:可以编写一个文档来对xml的语法格式进行约束,这个过程称为xml约束。


XML的约束分为2种:

  1.DTD

   2. Schema.


 DTD文档后缀名是 dtd.

DTD 语法

1. dtd 外部引入的方式。

   <!DOCTYPE   根元素  SYSTEM    在本机中的位置>

   <!DOCTYPE   根元素  PUBLIC    DTD名称  所在的互联网中的位置>

2. dtd  内部引入的方式。
  直接在需要约束的xml内书写。
   <!DOCTYPE   根元素[
约束内容......

]>
注:DTD文件保存时,必须用utf-8编码

DTD约束的内容:

1.元素:

<!ELEMENT 元素名 元素约束>

  元素约束:

      1.存放类型 ANY/EMPTY    2.元素约束(将可以包含的子元素用小括号扩起来)子元素之间可以用逗号分隔,子元素必须按照这个顺序, 子元素还可以用|分隔,表示只能出现之一。  3. PCDATA  表明包含标签体 4 + 号表示1次或多次  5 * 表示0次或多次。6 ? 次或1次。  也可以用小括号进行组的操作。例如: 

<!ELEMENT书架(+)>                                     

<!ELEMENT (书名,作者,售价)>

<!ELEMENT 书名(#PCDATA)>             

<!ELEMENT 作者(#PCDATA)>     

<!ELEMENT 售价(#PCDATA)>

对应的xml文件

<书架>

  <>

  <书名>Java就业培训教程</书名>

  <作者>张孝祥</作者>

  <售价>39.00</售价>

  </>

</书架>


2:属性:

<!ATTLIST 元素名 

 属性名1     属性类型  属性约束

 属性名2   属性类型   属性约束 >


属性类型:   CDATA  表示值为一个字符串

  ENUMERATED 属性的值是一个枚举类型  使用方式( XX|XX |XX |)

  ID  属性值不能重复。    

  ENTITY:  

                  引用实体:<!ENTITY   实体名称   "实体内容" >    用在xml文件中   用   &实体名;   来引用该值

          参数实体:    <!ENTITY  %  实体名称   "实体内容" > 用在dtd文档中  用%实体名; 来引用该值


注:xml文件中 ID属性的值不能以数字开头 不能出现空格, 只能有字母下划线开头。

属性约束:

#REQUIED ---当前属性必须存在。

#IMPLIED  ---当前属性是可选的

#FIXED   "XXXX" ---当前属性具有固定值。 这样的属性不需要进行赋值。值也不能修改

"   " ---- 表明当前属性具有默认值。

  

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值