关于虚拟知识图谱系统ontop的入门实践
官网:https://ontop-vkg.org/guide
根据指导进行操作实践:
环境: java 8 ,Git,Github,h2数据库
git clone https://github.com/ontop/ontop-tutorial.git
cd ontop-tutorial
- 数据库设置
为下列工作建立数据库的过程:- 解压缩h2的存档(h2.zip)
- 启动数据库:
- 在mac/linux上:打开终端,进入H2/bin跑sh h2.sh
- 在Windows上:单击可执行文件h2w.bat
- 自动重定向到h2的web接口后,连接到默认参数:
- JDBCURL:Jdbc:h2:tcp://localhost/…/university-session1
- 用户名:sa
- 无密码
- 下载ontop-toturial文件夹,里边有h2数据库的压缩包,直接使用即可
- Ontop-Protégé可视化软件下载
https://sourceforge.net/projects/ontop4obda/files/ontop-3.0.0/ontop-protege-bundle-3.0.0.zip/download
-
点击file–》Preferences–》添加数据源
- 点击Add —》 添加JDBC驱动程序
- 描述:h2
- 类名:Org.h2.Driver
- 驱动程序文件(JAR):/path/to/h2/bin/h2-1.4.196.jar
可能会报错h2jar包找不到
解决方案:根据相对路径–》找到h2数据库的jar包
- 映射数据源:
添加ontop-sparql,ontop-Mapping组件,去映射数据源;
按照教程操作;基本完善; - 部署端点
- 使用ontop-CLI命令行来实现端点部署
- 在github下载4.0.3的ontop-CLI;
- 有三个数据文件:ttl,obda,properties文件;
- 把三个数据文件放到ontop-toturial文件夹底下的endpoint文件夹底下的/input文件夹底下
- 执行ontop-cli命令行命令;
-
这里我实现的时候有三个问题:ontop endpoint ^ --ontology=input/university-complete.ttl ^ --mapping=input/university-complete.obda ^ --properties=input/university-complete.properties ^ --cors-allowed-origins=http://yasgui.org
- 一个是Driver驱动没有找到
把数据库驱动文件复制到ontop-cli文件夹底下的jdbc文件夹底下 - 二是文件夹找不到
指的是三个配置文件找不到;
在执行ontop命令时,官方提供的命令可能在路径上不使用
要改为相对路径或绝对路径 - 三是使用其他的sparql编辑器访问我们部署的端点的时候会报CORS错误
在sparql编辑器来访问我们部署的端点的时候,会被拦截;
解决方案:
ontop endpoint ^
–ontology=input/university-complete.ttl ^
–mapping=input/university-complete.obda ^
–properties=input/university-complete.properties ^
–cors-allowed-origins=*
- 一个是Driver驱动没有找到
- 点击Add —》 添加JDBC驱动程序