Sparql 访问父项的值中包含的项的属性

Sparql 访问父项的值中包含的项的属性,sparql,wikidata,Sparql,Wikidata,是否可以访问另一个项的属性中存在的项的值。例如,在的情况下。有一个属性“重大事件”P793。该属性的值为项目“首次上升”Q1194369,其属性为“时间点”P585和“参与者”P710 我希望能够返回山的这些值,但我不知道如何使用SPARQL访问这些值。我曾尝试将“首次上升”定义为一个参数,但并没有产生任何结果。我还尝试检查了“第一次上升”的所有可用属性,但我看不到这些值存储在哪里。我尝试过的代码是: SELECT ?mountainLabel ?date ?climbers WHERE

是否可以访问另一个项的属性中存在的项的值。例如,在的情况下。有一个属性“重大事件”P793。该属性的值为项目“首次上升”Q1194369,其属性为“时间点”P585和“参与者”P710

我希望能够返回山的这些值,但我不知道如何使用SPARQL访问这些值。我曾尝试将“首次上升”定义为一个参数,但并没有产生任何结果。我还尝试检查了“第一次上升”的所有可用属性,但我看不到这些值存储在哪里。我尝试过的代码是:

 SELECT ?mountainLabel ?date ?climbers 
WHERE 
{
  ?mountain wdt:P31 wd:Q8502. # instance of mountain
  ?mountain wdt:P17 wd:Q39.  # country Switzerland
  ?mountain wdt:P935 "Matterhorn". # name
  ?mountain wdt:P793/wd:Q1194369* ?firstAss. # first ascent

  ?firstAss wdt:P585 ?date . #date of ascent 
  ?firstAss wdt:P710 ?climbers . #climbername 

  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en, de". }
}

语句限定符在第一次使用时并非微不足道

解决方案:

PREFIX bd: <http://www.bigdata.com/rdf#> 
PREFIX p: <http://www.wikidata.org/prop/> 
PREFIX pq: <http://www.wikidata.org/prop/qualifier/> 
PREFIX ps: <http://www.wikidata.org/prop/statement/> 
PREFIX wd: <http://www.wikidata.org/entity/> 
PREFIX wdt: <http://www.wikidata.org/prop/direct/> 
PREFIX wikibase: <http://wikiba.se/ontology#> 


SELECT ?mountainLabel ?firstAssLabel ?date ?climberLabel 
    WHERE 
    {
      ?mountain wdt:P31 wd:Q8502. # instance of mountain
      ?mountain wdt:P17 wd:Q39.  # country Switzerland
      ?mountain wdt:P935 "Matterhorn". # name
      ?mountain wdt:P793/wd:Q1194369* ?firstAss. # first ascent

      ?mountain p:P793 ?firstAssStat .
      ?firstAssStat ps:P793 ?firstAss .
       ?firstAssStat pq:P585 ?date . #date of ascent 
       ?firstAssStat pq:P710 ?climber . #climbername 

      SERVICE wikibase:label {
           bd:serviceParam wikibase:language "en,de" .
      }
} 
前缀bd: 前缀p: 前缀pq: 前缀ps: 前缀wd: 前缀wdt: 前缀wikibase: 选择?mountainLabel?firstAssLabel?日期?登山标签 哪里 { ?山地wdt:P31 wd:Q8502.#山地实例 ?山地wdt:P17 wd:Q39.#瑞士国家 ?mountain wdt:P935“马特宏峰”#名称 ?山地wdt:P793/wd:Q1194369*?第一次爬山 ?山区p:P793?第一个统计数据。 firstAssStat ps:P793?firstAss。 ?firstAssStat pq:P585?日期#上升日期 ?firstAssStat pq:P710?攀岩者。#攀岩者名称 服务维基库:标签{ bd:ServiceParamWikibase:language“en,de”。 } } 演示:

文件:

就个人而言,我观察项目的RDF/Turtle来构建我的查询:

在这里被多次询问和回答,您需要的是语句限定符:在查询之前了解数据模型会有所帮助,因为Wikidata有些特殊: