【问题标题】:How to convert xml files to OWL using java?如何使用 java 将 xml 文件转换为 OWL?
【发布时间】:2015-07-16 14:31:23
【问题描述】:

我想将 xml 文件转换为本体。 我有一个 xml 格式的输入文件,我需要将其转换为 owl 文件 谁能告诉我在java中使用jena api的合适方法是什么?

【问题讨论】:

  • 您好,您尝试过哪些方法使用 java 将 XML 转换为 OWL?
  • 然后聘请开发人员来做。我们不是来为人们编写代码的。
  • 要使问题有效,您必须提供您所面临的确切问题(输入样本、预期输出样本),当然还要付出一些最小的努力。
  • 你最好写一个 xslt 转换,而不是用 java 来做。

标签: xml jena owl ontology owl-api


【解决方案1】:

这个问题没有通用的解决方案,它取决于 XML 文件的内容、其预期含义以及本体要表示的内容。

1) 文件是否包含个人或实例?在这种情况下,您需要一个现有的本体来为您提供词汇,然后您可以编写一个翻译器。这可以是 java、xslt 或任何其他你有信心的东西。

2) 文件是否包含任何标准格式的本体?在这种情况下,可以使用现有工具转换为 OWL,但如果没有更多信息,我们无法判断哪些工具。

【讨论】:

  • 所有 xml 文件都包含基于句子的简单数学问题,应转换为 OWL。 1)是的,它包含个人,是的,我认为应该有一个现有的本体,它应该根据提供的 xml 文件进行更新。 2) 我使用 OWL/XML 格式。
  • 由于我是 Ontology 的新手,我不知道如何为此编写翻译器。将xml转换为xslt然后转换为owl更容易吗?是否可以使用 owlapi 对其进行编码?
  • 所有这些都是可能的,但没有预先打包的解决方案可以做到这一点。您需要首先获得您计划用来描述您的个人的本体,然后熟悉如何使用您选择的框架创建 OWL 断言 - owlapi 就可以了。当您说 OWL/XML 时,您的意思是这就是您想要的输出格式吗?
  • 是的,我的意思是 OWL./XML 格式。 这是该文件的一部分
  • 是否可以使用 XSLT 转换转换为 OWL?
【解决方案2】:

公共类 API {

public static void main(String[] args) throws OWLOntologyCreationException, OWLOntologyStorageException, FileNotFoundException {

    OWLOntologyManager manager = OWLManager.createOWLOntologyManager();


    File file = new File("C:\\Users\\jin\\Desktop\\ProtoType\\\\New Folder\\\\MathsQuestion.xml"); 
    OWLOntology ontology = manager.loadOntologyFromOntologyDocument(file);


    OWLOntologyFormat format = manager.getOntologyFormat(ontology);
    OWLOntologyDocumentTarget documentTarget = new SystemOutDocumentTarget();
    manager.saveOntology(ontology, format, new SystemOutDocumentTarget());

    System.out.println(" format1: " + format);

    OWLXMLOntologyFormat owlxmlFormat = new OWLXMLOntologyFormat(); //owl/xml format
    OWLOntologyDocumentTarget documentTarget2 = new SystemOutDocumentTarget();

    if (format.isPrefixOWLOntologyFormat()) {
        owlxmlFormat.copyPrefixesFrom(format.asPrefixOWLOntologyFormat());
    }

    manager.saveOntology(ontology, owlxmlFormat, new SystemOutDocumentTarget());
    System.out.println(" format2: " + owlxmlFormat);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-20
    • 2016-07-21
    • 2013-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多