亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > XML > 正文

揭穿 XQuery 的神話和誤解

2024-09-05 20:54:03
字體:
來源:轉載
供稿:網友
 XQuery 給軟件架構師和開發人員帶來了很多希望,因為大大減少了建立使用 XML 的服務所需要編寫的代碼量。您也許認為 XQuery 所做的一切很容易理解,但是在 XQuery 的軟件開發社區中仍然存在著錯誤的想法和誤解。Frank Cohen 在本文中詳細剖析和澄清了圍繞著 XQuery 的很多神秘色彩和誤解。

  如果您在使用 XML、Web 或者面向服務的架構(Service Oriented Architecture,SOA),那么很可能會從 XML Query (XQuery) 標準的制定中受益。雖然 XQuery 還未批準為正式標準,但已經有幾十種實現每天都在幫助軟件架構師和開發人員了。即將形成的 XML 文檔查詢標準包括了下一代 XML 選擇語言(XPath 2)、XML 序列化、全文檢索和功能性 XML 數據建模。這樣規模的項目免不了有很多神話和誤解需要揭穿。下面是圍繞著 XQuery 的一些常見的神話和誤解。

  誤解:數據庫公司將 XQuery 視作其核心業務的直接對手

  數據庫公司將 XQuery 看作一個機會,與其核心解決方案互相補充。

  對于軟件架構師和開發人員而言,XQuery 提高了生產率,增加了敏捷性。工具供應商迫切希望支持 XQuery 是合情合理的。

  對于開發人員來說,XQuery 很像 SQL,自然而然地對兩者加以比較。何況越來越多的數據正使用 XML 標記,這就迫使數據庫公司在產品中增加 XML 存儲、持久性和查詢的能力。XQuery 擁有如此眾多的開發人員支持,以至于 IBM 和 Oracle 將它們的角逐放在一旁,轉而擴展其核心數據庫產品以提供 XQuery 能力。

  數據庫公司也看到了成為第一個充分利用 XML 格式的數據庫供應商(從而最終成為市場霸主)所帶來的機會。 目前存儲在關系數據庫中的數據按照行和字段進行了規格化。在 XML 世界中,每一行包含無限多個字段,每個字段都是父/子層次結構中的一部分。最先提供高性能和 XQuery 靈活性的供應商將贏得一個巨大的新市場。

  一個證據是,XQuery 將 IBM 和 Oracle 團結在一起(不再是兇狠的對手),合作提出 JSR 225(參閱參考資料), XQuery API for Java (XQJ)。在 .NET 這一邊,Microsoft 和 IBM 共同向萬維網聯盟(W3C)提交了 XQuery 測試包。

  神話:XQuery 將代替 XSLT

  XQuery 和 XSLT 都有足夠多的開發人員支持,將共存下去。事實上,XQuery 1.0 和 XSLT 2.0 最新規范的開發是先后進行的。

  XQuery 和 XSLT 交叉之處在于它們解決的問題:XML 數據轉換、XML 集合聯邦和 XML 數據高級查詢。開發人員仍仍將看到關于這兩種技術的爭論,包括各種各樣的神話和誤解。比如,我常常聽說 XQuery 能夠一次查詢多個不同的源文件,因此要比 XSLT 優越得多。事實上,XSLT 2.0 處理程序允許在輸入隊列中給出多個節點。 XSLT 1.0 有 document() 函數,可以在一次轉換中訪問多個源文件,XSLT 2.0 還支持新的 collection() 函數。我也常常聽到這樣的說法,雖然 XQuery 的語法看起來更好,但是缺少 XSLT 模板風格的模式匹配。雖然這也許是真的,但我堅信 XQuery 也會增加這一功能。最終,開發人員可以預期這兩種技術的改進和競爭將使它們的功能和能力不相上下。

  最后,還有開發人員頭腦遲鈍的問題。參加的那些 XSLT 會議讓我感到,我并沒有真正理解它。 XSLT 的轉換語法并沒有像 Java 和 Jython 中通常所用的 main() 或 start 方法。我有時候將 XSLT 看作一種腳本,說明并沒有真正理解 XSLT。XQuery 看起來很像 SQL,解決了很多我不得不從書架上翻找答案的問題。

  神話:XQuery 將代替 SQL

  XQuery 最適合于 XML,就像 SQL 最適合于關系數據。 XQuery 為需要訪問、挑選、集成和轉換一個或多個 XML 集合的應用程序提供了類似于 SQL 的查詢能力。雖然 XML 的狂熱者可能將世界上的一切都看成是用 XML 標簽編碼的,單關系數據庫模型仍然根深蒂固,世界上大部分數字數據是用由行和列組成的表來進行編碼的。SQL 不會很快地消失。相反已經出現 XQuery 擴展,將 SQL 調用的結果看作是 XML 文檔集合的一部分。

  如上所述,XQuery 對于 XML 就像 SQL 對于關系數據庫。但是,有些時候甚至相對于關系數據庫而言,XQuery 更容易使用。比方說,對于一般開發人員,使用 SQL 創建輸出結果為新 XML 文檔的多表外連接查詢要比編寫 XQuery 復雜得多。

  XML 的普及已經迫使標準團體工作組擴展 SQL 規范,以便納入 XML 處理功能。 SQLX Group、INCITS H2 小組和 ISO/IEC JTC1/SC32/WG2 的 SQL/XML 標準化都在致力于擴展 SQL 標準,使其能夠處理 XML 數據。

  誤解:采用 XQuery 必須放棄過程性編程而轉向面向對象編程

  對于 XQuery 來說,過程性腳本語言和面向對象的編程語言都是一樣的。如果愿意編寫 PHP腳本,仍然可以繼續這樣做。多數現有的編程語言都有 XQuery 實現。

  XQuery 給開發人員帶來的好處是減少了執行查詢所需要的代碼量。有時候關系數據在兩個或更多的數據庫中,開發人員需要生成報表來顯示兩個數據庫的并。喜歡使用 Python 這類過程性編程語言的開發人員可能要編寫 100 或更多代碼行來檢索、解析和處理數據。當然也可以編寫幾行 XQuery 來完成。

  神話:XQuery 比 JDOM、JAXP 和其他 XML 解析 API 更難用

  XQuery 用于 XML 數據并不比 XML 解析 API 更難。JDOM、JAXP 以及其他 XML 解析 API 提供了處理 XML 數據的 Java 代碼和方法。很多面向對象的設計模式都準備編寫處理 XML 文檔復雜性的對象。編寫 Java 對象需要時間、精力和專門的技能。底層 XML 數據格式的任何細微變化都需要修改對象。XQuery 的擁護者可以肯定地說,和使用 JDOM 編寫 Java 對象相比,XQuery 腳本能夠更快地發現應用程序需要表示的 XML 數據。另外,很多 XQuery 庫都提供了 Java 接口,因此可以在 Java 類中編寫 XQuery 代碼來獲得結果集,就像調用一個方法一樣。然后讓 Java 類處理結果。

  神話:XQuery 難以學習

  使用 Java、.NET 和其他語言的軟件開發人員發現 XQuery 很容易學。XML 有很多不那么優美的地方,包括從早期的 SGML 標準繼承下來的那些部分。 XQuery 使用一組簡潔的命令,很容易處理 XML。雖然一般開人員要掌握 XQuery 面臨著一些困難,但是學習曲線并不很陡峭,也不長。

