跳转到内容

SPARQL/模板

来自维基教科书,开放世界中的开放书籍

Wikidata查询服务查询助手内,注释#TEMPLATE可以构建一个简单的模板,用户可以在其中选择一个或多个变量来更改查询,而无需了解SPARQL查询语言。

下面是一个从任何国家选择总统及其配偶的例子

#TEMPLATE={"template":"Presidents of ?country and their spouses","variables":{"?country":{"query":" SELECT ?id WHERE { ?id wdt:P31 wd:Q6256 . }"} } }

SELECT ?p ?pLabel ?ppicture ?w ?wLabel ?wpicture WHERE {
  BIND(wd:Q30 AS ?country)        # United States of America
  ?country (p:P6/ps:P6) ?p.       # Head of government
  ?p wdt:P26 ?w.                  # Spouse
  OPTIONAL {
    ?p wdt:P18 ?ppicture.
    ?w wdt:P18 ?wpicture.
  }
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}

试试看!

该“模板”包含文本和一个或多个变量。
该“变量”列出了变量,并可选地提供一个“查询”来选择可能的值,在本例中,?id是国家实例。

如果不需要查询,语法为“?var1”:{} 在这种情况下,可能是
  #TEMPLATE={"template":"Presidents of ?country and their spouses","variables":{"?country":{} } }

注意:BIND(wd:Q30 AS ?country) 用作变量 ?country 的默认值。

参考文献

[编辑 | 编辑源代码]


华夏公益教科书