MarkLogic
には、セマンティック推論で使用できる複数のAPI
が用意されています。セマンティック
API
は、実際の推論クエリの一部として使用できます(クエリするトリ プルおよび適用するルールを指定します)。データベースAPI
は、特定のデータベース によって推論で使用されるルールセットを選択する目的で使用できます。管理API
は、アプリケーションサーバーまたはタスクサーバーで推論に使用されるメモリを制御でき ます。
7.4.1
セマンティックAPI
MarkLogic
のセマンティックAPI
は、トリプル管理、推論、および個々のクエリで(またはデータベースのデフォルトで)使用されるルールセットの指定に使用できます。
注:
sem:in-memory-store関数は、推奨されないsem:sparql-triples関数
(MarkLogic 7で使用可能)よりも優先してsem:sparqlと併用してくださ い。現在は、sem:sparqlのcts:query引数も推奨されていません。
インメモリのトリプルに基づくストア(つまり、sem:in-memory-storeによって作成され たストア)でsem:sparql-updateを呼び出すと、ディスク上にはないインメモリのトリ プルを更新できないため、エラーが発生します。同様に、複数のストアを
sem:sparql-updateに渡す場合も、それらのうちのいずれかがインメモリのトリプルに基
づく場合は、エラーが発生します。
セマンティック
API
説明sem:store sem:sparqlのクエリ引数では、クエリで使用するトリプルの
ソースとしてsem:store値を利用できるようになりました。複
数のsem:store値を指定した場合は、すべてのソースからのト
リプルがマージされてクエリされます。
sem:store値には、
1
つあるいは複数のオプションと1
つのcts:queryを含めることができます。sem:storeパラメータは、
sem:sparql-updateおよびsem:sparql-valuesと併用することも できます。
sem:in-memory-store トリプルの集まりを表現するsem:store値を返します。
このトリプルの集まりは、引数として渡されたsem:triple値 に由来します。現在のデータベースで設定されたデフォルト ルールセットは、
sem:in-memory-storeで作成されたsem:storeに影響しません。
sem:ruleset-store 元のトリプルに加え、sem:store内のトリプルにルールセット
を適用することで生成されるトリプルの集まりを表現する新 しいsem:store値を返します。
7.4.2
データベースルールセットAPI
次のデータベースルールセット
API
は、データベースに関連付けられたルールセット を管理する目的で使用します。ルールセット
API
説明admin:database-ruleset データベースで推論に使用するルールセット
要素。
1
つあるいは複数のルールセットを推 論に使用できます。デフォルトでは、ルール セットは設定されていません。admin:database-get-default-rulesets データベースのデフォルトルールセットを返 します。
admin:database-add-default-ruleset データベースで推論に使用するルールセット
を追加します。1つあるいは複数のルール セットを推論に使用できます。デフォルトで は、ルールセットは設定されていません。
admin:database-delete-default-ruleset データベースが推論に使用するデフォルト ルールセットを削除します。
7.4.3
管理API
次の管理
API
は、推論に割り当てるメモリサイズ(デフォルト、最小、および最大)を管理する目的で使用します。
管理
API(admin:)
説明admin:appserver-set-default-inference-size このアプリケーションサーバーにおけ るリクエストの推論サイズのデフォル ト値を指定します。
admin:appserver-get-default-inference-size アプリケーションサーバーによる推論
で、sem:storeが使用できるデフォル
トのメモリ量(
MB
単位)を返しま す。admin:taskserver-set-default-inference-size このタスクサーバーにおけるリクエス トの推論サイズのデフォルト値を指定 します。
admin:taskserver-get-default-inference-size タスクサーバーによる推論で、
sem:storeが使用できるデフォルトの
メモリ量(
MB
単位)を返します。admin:appserver-set-max-inference-size リクエストの推論サイズの上限を指定 します。推論サイズは、このアプリ ケーションサーバーでsem:storeが推 論を実行するために使用できる最大の メモリ量(MB単位)です。
admin:appserver-get-max-inference-size アプリケーションサーバーによる推論
で、sem:storeが使用できる最大のメ
モリ量(MB単位)を返します。
admin:taskserver-set-max-inference-size リクエストの推論サイズの上限を指定 します。推論サイズは、このタスク サーバーでsem:storeが推論を実行す るために使用できる最大のメモリ量
(
MB
単位)です。admin:taskserver-get-max-inference-size タスクサーバーによる推論で、
sem:storeが使用できる最大のメモリ
量(