XML基础

XML

在这里插入图片描述
命名空间是为了DTD和Schema解决命名冲突,DTD和Schema是自定义结构,保证数据传输的正确性。

XML定义:

可扩展标记语言(可以自己定义)。设计宗旨是包含和传输数据。

主要应用:
  • 系统的配置文件。(现在大部分是XML)
  • Ajax中数据传输
  • Web Services中传输数据
  • 异构平台的数据交换与整合。不同平台的数据,可以用XML来进行整合。
XML特点:

可扩展,灵活,占内存小。为传输数据而设计。相比于HTML,HTML提供了已经定义好的标签,是提供了一个标准。而XML通过DTD和Schema,用户可以根据自己的需要来定义新的结构,新的标签。实现自己想要的功能。

举例:

VS中config文件,就采用这种通俗易懂的语言。借助它可扩展性的特点,我们可以自己写标签进行封装,来实现自己想要的效果。实现开闭原则,当需要修改的时候在config文件中进行,不需要修改院代码。

应用:

支持跨平台,常用于银行间相互数据传输。

DTD

DTD:(Document Type Definition)自定义结构。
为什么要出现DTD:

用户提前定义自己需要的结构,之后按着这个结构来写代码。可以实现正确进行数据交换。

元素:

元素:<!ELEMENT 元素名称(元素内容)>
空元素:<!ELEMENT 元素名称 EMPTY>
带有任何元素:<!ELEMENT 元素名称 ANY>
在这里插入图片描述

属性:

语法:<!ATTLIST 元素名称 属性名称 属性类型 默认值>
举例:

      DTD:
		<!ATTLIST payment type CDATA "cash">
	  XML:
		<payment type="check"/>     可以赋予
		<payment />       默认值:cash

其他属性:
在这里插入图片描述
举例:
liuwei

四种默认属性:
在这里插入图片描述

#IMPLIED:
语法:<!ATTLIST 元素名称 属性名称 属性类型 #IMPLIED>
#FIXED:
语法:<!ATTLIST 元素名称 属性名称 属性类型 #FIXED "value">
举例:

  DTD:
 <!ATTLIST payment type CDATA #FIXED "cash">
 XML:
  <payment type="cash"/>
  <payment/>

实体:

内部声明实体:
<!ENTITY 实体名称 "实体的值">
举例:

	DTD<!ENTITY writer "Bill Gates">
		   <!ENTITY copyright "Copyright jobedu.com.cn">
	XML:
		  <author>&writer;&copyright;</author>
		 输出结果是:Bill Gates   Copyright jobedu.com.cn

外部实体声明:(其他地方所定义的)

<!ENTITY 实体名称 SYSTEM "URI/URL">

举例:

	DTD<!ENTITY writer SYSTEM "http://www.baidu.com">
	XML:
<author>&writer;</author>  

Schema

定义:

Schema描述XML文档的结构,和DTD相比它是XML文件,比DTD功能强大,是DTD的继任者。会在将来取代DTD。

优势:
  • 1.可针对未来需求进行扩展。
  • 2.更完善,功能更强大。
  • 3.基于XML编写。
  • 4.支持数据类型。
应用:

可保护数据通信。
像03-11-2019,可以理解未11月3日,也可以理解为3月11日。但是2019-03-11,定义XML数据类型"date"格式为YYYY-MM-DD;
可扩展的。

特点:

在其他Schema中重复使用自己的Schema.
在相同文件中可以应用多重的Schema。

评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值