当尝试加载包含大约 7M 三元组的 ntriples 文件时,我从 REST-API 收到以下错误:
{"errorResponse":{"statusCode":500, "status":"Internal Server Error",
"messageCode":"INTERNAL ERROR",
"message":"SVC-CODEPOINT: (err:FOCH0001) xdmp:nquad($body, $options) -- Codepoint not legal . See the MarkLogic server error log for further detail."}}
错误日志在这里并没有更多帮助:
2021-01-13 14:24:53.771 Info: Status 500: SVC-CODEPOINT: (err:FOCH0001) xdmp:nquad($body, $options) -- Codepoint not legal
我已通过说唱歌手和 Jena 的防暴验证运行该文件,这两种工具都没有引发文件或任何特定三元组的问题。
我如何使用 MarkLogic 解决此问题?
我可以生成一个采用不同序列化的文件,但这让我重写了我的代码,当它过去工作过并且适用于批处理中的其他两个文件时。不同的序列化可能会起作用,如果不起作用,则可能会生成相同的错误。无论哪种情况,我都没有真正确定问题所在。文件里一定有什么东西,但我想找到它,因为我们也恰好是 n三元组的来源。
最佳答案
我可以删除这个问题,但如果它对某人有帮助......
将 ntriples 转换为 RDF/XML 并加载该文件。 MarkLogic 会吐出一条更有值(value)的错误消息:
2021-01-13 16:10:43.292 Info: Status 400: XDMP-DOCXMLCHAR: xdmp:get-request-body("xml") --
Invalid XML character codepoint 55358 at line 14398744 -- document contains non-XML character
关于marklogic - SVC-CODEPOINT 将三元组加载到 MarkLogic 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65709182/