學習XML的十九個熱點問題

這裡的19個有關XML的熱門問題能夠讓你成為一XML“專家”,或至少讓你能夠在今後看準XML的發展方向。

學習XML的十九個熱點問題

1 什麼是XML? 11 OSD和CDF與XML的關係如何?

2 XML何以重要? 12 電子商務(e-commerce)和XML?

3 SGML、HTML和XML有什麼聯絡? 13 XML中的層疊樣式?

4 如何實現XML? 14 XML如何改進超連結?

5 什麼是檔案型別定義(DTD)? 15 伺服器上支援XML嗎?

6 什麼是格式完整和有效的檔案? 16 誰應該學習XML?

7 如何在瀏覽器中閱讀XML? 17 有哪些編寫XML的工具可供我使用?

8 RDF和XML有何聯絡? 18 XML的國際化?

9 Netscape瀏覽器中如何實現XML? 19 XML的未來在哪裡?

10 Microsoft瀏覽器中如何實現XML?

1。什麼是XML?

XML代表擴充套件標識語言(Extensible Markup Language)。 由 World Wide Web Consortium (W3C)帶頭, XML在二月中期成為一個正式的規範。

XML開發者會告訴你XML不是一種語言,而是一個定義其他語言的系統。 你可能已經聽說過, 或使用過這些語言中的一種,——如Microsoft支援“推技術”的 Channel Definition Format (CDF)。

正從事於XML相關建議工作的W3C, 稱XML為“表達資料中結構 的共同語法”。 結構化的資料指的是其內容,意義或應用被標記的資料。 例如, HTML中

標記指定文字為某一字型和大小, XML的標記將明確確定資訊的種類: 標記可以識別文件的作者, 標記可以在一個存貨清單中包含某一專案的成本 。

透過將結構,內容和表現分離, 同一個XML源文件只寫一次, 可以用不同的方法表現出來: 在計算機螢幕上, 在手提電話顯示屏上, 在為盲人服務的裝置上翻譯成語音, 等等。 它可以在可能開發的任何通訊產品上工作。 一個XML文件因此可以比其書寫時的作者和顯示技術生存得更久。

所以, XML將不僅限於Internet, 例如, 可以服務於整個出版業, 特別是對於想製作可出現在多種媒體上的文件的人。 一些使用Standard Generalized Markup Language (SGML)多年的大型文件出版商將轉向XML。 還有, 獨立於平臺的XML是為Web開發的, 這是它將最具影響的地方。

DOM

XML在Web的真正實力在於它是如何與Document Object Model (DOM)互動的。 DOM是定義訪問文件中資料的機制的介面。

使用DOM, 程式設計師可以用一個標準的方法寫動態的內容。 換句話說, 他們可以使用它來使瀏覽器文件樹中的一部分特定內容按照一定的方式表現, 例如, 產生一個小效果, 當用戶將滑鼠移至文字上時, 這些文字變成藍色。 Netscape Navigator 和 Microsoft Internet Explorer 都有他們各自的DOM, 但是他們都稱將在其下一版本的瀏覽器中支援W3C 的標準DOM。

2。XML何以重要?

Web領袖之間的說法是內容至上。 不幸地, 內容經常和其表現緊密結合。 請問你多少次在一個網站上遇到一個小小的提示, “最好在800x600畫素的解析度上顯示”?

XML將幫助解決以上問題, 因為網站建造者不用再指明在哪裡顯示什麼, 而是指明文件 的結構。 例如, 你可以說明文件的標題, 作者, 關聯文件的清單, 等等。 然後, 任何一個有XML瀏覽器的裝置都可以給出最適合它的文件版本, 這樣的裝置可以是一個掌上型計算機, 置頂盒, 或高速的工作站。

但是, 也許XML的最佳特性是其內在的可擴充套件性。 公司和組織能夠擴充套件XML來滿足新的挑戰和應用。 一個基於XML的語言已經在使用——微軟的Channel Definition Format (CDF)—— 還有更多將出現, 包括 Resource Definition Format (RDF) 和 Open Software Description (OSD)。

