网络在中国发展到今天,一定有很多人或多或少的接触过HTML语言,这是一种不甚严格的语言(也可以讲是浏览器大战的恶果),很多时候我们直接看到的效果并非是我们的代码表现出来的效果,而是浏览器很善意的向你们屈服,将一些不完全的代码也正常显示......然而,XML显然不吃这一套,由于她主要用来存储和发送数据信息,所以她的语法规则必然要求的非常严格,不过严格归严格,学习起来到是非常的容易---而且使用也同样的简单.基于这个原因,我们可以轻易的建立可以读取和维护XML的应用软件.
让我们来看一段简单的XML代码:
<?XML version="1.0" encoding="GB2312"?>
<我的故事>
<作者>JSPer</作者>
<出版社>unkown</出版社>
<体裁>个人传记</体裁>
</我的故事>
代码的第一行是XML声明,并且定义XML的版本,目前发布的是1.0版本
代码的第二行是这端代码内容的根元素.是XML所必须声明的元素.
代码的3-5行是根元素的子元素,在这里有三个子元素(作者,出版社,体裁)
最后一行的代码则定义了根元素的结束,到这里,一段完全的XML代码就算完成
细心的人从上面的例子看出,所有的元素都要有闭合标记,这并非是一个巧合我们开始就讲到XML语法规则非常严格,这就是她的具体表现---所有的元素必须有闭合标记---
e.g: 在HTML语法中,这样的代码是允许存在的...
<p>我的故事是什么呢?
<p>我忘记了
然而在XML语法中,则需要闭合所有元素,于是代码如下
<p>我的故事是什么呢?</p>
<p>我忘记了</p>
一旦没有闭合元素代码,比如在这段代码中如果我们漏掉</p>,那么这段代码将是一段错误代码,不起任何作用.
XML语法规则要求严格的第二表现---大小写敏感---这也是在语法规则上与HTML不同的地方.元素名称必须区分大小写(元素闭合代码要与元素本身大小写一致).
e.g: 下面两行代码,第一行是错误的,第二行是正确的
<p>我的故事是什么呢?</P>
~~~~
<p>我的故事是什么呢?</p>
XML语法规则要求严格的第三表现---嵌套对应
---我们在HTML代码中经常见到这样的例子
HTML: <b><i>呵呵,真的管理不严哟</b></i>
然而在XML代码中,则拒绝上述代码书写规格,所有的元素必须一一对应
XML: <b><i>哇赛,真的好严格哟</i></b>
当我们声明一个XML文件的同时,我们必须建立一个根元素标记,就如同一篇文章的标题一样.所有的XML代码都要有根元素
e.g:
<?XML version="1.0" encoding="GB2312"?>
<我的故事> ----根元素,任何完整的XML代码必须包含此元素
............. ----子元素内容,以"<xxx>",</xxx>形式描述
</我的故事>
XML语法规则严格的表现第五:"懒惰等于慢性自杀"
(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)还记得'"'双引号么?在我们编写HTML的时候,往往会忽略掉引号,有时候即使知道.但懒惰的天性总是让我们不愿正确的去输入...因果相报,以前的坏习惯到了编写XML的时候变成了最可怕的噩梦....一旦忽略了引号..我们会陷入烦恼的境界,尤其是在用于描述庞大复杂的数据的时候...引号的修改会累垮你的(这里有自动整理数据为XML的软件,但我不打算现在推荐,怕好心办坏事呀,养成好习惯很重要--别恨我)....而且当我们xml元素含有属性值得时候,这个属性值也必须被引号包含
e.g:
<?XML version="1.0" encoding="GB2312"?> ----这行引号要是少了就不是XML文件了^^
<我的故事 价值="无价之宝"> ---如果属性值失去双引号,则出现错误
.................
</我的故事>
XML语法规则严格的表现第六:"空白真的是虚无么?"
记不得谁说的了"空既是无",我甚至一度为此痴迷,差点出家...可是当我遇到了XML....我的思想不得不改变了(空并非无),我的每一个空格都会单独的蹦出来就好像隐形人一样,看不见,却占着空间.也不知道这是不是严格的规则^_^
今天的课程到此结束,请期待后续课程,希望各位网友安排好学习时间^_^