問題タブ [owl-api]
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 - Protege が DatatypeProperty のコピーを ObjectProperty として作成する理由
Protege は、私が DatatypeProperty として作成した「コピー」プロパティを作成し、それらを ObjectProperty としてマークしていることに気付きました。これにより、同時にデータ型とオブジェクト プロパティの両方になります。OWLファイルで手動で修正しようとしました。範囲として「xsd:string」を割り当てます。何も役に立ちません。
Protege は OWL ファイルを読み込み、修正したばかりのプロパティを両方のリストに表示します。何かを変更してオントロジーを OWL ファイルに保存すると、2 つのエントリが作成されます。
さらに「面白い」のは、(xsd:string への) Range 仕様が、元の Datatype ではなく、ObjectProperty エントリに設定されていることです。
何か案は?
ここに例があります。
"オリジナル"
Protege によって追加されたコピー (rdfs:range がコピーに移動されていることに注意してください)
更新:これは、保護者で開いた後に上記の問題が発生する最小限のオントロジーです。
そして、それをファイルに保存した後:
owl - テキスト ファイルから OWL オントロジー (Protege) への個体のインポート
基本的に、.txt の新しい行にそれぞれ数千の名前の大きなファイルがあります。Protege を使用してオントロジーを構築していますが、これらの名前を個人としてオントロジーの概念「人」に挿入するためのより迅速な方法が必要です。プロテジの追加ボタンをクリックし、各名前を入力/コピーして「人」の概念に追加すると、プロテジまたはOWL APIを使用してこれを行うことができますが、時間がかかります。
提案をありがとう。
owl - OWL API + DB を備えたオンライン オントロジー エディタ?
私は Web オントロジー管理システム (OMS) に取り組んでいます。アプリケーションは、オントロジーの作成、エディター (OMS の一部) での開発/編集を可能にする必要があり、もちろんすべてがブラウザーでオンラインで実行されます。エディターは、推論 (関係の推測、矛盾の検出) を実行し、SPARQL クエリを評価する可能性を提供する必要があります。
私のアイデアは、エディターで OWL API を使用してオントロジー (クラス/プロパティ/個人などを追加/編集/削除) を操作し、推論を呼び出すことでした。ここまでは順調ですね。しかし、次に疑問が生じました。オントロジーをどこに、どのように保存するかです。オントロジーを保存したいグラフ データベース (Noe4j、Stardog など) をいくつか調べました。しかし、その後行き詰まりました。
グラフ DB から OWL API へのオントロジーを取得する方法がわかりません。
現時点では、OWL API とグラフ DB を使用するという私の全体的な概念が正しいか、可能かどうかさえわかりません。全体像の中で重要な事実を見逃した印象があります。
テキスト ファイルを使用してシリアル化されたオントロジーをサーバーに保存し、グラフ DB を使用しないでください。それとも、別の方法で設計から OWL API を削除し、他のコンポーネントを使用する必要がありますか?
どんな助けやヒントにも感謝します!
jsp - sparql-dl と owlapi を使用したセマンティック検索
Tomcat を j2ee サーバーとして使用する jsp ベースの Web アプリケーションを使用しています。セマンティック検索を実装するために必要な手順を教えてください。
以下のコードを追加しました。
上記のコード スニペットは、実行されたクエリの文字列値を返すメソッドを示しており、正しく返されています。ただし、Java サーブレット内で値を取得しようとすると、エラーが発生します。
上記のコードはサーブレットで使用されました。どうすればこれを解決できますか? 前もって感謝します
これは、表示されるエラー画面のスクリーンショットです。http://tinypic.com/r/2cnxj87/8
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é「と同等」と個人の所有物で本当に混同しています..
owl - クラスのOWL api検索プロパティ
オントロジー ファイルがあり、その中のすべてのクラスを取得できます (OWL-API を使用しています)。さて、ファイル .owl に存在する各クラス、データ プロパティ、およびオブジェクト プロパティを取得する必要がありますが、OWL-API を使用してそれらを取得する方法はありますか?