通过多语言prefLabel获取所有条款

时间:2016-10-05 13:09:22

标签: sparql

如何查询同义词库以便获得所有具有已翻译的prefLabel的概念?意思是排除所有仅包含英语prefLabel的术语,并仅显示不仅仅是英语prefLabel的概念。

我发现了这一点,并认为我可以改变这个概念,但这并没有真正发挥作用。

Search in a multilingual database for terms that have not been translated into a specific language

2 个答案:

答案 0 :(得分:1)

我认为以下内容应该有效,但不会检查是否存在英文标签:

SELECT ?term
WHERE 
{
  {
    SELECT ?term (COUNT(?label) AS ?pCount)
    WHERE 
      {?term <http://www.w3.org/2004/02/skos/core#prefLabel> ?label}
    GROUP BY ?term
  }
  FILTER (?pCount > 1)
}

答案 1 :(得分:1)

只需过滤掉英文标签:

PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
SELECT ?label
WHERE {
   ?term skos:prefLabel ?label .
   FILTER (lang(?label) != "en")
}