aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala')
-rw-r--r--src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala b/src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala
index ceb24de..4dd554a 100644
--- a/src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala
+++ b/src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala
@@ -6,7 +6,7 @@ import java.util.HashMap
6import java.util.stream.{Collectors, Stream} 6import java.util.stream.{Collectors, Stream}
7import java.io.File 7import java.io.File
8import org.semanticweb.owlapi.apibinding.OWLManager 8import org.semanticweb.owlapi.apibinding.OWLManager
9 9import org.semanticweb.owlapi.util.OWLOntologyMerger
10import org.semanticweb.owlapi.model.{OWLOntology, OWLAxiom} 10import org.semanticweb.owlapi.model.{OWLOntology, OWLAxiom}
11import org.semanticweb.owlapi.model.{ 11import org.semanticweb.owlapi.model.{
12 OWLClass, 12 OWLClass,
@@ -63,17 +63,19 @@ object RSAOntology {
63 63
64 def apply(ontology: OWLOntology): RSAOntology = new RSAOntology(ontology) 64 def apply(ontology: OWLOntology): RSAOntology = new RSAOntology(ontology)
65 65
66 def apply(ontology: File): RSAOntology = 66 def apply(ontologies: File*): RSAOntology =
67 new RSAOntology(loadOntology(ontology)) 67 new RSAOntology(loadOntology(ontologies: _*))
68 68
69 def genFreshVariable(): Variable = { 69 def genFreshVariable(): Variable = {
70 counter += 1 70 counter += 1
71 Variable.create(f"I$counter%03d") 71 Variable.create(f"I$counter%03d")
72 } 72 }
73 73
74 private def loadOntology(onto: File): OWLOntology = { 74 private def loadOntology(ontologies: File*): OWLOntology = {
75 val manager = OWLManager.createOWLOntologyManager() 75 val manager = OWLManager.createOWLOntologyManager()
76 manager.loadOntologyFromOntologyDocument(onto) 76 ontologies.foreach { manager.loadOntologyFromOntologyDocument(_) }
77 val merger = new OWLOntologyMerger(manager)
78 merger.createMergedOntology(manager, OWLIRI.create("_:merged"))
77 } 79 }
78} 80}
79 81
@@ -163,8 +165,8 @@ class RSAOntology(val ontology: OWLOntology) {
163 } yield rule 165 } yield rule
164 166
165 /* DEBUG: print datalog rules */ 167 /* DEBUG: print datalog rules */
166 //println("\nDatalog roles:") 168 println("\nDatalog roles:")
167 //datalog.foreach(println) 169 datalog.foreach(println)
168 170
169 // Open connection with RDFox 171 // Open connection with RDFox
170 val (server, data) = RDFoxUtil.openConnection("RSACheck") 172 val (server, data) = RDFoxUtil.openConnection("RSACheck")