问题标签 [d2rq]

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.

0 投票
2 回答
2937 浏览

java - 如何在 Java 中使用相对路径编写文件

我有个问题:

我有这个 Java 代码:

此代码生成映射并使用 D2RQ 库。当我执行这段代码时,我从相对路径中得到这个错误:

我的问题是:如何使用相对路径编写文件?以及如何在我写完这个文件后读取它?我正在使用 Netbeans。

0 投票
0 回答
649 浏览

java - 当我使用 D2RQ 库连接到 MySQL 数据库时,通信链接失败

我有个问题:

我有一个 Web 服务,它运行在具有 Ubuntu 12.04 操作系统的远程服务器上的虚拟机上。

现在,我想测试这个 Web 服务,我正在使用我在我的 Web 服务客户端中开发的这段代码:

此代码希望选择与数据库的连接信息并将其提供给我的 Web 服务。然后,我的 Web 服务将使用 D2RQ 库将数据库中的信息转换为 RDF。My Web Service Client 是使用虚拟机的 IP 地址创建的。

当我运行此代码时,我收到此错误:

如果我在本地运行此代码,我不会收到此错误。事实上,如果我在本地机器上使用 Web 服务的 IP 地址创建我的 Web 服务客户端,我不会收到此错误。为什么我会收到此错误?

0 投票
1 回答
154 浏览

mysql - 如何使用 D2RQ 组合多个 MySQL 数据库?

我有四个不同的 MySQL 数据库,我需要将它们转换为关联数据,然后对聚合数据运行查询。我已经分别生成了 D2RQ 映射,然后手动将它们一起复制到一个文件中。我已经阅读了一些关于自定义地图的材料,但我发现在我的情况下很难这样做,因为:

  1. 本体类不对应表名。事实上,大多数类都是列标题。
  2. 当我在 Protege 中打开组合映射时,它仅生成 3 个类(ClassMap、Database 和 PropertyBridge)并将所有列标题列为这些类的实例。
  3. 如果我将这个文件导入到我的本体中,一切都会变成注释。

请提出一种有效的方法来生成通过将这些数据库映射到我的本体而形成的单个图。

这是一个例子。我正在使用 EEM 本体来细化 D2RQ 生成的映射文件。这是映射文件中的一部分:

我感兴趣的本体有以下内容:

现在,我应该如何修改映射文件,使日期和时间成为两种不同的关系?

0 投票
0 回答
153 浏览

mysql - D2R Server-Sparql Join with-generate-mapping DB MySQL

我必须在现场从这 2 个表中加入ID_CLIENTI。MySQL DB 上的这些表通过海龟文件中的 D2R 服务器上的 generate-mapping 进行映射。

我的查询是:

但是,它返回未找到任何行。

0 投票
0 回答
95 浏览

sparql - Openlink Virtuoso 不使用 SERVICE 子句应用 FILTER

我正在尝试从 Virtuoso 和 Fuseki-server 运行以下查询。我使用该SERVICE子句连接到 D2R 的 SPARQL 端点。问题在于,虽然 Fuseki 正确应用了FILTER,但 Virtuoso 并没有做同样的事情并返回整个未过滤的结果集。

我将 Virtuoso 版本号07.20.3214用于 Windows、Fuseki-server 版本2和 D2RQ 版本0.8.1

查询如下

关键FILTER是没有应用。使用 Virtuoso,我得到了 who 的结果?arrivalTime <= 2015-01-01T09:00:00+02:00,而 Fuseki 工作正常。

如果我运行“正常”查询,SERVICE例如,FILTER在 Virtuoso 中也可以正常工作。

可能是哪些原因?

0 投票
1 回答
5851 浏览

java - 如何设置 oracle JDBC 数据库 URL

我正在使用一个需要访问我的 oracle 数据库以使用我的数据执行一些任务的应用程序。

该应用程序需要两个属性,它们是:

d2rq:jdbcDSN

JDBC 数据库 URL。这是一个 jdbc:subprotocol:subname 形式的字符串。对于 MySQL 数据库,这类似于 jdbc:mysql://hostname:port/dbname。其他数据库的示例#

d2rq:jdbcDriver

数据库的 JDBC 驱动程序类名。与 d2rq:jdbcDSN 一起使用。示例:用于 MySQL 的 com.mysql.jdbc.Driver。#

我想连接到具有此版本的 Oracle 数据库

