rudof:RDF 与知识图谱处理工具
用 Rust 实现的 RDF 与知识图谱处理工具,支持 ShEx、SHACL、DCTAP 校验与格式转换。
- 浏览
- 1
- 访问
- 0
- 下载
- 0
- 版本
- v0.3.37
- 平台
- Windows、macOS、Linux
详细介绍
项目简介
rudof 是一个用 Rust 实现的 RDF 与知识图谱处理工具,可处理 RDF 和属性图数据,并支持 ShEx、SHACL、DCTAP、PGSchema,以及不同 RDF 数据建模形式之间的转换。代码可作为 Rust 库使用,同时提供名为 rudof 的命令行二进制,可当作 RDF playground 使用。官方为 Linux、Windows、Mac 和 Docker 提供二进制包,并提供 Python bindings。
主要功能
- RDF 与 RDF 1.2 的解析、转换和可视化
- 对 RDF 数据和 endpoint 执行 SPARQL 查询,并解析 SPARQL service description
- ShEx 支持
- SHACL 支持
- DCTAP 支持
- 属性图与属性图 Schema(PGSchema)
- 计划支持 rdf-config、LinkML
命令行提供以下子命令(部分):mcp、shapemap、shex、pgschema、validate、shex-validate、shacl-validate、data、node、shacl、dctap、convert、compare、rdf-config、service、query、generate、materialize、pgschema-validate、config。
安装与使用
可从 releases 页面下载对应平台的二进制,或使用包管理器安装。Debian 系发行版(如 Ubuntu)可直接安装 .deb 包,把 X.X.X 换成最新版本号:
wget https://github.com/rudof-project/rudof/releases/download/vX.X.X/rudof_vX.X.X_amd64.deb
sudo dpkg -i rudof_vX.X.X_amd64.deb
也可以从源码编译(需要 cargo),例如 cargo build --release 会在 target/release/rudof 生成二进制;此外还提供 Docker 镜像 angelip2303/rudof:latest。
examples 目录中包含 ShEx schema 与 RDF 数据的示例文件。用 ShEx schema 和 ShapeMap 校验一个 RDF 文件:
rudof validate examples/user.ttl --schema examples/user.shex --shapemap examples/user.sm
可通过环境变量调整调试信息级别,取值可以是 error、warn、info、debug 或 trace:
export RUST_LOG=info
也可以在 rudof.toml 中持久配置([logging] level = "debug"),或在交互式 shell 中用 config set logging.level debug 临时修改。
注意事项
- 从 0.2.17 版本起,rudof 的所有依赖版本对齐,若需使用某个特定依赖,必须与 rudof 所用的版本保持一致。
- 不建议使用 0.2.19 到 0.3.0(含)之间的版本,这段范围的 CI/CD 流水线存在问题,部分已发布版本可能无法正常工作,甚至不存在。
- 在 macOS 上运行下载的二进制文件时,首次可能触发安全提示,确认后才能使用;可先用
chmod +x <binary_file>赋予执行权限。
本作品整理自 GitHub 开源项目 rudof-project/rudof,原作者 @rudof-project,许可证 Apache-2.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v0.3.37当前版本
可从 ShEx、SHACL 和 PG-Schema 生成相同的数据,并对错误进行可控处理。
评论