aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/uk/ac/ox/cs/rsacomb/Main.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/uk/ac/ox/cs/rsacomb/Main.scala')
-rw-r--r--src/main/scala/uk/ac/ox/cs/rsacomb/Main.scala18
1 files changed, 4 insertions, 14 deletions
diff --git a/src/main/scala/uk/ac/ox/cs/rsacomb/Main.scala b/src/main/scala/uk/ac/ox/cs/rsacomb/Main.scala
index c3db99d..a8107b5 100644
--- a/src/main/scala/uk/ac/ox/cs/rsacomb/Main.scala
+++ b/src/main/scala/uk/ac/ox/cs/rsacomb/Main.scala
@@ -84,24 +84,14 @@ object RSAComb extends App {
84 println(query) 84 println(query)
85 } 85 }
86 86
87 // Step 1. Computing the canonical model
88 val canon = ontology.canonicalModel 87 val canon = ontology.canonicalModel
89 data.addRules(canon.rules) 88 data.addRules(canon.rules)
89 val filter = ontology.filteringProgram(query)
90 data.addRules(filter.rules)
90 91
91 { 92 {
92 println("\nCanonical Model rules:") 93 println("\nCanonical Model rules:")
93 canon.rules.foreach(println) 94 canon.rules.foreach(println)
94 }
95
96 // Step 2. Computing the canonical model
97 val nis = {
98 val query = "SELECT ?Y WHERE { ?X rsa:EquivTo ?Y ; a rsa:Named . }"
99 RDFoxHelpers.submitSelectQuery(data, query, RSA.Prefixes).flatten
100 }
101 val filter = ontology.filteringProgram(query, nis)
102 data.addRules(filter.rules)
103
104 {
105 println("\nFiltering rules") 95 println("\nFiltering rules")
106 filter.rules.foreach(println) 96 filter.rules.foreach(println)
107 } 97 }
@@ -168,12 +158,12 @@ object RSAComb extends App {
168 ) 158 )
169 println(ids) 159 println(ids)
170 160
171 println("\nEquivTo:") 161 println("\nCongruent:")
172 val equivs = RDFoxHelpers.submitSelectQuery( 162 val equivs = RDFoxHelpers.submitSelectQuery(
173 data, 163 data,
174 """ 164 """
175 SELECT ?X ?Y { 165 SELECT ?X ?Y {
176 ?X rsa:EquivTo ?Y 166 ?X rsa:congruent ?Y
177 } 167 }
178 """, 168 """,
179 RSA.Prefixes 169 RSA.Prefixes