XML 也允諾成為交換資料 和文件的標準機制。 例如, XML可能成為不同廠商的資料庫在Internet上交換資訊的一種方法。現在準確地決定XML的方向還有一些早。 但是, 其各種可能性是令人敬畏的,這就是為什麼圍繞著XML有如此多的激動的一個重要原因。

3。SGML、HTML和XML有什麼聯絡?

Standard Generalized Markup Language (SGML) 是在文字處理應用中表達資料的一個方法。 它已經出現十多年了, XML 和 HTML 都是從SGML 發展而來的文件形式。 因此, 它們都有一些共同點, 如相似的語法和帶括弧的標記符的使用。 但是 HTML 是SGML的一個應用, 而 XML是SGML的一個子集。

區別是重要的。 基本上HTML不能用來定義新的應用, 而XML可以。 例如, Resource Description Format (RDF) 和 Channel Description Format (CDF)都是使用XML定義的應用。 XML和HTML更象表兄弟, 而不是親兄弟。

事實上, XML和SGML是相容的 —— XML文件可以透過任何SGML製作或瀏覽工具閱讀。 但是, XML沒有SGML那麼複雜, 它是設計用於有限頻寬的網路的, 如Internet。 XML規範的合作者Tim Bray說, XML的設計出發點是取SGML的優點, 去除複雜的部分, 使其保持輕巧, 可以在Web上工作。

HTML,SGML和XML將繼續用於其合適的地方, 它們中的任何一個不會使其他一個廢棄。 HTML仍是在Web上快速出版資料的最簡單的方法, 大部分短期的資料, 如會議議程或廣告宣傳冊。 如果資料會長期使用, 並且需要更多的一些結構, Web建造者將願意使用XML。 不同於HTML和XML, SGML可能永遠不會在Internet上被廣泛接受, 因為它從來沒有為某個網路協議的需求而設計或最佳化過。 對於高階的, 複雜結構的出版應用, SGML將繼續適用。

4。如何實現XML?

XML將以幾個不同的方式應用。 一個是在人機之間交換資料, 如從Web伺服器至使用者的瀏覽器。 另外一個是在不同的應用之間交換資料, 或者是機器之間交換資料。

在這些情況下, 你都可能需要三層架構: 後端資料庫, 針對資料的處理邏輯的中間層伺服器, 以及資料進一步顯示和處理的客戶端。 資料庫可以從多個數據來源接收資訊, 可能已經是XML格式的資料。 中間層然後聚攏資料並在最終的表現層上公佈。

現在, 網頁有時候以這種方法傳送 ——CNET的NEWS。COM 從一個數據庫中發表資料。 但是要獲得一頁的新的檢視, 如NEWS。COM的新的“印表機友好”選項, 伺服器必須產生一個新的頁面。 一份適當格式化的XML文件將允許客戶端的應用為不同的媒體修改文件的表現形式, 比如為印表機。

5。什麼是DTD?

文件型別定義 (DTD) 是一套關於標記符的語法規則。 它告訴你可以在文件中使用哪些標記符, 它們應該按什麼次序出現, 哪些標記符可以出現於其它標記符中, 哪些標記符有屬性, 等等。 DTD原來是為使用SGML開發的, 它可以是XML文件的一部分, 但是它通常是一份單獨的文件或者一系列文件

因為XML本身 不是一種語言, 而是定義語言的一個系統, 它沒有象HTML一樣擁有一個通用的DTD。 相反, 想使用XML進行資料交換的工業或組織可以定義它們自己的DTD。

如果一個組織想用XML來標識僅在內部使用的文件, 它可以創造自己私有的DTD。 比如 Wall Street Journal Interactive Edition 擁有一個 DTD 來詳細說明每一版, 其中有關於頁, 文章, 概要, 標題下署名等等的資訊。 刊物目前使用SGML DTD (稱作Dow Jones Markup Language), 但是它也正在開發一個XML版本。

