SPARQL - 查询属性并返回相关属性的结果

2024-01-20

我是 SPARQL 新手,我正在尝试运行 SPARQL 查询,以便返回属性的结果并根据此列出相关属性的值。

示例代码为:

SELECT ?player ?position ?club ?goals WHERE {
  ?player a <http://dbpedia.org/ontology/SoccerManager> . filter (contains (str(?player), "Alan_Shearer")) .
  ?player <http://dbpedia.org/ontology/position> ?position .
  ?player <http://dbpedia.org/property/clubs> ?club .
  ?player <http://dbpedia.org/property/goals> ?goals .
}

结果是每个俱乐部的所有目标都重复:

player  position    club    goals
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Southampton_F.C.    23
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Southampton_F.C.    112
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Southampton_F.C.    148
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Newcastle_United_F.C.   23
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Newcastle_United_F.C.   112
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Newcastle_United_F.C.   148
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Blackburn_Rovers_F.C.   23
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Blackburn_Rovers_F.C.   112
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Blackburn_Rovers_F.C.   148

每个俱乐部的目标在数据集中正确关联,因此我想要获取的只是各个俱乐部的目标:

player  position    club    goals
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Southampton_F.C.    23
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Newcastle_United_F.C.   112
http://dbpedia.org/resource/Alan_Shearer    http://dbpedia.org/resource/Forward_(association_football)  http://dbpedia.org/resource/Blackburn_Rovers_F.C.   148

但是,我不知道如何在 SPARQL 中执行此操作,非常感谢任何帮助。


请注意,数据中有一些 dbpedia-owl:careerStation 属性值:

dbpedia-owl:careerStation dbpedia:Alan_Shearer__1, dbpedia:Alan_Shearer__2, ...

如果您查看这些属性的值,例如,http://dbpedia.org/page/Alan_Shearer__3 http://dbpedia.org/page/Alan_Shearer__3,你可以看到some其中有许多目标属性。这意味着你可以这样做:

select ?player ?position ?team ?goals {
  values ?player { dbpedia:Alan_Shearer }
  ?player dbpedia-owl:position ?position ;
          dbpedia-owl:careerStation [ dbpedia-owl:team ?team ;
                                      dbpedia-owl:numberOfGoals ?goals ] .
}

由于并非所有电台都有目标信息,因此您可能需要在此处使用可选选项来获取电台,然后获取目标if可用的:

