使用属性仅查找一个值的 SPARQL 查询

SPARQL query to find only one value using the attribute

我需要从我的 rdfs:label 标签中获取唯一的英文值

这是我的示例 RDF

<rdfs:label rdf:datatype="&xsd;string">English</rdfs:label>
<rdfs:label xml:lang="fr">French</rdfs:label>
<rdfs:label xml:lang="it">Italy</rdfs:label>

我目前正在使用 Apache Jena Fuseki 服务器执行 SPARQL 查询。当我试图获得 rdfs:label 时,它 return 我所有三个值。

提前致谢

您可以在结果中按所需的语言标签进行过滤。在 SPARQL 中执行此操作的几种方法:

SELECT ?label
WHERE {
   ?s rdfs:label ?label .
   FILTER (lang(?label) = "en")
}

...或使用 SPARQL 的 langMatches:

SELECT ?label
WHERE {
   ?s rdfs:label ?label .
   FILTER langMatches(lang(?label), "en")
}