电竞比分网-中国电竞赛事及体育赛事平台

分享

xml中該使用屬性還是元素

 instl 2018-09-18

 XML 中沒有規(guī)定哪些必須放在屬性或者子元素,因此使用哪種方式都是可以實(shí)現(xiàn)的。這取決于個(gè)人的經(jīng)驗(yàn)和喜好。在可以使用元素也可以使用屬性的兩選一的情況下,個(gè)人更傾向于使用子元素。主要理由如下:

        1. 屬性不易擴(kuò)展,只能支持簡單數(shù)據(jù)類型。如果要定義的數(shù)據(jù)項(xiàng)將來可能擴(kuò)展為復(fù)雜數(shù)據(jù)對(duì)象時(shí),則應(yīng)毫不猶豫地使用子元素。

        2. 子元素在XML文檔中更容易解析。

        3. 相對(duì)屬性定義方式,用元素來定義會(huì)顯的更正式更重要。

        4. 人看起來,用元素定義的文檔比屬性定義的文檔更好理解。

        什么時(shí)候使用屬性來定義信息呢?個(gè)人認(rèn)為,一個(gè)XML文檔中,要對(duì)信息進(jìn)行分類,一類是以交換為目的的數(shù)據(jù)(這些數(shù)據(jù)可能會(huì)被重新使用和修改),一類是以展現(xiàn)或輔助交換為目的的數(shù)據(jù)(這類數(shù)據(jù)重要程度不高)。如果是前者,則使用元素來定義;如果是后者,則使用屬性來定義。另外,如果信息的數(shù)據(jù)類型是原子數(shù)據(jù)類型,如:令牌類型等,這種類型不可能再有擴(kuò)展,因此可以使用屬性來定義。

 

       國外文章給出的參考意見是:

       1. 如果這個(gè)信息是可以用元素來定義清楚的,則使用元素方式來定義。

       2. 如果這個(gè)信息命名對(duì)于一個(gè)元素來說,最終可能出現(xiàn)多個(gè),則使用元素來定義。

       3. 如果這個(gè)信息在DTD中被要求作為一個(gè)明確的屬性類型,如:ID、IDREF, 或 ENTITY,則使用屬性來定義。

       4. 如果這個(gè)信息可能含有空格時(shí),使用元素來定義。


另外,元素或?qū)傩悦麜r(shí),如果有多個(gè)詞組合,則詞之間使用"_"連接符。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多