select ?player ?position ?team ?goals {
  values ?player { dbpedia:Alan_Shearer }
  ?player dbpedia-owl:position ?position ;
          dbpedia-owl:careerStation ?station .
  ?station dbpedia-owl:team ?team .
  optional { ?station dbpedia-owl:numberOfGoals ?goals }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SPARQL - 查询属性并返回相关属性的结果 的相关文章

随机推荐

  • Android Studio 和 Ryzen CPU?

    我知道它可能会被标记为重复 但没有一个线程对我有帮助 所以我决定自己做一个 I m a Java后端开发人员我决定学习一些 Android 的东西 几年前我在 Android Studio 工作过i5 4570处理器 然后我放弃了 现在我发
  • 使用 Entity Framework 和 Linq 进行动态排序

    我有另一个类似的问题在这里得到了回答 关于 NULL 值是订单的最后一个 在 Dynamic Linq Order By 上将 NULL 行保留在最后 https stackoverflow com questions 42277259 k
  • 我们如何使用 C# 将二进制数转换为八进制数?

    嘿 我正在开发一个应用程序 它将任何基数 如 2 8 10 16等 转换为用户所需的基数系统 我在将二进制数转换为八进制数时遇到问题 有人可以帮我吗 我尝试了一切 i am taking a binary number in value a
  • 在部署的应用程序上播放来自 s3 的文件时出现跨源资源策略问题

    我在 Heroku 上部署了一个应用程序 可以让我播放音频文件 你可以在这里查看https telecurve herokuapp com manage https telecurve herokuapp com manage 在我在 He
  • 使用 StoryBoards 时进行单元测试 cellForRowAtIndexPath

    如果我要从故事板中的标识符中取出单元格 如何以单元测试的方式调用 cellForRowAtIndexPath 并且不让单元格为零 UITableViewCell tableView UITableView tableView cellFor
  • OData WebApi V4 .net - 自定义序列化

    我需要创建一个序列化器来支持以下所有任务 删除空属性 删除空列表 我注意到的语法ODataMediaTypeFormatter已经变了 我在将序列化提供程序添加到管道时遇到问题 这是我尝试过的 在 WebApiConfig cs 上 var
  • gaierror: [Errno -2] 名称或服务未知

    def make req data url method POST params urllib urlencode data headers Content type application x www form urlencoded Ac
  • 从环境中删除除与给定模式匹配的对象之外的所有对象

    我正在尝试删除所有objects来自我的 RStudio环境其中对象名称不等于模式 rm list ls pattern may19 但这给了我一个错误 as environment pos 中的错误 没有名为 pattern may19
  • 如何处理 Spark SQL 上的 AnalysisException?

    我正在尝试在 Spark 中执行查询列表 但如果查询未正确运行 Spark 会抛出以下错误 AnalysisException 不支持更改表更改列 这是我的代码的一部分 我在 Databricks 上使用 python 和 Spark SQ
  • 在android中为ksoap2设置编码utf-8

    我对 ksoap2 有问题 我想在 android 中为 ksoap2 设置编码 utf 8 或者在标头中设置内容类型为 text xml charset utf 8 我的代码 设置编码 envelope encodingStyle utf
  • MS Edge - window.print() 与 MS Edge 中的框架上下文无关

    与其他浏览器相比 Microsoft Edge 处理 window print 的方式不一致 在大多数浏览器中 从页面上的 iframe 内调用 window print 只会打印该 iframe 的内容 然而 在边缘它总是会打印整个文档
  • python - 递归删除字典键?

    我正在使用 Python 2 7plistlib以嵌套字典 数组形式导入 plist 然后查找特定键并在我看到它的任何地方将其删除 当谈到我们在办公室处理的实际文件时 我已经知道在哪里可以找到这些值 但我编写脚本时的想法是我不知道 希望我不
  • 行动扩展和共享核心数据

    我在我的应用程序中使用操作扩展 我们的应用程序当前使用核心数据 我正在应用程序和 使用应用程序组的操作扩展并成功将核心数据从文档目录迁移到应用程序组 当使用扩展程序将照片或笔记从照片 笔记应用程序导入到我的应用程序时 我遇到的问题会发生 该
  • 最佳实践 - 将事件声明为 Java 接口的一部分

    我正在尝试使用接口和事件来解耦一些 UI 代码 我想知道 Java 中是否有方法 最佳实践来将事件声明为 Java 接口的一部分 就像 C 提供的那样 C event declaration in interface public inte
  • 使用 Amazon Connect 将语音消息保存在 aws s3 存储桶中

    how to save voice message of customer number and store in an s3 bucket using aws connect I made a contact workflow but I
  • Python获取onclick值

    我正在使用 Python 和 BeautifulSoup 为我的一个小项目抓取网页 该网页有多个条目 每个条目由 HTML 中的表格行分隔 我的代码部分有效 但是很多输出是空白的 它不会从网页获取所有结果 甚至不会将它们收集到同一行中 ta
  • 在 Web 应用程序中使用条形码渲染框架生成条形码

    我正在使用条形码渲染框架来生成条形码 我已经下载了他们的dll 我可以看到 如何在 Windows 应用程序中完成它 我想做同样的事情 即生成条形码并在网络应用程序中使用它 以下是可以使用的问题的链接 适用于 NET 的免费条形码 API
  • Java Android 应用 MediaPlayer 中的 NullPointerException

    请帮忙 这只是我正在开发的一个简单的Android应用程序 它意味着每次单击按钮时都会播放声音 当我慢速单击按钮时它会工作 但如果我单击按钮总是崩溃由于运行时错误 NullPointerException 我不知道我做错了什么 这是我的代码
  • 使用临时变量代替重复的完整引用是否更好?

    假设我们有一个类似的对象 var foo a b c d e f 0 1 2 3 4 5 6 7 8 9 我们希望在函数中使用对象的各个部分 如下所示 function doStuff if foo a b c d e f 5 gt som
  • SPARQL - 查询属性并返回相关属性的结果

    我是 SPARQL 新手 我正在尝试运行 SPARQL 查询 以便返回属性的结果并根据此列出相关属性的值 示例代码为 SELECT player position club goals WHERE player a