問題タブ [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.
owl - SWRL ルールに基づいてプロパティに値を割り当てる (推論としてペレットを使用した Protege 4.3)
私の質問は SWRL ルールに関連しており、実際には別のユーザーからすでに質問されています ( Protégé-OWL / SWRL のオントロジー プロパティ定義を参照)。それでも、それを機能させる方法に関する指示に従った後、私は成功しませんでした.
私のオントロジーでは、いくつかの複雑な時間的事実 (時間間隔などに関連するもの) を扱う必要があるため、Time Ontologyをインポートします。実際の問題に取り組む前に、簡単な例を考えて、SWRL ルールに基づいてデータ プロパティに値を割り当てる方法をテストします。簡単な例では、クラスPersonを扱います。クラスBirthYear (時間オントロジーのInstantクラスのサブクラス) もあります。ドメインPersonと範囲BirthYearを持つオブジェクト プロパティBornInYearは、個人とその誕生年を関連付けます。今年の人の年齢を計算したいので、次の SWRL ルールを作成します。
Person(?p) ∧bornInYear(?p, ?birthYear) ∧subtract(?age, 2014, ?birthYear) → age(?p, ?age)
クラスPersonの個体を作成し、彼/彼女のBirthYearの値がであるとアサートした後、Pellet は"1977"
この人物の年齢が37であると計算することを期待します。これは起こりません。理由はありますか?SWRL ルールは正しいですか? 37
(値がデータ プロパティageにアサートされているかどうかを知るために、個々の p の [プロパティ アサーション] ビューを確認します。また、推論設定で [オブジェクト プロパティ アサーション] チェック ボックスがオンになっていることも確認します。 .) 私のオントロジーの例は次のようになります。
semantic-web - Protege 4.2 とルール エディター
私はprotege 4.2に取り組んでおり、ルールエディターでルールを記述しようとしているペレット推論器を使用してルールエディターを使用していますが、推論を推測したり実行したりして、症状がある場合に私のルールのような結論を見つける方法を理解できませんfibrillation と筋肉痛 そして彼は障害に苦しんでいます Muscle_pain ここでルールを使用してそれを書く方法
java - OWL API を介してオントロジーにアクセスする
Eclipse を使用して OWL API を介してオントロジーと SWRL ルールにアクセスしたいと考えています。何をすべきかを教えてくれる正確な手順を手伝ってくれる人はいますか?
次のコードを試しましたが、応答がないようです。私のJavaスキルは非常に貧弱であることを覚えておいてください。
この問題を解決する方法について正確な手順が必要です。
私がすでに持っているコードは次のとおりです。
protege - SWRL ルール内の選言
Protege 4.3 を使用して、いくつかの SWRL ルールを作成しています。その中に選言を含むルールを書くことは可能ですか?例えば:
10歳未満または30歳以上のすべての人を意味します
reasoning - SWRL ルール内の等しい命令が機能しない
Protege 4.3 を使用して、いくつかの SWRL ルールを作成しています。
「name」というプロパティを持つ「Person」というクラスが 1 つあります。
クラスから異なる名前の個人を作成しましたが、一部の名前は同じです。
「sameName」というプロパティのインスタンスを作成して、同じ名前を持つ人々をバインドするルールを書きたいと思います。そこで、次のルールを書きました。
ルールは正しい結果をもたらしましたが、すべての人を自分自身と比較することを意味しますが、すべての人を自分自身と比較することを意味します。
結果は空でした。私は何か見落としてますか?
java - OWL APIを使用してSWRLリクエストを行う
Protégé を使用して生成された OWL ファイルを使用しています。Java コードで OWL API を使用しています。定義済みのクラスのセットがあります。たとえば、次のとおりです。
SpeciesA ⊑ Species ⊓ ∃hasPart.Fruit ⊓ =hasShape.round
SpeciesA はサブクラスの Species であり、いくつかの Fruit を持ち、Shape 値は Round です。
これはすべて Protégé で定義され、OWL にエクスポートされ、Java のオントロジーに読み込まれます。種の個体 x を作成し、プロパティがあった場合
- hasPart(x,フルーツA)
- hasShape(x,Round)
個人が属するすべてのクラスを取得します (この場合、これには SpeciesA が含まれている必要があります)。
SWRL Species(?x)^hasPart(?x,Fruit)^hasShape(?x,"$Round$") を使用できますか?それとも Reasoner を使用する必要がありますか?
Protégé「と同等」と個人の所有物で本当に混同しています..