XML约束之DTD

1 引入:
XML语法: 规范的xml文件的基本编写规则。(由w3c组织制定的)
XML约束: 规范XML文件数据内容格式的编写规则。(由开发者自行定义)

XML约束技术
DTD约束:语法相对简单,功能也相对简单。学习成本也低。
Schema约束:语法相对复杂,功能也相对强大。学习成本相对高


DTD约束
1.导入dtd方式

1.内部导入:

<!DOCTYPE note [
  <!ELEMENT note (to,from,heading,body)>
  <!ELEMENT to      (#PCDATA)>
  <!ELEMENT from    (#PCDATA)>
  <!ELEMENT heading (#PCDATA)>
  <!ELEMENT body    (#PCDATA)>
]>

2.外部导入
本地文件系统

<!DOCTYPE note SYSTEM "note.dtd">

公共的外部导入

<!DOCTYPE 根元素 PUBLIC "http://gz.itcast.cn/itcast.dtd">

hibermate引入的外部公共文件约束:
这里写图片描述


2.DTD语法
1)约束标签:

<!ELEMENT 元素名称 类别><!ELEMENT 元素名称 (元素内容)>

2)类别:
空标签: EMPTY。 表示元素一定是空元素。
普通字符串: (#PCDATA)。表示元素的内容一定是普通字符串(不能含有子标签)。
任何内容: ANY。表示元素的内容可以是任意内容(包括子标签)
3)元素内容:
顺序问题:

<!ELEMENT 元素名称 (子元素名称 1,子元素名称 2,.....)>: 按顺序出现子标签

次数问题:

  • 标签 : 必须且只出现1次。

  • 标签+ : 至少出现1次

  • 标签* : 0或n次。

  • 标签? : 0 或1次。

3)约束属性:

<!ATTLIST 元素名称 属性名称 属性类型 默认值>

默认值:

  • #REQUIRED 属性值是必需的
  • #IMPLIED 属性不是必需的
  • #FIXED value 属性不是必须的,但属性值是固定的

属性类型:控制属性值的

  • CDATA :表示普通字符串

  • (en1|en2|..): 表示一定是任选其中的一个值

  • ID:表示在一个xml文档中该属性值必须唯一。值不能以数字开头

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值