您好,登錄后才能下訂單哦!
本篇文章為大家展示了XML對代碼中的空白處理詳細介紹,代碼簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
這篇文章主要介紹了XML對代碼中的空白處理,文中介紹到了XML書寫中的有效空白與無效空白的區分,需要的朋友可以參考下
1、在XML規范中,空白包括空格,制表符和空行。在編輯XML文檔時,我們常常使用空白來分隔標記,以獲得較好的可讀性,然而在交互的空白文檔中,這些空白就不需要了,但有時候又需要保留這些空白。例如,詩歌和程序代碼中的空白,
2、XML處理器總是將文檔中不是標記的所有字符都傳遞給應用程序,一個進行有效性驗證的XML處理器會通知應用程序這些字符中的哪一些組成了出現在元素內容中的空白。
3、在XML文檔中,可以在元素中使用一個特殊的屬性xml:space,來通知應用程序保留此元素中的空白。
4、在有效的文檔中,這個屬性和其它任何屬性一樣,在使用時必須聲明。Xml:space屬性必須被聲明為Enumerated(枚舉)類型,它的值必須是“default”和“preserve”兩者之一,也可兩個都取。
例如:
<!ATTLIST poem xml:space (default preserve)’preserve’>
意思是在poem這個元素上聲明xml:space這個屬性,它的類型是枚舉類型,可以取值“default”和“preserve”,且這個屬性的默認值是preserve’
<!ATTLIST pre xml:space (preserve)#FIXED ‘preserve’>
意思是在元素pre這個元素上進行聲明xml:space屬性,類型也是枚舉類型,但是它只有一個取值“preserve”,并且用FIXED這個關鍵字對這個屬性進行了缺省聲明。聲明它有一個默寫的缺省值"default"表示對此元素使用應用程序的缺省空白處理模式,‘preserve’指示應用程序保留所有的空白.
5、如果一個元素使用了xml:space屬性,將適用于該元素內容中的所有元素,除非被另一個xml:space屬性的實例所覆蓋。
XML 文檔包含兩種類型的空白 (a) 有效空白和 (b) 無效空白。下面的例子解釋了這兩種類型的空白。
有效空白
有效空白通常出現在在元素同時包含文本和標記時。例如:
<name>TanmayPatil</name>
和
<name>Tanmay Patil</name>
上面的兩個元素是不同的,因為 Tanmay 和 Patil 之間的空白不一樣。任何程序讀取 XML 文件中的這種元素時都必須保持它們的區別。
無效空白
無效空白意味著只允許在元素內容中出現。例如:
<address.categoryaddress.category="residence">
或者
<address....categoryaddress....category="..residence">
上面兩個例子是一樣的。這里,我們通過點號(.)表示空白。在上面的例子中,address 和 category 之間的空白是無效的。
我們還給元素附加一個特殊的屬性 xml:space。這表示元素的空白不應該由應用程序移除。我們可以設置這個屬性為 default 或者 preserve。正如下面的例子所示:
<!ATTLIST address xml:space (default|preserve) 'preserve'>
這里:
值 default 表示這個元素可以接受應用程序的默認空白處理模式。
值 preserve 表示應用程序會保護所有的空白。
上述內容就是XML對代碼中的空白處理詳細介紹,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。