Hermit error: The datatype '...' is not part of the OWL 2 datatype map

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Hermit error: The datatype '...' is not part of the OWL 2 datatype map

jos lehmann
Hi there

From dataiku I'm trying: sync_reasoner()
I get error [1] below.
Please note however that running Hermit on the same ontology in Protege does not return any errors.

Also note that when trying from dataiku:  sync_reasoner_pellet()
I get no error.

Feedback welcome.

Kind Regards,

Jos Lehmann


[1]

* Owlready2 * Running HermiT...
    java -Xmx2000M -cp /home/dataiku/dss/code-envs/python/py3-IE-update-1/lib/python3.6/site-packages/owlready2/hermit:/home/dataiku/dss/code-envs/python/py3-IE-update-1/lib/python3.6/site-packages/owlready2/hermit/HermiT.jar org.semanticweb.HermiT.cli.CommandLine -c -O -D -I file:////tmp/tmpwcistli4

---------------------------------------------------------------------------
CalledProcessError                        Traceback (most recent call last)
~/dss/code-envs/python/py3-IE-update-1/lib/python3.6/site-packages/owlready2/reasoning.py in sync_reasoner_hermit(x, infer_property_values, debug, keep_tmp_file)
    140     try:
--> 141       output = subprocess.check_output(command, stderr = subprocess.STDOUT, **_subprocess_kargs)
    142     except subprocess.CalledProcessError as e:

/usr/lib64/python3.6/subprocess.py in check_output(timeout, *popenargs, **kwargs)
    355     return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
--> 356                **kwargs).stdout
    357

/usr/lib64/python3.6/subprocess.py in run(input, timeout, check, *popenargs, **kwargs)
    437             raise CalledProcessError(retcode, process.args,
--> 438                                      output=stdout, stderr=stderr)
    439     return CompletedProcess(process.args, retcode, stdout, stderr)

CalledProcessError: Command '['java', '-Xmx2000M', '-cp', '/home/dataiku/dss/code-envs/python/py3-IE-update-1/lib/python3.6/site-packages/owlready2/hermit:/home/dataiku/dss/code-envs/python/py3-IE-update-1/lib/python3.6/site-packages/owlready2/hermit/HermiT.jar', 'org.semanticweb.HermiT.cli.CommandLine', '-c', '-O', '-D', '-I', 'file:////tmp/tmpwcistli4']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

OwlReadyJavaError                         Traceback (most recent call last)
<ipython-input-31-33ab36516364> in <module>
----> 1 sync_reasoner()

~/dss/code-envs/python/py3-IE-update-1/lib/python3.6/site-packages/owlready2/reasoning.py in sync_reasoner_hermit(x, infer_property_values, debug, keep_tmp_file)
    144         raise OwlReadyInconsistentOntologyError()
    145       else:
--> 146         raise OwlReadyJavaError("Java error message is:\n%s" % (e.stderr or e.output or b"").decode("utf8"))
    147
    148     output = output.decode("utf8").replace("\r","")

OwlReadyJavaError: Java error message is:
Exception in thread "main" org.semanticweb.HermiT.datatypes.UnsupportedDatatypeException: HermiT supports all and only the datatypes of the OWL 2 datatype map, see
http://www.w3.org/TR/owl2-syntax/#Datatype_Maps.
The datatype 'http://www.w3.org/1999/02/22-rdf-syntax-ns#langString' is not part of the OWL 2 datatype map and
no custom datatype definition is given;
therefore, HermiT cannot handle this datatype.
        at org.semanticweb.HermiT.datatypes.DatatypeRegistry.getDatatypeHandlerFor(Unknown Source)
        at org.semanticweb.HermiT.datatypes.DatatypeRegistry.getDatatypeHandlerFor(Unknown Source)
        at org.semanticweb.HermiT.datatypes.DatatypeRegistry.validateDatatypeRestriction(Unknown Source)
        at org.semanticweb.HermiT.structural.OWLClausification$DataRangeConverter.visit(Unknown Source)
        at uk.ac.manchester.cs.owl.owlapi.OWLDatatypeImpl.accept(OWLDatatypeImpl.java:343)
        at org.semanticweb.HermiT.structural.OWLClausification$DataRangeConverter.convertDataRange(Unknown Source)
        at org.semanticweb.HermiT.structural.OWLClausification$NormalizedAxiomClausifier.visit(Unknown Source)
        at uk.ac.manchester.cs.owl.owlapi.OWLDataAllValuesFromImpl.accept(OWLDataAllValuesFromImpl.java:99)
        at org.semanticweb.HermiT.structural.OWLClausification.clausify(Unknown Source)
        at org.semanticweb.HermiT.structural.OWLClausification.preprocessAndClausify(Unknown Source)
        at org.semanticweb.HermiT.Reasoner.loadOntology(Reasoner.java:117)
        at org.semanticweb.HermiT.Reasoner.<init>(Reasoner.java:108)
        at org.semanticweb.HermiT.Reasoner.<init>(Reasoner.java:86)
        at org.semanticweb.HermiT.cli.CommandLine.main(CommandLine.java:830)


Reply | Threaded
Open this post in threaded view
|

Re: Hermit error: The datatype '...' is not part of the OWL 2 datatype map

Jiba
Administrator
Hi,

I am unable to reproduce your problem, could you send me an ontology (or a part of it) that allows me to reproduce the problem ?

thanks,

Jiba
Reply | Threaded
Open this post in threaded view
|

Re: Hermit error: The datatype '...' is not part of the OWL 2 datatype map

jos lehmann
Hi

Ok thanks.
I am not sure I can send you the ontology I used for that particular example. I will try with other ontologies and see what happens.

KR, Jos