Skip navigation.
Home
Semantic Software Lab
Concordia University
Montréal, Canada

OwlExporter and Gate 7

Printer-friendly versionPrinter-friendly versionPDF versionPDF version

Hi,

I've load owlexporter 3.0 and test it on Gate 6.2 and Gate 7. On Gate 6.2 the demo application works well but on Gate 7 I've got an error.

Is there a compatibility problem between the plugin and Gate7 ?

Thanks

  1. Exception in thread "ApplicationViewer1" java.lang.NoClassDefFoundError: Could not initialize class com.hp.hpl.jena.iri.IRIFactory
  2.         at com.hp.hpl.jena.rdf.arp.impl.XMLHandler.<init>(XMLHandler.java:431)
  3.         at com.hp.hpl.jena.rdf.arp.impl.RDFXMLParser.<init>(RDFXMLParser.java:40)
  4.         at com.hp.hpl.jena.rdf.arp.impl.RDFXMLParser.create(RDFXMLParser.java:83)
  5.         at com.hp.hpl.jena.rdf.arp.ARP.<init>(ARP.java:101)
  6.         at edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.createARP(Unknown Source)
  7.         at edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.loadTriples(Unknown Source)
  8.         at edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.run(Unknown Source)
  9.         at edu.stanford.smi.protegex.owl.jena.creator.OwlProjectFromStreamCreator.create(Unknown Source)
  10.         at edu.stanford.smi.protegex.owl.ProtegeOWL.createJenaOWLModelFromInputStream(Unknown Source)
  11.         at info.semanticsoftware.owlexporter.OwlExporterOntology.createOntology(OwlExporterOntology.java:158)
  12.         at info.semanticsoftware.owlexporter.OwlExporter.execute(OwlExporter.java:248)
  13.         at gate.util.Benchmark.executeWithBenchmarking(Benchmark.java:291)
  14.         at gate.creole.SerialController.runComponent(SerialController.java:221)
  15.         at gate.creole.SerialController.executeImpl(SerialController.java:153)
  16.         at gate.creole.SerialAnalyserController.executeImpl(SerialAnalyserController.java:118)
  17.         at gate.creole.AbstractController.execute(AbstractController.java:75)
  18.         at gate.util.Benchmark.executeWithBenchmarking(Benchmark.java:291)
  19.         at gate.gui.SerialControllerEditor$RunAction$1.run(SerialControllerEditor.java:1619)
  20.         at java.lang.Thread.run(Thread.java:636)

rene's picture

Missing library

Hi,

This is because some libraries were removed from GATE7. We've been working on an updated version of OwlExporter, which you can install directly from GATE7's plugin manager -- it'll be out within the next week or so. If you need it urgently, we could email you a development package.

René

Missing library

Hi René,

Thats great, I've hit an issue trying to run with gate 7 too. Is it to do with a unicode library, can I manually install the removed libraries? No worries if its not that straightforward, I'm happy to wait for the official update.

In case its a new, or unrelated problem the error I get is:
"Exception in thread "ApplicationViewer1" java.lang.NoClassDefFoundError: com/ibm/icu/text/StringPrepParseException
at com.hp.hpl.jena.iri.impl.SchemeSpecification.(SchemeSpecification.java:55)"
...

Stephen

rene's picture

Re: Missing library

Hi Stephen,

Yes, we fixed this one as well. Better wait for the next version, since we automated the download of the missing jena/icu4j libraries through Ivy.

Cheers, René

rene's picture

v3.1 released

Hello,

OwlExporter v3.1 is now available through the Plugin Manager in GATE7, please try it out.

Best, René

Other functionalities

Hi,

ok, thanks for your response. I can wait for the new version. I'm doing some Jape development to prepare the owlexport which are not impacted by the version.

I've got another question on OwlEwporter functionalities. By default, all the instances created by Jape rules are populated in the ontology even if they has already been added (from the same doc or another). A solution to avoid this, could be to use the orthomatcher and add only one instance with some appropriate properties for each entity. But the problem will be resolved only for each document independently.

Is there any option in owlexporter than done this? If not is it a possible evolution for this plugin.

Thanks,

Stéphanie.

rene's picture

Use coreferences

Hi Stéphanie,

OwlExporter keeps track of the documents, so if you process the same document twice, you shouldn't get duplicate entities.

For managing multiple occurrences of the same entity, OwlExporter uses coreference chains. The assumption is that you have a coreferencer that can mark entities as being the same. Then, they will be exported using the "owl:sameAs" construct, so that they won't show up as duplicates. It is designed this way because there is really no way for a domain-independent component like OwlExporter to know when two textual mentions are the same -- e.g., you could have an identical string ("Mr. Smith") referring to two different persons, or two different strings ("Mr. Smith", "he") referring to the same person.

The expected format for coreferences is a bit obscure at the moment, but the example in the documentation should help. If you use the ANNIE coreferencer, you will need to write same JAPE grammars to transform the results into the OwlExporter format.

Hope that helps,

René