Protege 与 Neo4j 构建教育领域知识图谱及前端可视化实战
1. 工具下载
1.1 Protege 的安装
版本说明:Protégé-5.5.0
了解其基本使用。
1.2 Neo4j 的安装
注意 JDK 版本的切换,建议 JDK 11。
2. Neo4j 导入 Protege 文件
2.1 启动 Neo4j
Win+R 输入 cmd,执行以下命令:
neo4j.bat console
2.2 Protege 导出 OWL 文件转 Turtle 文件
在 Protege 中导出 OWL 文件后,需转换为 Turtle 格式。若遇到无法生成或文件为 0KB 的情况,可尝试手动转换。
在文件夹内 Shift + 鼠标右键打开 PowerShell,输入指令(源文件为 creature.owl,输出为 creature.turtle):
java -jar rdf2rdf-1.0.1-2.3.1.jar creature.owl creature.turtle
确认转化后的文件大小不为 0KB 即为成功。
2.3 导入 Neo4j
1. 清除数据库中的所有数据
MATCH (n) DETACH DELETE n;
2. 初始化 RDF 导入配置
CALL n10s.graphconfig.init();
3. 导入 RDF 数据
CALL n10s.rdf.import.fetch("file:///E:/BaiduNetdiskDownload/owl 导入 neo4j/第一单元_test.turtle", "RDF/XML", {handleVocabUris: "IGNORE"})
注意修改文件路径。
4. 查询所有(部分)数据
MATCH (n) WHERE n:`节点名称 1` OR n:`节点名称 2` OR n:`节点名称 3` RETURN n LIMIT 500;
5. 查询边关系
MATCH ()-[r]->() RETURN DISTINCT type(r) AS relationshipType
6. 一些细节
节点信息的 URI 通常有较长前缀,可使用以下指令清理:
MATCH (n) SET n.uri = REPLACE(n.uri, 'http://www.semanticweb.org/florence/ontologies/2025/1/untitled-ontology-9#', '') RETURN n
注意更换你自己的 URI 前缀。
3. Neo4j 导出 JSON 文件
导出 JSON 的目的是方便后续利用 Echarts 进行可视化。需要借助 APOC 库。
检验是否下载成功:
RETURN apoc.version()
导出文件:
CALL apoc.export.json.query(
"MATCH (n) WHERE n:`节点名称 1` OR n:`节点名称 2` OR n:`节点名称 3` OPTIONAL MATCH (n)-[r]->(m) RETURN n, r, m LIMIT 500",
"file:///E:/neo4j/neo4j-community-4.4.41/import/output_3.0.json",
{format: 'PLAIN'}
)


