XML 2007年度回顧(3)_Xml教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:快速從一個XML文件中查找信息
      在網絡時代,XML文件起到了一個保存和傳輸數據的作用。Soap協議通過Xml交流信息,數據庫通過Xml文件存取等等。那么怎樣快速的從一個XML文件中取得所需的信息呢? 我們知道,JAVA的JAXP中和Micr

      9 月

      本年度最大的事件發生在 9 月,借助對 Office Open XML 格式的支持,Microsoft 促成了 International Standards Organization (ISO) 各國成員的投票者注冊活動。這次活動首先發生在瑞典,在瑞典,23 個主要的小型 Microsoft 附屬公司在最后關頭加入了瑞典標準協會(Swedish Standards Institute),其中 22 個公司投票支持 OOXML。其他國家級標準機構也吸納了比往年更多的會員應用程序,其中大多數來自 Microsoft 的合作伙伴。以前未加入 JTC 1/SC 34(ISO 的附屬委員會,大多數 XML 工作都在這里完成)的國家突然之間都加入了。

      盡管 Office Open XML 獲得了大多數選票(51-18-18),但它需要至少 2/3 的 “正式成員” 的支持,而且反對票不能多于 25%。這兩個條件它都不滿足,因此該規范被返回到 Ecma International 進行評議。也許 Microsoft 可以改進該規范,從而在 2 月的重新審議中獲得所需的選票,但是結果還不能確定。撰寫本文時,MIcrosoft 似乎不太愿意讓 ISO 控制 OOXML 的改進,因此之前的一些贊成票可能會變成反對票。

      為 OOXML 爭取選票的努力也間接損害了一些其他不相關規范的利益,包括 Document Schema Definition Languages (DSDL)。許多支持 OOXML 的新成員對其他工作組任務不感興趣。一旦他們投出選票后,他們將會消失,因而在決議無關的和爭議較少的問題時無法達到法定人數。

      10 月

      Atom 發布協議在 10 月發布。APP 作為上傳 blog 條目的簡單格式登上了舞臺,旨在取代像 MetaWeblog 和 WordPress API 這樣的定制 API。但是,在這一過程中,APP 逐漸顯示出越來越多的優勢。

      APP 只不過是一個用于將內容發布到 HTTP 服務器的具有 RESTf 風格的、可伸縮的、可擴展的安全系統。一方面,它是一個純協議,完全獨立于任何特定的服務器和客戶機。另一方面,由于它也屬于 HTTP,所以很容易在現有客戶機和服務器上實現。

      Web 最初只是作為一個讀寫媒介。但是在最初的 15 年里,主要的投入都放在了讀取功能上。瀏覽器吸引了所有人的目光,而創建工具卻沒人關注。頁面編輯器很少,而且主要通過 FTP 傳遞到文件系統。直到現在,借助 APP,編輯器才得以變得與瀏覽器一樣豐富、功能強大且易于使用。

      一些優秀的服務器軟件(比如 eXist 原生 XML 數據庫)已經開始使用 APP,而且一些客戶機也正在使用它。在即將來臨的一年里,將會有更多的軟件采用 APP。在 Web 上發布內容將會變得與瀏覽內容一樣簡單。

      11 月

      在 11 月,Mark Logic 公開了 MarkMail,這是一個用于與電子郵件存檔文件交互的基于 XQuery 的站點。Jason Hunter 這樣描述它:

      “每一封電子郵件都被存儲為一個 XML 文檔,并通過 XQuery 對其進行訪問。所有的搜索、分面導航(faceted navigation)、分析計算,以及 HTML 頁面呈現都是在一個單獨的 MarkLogic Server 計算機上執行的”。

      MarkMail 目前索引了大約 500 個郵件列表,包括 Apache 郵件列表、與 jdom 有關的郵件、xml-dev 等等。

      自然地,人們使用此功能所做的第一件事就是搜索自己的知名度。在這個集合中,發貼最多的人(top human poster)一直都是 Saxon 屆的名人 Michael Kay(一些自動發送提交消息的 Apache robots 試圖超過他);但是在 xml-dev 方面,討論最多的主題是 Len Bullard,有超過 4,000 封郵件與此相關。Len 的大多數郵件都包含好幾頁的文章,這使得他更加受關注。

      我在 xml-dev 方面排名第 10,擁有 1,014 封郵件。要不是兩年前我更換了郵件客戶機,我可能會排在第 9 位。我的屏幕名稱由 “Elliotte Rusty Harold” 更改為 “Elliotte Harold”,而數據庫就把它們當作兩個人來處理。系統中還有一些其他 bug。:-)

      12 月

      IDEAlliance 一年一度的 XML 2007 會議在 12 月初召開,這是本年度規模最大的一次 XML 展覽。這次會議在波士頓舉行。出席的人數有所減少,只有 300 余位與會者和 15 位展出者。

      本次展出的大部分內容都是比較著名的技術,至少是中堅 XML 開發人員一直關注的技術。與去年一樣,XQuery 仍然是展覽會中的明星,盡管 XForms 也非常引人關注。XProc、RDFa、OpenDoc、Office Open XML、Atom、APP 和 JSON 也引起了不少人的關注。Web 服務和任何與 SOAP 相關的技術的缺席惹人注意。除了 “但是現在我們正轉向 REST” 以外,我還沒有聽見過這方面的術語。

      展覽會上真正的新產品來自預料以外的廠家:Intel。盡管 Intel 在硬件方面更著名,但是它也開發能最大限度利用自己的處理器的軟件。Intel 在展會上展出并發布了 Intel XML Software Suite,這是一個針對 Linux 和 Windows 的原生 X86 庫的集合,提供了真正的快速 XSLT 處理、XPath 評估、XML 模式驗證、文檔對象模型(DOM),以及 Simple API for XML (SAX) 解析。其中還包括一個基于 Java 原生接口(Java Native Interface,JNI)的針對 Java™ 平臺的包裝器。

      Intel 聲稱這個庫的速度是 XPath 和 XSLT 的 XSLTC 和 Xalan 的兩倍,而且比對大型(大于 100MB)文檔進行原始解析的 Xerces-C 快 6 倍。解析器使用占用更少內存的符號表數據結構和跨兩個或更多內核的多線程處理來實現這些性能。這個庫可用于處理 300 MB 到 32 GB 范圍的文檔。對于更小的文檔,由于這項技術開銷比較大,所以傳統解析器更快些。

      我還沒有機會驗證 Intel 的宣稱;但是如果這是真的,將非常有趣。Xerces 并不是最快的解析器,但是 6 倍的速度提升是其他任何技術都還未達到的。令人驚訝的是,Intel 使用標準 API、SAX 和 DOM 達到了這樣的性能。對我個人而言,我非常相信 XML 解析性能能夠提升,但是我以前以為需要專注于高性能的新 API 來實現。Intel 似乎不需要這樣做。

      W3C 工作組通常在 12 月完成預期的工作,并在圣誕節之前發布規范。對 W3C 來說,圣誕節前一周通常是一年中最忙的時間。請關注 http://www.w3.org/TR/,也許還有更多驚喜等著您。:-)

      結束語

      對于 XML 來說,2007 年是多產的一年。主要的爭論集中在 office 文檔的標準化方面,這場戰斗甚至引起了流行刊物的關注(有誰曾經在 Wall Street Journal 上閱讀過關于 XML 格式的 ISO 標準的信息呢?)

      但是如果我不得不挑選出今年發生的最重要的事件,我很難在正在緩慢成長的 XQuery、APP 和 XForms 之間做出選擇。所有這些都有可能從根本上改變 Web 的底層軟件基礎結構。XForms 是一個全新的客戶機開發平臺,XQuery 是一個全新的服務器開發平臺,而 APP 將二者連接起來。在三者當中,XQuery 已能夠應用于生產,而 APP 正在快速發展。在 2008 年,兩者之間一定會發生重大事件。XForms 緊跟其后,也許稍微有點落后,但是我希望它的發展不算太慢。總之,XML 在 Web 上的前景要比以前更加光明。