SPARQL DBpedia - 用数字检索属性(DatatypeProperties,xsd)
SPARQL DBpedia - Retrieve Properties with numbers (DatatypeProperties, xsd)
所以我在 DBpedia 上遇到了问题。显然我可以使用下面的查询从 resource
中检索任何类型的 property
,但是当 属性 来自 DatatypeProperty
类型或只是一个数字(xsd:integer
或类似的东西)DBpedia SPARQL 端点 returns 一个空结果。
我想知道我必须更改什么,甚至更好地在我当前的查询中包含可选内容来解决这个问题。
重要说明: Germany
和 population total
在我的程序中是必需的输入。请记住,我必须使用它们。
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT DISTINCT ?objectLabel
WHERE {
?subject ?predicate ?object ; rdfs:label "Germany"@en .
?predicate rdfs:label "population total"@en .
?object rdfs:label ?objectLabel
FILTER (LANG(?objectLabel)='en')
}
感谢您的帮助。
DatatypeProperty 用于将个体与文字相关联,而文字不能有任何传出边,因此,没有 rdfs:label
。如果你想获得文字的词法形式,你可以使用 str
函数:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT DISTINCT (str(?object) as ?value)
WHERE {
?subject ?predicate ?object ; rdfs:label "Germany"@en .
?predicate rdfs:label "population total"@en
FILTER (LANG(?objectLabel)='en')
}
所以我在 DBpedia 上遇到了问题。显然我可以使用下面的查询从 resource
中检索任何类型的 property
,但是当 属性 来自 DatatypeProperty
类型或只是一个数字(xsd:integer
或类似的东西)DBpedia SPARQL 端点 returns 一个空结果。
我想知道我必须更改什么,甚至更好地在我当前的查询中包含可选内容来解决这个问题。
重要说明: Germany
和 population total
在我的程序中是必需的输入。请记住,我必须使用它们。
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT DISTINCT ?objectLabel
WHERE {
?subject ?predicate ?object ; rdfs:label "Germany"@en .
?predicate rdfs:label "population total"@en .
?object rdfs:label ?objectLabel
FILTER (LANG(?objectLabel)='en')
}
感谢您的帮助。
DatatypeProperty 用于将个体与文字相关联,而文字不能有任何传出边,因此,没有 rdfs:label
。如果你想获得文字的词法形式,你可以使用 str
函数:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT DISTINCT (str(?object) as ?value)
WHERE {
?subject ?predicate ?object ; rdfs:label "Germany"@en .
?predicate rdfs:label "population total"@en
FILTER (LANG(?objectLabel)='en')
}