XML学习

XML概念和体系

XML概念

XML指可扩展标记语言(EXtensible Markup Language)

XML没有预定义标签, 需要自行定义标签

XML的特点

  1. XML数据以纯文本格式存储
  2. 实现不同应用程序之间的数据通信
  3. 实现不同平台间的数据通信
  4. 实现不同平台间的数据共享
  5. 使用XML将不同的程序, 不同的平台之间联系起来

XML的作用

数据存储和数据传输

XML和HTML之间的差异

XML主要作用是数据存储和传输(传输)

HTML 主要作用是用来显示数据 (显示)

一个标准的XML文档

树状结构

<?xml version="1.0" encoding="UTF-8"?>
<books>
	<book id="1001">
    	<name>java开发实战强化</name>
        <author>张小三</author>
        <price>98.5</price>
    </book>
</books>

XML文件的体系

  1. XHTML 可扩展标识语言
  2. WSDL: Web Services Description Language 网络服务描述语言, 这种文档可描述某个Web service
  3. WAP 和 WML 手持设备标记语言
  4. RSS (广泛用于网上新闻频道): Really Simple Syndication 简易信息聚合, 使用RSS订阅能更块地获取信息, 网站提供RSS输出, 有利于让用户获取网站内容的最新更新
  5. RDF 和 OWL: 重要的语义网技术是为资产管理, 企业整合及网络数据的共享和重用提供的一个框架
  6. SMIL 同步多媒体集成语言, 他是由万维网联盟规定的多媒体操纵语言, 最新的SMIL版本是2001年8月推出的SMIL2.0 版本, 它通过时许排列对声音, 影像, 文字及图形文件进行顺序安排, 然后将这些媒体表现看起来是同步的.

XML的基本语法

基本语法

  1. 有且只有一个根元素
  2. XML文档声明必须放在文档的第一行
  3. 所有标签必须成对出现
  4. XML的标签严格区分大小写
  5. XML必须正确嵌套
  6. XML中的属性值必须加引号
  7. XML中, 一些特殊字符需要使用"实体"
  8. XML中可以应用适当的注释 格式为:

XML元素

XML元素指的是开始标签到结束标签的部分

一个元素可以包含:

  • 其他元素
  • 文本
  • 属性
  • 属性值
  • 以上的混合

XML的命名规则

  1. 名称可以包含字母, 数字及其他字符
  2. 名称不能以数字或者标点符号开始
  3. 名称不能以字母xml开始
  4. 名称不能包含空格

XML格式

  1. data作为属性

    <note date="10/01/2008">
        <to>Tove</to>
        <from>Jani</from>
        <heading>Reminder</heading>
        <body>Don't forget me this weekend!</body>
    </note>
    
  2. data作为一整个元素

    <note>
        <date>10/01/2008</date>
        <to>Tove</to>
        <from>Jani</from>
        <heading>Reminder</heading>
        <body>Don't forget me this weekend!</body>
    </note>
    
  3. data作为一个根元素, 最建议使用

    note>
        <date>
            <day>10</day>
            <month>01</month>
            <year>2008</year>
        </date>
        <to>Tove</to>
        <from>Jani</from>
        <heading>Reminder</heading>
        <body>Don't forget me this weekend!</body>
    </note>
    

    为什么避免使用XML属性?

    • 属性不能包含多个值(元素可以)
    • 属性不能包含树结构(元素可以)
    • 属性不容易扩展(为未来的变化)

命名空间

在 XML 中,元素名称是由开发者定义的,当两个不同的文档使用相同的元素名时,就会发生命名冲突。

使用前缀来避免命名冲突

例如下面两个xml

<h:table>
   <h:tr>
   <h:td>Apples</h:td>
   <h:td>Bananas</h:td>
   </h:tr>
</h:table>
<f:table>
   <f:name>African Coffee Table</f:name>
   <f:width>80</f:width>
   <f:length>120</f:length>
</f:table>

现在,命名冲突不存在了,这是由于两个文档都使用了不同的名称来命名它们的 < table > 元素 (< h:table > 和 < f:table >)。

使用命名空间

<h:table xmlns:h="http://www.w3.org/TR/html4/">
   <h:tr>
   <h:td>Apples</h:td>
   <h:td>Bananas</h:td>
   </h:tr>