關於DTD並不是沒有爭議的。 一些人感到它給商業業務增加了實實在在的價值, 而一些人感覺它限制了創造性。 還有一些人認為DTD有用, 但是還做得不夠。 微軟正嘗試用它的XML資料提議來解決上一個抱怨, 但是批評者說這些改進應該在DTD規範本身進行。

微軟的schema

一些供應商, 包括微軟, 已經提議了替代DTD的一個方法, 稱為schema。 他們已經將其以XML資料提交給了W3C。 就象DTD, schema提供了文件的規則, 並指出用什麼標記符, 標記符的屬性, 之間的聯絡, 等等。

但是, 不同於DTD, schema可以定義資料型別。 例如, DTD可能有一個標記符 , 而標記符之間的內容可以是數字或字串。 Schema 可以規定只輸入數字。

這個方法顯然有其優點, 特別是用於應用,物件,或資料庫之間的資料傳輸。 唯一的問題是它將成為DTD規範, 還是XML的一個擴充套件。

6。什麼是格式完整和有效的檔案?

基本上有兩類相關的XML文件: 構造良好的和有效的。 構造良好的 XML文件遵守XML語法的一般規則, 這些規則比HTML和SGML的更為嚴格。 XML的字元資料決不會弔在那裡, 沒有某種結束識別符號, 或者是象 成對出現的 結束識別符號, 或者是一個特別的在右尖括弧前帶有一個斜槓的 空元素 標記, 比如 ; XML 標識總是以左尖括弧或 & 開始; 元素型別和屬性名稱是大小寫區分的; 屬性需要引號; 等等。

有效的 XML 文件遵守某個特定的 文件型別定義 (DTD)。 確認XML文件正確性的工作主要由製作出版工具承擔, 而XML瀏覽器為讀取XML文件, 只需要檢查其構造的良好性。 這樣, 製作工具中的解析器得要檢查構造良好性 和 有效性, 而瀏覽器僅要考慮尋找已經構造良好的XML。

7 如何在瀏覽器中閱讀XML?

閱讀XML文件的工具一般稱為XML解析器, 雖然其更正式的名稱是XML處理器。 XML處理器將資料傳送到應用軟體, 以做製作, 出版, 查詢, 或顯示。 XML不給應用軟體提供 應用程式介面 (API), 它只是把資料傳給應用軟體。 XML處理器不解析非構造良好的資料。 Netscape 和 Microsoft 都已經將XML解析器包含在其瀏覽器中, 或正計劃將其包含到瀏覽器中。

XML開發者團體提供免費的XML閱讀器和解析器, 來應用到應用軟體或XML製作軟體:

Textuality的 Lark, 來自XML規範的作者之一。

Microstar Software的 lfred, 一個基於Java的解析器。

DataChannel的 DXP, 前身為著名的NXP, 或已經增加了API的Norbert的 (Mikula) XML 解析器。

8 RDF和XML有何聯絡?

如果XML是說語言的能力, XML應用軟體則是特定的語言。 資源描述格式(Resource Description Format RDF) 是這樣的一個應用軟體: 使用XML語法的資料建模語言。

RDF是描述和訪問資料的一個方法。 這意味著RDF是關於資料的資料, 或者說元資料。 在Web中, 這些元資料將被用於建立標準的站點地圖, 更精確的搜尋結果, 和分層次的主題索引。

RDF也允許智慧書籤, 當被索引的網頁變化時, 書籤隨之發生變化。 如果你跟蹤內容定期更新的站點, 比如CNET的 NEWS。COM, 將很有用。

對於網站建造者, 建立可被搜尋引擎引用的其網站內容的元資料並不困難。 我們很快就會有商業化的軟體, 來自動產生給定站點的RDF檔案。

