我正在使用Jena加载JSON-LD文档:
Model mj = RDFDataMgr.loadModel([filename]);
正在加载的实际内容位于:http://build.fhir.org/account-example.jsonld
Jena下线并解析上下文,并返回一个错误(LOADING_REMOTE_CONTEXT_FAILED - 对Jena代码中实际原因的可爱抑制:-()。但我还是需要覆盖上下文,并使用不同的源,因为我我正在构建将在build.fhir.org上发布的内容,我需要使用我的本地版本。我无法看到如何覆盖上下文解析
或者,我可以使用此处记录的加载方法:https://github.com/jsonld-java/jsonld-java#code-example - 但我不知道如何从那里获取Jena图(我还没弄清楚如何使自定义解析工作在我的Eclipse上下文中))
如何使用代码中定义的上下文来获取Jena图?
答案 0 :(得分:0)
我认为Jena devs订阅了相关的标签RSS流。他们可能会对LOADING_REMOTE_CONTEXT_FAILED
错误的清晰度进行权衡。但对我来说似乎很清楚。
为了覆盖上下文,您可以使用read(Model model, String uri, Context context)
方法。 ModelFactory.createDefaultModel()
将创建一个Model
的intance,您可以将其作为第一个参数传递。请在此处查看更多示例:https://github.com/apache/jena/tree/master/jena-arq/src-examples/arq/examples/riot
替代库不兼容Jena(也不是RDF4J,这让我觉得相当愚蠢),所以没有简单的方法可以将它与Jena相关的代码一起使用。
最后,您提供了获取模型的代码示例,但现在提到了一个图表 - 还有一种方法:read(Graph graph, String uri, Context context)
。