SPARQL 教程八

生成结果集

SPARQL 的结果有四种形式:

  • SELECT —— 返回一张结果表。
  • CONSTRUCT —— 根据查询中的模板返回 RDF 图。
  • DESCRIBE —— 根据查询处理器的配置返回 RDF 图形。
  • ASK —— 进行布尔查询。

  SELECT 形式直接返回解决方案表作为结果集,而 DESCRIBE 和 CONSTRUCT 则使用匹配结果来构建 RDF 图。

解决方案修饰符

  模式匹配会产生一组解决方案。这组方案可以通过各种方式进行修改:

  • Projection —— 只保留选定的变量。
  • OFFSET/LIMIT —— 将解决方案进行截取(最好与ORDER BY一起使用)。
  • ORDER BY —— 对结果进行排序。
  • DISTINCT —— 对变量和数值的一种组合只产生一行(去重)。

  上面的 OFFSET/LIMIT 和 ORDER BY 始终适用于所有结果形式。

OFFSET 和 LIMIT

  可以通过指定偏移量(起始索引)和限制(返回的解的数量)来缩写解集。单独使用 LIMIT 可以确保不会返回过多的解,从而限制某些意外情况的影响。 LIMIT 和 OFFSET 可以与排序结合使用,对找到的解进行定义切分。

ORDER BY

   SPARQL 解决方案按表达式(包括自定义函数)排序。

ORDER BY ?x ?y

ORDER BY DESC(?x)

ORDER BY x:func(?x)  # Custom sorting condition

DISTINCT

  SELECT 结果可以使用 DISTINCT 修饰符,以确保返回的解决方案中没有两个是相同的–这是在投影到请求的变量后进行的。

SELECT

  结果形式是解决方案集的投影,应用了DISTINCT

CONSTRUCT

  CONSTRUCT基于图模板构建RDF。图模板可以包含由WHERE子句绑定的变量。其效果是根据模板,计算每个WHERE子句的解决方案生成的图片段,考虑了任何解决方案修饰符。图片段(每个解决方案一个)合并为单个RDF图,这就是结果。

  每次在解决方案中使用该模板时,图形模板中明确提及的任何空白节点都会重新创建。

DESCRIBE

  CONSTRUCT 形式采用图结果的应用程序模板。DESCRIBE形式也创建一个图,但该图的形式由查询处理器提供,而不是应用程序。对于在DESCRIBE子句中找到的每个URI或显式提及的URI,查询处理器应该提供有用的RDF片段,例如书的所有已知细节。ARQ允许编写特定领域的描述处理程序。

ASK

  ASK 结果形式返回一个布尔值,如果模式匹配则为 true,否则为 false。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值