下面是一個用在通訊應(yīng)用程序中的XML事例: <message> <to>you@yourAddress.com</to> <from>me@myAddress.com</from> <subject>XML Is Really Cool</subject> <text> How many ways is XML cool? Let me count the ways... </text> </message>
<message to="you@yourAddress.com" from="me@myAddress.com" subject="XML Is Really Cool"> <text> How many ways is XML cool? Let me count the ways... </text> </message>
既然你能夠使用屬性或標記設(shè)計一個數(shù)據(jù)結(jié)構(gòu),而且這兩個結(jié)構(gòu)是等價的。那么我們就會思考,到底使用那個方案更好的適應(yīng)我們的應(yīng)用。Designing an XML Data StrUCture ,這個連接的內(nèi)容會幫助你決定什么時候使用屬性,什么時候使用標記。
可是,有些時候,一個標記獨自存在也是可以被理解的。例如,你可能像增加一個“flag”標記,用這個標記來標識信息的重要性。這樣的一個標記不包含任何的內(nèi)容,所以它被稱作“空標記”。你可以通過用/>代替>來產(chǎn)生這個空標記的。例如,下面的信息就包含這樣的標記: <message to="you@yourAddress.com" from="me@myAddress.com" subject="XML Is Really Cool"> <flag/> <text> How many ways is XML cool? Let me count the ways... </text> </message>
注意: 這個空標記使你不用為了格式良好性而不得不寫成<flag></flag>。你可以通過產(chǎn)生一個文檔類型定義DTD(Document Type Definition)來控制那個標記可以被置程空標記。我們將在后面討論DTD。如果沒有DTD,那么文檔中可以包含任意種類的格式良好的標記 。
XML文件中的注釋 XML的注釋很像HTML的注釋: <message to="you@yourAddress.com" from="me@myAddress.com" subject="XML Is Really Cool"> <!-- This is a comment --> <text> How many ways is XML cool? Let me count the ways... </text> </message>
連接能力 很感謝HTML,在文檔之間定義連接的能力現(xiàn)在被認為是不可缺少的。本指南的下一部分,XML and Related Specs: Digesting the Alphabet Soup,討論了連接規(guī)范初步。這個初步使你能夠定義雙向連接:多目標連接、展開連接(點擊一個連接使目標信息內(nèi)嵌顯示)和兩文檔之間的連接。