0

我正在尝试从 RDF 图下方创建 RDF/XML。我了解基本概念,例如主题/谓词/对象、资源、属性、值/文字,并且基于相同的概念,我创建了一个 RDF 图。

但我想知道如何将同一张图转换(转换)为 RDF/XML 格式?是否有任何工具可以生成 RDF 图并生成 RDF/XML?

我正在使用 Jena,因为我熟悉 Java。

图形

4

2 回答 2

0

但是,我没有找到任何针对给定图形生成 RDF/XML 的工具。但是,我发现https://www.w3.org/RDF/Validator/上的图表显示非常有帮助。它将 RDF/XML 作为输入,对其进行验证,然后生成图形和三元组。就我而言,我使用 JENA 创建 RDF/XML,然后使用 W3C Validator 以图形格式查看。这对我来说同样有帮助。

于 2016-06-27T03:53:40.113 回答
0

您没有提到您是如何创建显示图像的图表的。如果您以编程方式创建它,您可以使用 Jena API 执行相同操作:只需创建模型、创建资源并添加属性。Jena 的 Javadocs 非常详尽,Jena 网站上有一些教程。

然而,在这种情况下,我认为最简单的做法是使用 Turtle 等人类可读可写格式编写图形,然后使用 Jena 或其他库将其转换为 RDF/XML。在这种情况下,您可以编写如下内容:

@prefix : <urn:ex:>

:JavaClass :belongsTo :Domain1, :Domain2, :DomainN ;
           :hasMethod :Method1, :Method2, :MethodN .

如果您以编程方式生成它,您可能会使用缩写较少的形式,例如:

<urn:ex:JavaClass> <urn:ex:belongsTo> <urn:ex:Domain1> .
<urn:ex:JavaClass> <urn:ex:belongsTo> <urn:ex:Domain2> .
<urn:ex:JavaClass> <urn:ex:belongsTo> <urn:ex:DomainN> .
<urn:ex:JavaClass> <urn:ex:hasMethod> <urn:ex:Method1> .
<urn:ex:JavaClass> <urn:ex:hasMethod> <urn:ex:Method2> .
<urn:ex:JavaClass> <urn:ex:hasMethod> <urn:ex:MethodN> .

无论哪种情况,您都可以使用任意数量的工具将其转换为 RDF/XML。例如,使用 Jena 附带的rdfcat命令行实用程序,您可以这样做:

$ rdfcat -out RDF/XML-ABBREV data.n3
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns="urn:ex:">
  <rdf:Description rdf:about="urn:ex:JavaClass">
    <belongsTo rdf:resource="urn:ex:Domain1"/>
    <belongsTo rdf:resource="urn:ex:Domain2"/>
    <belongsTo rdf:resource="urn:ex:DomainN"/>
    <hasMethod rdf:resource="urn:ex:Method1"/>
    <hasMethod rdf:resource="urn:ex:Method2"/>
    <hasMethod rdf:resource="urn:ex:MethodN"/>
  </rdf:Description>
</rdf:RDF>
于 2016-06-20T13:23:49.357 回答