68

XPathXQueryはどう違いXPointerますか?私の知る限りXQuery、 の拡張バージョンですXPath。についての基本的な知識を持っていXPathます。XPathになくて利用可能な機能はありますXQueryか? 昨日、私は新しい言葉を聞きましたXPointer。私は混乱しています。どの言語がどの目的で使用されますか?

4

4 に答える 4

65

ウィキペディアは、このような質問を始めるのに適した場所です。一般に、XPathは、DOM内の正確なXMLノードを簡潔に特定するために使用される言語です。 XQueryはXPathのスーパーセットであり、 SQLに似たFLWOR構文も提供します。最後に、XPointerにはXPathが含まれていますが、より単純な位置ベースのアドレス指定スキームも提供しています。

もちろん、詳細については、いつでもW3Cの仕様を読むことができます。

于 2009-05-29T05:58:54.530 に答える
63

Matthew による回答は第一印象が良いものですが、言及された標準についてはさらに多くのことを伝えなければならず、関連するものは他にもたくさんあります。オンラインで入手できる XML Holland ユーザー グループ マガジンからの素晴らしい記事があります。この記事は、XQuery の歴史について多くを語り、これらの標準のさまざまな観点を取り上げています。最初の部分は、ここで非常に関連しています。

XQueryはXML Query Languageの略です。それはすでに本質を語っています。大量の XML ファイルからサブセットとサブ構造を選択するための言語です。結果は、たとえば後続のプロセスで使用したり、Web ブラウザーで表示したりするのに適したものに操作できます。XPathは XQuery でよく使用されます。

すべての XML 標準には独自の範囲があります。いくつか挙げます。XSLTは、XML を別の形式に変換するための言語です。XPointerは、XML フラグメントまたはノードのサブパーツ内のノードをより正確にアドレス指定するための XPath の拡張機能です。XLinkは関係を定義するための標準です。XIncludeは、たとえば XLink 関係を使用して、複数の XML を 1 つに構成するための標準です。そしてXProcは、目的の最終結果を得るために XML ドキュメントをどのように処理する必要があるかを記述できる標準です。それ自体は XML で表現され、XML パイプラインとも呼ばれるプロセスを段階的に説明します。XProc 内では、XQuery、XSLT、および XInclude 言語 (したがって、間接的に XPath、XPointer、および XLink も) を使用して、各ステップ内で正確に実行する必要があることを表現します。

これらの基準はすべて相互に結びついています。それらは関連しており、互いに依存しています。上記の XML 標準のいくつかの重複は、W3Schoolsにもある次の画像に非常によくまとめられています。

XPathとは

記事全文はこちら: http://grtjn.blogspot.nl/2011/10/xquery-novelties-revisited.html

チッ!

于 2013-12-18T09:10:10.890 に答える
17

そうですね、XQuery は特筆に値するものだと思います。XPath と XPointer はほぼ同じで、XML ノードの選択に使用されます。一方、XQuery は XPath の非常に大きな拡張機能です。たとえば、カスタム関数を宣言する可能性があります。つまり、XML でネイティブに動作するプログラミング言語のようなものです。ここでいくつかのサンプルを確認できます: embedding-xquery-in-java

よろしく

于 2010-01-23T19:11:59.050 に答える
7

XPath は、意図的に既存のノードの読み取りに制限されています。

XSLT として、XQuery はノードを作成できます。また、ノードを更新することもできます (XQuery Update Facility を使用)。

私の XQuery 実装者の観点から ;-)

于 2016-07-08T06:06:58.873 に答える