我在 Web 服务器上有一个使用 Python 模块 rdflib 序列化 RDF 三元组的 URL。我想将此内容导入 GraphDB。
rdflib.serialize 输出格式为“xml”。HTTP 标头的 MIME 类型是“xml/rdf”,但结果与 MIME 类型“text/rdf”相同。
当内容保存为以“.rdf”扩展名结尾的文本文件时,GraphDB可以毫无问题地导入该文件,并且存储库内容是OK的。
URL 可以导入到软件“Protégé”中,该软件是一种语义网络工具和 RDF 编辑器。
但是,将相同的 URL 导入 GraphDB 时,我收到错误消息:
"Could not find RDF format for URL: (... my url ... )"
我尝试了几件事,但没有成功:
- 我检查了 GraphDB 是否需要来自 URL 和文本文件的相同数据格式。
- 在 GraphDB“导入高级设置”中,我取消选中了“验证 URI”和“应在错误时停止”标志。
- 我尝试使用 Apache Web 服务器和一个简单的 Python 类 BaseHTTPServer。
我怀疑此错误消息来自openrdf 库,当它无法根据 URL 的文件扩展名或 HTTP 响应标头中的内容类型确定内容类型时,它会输出此消息,但我认为我设置正确。
问题是什么?