</h:table>

与仅仅使用前缀不同,我们为 < table > 标签添加了一个 xmlns 属性,这样就为前缀赋予了一个与某个命名空间相关联的限定名称。

XML Namespace (xmlns) 属性

XML 命名空间属性被放置于元素的开始标签之中,并使用以下的语法:

xmlns:namespace-prefix="namespaceURI"

**注释:**用于标示命名空间的地址不会被解析器用于查找信息。其惟一的作用是赋予命名空间一个惟一的名称。不过,很多公司常常会作为指针来使用命名空间指向实际存在的网页,这个网页包含关于命名空间的信息。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前 言扩展标记语言(Extensible Markup Language,XML),是目前最有前途的在World Wide Web上保存和传递信息的语言。尽管超文本标记语言(Hypertext Markup Language,HTML)目前是创建Web页的最常用语言,但是它在保存信息方面的能力很有限。与之相反,XML却有着极其灵活的语法,允许真实地描述各种类型的信息,从简单的菜谱到复杂的数据库(所以才会使用术语“扩展”)。XML文档(与样式表或传统的HTML页一起)可以很容易地在浏览器中显示。因为XML文档能如此有效地构造和标识它所包含的信息,以致于浏览器可以以非常灵活的方式发现、抽取、排序、过滤、整理以及管理信息。总之,XML提供了一种理想的方法,使用它可以处理Web上数量和复杂性快速增长的信息。为什么不阅读另一本XML书籍 XML可能会让人感到混乱。XML应用程序以令人吃惊的速度不断出现,而且XML与用来格式化、显示、处理和增强XML文档的大量相关标准和技术紧密联系在一起。许多这样的相关标准和技术还处在“幼儿”阶段,正在快速地变化和发展。大部分我读过的XML书籍都试图全面地介绍这些技术,但是却让人有一种在迷宫中迷失的感觉。我认为,这种典型的XML书籍过于肤浅地讨论了过多的XML技术,没有把实用与非实用、现在和将来相区别。本书回答了大部分基本的XML问题—什么是XML,为什么需要它,以及怎样使用它—并且介绍了到目前为止最重要、最实用的XML技术。本书的主题均是经过精心筛选的,对每一种主题的介绍都很有深度,并且避免了不完整的解决方案。(例如,因为我在第二部分介绍了怎样定义XML属性,所以在第三部分接着介绍了在显示文档时怎样访问这些属性。)直到我亲自动手编写并显示XML文档时,才真正理解了XML。因此,我在本书中也采用了这种方法,包括了许多循序渐进的指导、实用的例子和教程式的练习;避免对XML这种难于理解的主题进行理论和抽象的讨论。本书及附带的光盘还提供了一个完整的XML学习软件包。这个软件包提供了学习创建和显示XML文档所需基础知识的所有信息、指导和软件。本书还包括了指向Web上大量XML信息的详尽链接集,如果你想要了解基础知识以外的信息,则可以利用这些链接。在本书中将学到什么本书的第一部分(第1章和第2章)提供了对XML的简要介绍,并为学习后续的详细信息做准备。第1章回答了我前面提到的基本问题—什么是XML,为什么需要它,以及怎样使用它来解决现实世界的问题。第2章提供了一个手把手的练习,使你对创建XML文档并在Web浏览器中显示的全过程有一个大致印象。第二部分(第3章到第6章)重点介绍创建XML文档的规则和技术。第3章和第4章介绍怎样创建格式正确的XML文档—符合最基本的XML需求的文档。第5章和第6章介绍怎样创建有效的XML文档—符合可选和更严格的规则集的文档。第二部分中的章节基于W3C(World Wide Web协会)的正式XML规范。第三部分(第7章到第10章)介绍目前最重要的在Web浏览器中显示XML文档的技术。第7章和第10章解释怎样通过附加一个为浏览器提供格式指令的样式表来显示XML文档。第7章讨论级联样式表(cascading style sheet)—最简单,但是最受限的样式表类型—而第10章介绍使用XSL(扩展样式表语言,Extensible Stylesheet Language),一种用XML编写的更高级、更灵活的样式表类型。第8章和第9章介绍怎样通过把文档链接到包括访问、处理和表示XML数据的HTML Web页来显示XML文档。第8章介绍怎样使用数据绑定(data binding,一种只适用于某种XML文档的简单技术)来做到这一点。第9章介绍怎样通过可用于任意XML文档类型且高度灵活的编程对象,即众所周知的XML文档对象模型(XML Document Object Model),编写脚本来在HTML页中显示XML文档。注意 在本书中,使用术语“页面(page)”来表示HTML源文件,使用术语“文档(document)”来表示XML源文件,以便清楚地区别这两种经常一起使用的标记语言。第三部分重点讨论使用Microsoft Internet Explorer 5 Web浏览器显示XML文档。最后,附录提供了一些Web站点的地址,这些站点包含了大量有关本书中所讨论主题的更深入信息。我还在各章节中包括了这些地址,每一个地址都适用于各章节讨论的内容。在本书附带光盘的“Resource Links”文件夹中名为Appendix.htm的文件中,会找到附录的拷贝。(要了解在计算机上安装Appendix.htm的信息,参见光盘上的Readme文件。)你可以通过在Web浏览器中打开Appendix.htm文件并单击链接来访问任意一个Web站点,而不必在浏览器中输入地址。提示 你可能想要在Web上访问下列XML信息站点以便补充从本书中学到的内容。W3C在www.w3.org/中为Web创作人员提供了各种信息、标准和服务。Microsoft Developer Network(微软开发商网络,MSDN)在http://msdn.microsoft.com/xml/ default.asp中提供了Microsoft产品所支持的、有关XML的大量信息。http://www.oasis-open.org/cover/中的在线参考书《The XML Cover Page》包括了有关XML和其他标记语言的综合信息。循序渐进学习XML和Internet Explorer 尽管本书中提供的大部分技术都基于公开的标准,并且能够与大量浏览器一起协同工作,但是本书是专门为Microsoft Internet Explorer 5.0~5.5编写的。本书附带的光盘包括Internet Explorer 5.01。因此,你可以使用这张光盘上提供的浏览器软件显示本书中使用这些技术创建的任意XML文档。提示 可以从http://www.microsoft.com/windows/ie下载最新的Internet Explorer 5.5。在整本书中,Internet Explorer 5指的是Microsoft Internet Explorer 5.0~5.5。当某些信息只适用于某个Internet Explorer版本时,会及时指出,例如Internet Explorer 5.01或Internet Explorer 5.5。本书中介绍的所有特性和技术都可以用于Internet Explorer 5.5。少数几种特性是第一次出现在版本5.5中,因此无法用于以前的版本。我将清楚地标出只适用于Internet Explorer 5.5的那些特性。环境需求下面是使用本书及其附带光盘的基本硬件和软件需求: ?要访问本书附带的光盘,并安装包括在光盘中的Internet Explorer软件,需要一台运行Microsoft Windows并安装有一台CD-ROM驱动器的计算机。可以使用Windows 95、Windows 98、Windows NT 4.0(带有Service Pack3或更高版本)、Windows 2000,或者任意更高版本的Windows。 ?选择“Install Example Code And Resource Links”安装选项大约需要1MB硬盘空间。 ?要查看本书中引用的Web站点,需要连接到Internet。不过,成功地使用本书不需要查看这些站点,因此Internet连接是可选的。本书的目的是介绍XML,因此不需要事先对XML本身有所了解。不过,本书中介绍的几种有关显示XML文档的技术需要使用下列一种或多种Web创作语言:HTML、动态HTML(DHTML)和Microsoft JScript(普通JavaScript脚本语言的Microsoft版本)。尽管本书在例子中介绍了这些语言的特性,但是了解这些语言的一些基本知识仍然有用。提示 要了解在Internet Explorer 5中使用HTML和DHML的信息,请访问MSDN提供的Web站点:http://msdn.microsoft.com/workshop/author/default.asp。要阅读正式的HTML规范,参见W3C提供的Web站点:http://www.w3.org/TR/REC-html40/。在也是由MSDN提供的站点http://msdn.microsoft.com/workshop/c-frame.htm#/workshop/languages/jscript/ handling.asp和http://msdn.microsoft.com /scripting/default.htm?/scripting/jscript/default.htm中,包括完整的JScript信息,也包括初学者的教程。使用附带的光盘附带的光盘提供了下列有价值的资源,以便对本书的信息进行补充: ?本书中带有编号的程序清单的源文件拷贝。这些程序清单(例如,第2章中的程序清单2-1)提供了XML文档、样式表,和用来显示XML文档的HTML页的例子。在引入带有编号的程序清单时,也会同时给出它在光盘中对应文件的名称。(例如,程序清单2-1在文件Inventory.xml中。)所有这些文件都在附带光盘的“Example Code”文件夹中。 ?所有在XML文档示例中显示的图形文件。这些文件包含在与程序清单文件相同的光盘文件夹(Example Code)中。 ?Web页文件Appendix.htm中附录的拷贝。该文件在光盘上的“Resource Link”文件夹中。 ?Internet Explorer 5.01版。当把CD-ROM插入驱动器时,附带的光盘会自动启动安装。如果计算机不支持自动启动,就使用Windows资源管理器显示光盘的内容,并双击根文件夹中的StartCD.exe。这两种方法都可以打开欢迎屏幕。欢迎屏幕上显示了阅读Readme文件、安装示例代码和资源链接,安装Microsoft Internet Explorer 5.0,浏览光盘内容,或链接到Microsoft Press支持的Web站点等选项。一旦选择了一个选项,只要按照屏幕上显示的指示操作即可。怎样与作者联系你可以访问我的Web站点:http://ourworld.compuserve.com/homepages/mjy。那里有对本书的更正、读者的问题以及答案,获取有关XML进一步帮助的资源及相关技术,我的一些其他书籍的介绍和附加的信息。你可以给我发e-mail,地址是[email protected]。欢迎你的意见和反馈信息。尽管我很少有时间回答那些需要深入研究的问题,但是如果你的问题我能够回答,那么我将会尽力回复。 Microsoft Press支持信息我尽了最大的努力保证本书和附带光盘中内容的准确性。Microsoft Perss通过万维网上的http://mspress.microsoft.com/support/提供了对书籍的更正。如果你对本书或者它所附带的光盘有意见、问题或想法,请通过e-mail把它们发送到Microsoft 出版社: [email protected] 或者把信邮寄到: Microsoft Press Attn: XML Step by Step Editor One Microsoft Way Redmond, WA 98052-6399 请注意,产品支持不是通过上述地址提供的。英文原书书号:ISNB0-7356-1020-7 英文原书名,XML Step by Step .
学习在Qt中处理XML文件可以按照以下步骤进行: 1. 了解XML基础知识:学习XML的基本概念、语法和结构,了解XML的用途和优势。掌握XML的标签、元素、属性和命名空间等基本概念。 2. 学习Qt中的XML模块:Qt提供了Qt XML模块,用于处理XML文件。学习Qt XML模块的相关类和函数,包括QDomDocument、QDomElement、QDomNode等。 3. 解析XML文件:学习使用Qt XML模块解析XML文件。可以使用QDomDocument类来读取和解析XML文件,获取XML文档的根节点,并通过遍历节点和获取节点属性等方式来访问XML文件中的数据。 4. 创建和编辑XML文件:学习使用Qt XML模块创建和编辑XML文件。可以使用QDomDocument类创建一个新的XML文档,并使用QDomElement和QDomNode等类来创建元素、属性和子节点,然后将其保存为XML文件。 5. 数据操作:学习如何在Qt中处理XML文件中的数据。可以使用Qt提供的API来读取、修改和删除XML文件中的数据,包括添加子节点、修改属性值、删除节点等操作。 6. 错误处理:学习如何处理XML文件解析过程中可能出现的错误。Qt提供了错误处理机制,可以捕获和处理解析XML文件时可能出现的错误,如XML语法错误、节点不存在等。 7. 实践项目:通过实践项目来巩固所学知识。可以尝试编写一个简单的程序,使用Qt XML模块读取和解析XML文件,并对文件中的数据进行操作和展示。 此外,Qt官方文档中提供了详细的XML模块的使用说明和示例代码,可以参考官方文档来学习和理解更多关于在Qt中处理XML文件的知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值