欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

j2ee_04_DTD

程序员文章站 2022-05-30 13:15:45
...

1.什么是DTD?
文档类型定义(约束)

2.什么是XML?
HTML:超文本标记语言
XML:可扩展标记语言

3.XML的两种文档约束
DTD和Schema

4.XML格式要求(合法XML)
1)有且只有一个根节点;
2)由开始标签和结束标签组成;
3)XML标签区分大小写;
4)正确嵌套标签;

5.使用DTD
5.1 在XML中加入DTD申明
1)内部申明:<! DOCTYPE root[]>
2)外部申明:

5.2 元素定义语法(DTD对元素的限制)
    基本语法:<! ELEMENT 元素名称 元素类型 >

	元素分类:
1)空元素  EMPTY   -------    <!ELEMENT br EMPTY>
2)文本元素  #PCDATA
3)混合元素(a1,a2,.....,aN)

1.2元素限制
1),:元素出现的顺序必须严格按照定义的要求来
2)|:或,多选一
3)?:可有可无,出现0次或者1次
4)*:1*0=0,出现0次或者N次
5)+:1+0=1,1次或多次

5.3 属性定义语法(DTD对属性的限制)
基本语法:<!ATTLIST 元素名称 属性名称 属性类型 设置说明>

属性类型:
1)ID 唯一,不能以数字开头
2)CDATA:文本类型
3)ENUM:枚举类型,例如:(男/女)

设置说明:#REQUIRED(必须)/#IMPLIED(可选)

5.4 特殊符号转义
&(逻辑与) 	 -->  &amp;
>(大于)		 -->  &gt;
<(小于)		 -->  &lt;
‘(单引号)	 -->  &apos;
“(双引号)	 -->  &quot;

例子: 内部申明代码如下

 <!--内部申明  -->
 <!DOCTYPE persons[
	<!ELEMENT persons (person+)>
	<!ELEMENT person (name,sex,age,contact,br?)>
	<!ELEMENT name (#PCDATA)>
	<!ELEMENT sex (#PCDATA)>
	<!ELEMENT age (#PCDATA)>
	<!ELEMENT contact (#PCDATA) >
	<!ELEMENT br EMPTY>
	
		<!-- psex (||) "男"
			此取值范围为男或者女  如果xml文件中没有为此属性赋值
			就取值为男
		 -->
	<!ATTLIST person
		pid ID #REQUIRED
		pname CDATA #REQUIRED
		psex (||) "男"  
	>

]>

 <persons>
 	 <person pid="a02" pname="123"   >
 		<name></name>
 		<sex></sex>
 		<age></age>
 		<contact></contact>
 		<br/>
 	</person> 
 	<person psex="男" pid="a23" pname="a">
 		<name></name>
 		<sex></sex>
 		<age></age>
 		<contact></contact>
 		<br/>
 	</person>
 </persons>
相关标签: DTD

推荐阅读