問題タブ [marklogic-8]
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.
marklogic - Marklogic Content Pump と XSLT 変換
MarkLogic Content Pump を使用して XML ドキュメントを取り込みます。「-tranform モジュールと -transform 名前空間」オプションを使用して、mlcp 取り込みプロセスでこれらの xml ドキュメントを変換したいと考えています。変換用の XSLT を既に作成し、ML の「モジュール」データベースにもロードしました。しかし、mlcp は xslt ファイルを受け入れず、エラーをスローします。
指図:
以下のエラーがスローされます ERROR:
xslt 変換が mlcp で受け入れられるかどうかを知りたいですか? そうでない場合、代替手段は何ですか。
モジュールデータベースに同等の xqy ファイルを作成する MarkLogic。以下の「.xqy」ファイルを呼び出すと、パラメーターの不一致エラーがスローされます。これは、戻り値の型が間違っているためだと思います。
marklogic - Marklogic Content Pump は、XSLT 変換によって複数のドキュメントを生成します
これは、MarkLogic コンテンツ ポンプユーティリティに関連する 2 番目の質問です。
複数のレコードを含む単一の集約された XML ドキュメントを MarkLogic コンテンツ ポンプに取り込んでいます。集約 XML ドキュメントが別の形式に変換され、コンテンツ ポンプ ユーティリティが単一の入力された大きな xml ドキュメントから複数の xml ドキュメントを生成することを期待しています。
例: 集約された入力 xml ドキュメント:
コンテンツ ポンプからの予期される出力: 異なる形式の 2 つのドキュメント:
文書 1 :
資料2
上記のドキュメントを 2 つのノードに分割するために、次の XSLT を使用しています。
出力:
以下は、上記の「XSLT ファイル」を呼び出して 2 つのノードを生成する XQuery 変換です。
上記の XQuery 変換は失敗し、エラーが返されます。では、上記の XQuery プログラムを変更して、1 つの文書から複数の変換済み XML 文書を生成して索引付けするにはどうすればよいでしょうか?
MLCP コマンド:
marklogic - グラフのクリア/ドロップ後の MarkLogic Sparql 挿入
グラフをクリア/ドロップした後、Query Console から。ResourceManager と SJS を使用して Java からトリプルを挿入しようとしています。挿入されませんが、Java を使用して再試行すると、数分後 (たとえば 5 分) に挿入されます。
base64 - base64 rtf doc を xml に変換するのに十分なメモリがありませんか?
わかりました、MarkLogic で base64 でエンコードされた rtf ドキュメントをデコードしようとしています。
次のエラーが表示されます。
ランニングのみ
rtfファイルをデコードしますが、本当に面倒です...
サーバーに十分なメモリーがありませんか?
xquery - search:search でのファセット数による並べ替え
ファセット数に基づいて結果を並べ替えたい。search:search でそれを行うにはどうすればよいですか?
今のところ、私はこのクエリを使用しています-
オプションを変更して、ファセット結果をファセット数で並べ替えられるようにしたいと考えています。
triggers - トリガーで作成されたばかりのドキュメントが見つかりません
次の問題があります。MarkLogic の OBI フレームワークを使用します。データベース内のトリガーを使用して、受信するセンサー データを監視します。新しい OBI ソースが読み込まれるとすぐに、いくつかチェックします。何かを見つけたら、「Alert」オブジェクトを作成します。次に、そのオブジェクトを使用して「ペイロード」メッセージを生成し、モバイル デバイスに送信したいと思います...
これでトリガーが機能します。トリガーでは、別のトランザクションで xdmp:eval を使用して、同じトリガー コードで作成されたドキュメントを使用できることを確認します...しかし、新しく作成されたオブジェクトを検索しても見つかりません...
ドキュメントを作成して、同じトリガー コードで使用できますか?
ここで最小限の実用的な例を作成するのは難しいと思いますが、これは試してみます:
関連するトリガー コード:
OBI オブジェクトを作成する関数は lib にあります。必要に応じて共有できます。適切なトリガーを使用していることを確認するために、ログ行「test」と「test B」を追加しました。そして、それらが app-specific.rb で展開時に再構築されていることを確認します。
次に、ログから、オブジェクトが見つからないことは明らかです。
トリガーが実行された後、QC から ID 4d1fd4e4-2911-40b0-848c-ccf8eaa39229 のオブジェクトを見つけることができます。
つまり、これは MarkLogic のトランザクション モデルに関係していると思います。
もう一度質問します: xdmp:eval で作成したばかりのオブジェクトが見つからないのはなぜですか?
xquery - 重量 (cts:collection-query)
cts:collection-queryで加重検索を実行したい。これを行う方法はありますか?
正確にやりたいことは、コレクションからドキュメントを取得し、cts:element-range-queryで行うのと同様の方法で異なる重みを付けたいということです。