reille注:

XML完整教程可从我的资源上下载到,下载地址为:http://download.csdn.net/source/3465952,本人浏览了下,对于掌握XML是一本不可多得的电子书籍,希望对你有所帮助~~

1、XML的产生

SGML,HTML,XML,这些都是标记语言。利用这些标记可以使文档规范化格式化 以便于信息的整理与交流。 这些标记语言的发展经历了一个过程。 首先产生了SGML,正是由于 SGML 的应用随后产生了 WEB 和 HTML 语言, 由于 HTML 语言满足不了日益复杂的 WEB 信息交流的需要,因此发展到了 XML 语言。

2、XML的基本概念

2.1 元素

元素就是文档的组件,元素可由其他元素、其他类型数据等组成。
元素的关系:
XML必须有根元素,好比是HTML中的<html>元素一样。因XML元素名称可自定义,所有名称最好能与内容有逻辑上的关联。
元素命名规则:
元素的命名上不像HTML有固定的要求,XML元素的名称可以自定义,但要注意名称不能含有空格和":"符号。

2.2 属性

属性可以包含元素额外的信息。
弱点:
1). 不能含多重数值
2). 扩展能力有限
3). 不能描述结构内容
4). 难以用DTD进行测试

2.3 文档类型定义

文档类型定义(DTD)是关于标记符号使用的语法规则。(明确文档中标记符号的使用)

2.4 模式(Schema)

和DTD有点类似,不同的是它可以定义元素内使用数据的类型

2.5 命名空间(Namespace)

XML可自定义元素名称,为了防止各用户使用的名称出现重复而又代表不同的内容,就得用到命名空间。

2.6 CSS与XSL

XML的内容与表现形式是分开的,用户可以根据自己的需要来定义表现形式
CSS可以表现HTML和XML文件
XSL可以表现XML文件以及语言转形(XSLTransformation)
两者各有特点,可相互补充

2.7 链接

目前HTML的链接只能做到单一方向,而不能到达某一特殊的位置,也无法轻易创建外部页间的链接。
XML的链接包括:
Xpath:
主要目的是进行部分而不是整个XML文档的实际寻址
XLink:
利用XML句法创建结构来描述目前的HTML的单向链接以及更复杂的多端和多类型的链接。XLink的重要部分是定义两个或多个数据对象或对象部分之间的关系
XPointer:
建立在Xpath的基础上以支持到XML文档的内部结构中的寻址。因此可以使用XML标记联接到另一个文档的特殊部分而不必提供ID引用

2.8 DOM(文档对象模型)

