【问题标题】:Semantic relations between set of words词集之间的语义关系
【发布时间】:2015-05-15 09:42:48
【问题描述】:

如果我有一组单词(DBpedia 资源)存储在 arraylist 中 如何构建 SPARQL 查询来查找这些术语之间所有可能的直接间接关系? 主要问题是我不知道我要搜索的关系类型是什么。

假设我的数组列表包含 3 个单词,France,Paris,Europe 如何编写返回 France-Paris 、Paris-Europe 和 France-Europe 之间的直接关系(或 2 跳的间接关系)的查询

希望我能弄清楚我在寻找什么

【问题讨论】:

    标签: java sparql semantic-web dbpedia


    【解决方案1】:

    您可以做的是使用VALUES 为您的资源集设置一个变量,但是两次,为关系的每一端设置一次。然后使用变量作为谓词来查找关系是什么。比如:

    SELECT ?resource1 ?p1 ?intermediary ?p2 ?resource2
    WHERE
    {
      VALUES ?resource1 { :Paris :France :Europe }
      VALUES ?resource2 { :Paris :France :Europe }
      FILTER(?resource1 != ?resource2)
    
      {
        ?resource1 ?p1 ?resource2
      }
      UNION
      {
        ?resource1 ?p1 ?intermediary.
        ?intermediary ?p2 ?resource2.
      }
    }
    

    结果是:

    【讨论】:

      猜你喜欢
      • 2014-11-19
      • 2021-07-21
      • 2010-09-28
      • 2013-04-28
      • 2019-01-07
      • 1970-01-01
      • 2021-07-21
      • 1970-01-01
      • 2019-04-19
      相关资源
      最近更新 更多