XML 2007年度回顧(3)_Xml教程
推薦:快速從一個XML文件中查找信息在網(wǎng)絡(luò)時代,XML文件起到了一個保存和傳輸數(shù)據(jù)的作用。Soap協(xié)議通過Xml交流信息,數(shù)據(jù)庫通過Xml文件存取等等。那么怎樣快速的從一個XML文件中取得所需的信息呢? 我們知道,JAVA的JAXP中和Micr
9 月
本年度最大的事件發(fā)生在 9 月,借助對 Office Open XML 格式的支持,Microsoft 促成了 International Standards Organization (ISO) 各國成員的投票者注冊活動。這次活動首先發(fā)生在瑞典,在瑞典,23 個主要的小型 Microsoft 附屬公司在最后關(guān)頭加入了瑞典標(biāo)準(zhǔn)協(xié)會(Swedish Standards Institute),其中 22 個公司投票支持 OOXML。其他國家級標(biāo)準(zhǔn)機構(gòu)也吸納了比往年更多的會員應(yīng)用程序,其中大多數(shù)來自 Microsoft 的合作伙伴。以前未加入 JTC 1/SC 34(ISO 的附屬委員會,大多數(shù) XML 工作都在這里完成)的國家突然之間都加入了。
盡管 Office Open XML 獲得了大多數(shù)選票(51-18-18),但它需要至少 2/3 的 “正式成員” 的支持,而且反對票不能多于 25%。這兩個條件它都不滿足,因此該規(guī)范被返回到 Ecma International 進行評議。也許 Microsoft 可以改進該規(guī)范,從而在 2 月的重新審議中獲得所需的選票,但是結(jié)果還不能確定。撰寫本文時,MIcrosoft 似乎不太愿意讓 ISO 控制 OOXML 的改進,因此之前的一些贊成票可能會變成反對票。
為 OOXML 爭取選票的努力也間接損害了一些其他不相關(guān)規(guī)范的利益,包括 Document Schema Definition Languages (DSDL)。許多支持 OOXML 的新成員對其他工作組任務(wù)不感興趣。一旦他們投出選票后,他們將會消失,因而在決議無關(guān)的和爭議較少的問題時無法達到法定人數(shù)。
10 月
Atom 發(fā)布協(xié)議在 10 月發(fā)布。APP 作為上傳 blog 條目的簡單格式登上了舞臺,旨在取代像 MetaWeblog 和 WordPress API 這樣的定制 API。但是,在這一過程中,APP 逐漸顯示出越來越多的優(yōu)勢。
APP 只不過是一個用于將內(nèi)容發(fā)布到 HTTP 服務(wù)器的具有 RESTf 風(fēng)格的、可伸縮的、可擴展的安全系統(tǒng)。一方面,它是一個純協(xié)議,完全獨立于任何特定的服務(wù)器和客戶機。另一方面,由于它也屬于 HTTP,所以很容易在現(xiàn)有客戶機和服務(wù)器上實現(xiàn)。
Web 最初只是作為一個讀寫媒介。但是在最初的 15 年里,主要的投入都放在了讀取功能上。瀏覽器吸引了所有人的目光,而創(chuàng)建工具卻沒人關(guān)注。頁面編輯器很少,而且主要通過 FTP 傳遞到文件系統(tǒng)。直到現(xiàn)在,借助 APP,編輯器才得以變得與瀏覽器一樣豐富、功能強大且易于使用。
一些優(yōu)秀的服務(wù)器軟件(比如 eXist 原生 XML 數(shù)據(jù)庫)已經(jīng)開始使用 APP,而且一些客戶機也正在使用它。在即將來臨的一年里,將會有更多的軟件采用 APP。在 Web 上發(fā)布內(nèi)容將會變得與瀏覽內(nèi)容一樣簡單。
11 月
在 11 月,Mark Logic 公開了 MarkMail,這是一個用于與電子郵件存檔文件交互的基于 XQuery 的站點。Jason Hunter 這樣描述它:
“每一封電子郵件都被存儲為一個 XML 文檔,并通過 XQuery 對其進行訪問。所有的搜索、分面導(dǎo)航(faceted navigation)、分析計算,以及 HTML 頁面呈現(xiàn)都是在一個單獨的 MarkLogic Server 計算機上執(zhí)行的”。
MarkMail 目前索引了大約 500 個郵件列表,包括 Apache 郵件列表、與 jdom 有關(guān)的郵件、xml-dev 等等。
自然地,人們使用此功能所做的第一件事就是搜索自己的知名度。在這個集合中,發(fā)貼最多的人(top human poster)一直都是 Saxon 屆的名人 Michael Kay(一些自動發(fā)送提交消息的 Apache robots 試圖超過他);但是在 xml-dev 方面,討論最多的主題是 Len Bullard,有超過 4,000 封郵件與此相關(guān)。Len 的大多數(shù)郵件都包含好幾頁的文章,這使得他更加受關(guān)注。
我在 xml-dev 方面排名第 10,擁有 1,014 封郵件。要不是兩年前我更換了郵件客戶機,我可能會排在第 9 位。我的屏幕名稱由 “Elliotte Rusty Harold” 更改為 “Elliotte Harold”,而數(shù)據(jù)庫就把它們當(dāng)作兩個人來處理。系統(tǒng)中還有一些其他 bug。:-)
12 月
IDEAlliance 一年一度的 XML 2007 會議在 12 月初召開,這是本年度規(guī)模最大的一次 XML 展覽。這次會議在波士頓舉行。出席的人數(shù)有所減少,只有 300 余位與會者和 15 位展出者。
本次展出的大部分內(nèi)容都是比較著名的技術(shù),至少是中堅 XML 開發(fā)人員一直關(guān)注的技術(shù)。與去年一樣,XQuery 仍然是展覽會中的明星,盡管 XForms 也非常引人關(guān)注。XProc、RDFa、OpenDoc、Office Open XML、Atom、APP 和 JSON 也引起了不少人的關(guān)注。Web 服務(wù)和任何與 SOAP 相關(guān)的技術(shù)的缺席惹人注意。除了 “但是現(xiàn)在我們正轉(zhuǎn)向 REST” 以外,我還沒有聽見過這方面的術(shù)語。
展覽會上真正的新產(chǎn)品來自預(yù)料以外的廠家:Intel。盡管 Intel 在硬件方面更著名,但是它也開發(fā)能最大限度利用自己的處理器的軟件。Intel 在展會上展出并發(fā)布了 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 倍。解析器使用占用更少內(nèi)存的符號表數(shù)據(jù)結(jié)構(gòu)和跨兩個或更多內(nèi)核的多線程處理來實現(xiàn)這些性能。這個庫可用于處理 300 MB 到 32 GB 范圍的文檔。對于更小的文檔,由于這項技術(shù)開銷比較大,所以傳統(tǒng)解析器更快些。
我還沒有機會驗證 Intel 的宣稱;但是如果這是真的,將非常有趣。Xerces 并不是最快的解析器,但是 6 倍的速度提升是其他任何技術(shù)都還未達到的。令人驚訝的是,Intel 使用標(biāo)準(zhǔn) API、SAX 和 DOM 達到了這樣的性能。對我個人而言,我非常相信 XML 解析性能能夠提升,但是我以前以為需要專注于高性能的新 API 來實現(xiàn)。Intel 似乎不需要這樣做。
W3C 工作組通常在 12 月完成預(yù)期的工作,并在圣誕節(jié)之前發(fā)布規(guī)范。對 W3C 來說,圣誕節(jié)前一周通常是一年中最忙的時間。請關(guān)注 http://www.w3.org/TR/,也許還有更多驚喜等著您。:-)
結(jié)束語
對于 XML 來說,2007 年是多產(chǎn)的一年。主要的爭論集中在 office 文檔的標(biāo)準(zhǔn)化方面,這場戰(zhàn)斗甚至引起了流行刊物的關(guān)注(有誰曾經(jīng)在 Wall Street Journal 上閱讀過關(guān)于 XML 格式的 ISO 標(biāo)準(zhǔn)的信息呢?)
但是如果我不得不挑選出今年發(fā)生的最重要的事件,我很難在正在緩慢成長的 XQuery、APP 和 XForms 之間做出選擇。所有這些都有可能從根本上改變 Web 的底層軟件基礎(chǔ)結(jié)構(gòu)。XForms 是一個全新的客戶機開發(fā)平臺,XQuery 是一個全新的服務(wù)器開發(fā)平臺,而 APP 將二者連接起來。在三者當(dāng)中,XQuery 已能夠應(yīng)用于生產(chǎn),而 APP 正在快速發(fā)展。在 2008 年,兩者之間一定會發(fā)生重大事件。XForms 緊跟其后,也許稍微有點落后,但是我希望它的發(fā)展不算太慢�?傊�,XML 在 Web 上的前景要比以前更加光明。