Fact.java revision e1a486f890607d2b00183905564770d4444df9a5
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiupackage de.unibremen.informatik.Fact;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuimport uk.ac.manchester.cs.factplusplus.owlapiv3.*;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuimport org.semanticweb.owlapi.reasoner.*;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuimport org.semanticweb.owlapi.apibinding.OWLManager;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuimport org.semanticweb.owlapi.io.OWLXMLOntologyFormat;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuimport org.semanticweb.owlapi.model.*;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuimport org.semanticweb.owlapi.util.DefaultPrefixManager;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuimport org.semanticweb.HermiT.Reasoner;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuimport java.net.URI;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuimport java.util.*;
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiuclass Fact
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu{
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu public static void main (String[] args)
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu {
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu if (args.length < 1)
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu {
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.out.println("owl_fact <Ontology>");
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.exit(1);
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu }
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu try
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu {
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu OWLOntologyManager manager = OWLManager.createOWLOntologyManager();
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu IRI physicalIRI = IRI.create(args[0]);
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu OWLOntology ontology = manager.loadOntologyFromOntologyDocument(physicalIRI);
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu OWLReasonerFactory reasonerFa = new Reasoner.ReasonerFactory();
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu OWLReasoner reasoner = reasonerFa.createReasoner(ontology);
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu //reasoner.precomputeInferences();
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu Boolean cons = reasoner.isConsistent();
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu if (cons)
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu {
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.out.println("consistent");
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.exit(10);
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu }
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu else
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu {
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.out.println("inconsistent");
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.exit(20);
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu }
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu }
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu catch (OWLOntologyCreationException e)
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu {
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.out.println("The ontology could not be created: " +
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu e.getMessage());
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.exit(1);
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu }
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu catch (Exception e)
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu {
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.out.println("Exception:" + e.getMessage());
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu System.exit(1);
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu }
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu }
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu
e1a486f890607d2b00183905564770d4444df9a5Francisc Nicolae Bungiu}