共2頁上一頁12下一頁
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品久久91精品| 日韩电影在线观看永久视频免费网站| 国产精品欧美在线| 中文字幕日韩免费视频| 日韩成人av在线播放| 亚洲综合一区二区不卡| 久久精品91久久香蕉加勒比| 亚洲色在线视频| 亚洲欧洲一区二区三区久久| 日本亚洲欧洲色α| 欧美精品成人91久久久久久久| 久久中文字幕国产| 亚洲第一偷拍网| 国产性色av一区二区| 国产精品com| 不卡av电影院| 亚洲欧洲日韩国产| 国产精品美女无圣光视频| 91在线观看免费高清完整版在线观看| 国产精品爽爽爽| 91亚洲国产成人精品性色| 国产精品一二三在线| 亚洲美女免费精品视频在线观看| 午夜精品久久久久久久白皮肤| www.xxxx精品| 国产99久久精品一区二区 夜夜躁日日躁| 热久久免费视频精品| 久久精品中文字幕| 欧美肥老妇视频| 亚洲欧美中文日韩v在线观看| 九九久久综合网站| 国产成人激情小视频| 久久夜色精品国产亚洲aⅴ| 国产精品99久久久久久www| 国产精品视频网| 69国产精品成人在线播放| 国产99久久精品一区二区 夜夜躁日日躁| 久久久亚洲国产| 2019中文字幕免费视频| 精品视频久久久| 国产欧美 在线欧美| 91久久久久久国产精品| 亚洲香蕉在线观看| 欧美精品免费看| 久久视频中文字幕| 国产v综合ⅴ日韩v欧美大片| 亚洲一区二区三区成人在线视频精品| 国产精品吴梦梦| 久久精品国产亚洲精品2020| 日韩精品免费观看| 亚洲福利影片在线| 在线亚洲国产精品网| 国产日韩欧美夫妻视频在线观看| 91久久久久久久久久| 国产成人黄色av| 91精品久久久久久久久久久久久| 成人天堂噜噜噜| 亚洲欧美中文在线视频| 日韩av综合中文字幕| 日韩av在线网址| 精品国产精品三级精品av网址| 日韩视频在线一区| 午夜精品久久久久久久99热| 性欧美xxxx视频在线观看| 91视频88av| 精品一区二区三区四区在线| 日韩精品在线看| 日韩欧美一区二区三区久久| 欧美日韩精品二区| 欧美裸体男粗大视频在线观看| 国产成人a亚洲精品| 久久影视电视剧凤归四时歌| 午夜精品在线观看| 国产精品自拍网| 亚洲欧美变态国产另类| 91九色国产视频| 精品国产一区二区在线| 色偷偷亚洲男人天堂| 视频在线一区二区| 精品国产一区二区三区久久久| 国产精品免费看久久久香蕉| 国产女精品视频网站免费| 最近2019中文字幕第三页视频| 日韩在线视频导航| 久久视频国产精品免费视频在线| 久久视频中文字幕| 国产精品一二三在线| 久久免费国产精品1| 欧美日韩国产一区二区| 亚洲国产精品网站| www.日韩免费| 日韩成人在线观看| 亚洲国产成人久久综合一区| 亚洲人成毛片在线播放| 欧美成人合集magnet| 久久久久北条麻妃免费看| 亚洲第一页中文字幕| 久久久久久成人精品| 日韩成人av网| 国产一区二区在线免费视频| 97在线精品视频| 国产精品久久久久久久久久三级| 亚洲免费视频观看| 精品亚洲一区二区三区在线播放| 黑人巨大精品欧美一区二区三区| 久久精品99久久久香蕉| 久久久99免费视频| 日韩av在线免费观看一区| 国产精品最新在线观看| 91亚洲永久免费精品| 欧美中在线观看| 成人免费观看网址| 国产精品96久久久久久又黄又硬| 日韩精品久久久久久福利| 亚洲欧美制服丝袜| 成人国产在线视频| 亚洲天堂免费观看| 久久久免费精品视频| 91精品国产99久久久久久| 国产精品视频xxxx| 最新日韩中文字幕| 亚洲精品欧美日韩| 欧美成人精品影院| 国产精品都在这里| 57pao国产精品一区| 中日韩美女免费视频网址在线观看| 日韩一区二区在线视频| 久久韩国免费视频| 国产精品永久在线| 日韩一区二区三区在线播放| 久久久久久久久久久久av| 日韩精品亚洲精品| 黑人精品xxx一区| 欧美与欧洲交xxxx免费观看| 亚洲精品国产精品乱码不99按摩| 日韩免费在线播放| 午夜欧美不卡精品aaaaa| 揄拍成人国产精品视频| 国产盗摄xxxx视频xxx69| 成人免费福利视频| 亚洲男人的天堂在线| 在线精品国产成人综合| 久久亚洲精品中文字幕冲田杏梨| 亚洲最大的av网站| 欧美午夜精品久久久久久浪潮| 日本欧美一级片| 茄子视频成人在线| 欧美性猛交xxxx黑人| 国产精品国产亚洲伊人久久| 成人在线免费观看视视频| 色综合久久精品亚洲国产| 91精品久久久久久久久| 欧美精品久久久久久久久久| 亚洲成年人影院在线| 国产精品欧美日韩久久| 91夜夜揉人人捏人人添红杏| 黄网站色欧美视频| 久久久精品视频成人| 国产97免费视| 精品国产乱码久久久久久天美| 欧美日韩国产丝袜美女| 欧美日韩一区二区在线播放| 国产精品99免视看9| 美女视频黄免费的亚洲男人天堂|