XML元資料也將活躍描述和評估資料的市場。 有許多評級機構 在網上出現, 他們評估一切資料, 從保護孩子安全的站點到最佳電影或葡萄酒站點。 RDF描述評級機構可以使用的等級的語法。 人們將選擇有他們感覺最合適的詞彙表的評級機構, 詞彙表指的是評級機構給不同型別內容評級使用的特別的一套術語 —— 從性和暴力到葡萄酒酸度。

9 Netscape瀏覽器中如何實現XML?

Netscape將在Communicator/Navigator 5。0中以一個代號為Aurora的交付部件來支援XML元資料。 Aurora利用RDF 來獲得Netscape所說的“桌面資訊全面整合。”

Aurora在網路, 桌面和資料庫之間查詢和管理資訊。 它將在桌面上以“視窗”選單的介面出現, 會聚集指向當前專案, 研究主題, 或日常活動等資源的指標。 RDF使Aurora的導航條指向不同資料型別(文字處理文件, 表格資料, 電子郵件訊息, 資料庫內容)的本地檔案, 也指向Internet 或 intranet 伺服器上的資源(搜尋和查詢的結果, 書籤連結, 等等)。

一個讀取RDF的XML解析器將是 Netscape 5。0 版瀏覽器的一部分, 並且在最終產品交付之前會出現在某個beta版本中。 除了這個初始的RDF實現, Netscape正計劃將一個通用的XML解析器包含在瀏覽器中, 而其瀏覽器可以和其他的XML應用軟體一起工作, 比如 Shakespeare markup (一個早期的 XML 應用軟體), Chemical Markup Language (CML), 和 MathML, 一個正成為W3C推薦的數學標識語言。

“我們要使 Navigator 成為一個 XML 平臺,” Netscape 原理工程師R。V。 Guha說。 Guha 原來開發過 MCF (MetaContent Format), MCF 後來加入了RDF規範。

10 Microsoft瀏覽器中如何實現XML?

微軟的 Internet Explorer 4。0 是第一個實現XML的 Web瀏覽器。 微軟提供了一對XML處理器: 瀏覽器所攜帶的用C++寫的解析器, 和一個Web建造者可以從中下載和加入他們自己的應用程式的Java解析器的原始碼。

Java解析器是一個有效的 解析器, 就是說它根據一個文件型別定義 (DTD) 或 schema 來進行檢查。 為了提高效能, 瀏覽器所帶的C++ 版的解析器是一個非有效的解析器。

據微軟的產品經理Steve Sklepowich稱, 這兩個解析器都是“通用的”, 因為它們不依靠特定的XML應用, 如Channel Definition Format。 由於XML資料和其表現分離, 在一個Web瀏覽器本身實際顯示XML的能力需要 style sheet, 例如 XSL (Extensible Style Language)。

同時, 微軟使用了它所稱的XML Data Source Object, 或叫 XML DSO。 它應用了動態 HTML的資料捆綁能力, 將一端的XML資料和另一端的HTML資料相連結。 (關於資料捆綁的例子, 可以檢視 BUILDER。COM 的 Browser Playground。) IE 4。0 訪問XML文件, 從中查詢資料, 然後作為HTML顯示出來。

微軟也使用了 XML Object Model (XML OM)來讓開發者與瀏覽器中的XML資料進行互動。 它的實現是透過將HTML作為基於Document Object Model (DOM)的物件顯現, 儘管HTML 和 DOM 並非直接相容。 DOM 讓指令碼和程式訪問結構化的XML資料。

Sklepowich說, 雖然目前在微軟, XML的重心在瀏覽器, XML將最終出現在“任何HTML已經出現了的地方”。 CEO Bill Gates 已經公開宣佈微軟Office 未來的版本將支援 XML, 而且公司也計劃支援電子郵件包和製作XML工具的標準。

11 OSD和CDF與XML的關係如何?

Channel Definition Format (CDF) 和 Open Software Description (OSD) 是微軟支援的兩個XML應用。 透過其XML解析器, 微軟的 Internet Explorer 4。0 讀CDF檔案來驅動和控制push 頻道所帶來的頁。 根據用 Resource Definition Format (RDF)所做的工作, CDF提議最近又上交給了 W3C, 以利用RDF的能力來顯示不同資料元素之間的聯絡。

