问题标签 [rdf4j]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
rdf - 有没有一种简单的方法可以在不使用 OWL API 的情况下将 OBO 格式的文件摄取到 RDF4J 中?
除了 Turtle、RDF/XML 等之外,我还希望能够将 OBO 格式的文件摄取到 RDF4J 中......
看起来 OWL API 有一些解析器可以这样做,但我试图避免使用 OWL API。还有其他已知的方法吗?
sparql - SPARQL 查询形成
我有 RDF 数据,我想形成一个 SPARQL 查询来获取与特定生物名称匹配的记录。
仅供参考,我使用 RDF4J 使用可用的 JSONLD 数据生成 RDF 记录。我在获取与任何特定的 PropertyValue 集匹配的记录时遇到问题。示例:有机体为 Equus caballus 的所有记录或提交标识符为 GSB-7331 的所有记录。
任何帮助深表感谢。
数据记录如下:
我用来生成 RDF TURTLE 数据的代码如下,我从 - https://www.ebi.ac.uk/biosamples/samples/SAMN03177689.ldjson下载 JSONLD 中的示例数据
sesame - RDF4J SAIL API 实现
我正在尝试构建基于 rdf4j 和 FedX 的联合 RDF 应用程序。我需要的是能够:
- 优化查询计划和加入策略。
- 以联合方式公开不同的异构数据库(例如时间序列或关系数据库)。
我稍微浏览了一下 rdf4j 文档并掌握了。因此我有一些小问题:
- 是否有任何文档解释如何实现 SAIL API?我尝试使用 RDF 内存存储调试并遵循示例查询的执行流程,但我迷路了。
- 假设我想在我的数据中心公开一个关系数据库,我应该实现 SPARQL 存储库还是 HTTP 存储库?无论如何我应该实施 SAIL api 吗?
- 关于 fedX,我如何才能使用 SPARQL 1.1 联合查询中提出的 SERVICE 和 VALUES 术语?我怎样才能改变乔宁的策略?查询计划?
我知道如果我深入研究代码可以回答这个问题,但我想知道是否有人已经使用 rdf4j API 公开了某种数据库,或者甚至工作和调整了 RDF4J。
谢谢大家!
graphdb - 存储库 ID 中的 GraphDB 点?
我注意到 GraphDB 与 RDF4J 相比,不允许在存储库 ID 中使用点。我们有包含一些分类法的版本化存储库。版本号用于存储库 ID,例如:taxonomy-0.1.3
.
虽然这在 RDF4J 中运行良好,但我必须在 GraphDB 中以不同方式调用这样的存储库,例如taxonomy-0_1_3
. 我希望能够SERVICE
在 RDF4J 和 GraphDB 上通过联合(调用引用分类存储库)使用相同的查询集,以便我可以根据用例在两者之间切换。在 RDF4J 中,我可以通过使用无版本 ID 指向特定版本化存储库的联合存储来解决版本号问题。但是,据我所知,GraphDB 不支持联合存储库。
有谁知道如何克服这样的问题?或者是否有任何计划在 GraphDB 中支持限制较少的存储库 ID?
非常感谢
sparql - 如何在 sparql 中检索数据时保持顺序
有没有办法在sparql中确保检索期间的顺序?
假设我想将List<Literals>
(重要的订单)存储为对象
{:subj :pred 'o1'. :subj :pred 'o2'. :subj :pred 'o3'}
如何插入上述数据,以便在执行select ?s ?p ?o where {?s ?p ?o}
订单时不会更改?
sparql 在检索时是否始终保留插入数据顺序?
在上面的例子中,我以文字为例。有没有办法保留 IRI 的顺序?
我在 sparql 上看过文档RDF.Seq
,但我并不完全了解如何使用它。请提供一些简单的插入和选择查询以确保订单或共享任何相关资源。
sparql - 在 sparql 中使用容器与不使用容器的优势
普通数据插入
使用容器插入数据
当我使用基本的选择查询时,上述两个插入模型都以相同的顺序返回结果(o1,o2,o3)。
我们通过容器方法(rdf:Seq
)得到什么好处?
只是rdf:Seq
为了表示目的,还是在被查询时它会在后台执行任何操作(即保留插入顺序)?
我的理解:即使是容器插入模型在检索时也与基本正常模型相同。因此,即使使用容器模型,检索时也无法保证插入顺序。我真的不明白rdf:Seq
(文档链接)的意义
sparql - DELETE WHERE 不使用属性路径序列 sparql
第1部分:
这些是已经存在的三元组。
我想删除距离 o1 节点 2 个节点的节点属性。
我想出了这个查询来删除与 o3 节点相关的三元组。但是当我运行这个查询时,我遇到了一些错误。
通过一些替代查询,我可以完成这项工作。
但是上述查询中的错误是什么?
为什么路径属性查询不适用于删除位置?
第2部分:
对于相同的三元组数据,删除所有使用的三元组的查询是
这不会从三重存储中删除任何数据。而通过使用构造,我可以使用相同的 where 子句检索数据。
这些查询中有什么问题,我错过了什么吗?
sparql - 如何显示不同的学生对?
如果我的图表中有这样的关系,我如何显示不同的学生对:
在我的选择中,我有这样的东西:
但是使用我的图形数据,输出将是:
我只想:ST1 :BOOK1 :ST2
显示关系。
sparql - 在 SPARQL 中插入带有转义字符的文字
我想使用插入语句插入其中有括号(“)的文字。
sparql 插入数据 { pred:a pred:b "Literal"}
上面的查询工作正常。
sparql 插入数据 { pred:a pred:b "\"Literal\""}
我想添加文字以及围绕它的引号。但是上面的查询失败了。
如何插入文字和引号?
json - RDF4J SPARQL 查询到 JSON
我正在尝试将数据从 SPARQL 端点移动到 JSONObject。使用 RDF4J。
RDF4J 文档没有直接解决这个问题(一些关于使用端点的信息,更少关于转换为 JSON 的信息,以及这两种情况相遇的地方)。
到目前为止,我有:
这失败了,因为“服务器以不受支持的文件格式响应:application/sparql-results+json”
我认为 SPARQLGraphQuery 应该代替 GraphQuery,但 RepositoryConnection 没有相关的准备语句。
如果我交换
和
我遇到了 SPARQLConnection 不生成 SPARQLGraphQuery 的问题。我能得到的最接近的是:
这会导致运行时错误,因为这些类型不能相互转换。
我不知道如何从这里开始。非常感谢任何帮助或建议。谢谢