加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

23XML DTD

发布时间:2020-12-16 09:37:06 所属栏目:百科 来源:网络整理
导读:1 #PCDATA (Parsed Character Data),可解析的字符数据。 DTD文档与XML文档是类与对象的关系 DTD是抽象的定义 XML是具体的内容 第一种 内部DTD文档 ?xml version="1.0" encoding="UTF-8"?!DOCTYPE student[!ELEMENT student (id,name,score)!ELEMENT id (#

1 #PCDATA (Parsed Character Data),可解析的字符数据。


DTD文档与XML文档是类与对象的关系

DTD是抽象的定义

XML是具体的内容


第一种 内部DTD文档

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE student[

<!ELEMENT student (id,name,score)>
<!ELEMENT id (#PCDATA)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT score (#PCDATA)>
]>


<student>
<id>1</id>
<name>sx</name>
<score>100</score>
</student>
第二种 外部DTD文档 便于DTD文档复用
<?xml version="1.0" encoding="UTF-8"?>
	<!ELEMENT student (id,score)>
	<!ELEMENT id (#PCDATA)>
	<!ELEMENT name (#PCDATA)>
	<!ELEMENT score (#PCDATA)>

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE student SYSTEM "myfirst.dtd">
<student>
	<id>1</id>
	<name>sx</name>
	<score>100</score>
</student>

2 DTD中元素的类型

dtd中ELEMENT元素的类型有 EMPTY、ANY、#PCDATA等

(1)EMPTY类型规定了元素不能有值但可以有属性,不能包括文本。
(2)ANY类型则规定一个元素下面可以包括子元素,文本,属性。
将根元素设置为ANY后 子元素出现的次数和顺序将不受限制。

(3)#PCDATA则规定元素下面不能包括子元素,且元素的值是字符串。


3DTD元素修饰符号



4 属性的定义


属性类型

(1)CDATA 字符创

(2)NMTOKEN CDATA的一个子集 ,表示属性值必须是英文字母,数字,句号,破折号,下划线或冒号,属性值不能有空格

(3)ID 表示属性值是唯一的

(4)IDREF 指向文档中其他地方声明的ID类型的值

属性特点

(1)#REQUIRED 必须有的属性值

(2)#IMPLIED可选的,可有可无

(3)#FIXED value 属性值必须为指定的固定值,value

(4)#Default value 为属性提供一个默认值

2关于普通实体与参数实体


1) 普通实体是在dtd中定义,xml中使用,使用的时候格式为:&address;
2) 参数实体是在dtd中定义,dtd中使用,定义的时候使用%,使用的时候也需要使用%,%address;
3) 外部普通实体的定义方式是:
<!ENTITY address SYSTEM “http://www.shengsiyuan.com/xml.xml”>
表示使用http://www.shengsiyuan.com/xml.xml网址的内容来替换掉address,而不是使用http://www.shengsiyuan.com/xml.xml字符串本身来替换掉address
4)外部参数实体:

<!ENTITY % address SYSTEM “http://www.shengsiyuan.com/xml.xml”>,使用的时候:%address;




命名空间

避免重名

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE 学生名册 SYSTEM "dtd1.dtd">
<S:学生名册   xmlns:S="http://www.dldd.com">
	<学生 学号="t1">
		<姓名>张三</姓名>
		<性别>男</性别>
		<年龄>20</年龄>
	</学生>
	<学生 学号="t2">
		<姓名>李四</姓名>
		<性别>女</性别>
		<年龄>19</年龄>
	</学生>
	<学生 学号="t3">
		<姓名>王二</姓名>
		<性别>男</性别>
		<年龄>21</年龄>
	</学生>
</S:学生名册>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读