Използвайки онтологията на Wine, искам да създам SPARQL заявка, за да мога извлечете всички вина и техните свойства като таблицата по-долу - имайте предвид, че не знам имената на свойствата a priori.
vin | rdf:type | vin:hasMaker | vin:hasSugar | ...
========================================================================== ...
GaryFarrellMerlot | vin:Merlot | vin:Elyse | vin:Dry | ...
--------------------------------------------------------------------------
ElyseZinfandel | vin:Elyse | vin:GaryFarrell | vin:Dry | ...
...
Може ли някой да ми подскаже?
-- РЕДАКТИРАНЕ
Не е възможно да имам резултат от заявката във формата, който споменах, но мога да го имам по следния начин:
vin | property | value
=================================================
GaryFarrellMerlot | rdf:type | vin:Merlot
-------------------------------------------------
GaryFarrellMerlot | rdf:hasMaker | vin:Elyse
-------------------------------------------------
...
С този избор (благодарение на cygri):
SELECT DISTINCT ?wine ?property ?value
WHERE {
?o1 a ?class .
?wine a ?o1 .
?wine ?property ?value .
}
Това ще вземе вина вместо видове вина (Merlot -> GaryFarrellMerlot). Единственият проблем е, че отнема вино, но също и винарна, региони, аромати и т.н., а аз исках само вина и техните свойства. Освен това няма такъв атрибут vin:Merlot rdfs:subClassOf vin:Wine. Някакви съвети?