掌握XML系列(四)---创建格式良好的XML文档
???????????????????????????????????????????????????????????????????? 掌握XML系列(四)---創(chuàng)建格式良好的XML文檔
????
???? 前言:創(chuàng)建良好格式的XML文檔,雖然寫了這些,其實,等到大家真正的看完之后美酒會發(fā)現(xiàn),其實也很簡單的,我們這里所做的是帶著大家全面的看看怎么樣創(chuàng)建.
???? 這一節(jié),我們講解有關(guān)屬性的問題.
???? XML的屬性:
???? 其實大家都知道,其實屬性就"名值對",再HTML中,我們看見過很多.之前的文章中也用過了一些屬性的例子.來看個例子吧:
???? <?xml version="1.0" ?>
???? <persons>
????????? <person name="xiaoyang"/>
????????? <person name="panyan"/>
???? </persons>
???? 關(guān)于屬性的問題,有幾點是要說明下的:
???? 1.在屬性的值中,最好不要使用":"(冒號),,盡管可以有,但是最好不要,因為與命名空間有沖突的.
???? 2.屬性不能以"xml"開頭,也是有關(guān)命名空間的問題.
?
???? 下面來看看我們什么時候使用屬性
???? 大家都知道,一份數(shù)據(jù)文檔,用XML來表示可以有很多的形式.如上面的XML的例子,我們也可以改寫為別的形式.如.
???? <?xml version="1.0"?>
???? <persons>
????????? <person>
?????????????? <name>xiaoyang</name>
????????? </person>
?????????? <person>
?????????????? <name>panyan</name>
????????? </person>
???? </persons>
???? 所以,我們對使用屬性的情況會講解如下(什么時候用屬性):
???? 1.將屬性作為描述的數(shù)據(jù):
???????? 之前大家看看的文檔,我們在person元素中使用屬性name,我們這樣做,只是用屬性來描述一個person的一個特征,而后面的一個例子,我們將name作為了一個元素,來強調(diào)name.所以建議:如果想強調(diào)XML,那么就把它作為一個元素.
???? 2.屬性容易使用.
????????? 屬性通常比元素容易使用,如下:
????????? <person>
????????????????? 23
?????????????? <name>
??????????????????? xiaoyang
?????????????? </name>
????????? </person>
???? 這樣,雖然沒有錯,但是看起來就不是很清楚,如果改為下面的
???? <person age="23" name="xiaoyang"/>
???? 這樣就比上面更加的簡潔,清晰,那么也就引出下面的話題:
???? 3.用屬性的XML文檔的大小比用元素XML文檔更加的小,那么就很便于網(wǎng)絡(luò)傳輸.
???? 4.DTD驗證文檔的有效性:在有的XML文檔中,如果在DTD(一種驗證文檔)中明確要求要某個屬性,如果XML文檔中沒有,那么文檔就不合法了.
????
???? 下面,我們就看看什么時候不用元素的.
???? 通常在重復(fù)使用屬性的地方,如,想用XML文檔表一個國家的城市:如下:
???? <country name="china" city="wuhan" city="beijing"/>
???? 這樣就不對,不能在一個元素中有兩個相同的屬性,這種情況下用元素更加的好.
???? <country>
????????? <city>wuhan</city>
???? </country>
????
???? 今天就些到這,講得不多,基本上就這些,大家把之前的一起看看,就發(fā)現(xiàn),規(guī)則很少,很多的時候都是一種平衡的策略,沒有說一定要怎么樣用才正確.
???? 下一篇,就講講怎么樣驗證XML文檔.
????
轉(zhuǎn)載于:https://www.cnblogs.com/yanyangtian/archive/2009/01/11/1373691.html
總結(jié)
以上是生活随笔為你收集整理的掌握XML系列(四)---创建格式良好的XML文档的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Grove——.NET中的ORM实现
- 下一篇: VS2005 自动生成属性(转)