Abfragen von Klassen mit Objekteigenschaften in Sparql

8

Kann jemand Klassen mit Objekteigenschaften in Sparql abfragen? Nehmen wir an, wir haben eine OWL-Datei, die folgt

enthält %Vor%

Human und Pizzas sind Klassen (oder Konzepte). In SPARQL gibt diese Abfrage nichts zurück:

%Vor%

Aber wenn ich unter diesen Begriffen zwei Individuen (oder Entitäten) wie

hinzufüge %Vor%

Diese Abfrage gibt ?x=Jim und ?y=cheesePizza zurück Wie bekomme ich ?x=Human und ?y=Pizza mit SPARQL?

    
user2334508 27.08.2013, 06:07
quelle

1 Antwort

16

Vorgegebene Daten wie diese (in RDF / XML):

%Vor%

oder das gleiche, in der besser lesbaren Turtle:

%Vor%

Beachten Sie, dass die Assertion Jim hasPizza CheesePizza ein Tripel in der Grafik ist. Die Domänen- und Bereichsaxiome für die Objekteigenschaft hasPizza sind zwei Tripel: hasPizza rdfs:domain Human und hasPizza rdfs:range Pizza . SPARQL-Abfragen stimmen Abfragemuster mit den Tripeln im Diagramm überein. Also aus einer Anfrage wie:

%Vor%

Sie erhalten Ergebnisse wie

%Vor%

weil es im Graphen ein Tripel gibt, dessen Prädikat :hasPizza ist, und das Tripel ein :Jim als Objekt und :CheesePizza als Objekt hat. Es klingt, als ob Sie tatsächlich nach der Domäne und dem Bereich der :hasPizza -Eigenschaft fragen, die ebenfalls einfach abgerufen werden können. Verwenden Sie eine Abfrage wie folgt:

%Vor%

und Sie erhalten Ergebnisse wie folgt:

%Vor%     
Joshua Taylor 27.08.2013, 13:20
quelle

Tags und Links