diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/scala/rsacomb/FilteringProgram.scala | 60 | ||||
-rw-r--r-- | src/main/scala/rsacomb/Main.scala | 21 | ||||
-rw-r--r-- | src/main/scala/rsacomb/RDFoxClassExprConverter.scala | 4 | ||||
-rw-r--r-- | src/main/scala/rsacomb/RSA.scala | 10 | ||||
-rw-r--r-- | src/main/scala/rsacomb/RSAOntology.scala | 30 |
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 | ||
22 | object RSA extends RSAOntology with RSAAxiom { | 22 | object 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 |