Open Software Description 是用於描述軟體部件的詞彙表, 帶有語法如從屬, 版本和平臺。 OSD 描述如何表現一個部件的特性, 以及如何將該部件安裝到計算機上。 它可以用於下載一個完整的軟體包, 但是它主要設計用於不斷增加的更新。 OSD 單獨工作或和CDF一起工作, 來定義應用頻道。

OSD建議由微軟和Marimba領導的一組銷售商於1997年8月提供給W3C。

12 電子商務(e-commerce)和XML?

四年來, CommerceNet, 這個有500個成員的非盈利性的網上商務協會, 正努力幫助 e-commerce 產品和系統一起工作。 其概念是允許資訊在不同目錄之間, 從目錄到付款系統, 在付款系統之間交換。 已經發現XML可以在兩個重要方面幫助實現以上概念: 內容定義和資訊交換。

內容定義: CommerceNet 正在定義通用於多種商業事務的資料元素。 這個稱作 Commerce Core 的東西將定義如何給諸如公司名稱, 地址, 價格, 條款和數量等事物作標識。

資訊交換: 開放, 基於文字的XML用於伺服器之間交換事務資訊很理想。 CommerceNet 提議用基於XML的 Common Business Language (CBL) 來描述產品和服務目錄軟體, 關於商業規則和系統的元資料, 以及表格和訊息的軟體。 許多CBL 取自已經存在的 Electronic Data Interchange (EDI) 辭典, EDI辭典識別公認的術語, 如發票和採購訂單。 但是CBL超越EDI的商業-到-商業的重點, 包含了零售事務和橫向的供應鏈 —— 從供應商到批發商到零售商。

一個這樣的CBL應用是為使目錄互用的 Product Information Exchange (PIX) 規範。 CommerceNet設計PIX, 以幫助供應商和他們的分銷商更容易地交換產品資料。

長遠的目標是工業組織——而非 CommerceNet——來將CBL作為特定的DTD的一個共同基礎使用。 一些著重於工業的初步嘗試已經宣佈了:

Open Buying on the Internet (OBI): 一個在Internet上進行國際性的商業間購物的標準。 OBI 基於目前的Internet標準, 如HTML, SSL (為安全性), SET (為信用卡交易), 和X。509 (為數字認證)。 OBI的支持者有 Commerce One, Connect, Intelisys, InterWorld, Microsoft, Netscape, Open Market, 和 Oracle。

Open Trading Protocol (OTP): 一個在Web上向消費者售物的一致的, 可共同操作的環境。 規則將包括從如何降價促銷, 付款選擇, 到產品運輸, 接收和問題解決。 OTP由MasterCard International, DigiCash, CyberCash, Hewlett-Packard, IBM, AT&T Universal Card, Netscape, Royal Bank of Canada, 和一些 其他金融機構和技術公司支援。

Internet Content and Exchange (ICE): Vignette, Firefly Network, 和 一些其他公司——包括微軟——正在開發一個叫作ICE的規範, 使能夠在站點之間交換線上資產, 無論那是內容, 應用程式, 或是元資料。 ICE將利用現有的標準, 包括 OPS/P3P (為使個人資料可靠交換), CDF, OSD, XML-Data , 和 RDF。

13 XML中的層疊樣式?

因為XML將內容和表現分離, Web建造者需要新的方法來控制設計, 顯示和輸出。 Style sheet 是問題的答案。 目前, 有三種可用於XML的 style sheet:

Cascading Style Sheets (CSS)

Extensible Style Language (XSL)

Document Style Semantics and Specification Language (DSSSL)。

如果5。0版的瀏覽器支援XML, XML對現有的CSS標準的支援將會處理大部分基本的風格和頁面問題。 但是CSS對於專業出版商可能不夠強大。 所以, 另一端存在著DSSSL, 一個在使用SGML的高端出版商中流行的ISO (國際標準組織)標準。 然而, DSSSL是複雜的, 它處理的列印文件管理在Web上很少有用。

