問題タブ [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.
java - OWLOntology のディープ コピーを作成する方法
私のプログラムでは、 のインスタンスのディープ コピーを作成する必要がありますOWLOntology
。
新しいを作成する必要があると思いますOWLOntologyManager
:
ここで、特定の OWLOntology の DEEP コピーであるオントロジーをマネージャに追加したいと考えています。ドキュメントからオントロジーを再度ロードしたくありません。時間がかかるからです。
どうすれば簡単にそれを行うことができますか?
java - オントロジーをロードするとき、loadOntologyFromOntologyDocument メソッドは推論を使用しますか?
私のローカルホストでホストされているフクロウファイルからオントロジーをロードするのに、なぜそんなに時間がかかるのだろうと思っています。クラスのメソッドを使用し
loadOntologyFromOntologyDocument(IRI iri)
ます。OWLOntologyManagerImpl
ローディングは一貫性をチェックするためになんらかの理由を使用していますか? 私が読み込んでいるフクロウのファイルはそれほど大きくありません。約 200 のクラスが含まれています。
java - OWL API オブジェクトを Java オブジェクトに変換する方法は?
オントロジーを操作するために OWL API を使用しています。OWLObjects (OWLEntity、OWLClass など) に対応する独自の Java オブジェクトを作成したいと考えています。これどうやってするの?
これを実現するには、OWLEntity オブジェクトの名前 (文字列) を取得する方法を知る必要があると思います。しかし、どのように?OWL API Javadoc とチュートリアルを検索しましたが、方法がわかりません。
アプリケーションのデータ構造があります。そして、データはオントロジーに格納されます。上記のコード例を追加しました。
その Arg オブジェクトのメンバー変数は、オントロジー データで埋められる必要があります。たとえば、Class SomeArg1、SomeArg2、... オントロジーに子クラスと制限があり、エンティティ名と関連する制限などを取得して、Arg オブジェクトの適切な変数を埋めたいと考えています。
owl - OWL、プロテジ: DefaultOWLObjectProperty 値から個体のクラスへの取得
Stanford OWL API を使用しようとしていますが、ドキュメントが少し不明確です。Java を使用して、あるユーザーが Protégé 経由で作成したオントロジーを読み込み、DefaultOWLObjectProperty
. そのプロパティの値は、オントロジーのあるクラスの個体であることを意味します。どうすればクラスを見つけることができますか? 以下のコード スニペット:
のクラスを取得したいですvalInd
。
java - フクロウのクラスと Java クラスの間で効率的かつ高速なマッピングを行うにはどうすればよいですか?
Hermit OWL推論器を使用してユーザー入力データを推論するアプリケーションを作成しようとしています。さまざまな OWLAPI メソッドを使用して、OWL クラスから Java クラスへのマッピング、およびその他の方法でのマッピングを既に作成しました。
あとは、オントロジーから抽出された多数の OWL 個体を、Java プログラムが関連する Java クラスに自動的に変換できるようにする何らかのマッピングを作成するだけです。
現在、私は次のことを念頭に置いています: OWL クラスの名前のリストをキーとして含み、キーの値として Java クラスの名前を含むハッシュマップ。キーを検索すると、Java リフレクションを使用してクラスをインスタンス化できます。この方法の唯一の欠点は、おそらく非常に遅くなるということですか?
誰かが上記を行うためのより良いアイデアを持っていますか?
前もって感謝します!
トム DC
編集:
Java クラスに変換した OWL クラスの例 (クラスが大きすぎてここに投稿できませんでした): http://pastebin.com/aEsjvDN7
例でわかるように、OWL IRI を見て、どのオブジェクトを選択する必要があるかを決定する関数を作成することで、マッピングを簡単にすることを既に試みました。JAXB または hashmap を使用する場合、この関数はおそらく時代遅れで役に立ちません。
java - Javaで文字列をOWLオブジェクトプロパティに変換するには?
Java で DL クエリ パーサーを作成しています。メソッド getObjectPropertyValues() を使用する必要があります。Java で文字列を OWL オブジェクト プロパティ式に変換する方法について、サンプル コードを教えてください。
owl - DL クエリ パーサーが特定のクエリに対して空を返す
Java で DL クエリ パーサーを作成しています。入力としてクラス名を指定すると、コードは正しい出力を返しますが、「hasColor value Red」や「hasSugar value Dry」などのクエリを指定すると、何も返されません。私は OWLAPI を使用しています。
java - OWLapiで専用クラスのサブクラスを取得するにはどうすればよいですか?
入力クラスのサブクラスをロードするメソッドを作成しようとしています。このコードは、OWL API 3.1.x (Pizza.owl) で作成された RDF ファイルでは問題なく動作していましたが、OWL API 3.4.x バージョンで生成されたファイルでは動作しません。
以下は私が書いたコードです:
これは、OWL API 3.4.2 によって生成されたフクロウ ファイルです。
2つのクラスからなる非常にシンプルなオントロジーで、AdultはPersonのサブクラスです