问题标签 [stardog]
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.
sparql - 将空白节点从 stardog 映射到 pubby
所以我有这个加载到Stardog上的 .rdf,然后我使用Pubby在 Jetty 上运行,以浏览三重商店。
在我的 rdf 文件中,我有几个空白节点,stardog 为它们提供了一个空白节点标识符。所以这是 rdf 文件的一个片段。
所以基本上我有一些资源“res1”,它具有指向空白节点的链接,该节点具有提及开始和提及结束偏移值。
Pubby 的 config.ttl 文件片段如下所示。
所以关键是 datasetBase 将 URI 映射到 URL。
当我尝试映射它时,有一个“匿名节点”链接,但点击后,什么都没有显示。我的猜测是,这是因为空白节点有一些像 _:bnode1234 这样的标识符,它没有被 Pubby 映射。
我想知道是否有人知道如何映射这些空白节点。
(注意:如果我将这个 rdf 作为静态 rdf 文件直接加载到 Pubby 上,它可以正常工作。但是当我使用 stardog 作为三重存储时,这个映射就不能正常工作了)
rdf - 如何在 Stardog 中将数据库导出到 OWL 文件?
http://stardog.com/docs/using/#export显示了将数据库导出到“ttl”文件的帮助。
我想将数据库导出为一些常见的格式,如“rdf”或“owl”。
如何导出为 OWL 格式或 RDF 格式?
java - 如果我关闭来自 stardog 连接池的连接会发生什么
看看下面的代码。1. 我正在为stardog 创建一个连接池
2. 从池中获取一个连接。3. 使用后将连接返回池。
我的问题是如果我这样做aConn.close()
而不是回到游泳池会发生什么。
如果我关闭连接会发生什么aConn.close();
每当我在没有池对象的任何类中使用连接时,我都会问的主要原因aPool.release(aConn);
是否建议这样做。它会破坏池的使用吗?
java - Stardog 数据库创建给文件未找到异常
我正在使用 java 在stardog 中创建一个新数据库。
当我创建数据库并在 localhost 中导入 RDF 文件时,它的工作。
但是当我在远程服务器中创建数据库时,我得到一个文件未找到同一个 RDF 文件的异常。
请看一下我的代码
请帮忙。是否有任何周转,例如将流传递到数据库以导入 RDF 文件。这是我得到的例外。
java - java中stardog sparql插入查询的示例
有人可以在 Stardog 中给出一个 sparql 插入/删除查询的 java 示例。
只有queryExecution.execSelect()
可用的方法。没有queryExecution.execInsert()
或queryExecution.execDelete()
可用。请举一个可行的例子。
编辑
我从stardog docs page 找到了这个。
http://stardog.com/docs/#notes
从 1.1.5 开始,Stardog 的 SPARQL 1.1 支持不包括: UPDATE 查询语言
这是否意味着一旦输入就无法编辑元组?
stardog - Stardog 2.0 DataNotImpl 无法转换为 ClassExpression
我使用stardog 2.0.0 创建了一个(磁盘)数据库。
我已经将我的本体和一些数据加载到这个数据库中。
当我执行以下命令时,我可以看到我的本体公理和这些数据:
这是返回的公理的选择:
这是返回数据的选择:
当我尝试执行查询以检索所有具有 rdf:type Infection 的个人时,我什么也得不到。
当我添加推理类型 QL 或 EL 时,我得到
当我添加推理类型 DL 时,我得到:
一致性检查也是如此。
我做错了什么吗?
semantic-web - 如何查询匿名输入的实例?
假设我有一个类 ( cls
)、一个对象属性 ( has_part
) 和一个个体 ( ind
)。个人是 rdf:type'd to be (in manchester syntax) (has_part only cls)
。基本上,个人被说成是作为 part 的匿名类cls
。
使用 stardog 作为三重存储,我将如何编写一个查询来提取所有类型的个人(has_part only cls)
?
使用 OWLIM 作为三重存储,我能够编写以下内容:
据我所知,这在 Stardog 中不起作用,无论我使用什么推理级别。这个查询应该怎么看?
谢谢!
编辑 1
我想我过度简化了。如果个人有更复杂的类型,例如(clsa and (has_part only clsb))
,下面的查询应该工作吗?
如果是这样,那么也许stardog 对我的另一部分陈述提出了异议。
编辑 2
约书亚泰勒在下面提供了一个很好的答案。我仍然在解决它的过程中,但它似乎是合理的。
我想写下为什么上述查询在 OWLIM 中有效,但在 Stardog 中无效。OWLIM 在插入时预先计算所有推论。这意味着,使用上面的示例,(clsa and (has_part only clsb))
,ind
被断言为类型clsa
和(has_part only clsb)
直接。Stardog 不这样做,这意味着ind
仅推断为(has_part only clsb)
,并且由于(如下所述)Stardog 不支持通过推理检索匿名类的实例,因此不会拾取这些实例。
Stardog 的等效查询可能是
然而,正如 Joshua 在下面指出的那样,这只会选择被指定为特定类型的个人,这意味着不会选择被断言为clsa
然后被断言为的个人(has_part only clsb)
,这不是我们最想要的可能。
我仍在尝试让 Joshua 的查询正常工作,但它对我来说看起来不错。(我是一个 SPARQL 新手,但我快到了。)
谢谢您的帮助!
编辑 3
上面的查询没有所有中间变量:
java - Stardog Connection.commit() 引发 java.nio.channels.ClosedChannelException
我正在尝试使用连接池将语句添加到 stardog 连接。出于某种原因,在数据摄取进行到一半时,我在尝试提交时收到了 ClosedChannelConnectionException。
例外是:
异常发生后,stardog 服务器崩溃,但日志中没有错误。当我重新启动服务器时,我使用的数据库处于脱机状态,我必须重新创建它才能使用它。
我正在使用 Stardog 2.1 社区版。
有人能帮忙吗?谢谢!
stardog - stardog 示例的 Maven 依赖项列表
有人可以发布运行stardog 2.1.3客户端示例所需的maven依赖项吗?这些关键的不断出现未定义