From 0d8f240c9c0a64f2285324e5a517161e45c698fc Mon Sep 17 00:00:00 2001 From: yzhou Date: Thu, 30 Apr 2015 17:36:35 +0100 Subject: downgrade owl api and reorganised src files --- .../uk/ac/ox/cs/data/RemoveDataPropertyRange.java | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 external/uk/ac/ox/cs/data/RemoveDataPropertyRange.java (limited to 'external/uk/ac/ox/cs/data/RemoveDataPropertyRange.java') diff --git a/external/uk/ac/ox/cs/data/RemoveDataPropertyRange.java b/external/uk/ac/ox/cs/data/RemoveDataPropertyRange.java new file mode 100644 index 0000000..acaa91b --- /dev/null +++ b/external/uk/ac/ox/cs/data/RemoveDataPropertyRange.java @@ -0,0 +1,52 @@ +package uk.ac.ox.cs.data; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; + +import org.semanticweb.owlapi.apibinding.OWLManager; +import org.semanticweb.owlapi.model.OWLAxiom; +import org.semanticweb.owlapi.model.OWLDataPropertyRangeAxiom; +import org.semanticweb.owlapi.model.OWLException; +import org.semanticweb.owlapi.model.OWLOntology; +import org.semanticweb.owlapi.model.OWLOntologyManager; + +import uk.ac.ox.cs.pagoda.tester.PagodaTester; +import uk.ac.ox.cs.pagoda.util.Utility; + +public class RemoveDataPropertyRange { + + public static void process(String file) throws OWLException, IOException { + OWLOntologyManager originalManager = OWLManager.createOWLOntologyManager(); + OWLOntologyManager manager = OWLManager.createOWLOntologyManager(); + + OWLOntology originalOntology = originalManager.loadOntologyFromOntologyDocument(new File(file)); + OWLOntology ontology = manager.createOntology(originalOntology.getOntologyID().getOntologyIRI()); + + for (OWLOntology onto: originalOntology.getImportsClosure()) + for (OWLAxiom axiom: onto.getAxioms()) { + if (!(axiom instanceof OWLDataPropertyRangeAxiom)) + manager.addAxiom(ontology, axiom); + } + originalManager.removeOntology(originalOntology); + + String extension = file.substring(file.lastIndexOf(".")); + String fileName = file.substring(file.lastIndexOf(Utility.FILE_SEPARATOR) + 1); + String dest = fileName.replace(extension, "-noDPR.owl"); + manager.saveOntology(ontology, new FileOutputStream(dest)); + System.out.println("The processed ontology is saved in " + dest + " successfully."); + manager.removeOntology(ontology); + } + + public static void main(String[] args) { + try { + process(PagodaTester.chembl_tbox); + } catch (OWLException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + + } + +} -- cgit v1.2.3