Javaコードでsparqlクエリを使用してオブジェクトプロパティの範囲で複数のクラスを取得する際に問題が発生しました(Protege 3.4.8を使用)Javaでsparqlクエリを使用してオブジェクトプロパティの範囲内に複数のクラスを取得する(Protege 3.4.8)
Result1_Layer =
"PREFIX uni:<http://www.owl-ontologies.com/Ontology1469701449.owl#>"
+"PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>"
+ "select ?range1 "
+ "where { uni:hasS_Layer "
+ "rdfs:range ?range1}";
I am getting output as:| range1 |
=========================================
| <http://www.w3.org/2002/07/owl#Thing> |
| _:b0 |
| rdfs:Resource |
-----------------------------------------
しかし、出力は、2つのクラスを含める必要があります。ユーザビリティ、代わりB0のreliabilty与えるを。 オントロジには、ドメインがのオブジェクト属性hasS_Layerがあり、範囲はであり、範囲はです。ユーザビリティ、信頼性 範囲内に1つのクラスしかない場合、このクエリは正しい結果を取得します。 Protegyバージョン4.3を使用しているときに、同じクエリーがうまく動作しています。ただし、protge 3.4.8では、範囲内の複数のクラスに対して正しい出力が表示されません。 助けてください。
http://tackoverflow.com/questions/19524838/retrieve-the-collection-of-unionof-and-the-for-each-owlがここで関連している可能性があります。あなたが交差点クラスの部品を検索しようとしているようです。 –