“可扩展标记语言”(XML) 提供一种描述结构化数据的方法。与主要用于控制数据的显示和外观的 HTML 标记不同,XML 标记用于定义数据本身的结构和数据类型。
XML 使用一组标记来描绘数据元素。每个元素封装可能十分简单也可能十分复杂的数据。您可以定义一组无限制的 XML 标记。例如,您可以定义一些 XML 标记来声明订单中的数据,如价格、税收、发货地址、帐单地址等等。由于 XML 标记在整个单位中以及跨单位采用,因此来自各种不同数据存储区的数据将更容易交换和 *** 作。
XML 是一种简单、与平台无关并被广泛采用的标准。XML 相对于 HTML 的优点是它将用户界面与结构化数据分隔开来。这种数据与显示的分离使得集成来自不同源的数据成为可能。客户信息、订单、研究结果、帐单付款、病历、目录数据及其他信息都可以转换为 XML。
XML 与 HTML
以下是要记住的有关 XML 与 HTML 之间关系的几个要点:
a.. XML 不是要替换 HTML;实际上 XML 可以视作对 HTML 的补充。XML 和 HTML 的目标不同:HTML 的设计目标是显示数据并集中于数据外观,而 XML 的设计目标是描述数据并集中于数据的内容。
b.. 与 HTML 相似,XML 不进行任何 *** 作。虽然 XML 标记可用于描述订单之类的项的结构,但它不包含可用于发送或处理该订单以及确保按该订单交货的任何代码。其他人必须编写代码来实际对 XML 格式的数据执行这些 *** 作。
c.. 与 HTML 不同,XML 标记由架构或文档的作者定义,并且是无限制的。HTML 标记则是预定义的;HTML 作者只能使用当前 HTML 标准所支持的标记。
XML 的使用
XML 是一种极灵活的、传递数据的方式。以下全部是可使用 XML 的场合的示例:
a.. 普通文档
b.. 结构化记录,如约会记录或订单
c.. 移动数据的 Internet/Intranet Web 应用程序
d.. 带有数据的对象,如对象或 ActiveX 控件的持久格式
e.. 数据记录,如查询的结果集
f.. Web 站点的元内容,如“信道定义格式”(CDF)
g.. 图形显示,如应用程序的用户界面
h.. Web 上信息与人的链接
i.. C# 代码(可以用 XML 形式);有关更多信息,请参见 XML 文档
j.. 用于定位可用 XML Web services 的发现文档;有关更多信息,请参见 XML Web services 发现。
以下列出存储信息时 XML 相对于其他格式的若干优越性:
a.. XML 格式是基于文本的,这使得它们更容易读、更便于记录,有时也更便于调试。
b.. XML 文档可使用已为 HTML 建立的很多基础结构,包括 HTTP 协议和某些浏览器。HTTP 允许穿过防火墙传输 XML。
c.. XML 分析已有完善的定义,且已广泛应用,使得在各种环境中从 XML 文档检索信息成为可能。
d.. 应用程序可依赖 XML 分析器进行某些结构验证以及数据类型检查(当使用架构时)。
e.. XML 建立在 Unicode 基础上,使得创建国际化文档更容易。不过,XML 并不适合于所有情况。XML 文档往往比它们替换的二进制格式详细。它们占用更多的网络带宽和存储空间,或需要更多的处理器时间进行压缩。XML 分析可能比分析高度优化的二进制格式慢,并且可能需要更多内存。然而,精心的应用程序设计能够
避免一些问题。
验证 XML 文档
若要验证 XML 文档包含所需数据和结构,必须将一个 XML 架构与 XML 文档相关联。XML 架构是定义如何构造元素和属性来形成 XML 文档的规则。您可以在单位之间共享架构,以使得传输和处理共享数据变得简单。有关更多信息,请参见 XML 架构介绍。
显示 XML 数据
有几种方式可用于显示(或提供)XML 数据。
还有数据绑定的机制可与样式表一起使用,以便以可视形式展示 XML 数据,以及添加交互性。
以下是显示 XML 的几种方法:
a.. XSLT — 可扩展样式表语言
b.. CSS — 级联样式表
c.. Microsoft Internet Explorer
有关更多信息,请参见 MSDN Online XML 开发人员中心 Web 站点
()。
XML 资源
如果您熟悉 HTML,则可以学习创建 XML 文档,只要求它们有效且符合标准格式。有关
XML 的更多信息,请参见 XML SDK 和 MSDN Online XML 开发人员中心 Web 站点
()。
有关更多信息,请参见万维网联合会 (W3C) 的 XML 规范
()。
Q: 那为什么有很多大型的网站,还是用html而不是xml呢?
A:XML和HTML实质上是不一样的,你说大型站点使用HTML,如果是静态数据用HTML速度当然最快了,但是维护欠佳!
一般使用XML+CSS进行站点设计,但XML+CSS局限性比较大,还是用XML+XSLT吧
Q: 现在我直接用xml开发一个网站,再直接上传到现在提供的普通静态空间,它能显示吗?
A: 如果可以假定用户都使用(或至少装置了)IE6就没有什么问题。
如果用户使用其它浏览器,那就应该在服务器端进行XML->HTML的转换,普通静态空间不支持。可以选支持XMLDOM的ASP或PHP空间。因此运行环境是不同的
参考资料:
我给你些我的建议吧HTML的语法格式比XML宽松多了,真正XML格式的网页是XHTML,也就是下一代HTML,他的格式和XML差不多,很严谨的。
如果你不想利用某些HTML和XML互转工具,自己编的话,有一定难度。
1.HTML的节点可以没末节点,你需要不停扫描<,>,/,这三个符号以检查是否漏掉末节点,并补充。
2.HTML节点还可以不规则嵌套,你需要对已读入节点进行顺序存储,或用栈的数据结构来存储,并验证其层次正确性,最终正确顺序的节点,期间还得缓存节点值,或属性值。
3.HTML不同于XML,许多HTML节点有特殊的意义,许多HTML节点比如<b>,<hr/>都需要经过特殊处理才行。
在技术上,为保证性能,还要在一下方面有加强。
1.强大的字符串扫描,和解析器,此工作也巨大,但网上源码很多,建议到google英文里搜索,HTML parser,XML parser(解析器),有很多c#,java,c++的源代码可以利用,没有强大的解析器,跟本无法读懂文件。
2.System.Xml空间的详细运用,除了简单的XMLWriter,还必须学会XMLDocument,XmlNode,能够动态 *** 控XML。还有Xpath技术, *** 作XMl很有效率。
3.适当还会运用到正则表达式,来处理字符串匹配问题,尤其是节点的 *** 作,即使是再好的字符串查找算法,有时也不如正则表达式,因此system.Text 中的Regex类要掌握好。
4.会控制WinForm中的WebBrower控件
当然,即使你不打算自己做,或已找到了源代码,要想读懂,也必须要以上的知识。
至于工具,网上有,源码还哪找,有java的,但下载不下来。
这是著名的W3C(Html,xml等技术的创始组织)的转换工具,里面也有一些介绍,相信会有用的。
http://www.w3.org/People/Raggett/tidy/
有一个用C#编的转换器,但付费后才可看到源代码
http://www.chilkatsoft.com/downloads.asp
http://www.example-code.com/csharp/html2xml.asp
还有一些软件,stylus的产品不错!
http://www.stylusstudio.com/html_to_xml_importer.html
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)