RDF数据集规范化比较
使用RDFC-1.0比较两份本地RDF N-Quads,识别空白节点重命名,并保留命名图。
- 1添加输入
- 2调整设置
- 3获取结果
工具输入和文件在当前浏览器处理,不会上传。
开始之前
判断两份RDF导出是否只是空白节点标签不同。分别下载规范化数据集,查看两个规范行集合之间的新增和删除。
如何使用
- 两侧粘贴严格N-Quads,或打开左侧本地导出并粘贴右侧内容。
- 运行规范化比较,核对等价状态、去重quad数及新增、删除数量。
- 下载左右规范N-Quads和比较报告。空白节点较多时把差异视为数据集比较,不直接作为最小修改方案。
支持范围与限制
左侧单个UTF-8文件或粘贴文本,加右侧粘贴文本,总计最多2 MiB、10,000条已解析quad。允许空数据集。完全相同的quad按集合语义去重,并报告重复数量。选中左侧文件优先于粘贴文本。
仅接受严格RDF 1.1 N-Quads:绝对IRI、空白节点、类型/语言字面量和命名图。Turtle前缀、RDF/XML、RDF-star、相对IRI和非法quad角色拒绝。解析器把语言标签规范为小写;保留IRI、数据类型的含义。无推理或自动IRI对齐。
明确使用RDFC-1.0和SHA-256,不暗中替换算法。每个空白节点连通分量最多256个节点,深度工作迭代最多10,000次,处理期限10秒。超限时整次拒绝;可通过专用Worker与算法中止信号取消。规范化下载总计最多10 MiB。
新增与删除比较的是分别规范化后的行集合,不是最小编辑距离,也不表示持久空白节点身份。小幅图结构变化可能重排许多空白节点标签,扩大差异。此工具不认证RDF签名。预览最多200行差异,JSON及规范N-Quads下载完整。
操作示例
示例输入
_:alice <https://example.com/name> "Alice"@en <https://example.com/team> .
示例参数
{"secondary": "_:person <https://example.com/name> \"Alice\"@en <https://example.com/team> .\n", "params": {}}示例输出
{
"algorithm": "RDFC-1.0",
"equivalent": true,
"leftQuads": 1,
"rightQuads": 1,
"leftDuplicates": 0,
"rightDuplicates": 0,
"removed": [],
"added": [],
"comparison": "separately-canonicalized-set-difference"
}出现问题时
修正N-Quads语法,或先将其他RDF格式导出为受支持格式。若超出对称图或工作预算,只在语义允许时简化或分区。修正后重新运行示例;失败不会输出部分规范化结果。
常见问题
空白节点改名算变化吗?
若两份数据集同构且在工作预算内完整处理,RDFC-1.0会产生相同规范形式。
为什么小修改产生很多差异?
两份数据集分别规范化。图结构变动可能改变规范空白节点标签。
能比较Turtle或RDF/XML吗?
请先导出为严格RDF 1.1 N-Quads,本任务仅支持这一种交换语法。