java - 如何从 Jena 获取嵌套的 RDF/XML?

标签 java rdf jena

我需要创建如下所示的 RDF:

<rdf:Description rdf:about='uri1'>
  <namespace:level1>
    <rdf:Description>
      <namespace:blankNode rdf:resource='uri2'/>
      <namespace:text></namespace:text> 
    </rdf:Description>
  </namespace:level1>
</rdf:Description>

<rdf:Description rdf:about="uri2">
  some properties here
</rdf:Description>

如您所见,有嵌套结构,也有空白节点。 (我不知道这是否是我结构中“blankNode”属性的确切术语。)如果我使用

model.write(System.out, "RDF/XML-ABBREV");

然后连空白节点都被嵌套了,这是我不想要的。有没有办法使用耶拿获得这种结构?或者是否有任何其他 Java 库可以更好地处理这个问题?

最佳答案

我认为你的做法是错误的。

嵌套是一个只有在谈论树时才有意义的概念。但 RDF 与树无关,它与三元组有关。暂时忘掉 XML 的结构,想想在 XML 中编码的三元组。我发现 model.write(System.out, "N-TRIPLES"); 对此最有用。

您首先需要了解您希望 RDF/XML 文件表达哪些三元组。只要它表达正确的三元组,一个节点是否嵌套在另一个节点中或事物出现的顺序都无关紧要。这些纯粹是“装饰性”问题,例如缩进。

关于java - 如何从 Jena 获取嵌套的 RDF/XML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10476022/

相关文章:

java - redis.clients.jedis.exceptions.JedisException : Could not get a resource from the pool

java - 如何在无状态 Wicket 应用程序中使用 FeedbackPanel?

Java返回值取决于字符串中猫和狗的出现?

hadoop - sparql join query解释如何工作?

Java 自定义记录器 : logging standards or/and best practices

java - 使用不同程序但具有不同结果的相同 Sparql

rdf - RDF XML 中的整数和日期时间文字

java - 如何将 Jena 规则添加到 OntModel

java - 带 TDB 的 Jena 规则引擎

java - 查询挪威出生的人会导致未定义的命名空间前缀