the implementation of getDesriptionLogicName currently does not return DL names. Instead, a concatenation of the set of constructors used in the ontology is returned (see here in version 4 and here in version 5).
DLExpressivityChecker checker = new DLExpressivityChecker(onts);
Collection<Languages> languages = checker.expressibleInLanguages();
as suggested in a workaround, the language can be determined to be ALCROIFD. A downside of this workaround is that the string representation of Languages does not follow conventions such as placing D in brackets.
Hi,
the implementation of
getDesriptionLogicName
currently does not return DL names. Instead, a concatenation of the set of constructors used in the ontology is returned (see here in version 4 and here in version 5).For example, the current output on http://purl.obolibrary.org/obo/ro.owl is
RRESTRCUCINTUNIVRESTREROIF(D)
.Using
as suggested in a workaround, the language can be determined to be
ALCROIFD
. A downside of this workaround is that the string representation of Languages does not follow conventions such as placing D in brackets.Also, http://purl.obolibrary.org/obo/ro.owl contains transitive property axioms. So,
ALCROIFD
is not correct. It should be (at least)SROIF(D)
.