問題タブ [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.

0 投票する
1 に答える
934 参照

xquery - BaseXで更新操作と一緒に結果を返す方法は?

( insert/ delete)-XQuery を BaseX クライアントで実行すると、常に空の文字列が返されることがわかりました。これは非常に紛らわしいか、直感的ではないと思います。

データベースに再度クエリを実行せずに、クエリが「成功」したかどうかを確認する方法はありますか (また、「ノードを削除した場合、XML に 'oldNodeCount-1' ノードが存在する必要がある」などの潜在的にバグのある「推移的」ロジックを使用します)。 ?

0 投票する
1 に答える
532 参照

xquery - XQueryは値を条件付きの失敗に置き換えます

でノード アクションの xquery replace-value を作成中ですXQuery

しかし、このコードは機能していないようです。そのため、IF-ELSEステートメントは常にelseになります。

これは私のコードです:

このサンプル XML を試してみましたがXXX、フィールドrevisionに値がある場合は常に結果が得られません。(これは常にelseステートメントに移動します)

現在の結果:

期待される結果

これについてのアイデアはありますか?

アップデート

以下のHarが推奨するように、コードを次のように変更します。

しかし、結果は同じようです。それはまだelse()ステートメントに行きます。何か案は?

前にありがとう。

0 投票する
2 に答える
294 参照

xml - 常に XQUERY を使用して一部の XML オプション要素/ノードを出力する方法

.csv ファイルへの書き込み中に、(データの可用性に関係なく) オプションの XML 要素を常に出力する必要があるという要件があります。

XML ファイル形式

ここで 'entries' ルート要素 'cancelReason'、'testAccount' はオプションの要素で、データが存在する場合にのみ使用できます。

つまり、これらの「オプション」フィールドを持つレコードもあれば、持たないレコードもあります。

これらすべての要素を抽出する XQuery を作成しました

私の要件は、すべての必須要素とオプション要素を OUTPUT として抽出することです。つまり、出力メタデータは常に同じままです。オプションの「cancelReason」に値がない場合は、空白/null として入力されます [そのようなもの]

これを実現するために記述できる XQUERY のオプションを教えてください。

0 投票する
1 に答える
219 参照

xquery - XQuery-Update: 挿入式のターゲット ノードは更新できません

このコードの実行

Saxon-EE 9.6.0.7 (フォーム Oxygen 18) でエラーが発生する

挿入式のターゲット ノードは更新できません

BaseX が返す<foo><bar/></foo>

誰が正しいですか?doc() (Saxonで動作する)によってロードされたものだけでなく、xml式を変更する別の方法はありますか?

0 投票する
1 に答える
199 参照

command-line - oXygen 17.1へのアップデート後にコマンドラインからXQuery Updateを呼び出す

この 1 年間、Saxon を使用して Windows コマンド ラインから一連の XQuery Update を呼び出すために作成したバッチ スクリプトを実行してきました。oXygen 16 を使用している間は問題なく動作しましたが、部門内のすべてのマシンが oXygen 17.1 にアップグレードされた後、スクリプトは現在、修正できないように見えるエラーをスローしています。どんな考えでも大歓迎です。

これは、oXygen 16 がインストールされたときに機能していました。

.jar ファイルが同じ相対位置にあり (oXygen のバージョン番号だけがパスに変更されています)、以前と同じ名前であることを確認しました。それにもかかわらず、クラス パスを「C:\Program Files\Oxygen XML Editor 17\lib\saxon9ee.jar」に更新した後、スクリプトは次のエラーをスローします。

Saxonica の Saxon-EE 9.6.0.7J

Java バージョン 1.8.0_92

java.lang.UnsupportedOperationException: XQuery Update は、この Saxon 構成ではサポートされていません

net.sf.saxon.s9api.XQueryCompiler.setUpdatingEnabled (XQueryCompiler.java:212) で

net.sf.saxon.Query.doQuery(Query.java:281) で

net.sf.saxon.Query.main(Query.java:111) で

クエリ中の致命的なエラー: java.lang.UnsupportedOperationException: XQuery Update is not supported in this Saxon Configuration

ファイル名、ディレクトリ名、またはボリューム ラベルの構文が正しくありません。

私のマシンには Java 8 がインストールされています。また、XQuery Update が oXygen エディター内から呼び出された場合でも機能することを確認しました。

http://www.saxonica.com/documentation9.6/index.html#!using-xquery/commandlineおよびhttp://www.saxonica.com/documentation9.6/index.html#!conformance/を読んだ後update、 -tree:linked フラグと -qversion:1.0 フラグを追加しました (同じエラー メッセージが表示されます)。

ドキュメントによると、-update:on フラグが設定されていて、XML が doc() または collection() 関数を使用して読み込まれている場合、XQuery Update を実行する必要があります。 XQuery ファイルからの変数:

他に何をしようか途方に暮れています。誰かがここで何がうまくいかないかを見ることができれば、私はどんなポインタでも大歓迎です!

0 投票する
1 に答える
132 参照

svg - BaseX での属性の複数の更新

BaseX の Xquery 関数で SVG タグのいくつかの属性を更新しようとしています。これまでのところ、1 つの属性を更新して新しいノードを返すことはできましたが、複数の属性を返すことはできませんでした。

ここで説明されているステートメントのバリエーションとして複数の更新を試みましたが、何を試してもうまくいきませんでした。

上記の機能は、基本的に私が達成したいものです。

0 投票する
0 に答える
66 参照

xquery - xsd ファイルを Sedna db にロードし、一意の要素を挿入します

私は Sedna データベース 3.5 に基づいて学術プロジェクトを開発していることに注意してください。データベースには 4 つの XML ファイルがあり、それぞれに独自のスキーマ ファイルがあります。最初の質問: これらの XSD ファイルをどのようにロードできますか?? XML および XSD ファイルを含むコレクションを読み込もうとしましたが、コレクションはすべてのファイルに対して 1 つのスキーマ用であり、ファイルごとに異なるスキーマを持っていることがわかりました。 Sedna .net APIを使用している間、ネットアプリケーション(cmd.exeからではありません)、次のようなSednaアップロード機能を使用します:

しかし、彼らのxsdファイルに対して何ができますか???

2 番目の質問: xsd ファイルを正しくロードした後、いくつかのファイルに新しいノードを挿入するクエリがありますが、スキーマでプライマリ/一意キーを考慮しますが、正しければ Sedna は一意性を気にしません。挿入前にトリガーを作成して、挿入された値が既に存在するかどうかを確認しますよね?もしそうなら、どのようにこのトリガーを実装し、いつ呼び出すことができますか (.net アプリケーションでビルドすると、アプリケーションを実行するたびに作成されますか??)

ご意見をお聞かせください