什么是html?
html被称为超文本标记语言,是一种描述性语言,用html可以创建能在互联网上传输的信息页,是构成网页文档的主要语言,它是由很多的标签组成,具有简易性、与平台无关性两大要点。
html就是描述网页长什么样子、有什么内容的一个文本。我们通常所见得各种各样的网页,是经过浏览器解析html文件出现的结果。
在浏览器的网页上右键→选择“查看源文件”或“查看页面源代码”,出现的就说html文件,此处以Google浏览器为例:
什么是xml?
xml即可扩展标记语言,是Internet环境中跨平台的、依赖于内容的技术,是当前处理结构化文档信息的有力工具,满足了Web内容发布与交换的需要,适合作为各种存储与共享的通用平台。
使用xml标记语言可以做到数据或数据结构在任何编程语言环境下的共享。例如我们在某个计算机平台上用某种编程语言编写了一些或数据结构,然后用xml标记语言进行处理,那样的话,其他人就可以在其他的计算机平台上来访问这些数据或数据结构,甚至可以用其他的编程语言来操作这些数据或数据结构了。这就是xml标记语言作为一种数据交换语言存在的价值。
xml可以理解为一辆没有发动机的车。xml把所有部件按照一定规则集合在一起,就等编译器这个发动机去启动这个车。现在用的比较多的是配置和数据结构定义。
html和xml的相同点
html和xml都是标记语言,都是基于文本编辑和修改的。
都是用于操作系统或数据结构,结构上大致相同。
都可以通过DOM变成方式来访问。
都是通过CSS来改变外观。
html和xml的不同点
比较内容 | html | xml |
设计目标 | 显示数据,如何更好地显示数据,焦点是数据外观 | 描述数据,什么是数据,如何存放数据,焦点是数据的内容 |
语法 |
不要求标记的嵌套、配对等; 不区分大小写;(html5版本只能用小写) 引号是可用可不用的; 可以拥有不带值的属性名; 过滤掉空格; |
严格要求嵌套、配对,并遵循DTD的树形结构; 区分大小写; 属性值必须分装在引号中; 所有的属性都必须代有相应的值; 空白部分不会被解析器自动删除; xml比html语法要求更严格; |
数据和显示的关系 | 内容描述与显示方式整合为一体 | 内容描述与显示方式分离 |
标签 | 预定义 | 免费、自定义、可扩展 |
可读性及可维护性 | 难于阅读、维护 | 结构清晰、便于阅读、维护 |
结构描述 | 不支持深层的结构描述 | 文件结构嵌套可以复杂到任何程度 |
与数据库的关系 | 没有直接关系 | 与关系型和层状数据库均可对应和转换 |
超链接 | 单文件、书签链接 | 可以定义双向链接、多目标链接、扩展链接 |
xml的优势
·xml文档的内容和结构完全分离
在xml文档中,数据的显示样式已从文档中分离出来,而被放入相关的样式表文件中。这样一来,如果要改动数据的表现形式,就不需要改动数据本身,只要改动控制数据显示的样式表文件就可以了。xml能够确保同一网络站点的数据信息能够在不同的设备上成功显示。
·轻松地跨平台应用
xml文档是基于文本的,所以很容易被人和机器阅读,也非常容易使用,纯文本文件可以方便地穿越防火墙,便于不同设备和不同系统间的信息交换。
·支持不同文字、不同语种间的信息交互
xml所以来的Unicode标准,是一个支持世界上所有主要语言的混合文字符号编码系统,xml技术不但使得各种信息能在不同的计算机系统之间交互,还能跨语种、跨文化进行交流。
·便于信息的检索
由于xml通过给数据内容贴上标记来描述其含义,并且把数据的显示格式分离出去,所以对xml文档数据的搜索就可以简单高效地进行。在此情况下,搜索引擎没有必要再去遍历整个文档,只需查找制定标记的内容就可以了。
·可扩展性
xml允许个人组织或个人简历适合他们自己需要的标记集合或标记库,并且这些标记集合可以快速地投入到互联网的使用中。比较典型的有化学标记语言CML、数据标记语言MathML、矢量图形标记语言VML、无线通信标记语言WML等。
·适合面向对象的程序开发
xml文档是非常容易阅读的,对集齐也是如此。xml文档数据的逻辑结构是一种树形的层次结构,文档中的每一个元素都可以映射为一个对象,同时也可以有相应的属性和方法,因而非常适合使用面向对象的程序设计方式来开发处理这些xml文档的应用程序。
总结
xml不是要来取代html的,是对html的补充,用来与html协同工作的语言,基于上面这些优势,xml将来成为所有的数据处理和数据传输的常用工具非常可观。