sparql学习sparql示例、dbpedia在线验证

导言

作为sparql群的群主,自己也不太懂sparql,竟然意外接到了一份作业。好久没有接活了。主要就是复习了一下各个语言怎么写。记录一下,供大家学习

所有的语句可以在wiki网站的dbpedia在线查询网站在线测试。

select

  • select的第1个

    问题:中国的首都是什么?

  1. select distinct ?c where
  2. {
  3. <http://dbpedia.org/resource/China> <http://dbpedia.org/property/capital> ?c
  4. }
  • select的第2个

    问题:韩国比较大的城市有哪些?

  1. select distinct ?c where
  2. {
  3. <http://dbpedia.org/resource/Korea> <http://dbpedia.org/property/largestCity> ?c
  4. }

ask

  • ask第1个

    问题:北京人口是否超过了1千万?

  1. prefix xsdt: <http://www.w3.org/2001/XMLSchema#>
  2. ask where
  3. {
  4. <http://dbpedia.org/resource/Beijing> <http://dbpedia.org/property/populationTotal> ?total.
  5. filter(?total >"10000000"^^xsdt:integer )
  6. }
  • ask第2个

    问题:姚明是90后吗?

  1. prefix xsdt: <http://www.w3.org/2001/XMLSchema#>
  2. ask where
  3. {
  4. <http://dbpedia.org/resource/Yao_Ming> <http://dbpedia.org/ontology/birthDate> ?date.
  5. filter(?date>"1990-01-01"^^xsdt:date )
  6. }

describe

  • 第1个describe

