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 может использоваться для его запроса.

Другие вопросы по тегам