Ich stehe vor dem Problem, mehrere Klassen im Bereich einer Objekteigenschaft mithilfe der spark-Abfrage in Java-Code abzurufen (Protege 3.4.8).Abrufen mehrerer Klassen im Bereich einer Objekteigenschaft mit Hilfe der Sparql-Abfrage in Java (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 |
-----------------------------------------
Aber die Ausgabe zwei Klassen enthalten: Usability, Reliabilty statt b0. In Ontologie gibt es eine Objekteigenschaft hasS_Layer, deren Domäne ist Layer und Bereich ist Schnittpunkt Usability, Zuverlässigkeit Diese Abfrage abrufen korrektes Ergebnis, wenn in Reichweite gibt es nur eine einzige Klasse. Gleiche Abfrage funktioniert gut, wenn ich Protey Version 4.3 verwenden. Aber in Protege 3.4.8 zeigt es nicht korrekte Ausgabe für mehrere Klassen im Bereich. Bitte helfen.
http://stackoverflow.com/questions/19524838/retrieve-the-collection-of-union-und-intersectionof-for-each-owl kann hier relevant sein. Es scheint, als ob Sie versuchen, die Teile einer Kreuzungsklasse zu finden. –