问题标签 [arq]
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.
java - Jena/arq 请求没有结果
我正在编写一个语义 Web 应用程序,但 Jena 遇到了一些问题。我想执行一个参数化查询并且没有结果。
以下代码显示了我的查询:
这是我本体的一部分:
java - 如何减小 TDB 支持的 Jena 数据集的大小?
我正在使用一个简单的 Jena 数据集,它只导入了一个 ~30 MB RDF 文件。作为应用程序的一部分,我试图让用户查询默认图(或命名图)并将查询得到的三元组插入到新的命名图中。为此,我使用 CONSTRUCT 语句以 RDF 形式形成三元组的结果集,然后将这些三元组放入新模型(使用 QueryExecution.execConstruct())并将此模型添加到数据集中。这似乎再次起作用,因为数据集获得了一个新的图形节点,并且 TDB 数据库文件夹的磁盘大小增加了。
当我尝试从数据集中删除命名图时,就会出现这里的问题。使用 Dataset 的 removeNamedName("graphName") 方法,我从数据集中删除模型。以后对该模型名称的查询表明它已被成功删除。但是,TDB 数据库文件夹的磁盘大小保持不变,即使在同步和退出之后也是如此。
起初我以为数据库可能只是将已删除文件的空间标记为空闲,以便在新数据进入时可以将其覆盖,但事实似乎并非如此。如果我删除一个命名图并在同一程序运行后立即替换它,该文件夹似乎没有增长,但如果我添加一个新的命名图并在同一运行中删除它,文件夹大小会变大,模型删除不会释放内存,这意味着在几次运行后,数据库文件夹的大小是其原始大小的五倍或十倍,而不再保存任何数据。
任何见解或帮助都会很棒,再次感谢。
sparql - Jena StmtIterator 和数据库
我将模型存储在三重存储(持久性)中。我想选择与某个文档名称相关的所有个人。
我可以通过两种方式做到这一点
1) SPARQL 请求:
问题:如何从 ResultSet 创建 Jena 的模型?
2) StmtIterator stmtIterator = model.listStatements(...)
这种方法的问题是我需要多次使用 model.listStatements(...) 操作:
a) 通过文档名称获取文档 URI
b) 获取与此文档 URI 相关的个人 ID 列表
c) finally - 得到一个个体的集合
我关心性能 - 3 次运行 model.listStatements(...) - 许多数据库请求。
或者在模型创建期间从数据库中将所有数据读入内存(我对此表示怀疑):
?
sparql - Jena/Arq:查询处理卡住了
如果以下 SPARQL 查询有问题:
在 potégé 4.2 中,这个查询没有任何问题,并在 1 秒内返回结果。此外,使用 SPARQLer 查询验证器 (http://www.sparql.org/query-validator.html) 进行的语法检查表明 SPARQL 查询是有效的。但是使用 jena arq 引擎,查询处理在等待结果集时一直卡住。我在命令行中使用 jena-arq-2.9.1 以及在具有以下代码的 java 应用程序中进行了尝试:
也许有人知道问题出在哪里。
sparql - 一个使用 Jena ARQ 进行选择、描述和构造的 SPARQL 端点
我构建了一个简单的网页作为前端用户界面,供用户输入 sparql 查询。我使用 Jena ARQ 作为后端(我使用 Grails)sparql 查询引擎。目前,用户只能输入“选择”查询,我使用:
执行查询并返回结果。但现在,我还希望用户从同一页面向后端发送 Describe 和 Construct 查询。正如在这个线程中讨论的那样:Jena Sparql 和construct,我们需要使用
在后端。所以我的问题是,在后端,我如何知道查询字符串是 Select 查询、Describe Query 还是 Construct 查询,以便我可以从 execSelect()、execDescribe() 或 execConstruct() 中进行选择?我需要为前端更改什么吗?
sparql - Jena/Sparql/Arq:在查询期间在模型中注入一些语句
我建立了一个小型 RDF 模型:它只包含几个三元组,描述了人类基因组上的一些项目。
我只想保留那些与某些基因组片段(比如“基因”)重叠的项目,这些项目存储在另一个关系数据库中。这个基因数据库太大了,无法插入到我的初始 RDF 模型中。
有没有办法扩展 ARQ 以在查询期间在我的模型中注入一些新的语句(描述与项目重叠的唯一基因的 RDF 语句)?
输入:
输出:
我读过关于http://jena.sourceforge.net/ARQ/arq-query-eval.html但我迷路了:我应该选择哪种扩展机制?财产 ?网络上有更完整的例子吗?
谢谢,
sparql - 对本地文件的 SPARQL 更新查询
我正在尝试使用 jena arq 使用 SPARQL 更新查询来更新本地 rdf 文件。以下是代码
执行代码后,它表明查询已成功执行,但本地文件未更新。
sparql - 如何使用 Jena 获取 Dbpedia 资源详细信息?
在通过其Sparql 端点查询dbpedia后,我将结果作为对象。那么我怎样才能得到这个资源的详细信息呢?例如,如果这个资源是一个人;我怎样才能得到他/她?Jena ResourceImpl
birthDate
我试过这个;但它总是返回 null。
rdf - Jena SPARQL 更新不执行
我的情况很简单:我有一个要上传到 sparql-auth-endpoint 的 RDF (N3) 文件。我使用 Jena ARQ,但不幸的是它不起作用;我没有收到任何错误,但图表没有改变。问题可能出在哪里?我的代码:
如何修改代码以将该数据上传到 sparql-endpoint?
编辑 1
这是一个较小的示例,也不起作用。我可以在浏览器中通过 sparql-endpoint 创建一个新图形,但在 Jena 我不能;没有错误,没有新图表。
编辑 2
使用带有 sparql-auth-endpoint 的 Virtuoso 服务器,我更改了这些行并且效果更好。
好吧,它可以在 localhost:8890 上运行,但不能在另一个 virtuoso 服务器上运行
sparql - 目前处于锁定区域:Fuseki + 全文搜索 + 推理
我最近开始在 Fuseki 0.2.8 快照中使用全文搜索。
我有一个由 TDB 数据集支持的 InfModel,我在其中添加了一个 Lucene 文本索引。我已经用这样的一些搜索查询对其进行了测试:
这很好用,直到我对 Fuseki 有两个或多个同时查询,然后偶尔我会得到:
我尝试使用 10 个并发用户以随机间隔发送查询来测试端点,在两分钟内,大约 30% 的查询返回上述 500 错误。
我还尝试通过替换此部分来禁用推理(下面的完整汇编文件):
有了这个:
并且当 TextDataset 使用 #tdbDataset 而不是 #dataset_inf 时不会产生异常。
我的设置是否有任何问题,或者这是 Fuseki 中的错误?
这是我当前的汇编文件:
这是 Fuseki 日志中的一个异常的完整堆栈跟踪:
任何建议表示赞赏。
谢谢,斯图尔特。