現在剩下了 Extensible Style Language (XSL), 特別為XML而寫的style-sheet。 XSL目前上交給了W3C作為一個提議, 它給了Web開發者和使用者較HTML更多的表現靈活性。 例如, HTML的

識別符號在所有瀏覽器上的表現是基本一樣的, 但是XSL讓開發者指定他們的頁面元素如何表現 (儘管使用者可以在個人設定中覆蓋它)。

XSL較CSS更強大, 因為它使Web建造者建立可以動態改變其表現的文件。 例如, 你可以包含這樣的程式語句, “如果一個XML元素的屬性為數值10, 顯示為綠色, 否則為黑色。” 或者你可以將“僅供內部使用”作為屬性給一個段落標上, 這樣它在某些情況下不會出現。 XSL被設計用於指令碼語言如JavaScript。

14 XML如何改進超連結?

XML超連結比基本的HTML風格的超連結多了一些新的特性, 包括無需手寫許多JavaScript程式碼就能建立“聰明的”連結。 而且在XML, 連結本身成為了物件, 可以象其他物件一樣被管理。原來的連結規範——XLL, 或XML連結語言——正被分為兩個不同的規範: XPointer 和 XLink。

XPointer: 在HTML, 要連結到一個頁面的中間, 頁面作者必須在那兒加上定位識別符號。 使用XPointer, 你可以“取址到” (不是“連線到”)其他人的文字的任何部分。 顯而易見, 這樣將有助於工作於法律檔案, 科學和學術論文, 甚至W3C規範!

XLink: 當用戶點選一個HTML超連結時, 當前的網頁被連線到的檔案替代。 XLink令Web建立者給連結增加行為。 例如, 現在, 你必須用一些JavaScript, 使在連結處彈出一個獨立的視窗, 但是XLink讓Web建立者對連結進行編碼來執行一系列動作, 包括彈出一個連結選擇的選單。

另一個應用可以是彈出一個對話方塊, 可能是一個提醒使用者它們正要更新資料庫的警告。 連結彈出選單可能需要使用者點選一個框來表示在進一步處理前他們接受義務。 現在, 實現這樣的功能要寫許多的指令碼程式碼。

XML也讓Web建立者建立類似Web環工作的Extended Link, Web環是透過“下一個/前一個”行進來導航的自己選擇出來的關於相同主題的網站組。 對於彈出選單太長的相關連結站點表, Web建立者可以建立一個連結表, 這個表在不同的站點, 頁面時會有變化。 使用者可以點選一個圖示來自動轉移到環中的下一個成員。 現在這樣的功能需要 CGI scripts, 而Extended Links 提供了一個標準的, 非私有的建立資源間聯絡的方法。

仍然有更多的問題需要解決, 特別是在行為政策方面。 必須由一種方法來協調以下三方面的關係: 文件作者對連結所建議的行為, 使用者所喜好的顯示連結資訊的方式, 以及是否和何時忽視使用者的意願的政策。

15 伺服器上支援XML嗎?

XML被設計成供長久使用的, 高價值的文件的儲存格式。 XML不是隻讓你定義識別符號, 它也允許你定義文件的儲存結構。 一篇HTML文件僅存在於一個檔案中, 而一個XML文件可以由存放在不同地點的多個檔案(稱為實體)組成。 這提出了作為文件儲存庫的XML伺服器的概念。

伺服器軟體供應商已正在支援XML:

Enigma, Insight 4。0

這是一個提供給出版商處理大型文件的專業電子出版軟體解決方案。 目前和Insight捆綁在一起的Enigma SGML/XML Style Sheet Editor, 也可以作為一個獨立產品提供。

Hynet Technologies, Digital Library System

Digital Library System (DLS) 將文件和文件部件作為標準軟體物件進行管理, 允許引入在Adobe FrameMaker和Microsoft Word中建立的文件, 或者SGML/XML檔案。

