sparql - 选择缺少属性或属性值低于某个限制的实体
问题描述
我想开一个俱乐部。如果有证据表明您的年龄为 48 岁或以上,则您不能加入。
数据:
@prefix ns0: <http://example.com/> .
ns0:Mark
a ns0:person ;
ns0:age 48 .
ns0:Anne
a ns0:person ;
ns0:age 41 .
ns0:Steven a ns0:person .
查询一:
prefix ns0: <http://example.com/>
select ?s
where {
?s a ns0:person ;
ns0:age ?age .
filter (?age < 48)
}
结果 1:ns0:Anne
查询 2:
prefix ns0: <http://example.com/>
select ?s
where {
?s a ns0:person .
minus {
?s ns0:age ?age .
}
}
结果 2:ns0:Steven
查询 3:
prefix ns0: <http://example.com/>
select ?s
where {
{
?s a ns0:person .
minus {
?s ns0:age ?age .
}
}
union {
?s a ns0:person ;
ns0:age ?age .
filter (?age < 48)
}
}
结果 3:GraphDB 8.6.0 返回两行,但没有命名 Anne 和 Mark:
| | s |
|---|----------|
| 1 | |
| 2 | ns0:Anne |
解决方案
作为@Damyan Ognyanov 响应的补充,该错误将在即将发布的 8.9 版本中修复。
推荐阅读
- angular - 角度路由是否也会重新加载所有父组件?
- python - 对张量流中神经网络中所有权重(不是权重和偏差)的 L1 正则化
- javascript - 在wordpress中过滤类别ajax
- php - 在 QNap (NAS) 上使用 php 连接到 phpmyadmin
- angular - 在视频 addEventListener 中调用另一个方法
- sql - 如何在 SQL 中返回两个值之间的记录
- javascript - 为什么脚本将一个完整的多位数字分隔为单独的数字?
- python - 使用查询从特定表中获取数据并将其显示在 django 的管理端
- c# - 自定义组合框:防止设计师添加到项目
- c++ - C++ 从另一个函数退出函数