Используя онтологию Wine, я хочу создать запрос SPARQL, чтобы я мог получить все вина и их свойства, как в приведенной ниже таблице. Учтите, что я не знаю названий свойств априори.
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. Есть подсказка?