XML入门简单易懂教程
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
定义XML约束模式的语言
▪ XML DTD ▪ XML Schema
文档类型定义DTD(Document Type Definition)是 早期出现的一种XML约束模式语言,按照DTD语 法创建的文件称为DTD文件,扩展名.dtd 通过比较XML文档和DTD文件,可以判断XML文 档是否符合DTD文件定义的某种约束规范
XML元素的写法有严格规定:
▪ 所有元素都要闭合 ▪ 嵌套元素要按正确顺序一一闭合 ▪ 元素名区分大小写
▪ 一个XML文件必须有且只有一个根元素
<书籍> Servlet与JSP核心编程 </书籍> XML元素:开始标记+内容+结束标记
元素内容中出现的空格、换行,XML解析器会当 成内容的原始组成部分进行处理 <书籍>Servlet与JSP核心编程</书籍>
<售价> <货币单位>人民币</货币单位> <价格>60</价格> </售价>
元素(标记)和属性的名称可以采用非英文字符 ,比如中文
XML注释是放置在<!-- 和 -->之间的语句块,会被 解析器忽略(浏览器不会忽略) 示例
<?xml version="1.0" encoding="GB2312" ?>
XML注重数据内容,与HTML强调布局展示的特 点不同 XML文件的外观展示由CSS或XSLT实现
异构系统之间进行信息交流的媒介 各种异构系统安装
XML解析程序,即 可解读其它系统传 来的XML数据
XML解析程序(Parser)将XML文件解析成一个对象模型 ,供应用程序处理
对象模型
商业程序
XML解析器,应用css文件显示xml文档内容:
<?xml-stylesheet type="text/css" href=“style.css“ ?>
▪ 处理指令以“<?”作为开头,以“?>”作为结尾,XML声明语 句可以看成是最常见的一种处理指令
<?xml version="1.0" encoding="GB2312" ?>
▪ 可扩展的标记语言 ▪ 由W3C制定规范,最新XML2.0
XML是标记语言的一种,标记是指计算机所能理 解的信息符号 SGML(Standard Generalized Markup Language 标准通用标记语言)
▪ XML、HTML都是SGML的一个子集
计算机程序世界存在着大量需要彼此交流和传递 的文档数据信息,传递的文档数据信息格式应该 方便计算机程序的解读
<推荐书籍>
<书籍> <! --这本书不错,要看 --> <名称>Servlet与JSP核心编程(核心技术)第二版</名称> <作者>(美)Marty Hall,Larry Borown</作者> <售价 货币单位="人民币">60</售价> </书籍> … </推荐书籍>
XML中,需要保持内容原始面目,不希望被解析 器处理的内容放置在<![CDATA[ 与 ]]> 之间,作用 类似HTML中的<pre></pre> <![CDATA[ <h1> Servlet与JSP核心编程 </h1> ]]>
HTML和XML都是标记语言 HTML将数据和显示效果混在一起,XML只是存 储了数据和描述了数据之间的关系,没有规定如 何显示数据,即将数据和显示进行了分离 XML是更加严格的标记语言,比如严格区分大小 写,必须有结束标记等 HTML的标记集合是固定的,XML的标记是可无 限扩展的,可以用于描述各种应用领域的数据
XHTML是HTML和XML的混合体,采用XML的语 法和规则来编写页面,比如:要求所有标记都必 须有结束标记,要求所有属性值放在一对单引号 或双引号之间等
XML简介 XML的产生 XML的优越性
XML的常见应用
XML语法 XML约束 XML与HTML比较
本篇内容限于对XML的总体认识,有助于对XML 文件的阅读和理解 XML编程技术不在本篇介绍范畴之内
XML(Extensible Markup Language)
…
</table>
HTML的不足
▪ HTML是一种数据信息的表现技术,将数据本身和数据 的显示效果混在一起,是设计用来进行人机交互的 ▪ 在表达数据内容本身以及数据内容之间的关系这一方面 ,HTML能力不够,或者说,HTML提供的标记不具备 这个能力
能否创建一个可以将价格、书名明确标示出来的标 记,比如<price> , <title>
有些时候,需要定义一套规则对XML文档中的内容作出 限制,这套定义的规则就是XML文档的约束模式 约束模式定义了XML文档中允许出现的元素(标记)名 、元素中的属性、内容类型,以及元素之间的嵌套关系 和出现顺序等
▪ 定义词汇表 ▪ 定义XML文档需要遵循的结构
如果没指定约束模式,一个XML文档可以包含任何类型 标记,如果指定了约束模式,则其必须满足约束模式的 规定
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"> DTD也可以用来约束HTML
XML Scheme也是一种用于定义和描述XML文档 结构与内容规范的模式语言,扩展名.xsd XML DTD不使用XML写法,采用的是另外一种专 用表示方法 XML Scheme的语法与XML一样 查看Tomcat安装目录\conf\web.xml
检验XML文件是否格式良好的简单方法:示例XML
▪ 是否可以通过IE正常打开
一个遵守XML基本语法规则(即格式良好的)、 且符合为它指定的某个XML约束模式的XML文档 称为“Valid XML”——有效的XML文档
<?xml version="1.0" encoding="GB2312" ?> <推荐书籍> <书籍> <名称>Servlet与JSP核心编程(核心技术)第二版</名称> <作者>(美)Marty Hall,Larry Borown</作者> <售价 货币单位="人民币">60</售价> <售价 货币单位="人民币">55</售价> 格式良好, </书籍> … 但未必符合逻辑 </推荐书籍>
XML!
XML(Extensible Markup Language):可扩展的 标记语言
▪ 可以自由定义标记 ▪ 定义的标记可以按自己的意思充分表达数据内容的含义
通过XML描述“推荐书籍”信息 示例XML
<?xml version="1.0" encoding="GB2312" ?> <推荐书籍> <书籍> <名称>Servlet与JSP核心编程(核心技术)第二版</名称> <作者>(美)Marty Hall,Larry Borown</作者> <售价 货币单位="人民币">60</售价> </书籍> <书籍> <名称>深入体验Java Web开发内幕——核心基础</名称> <作者>张孝祥</作者> <售价 货币单位="人民币">58</售价> </书籍> </推荐书籍>
对于一些特殊字符的显示,可以通过转义字符形式
特殊字符 & < > " ' 替代符号 & < > " '
处理指令PI(Processing Instruction)
▪ 处理指令,简称PI ,处理指令用来指挥解析器如何解析XML 文档内容 ▪ 比如:XML文档中可以使用如下xml-stylesheet指令,通知
XML 文档声明 <?xml version="1.0" encoding="GB2312" ?>
<推荐书籍> <书籍> <名称>Servlet与JSP核心编程(核心技术)第二版</名称> <作者>(美)Marty Hall,Larry Borown</作者> <售价 货币单位="人民币">60</售价> </书籍> <书籍> <名称>深入体验Java Web开发内幕——核心基础</名称> <作者>张孝祥</作者> <售价 货币单位="人民币">58</售价> </书籍> </推荐书籍>
内容不一样
<书籍> Servlet与JSP核心编程 </书籍>
XML元素属性的写法有严格规定:
▪ 属性名区分大小写 ▪ 属性值必须包括在一对双引号或单引号之间,即使是数 字字符
<售价 货币单位="人民币" >60</售价> 属性名 = “属性值”
属性可以被改成用子元素来描述 <售价 货币单位="人民币" >60</售价>
格式良好的(Well-formed)XML:
▪ 遵守XML基本语法规则的XML文档,又称“合格的 ”XML ▪ 一个XML文档首先必须是格式良好的XML
XML基本语法规则(主要):
▪ ▪ ▪ ▪ 元素(标记)必须要闭合 嵌套元素要按正确顺序一一闭合 必须有且只有一个根元素 属性值必须包括在一对双引号或单引号之间
示例:HTML展现书籍列表信息
<table border="2" cellpadding="5"> <tr> 计算机(程序)很难直观 <th>名称</th> 地判断出哪个标记标注的 <th>作者</th> 是书名,哪个标记标注的 <th>售价</th> 是价格 </tr> <td>Servlet与JSP核心编程(核心技术)第二版</td> <td>(美)Marty Hall,Larry Borown</td> <td>60</td> </tr>
描述具有层次关系的数据
名称 书籍 作者 售价
推荐书籍 名称 书籍 作者 售价
软件配置文件
▪ 比如Tomat 配置文件
conf/server.xml
一个XML文件通常包含以下部分内容:
▪ 文档声明 ▪ 元素 ▪ 属性
▪ 注释
▪ CDATA区、特殊字符 ▪ 处理指令PI(Processing Instruction)