【问题标题】:Can't find the dbo for television series (dbpedia, sparql)找不到电视剧的 dbo(dbpedia、sparql)
【发布时间】:2021-09-20 15:33:07
【问题描述】:

我希望你今天过得愉快。我正在尝试找出两个电视节目之间的所有关系。

现在,我有

SELECT ?r1 ?r2 WHERE {
    
    SELECT ?show1 ?show2 WHERE {
        ?show1 dbo:tvShow dbr:The_Office_(American_TV_series)
        ?show2 dbo:tvShow dbr:The_Office_(British_TV_series)
    }
     
    # Query both ways
    ?show1 ?r1 ?show2 . 
    ?show2 ?r2 ?show1 .      
    
}

但是,我似乎在?show1dbo:tvShow 之前遇到了语法错误。

有没有人有任何建议来解决这个查询?

非常感谢!!

【问题讨论】:

  • 没有财产dbo:tvShow - 你从哪里得到这个?您应该查看您的示例节目以查看所有可用的属性,而不是猜测或发明东西。此外,您已经拥有两个节目的 URI,这意味着三重模式 `?show1 dbo:tvShow dbr:The_Office_(American_TV_series)` 将导致 ?show1 的结果是什么?如果您只想获得两者之间的所有(直接)关系(我怀疑有任何关系),您应该使用:SHOW1 ?p :SHOW2 - 如果您想获得共性,您应该使用:SHOW1 ?p ?o . :SHOW2 ?p ?o . - 我希望您明白这一点跨度>
  • @UninformedUser dbo:tvShow 属性似乎存在dbpedia.org/ontology/tvShow
  • 啊,它将一个人连接到一个电视节目 - 不知道这一点,然后@Emily 没关系 - 所以现在它取决于你想在两个节目之间查询什么样的联系或关系。我只能看到 dbo:related 属性(以及 Wikipedia wikilink)——那么这对您的任务有帮助吗?可能存在“间接”关系,例如共享相同的主持人或人员,在这种情况下,您必须调整您的查询。至少从您最初的查询中,您试图找到两个电视节目中的人之间的关系。所以这将是“间接的”。我不会调用变量?show,它们绑定人

标签: sql sparql dbpedia


【解决方案1】:

我猜您的查询中缺少几个元素:

  • 内部 SELECT 中每个模式末尾的点,
  • 用大括号括住内部 SELECT,
  • 用反斜杠转义两个电视节目的 IRI(或不带前缀的 IRI)中的括号。

所以重写后的有效查询可能如下所示:

SELECT ?r1 ?r2 WHERE {
  {
    SELECT ?show1 ?show2 WHERE {
        ?show1 dbo:tvShow dbr:The_Office_\(American_TV_series\) .
        ?show2 dbo:tvShow dbr:The_Office_\(British_TV_series\) .
    }
  }

  ?show1 ?r1 ?show2 . 
  ?show2 ?r2 ?show1 .      
}

请注意,这两个电视节目的 IRI 也可以使用它们的无前缀形式编写,如下所示: <http://dbpedia.org/resource/The_Office_(American_TV_series)><http://dbpedia.org/resource/The_Office_(British_TV_series)>

但是,我不确定您的查询是否正确,无法找到两个电视节目之间的所有关系。 事实上,?show1?show2 变量将绑定到这些节目的演员。

要找到这两个节目之间的直接联系,在一个方向,然后在另一个方向,我建议以下查询:

SELECT ?r1 ?r2 WHERE {
  BIND(<http://dbpedia.org/resource/The_Office_(American_TV_series)> as ?show1) .
  BIND(<http://dbpedia.org/resource/The_Office_(British_TV_series)> as ?show2) . 
  {
      ?show1 ?r1 ?show2 .
  } UNION {
      ?show2 ?r2 ?show1 .
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-28
    • 1970-01-01
    • 1970-01-01
    • 2016-11-10
    相关资源
    最近更新 更多