【问题标题】:Convert rdf to xml将rdf转换为xml
【发布时间】:2011-11-02 11:59:20
【问题描述】:

我需要通过 C# 中的过程将 RDF 文件转换为 XML。这可能吗?


我需要一个可以将一个或多个Oracle报告(.rdf)转换为XML的进程或命令,例如:

我们启动 example.rdf 并需要一个将 example.rdf 转换为 XML 文件 (example.xml) 的过程,该文件包含与 rdf 文件相同的信息。

我搜索并找到了 rwconverter.exe Oracle http://download.oracle.com/docs/html/B10314_01/pbr_cla.htm#634712。我也看到了 rdf2xml http://www.semwebtech.org/rdf2xml/,但如果它是正确的方式,就不会。

非常感谢

【问题讨论】:

  • 大部分(如果不是全部)RDF 文档都是用 XML 描述的。那么问题到底是什么呢?
  • 所有的RDF图都可以用XML表示吗?我不认为是这种情况,例如具有多个父节点的节点。
  • @chibacity 是的,您完全正确,由于许多技术限制,RDF/XML 只能表示所有可能图表的子集。具有多个父节点的节点实际上不是其中之一,但还有其他问题与无法压缩为 QNames 和 XML Literals 以命名一对的 URI 相关

标签: c# visual-studio-2008 rdf


【解决方案1】:

您的问题不清楚,但我将给您一个使用开源 API dotNetRDF 的快速示例,我是一名开发人员,用于在 RDF 序列化之间进行转换。如果这不是您的意思,那么您需要扩展您的问题以解释您想要做什么,正如其他人已经评论过的那样。

在一种 RDF 序列化和另一种 RDF 序列化之间进行转换的最简单方法:

Graph g = new Graph();
g.LoadFromFile("input.ttl");
g.SaveToFile("output.rdf");

上面的示例将接收input.ttl 并尝试将其读取为 Turtle(基于文件扩展名进行自动格式检测),然后尝试将其保存为 RDF/XML(再次基于文件进行自动格式检测扩展名)。

如果您的文件扩展名不是标准的,您可以明确指定读取器和写入器,例如

Graph g = new Graph();
g.LoadFromFile("input.temp", new RdfJsonParser());
g.SaveToFile("output.temp", new NTriplesWriter());

该示例将输入文件读取为 RDF/JSON,输出为 NTriples。

如果您只想进行转换并且要转换大量输入数据,则可以使用更节省内存的方法来执行此操作,因为上述示例需要先将整个输入加载到内存中。如果输入太大,您可能会在尝试运行上述文件时遇到OutOfMemoryException(如果您的文件为数百兆字节,则上述方法可能会遇到此问题)。

如果您有兴趣查看替代转换方法,请发表评论,我可以添加利用纯流转换 API 的示例,但代码没有这些示例那么明显。

【讨论】:

  • 我需要一个可以将一个或多个Oracle报告(.rdf)转换为XML的进程或命令,例如:我们启动example.rdf并需要一个将example.rdf转换为XML 文件 (example.xml) 包含与 rdf 文件相同的信息。我搜索并找到了 rwconverter.exe Oracle download.oracle.com/docs/html/B10314_01/pbr_cla.htm#634712。我也看到了 rdf2xml semwebtech.org/rdf2xml,但如果它是正确的方法就不会。非常感谢
  • 如果您只想将 Oracle Reports RDF 转换为 Oracle Reports XML,请使用他们的转换器工具。如果您想转换为某些自定义 XML 格式,请编辑您的问题以显示该目标格式的示例或指向它的相关规范的链接。如果你想回答你的问题,它仍然需要更具体
  • 我找到了我需要的东西。这里解释link我需要的命令是:C:\DevSuiteHome_1\BIN>rwconverter batch=yes source="file.rdf" dest="file.xml" dtype=xmlfile overwrite=yes
  • 这里是@Oliver 链接的返回网址:web.archive.org/web/20120313220651/http://…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多