首页 > 解决方案 > 如何自动将 CKAN 数据导出到 Virtuoso Open Source Edition?

问题描述

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

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

datos.gob.es 系统架构

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

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

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

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

标签: ckanvirtuosoopenlink-virtuoso

解决方案


一种方法可能是开发一个带有自定义插件的小型 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/


推荐阅读