登录

XML

1.什么是XML

  XML是由互联网联盟(World Wide Web Consortium,W3C)的XML工作组定义的。这个工作组是这样描述该语言的:

  “扩展标记语言(XML)SGML的子集,其目标是允许普通的SGML在Web上以目前HTML的方式被服务、接收和处理。XML被设计成易于实现,且可在SGML和HTML之间互相操作。”

  XML是一种专门在World Wide Web(www)上传递信息的语言,就像HTML(超文本标记语言)一样(自从Web出现以来,HTML已经成为了创建Web页的标准语言)。

2.XML的类型[1]

  1.无类型XML

  简单地说,无类型XML是指XML文档没有和任何XML模式相关联。

  如果不确定XML将遵循哪个XML模式,则无类型XML有用。例如,如果必须使用一个应用程序的某些XML,但无法确定数据将遵循哪个XML,则可以使用无类型XML列来执行这项工作。当然,无类型XML也会带来其他问题。例如,不能针对某个模式编程,因此很难有效地使用XML。

  模式不绑定到XML列,SQL Server 2005会将无类型XML作为一个字符串存储。这既是好事也可能是坏事。一方面,将XML作为字符串存储可以更灵活地存储任何XML片段或文档。另一方面,将XML作为字符串存储意味着,与类型化XML相比,既不能有效地存储也不能有效地搜索XML数据。

  2.类型化XML

  与无类型XML相对应,类型化XML文档可以绑定到某个XML模式。例如,一个XML列绑定到XML模式后,再对此列操作时,XML模式会自动验证XML数据是否符合XML模式的要求。在SQLServer2005中,可将多个模式集合在一起形成模式集合。

  使用XML模式有两个优点:

  (1)XML验证是自动的。无论是给一个变量分配XML值,还是向XML列中插入XML值,SQL Server都会自动用模式来验证XML的有效性。这样做的结果是获得了较好的性能,因为不用在运行时转换节点的值。

  (2)XML存储的内容是最少的,因为关于元素和属性的类型信息都由模式本身来提供。这样做可以为存储值提供更好的转换解释。

3.XML的特点[2]

  • 简单易用,功能强大。
  • 允许各个组织、个人建立适合自己需要的标记集合,并且这些标记可以用通用的工具显示。例如定义数学、化学、音乐等专用标记。
  • 最大优点在于它的数据存储格式不受显示格式的制约。一般来说,一篇文档包括3个要素:数据、结构以及显示方式。XML把文档的显示格式从数据内容中独立潜来,保存在样式表文件(Style Sheet)中,这样如果需要改变文档的显示方式,只要修改样式表文件即可。
  • 通过有意义的标签以结构化的格式存储数据,用一种开放的自我描述方式定义数据结构,在描述数据内容的同时突出对结构的描述,从而体现出数据之间的关系,XML的自我描述性质能够很好地表现许多复杂的数据关系,使得基于XML的应用程序可以在XML文件中准确高效地搜索相关韵数据内容,忽略其他不相关部分。
  • XML还有其他许多优点,比如它有利于不同系统之间的信息交流,完全可以充当网际语言,并有希望成为数据和文档交换的标准

  由于以上优点,XML必将在商务的自动化处理、信息发布、智能化豹Web应用程序和数据集成等领域被广泛使用。

4.XML的历史及目标[3]

5.XML的文档格式[2]

  首先介绍XML文档内容的基本单元——元素,它的语法格式如下:

  (标签)文本内容</标签>

  元素是由起始标签、元素内容和结束标签组成的。用户把要描述的数据对象放在起始标签和结束标签之间。例如:<姓名>王平</姓名>。无论文本内容有多长或者多么复杂,XML元素中可以再嵌套别的元素,这样使相关信息构成等级结构。用这样韵方法定义XML文档数据和数据结构

  除了元素,XML文档中出现的有效对象是:声明、注释、根元素、子元素和属性。

  1.声明:声明给XML解析器提供信息,使其能够正确解释文档内容,它的起始标识是“<?”,结束标识是“?>”。例如XML声明:<?xml version="1.0" encoding="GB2312"?>,该声明指明使用的XML版本号和文档使用的字符集是中文字符集“GB2312”。又如显示样式表文件声明:<?xml-stylesheet type="text/xsl" href="e12_2_1.xsl"?>,指明按e12_2_1.xsl样式表文件指定格式显示本XML文档。

  2.注释:注释是XML文件中用作解释的字符数据,XML处理器不对它们进行任何处理。注释文本被“<!_”和“_>”标记,注释可以出现在XML元素问的任何地方,但是不可以嵌套。下边是一个注释的例子:<!_这是一个注释_>。

  3.根元素和子元素:如果一个元素从文件头的序言部分之后开始,一直到文件尾,包含了文件中所有的数据信息,我们称之为根元素。XML元素是可以嵌套的,那么被嵌套在内的元素称为子元素。在前面的例子中,<学生>就是根元素,<编号>就是<学生>的子元素。一个XML文档中有且仅有一个根元素,其他所有的元素都是它的子元素。

  4.属性:属性给元素提供进一步的说明信息,它必须出现在起始标签中。属性以名称/值成对出现,属性名不能重复,名称与取值之间用等号分隔,取值用引号括起来。例如:<工资 currency="US$">25000</工资>,其属性说明了薪水的货币单位是美元

  5.XML文档的基本结构:XML文档的基本结构由序言部分和一个根元素组成。序言包括了XML声明和DTD或XSD声明,DTD(Document Type Define,文档类型定义)和XSD(XML Schema,XML架构)都是用来描述XML文档的数据结构的。

  6.格式良好的(Well-Formed)XML文档:一个XML文档首先应当是格式良好的,格式良好XML文档的正式定义位于:http://www.w3.org/TR/REC-xml。格式良好的XML文档除了要满足根元素唯一的特性之外,还包括:

  ①起始标签和结束标签应当匹配,结束标签是必不可少的;

  ②大小写应一致,XML对字母的大小写是敏感的,<employee>和<Employee>是完全不同的两个标签,所以结束标签在匹配时一定要注意大小写一致;

  ③元素应当正确嵌套,子元素应当完全包括在父辈元素中,下面例子就是错误嵌套:<A><B></A></B>,正确的嵌套方式为<A><B></B></A>;

  ④属性值必须包括在引号中,元素中的属性名是不允许重复的。

评论  |   0条评论