問題タブ [xquery-update]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - XQJでバインドされた変数内でXQueryに{$expression}を評価させることはできますか?
XQuery Updateで自動インクリメント値を模倣するために<root count="0"/>
、これを初めて実行する場合を想定して、以下は正常に機能します。
...うまく譲ります:
ただし、Javaコードでノードを定義し、それをor、または、またはとしてバインドしたいと思います。好き:org.w3c.dom.Node
Document
String
ただし、これにより、属性にテキストが残ります。 { $count }
ノードを値としてバインドしxs:string
ても同じ効果があります。
もちろん、これは「XQueryインジェクション」に対する優れた保護です。それでも:XQuery Updateに、変数自体にある囲まれた式を処理させる方法はありますか?
(XQueryで自動インクリメント値を使用する他の賢いアイデアも大歓迎ですが、XQuery Updateで自動インクリメントを参照してください?)
replace - BaseX XQuery の置き換え
次の問題があります。baseX をデータベースとして使用して、xquery ファイル内の要素の値を置き換えたいと考えています。xquery コードは次のとおりです。
xml ドキュメントには、次の要素が含まれています。
この xquery を実行するたびに、次のようなエラーがスローされます。
要素内のテキスト「test」を「haha」に置き換えるには、どうすればよいですか?このコード行だけを使用すると機能しますが、URL-Parameter を読み取る必要があるため、"replace...." 行を除いて、さらに多くのコード行が必要です!
xml - 同時にフェッチして挿入するXQuery
データを取得して別のファイルに挿入しています。ただし、挿入されたデータは順序付けられていません。以下は私が達成しようとしていることの例です。
の出力は次のfruits
とおりです-
取得中に言及されましたが、注文されていません... !!!
xquery - ノード内の Xquery Multiple Results
xml ファイルで Xquery コードを実行しようとすると、フィールドの 1 つで複数の結果が得られます。
ここに私のxmlファイルがあります
私のxqueryファイル
最も重要なことは、私の結果です
director フィールドで値を 1 つだけ取得する方法は?
私の手順:- (../Movie/@TITLE) に対して個別の値関数を実行したところ、タイトルを表示するための答えが得られました。しかし、タイトルと監督は映画の属性であるため、一方を使用して他方にアクセスすることはできません。俳優を反復処理すると、1 つの映画に 1 人の監督を持つ 2 人の俳優が存在するため、監督名が 2 回出力されます。映画を反復処理するとき、それは属性ではないため、個別の値を使用できません。
sql-server - ノードが存在する場合は値を置き換えるxquery
私は xQuery を使用しており、要素タグが要素の下に存在しないtest
場合、要素の値を置き換えようとしています。Active
User
(ここで適切に表示できるように引用符を追加しました...)
このため、次のエラーが発生します。
XQuery [modify()]: 'value' 付近の構文エラー、'else' が必要です。
何を間違えたのですか?
xquery - XQuery と Zorba を使用して複数の XML ファイルを更新する
Zorba XQuery Processor を使用して複数の XML ファイルを更新し、変更の出力を同じファイルに保存する簡単な方法はありますか?
ここまでで、File モジュールと file:list 拡張子を使用して複数のファイルを処理し、ディレクトリ内のすべての XML ファイルを検索する方法を理解しました。次に、各ドキュメントをループし、XQuery Update ステートメントを実行します (ノード {} の値を {} に置き換えます)。問題は、これが実際にファイルを変更しないことです。
以前は Saxon を使用していましたが、この特定のプロジェクトにはライセンス コストが高すぎます。Saxon EE では、開いているドキュメントで「ノードの値を置換」を実行すると、クエリが終了したときにドキュメントがディスク上で更新されます。Zorba はこのようには機能せず、代わりにクエリ中にメモリ内の値を変更するだけだと思います。1 つのファイルを編集している場合は、変更した XML を Zorba で出力し、それをパイプで入力ファイルに戻しますが、この場合は多くのファイルを更新する必要があります。それは1つのクエリで可能ですか?
コードは次のようになります。
xquery - Xquery を使用して既存の XML の要素に属性を追加する
XQuery を使用して、応答 XML の要素に属性を追加する必要があります。以下の XML を入力として取り、
値newValを持つもう 1 つの属性newAttを追加し、結果を次のように与えるXquery が必要です。
メッセージヘッダーの属性の数は毎回変わる可能性があります。したがって、クエリは既存のすべての属性とともに新しい属性を追加し、ドキュメント全体を返す必要があります。
xquery - XQuery は 2 つのドキュメントを比較し、同じ名前のノードを置き換えます
次のような構造のドキュメントがあります。
INVT_DATA のサブ子は常に要素であり、テキスト ノードではありません。XQuery を使用して、同じ構造を持つ新しいドキュメントを比較したいと考えています。サブエレメントが新規およびオリジナルに存在する場合、それを置き換える必要があります。サブ要素が新しいものに存在するが、古いものには存在しない場合は、INVT_DATA に追加する必要があります。
この XQuery は機能すると思いますが、代わりに常にノードを追加するだけのようです。
私は他の同様の問題を検索し、これを見つけましたが、それは私がやりたいことに対してかなりやり過ぎです。助言がありますか?役立つ場合は、Oracle XML DB バージョン 11.2.0.3 の XmlQuery を使用しています。
xquery - 重複した値を与えるxqueryを使用してデータベースを呼び出す
OSB プロジェクトで XQuery を使用してデータベースにクエリを実行しています。次の表を検討してください。
と XQuery
このクエリでは、結果を として取得してい<root>Dheepan Raju</root>
ます。ただし、クエリが次のように複数の行を返す場合でも、1 行だけを返す必要があります<root>Dheepan</root>
。クエリで述語を使用[1]
しましたが、値を連結して返す理由がわかりません。複数の行が返されるときに最初の行のみを返す方法を教えてください。
xquery - xquery updateを使用してノード内のテキストを子ノードに変換する方法は?
次のようなxmlドキュメントがあります
このドキュメントをすべてのノードで変換する方法、つまり、ノードにテキストが含まれていて、 xquery-update を使用してテキストを子ノード (たとえばchildtexttext
)に変換する場合child node
そして、これが私が試したことです:
兄弟ノードを持つテキストを削除できませんでした。