Inso, DynaText Professional Publishing System

這是一個進行索引, 搜尋和製作指令碼的軟體, 它可以工作於執行在Windows NT 3。51 或 4。0, 或 Sun Solaris 2。5上的Microsoft Internet Information Server 和 Netscape Enterprise and FastTrack servers。

Open Market, Folio

Open Market的 Folio 4 資訊管理和傳送產品將XML文件引入帶索引的資料庫, 以在IP網路上傳遞內容, 或將內容送至CD-ROM。 在一月份, Open Market宣佈增強對XML的支援, 允許文件以它們的本身格式進行索引和保證安全。 同時, Folio產品也將可以和其它基於標準的製作, 解析和生成XML文件的解決方案相互操作。 它的產品包括 Folio siteDirector (分發資訊), Folio SecurePublish (事務管理軟體), 和 Folio Publisher (電子出版)。

WebMethods, Web Automation Server

Web Automation Server 幫助公司將基於瀏覽器的應用軟體和其它應用軟體的資料相結合。 它是基於XML的伺服器, 使用 WebMethods自己的在機器間進行Web資料交換的WIDL (Web Interface Definition Language)。 (該公司已經將WIDL作為標準提議上交給 World Wide Web Consortium。)

16 誰應該學習XML?

所有的Web建立者需要足夠了解XML, 以決定是否使用它。 E-commerce 站點和管理資料庫中大量文件的站點是顯然的首選物件。 經理可能不需要學習XML語法或如何建立DTD, 他們仍要理解XML的潛力並加以利用。

如果最終的目的只是讓人來讀資訊, HTML能足夠滿足標識資訊的要求。 但是如果你想要為自動處理資料作準備, 你必須考慮將XML納入你的出版系統。

並非每一個工作在Web站點的HTML製作者必須成為XML製作者, 但是某些員工應該精通於XML——特別當站點的工作物件是值得為將來使用而管理的資料和文件時。

當然, XML的功能也意味著複雜性——一些Web建立者已經發現他們可以在幾天內掌握HTML的基礎, 而他們可能需要花幾個星期來適應XML。 只有你自己才能決定是否值得花這些時間。

17 有哪些編寫XML的工具可供我使用?

幸運的是, Web建立者不用完全靠他們自己從頭開始建立XML了。 市場上已經有了建立, 管理和傳送XML的工具, 並且一些公司也在進行開發。

Adobe: 在1998年中期, Adobe將介紹可以輸出到XML的 FrameMaker 和 FrameMaker+SGML 的過渡版本。 這些產品的完整版本將能夠輸入XML。 Adobe有 一名代表在 W3C的XML工作組, Adobe也參與了XLink, Cascading Style Sheets和 RDF的工作, 所以我們可以期待這些技術將在Adobe未來的產品中出現。

Allaire: HomeSite 4。0 和 Cold Fusion 4。0 都預計在今年夏天出品, 它們將支援XML, 包括style sheets。 HomeSite 3。0中已經提供了一個CDF附加軟體。

ArborText: 在SGML領域內長期工作的ArborText, 於一月份釋出了XML Styler, 一個免費的基於Java的XSL編輯器。 它的圖形使用者介面可以讓我們勿需知道XML語法就能進行編輯。 將來, ArborText 會把XML Styler整合到Adept中, Adept是公司給打印出版提供的XML製作工具。

DataChannel: 一個免費的, 基於Java的有效的解析器, 稱為 DXP (DataChannel XML Parser; 基於 Norbert Mikula 著名的NXP)。 可以從該公司的Web站點獲得。 它新發布的是免費的XML工具包, XML 開發環境, 它包括了一套部件, 幫助人們開始學習和應用XML。

Inso: 該公司提供它稱為的“首個整合的, 端對端的, 建立, 轉換, 儲存, 管理, 索引, 查詢XML內容, 將其釋出到Web, CD-ROM和印表機上的出版解決方案。” 其產品包括 DynaTag 4。0, DynaBase 3。0, DynaText 3。1, 和所附的工具 DynaWeb。

