使用sparql请求获取xml:lang属性

问题描述 投票:4回答:1

我想知道是否可以使用sparql查询在我的图表中的某些文字上获取语言标记。

例如,我可能会有这样的事情:

<skos:prefLabel xml:lang="fr">Bonjour</skos:definition>
<skos:prefLabel xml:lang="en">Hello</skos:definition>

我希望每个标签都有一个结果集,并且它是相应的语言。

xml rdf sparql
1个回答
6
投票

您可以使用“lang”内置函数,如SPARQL规范(SPARQL 1.1规范中的第17.4.2.6节:http://www.w3.org/TR/sparql11-query/)中所述。所以您的查询可能如下所示:

PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
SELECT ?x ?label ?language
  WHERE { 
    ?x skos:prefLabel ?label ;
       foaf:mbox      ?mbox .
    BIND ( lang(?label) AS ?language )
  }

请注意,以这种方式使用BIND需要SPARQL 1.1

© www.soinside.com 2019 - 2024. All rights reserved.