static { try { /** Configuration of the manager */ manager.setSilentMissingImportsHandling(true); manager.addMissingImportListener( new MissingImportListener() { @Override public void importMissing(MissingImportEvent event) { log.warn("Missing import! URI was: {}", event.getImportedOntologyURI()); } }); manager.addOntologyChangeListener( new OWLOntologyChangeListener() { @Override public void ontologiesChanged(List<? extends OWLOntologyChange> arg0) throws OWLException { for (OWLOntologyChange change : arg0) { log.debug("{} TO {}", change, change.getOntology()); } } }); /** Loading test ontologies once for all */ manager.loadOntologyFromOntologyDocument(FOAF_LOCATION.openStream()); manager.loadOntologyFromOntologyDocument(DBPEDIA_LOCATION.openStream()); // Test 1 manager.loadOntologyFromOntologyDocument(TEST_1_LOCATION.openStream()); manager.loadOntologyFromOntologyDocument(TEST_1_expected_LOCATION.openStream()); // Test 2 manager.loadOntologyFromOntologyDocument(TEST_2_LOCATION.openStream()); manager.loadOntologyFromOntologyDocument(TEST_2_expected_LOCATION.openStream()); // Test 3 manager.loadOntologyFromOntologyDocument(TEST_3_LOCATION.openStream()); manager.loadOntologyFromOntologyDocument(TEST_3_rules_LOCATION.openStream()); manager.loadOntologyFromOntologyDocument(TEST_3_expected_LOCATION.openStream()); } catch (OWLOntologyCreationException e) { log.error( "A {} have been thrown while creating the ontology" + ". Message was: {}", e.getClass(), e.getLocalizedMessage()); } catch (IOException e) { log.error( "A {} have been thrown while loading the ontology from the location {}", e.getClass(), FOAF_LOCATION.toString()); log.error("Message was: {}", e.getLocalizedMessage()); } }
@SuppressWarnings("deprecation") private OWLOntologyManager createOWLOntologyManager() { // We isolate here the creation of the temporary manager // TODO How to behave when resolving owl:imports? // We should set the manager to use a service to lookup for ontologies, // instead of trying on the web directly OWLOntologyManager manager = OWLManager.createOWLOntologyManager(); // FIXME Which is the other way of doing this? // Maybe -> OWLOntologyManagerProperties(); manager.setSilentMissingImportsHandling(true); // Listening for missing imports manager.addMissingImportListener( new MissingImportListener() { @Override public void importMissing(MissingImportEvent arg0) { log.warn("Missing import {} ", arg0.getImportedOntologyURI()); } }); manager.addOntologyLoaderListener( new OWLOntologyLoaderListener() { @Override public void finishedLoadingOntology(LoadingFinishedEvent arg0) { log.info("Finished loading {} (imported: {})", arg0.getOntologyID(), arg0.isImported()); } @Override public void startedLoadingOntology(LoadingStartedEvent arg0) { log.info( "Started loading {} (imported: {}) ...", arg0.getOntologyID(), arg0.isImported()); log.info(" ... from {}", arg0.getDocumentIRI().toString()); } }); return manager; }