owlcs / owlapi

OWL API main repository
826 stars 315 forks source link

ObjectHasSelf rendered wrongly in manchester syntax #1005

Closed b-gehrke closed 3 years ago

b-gehrke commented 3 years ago

The ObjectHasSelf expression is rendered with an additional some keyword in manchester syntax.

Considering the axiom

SubClassOf(:a ObjectHasSelf(:p))

the manchester renderer outputs

Class: a
    SubClassOf: p some  Self

some in this place doesn't make much sense and is not allowed according to the grammar. Instead I would expect the output to be

Class: a
    SubClassOf: p Self

as it is defined in section 4.2 Formal Description for Mapping to OWL 2 Functional-Style Syntax of the standard.

A possible fix seems to be to remove line 374 in ManchesterOWLSyntaxObjectRenderer.java in which the some keyword is written while visiting the ObjectHasSelf expression.