rdfs
状態のサブ/スーパークラスの関係に使用される述語はrdfs:subClassOf
です。そのことを念頭に置いて、SPARQLクエリに、その述語と一致させたいサブジェクトまたはオブジェクトをバインドするトリプルパターンを記述する必要があります---AcousticWave
あなたの場合。
以下の質問が自明であることを願っています。
スーパークラスの場合..。
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX ns: <http://www.domain.com/your/namespace/>
SELECT ?superClass WHERE { ns:AcousticWave rdfs:subClassOf ?superClass . }
そしてサブクラスの場合...
SELECT ?subClass WHERE { ?subClass rdfs:subClassOf ns:Wave . }
すべてのサブクラスのラベルを取得する場合は、次のns:Wave
ようにします...
SELECT ?subClass ?label WHERE {
?subClass rdfs:subClassOf ns:Wave .
?subClass rdfs:label ?label .
}
サブ/スーパークラスの推移閉包が必要な場合は、次の2つのオプションがあります。
- クロージャを収集するまで、これらのクエリを再帰的に繰り返します。
- RDFデータをRDF/RDFS推論システムに渡して、すべての含意をフォワードチェーンし、RDFデータベースでこれらをアサートします。