私は2つの異なるオントロジーを持っています:1つは映画ジャンル用でもう1つは映画認証用です。私は、x
(例えば、PG-13
)とジャンルy
(例えば、action
)の映画を見つけることができるSPARQLのクエリを書いてみたいと思います。両方のオントロジーは異なっており、Apache Jenaにアップロードしています。2つの異なるオントロジーでクエリを作成する方法は?
これらは私のオントロジーです:
PREFIX o2: <http://www.semanticweb.org/administrator/ontologies/2016/11/genre_ontology#>
PREFIX o1: <http://www.semanticweb.org/administrator/ontologies/2016/11/certification_ontology#>
私はジャンルや認定を持つ映画を見つけたいです。私のクエリは、ここに
SELECT ?x ?z
WHERE {
?x o1:hasCertificationOf ?y.
?z o2:hasGenre ?a.
FILTER regex(str(?y),"R_") FILTER regex (str(?a),"Adventure")
}
R
あるRestricted
認定
クエリ結果でx
とz
で映画を含んでいますが、私は唯一のx
とz
に共通のムービーをしたいですか?
何を試しましたか?どのように映画に参加したいですか?それらの(正確に同じ)タイトルに基づいて、共通のIDに基づいて?詳細を追加! – vefthym
両方のオントロジーを同じJenaモデルにロードすると、問題はありません。 SPARQLクエリを書くだけで、Jenaはトリプルの起点を気にしません。 – AKSW
これは私のオントロジです。前者:http://www.semanticweb.org/administrator/ontologies/2016/11/genre_ontology# PREFIX o1:http://www.semanticweb.org/administrator/ontologies/2016/11/certification_ontology #、私はジャンルと認定を持つ映画を探したい。私のクエリはSELECTですか?x?z WHERE {?x o1:hasCertificationOf?y。 ?z o2:hasGenre?a。 FILTER regex(str(?y)、 "R_")FILTER regex(str(?a)、 "Adventure")}ここでRは制限付きの認証ですxとzのムービーを含むクエリ結果ですが、 xとz? –