XML文档对象模型将XML文档的内容实现为对象模型。
要使用DOM得有相应的解析器。VBscript和IE可以用CreateObject方法来实现:
set objParser = CreateObject("Microsoft.XMLDOM")
如使用的是ASP则:
set objParser = Server.CreateObject("Microsoft.XMLD

3、XML的结构

3.1 XML的数据结构,命名空间

命名空间允许开发人员在可识别的情况下定义元素的名称,以避免同名元素间产生冲突。

<orders xmlns:person="http://www.h3bbs.com"xmlns:dsig="http://blog.h3bbs.com">
<order>
<sold-to>
<person:name>
<person:last-name>wei</person:last-name>
<person:first-name>shen</person:first-name>
</person:name>
</sold-to>
<sold-on>2006-04-07</sold-on>
<dsig:digital-signature>123456789</dsig:digital-signature>
</order>
</orders>
这段编码告诉读者:如果一个元素是以dsig打头那它的意义是由http://blog.h3bbs.com的命名空间所定义的。同样以person打头的元素的意义是由http://www.h3bbs.com的命名空间所定义的。命名空间保证元素名称不会冲突,同时也阐明了元素是由谁定义的。它并不给出如何处理元素的指令,但读者仍然需要知道元素的意义并且决定如何处理它们。

3.2 数据发送,处理

由于XML是基于开发式和文本式的,所以它能够通过HTTP像HTML那样传输。
桌面上的数据可以用DOM处理,这是使得数据服务器上数据的变化能传递给客户,反过来也一样。

3.3 解析XML

IE5中的XML解析器能够读入一串XML数据,经过处理产生一棵结构树,并可使用DOM把所有数据元素作为对象解析器,用CSS或XSL样式表显示数据或者用脚本把数据进行进一步的处理或者把数据移交给另外的应用软件或对象进行进一步的处理。DOM用扩展方式支持命名空间数据类型查询和XSL转化

3.4 使用文档对象模式DOM处理和编辑数据

DOM实际上是一个应用编程接口,用来定义一种标准方法,通过这种方法开发人员能够处理XML结构树的元素。对象模式控制着使用者如何同结构树交流并且把所有树的元素作为对象表现出来

3.5 用HTML显示XML数据

XML文档自身不能决定如何显示信息而HTML是一个理想的显示语言。
数据捆绑和样式表可以用来把XML数据组织成形象化的表达形式并加上交互功能。

XSL能够进一步加强这一过程,一个XSL样式表包括如何从XML文档中取出信息以及如何把它转变为另一种格式的指令。XML转变为另一种格式比如HTML采用的是一种公布了的方法这比采用脚本编写简单而且容易理解,另外XSL把XML作为它的语法使XML的编写者不用去掌握另外的标识语言。

CSS仍然被应用于结构简单的XML数据并且也很有用,但是CSS不提供与数据源结构不同的数据显示结构。使用XSL可以产生与原来的XML数据结构完全不同的表达结构,XSL提供内容和表现形式的语义和结构独立性

3.6 增加HTML

HTML页增加语义信息并不容易,为了解决这一问题W3C定义了一个格式用来把基于XML的数据放到HTML页中,通过使用数据岛(data islands)扩展HTML,允许很大范围的应用软件使用HTML作为主要文档和显示格式并且使用这些文档中内含的XML保存数据。

3.7 转换和查询XML

XML语法XSL和XSL模式语言提供了满足XML转换和查询所需要的方法。XSL模式是简明的语法用来识别XML文档的节点,它还提供了一种能将XML的数据从一种模式转换成另外一种模式。

3.8 设置字符和编码

3.9 空格符

在HTML中空格符是会被忽略的,但XML是描述数据的语言,可以使用xml:space属性来保留空格。

4、常见的问题

4.1 XML是为了取代HTML而发展的吗?

XML与HTML被制定设计的目标是不一样的。HTML是为网页设计而制定的,所以HTML着重在如何将文件资料显示出来,而XML是要制定一种高弹性与扩展性的标记語言,使其能广泛应用在WWW上的电子文件,主要着重在如何将文件结构化以方便资料的交换。网页资料当然也是一种电子文件,所以XML的应用范围包含到网页但这并不代表XML就要取代HTML。HTML在网页设计上依然会扮演一个重要的角色非XML短时间能取代

XML完整教程和什么是XML语言相关推荐

  1. 《Lynda.com XML 必备教程》(Lynda.com XML Essential Training)CFE 教程

    中文名: Lynda.com XML 必备教程 英文名: Lynda.com XML Essential Training 资源格式: 光盘镜像 版本: CFE 教程 发行时间: 0000年 地区:  ...

  2. html5在线预览xml,HTML5教程 5分钟了解XML

    无论是在Sencha Touch还是SAP UI5,都用到了XML这种语言.在Sencha Touch中,它和JSON一样被用来做数据传输:在SAP UI5中,它被用来当做视图模板.接下来我们来深入学 ...

  3. 【附源码/完整教程】如何使用C语言打造人机对战版五子棋?

    1.项目分析 2.项目目标 AI的基础应用 算法的设计和实现 C语言的图形界面程序开发 3.项目准备 VS/VC++(任意版本) easyx图形库(直接双击即可安装) 领取素材(图片.音效)传送门 4 ...

  4. Dom4j完整教程~XML文档简单操作

    读取XML文档: 读写XML文档主要依赖于org.dom4j.io包,有DOMReader和SAXReader两种方式.因为利用了相同的接口,它们的调用方式是一样的. public static Do ...

  5. XML入门教程(3)

    30.通过XSL显示XML XML.XML ---------------------------------------------------------- <?xml version=&q ...

  6. XML基础教程(2)

    一.XML元素 XML 文档包含 XML 元素. 什么是 XML 元素? XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分. 元素可包含其他元素.文本或者两者的混合物.元素也可以拥有 ...

  7. [Qt教程] 第27篇 XML(一)使用DOM读取XML文档

    [Qt教程] 第27篇 XML(一)使用DOM读取XML文档 楼主  发表于 2013-5-21 21:14:28 | 查看: 1001| 回复: 14 使用DOM读取XML文档 版权声明 该文章原创 ...

  8. Pom.xml文件教程详解

    原创整理不易,转载请注明出处:史上最全的maven pom.xml文件教程详解 代码下载地址:http://www.zuidaima.com/share/1781583829978112.htm   ...

  9. XML入门教程(XML这样学)

    前言:"与其每天担心未来,不如努力现在.别对自己丧失信心,成长的路上,只有奋斗才能给你最大的安全感." 你好,我是梦阳辰!下面和我一起学习XML吧! 01.XML概述 1.什么是X ...

最新文章

  1. Microbiome: 绝对定量环境样本细菌、真菌、真核群落丰度
  2. SAP ME55 不能审批含有Delete Item的采购申请单据
  3. IPSec ***基于ASA的配置(思科)
  4. python循环变颜色_在Python中使用循环变量在matplotlib中指定颜色
  5. [导入]请给软件企业新员工推荐书籍
  6. mysql单表最大数据量_你的Mysql库真需要Adaptive Hash Index
  7. JavaScript:动态选中CheckBox
  8. 04-程序计数器(PC计数器)
  9. 数据分析实战-PUBG数据集EDA
  10. React开发(118):报错处理
  11. WEB安全基础-文件操作漏洞
  12. Flutter实战一Flutter聊天应用(五)
  13. Mac安装apktool/dex2jar/jd-gui逆向工具
  14. 【Matrix Factorization】林轩田机器学习技法
  15. 注册OCX控件并在VS2013的mfc程序中使用及常见问题总结
  16. Spider爬虫笔记[更新中...]
  17. 最好用的共享文件服务器,文件共享有哪些方式,哪种比较好?
  18. Nginx框架之Lua拓展
  19. 如何增加微信阅读量,新手公众号如何增加阅读量
  20. 冒泡算法的实现(java)

热门文章

  1. Linux开机自启的三种方式
  2. 【Python学习】数据归一化Scaling与标准化Normalization间的区别与相关实现
  3. 何隆昌 帆软报表主要步骤
  4. 电脑C盘满了怎么清理比较好
  5. 使用“for”循环遍历字典
  6. NLP文本分析(文本分类与句子评分)
  7. BLAM源码解析(四)—— 基于ICP的位姿更新
  8. 转:旅游推荐系统的演进
  9. 埃森哲五年java待遇_【埃森哲工资】java开发工程师待遇-看准网
  10. HTML自动点名代码,js+html实现点名系统功能