
第1章XML基础教程.ppt
43页- book name
- author_name
- publisher_name
- isbn_number
XMLXML简介简介本章要点本章要点v 标记语言的基本概念v XML的优点及主要用途v XML的编辑浏览工具第第1 1章章 XMLXML简介简介 1.1 HTMLHTML及其局限及其局限1.2XMLXML解决方案解决方案1.3 标记语言概述标记语言概述 XMLXML的特点的特点1.4 XMLXML的应用的应用1.5 XMLXML相关技术相关技术1.6标记语言起源标记语言起源 标记语言起源于传统印刷,是一种用标记语言起源于传统印刷,是一种用来给文本添加来给文本添加“标注代码标注代码”以指明文档中以指明文档中文本编排格式的语言如文本编排格式的语言如word、写字板都、写字板都支持的支持的RTF格式实际就是一种简单标记语格式实际就是一种简单标记语言RTFRTF标记语言标记语言编辑代码如下:编辑代码如下: {\rtf1\ansi\ansicpg936\deff0\deflang1033\deflangfe2052} {fonttb1{\f0\froman\fprq2\fcharset0 Times New Roman;} {\f1\fmodern\fprq6\fcharset134 \’cb\’ce\’cc\’e5;}} {\*\generator Msftedit 5.41.15.1503;}\viewkind4\uc1 \pard\qc\f0\fs40\par We are learning markup language!\par \pard\lang2052\f1\fs20\par }将此段代码保存到文件将此段代码保存到文件1.1.rtf,运行结果如下图所示。
运行结果如下图所示1.1 1.1 标记语言概述标记语言概述1.1.1 标准通用标记语言标准通用标记语言SGML SGML((Standard Generalized Markup Language,,标准通用标记语言),标准通用标记语言),是一种定义电子文档结构和描述其内容的是一种定义电子文档结构和描述其内容的国际标准语言,是所有电子文档标记语言国际标准语言,是所有电子文档标记语言的起源,早在的起源,早在Web发明之前发明之前SGML就已存就已存在1.1.2 超文本标记语言超文本标记语言HTML HTML((Hyper Text Markup Language,,超文本标记语言),是目前网超文本标记语言),是目前网络上应用最广泛的语言,也是构成网页文络上应用最广泛的语言,也是构成网页文档的主要语言它是一个非常简单的档的主要语言它是一个非常简单的SGML语言1.1.3 可扩展标记语言可扩展标记语言XML XML((eXtensible Markup Language,可扩展标记语言)是由,可扩展标记语言)是由W3C((World Wide Web Consortium,万维网联盟)推,万维网联盟)推出的新一代网络数据表示、传递和交换的出的新一代网络数据表示、传递和交换的标准,是标准,是Internet环境中跨平台的、依赖于环境中跨平台的、依赖于内容的技术。
内容的技术XMLXML与与SGMLSGML、、HTMLHTML的关系的关系 SGML、、HTML是是XML的先驱SGML是指是指“通通用标识语言标准用标识语言标准”(Standard Generalized Markup Language), 它是国际上定义电子文件结它是国际上定义电子文件结构和内容描述的标准,是一种非常复杂的文档的构和内容描述的标准,是一种非常复杂的文档的结构,主要用于大量高度结构化数据的防卫区和结构,主要用于大量高度结构化数据的防卫区和其他各种工业领域,利于分类和索引同其他各种工业领域,利于分类和索引同XML相相比,定义的功能很强大,缺点是它不适用于比,定义的功能很强大,缺点是它不适用于Web数据描述,而且数据描述,而且SGML软件价格非常价格昂贵软件价格非常价格昂贵 HTML相信大家都比较熟悉,即相信大家都比较熟悉,即“HyperText Markup Language” (超文本标识语言)(超文本标识语言),它的优它的优点是比较适合点是比较适合web 页面的开发页面的开发XMLXML与与SGMLSGML、、HTMLHTML的关系的关系 但它有一个缺点是标记相对少,只有固定的标记但它有一个缺点是标记相对少,只有固定的标记集如集如.等。
缺少等缺少sgml 的柔性和适应性的柔性和适应性不能支持特定领域的标记语言,如对数学、化学、不能支持特定领域的标记语言,如对数学、化学、音乐等领域的表示支持较少举个例子来说,开音乐等领域的表示支持较少举个例子来说,开发者很难在发者很难在web pape 上表示数学公式、化学分子上表示数学公式、化学分子式和乐谱式和乐谱 Xml 结合了结合了sgml 和和html的优点并消除其缺点的优点并消除其缺点Xml 仍然被认为是一种仍然被认为是一种sgml语言比sgml要简单,要简单,但能实现但能实现sgml的大部分的功能1996年的夏的大部分的功能1996年的夏天,天,Sun Microssystem的的John Bosak开始开发开始开发W3C SGML工作组(现在称为工作组(现在称为xml工作组)他工作组)他们的目标是创建一种们的目标是创建一种sgml,使其在,使其在Web中,既能中,既能利用利用Sgml的长处,又保留的长处,又保留html的简单性现在目的简单性现在目标基本达到标基本达到1.2 HTML1.2 HTML及其局限及其局限1.2.1 HTML文档范例文档范例 HTML提供了一组固定的、预先定义提供了一组固定的、预先定义好的元素标记用来标注一般用途的网页元好的元素标记用来标注一般用途的网页元素。
常用的元素标记包括:标题、段落、素常用的元素标记包括:标题、段落、列表、表格、图片与超链接等列表、表格、图片与超链接等HTML在在创建普通网页时效果良好,大多数网页的创建普通网页时效果良好,大多数网页的代码都是由代码都是由HTML标记的内容构成的标记的内容构成的1.2.2 HTML文档基本架构文档基本架构 HTML使用各种不同的使用各种不同的HTML标记符标记符号来分别标识和设定不同的网页元素,这号来分别标识和设定不同的网页元素,这样的网页元素也被称为样的网页元素也被称为HTML元素每个元素每个元素通常由开始标记、结束标记,以及夹元素通常由开始标记、结束标记,以及夹在这两个标记中的内容所组成在这两个标记中的内容所组成 一个完整的一个完整的HTML文档由文档头部和文档由文档头部和文档正文两个部分组成,其基本结构如下文档正文两个部分组成,其基本结构如下
这是正文部分!这是正文部分!
编写代码如下:编写代码如下:We are learning markup language!
将此段代码保存到将此段代码保存到1.2.htm ,运行结果如下图所示:,运行结果如下图所示:1.2.3 HTML文档常用标记文档常用标记常用的常用的HTML标记及其功能如表标记及其功能如表1-1所示。所示表表1-1 HTML网网页中常用的中常用的标记标记标记标记功能标记功能HTML标识整个网页文档HEAD标识网页头部TITLE标识网页标题内容,此内容将出现在浏览器的标题栏中BODY标识网页的主体部份H1标识第一级标题文字H2标识第二级标题文字H3标识第三级标题文字TABLE标识一个表格TR标识表格中的一行TH标识表格标题行中一个单元格的内容TD标识表格数据行中一个单元格的内容UL设定项目列表(无顺序编号的列表)OL设定项目列表(有顺序编号的列表)LI标识列表中的一个项目(列表项目)P标识一个文字段落IMG标识一个图像A标识链接到其他位置或其他网页的超链接(Anchor 元素)FONT标识文字的字体、字号与颜色EM标识一个加强显示的斜体文字区块B标识一个粗体文字区块1.2.4 HTML的局限的局限HTML的局限性主要表现在如下几个方面:的局限性主要表现在如下几个方面:HTML欠缺对文档数据含义的确切描述欠缺对文档数据含义的确切描述HTML文档的数据结构层次过于简单文档的数据结构层次过于简单HTML页面的数据搜索耗时过长页面的数据搜索耗时过长HTML的链接机制不够完善的链接机制不够完善。
HTML无法表示非传统组件所构成的文档数据无法表示非传统组件所构成的文档数据HTML只能使用预先定义的标记,可扩展性差只能使用预先定义的标记,可扩展性差HTML缺乏对双字节字符或多语种文字的良好支持缺乏对双字节字符或多语种文字的良好支持HTML本身的语法不够规范严密,严重影响网络信息传本身的语法不够规范严密,严重影响网络信息传递和共享递和共享HTML无法真正实现数据的交互无法真正实现数据的交互HTML不可重用不可重用1.3 XML1.3 XML解决方案解决方案1.3.1 XML的实现机制的实现机制 XML使用能够说明数据本质而不是其表象的使用能够说明数据本质而不是其表象的标记来标注数据,并且把数据的样式信息从文档标记来标注数据,并且把数据的样式信息从文档中分离出来,而将其放入相关的样式表文件中中分离出来,而将其放入相关的样式表文件中 XML的标记总是成对出现,就像通常使用的的标记总是成对出现,就像通常使用的括号一样,同时又具有引号的功能,并可采用常括号一样,同时又具有引号的功能,并可采用常见的树型结构进行多层嵌套,这就为程序员的编见的树型结构进行多层嵌套,这就为程序员的编程处理提供了极大的方便。
程处理提供了极大的方便XMLXML文档处理过程文档处理过程编 辑 XML文档解 析 XML文档浏览器应用程序数据库1.3.2 XML文档实例文档实例 在创建一个在创建一个XML文档时,可以由用户自己定文档时,可以由用户自己定义各种标记义各种标记来描述信息中的所有数据元素来描述信息中的所有数据元素,,使信使信息能够息能够“自我描述自我描述”,这就是可扩展标记语言的这就是可扩展标记语言的特性 因此,因此,XML 几乎可以用来描述所有形式的文几乎可以用来描述所有形式的文档,从音乐乐谱到数据库中的数据记录例如,档,从音乐乐谱到数据库中的数据记录例如,下面的描述书信息的下面的描述书信息的XML文档XMLXML表示的结构化数据表示的结构化数据 举个例子,在和举个例子,在和html中,要描述一本书,中,要描述一本书,可以如下表示:可以如下表示:
而序打开了的大门而HTML是一种预定义是一种预定义标记语言,它只认识诸如标记语言,它只认识诸如,等已等已经定义的标记,对于用户自己定义的标记经定义的标记,对于用户自己定义的标记是不认识的是不认识的XMLXML表示的结构化数据表示的结构化数据 在在xml中,同样的数据表示为中,同样的数据表示为
据文件数据就不可阅读 从高级的角度看,从高级的角度看,是一种自描述语言是一种自描述语言 XMLXML表示的结构化数据表示的结构化数据 XML可利用于数据交换可利用于数据交换 主要是因为主要是因为XML表示的信息独立于平台的,这里的平台即表示的信息独立于平台的,这里的平台即可以理解为不同的应用程序也可以理解为可以理解为不同的应用程序也可以理解为不同的操作系统;它描述了一种规范,利不同的操作系统;它描述了一种规范,利用它,用它,Microsoft的的word文档可以和文档可以和Adobe 的的Acrobat交换信息,可以和数据库交换信交换信息,可以和数据库交换信息 1.4 XML1.4 XML的特点的特点 1.4.1 XML1.4.1 XML的优点的优点XML是是SGML的简化版本的简化版本XML是结构化的,具有良好的可读性是结构化的,具有良好的可读性方便的可扩展性方便的可扩展性XML揭示了数据本身的含义揭示了数据本身的含义数据内容与其格式的分离数据内容与其格式的分离便于信息的检索便于信息的检索可以轻松地跨平台应用,支持不同文字不同系统可以轻松地跨平台应用,支持不同文字不同系统间的信息交互间的信息交互XML是基于文本的是基于文本的具有较好的保值性。
具有较好的保值性XMLXML与与HTMLHTML的比较的比较 比比较内容内容HTMLHTMLXMLXML可可扩展性展性不具有不具有扩展性展性是元是元标识语言言, ,可用于定可用于定义新的新的标识语言言侧重点重点侧重于如何表重于如何表现信息信息侧重于如何重于如何结构化地描述信息构化地描述信息语法要求法要求不要求不要求标记的嵌套的嵌套, ,配配对等等, ,不要求不要求标识之之间具有一定具有一定的的顺序序严格要求嵌套格要求嵌套, ,配配对, ,并遵循并遵循DTDDTD的的树形形结构构可可读性及可性及可维护性性难于于阅读, ,维护结构清晰构清晰, ,便于便于阅读, ,维护数据和数据和显示的关示的关系系内容描述与内容描述与显示方式整合示方式整合为一体一体内容描述与内容描述与显示方式相分离示方式相分离保保值性性不具有保不具有保值性性具有保具有保值性性编辑及及浏览工具工具已有大量的已有大量的编辑, ,浏览工具工具编辑, ,浏览工具尚不成熟工具尚不成熟结构描述构描述不支持深不支持深层的的结构描述构描述文件文件结构嵌套可以复构嵌套可以复杂到任何程度到任何程度与数据与数据库的关系的关系没有直接没有直接联系系与关系型和与关系型和层状数据状数据库均可均可对应和和转换超超级链接接单文件、文件、书签链接接可以定可以定义双向双向链接、多目接、多目标链接、接、扩展展联结大小写敏感性大小写敏感性大小写不区分大小写不区分大小写区分大小写区分1.4.2 XML与与C#C# 技术是最重要的信息技术发展之一。
技术是最重要的信息技术发展之一C# 不仅是一种高性能的网络编程语言,而不仅是一种高性能的网络编程语言,而且已成为网络世界中一种跨系统的操作平且已成为网络世界中一种跨系统的操作平台XML和和C#技术的合作,许多任务可以在客技术的合作,许多任务可以在客户端完成,从而使得网络更加畅通快捷户端完成,从而使得网络更加畅通快捷可以说,可以说,XML使使C#真正有了用武之地真正有了用武之地1.4.3 XML的不足的不足XML的数据是以树状结构存储的,数据的插入与修改比的数据是以树状结构存储的,数据的插入与修改比较困难XML文档的内容完全以文本形式表现与存储,与采用二文档的内容完全以文本形式表现与存储,与采用二进制形式相比其存储量和传输量都将大大增加进制形式相比其存储量和传输量都将大大增加XML文档作为数据集合使用时,相当于一个数据库,却文档作为数据集合使用时,相当于一个数据库,却不具备数据库管理系统那样完备的功能不具备数据库管理系统那样完备的功能XML不能替代不能替代HTMLXML是一种元标记语言,任何组织、任何人都可以利用是一种元标记语言,任何组织、任何人都可以利用它来定义新的标记和标准,从而将产生一定的混乱与冲它来定义新的标记和标准,从而将产生一定的混乱与冲突。
突1.5 XML1.5 XML的应用的应用1.5.1 XML的应用领域的应用领域1.数据交换.数据交换2.数据存储.数据存储3..Web应用应用4.电子商务.电子商务5.数据库应用.数据库应用6.网络出版.网络出版7.特定文档的组织.特定文档的组织8.系统配置文件.系统配置文件1.5.3 XML的其他应用的其他应用1.电子商务框架语言.电子商务框架语言ebXML2..开放电子书籍规范开放电子书籍规范OEB3..基于基于XML的其他应用的其他应用1.6 XML1.6 XML相关技术相关技术1.6.1 文档类型定义文档类型定义DTD1.6.2 层叠样式表层叠样式表CSS1.6.3 可扩展样式表语言可扩展样式表语言XSL1.6.4 数据源对象数据源对象DSO1.6.5 文档对象模型文档对象模型DOM1.6.6 XML Schema1.6.7 Xlink与与XpointerXMLXML编辑浏览工具编辑浏览工具1 1((XML Notepad XML Notepad )) 如下图所示:如下图所示:XML Notepad是微软一个简单的文是微软一个简单的文本编辑器。
它将本编辑器它将XML文档显示为树状结构,用户可方文档显示为树状结构,用户可方便地通过插入结点的方式输入和编辑便地通过插入结点的方式输入和编辑XML文档,用户文档,用户完全在一个图形化的交互界面中进行操作完全在一个图形化的交互界面中进行操作XMLXML编辑浏览工具编辑浏览工具2 2((XMLwriterXMLwriter )) 如下图所示:如下图所示:XMLwriter的出现比较早,它是由的出现比较早,它是由Wattle Software公司开发的公司开发的XML编辑软件该软件的主界面同编辑软件该软件的主界面同Visual Studio非常相似,可以对非常相似,可以对XML文档文档进行编辑,将不同的元素用不同的颜色区分开来,同时还可以利用外挂式浏进行编辑,将不同的元素用不同的颜色区分开来,同时还可以利用外挂式浏览器方式进行预览但它不支持所见即所得,其页面的浏览只能用专用的浏览器方式进行预览但它不支持所见即所得,其页面的浏览只能用专用的浏览器因而,其充其量不过是一个功能强大的编辑器它还提供了集成开发览器因而,其充其量不过是一个功能强大的编辑器它还提供了集成开发环境环境IDE((Integrated Development Environment),面向项目管理。
面向项目管理 XMLwriter用用C++编写而成,较现有的一些基于编写而成,较现有的一些基于JAVA的的XML编辑器而言运编辑器而言运行速度快、效率高行速度快、效率高XMLwriter是一个共享软件是一个共享软件 XMLXML编辑浏览工具编辑浏览工具3 3((XMLSPY XMLSPY ))如下图所示:如下图所示:XMLXML编辑浏览工具编辑浏览工具3 3((XMLSPY XMLSPY ))XML Spy 是是Icon Information-Systems公司的产品公司的产品 XML Spy在功能上较在功能上较XMLwriter有所提高它支持有所提高它支持Unicode、多字符集,支持、多字符集,支持Well-formed和和Validated两种两种类型的类型的XML文档,并可编辑文档,并可编辑XML文档、文档、DTD、、schema,以及,以及XSLT它的最大特点是提供了四种视窗:它的最大特点是提供了四种视窗:XML结结构视窗、增强表格视窗、源代码视窗和支持构视窗、增强表格视窗、源代码视窗和支持CSS和和XSL的的预览视窗结构视窗以树形结构编辑预览视窗结构视窗以树形结构编辑XML文档(包括文档(包括XML、、XSL文档,但对文档,但对DTD文档的显示相对较为简单);文档的显示相对较为简单);增强表格视窗以表格的方式显示出文档中的某一项元素增强表格视窗以表格的方式显示出文档中的某一项元素的数据库项;源代码视窗可以查看和修改文档源码,并的数据库项;源代码视窗可以查看和修改文档源码,并且以不同的颜色标注不同的元素;预览视窗采用内嵌且以不同的颜色标注不同的元素;预览视窗采用内嵌IE5的方式在软件内对的方式在软件内对XML文档进行浏览,支持文档进行浏览,支持CSS和和XSL。
另外,另外,XML Spy也提供集成开发环境也提供集成开发环境IDE,但仍不支持,但仍不支持所见即所得所见即所得 XMLXML编辑浏览工具编辑浏览工具4 4((IEIE))用用IE浏览器来查看浏览器来查看XML代码运行结果:代码运行结果:实训实训1 1:创建并显示:创建并显示XMLXML文档文档 在文本编辑器中输入以下代码,并保存到在文本编辑器中输入以下代码,并保存到1.10.xml,再,再用用IE浏览器打开浏览器打开1.10.xml <客户名单客户名单> <客户客户 种类种类="个人个人"> <编号编号>KH-0165编号编号> <客户地址客户地址>重庆重庆客户地址客户地址> <姓名姓名>任建兴任建兴姓名姓名> <订单订单>DD-345订单订单> 客户客户> <客户客户 种类种类="个人个人"> <编号编号>KH-0166编号编号> <客户地址客户地址>北京北京客户地址客户地址> <姓名姓名>马辛马辛姓名姓名> <订单订单>DD-346订单订单> 客户客户> <客户客户 种类种类="公司公司"> <编号编号>KH-0233编号编号> <客户地址客户地址>上海上海客户地址客户地址> <单位单位>上海东方旅游公司上海东方旅游公司单位单位> <订单订单>DD-210订单订单> 客户客户>客户名单客户名单> 习题:习题:什么是什么是XML??XML、、HTML和和SGML有什么联系?有什么联系?XML的主要优点是什么?的主要优点是什么?HTML与与XML的主要区别是什么?的主要区别是什么?XML编辑器有哪些,各自有何特点?编辑器有哪些,各自有何特点?。