SQL developer通常我使用我刚刚设置的应用程序连接到我的 oracle 数据库:

  1. 主机名
  2. 用户名和密码
  3. 服务名称
  4. 架构

现在要从这个新应用程序(现在是 sql 开发人员)连接到我的数据库,我需要这样做(从这个页面http://www.devx.com/tips/Tip/28818

所以我将该模板更改为:

我将它复制 ojdbc6.jar到 bin 文件夹中

当我运行时,我收到此错误:

与 jdbc:oracle:thin:@HostName:Porto:ServiceName 的数据库连接失败(用户:用户名):侦听器拒绝连接并出现以下错误:ORA-12505,TNS:侦听器当前不知道连接描述中给出的 SID

听起来 SID 应该替换为服务名称。(我不确定)您是否知道如何解决它以及我所做的是否正确?

当然,出于隐私原因,我隐藏了真实的数据库、主机和密码,所以请执行我

0 投票
1 回答
106 浏览

sparql - RDF 更改格式以包含前缀

我正在使用 d2rq.org 将我的关系数据库数据更改为 RDF 格式,我可以使用 http://d2rq.org/dump-rdf编写结果转储

我这样做了,但生成的三元组如下:

但是,我更喜欢有前缀实体,而不是全长 URI。

我正在使用以下方法提取数据:

即使我将映射文件更改为

结果是:

他们总是包括< >

0 投票
0 回答
30 浏览

tomcat - 在 svn 中存储修改后的 3rd 方配置文件

我正在运行一个项目,其中包含 2 个D2RQ实例,这是一个(第三方)Tomcat 应用程序,我正在ant使用提供的build.xml.

目前,我在主要开发实例之外有一份 D2RQ 代码副本;当我需要更新任何一个 D2RQ 实例时,我会更改web.xml文件(只是设置相关.ttl映射文件的名称)、编译代码并部署到 Tomcat。

关于如何在 SVN 中进行管理,是否有任何行业最佳实践?我团队的其他成员(其中大多数人目前不使用 D2RQ)想要一种直接的代码存储方式。有几个选项(在所有情况下,我显然会将这两个.ttl文件都存储在 repo 中):

  • 为 SVN 中所需的每个实例存储 D2RQ 代码的完整副本
  • 仅存储 D2RQ 实例的 1 个副本,并带有非常好的文档,以便我团队中的任何其他开发人员都能够在必要时进行更新(即,他们知道他们必须web.xml在编译 D2RQ 之前编辑,等等)
  • web.xml文件(或每个 D2RQ 实例的 1 个副本)存储在 SVN 中。也许这有助于将 D2RQ 代码的其余部分存储在供应商分支中?
  • 将 D2RQ 修改web.xml到我可以创建一个构建脚本(在 maven 或 ant 中)的程度,该脚本将在构建整个项目时始终构建两个 D2RQ 实例,而不是需要将它们彼此分开编译(以及从整个应用程序编译) )。这样做的缺点是,如果一个新版本的 D2RQ 修改了web.xml.,我需要做更多的工作来更新我的构建脚本。
0 投票
1 回答
118 浏览

rdf - 使用 D2RQ 将类型三元组添加到 rdf 文档

如果我使用默认的 d2rq 映射文件 (ttl),我的所有列都映射到 rdf 属性。例如,列 ID 变为属性“hasID”(重命名后)。

我想替换 rdf 属性三元组或添加进一步的类型三元组,以便我的结果是

文档 [1] 指出类型是自动生成的。

你知道如何得到这样的结果吗?我需要区分 DatatypeProperty 和 ObjectProperty,以便将它们正确导入 OWL-API [2]。

[1] http://d2rq.org/d2rq-language [2] https://sourceforge.net/p/owlapi/mailman/message/35333117/

0 投票
1 回答
60 浏览

jena - 修改 D2RQ 返回的 Jena 模型

D2RQ 使用 Jena 模型创建 DB 的 RDF 表示。

我知道返回的模型是“只读”模型。

因此,如果我尝试将资源添加到模型中,则会收到“jena.shared.AddDeniedException”异常。

如何将模型 m 从数据库中分离出来以便我可以修改它?我不想写回模型,我只是使用 D2RQ 来获取一个基于 RDF 的 DB-dump,我想进一步处理它(我知道像 D2RQ 更新这样的扩展可以通过修改 RDF 图来修改数据库,但我不想修改数据库)

谢谢