IntraNet Solutions: Intra。doc Management System的下一版本, IntraNet Solution的基於Web的文件管理系統, 將會管理XML部件和文件之間的關係, 提供和第三方XML製作工具的整合連結管理, 完善在瀏覽器中XML物件的使用, 並在Intra。doc儲存庫和XML編輯器之間提供一個互動的元資料模型。

Microsoft: 微軟希望在年底交付Office 9。0, 據報道, 它將有對XML的支援。

Microstar: ActiveSG/XML 是一套在Internet上設計和配置基於事務的XML/SGML系統的工具和技術。 Microstar也提供了免費的lfred XML 解析器。

SoftQuad: HTML 編輯器 HotMetal Pro 將很快提供 Live Data Base Pages, 一個讓開發者將HTML資料拉入資料庫並以XML來返回的附加軟體。

Vignette: StoryServer 3。2 在Web上交付能使用XML的應用和內容。 它結合了關係型資料庫, 多媒體和XML內容建立的工具。 StoryServer 是一個Web內容應用平臺, 供建立, 管理, 和交付基於服務的Web應用之用, 比如線上出版, 知識管理, 和電子商務系統。 (注: CNET對Vignette有財政上的興趣。)

XPublish: XPublish是一個XML出版系統, 供Web站點開發和管理, 允許開發者以XML進行製作, 或用XML構件延展目前的HTML文件, 然後將站點以HTML來發布, 以讓任何的標準Web瀏覽器可以訪問。 它包含了一個Cascading Style Sheets編輯器。

WebMethods: 該公司製作基於XML的Web Automation 軟體, 提供商業應用軟體和Web資料的快速整合和直接訪問。 它的 Web Interface Definition Language (WIDL) 將和HTML/XML和表格的所有互動自動化, 提供在標準Web協議上表現要求-回答互動方式的一個通用方法。

當然, 如果XML在Web上無處不在, 你可以看到幾乎每一種基於Web的應用, 特別是HTML編輯器, 資料庫軟體, 和電子商務軟體, 會迅速加入對XML的各個級別的支援。

18 XML的國際化?

XML將使Web建立者建立真正的國際性站點變得比以前都容易。 因為, 比如 Java, 它由Unicode (ISO 10646)定義, Unicode是一個國際接受的標準, 用於描述世界上所有的字母, 字型, 字元和表意符, 它包括 ASCII ISO 拉丁字元, 日本, 韓國, 中國, 印度, 希臘, 阿拉伯和其它字元。 它甚至允許字符集的混合, 例如, 一篇以日文顯示的XML文件可以透過一個母音變音參照到一個德文詞彙。

開發者不需要學習任何指令碼語言, 以使Unicode在XML文件中生效, 文件在使用者的瀏覽器中用合適的字符集顯示出來。

19 XML的未來在哪裡?

就圍繞著XML的所有活動, 很難預測六個月後它會是什麼樣。 XML和XLL 規範的合作者Tim Bray說, “我們已經制作了一個設計用於通用目的的工具, 大範圍的人們對它的關注和應用證明我們是成功的。”

在短期內, XML將可能出現在元資料應用上, 如RDF。 下一個大的影響將隨著Document Object Model 規範的批准而到來。 Bray聲稱“XML和DOM的結合確實是給Web帶來活力的神奇子彈。”

XML也應該會幫助電子商務。 XML將使電子商務供應商以共同的方法給產品和其相關資訊(價格,尺寸,顏色,特性)進行標識, 使使用者在Web上對不同的商店進行比較。

同時, Netscape和Microsoft會繼續擴大對XML瀏覽器的支援, 包括有效的和構造良好的XML文件, 更多的XML應用, 為XML設計的style-sheet支援, 和XML超連線協議。 請關注這兩個公司以及其它軟體供應商在XML製作和出版工具上的進展。