Sparql Wikidata查询服务:如何按项目进行搜索?
我正在使用Wikidata查询服务获取有关电影和电视节目的详细信息 我知道我可以查询下面电影查询实例中所有项目的类型,但我只想查找特定的电影Sparql Wikidata查询服务:如何按项目进行搜索?,sparql,wikidata,Sparql,Wikidata,我正在使用Wikidata查询服务获取有关电影和电视节目的详细信息 我知道我可以查询下面电影查询实例中所有项目的类型,但我只想查找特定的电影 SELECT ?item ?itemLabel ?genreLabel WHERE { ?item wdt:P31 wd:Q11424 . OPTIONAL { ?item wdt:P136 ?genre } SERVICE wikibase:label { bd:serviceParam wikibase:
SELECT ?item ?itemLabel ?genreLabel
WHERE
{
?item wdt:P31 wd:Q11424 .
OPTIONAL {
?item wdt:P136 ?genre
}
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en" }
} LIMIT 10
我有一个关于电影和电视节目的Wikidata项目编号Q的列表,我想了解这些项目的属性。我需要查询这些特定的电影或电视节目。例如,如果我知道《星球大战第四集:新希望》是Wikidata中的Q17738,我如何查询它的特定属性?是的,您可以使用QID获取属性,请参阅,使用URI过滤 项目Q17738的示例:
SELECT DISTINCT ?item ?itemLabel ?itemDescription (SAMPLE(?article) AS ?articleSample)
WHERE
{ ?article schema:about ?item ;
schema:inLanguage "en" ;
schema:isPartOf <https://en.wikipedia.org/>
FILTER ( ?item = <http://www.wikidata.org/entity/Q17738> )
SERVICE wikibase:label
{ bd:serviceParam
wikibase:language "en"
}
}
GROUP BY ?item ?itemLabel ?itemDescription
看这个
另请参见。是的,您可以使用QID获取属性,请参见,使用URI过滤 项目Q17738的示例:
SELECT DISTINCT ?item ?itemLabel ?itemDescription (SAMPLE(?article) AS ?articleSample)
WHERE
{ ?article schema:about ?item ;
schema:inLanguage "en" ;
schema:isPartOf <https://en.wikipedia.org/>
FILTER ( ?item = <http://www.wikidata.org/entity/Q17738> )
SERVICE wikibase:label
{ bd:serviceParam
wikibase:language "en"
}
}
GROUP BY ?item ?itemLabel ?itemDescription
看这个
另请参见。至少有两种方法可以在SPARQL中指定多个项 过滤器?列表中的项目…: 值?项{…列表…}: 区别在于IN只是一个函数:参数在这个列表中吗 值是向查询传递数据的一种方式。虽然我们使用了简单的表格,但您可以提供完整的表格数据:
VALUES (?x ?y) {
(:uri1 1)
(:uri2 UNDEF)
}
语法对于一个变量有一个特殊的情况,所以我不必写值??item{wd:Q17738 wd:Q181795}。在SPARQL中至少有两种指定多个项的方法 过滤器?列表中的项目…: 值?项{…列表…}: 区别在于IN只是一个函数:参数在这个列表中吗 值是向查询传递数据的一种方式。虽然我们使用了简单的表格,但您可以提供完整的表格数据:
VALUES (?x ?y) {
(:uri1 1)
(:uri2 UNDEF)
}
语法对于一个变量有一个特殊的情况,所以我不必写值??项{wd:Q17738 wd:Q181795}。您可以从SPARQL端点获取给定实体的属性,但查询Wikidata API模块可能更好 例:
另请参见:您可以从SPARQL端点获取有关给定实体的属性,但最好查询Wikidata API模块 例: 另见: