0

我正在使用 Drupal 和 CKAN 开发一个开放数据门户。但是现在客户想要添加 Virtuoso 开源服务作为 SPARQL 端点和链接数据工具。

系统架构类似于下datos.gob.es(西班牙政府的开放数据门户)。

datos.gob.es 系统架构

我很难理解从 CKAN 到 Virtuoso 的数据加载动态,官方文档根本没有帮助。

到目前为止,我已经找到了下一个选项,但不能满足我的实际问题。

  • .rdf在 Quad Store手动上传文件 通过导体接口上传(非自动)
  • 商业版可以通过 ODBC 连接器连接 PostgreSQL CKAN 数据库。(非开源)
  • 使用 RDF 批量加载过程,将文件上传.rdf到临时目录并启动ld_dir()rdf_loader_run()默认情况下不自动)
  • 使用 Virtuoso Jena Provider (¿COMPLEX SCENARIO?)

完美的场景是一种旁路连接,当您将新数据集上传到 CKAN 时,会自动将其 rdf 文件上传到 Virtuoso。

我不知道我是否完全迷失了 Virtuoso 功能。但是有没有办法将 CKAN 连接到 Virtuoso 以便它自动获取.rdf.ttl文件?谢谢。

4

1 回答 1

0

一种方法可能是开发一个带有自定义插件的小型 cKan 扩展,该插件在添加资源时执行,从 cKan 获取数据集 rdf,并发出 http put 请求以将资源放入 virtuoso。看起来 virtuoso 支持 http/put。

http://vos.openlinksw.com/owiki/wiki/VOS/VirtRDFInsert#HTTP%20PUT

$ curl -T kidehen.n3 http://cname/DAV/home/demo/MyData/ -u demo:demo
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
  <HTML>
    <HEAD>
      <TITLE>201 Created</TITLE>
    </HEAD>
    <BODY>
      <H1>Created</H1>Resource /DAV/home/demo/MyData/kidehen.n3 has been created.
    </BODY>
  </HTML>

这是创建插件的文档示例。 https://seanh-ckan.readthedocs.io/en/latest/plugins/

于 2020-01-10T14:13:28.457 回答