問題タブ [jena-rules]
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.
rdf - Jena ルールにタイマーを追加しますか?
私は一連の Jena ルールを設計しました。これらのルールの一部は、結果を返さずに非常に長い間機能し続けます。ルールが無限ループに入っているかどうかを確認するために、OWL ファイルを縮小しようとしました。幸いなことに、無限ループがあるようには見えず、少数のクラス (たとえば 100) は非常に高速に処理されます。ただし、クラスを 1 つでも追加すると、処理に時間がかかります。
各ルールにタイマーを追加する方法はありますか?たとえば、結果を返さずに一定時間以上かかる場合にルールを終了する方法はありますか? 可能であれば、どうすればよいですか?そうでない場合、同様の結果を達成する回避策はありますか?
私のイエナのルール
私のオントロジーの一部
java - SWRL ルールから Jena ルールを作成する
Jena ルールの作成方法を教えてください。私のSWRLルールがあります
ありがとうございます
rdf - Jena ルール内で個人を作成する
私は多くの個人とのオントロジーを持っており、Jena 推論を使用してそれらに関する情報を取得しています。私の目標は、そのルール内の特定の情報に基づいて新しい個人を作成し、それらにプロパティを割り当てることです。個体に名前を付ける必要はありませんが、型が必要で、いくつかのプロパティの一部である必要があります。現時点では、(メーリング リストへの投稿の助けを借りて) 匿名の個人を作成できますが、指定できるのは 1 つの型または 1 つのプロパティのみです。
これが私の問題の小さな例です。私のルールは次のようになります (オントロジーと推論された結果は下部にあります):
[test2: (?X rdf:type NS:Test1) ->
[(?Y rdf:type NS:Test2) <- makeSkolem(?Y, ?X)]]
これは、Test1 個体が見つかると、新しい空のノードが作成され、そのノードにタイプ Test2 が与えられることを意味します。正常に動作しますが、この新しい個体に分類と ?X (Test1 個体) へのポインター (プロパティ) を与えたいと考えています。
次のようなものは機能しません。「後方規則では先頭句が 1 つしか許可されない」ためです。ただし、その句のすべての句は完全に正常に機能します。
[test2: (?X rdf:type NS:Test1) ->
[(?Y rdf:type NS:Test2), (?Y NS:hasClassification 'test'), <- makeSkolem(?Y, ?X)]]
これは私のオントロジーです:
これは最初のルールの結果です (IDA0
を持つ空白のノードA1
が新しい個体です)。
java - GenericRuleReasonerFactory によってどのような推論が生成されますか?
いくつかのルールを設計しましたが、Jena のGenericRuleReasonerFactoryによって返される理由が何であるか疑問に思っています (次のコードに示すように)。Racer、Pellet、または HermiT ですか?
jena - イエナの推論: 結論に新しいリソースを動的に追加する
これまで見てきたことから、すべての Jena 推論ルールは次の形式になっています。
これは、結論に新しいリソースを追加できないことを意味します。私が必要としているのは、ルールの結論で動的に名前を付けて新しいリソースを追加することです。誰かが私に解決策を教えてもらえますか?
rdf - Jena ルールの 'fb' と 'b' の意味 //OWL、RDFS
プレフィックス b と fb がわからないJena ルールがあります。各 OWL ファイルと RDFS ファイルの違いは何ですか?
PS。ダウンロード URL は https://jena.apache.org/download/index.cgiで、jena-2.11.1-source-release.zip (MD5、PGP) をクリックします。
rules dir -> jena-core/src/main/resources/etc
jena - イエナの組み込みプリミティブ?
いくつかの組み込みプリミティブについて質問があります。ビルトインを使用することは可能ですか: DateTime 型にも差、最小、最大、合計、またはこの目的のためにカスタムビルトインを作成することをお勧めしますか? それらは整数と浮動小数点で正常に動作しますが、DateTime 型ではないようです (または、使用した構文が間違っている可能性があります)。