说明:The DESCRIBE query result clause allows the server to return whatever RDF it wants that describes the given resource(s).) 问题:返回“哈希表”这个实体的所有内容

  1. describe ?a
  2. {?a <http://www.w3.org/2000/01/rdf-schema#label> "哈希表"@zh}
  • describe第2个 问题:返回“数据结构”类别下的所有实体内容
  1. describe ?a
  2. {?a <http://purl.org/dc/terms/subject> <http://dbpedia.org/resource/Category:Data_structures>}

filte

  • filter的第1个

    问题:请随意列举出生在中国的20个人

  1. select distinct ?name where
  2. {
  3. ?a <http://www.w3.org/2000/01/rdf-schema#label> ?name.
  4. ?a <http://dbpedia.org/property/birthPlace> ?country.
  5. filter regex(str(?country), "China")
  6. }limit 20
  • filter第2个

    问题:2008年之后的美国灾难电影有哪些?

  1. PREFIX dbpprop:<http://dbpedia.org/property/>
  2. prefix xsdt: <http://www.w3.org/2001/XMLSchema#>
  3. PREFIX dcterms: <http://purl.org/dc/terms/>
  4. PREFIX category: <http://dbpedia.org/resource/Category:>
  5. SELECT ?filmname {
  6. ?film dcterms:subject category:American_disaster_films.
  7. ?film dbpprop:name ?filmname.
  8. ?film dbpprop:released ?date.
  9. FILTER (?date > "2008-01-01T00:00:00"^^xsdt:dateTime)
  10. }
  • filter第3个

    问题:名字中包含’Republic’的且在1920年之前成立的国家有哪些?

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
  3. PREFIX type: <http://dbpedia.org/class/yago/>
  4. PREFIX prop: <http://dbpedia.org/property/>
  5. SELECT ?lbl ?est
  6. WHERE {
  7. ?country rdfs:label ?lbl .
  8. FILTER(bif:contains(?lbl, "Republic")) .
  9. ?country prop:establishedDate ?est .
  10. FILTER(?est < "1920-01-01"^^xsd:date) .
  11. }
  • filter第4个

    问题:1990到1993年出生的NBA球员有哪些有哪些?

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. SELECT ?name
  3. WHERE {
  4. ?a <http://dbpedia.org/property/name> ?name.
  5. ?a <http://dbpedia.org/property/league> <http://dbpedia.org/resource/National_Basketball_Association>.
  6. ?a <http://dbpedia.org/ontology/birthDate> ?date.
  7. filter(?date>"1990-01-01"^^xsd:date &&
  8. ?date<"1993-01-01"^^xsd:date )
  9. }

bound

  • bound的第1个

    问题:1970年前出生的NBA球员中,没有上过大学的人有谁?(这个问题和下一个问题形成对比)

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. SELECT distinct ?name ?college
  3. WHERE {
  4. ?a <http://dbpedia.org/property/name> ?name.
  5. ?a <http://dbpedia.org/property/league> <http://dbpedia.org/resource/National_Basketball_Association>.
  6. ?a <http://dbpedia.org/ontology/birthDate> ?date.
  7. filter(?date<"1970-01-01"^^xsd:date )
  8. optional
  9. {
  10. ?a <http://dbpedia.org/ontology/college> ?college
  11. }
  12. filter(!bound(?college))
  13. }
  • bound的第2个

    问题:1970年前出生的NBA球员中,上过大学的人有谁?

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. SELECT distinct ?name ?college
  3. WHERE {
  4. ?a <http://dbpedia.org/property/name> ?name.
  5. ?a <http://dbpedia.org/property/league> <http://dbpedia.org/resource/National_Basketball_Association>.
  6. ?a <http://dbpedia.org/ontology/birthDate> ?date.
  7. filter(?date<"1970-01-01"^^xsd:date )
  8. optional
  9. {
  10. ?a <http://dbpedia.org/ontology/college> ?college
  11. }
  12. filter(bound(?college))
  13. }

not exists

  • not exists的第1个

    问题:NBA球员中,法国出生但是不在法国的“Saint”城市出生的人有谁?

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. SELECT ?name ?country
  3. WHERE {
  4. ?a <http://dbpedia.org/property/name> ?name.
  5. ?a <http://dbpedia.org/property/league> <http://dbpedia.org/resource/National_Basketball_Association>.
  6. ?a <http://dbpedia.org/property/birthPlace> ?country.
  7. filter regex(str(?country), "France")
  8. filter not exists{
  9. {
  10. ?a <http://dbpedia.org/property/name> ?name.
  11. ?a <http://dbpedia.org/property/league> <http://dbpedia.org/resource/National_Basketball_Association>.
  12. ?a <http://dbpedia.org/property/birthPlace> ?country.
  13. filter regex(str(?country), "Saint")
  14. }
  15. }
  16. }
  • not exists的第2个

    问题:出生在西安的名人有哪些?但是这些人不在1970年后出生的人当中

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. SELECT ?name
  3. WHERE {
  4. ?a <http://dbpedia.org/property/name> ?name.
  5. ?a <http://dbpedia.org/property/birthPlace> <http://dbpedia.org/resource/Xi'an>.
  6. filter not exists{
  7. ?a <http://dbpedia.org/ontology/birthYear> ?date.
  8. filter(?date>"1970-01-01"^^xsd:date )
  9. }
  10. }

in

  • in第一个(in是限制条件,a in(a,b,c,d)表示返回成功,e in(a,b,c,d)返回失败 )

    问题:北京的城市人口和总人口是多少?(没有这项指标则忽略)

  1. SELECT ?b ?number
  2. WHERE
  3. {
  4. <http://dbpedia.org/resource/Beijing> ?b ?number.
  5. filter( ?b in(<http://dbpedia.org/property/populationUrban>,<http://dbpedia.org/property/populationTotal>) )
  6. }
  • in第一个(in是限制条件,a in(a,b,c,d)表示返回成功,e in(a,b,c,d)返回失败)

    问题:姚明的出生日期和死亡日期是什么时候?如果有数据才返回结果,没有就忽略。

  1. SELECT ?b ?date
  2. WHERE
  3. {
  4. <http://dbpedia.org/resource/Yao_Ming> ?b ?date.
  5. filter( ?b in(<http://dbpedia.org/ontology/birthDate>,<http://dbpedia.org/ontology/deathDate>) )
  6. }

regex

  • regex的第1个

    问题:NBA球员中,法国出生的有谁?

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. SELECT ?name ?country
  3. WHERE {
  4. ?a <http://dbpedia.org/property/name> ?name.
  5. ?a <http://dbpedia.org/property/league> <http://dbpedia.org/resource/National_Basketball_Association>.
  6. ?a <http://dbpedia.org/property/birthPlace> ?country.
  7. filter regex(str(?country), "France")
  8. }
  • regex的第2个

    问题:NBA球员中,名字中有“Jason”的人都有谁?

minus

  • minus(主要就是排除功能)的第1个

    问题:美国浪漫主义电影里,除去2000年以前的电影,还剩下什么电影?

  1. PREFIX dbpprop:<http://dbpedia.org/property/>
  2. PREFIX dcterms: <http://purl.org/dc/terms/>
  3. PREFIX category: <http://dbpedia.org/resource/Category:>
  4. SELECT ?filmname{
  5. ?film dcterms:subject category:Romantic_epic_films.
  6. ?film dbpprop:name ?filmname.
  7. MINUS{?film dbpprop:released ?date.
  8. FILTER (?date < 2000 )}
  9. }
  • minus(主要就是排除功能)的第2个

    问题:NBA队员里,除去出生在美国的,还有哪些人?

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. SELECT ?name
  3. WHERE {
  4. ?a <http://dbpedia.org/property/name> ?name.
  5. ?a <http://dbpedia.org/property/league> <http://dbpedia.org/resource/National_Basketball_Association>.
  6. ?a <http://dbpedia.org/ontology/birthDate> ?date.
  7. minus{
  8. ?a <http://dbpedia.org/property/birthPlace> ?country.
  9. filter regex(str(?country), "American")
  10. }
  11. }

union

  • union(主要进行合并操作)第1个

    问题:中国和韩国的领导人有哪些?

  1. SELECT ?people
  2. where{
  3. {
  4. <http://dbpedia.org/resource/China> <http://dbpedia.org/ontology/leader> ?people.
  5. }
  6. union
  7. {
  8. <http://dbpedia.org/resource/Korea> <http://dbpedia.org/property/leaderName> ?people.
  9. }
  10. }
  • union(主要进行合并操作)第2个

    问题:浪漫主义电影和美国灾难片这两种类型的电影有哪些?

  1. PREFIX dbpprop:<http://dbpedia.org/property/>
  2. PREFIX dcterms: <http://purl.org/dc/terms/>
  3. PREFIX category: <http://dbpedia.org/resource/Category:>
  4. SELECT ?filmname{
  5. {
  6. ?film dcterms:subject category:Romantic_epic_films.
  7. ?film dbpprop:name ?filmname.
  8. }
  9. union{
  10. ?film dcterms:subject category:American_disaster_films.
  11. ?film dbpprop:name ?filmname.
  12. }
  13. }

optional

  • optional 第1个

    问题:NBA球员中,出生在1950年以前的人的名字叫什么,如果数据库中有出生地点,也列举出来,没有的话就不用管(备注:其实这也是optional的作用)

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. SELECT distinct ?name ?birthPlace
  3. WHERE {
  4. ?a <http://dbpedia.org/property/name> ?name.
  5. ?a <http://dbpedia.org/property/league> <http://dbpedia.org/resource/National_Basketball_Association>.
  6. ?a <http://dbpedia.org/ontology/birthDate> ?date.
  7. filter(?date<"1950-01-01"^^xsd:date )
  8. optional {
  9. ?a <http://dbpedia.org/property/birthPlace> ?birthPlace
  10. }
  11. }
  • optional 第2个

    问题:NBA球员中,出生在1970年以前的人的名字叫什么,如果上过大学,请列出大学。(结果中看到有部分人没有大学信息)

  1. PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
  2. SELECT distinct ?name ?college
  3. WHERE {
  4. ?a <http://dbpedia.org/property/name> ?name.
  5. ?a <http://dbpedia.org/property/league> <http://dbpedia.org/resource/National_Basketball_Association>.
  6. ?a <http://dbpedia.org/ontology/birthDate> ?date.
  7. filter(?date<"1970-01-01"^^xsd:date )
  8. optional {
  9. ?a <http://dbpedia.org/ontology/college> ?college
  10. }
  11. }

sparql学习sparql示例、dbpedia在线验证的更多相关文章

  1. WebGPU学习(六):学习“rotatingCube”示例

    大家好,本文学习Chrome->webgpu-samplers->rotatingCube示例. 上一篇博文: WebGPU学习(五): 现代图形API技术要点和WebGPU支持情况调研 ...

  2. Java虚拟机JVM学习03 连接过程:验证、准备、解析

    Java虚拟机JVM学习03 连接过程:验证.准备.解析 类被加载后,就进入连接阶段. 连接就是将已经读入到内存的类的二进制数据合并到虚拟机的运行时环境中去. 连接阶段三个步骤:验证.准备和解析. 类 ...

  3. Oracle TDE的数据加密示例并用logminer验证加密效果

    1.确认数据库版本 2创建密钥钱包 3创建加密列的表并初始值 4演示TDE的数据加密示例 5 logminer验证加密效果

  4. ROS_Kinetic_29 kamtoa simulation学习与示例分析(一)

    致谢源代码网址:https://github.com/Tutorgaming/kamtoa-simulation kamtoa simulation学习与示例分析(一) 源码学习与分析是学习ROS,包 ...

  5. bootstrap源码学习与示例:bootstrap-tab

    http://www.cnblogs.com/rubylouvre/archive/2012/12/22/2829176.html  bootstrap源码学习与示例 https://www.w3sc ...

  6. activiti学习2:示例工程activiti-explorer.war的使用

    目录 activiti学习2:示例工程activiti-explorer.war的使用 一.搭建开发环境 二.运行示例工程 三.示例工程功能演示 1. 创建流程图 2. 部署流程图 3. 启动流程 4 ...

  7. (5.10)mysql高可用系列——percona-toolkit工具下的pt-table-checksum 在线验证主从一致性【续写中】

    关键词:percona-toolkit 工具包中包含 pt-table-checksum工具,在线验证主从一致性 [1]percona-toolkit 工具包 [1.1]percona-toolkit ...

  8. WebGPU学习(八):学习“texturedCube”示例

    大家好,本文学习Chrome->webgpu-samplers->texturedCube示例. 上一篇博文: WebGPU学习(七):学习"twoCubes"和&qu ...

  9. WebGPU学习(九):学习“fractalCube”示例

    大家好,本文学习Chrome->webgpu-samplers->fractalCube示例. 上一篇博文: WebGPU学习(八):学习"texturedCube"示 ...

随机推荐

  1. 7 November in 614

    每日总结不能少!让自己的头脑好好清醒清醒,才不会犯那些所谓的低级错误! Contest A. ssoj3045 A 先生砍香蕉树 根据数据范围 \(m\le 1000,b\le 10000\),显然本 ...

  2. LG2704 [NOI2001] 炮兵阵地

    题目描述 (试题来源:Link ) 司令部的将军们打算在 \(N\times M\) 的网格地图上部署他们的炮兵部队.一个 \(N\times M\) 的地图由 \(N\) 行 \(M\) 列组成,地 ...

  3. python中的__init__

    __init__ __init__中__表示系统默认命名,init是初始化的意思.由于类可以起到模板的作用,因此,可以在创建实例的时候,把一些我们认为必须绑定的属性强制填写进去.以学生类为例,通过定义 ...

  4. 【原】git命令行查看全部分支与远程分支不同步问题

    git branch -a 查看全部分支 git fetch 重新拉一下分支

  5. IDEA默认快捷键

    idea常用快捷键大全   Idea常用快捷键大全,拿小本本记下来,忘记了可以方便查找.编写代码Ctrl+Shift + Enter,语句完成“!”,否定完成,输入表达式时按 “!”键Ctrl+E,最 ...

  6. android SlidingDrawer

    SlidingDrawer把内容从屏幕上隐藏,允许用户拖动把手将内容显示到屏幕.SlidingDrawer可用于垂直或水平.它由两个视图组成的:handle,让用户拖拉的;content,连在hand ...

  7. Linux查看硬件配置

    1.查看机器所有硬件信息:dmidecode |moredmesg |more 这2个命令出来的信息都非常多,所以建议后面使用"|more"便于查看 2.查看CPU信息 方法一: ...

  8. std::sort的详细用法

    #include <algorithm> #include <functional> #include <array> #include <iostream& ...

  9. hbase之RPC详解

    Hbase的RPC主要由HBaseRPC.RpcEngine.HBaseClient.HBaseServer.VersionedProtocol 5个概念组成. 1.HBaseRPC是hbase RP ...

  10. BCrypt密码加密

    快速入门 (1)我们从官网下载源码 BCrypt 官网 http://www.mindrot.org/projects/jBCrypt/ (2)新建工程,将源码类BCrypt拷贝到工程 (3)新建测试 ...