New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
imports in OWL Manchester Notation fail #347
Comments
The code is getting confused by the fact that the import IRI is different from the ontology IRI. The ontology IRI is http://ontohub.org/monster-blend/animals/habitats, while the import IRI is https://ontohub.org/monster-blend/animals/habitats.owl |
I'm not sure what you mean when you say your compilation failed. What errors do you get in the newest OWLAPI? |
Test case to replicate:
|
The Manchester syntax parser was trying to retrieve an imported ontology by its import declaration IRI - this does not always work. It should have used the import declaration instead.
The Manchester syntax parser was trying to retrieve an imported ontology by its import declaration IRI - this does not always work. It should have used the import declaration instead.
The Manchester syntax parser was trying to retrieve an imported ontology by its import declaration IRI - this does not always work. It should have used the import declaration instead.
The Manchester syntax parser was trying to retrieve an imported ontology by its import declaration IRI - this does not always work. It should have used the import declaration instead.
The Manchester syntax parser was trying to retrieve an imported ontology by its import declaration IRI - this does not always work. It should have used the import declaration instead.
Bug in the parser - it was trying to access the ontology by the import IRI, but that's not a match to the actual IRI in many cases. Should have accessed by import declaration, since that's a more reliable index. |
Thanks for looking into this. We cannot easily update from owlapi-3.4.8 , because we use some classes/interfaces that changed in newer versions. |
If you can point out which ones and how you use them, I can try to help with the update. |
We checkout the sources https://github.com/spechub/Hets.git and call "make initialize_java" (see Makefile). This checks out https://github.com/owlcs/owlapi/tags/owlapi-parent-3.4.8 and calls "ant" (also on a couple of other files). The actual java source we compile is https://github.com/spechub/Hets/blob/master/OWL2/java/de/unibremen/informatik/OWL2Parser.java Unfortunately, we have not much resources to look into this ourselves. |
Cheers, I'll have a look at what's feasible. There isn't a Pellet version for OWLAPI 4 yet, but FaCT++ is available. Updating to OWLAPI 3.5.1 should be doable, I'll issue a pull request if I can. |
The issue seems to be with the extra libraries required by more recent versions of OWLAPI - their source is not included and cannot be built from scratch. I'm going to try and replace the compilation with downloading the 3.5.1 osgi binary instead, which includes all dependencies as well. It should be a drop in replacement and speed up your build as well. |
Alternatively you can use the ant plugin Ivy to fetch libraries from
maven, transitively resolving any dependencies.
See:
http://ant.apache.org/ivy/history/latest-milestone/tutorial/start.html
and
http://mvnrepository.com/artifact/net.sourceforge.owlapi/owlapi-distribution/3.5.1
|
@sesuncedu suggestion could be implemented as well, but I'd be more inclined to refactor that portion of the project as a Maven build. There's a FaCT++ Maven artifact in the works as well, which would make this the least painful solution, in the long term. See https://bitbucket.org/ignazio1977/factplusplus |
Oooooh! That's brightened my day :) |
Eh it's a bit of a kludge, as the binaries need to be updated manually before the build (they're treated as resources). Haven't found a Maven plugin to do C++ compilations before the Java compilation... |
The example (in a test.omn file)
also given in spechub/Hets#1261 fails with a NullPointerException.
For the newer versions, owl-api 3.5.1 and 4.0.1, our compilation (OBO) or build (ant) failed.
The text was updated successfully, but these errors were encountered: