码迷,mamicode.com
首页 > 其他好文 > 详细

DTD约束

时间:2015-06-01 14:49:14      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:dtd   3c   

DTD约束的语法:元素定义
  <strong>  DTD使用ELEMENT声明一个xml元素,语法如下</strong>
	<!ELEMENT 元素名称 元素约束> 


元素约束可以是元素内容和存放类型
	元素内容:需要括号括起来。
	存放类型:直接书写不需要括号。(类型有EMPTY:用于定义空元素 ANY:任意类型)


元素中内容的组成关系
	逗号(,)隔开表示内容出现的顺序必须与声明一致
	例如:<!ELEMENT 书 (书名,作者,售价)>


用分隔符(|)隔开表示人选其一,多选一
        例如:<!ELEMENT 书 (书名,作者,售价)>在书名作者售价中出现一个元素。


元素内容其他符号表示元素出现的次数
	+:一次或多次(书+)
	?:0次或一次(书?)
	*:0次或多次(书*)


在括号中批量设置
        <!ELEMENT 书 ((书名+,作者?,售价)* | 销售量)>


DTD约束的语法:属性定义
语法
    <!ATTLIST 元素名 
	属性名1 属性类型 属性约束
	属性名2 属性类型 属性约束
	……
    >


属性声明举例:
    <!ATTLIST 商品
	类别 CDATA #REQUIRED
	颜色 CDATA #IMPLIED
    >


对应XML文件:
  <商品 类别="服装" 颜色="黄色">…</商品> 
  <商品 类别="服装">…</商品>  


属性类型:
	#REQUIRED:必须设置该属性
        #IMPLIED:可以设置也可以不设置 
        #FIXED:说明该属性的取值固定为一个值,在 XML 文件中不能为该属性设置其它值。使用该元素时无需为其分配该属性,XML处理器会自动为给属性增加固定值
                直接使用默认值:在 XML 中可以设置该值也可以不设置该属性值。若没设置则使用默认值。 

例子:

        <!ATTLIST 页面作者 
	     姓名 CDATA #IMPLIED 
	     年龄 CDATA #IMPLIED 
	     联系信息 CDATA #REQUIRED 
	     网站职务 CDATA #FIXED "页面作者" 
	     个人爱好 CDATA "上网"
        > 

常用屬性類型
    CDATA:表示属性值为普通文本字符串。
    ENUMERATED 選取一個
    ID    能使用数字,不能出现空白字符
    ENTITY(实体)
    实体用于为一段内容创建一个别名,以后在XML文档中就可以使用别名引用这段内容了。
    在DTD定义中,一条<!ENTITY …>语句用于定义一个实体。
    实体可分为两种类型:引用实体和参数实体。

  



DTD约束

标签:dtd   3c   

原文地址:http://blog.csdn.net/xiaomin1992/article/details/46309243

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!