問題タブ [swrl]
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.
rules - SWRLルールの目的は何ですか?
SWRLルールの目的を誰かが説明できますか。私が理解している限り、SWRLルールはSQLのストアドプロシージャと同じです。私はいくつかのルールを作成しましたが、クエリを介してアプリケーションでそれらを利用する方法がわかりません。SWRLルールが正しい方法で考えているかどうかはわかりません。正しい使い方を教えてください。
このルールを見てください:
私のオントロジーにはPatientクラスがありますが、Sickクラスはなく、hasValue_heartrateプロパティもありません。だから私はこれらを作成する必要がありますか?または、オントロジーで上記のルールをどのように使用できますか?
sparql - SWRL ルールがオントロジーに適用されない
私は、天気が人々の健康にどのように影響するか (気象病) について卒業論文を書いています。オントロジーは、このリンクの図に示されています: http://dl.dropbox.com/u/5322973/WeatherHealthcast1%20-%20Properties.PNG
そこで、簡単な SWRL ルールを作成しました。
これは、気温が 25°C を超える場合、患者が片頭痛を患っている可能性が高いことを意味します (片頭痛 1 は「疾患」クラスの個人です) オントロジーにいくつかの個人を入力し、SQWRL を実行しようとしましたクエリ ルール
そしてそれはうまくいきます。しかし、SPARQL クエリを実行しようとすると、次のようになります。
ルールが適用されないようです (この SPARQL クエリでは、気温が 30°C の場合に考えられるすべての病気を取得したいと考えています)。これを機能させる方法、SWRLルールをSPARQLクエリに含める方法を知っている人はいますか?
semantic-web - ORステートメントを使用したSWRLルール
ORタイプのステートメントを使用する必要があるSWRLルールを実装する方法を見つけようとしています。シナリオは次のとおりです。オントロジーには、「hasProcess」のオブジェクトプロパティといくつかのプロセスクラスを持つクラス「MachineTool」があります。hasProcess値が「EndMilling」または「Drilling」のMachineToolの個人のリストを取得できるようにする必要があります。
'または'ステートメントが許可された場合、SWRLルールは次のようになります。
しかし、そのルールは合法ではありません。誰かが私たちが探していることを達成できるルール(またはルールのセット)を知っていますか?私は1つの代替案があり得ると思っていました(しかしそれをテストしていません、Protegeは現在奇妙です):
私はこの問題についてのすべての考えを歓迎します。
jena - ペレットにSWRLルールが含まれていません
SWRLルールを使用して推論するオントロジーを構築します。ProtegeでSQWRLクエリを実行すると、正常に機能します。問題は、JenaでPelletを使用したい場合、PelletがクエリにSWRLルールを含めていないように見えることです。私はこのようにペレットを含めます:
私もこれを試しました:
しかし、進歩はありません。何か案は?私の卒業論文にはこれが必要です。ありがとう
jena - Jena SWRL ルールから Java メソッドを起動することは可能ですか?
私は、オントロジー ベースのコンテキスト管理とプロセス ベースのコンテキスト管理に関するパフォーマンス分析に取り組んでいます。ただし、PCM のケース スタディで同様のシナリオを作成するには、推論中に Jena SWRL ルールから直接 Java メソッドを起動する必要があります。私は無駄に多くの研究を行ってきましたが、私の教授はイエナでそれが可能であると主張しています. 例えば、
jena - JenaFrameworkのSWRLルールに関するPelletによる推論
Jenaフレームワークを使用して、Protoge4.2で構築された既存のオントロジーを編集しようとしています。つまり、プロパティ値を変更するか、個人またはクラスを追加してから推論を行います。オントロジーで、hasAge(?p、?age)^ swrlb:greaterThan(?age、18)-> Adult(?p)のようなルールがあると仮定します。イエナ側のhasAgeプロパティを変更して、誰かが大人かどうかを確認できるようにしたいと思います。これに関するサンプルコードを教えてください。どんな助けでも大歓迎です。
semantics - Protege4のSWRLタブ
protegeSWRLタブはProtege4バージョンでは使用できません。protege4.1とprotege4.2の両方を試しました。protegeでSWRLルールを編集するために言及されたaxiomeプラグインは、protege3バージョンでのみ機能すると言われています。
誰かがプラグインまたはプラグインをプロテッジのSWRLルールを編集するために含める手順を教えてもらえますか?
ontology - オントロジーに関する私のルールが機能しない理由
SWRL ルールがオントロジー内の個人間の新しい関係をどのように推論するかをテストするために簡単なオントロジーを構築しましたが、うまくいきませんでした。私のルールは次のとおりです。
そして次のように読むことができます
x には父親 y がいて、x には母親 z がいます → y は z の配偶者です)。
私のオントロジーには、夫、妻、息子の 3 人の個人がいます。私は子供が母親が妻であり、父親が夫であると設定しました。そして、夫が妻の配偶者であることを設定するために、私のルールが採用されています。Jessプラグインを使用してルールをテストしましたが、結果はありませんでした。ルールが機能しないのはなぜですか?私のルールに何か問題がありますか、それとも Protege 3.3 の Jess に何か問題がありますか?
semantic-web - OWL式間の論理的含意関係をチェックしていますか?
簡単な答えがないと思われる簡単な質問があります。基本的に、ある OWL 式 (#B) が別の OWL 式 (#A) から論理的に続くことが正しいかどうかを確認したいのですが、言い換えると、#A -> #B は本当ですか?
この理由は、知識ベース (#KnowledgeStructure クラスで表される) の構造を、現在のアプリケーション状態 (#StateRequirement) のニーズを記述する構造に一致させるアプリケーションのマッチング アルゴリズムを作成しているためです。どちらの構造にも、第 3 の種類の構造 (#Model) の状態に対する OWL 式を表す文字列値を持つプロパティがあります。これらは次のとおりです。 #Model に適用される知識構造がどのように #Model を変換するかを表す #KnowledgeStructure.PostCondition。#StateRequirement.GoalCondition は、アプリケーションが達成しようとする #Model 状態を表します。したがって、#KnowledgeStructure.PostCondition が目的の #StateRequiremment.GoalCondition を生成することを確認することによって、#KnowledgeStructure が #StateRequirement を満たすかどうかを確認したいと思います。これを次のように抽象的に表現できます: (#KnowledgeStructure.Postcondition => #StateRequirement.GoalCondition) => Match(#KnowledgeStructure, #StateRequirement). これを ((#A -> #B) -> Match(#A, #B)) のように表現することもできますが、#A と #B はどちらも有効な OWL 式です。
一般的なケースでは、次のルールを表現できるようにしたいと考えています。
本質的に、私の質問は次のとおりです。OWLでそのようなルールを設定または実現するにはどうすればよいですか? ある式が別の式の後に続くかどうかをテストするにはどうすればよいですか? また、既存の推論は、この関係が明示的に述べられていない場合、2 つの式の間の関係 #A -> #B を決定するのに十分強力ですか?
ontology - SQWRL クエリと SWRL ルールのデータベース
Protégé を使用してオントロジーを構築しましたが、それにデータを書き込むにはどうすればよいですか? 別のデータベースが必要ですか? このリンクをたどりました。データベースは SQL で作成されましたが、そこにデータを配置する方法がわかりません。そして、オントロジーに従ってテーブルと列を一致させる方法は? すべてを手動で作成する必要がありますか? またはインポートを行うことができますか?