DTD和xml

铁子们今天分享的是DTD和xml 

老规矩分享前先看看思维导图

 

目录

一,什么是xml

  01.什么是xml:   

        3.标准的XML格式什么样子

二,元素定义

01,在xml中加入DTD声明

02, 元素分类

03,元素限制

三,属性定义

1.语法

2.属性类型type

3.属性描述


一,什么是xml

  01.什么是xml:   

答: 

               一、 XML 指可扩展标记语言(eXtensible Markup Language)。

               二、 XML 被设计用来传输和存储数据。

               三、 XML 没有预定一的标签,可以自己随便自定义标签

      0  2.XML的作用

答:

                一、 数据交互(但由于它传输体积过大,传输效率慢,不经常使用了)

                二、做配置

        3.标准的XML格式什么样子

                一、 有且只有一个根元素

                二、XML标签大小写正确区分

                三、 正确使用结束标签

                四、 正确嵌套标签

                五 、用了合法的标签名

                六、 定义有效的属性

二,元素定义

01,在xml中加入DTD声明

(第二行代码  )

02, 元素分类

案例如下:

 代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE persons [
  <!ELEMENT persons (person+)>
  <!ELEMENT person (name,age,contact,br?)>
  <!ELEMENT name (#PCDATA)>
  <!ELEMENT age (#PCDATA)>
  <!ELEMENT contact (phone|email)>
  <!ELEMENT phone (#PCDATA)>
  <!ELEMENT email (#PCDATA)>
  <!ELEMENT br EMPTY>
  
 
]>
		<!-- 建立xml约束,首先分析xml结构 
		1.根表签persons 
		2.persons 有子标签 混合标签 (有子标签) 
		3.persons 	有子标签 混合标签 name 、age、contact、br 
		4.name 没有子标签 有内容 文本标签
		5.persons 有子标签 混合标签 (有子标签) 
		6.name 没有子标签 有内容 文本标签 
		7.br 既没有子标签有没有文本内容 空标签 
		8.name 没有子标签 有内容 文本标签 
			<!Doctype root[..]> -->
<persons>
	<person>
		<name>张小明</name>
		<age>10</age>
		<contact>
			<phone>1234567</phone>
		</contact>
		<br/>
	</person>
	<person>
		<name>张大明</name>
		<age>35</age>
		<contact>
			<email>123@qq.com</email>
		</contact>
	</person>
</persons>

03,元素限制

 ,   代表与

  |      代表非

  ?    代表0或1次

  *      代表0~N次

  +     代表1~N次

案例

代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE persons [
  <!ELEMENT persons (person+)>
  <!ELEMENT person (name,age,contact,br?)>
  <!ELEMENT name (#PCDATA)>
  <!ELEMENT age (#PCDATA)>
  <!ELEMENT contact (phone|email)>
  <!ELEMENT phone (#PCDATA)>
  <!ELEMENT email (#PCDATA)>
  <!ELEMENT br EMPTY>
  
 
]>
		<!-- 建立xml约束,首先分析xml结构 
		1.根表签persons 
		2.persons 有子标签 混合标签 (有子标签) 
		3.persons 	有子标签 混合标签 name 、age、contact、br 
		4.name 没有子标签 有内容 文本标签
		5.persons 有子标签 混合标签 (有子标签) 
		6.name 没有子标签 有内容 文本标签 
		7.br 既没有子标签有没有文本内容 空标签 
		8.name 没有子标签 有内容 文本标签 
			<!Doctype root[..]> -->
<persons>
	<person>
		<name>张小明</name>
		<age>10</age>
		<contact>
			<phone>1234567</phone>
		</contact>
		<br/>
	</person>
	<person>
		<name>张大明</name>
		<age>35</age>
		<contact>
			<email>123@qq.com</email>
		</contact>
	</person>
</persons>

三,属性定义

1.语法

<!ATTLIST  元素  元素属性排列的顺序  >

2.属性类型type

ID        代表唯一的

|            代表或者

CDATA   代表文本类容

IDREF    代表依赖与ID

3.属性描述

#REQUIRED   代表必填

#IMPLIED        代表非必填

' 默认值 '           代表默认值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值