SPARQL-запрос для skos: связанное поле?
Попытка запросить наиболее упоминаемую концепцию SKOS в файле RDF/XML.
Так что, если концепция выглядит так в файле:
<rdf:Description rdf:about="http://foo.bar.biz/Processes/151">
<rdf:type rdf:resource="http://www.w3.org/2004/02/skos/core#Concept"/>
<skos:prefLabel xml:lang="en">Part</skos:prefLabel>
<skos:related rdf:resource="http://foo.bar.biz/Processes/150"/>
</rdf:Description>
Как я могу построить SPARQL-запрос, который нацелен на skos:related
тег? Я сейчас смотрю на RDFLib в Python, который имеет совместимость с SPARQL. Похоже, что запрос был бы более уместным, чем разбор всего файла - просто я не достаточно знаком с синтаксисом SPARQL, я полагаю.
1 ответ
Как предлагает Джин, узнать больше о SPARQL - хорошая идея. В качестве начальной ссылки это довольно просто:
SELECT ?related
WHERE {
?s skos:related ?related
}
Более полезным предложением может быть просмотр данных в любой сериализации текста RDF, отличной от RDF/XML, для которой людям сложно разобрать тройки и, следовательно, понять, как их запрашивать. Например, эквивалентный фрагмент в сериализации текста Turtle:
<http://foo.bar.biz/Processes/151>
rdf:type skos:Concept ;
skos:prefLabel "Part"@en ;
skos:related <http://foo.bar.biz/Processes/150>
.
... и вы можете найти, что это более совместимо с пониманием того, как RDF структурирован и как SPARQL может использоваться для его запроса.