HTML的孪生兄弟是谁?毫无疑问要说的是XML,作为一对孪生兄弟它们两个基本的语法类似,但外表和内在是不等价的。虽然XML很像HTML,但它们两个之间却有着本质的区别。
一、XML与HTML
XML(eXtensible Markup Language)是一种可扩展的标记语言,和HTML语言语法类似,同属于标记语言。那到底如何区分它们呢?
1、设计区别
XML被设计为传输和保存数据,其焦点是数据的内容。而HTML被设计用来显示数据,其焦点是数据的外观。可以说HTML旨在显示信息,XML旨在传输信息。
2、语法区别
(1)HTML的格式多样,其中有些标记可以不成对出现,XML要求所有的标记都必须成对出现;
(2)HTML的标签是固定的样式有限,XML可以进行任何扩展,标签类型可以自己定义;
(3)HTML可以有多个标记头,XML只允许有一个标记头;
(4)HTML标记不区分大小写,XML区分大小写。
二、XML详解
曾记否在开发系统时使用的系统配置文档,是的它就是xml文档。作为系统的配置文件是xml的主要应用,同时它也可以用在Ajax或Web Services中传输数据。
1、XML历史
在详细了解XML基本用法前,我们先来看看标记语言的发展历史。
XML的前身是SGML(The Standard Generalized Markup Language),它同时也是在HTML的基础上优化得到的。SGML是GML整理规范后的一种标准,但是SGML是一种非常严谨的文本描述法,过于庞大复杂,难以理解。同时W3C(万维网联盟)也发现了HTML的问题,如:不能解释类似影音文件、化学公式等其它形式的内容,且性能较差不易于扩展、弹性差等问题。为了解决上述问题,专家们使用SGML简易制作,并依照HTML的发展经验开发了XML。
2、XML用法
先看一个XML实例
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type='text/xsl' href='content.xsl'?> <book> <书籍列表> <计算机书籍> <bookname isbn="xxx1234567"><<XML应用大全</bookname> <price>39.00</price> </计算机书籍> </书籍列表> <!-- 我加上的注释 --> <书籍列表> <计算机书籍> <bookname><![CDATA[Oracle应用大全《《《》》》‘’;;‘’“”]]></bookname> <price>39.00</price> </计算机书籍> <计算机书籍> <bookname>Java应用大全</bookname> <price>39.00</price> </计算机书籍> </书籍列表> </book>
2.1 声明
格式良好的XML文件,要以XML声明开始,即上面示例中的<?xml version="1.0" encoding="utf-8"?>,它提供了关于文档的基本信息。其中encoding表示XML文件呢使用的字符编码方式,要保存的XML文档编码格式必须是encoding属性值。
2.2 元素
元素是开始标签、结束标签及两者之间的所有内容。
和HTML基本组成相同,XML也是有基本的标签构成,其中标签的格式和HTML标签相同,不同的是XML标签有开始标签就必须要有结束标签,而且严格区分大小写。它允许标签格式嵌套,但必须正确嵌套。
XML结构上是一种树状结构,它的内容必须只有一个根元素,其它的元素必须嵌套在根元素内。如:上例中的<book></book>即为根元素。
2.3实体引用
实体引用即使用特定的格式在XML文档中打印出一些特殊的符号,类似于下面要说的CDATA中的文本。
<book> <书籍列表> <计算机书籍> <bookname isbn="xxx1234567"><<XML应用大全</bookname> <price>39.00</price> </计算机书籍> </书籍列表> </book> <!-- 使用IE打开上面的代码查看下结果 -->
基本的实体引用不在详述。
2.4 特殊标签
CDATA是特殊的标签,它能够使在其内的所有内容以文本的形式打印输出。形式如下:
<![CDATA[文本内容]]> <?xml version='1.0' encoding='utf-8'?> <书籍列表> <计算机书籍> <bookname><![CDATA[Oracle应用大全《《《》》》‘’;;‘’“”]]></bookname> <price>39.00</price> </计算机书籍> <书籍列表>
2.5 杂烩
(1)XML文档用图整理出来其实是一种树状结构,在显示时常使用IE打开;
(2)XML标签中属性的值必须使用引号括起来(单引号或双引号,但必须保证一致);
(3)在含有复杂内结构的XML文档中可以使用xsl格式美化xml的显示,格式:<?xml-stylesheet type='text/xsl' href='需要转换的XML文档名称.xsl'?>。
三、注意
1、要有声明:<?xml version="" encoding=""?>;
2、在保存时要根据encoding中的编码类型保存成相应的类型,在保存时别忘记选择保存类型;
3、只有一个顶元素;
4、大小写敏感;
5、属性的值必须使用引号括起来(单引号或双引号);
6、要有始有终;
7、嵌套形式要正确。
上面对XML的基本应用进行了讨论,XML很简单吧。是不是XML就这些内容了呢?当然不是,从它的基本名字中可以看出它也是一种编程语言,那就应该具有编程语言的一些特性,如一些语言中的模板或者Java中的API。是的,XML也可以定义自己的语法结构,可以向编程语言一样编写模板函数,只是在XML中它叫做合法的XML,即是大家所说的经DTD或Schema验证的合法的XML。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]