gpt4 book ai didi

sparql - 访问属性的属性

转载 作者:行者123 更新时间:2023-12-03 20:43:57 24 4
gpt4 key购买 nike

我有以下查询,我在 wikidata query service web interface 上运行:

SELECT ?objectLabel ?mass
WHERE {
?object wdt:P397 wd:Q525. # the object should have the sun as parent astronomical body
?object wdt:P31 ?status.
?object wdt:P2067 ?mass.

# Here are the accepted object status
VALUES ?status {wd:Q128207 wd:Q121750 wd:Q1319599}. # terrestrial planet, gas giant, ice giant

# automatically use the english label for ?xLabel variables
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}

我发现 mass值在 中给出一个特定的 unit , yottagram 在地球的情况下 .
我怎样才能访问这些信息?

我尝试添加如下内容:
?mass   wdt:P2237 ?mass_unit.

但是,预计这不起作用,因为 ?mass是一个整数,而不是引用地球质量的对象。
使用属性本身作为主题也不起作用:
?object wdt:P2067 ?mass.
wd:P2067 wdt:P2237 ?massUnit.

returns具有所有可用单位的所有元组。 (地球与 5972.37 千克、5972.37 约克、5972.37 太阳质量等有关)

此外,链接属性会导致 no results :
?object wdt:P2067/wdt:P2237 ?massUnit.

我想我需要使用的不是属性本身,而是它的一个实例,它专门连接地球和描述其质量的整数。

如何获取单位信息? (在地球的情况下, Yottagram )

最佳答案

MediaWiki.org 页面 Wikibase/Indexing/RDF Dump Format 描述了维基数据如何在 RDF(以及 SPARQL 中)表示。 .

相关部分是,就您而言,wdt:P2067直接给你值,但如果你改用 p:P2067 ,你会得到整个语句。从那里,您可以使用 psv:P2067得到一个值节点。从那里,您可以使用 wikibase:quantityAmount获得质量(就像您可以使用 wdt:P2067 一样),但您也可以使用 wikibase:quantityUnit获取代表单位的实体。

因此,整个查询可能如下所示:

SELECT ?objectLabel ?mass ?massUnitLabel
WHERE {
?object wdt:P397 wd:Q525. # the object should have the sun as parent astronomical body
?object wdt:P31 ?status.

?object p:P2067/psv:P2067 ?massValue.
?massValue wikibase:quantityAmount ?mass.
?massValue wikibase:quantityUnit ?massUnit.

# Here are the accepted object status
VALUES ?status {wd:Q128207 wd:Q121750 wd:Q1319599}. # terrestrial planet, gas giant, ice giant

# automatically use the english label for ?xLabel variables
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}

如果你愿意,你可以消除 ?massValue使用以下代码变量:
?object p:P2067/psv:P2067 [
wikibase:quantityAmount ?mass;
wikibase:quantityUnit ?massUnit ]

关于sparql - 访问属性的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36585152/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com