DL Query Parser

时间:2013-07-22 12:55:43

标签: owl owl-api

在下面的代码中,我试图理解如何最终获得类表达式,但并没有真正明白这一点。

ShortFormProvider shortFormProvider = new SimpleShortFormProvider();
        ManchesterOWLSyntaxEditorParser parser = new ManchesterOWLSyntaxEditorParser(schema.getFactory(), query);
        parser.setDefaultOntology(schema.getSchema());
        Set<OWLOntology> importsClosure = schema.getSchema().getImportsClosure();
        BidirectionalShortFormProvider bidiShortFormProvider = new BidirectionalShortFormProviderAdapter(schema.getSchema().getOWLOntologyManager(),importsClosure, shortFormProvider);
        OWLEntityChecker entityChecker = new ShortFormEntityChecker(bidiShortFormProvider);
        parser.setOWLEntityChecker(entityChecker);      
        OWLClassExpression classExpression;
        classExpression = parser.parseClassExpression();

我主要依赖于shortformproviderbidirectionalshortform提供商。它们的功能是什么?有人可以帮助我理解这个吗?

1 个答案:

答案 0 :(得分:1)

ShortFormProviderBidirectionalShortFormProvider是帮助您处理URI缩写(shotforms)的对象。例如http://www.example.org/CatCat为缩写形式。这些缩写对于在不使用URI前缀的情况下以紧凑的方式表达OWL表达式很有用。

根据文件:

<强> ShortFormProvider: 简短表单提供程序生成实体的呈现。这些渲染是字符串,通常可用于显示和序列化目的。给定实体仅为给定的短格式提供者提供一个简短形式。但是,对于给定的短格式提供者,简短形式可以映射到多个实体。换句话说,对于给定的短格式提供者,从实体到短格式的映射是有效的,但不是反函数,即内射映射。

<强> BidirectionalShortFormProvider: 一种简短的表单提供程序,能够在实体及其简短表单之间来回转换。