aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/rsacomb
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/rsacomb')
-rw-r--r--src/main/scala/rsacomb/FilteringProgram.scala60
-rw-r--r--src/main/scala/rsacomb/Main.scala21
-rw-r--r--src/main/scala/rsacomb/RDFoxClassExprConverter.scala4
-rw-r--r--src/main/scala/rsacomb/RSA.scala10
-rw-r--r--src/main/scala/rsacomb/RSAOntology.scala30
5 files changed, 68 insertions, 57 deletions
diff --git a/src/main/scala/rsacomb/FilteringProgram.scala b/src/main/scala/rsacomb/FilteringProgram.scala
index e9a69ff..44960e5 100644
--- a/src/main/scala/rsacomb/FilteringProgram.scala
+++ b/src/main/scala/rsacomb/FilteringProgram.scala
@@ -62,7 +62,7 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
62 this.generateFilteringProgram().map(reifyRule) ++ facts 62 this.generateFilteringProgram().map(reifyRule) ++ facts
63 63
64 private def predNI(t: Term): TupleTableAtom = 64 private def predNI(t: Term): TupleTableAtom =
65 TupleTableAtom.rdf(t, IRI.RDF_TYPE, RSA.internal("NI")) 65 TupleTableAtom.rdf(t, IRI.RDF_TYPE, RSA.rsa("NI"))
66 66
67 /* NOTE: we are restricting to queries that contain conjunctions of 67 /* NOTE: we are restricting to queries that contain conjunctions of
68 * atoms for the time being. This might need to be reviewed in the 68 * atoms for the time being. This might need to be reviewed in the
@@ -92,39 +92,39 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
92 def not(atom: TupleTableAtom): BodyFormula = Negation.create(atom) 92 def not(atom: TupleTableAtom): BodyFormula = Negation.create(atom)
93 val predQM = 93 val predQM =
94 TupleTableAtom.create( 94 TupleTableAtom.create(
95 TupleTableName.create(RSA.internal("QM").getIRI), 95 TupleTableName.create(RSA.rsa("QM").getIRI),
96 (answer ++ bounded): _* 96 (answer ++ bounded): _*
97 ) 97 )
98 def predID(t1: Term, t2: Term) = 98 def predID(t1: Term, t2: Term) =
99 TupleTableAtom.create( 99 TupleTableAtom.create(
100 TupleTableName.create(RSA.internal("ID").getIRI), 100 TupleTableName.create(RSA.rsa("ID").getIRI),
101 (answer ++ bounded).appended(t1).appended(t2): _* 101 (answer ++ bounded).appended(t1).appended(t2): _*
102 ) 102 )
103 def predNAMED(t1: Term): TupleTableAtom = 103 def predNAMED(t1: Term): TupleTableAtom =
104 TupleTableAtom.rdf(t1, IRI.RDF_TYPE, RSA.internal("NAMED")) 104 TupleTableAtom.rdf(t1, IRI.RDF_TYPE, RSA.rsa("NAMED"))
105 def predTQ(sx: String, t1: Term, t2: Term) = 105 def predTQ(sx: String, t1: Term, t2: Term) =
106 TupleTableAtom.create( 106 TupleTableAtom.create(
107 TupleTableName.create(RSA.internal(s"TQ_$sx").getIRI), 107 TupleTableName.create(RSA.rsa(s"TQ_$sx").getIRI),
108 (answer ++ bounded).appended(t1).appended(t2): _* 108 (answer ++ bounded).appended(t1).appended(t2): _*
109 ) 109 )
110 def predAQ(sx: String, t1: Term, t2: Term) = 110 def predAQ(sx: String, t1: Term, t2: Term) =
111 TupleTableAtom.create( 111 TupleTableAtom.create(
112 TupleTableName.create(RSA.internal(s"AQ_$sx").getIRI), 112 TupleTableName.create(RSA.rsa(s"AQ_$sx").getIRI),
113 (answer ++ bounded).appended(t1).appended(t2): _* 113 (answer ++ bounded).appended(t1).appended(t2): _*
114 ) 114 )
115 val predFK = 115 val predFK =
116 TupleTableAtom.create( 116 TupleTableAtom.create(
117 TupleTableName.create(RSA.internal("FK").getIRI), 117 TupleTableName.create(RSA.rsa("FK").getIRI),
118 (answer ++ bounded): _* 118 (answer ++ bounded): _*
119 ) 119 )
120 val predSP = 120 val predSP =
121 TupleTableAtom.create( 121 TupleTableAtom.create(
122 TupleTableName.create(RSA.internal("SP").getIRI), 122 TupleTableName.create(RSA.rsa("SP").getIRI),
123 (answer ++ bounded): _* 123 (answer ++ bounded): _*
124 ) 124 )
125 val predANS = 125 val predANS =
126 TupleTableAtom.create( 126 TupleTableAtom.create(
127 TupleTableName.create(RSA.internal("ANS").getIRI), 127 TupleTableName.create(RSA.rsa("ANS").getIRI),
128 answer: _* 128 answer: _*
129 ) 129 )
130 130
@@ -135,7 +135,7 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
135 val r3a = 135 val r3a =
136 for ((v, i) <- bounded.zipWithIndex) 136 for ((v, i) <- bounded.zipWithIndex)
137 yield Rule.create( 137 yield Rule.create(
138 predID(RSA.internal(i), RSA.internal(i)), 138 predID(RSA.rsa(i), RSA.rsa(i)),
139 predQM, 139 predQM,
140 not(predNI(v)) 140 not(predNI(v))
141 ) 141 )
@@ -160,8 +160,8 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
160 role1 suffix "f", 160 role1 suffix "f",
161 role2 suffix "f", 161 role2 suffix "f",
162 predID( 162 predID(
163 RSA.internal(bounded.indexOf(role1.getArguments.get(2))), 163 RSA.rsa(bounded.indexOf(role1.getArguments.get(2))),
164 RSA.internal(bounded.indexOf(role2.getArguments.get(2))) 164 RSA.rsa(bounded.indexOf(role2.getArguments.get(2)))
165 ), 165 ),
166 not( 166 not(
167 TupleTableAtom.rdf( 167 TupleTableAtom.rdf(
@@ -181,8 +181,8 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
181 role1 suffix "f", 181 role1 suffix "f",
182 role2 suffix "b", 182 role2 suffix "b",
183 predID( 183 predID(
184 RSA.internal(bounded.indexOf(role1.getArguments.get(2))), 184 RSA.rsa(bounded.indexOf(role1.getArguments.get(2))),
185 RSA.internal(bounded.indexOf(role2.getArguments.get(0))) 185 RSA.rsa(bounded.indexOf(role2.getArguments.get(0)))
186 ), 186 ),
187 not( 187 not(
188 TupleTableAtom.rdf( 188 TupleTableAtom.rdf(
@@ -202,8 +202,8 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
202 role1 suffix "b", 202 role1 suffix "b",
203 role2 suffix "b", 203 role2 suffix "b",
204 predID( 204 predID(
205 RSA.internal(bounded.indexOf(role1.getArguments.get(0))), 205 RSA.rsa(bounded.indexOf(role1.getArguments.get(0))),
206 RSA.internal(bounded.indexOf(role2.getArguments.get(0))) 206 RSA.rsa(bounded.indexOf(role2.getArguments.get(0)))
207 ), 207 ),
208 not( 208 not(
209 TupleTableAtom.rdf( 209 TupleTableAtom.rdf(
@@ -228,14 +228,14 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
228 if bounded contains role2arg2 228 if bounded contains role2arg2
229 } yield Rule.create( 229 } yield Rule.create(
230 predID( 230 predID(
231 RSA.internal(bounded indexOf role1arg0), 231 RSA.rsa(bounded indexOf role1arg0),
232 RSA.internal(bounded indexOf role2arg0) 232 RSA.rsa(bounded indexOf role2arg0)
233 ), 233 ),
234 role1 suffix "f", 234 role1 suffix "f",
235 role2 suffix "f", 235 role2 suffix "f",
236 predID( 236 predID(
237 RSA.internal(bounded indexOf role1arg2), 237 RSA.rsa(bounded indexOf role1arg2),
238 RSA.internal(bounded indexOf role2arg2) 238 RSA.rsa(bounded indexOf role2arg2)
239 ), 239 ),
240 TupleTableAtom.rdf(role1arg0, RSA.EquivTo, role2arg0), 240 TupleTableAtom.rdf(role1arg0, RSA.EquivTo, role2arg0),
241 not(predNI(role1arg0)) 241 not(predNI(role1arg0))
@@ -253,14 +253,14 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
253 if bounded contains role2arg2 253 if bounded contains role2arg2
254 } yield Rule.create( 254 } yield Rule.create(
255 predID( 255 predID(
256 RSA.internal(bounded indexOf role1arg0), 256 RSA.rsa(bounded indexOf role1arg0),
257 RSA.internal(bounded indexOf role2arg2) 257 RSA.rsa(bounded indexOf role2arg2)
258 ), 258 ),
259 role1 suffix "f", 259 role1 suffix "f",
260 role2 suffix "b", 260 role2 suffix "b",
261 predID( 261 predID(
262 RSA.internal(bounded indexOf role1arg2), 262 RSA.rsa(bounded indexOf role1arg2),
263 RSA.internal(bounded indexOf role2arg0) 263 RSA.rsa(bounded indexOf role2arg0)
264 ), 264 ),
265 TupleTableAtom.rdf(role1arg0, RSA.EquivTo, role2arg2), 265 TupleTableAtom.rdf(role1arg0, RSA.EquivTo, role2arg2),
266 not(predNI(role1arg0)) 266 not(predNI(role1arg0))
@@ -278,14 +278,14 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
278 if bounded contains role2arg2 278 if bounded contains role2arg2
279 } yield Rule.create( 279 } yield Rule.create(
280 predID( 280 predID(
281 RSA.internal(bounded indexOf role1arg2), 281 RSA.rsa(bounded indexOf role1arg2),
282 RSA.internal(bounded indexOf role2arg2) 282 RSA.rsa(bounded indexOf role2arg2)
283 ), 283 ),
284 role1 suffix "b", 284 role1 suffix "b",
285 role2 suffix "b", 285 role2 suffix "b",
286 predID( 286 predID(
287 RSA.internal(bounded indexOf role1arg0), 287 RSA.rsa(bounded indexOf role1arg0),
288 RSA.internal(bounded indexOf role2arg0) 288 RSA.rsa(bounded indexOf role2arg0)
289 ), 289 ),
290 TupleTableAtom.rdf(role1arg2, RSA.EquivTo, role2arg2), 290 TupleTableAtom.rdf(role1arg2, RSA.EquivTo, role2arg2),
291 not(predNI(role1arg2)) 291 not(predNI(role1arg2))
@@ -303,11 +303,11 @@ class FilteringProgram(query: SelectQuery, constants: List[Term])
303 predAQ(sx, Variable.create("V"), Variable.create("W")), 303 predAQ(sx, Variable.create("V"), Variable.create("W")),
304 role suffix sx, 304 role suffix sx,
305 predID( 305 predID(
306 RSA.internal(bounded indexOf arg0), 306 RSA.rsa(bounded indexOf arg0),
307 Variable.create("V") 307 Variable.create("V")
308 ), 308 ),
309 predID( 309 predID(
310 RSA.internal(bounded indexOf arg2), 310 RSA.rsa(bounded indexOf arg2),
311 Variable.create("W") 311 Variable.create("W")
312 ) 312 )
313 ) 313 )
diff --git a/src/main/scala/rsacomb/Main.scala b/src/main/scala/rsacomb/Main.scala
index 596ef33..3963981 100644
--- a/src/main/scala/rsacomb/Main.scala
+++ b/src/main/scala/rsacomb/Main.scala
@@ -91,7 +91,7 @@ object RSAComb extends App {
91 // Step 2. Computing the canonical model 91 // Step 2. Computing the canonical model
92 val nis = { 92 val nis = {
93 val query = 93 val query =
94 "SELECT ?Y WHERE { ?X internal:EquivTo ?Y ; a internal:NAMED . }" 94 "SELECT ?Y WHERE { ?X rsa:EquivTo ?Y ; a rsa:NAMED . }"
95 val cursor = 95 val cursor =
96 data.createCursor( 96 data.createCursor(
97 RSA.Prefixes, 97 RSA.Prefixes,
@@ -126,7 +126,7 @@ object RSAComb extends App {
126 } 126 }
127 query ++= " WHERE {" 127 query ++= " WHERE {"
128 for (i <- 0 until arity) { 128 for (i <- 0 until arity) {
129 query ++= s" ?S internal:${pred}_$i ?X$i ." 129 query ++= s" ?S rsa:${pred}_$i ?X$i ."
130 } 130 }
131 query ++= " }" 131 query ++= " }"
132 // Collect answers 132 // Collect answers
@@ -159,7 +159,7 @@ object RSAComb extends App {
159 RDFoxUtil.submitQuery( 159 RDFoxUtil.submitQuery(
160 data, 160 data,
161 RSA.Prefixes, 161 RSA.Prefixes,
162 "SELECT ?X { ?X a internal:NAMED }", 162 "SELECT ?X { ?X a rsa:NAMED }",
163 1 163 1
164 ) 164 )
165 165
@@ -167,7 +167,7 @@ object RSAComb extends App {
167 RDFoxUtil.submitQuery( 167 RDFoxUtil.submitQuery(
168 data, 168 data,
169 RSA.Prefixes, 169 RSA.Prefixes,
170 "SELECT ?X { ?X a internal:NI }", 170 "SELECT ?X { ?X a rsa:NI }",
171 1 171 1
172 ) 172 )
173 173
@@ -179,7 +179,7 @@ object RSAComb extends App {
179 RDFoxUtil.submitQuery( 179 RDFoxUtil.submitQuery(
180 data, 180 data,
181 RSA.Prefixes, 181 RSA.Prefixes,
182 "SELECT ?X ?Y { ?X internal:EquivTo ?Y }", 182 "SELECT ?X ?Y { ?X rsa:EquivTo ?Y }",
183 2 183 2
184 ) 184 )
185 185
@@ -200,6 +200,17 @@ object RSAComb extends App {
200 println("\nSpurious answers") 200 println("\nSpurious answers")
201 retrieveInstances("SP", filter.variables.length) 201 retrieveInstances("SP", filter.variables.length)
202 202
203 {
204 val cursor = data.createCursor(
205 RSA.Prefixes,
206 "ASK { :a a :D }",
207 new HashMap[String, String]()
208 );
209 var mul = cursor.open()
210 println(s"Answer: ${mul > 0}")
211 cursor.close();
212 }
213
203 // Close connection to RDFox 214 // Close connection to RDFox
204 RDFoxUtil.closeConnection(server, data) 215 RDFoxUtil.closeConnection(server, data)
205 } 216 }
diff --git a/src/main/scala/rsacomb/RDFoxClassExprConverter.scala b/src/main/scala/rsacomb/RDFoxClassExprConverter.scala
index 7f44ab1..89a1a04 100644
--- a/src/main/scala/rsacomb/RDFoxClassExprConverter.scala
+++ b/src/main/scala/rsacomb/RDFoxClassExprConverter.scala
@@ -110,8 +110,8 @@ class RDFoxClassExprConverter(
110 if (unsafe.contains(prop)) 110 if (unsafe.contains(prop))
111 ( 111 (
112 List( 112 List(
113 TupleTableAtom.rdf(term, RSA.internal("PE"), c), 113 TupleTableAtom.rdf(term, RSA.rsa("PE"), c),
114 TupleTableAtom.rdf(c, IRI.RDF_TYPE, RSA.internal("U")) 114 TupleTableAtom.rdf(c, IRI.RDF_TYPE, RSA.rsa("U"))
115 ), 115 ),
116 List(), 116 List(),
117 c 117 c
diff --git a/src/main/scala/rsacomb/RSA.scala b/src/main/scala/rsacomb/RSA.scala
index 10a9d47..98c7a4d 100644
--- a/src/main/scala/rsacomb/RSA.scala
+++ b/src/main/scala/rsacomb/RSA.scala
@@ -21,14 +21,14 @@ import scala.collection.JavaConverters._
21 21
22object RSA extends RSAOntology with RSAAxiom { 22object RSA extends RSAOntology with RSAAxiom {
23 23
24 val Prefixes = new Prefixes() 24 val Prefixes: Prefixes = new Prefixes()
25 Prefixes.declarePrefix(":", "http://example.com/rsa_example.owl#") 25 Prefixes.declarePrefix(":", "http://example.com/rsa_example.owl#")
26 Prefixes.declarePrefix("internal:", "http://127.0.0.1/") 26 Prefixes.declarePrefix("rsa:", "http://127.0.0.1/")
27 Prefixes.declarePrefix("rdf:", "http://www.w3.org/1999/02/22-rdf-syntax-ns#") 27 Prefixes.declarePrefix("rdf:", "http://www.w3.org/1999/02/22-rdf-syntax-ns#")
28 Prefixes.declarePrefix("rdfs:", "http://www.w3.org/2000/01/rdf-schema#") 28 Prefixes.declarePrefix("rdfs:", "http://www.w3.org/2000/01/rdf-schema#")
29 Prefixes.declarePrefix("owl:", "http://www.w3.org/2002/07/owl#") 29 Prefixes.declarePrefix("owl:", "http://www.w3.org/2002/07/owl#")
30 30
31 val EquivTo: IRI = this.internal("EquivTo") 31 val EquivTo: IRI = this.rsa("EquivTo")
32 32
33 // Counter used to implement a simple fresh variable generator 33 // Counter used to implement a simple fresh variable generator
34 private var counter = -1; 34 private var counter = -1;
@@ -44,9 +44,9 @@ object RSA extends RSAOntology with RSAAxiom {
44 + name.toString 44 + name.toString
45 ) 45 )
46 46
47 def internal(name: Any): IRI = 47 def rsa(name: Any): IRI =
48 IRI.create( 48 IRI.create(
49 Prefixes.getPrefixIRIsByPrefixName.get("internal:").getIRI 49 Prefixes.getPrefixIRIsByPrefixName.get("rsa:").getIRI
50 + name.toString 50 + name.toString
51 ) 51 )
52 52
diff --git a/src/main/scala/rsacomb/RSAOntology.scala b/src/main/scala/rsacomb/RSAOntology.scala
index 52e13e6..78460ff 100644
--- a/src/main/scala/rsacomb/RSAOntology.scala
+++ b/src/main/scala/rsacomb/RSAOntology.scala
@@ -233,7 +233,7 @@ trait RSAOntology {
233 private def rsaGraph( 233 private def rsaGraph(
234 data: DataStoreConnection 234 data: DataStoreConnection
235 ): Graph[Resource, UnDiEdge] = { 235 ): Graph[Resource, UnDiEdge] = {
236 val query = "SELECT ?X ?Y WHERE { ?X internal:E ?Y }" 236 val query = "SELECT ?X ?Y WHERE { ?X rsa:E ?Y }"
237 val cursor = 237 val cursor =
238 data.createCursor(RSA.Prefixes, query, new HashMap[String, String]()); 238 data.createCursor(RSA.Prefixes, query, new HashMap[String, String]());
239 var mul = cursor.open() 239 var mul = cursor.open()
@@ -280,8 +280,8 @@ trait RSAOntology {
280 val role = axiom.objectPropertyExpressionsInSignature(0) 280 val role = axiom.objectPropertyExpressionsInSignature(0)
281 if (this.confl(role).contains(role)) { 281 if (this.confl(role).contains(role)) {
282 Set( 282 Set(
283 RSA.internal("v0_" ++ RSA.hashed(axiom)), 283 RSA.rsa("v0_" ++ RSA.hashed(axiom)),
284 RSA.internal("v1_" ++ RSA.hashed(axiom)) 284 RSA.rsa("v1_" ++ RSA.hashed(axiom))
285 ) 285 )
286 } else { 286 } else {
287 Set() 287 Set()
@@ -308,9 +308,9 @@ trait RSAOntology {
308 // if conflR.contains(roleS) 308 // if conflR.contains(roleS)
309 // individual = 309 // individual =
310 // if (axiom.hashCode < axiom1.hashCode) { 310 // if (axiom.hashCode < axiom1.hashCode) {
311 // RSA.internal("v0_" ++ axiom1.hashCode.toString()) 311 // RSA.rsa("v0_" ++ axiom1.hashCode.toString())
312 // } else { 312 // } else {
313 // RSA.internal("v1_" ++ axiom1.hashCode.toString()) 313 // RSA.rsa("v1_" ++ axiom1.hashCode.toString())
314 // } 314 // }
315 // } yield individual 315 // } yield individual
316 // } 316 // }
@@ -347,11 +347,11 @@ trait RSAOntology {
347 tripleDSC = RSA.hashed(classD, roleS, classC) 347 tripleDSC = RSA.hashed(classD, roleS, classC)
348 individual = 348 individual =
349 if (tripleARB > tripleDSC) { 349 if (tripleARB > tripleDSC) {
350 RSA.internal("v1_" ++ tripleDSC) 350 RSA.rsa("v1_" ++ tripleDSC)
351 } else { 351 } else {
352 // Note that this is also the case for 352 // Note that this is also the case for
353 // `tripleARB == tripleDSC` 353 // `tripleARB == tripleDSC`
354 RSA.internal("v0_" ++ tripleDSC) 354 RSA.rsa("v0_" ++ tripleDSC)
355 } 355 }
356 } yield individual 356 } yield individual
357 } 357 }
@@ -366,7 +366,7 @@ trait RSAOntology {
366 val named: List[Rule] = 366 val named: List[Rule] =
367 individuals.map(a => 367 individuals.map(a =>
368 Rule.create( 368 Rule.create(
369 TupleTableAtom.rdf(a, IRI.RDF_TYPE, RSA.internal("NAMED")) 369 TupleTableAtom.rdf(a, IRI.RDF_TYPE, RSA.rsa("NAMED"))
370 ) 370 )
371 ) 371 )
372 372
@@ -539,7 +539,7 @@ trait RSAOntology {
539 private def rules1(axiom: OWLSubClassOfAxiom): List[Rule] = { 539 private def rules1(axiom: OWLSubClassOfAxiom): List[Rule] = {
540 val unfold = ontology.unfold(axiom).toList 540 val unfold = ontology.unfold(axiom).toList
541 // Fresh Variables 541 // Fresh Variables
542 val v0 = RSA.internal("v0_" ++ RSA.hashed(axiom)) 542 val v0 = RSA.rsa("v0_" ++ RSA.hashed(axiom))
543 val varX = Variable.create("X") 543 val varX = Variable.create("X")
544 // Predicates 544 // Predicates
545 val atomA: TupleTableAtom = { 545 val atomA: TupleTableAtom = {
@@ -549,8 +549,8 @@ trait RSAOntology {
549 def in(t: Term): TupleTableAtom = { 549 def in(t: Term): TupleTableAtom = {
550 TupleTableAtom.rdf( 550 TupleTableAtom.rdf(
551 t, 551 t,
552 RSA.internal("IN"), 552 RSA.rsa("IN"),
553 RSA.internal(unfold.hashCode.toString) 553 RSA.rsa(unfold.hashCode.toString)
554 ) 554 )
555 } 555 }
556 def notIn(t: Term): Negation = Negation.create(in(t)) 556 def notIn(t: Term): Negation = Negation.create(in(t))
@@ -590,9 +590,9 @@ trait RSAOntology {
590 .getProperty 590 .getProperty
591 if (ontology.confl(roleR) contains roleR) { 591 if (ontology.confl(roleR) contains roleR) {
592 // Fresh Variables 592 // Fresh Variables
593 val v0 = RSA.internal("v0_" ++ RSA.hashed(axiom)) 593 val v0 = RSA.rsa("v0_" ++ RSA.hashed(axiom))
594 val v1 = RSA.internal("v1_" ++ RSA.hashed(axiom)) 594 val v1 = RSA.rsa("v1_" ++ RSA.hashed(axiom))
595 val v2 = RSA.internal("v2_" ++ RSA.hashed(axiom)) 595 val v2 = RSA.rsa("v2_" ++ RSA.hashed(axiom))
596 // Predicates 596 // Predicates
597 def atomA(t: Term): TupleTableAtom = { 597 def atomA(t: Term): TupleTableAtom = {
598 val cls = axiom.getSubClass.asInstanceOf[OWLClass].getIRI 598 val cls = axiom.getSubClass.asInstanceOf[OWLClass].getIRI
@@ -630,7 +630,7 @@ trait RSAOntology {
630 .asInstanceOf[OWLObjectSomeValuesFrom] 630 .asInstanceOf[OWLObjectSomeValuesFrom]
631 .getProperty 631 .getProperty
632 // Fresh Variables 632 // Fresh Variables
633 val v1 = RSA.internal("v1_" ++ RSA.hashed(axiom)) 633 val v1 = RSA.rsa("v1_" ++ RSA.hashed(axiom))
634 // Predicates 634 // Predicates
635 def atomA(t: Term): TupleTableAtom = { 635 def atomA(t: Term): TupleTableAtom = {
636 val cls = axiom.getSubClass.asInstanceOf[OWLClass].getIRI 636 val cls = axiom.getSubClass.asInstanceOf[OWLClass].getIRI