曝光臺 注意防騙
網曝天貓店富美金盛家居專營店坑蒙拐騙欺詐消費者
有更為廣泛的適用性。正如前面所討論的,可用于字處理器的保存文件的格式,可用于不同程序間的數據交換格式,可用作
與Intranet 模板一致化的工具,還可用作以人類可讀的形式保存數據的手段。
雖然如此,如所有的數據格式一樣,XML 在有用之前也需要程序和內容。因而對于數據看起來應該是什么樣子的,光了解XML
本身還是不夠的,這不光是一個規范所能解決的問題。用戶還需要了解XML 文檔是如何編輯的,處理程序是如何讀取XML
文檔并將其讀取的信息傳送給應用程序的,以及這些應用程序是如何處理數據的。
1.3.1 編輯器
XML 文檔大多數情況下都是用編輯器創建的。編輯器可以是基本的文本編輯器如Notepad(記事本)或是vi,這些編輯器并
不真正理解XML。另一方面,也可以用所見即所得的編輯器,如Adobe FrameMaker,這種編輯器可將用戶完全隔離于XML
底層格式之外。另外也可以是一個結構化的編輯器,如JUMBO,它可將XML 文檔顯示為樹狀結構。對于最重要的部分,有趣
的編輯器并不是太有用,因而本書將注意力集中于用普通的文本編輯器來編寫XML 文檔。
其他程序也可以創建XML 文檔。例如,本書在講述設計新的DTD 的稍后章節中將可看到某些XML 數據可直接從FileMaker
的數據庫中得出。在這種情況下,數據是先輸入到FileMaker 數據庫中的,然后FileMaker 的計算字段將數據轉換為XML。
一般來說,XML 與數據庫可協同工作得很好。
準確地說,我們可在第23 章“設計新的XML 應用”中看到這種情況。
無論在何種情況下,都是編輯器或其他程序創建了XML 文檔。通常,這一文檔是某種計算機硬盤上的實際文件。但也不是必
須如此。例如,文檔可能是數據庫中的記錄或是字段,或者可能是從網絡上接收來的字節流。
1.3.2 語法分析程序和處理程序
XML 的語法分析程序(即所謂的XML 處理程序)讀取文檔并檢查其中包括的XML 是否是結構完整的。它還要確定文檔是否合
法,雖然這種測試不是必需的。這種測試的詳細情況將在本書的第二部分中講述。如果文檔通過了測試,則處理程序就將文
檔轉換為元素的樹狀結構。
1.3.3 瀏覽器和其他工具
最后語法分析程序將樹狀結構或是樹的節點傳送給用戶端應用程序。這個應用程序可能是瀏覽器,如Mozilla,或是其他能
夠理解如何處理數據的程序。如果這個應用程序是瀏覽器的話,數據就顯示給用戶。但是其他程序也可以接受數據。例如,
可將數據翻譯成數據庫的輸入、一系列要演奏的樂譜或是要運行的Java 程序。XML 是非常靈活的,可以用于許多不同的目
的。
1.3.4 處理過程總結
XML 實用大全
第 7 頁
總結一下,首先由一個編輯器創建了XML 文檔。語法分析程序將樹狀結構傳送給瀏覽器,由瀏覽器顯示出來。圖1-1 顯示了
這個處理過程。
圖1-1 XML 文檔的處理流程
請注意,所有這些部分都是獨立的,互相分離的。將這些部分聯系在一起的是XML 文檔。改變編輯程序與終端應用程序無關。
事實上,很可能在編寫文檔時就根本不知道最終的應用程序是什么。可能是最終用戶來閱讀文檔,也可能是數據庫從中提取
數據,甚至還可能是未發明出來的程序,也可能是所有這些情況。文檔與讀取它的程序是無關的。
HTML 也在某種程度上與讀寫它的程序無關,但是它只適用于瀏覽器。其他應用,如數據庫輸入已經不在它的有效
范圍之內了。例如,HTML 沒有提供某種方法來包括所需的內容,如每本書都必須有ISBN 號碼一樣。在XML 中可
以包括這個。甚至可以強制安排元素出現的順序(如第二級標題必須出現在第一級之后)。
XML 實用大全
第 8 頁
.4 相關技術
XML 并不是在真空中操作的。如果將XML 用于不只是一種數據格式的話,就需要與多種相關的技術相互作用。這些技術包括
為了向后兼容老式的瀏覽器的HTML、CSS(Cascading Style Sheet,級聯樣式單)和XSL(eXtensible Style Languages,
可擴展的樣式語言)、URL 和URI、XLL(eXtensible Linking Language,可擴展的鏈接語言)和Unicode 字符集。
1.4.1 超文本標記語言(Hypertext Markup Language)
Mozilla 5.0 和Internet Explorer 5.0 是首先對XML 提供支持(雖然并不完全)的瀏覽器。但是,要使大多數用戶升級到
這兩種瀏覽器的新版本上來,可能還要花兩年的時間。(我的妻子Beth 在1999 年還在使用Netscape 1.1。)因而在今后
一段時間內,還需要將XML 內容轉化為經典的HTML。
因而,在轉向XML 之前,對使用HTML 還不應感到別扭。用戶不必完全成為一個時髦的圖形設計者,但是應該了解如何將一
個頁面與另一個頁面鏈接起來,了解如何在文檔中包括圖像,如何使文本變成粗體等等。由于HTML 是XML 的最普通的輸出
格式,所以對HTML 了解得越多,也就越容易了解如何創建所需的效果。
另一方面,如果已經熟悉了利用表格或是單像素的GIF 來安排頁面上的對象,或是如果開始借助于畫出草圖而不是借助于內
容來創建Web 站點的話,那么也就必須要忘記某些壞的習慣。正如前面所討論的一樣,XML 將文檔的內容與文檔的外觀相分
離。首先開發內容,然后再用樣式單將格式附加其上。將內容與樣式分開是非常有效的技術,這既改善了文檔內容也改善了
文檔外觀。除此之外,還允許作者和設計者更加互相獨立地工作。但是,對于設計Web 站點來說,確實需要有不同的思路,
如果涉及多人的話,或許要利用不同的項目管理技術。
1.4.2 級聯樣式單(Cascading Style Sheets)
由于XML 允許在文檔中包括任意的標記,所以對于瀏覽器來說,沒有辦法事先知道如何顯示每個元素。當將文檔送給用戶時,
還要向用戶發送樣式單,通過樣式單告訴瀏覽器如何格式化每個元素。可以使用的一種樣式單是級聯樣式單( Cascading
Style Sheet ,簡寫為CSS)。
CSS 開始是為 HTML 設計的,它定義字號、字族、字重、段落縮進、段落對齊和其他樣式等格式化屬性,這些屬性都可以施
加到個別的元素上。例如,CSS 允許HTML 文檔來指定所有的H1 元素應該被格式化為32 磅、中間對齊的Helvetica 字體的
中國航空網 www.k6050.com
航空翻譯 www.aviation.cn
本文鏈接地址:
XML實用大全(10)