diff options
| author | RncLsn <rnc.lsn@gmail.com> | 2015-08-01 18:53:23 +0100 |
|---|---|---|
| committer | RncLsn <rnc.lsn@gmail.com> | 2015-08-01 18:53:23 +0100 |
| commit | 3d1c8553f61747b54a8304a39f401f9b77f8cf57 (patch) | |
| tree | 1e1374da8ae640b7e5c4aff86a5ab2d8d413f2ac /src/uk/ac/ox/cs/pagoda/reasoner/MyQueryReasoner.java | |
| parent | 3d44aee6069175038266c65f945147569e6343f6 (diff) | |
| download | ACQuA-3d1c8553f61747b54a8304a39f401f9b77f8cf57.tar.gz ACQuA-3d1c8553f61747b54a8304a39f401f9b77f8cf57.zip | |
Option for SkolemUpperBound application and for skolemisation depth (from file pagoda.properties).
Diffstat (limited to 'src/uk/ac/ox/cs/pagoda/reasoner/MyQueryReasoner.java')
| -rw-r--r-- | src/uk/ac/ox/cs/pagoda/reasoner/MyQueryReasoner.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/uk/ac/ox/cs/pagoda/reasoner/MyQueryReasoner.java b/src/uk/ac/ox/cs/pagoda/reasoner/MyQueryReasoner.java index 6b1921c..8e28142 100644 --- a/src/uk/ac/ox/cs/pagoda/reasoner/MyQueryReasoner.java +++ b/src/uk/ac/ox/cs/pagoda/reasoner/MyQueryReasoner.java | |||
| @@ -18,6 +18,7 @@ import uk.ac.ox.cs.pagoda.tracking.QueryTracker; | |||
| 18 | import uk.ac.ox.cs.pagoda.tracking.TrackingRuleEncoder; | 18 | import uk.ac.ox.cs.pagoda.tracking.TrackingRuleEncoder; |
| 19 | import uk.ac.ox.cs.pagoda.tracking.TrackingRuleEncoderDisjVar1; | 19 | import uk.ac.ox.cs.pagoda.tracking.TrackingRuleEncoderDisjVar1; |
| 20 | import uk.ac.ox.cs.pagoda.tracking.TrackingRuleEncoderWithGap; | 20 | import uk.ac.ox.cs.pagoda.tracking.TrackingRuleEncoderWithGap; |
| 21 | import uk.ac.ox.cs.pagoda.util.PagodaProperties; | ||
| 21 | import uk.ac.ox.cs.pagoda.util.Timer; | 22 | import uk.ac.ox.cs.pagoda.util.Timer; |
| 22 | import uk.ac.ox.cs.pagoda.util.Utility; | 23 | import uk.ac.ox.cs.pagoda.util.Utility; |
| 23 | import uk.ac.ox.cs.pagoda.util.disposable.DisposedException; | 24 | import uk.ac.ox.cs.pagoda.util.disposable.DisposedException; |
| @@ -193,6 +194,11 @@ class MyQueryReasoner extends QueryReasoner { | |||
| 193 | // queryRecord.saveRelevantOntology("/home/alessandro/Desktop/test-relevant-ontology-"+relevantOntologiesCounter+".owl"); | 194 | // queryRecord.saveRelevantOntology("/home/alessandro/Desktop/test-relevant-ontology-"+relevantOntologiesCounter+".owl"); |
| 194 | // relevantOntologiesCounter++; | 195 | // relevantOntologiesCounter++; |
| 195 | 196 | ||
| 197 | if(properties.getSkolemUpperBound() == PagodaProperties.SkolemUpperBoundOptions.BEFORE_SUMMARISATION | ||
| 198 | && querySkolemisedRelevantSubset(relevantOntologySubset, queryRecord)) { | ||
| 199 | return; | ||
| 200 | } | ||
| 201 | |||
| 196 | Utility.logInfo(">> Summarisation <<"); | 202 | Utility.logInfo(">> Summarisation <<"); |
| 197 | HermitSummaryFilter summarisedChecker = new HermitSummaryFilter(queryRecord, properties.getToCallHermiT()); | 203 | HermitSummaryFilter summarisedChecker = new HermitSummaryFilter(queryRecord, properties.getToCallHermiT()); |
| 198 | if(summarisedChecker.check(queryRecord.getGapAnswers()) == 0) { | 204 | if(summarisedChecker.check(queryRecord.getGapAnswers()) == 0) { |
| @@ -200,8 +206,8 @@ class MyQueryReasoner extends QueryReasoner { | |||
| 200 | return; | 206 | return; |
| 201 | } | 207 | } |
| 202 | 208 | ||
| 203 | if(properties.getUseSkolemUpperBound() && | 209 | if(properties.getSkolemUpperBound() == PagodaProperties.SkolemUpperBoundOptions.AFTER_SUMMARISATION |
| 204 | querySkolemisedRelevantSubset(relevantOntologySubset, queryRecord)) { | 210 | && querySkolemisedRelevantSubset(relevantOntologySubset, queryRecord)) { |
| 205 | summarisedChecker.dispose(); | 211 | summarisedChecker.dispose(); |
| 206 | return; | 212 | return; |
| 207 | } | 213 | } |
| @@ -390,7 +396,7 @@ class MyQueryReasoner extends QueryReasoner { | |||
| 390 | relevantStore.importDataFromABoxOf(relevantSubset); | 396 | relevantStore.importDataFromABoxOf(relevantSubset); |
| 391 | String relevantOriginalMarkProgram = OWLHelper.getOriginalMarkProgram(relevantSubset); | 397 | String relevantOriginalMarkProgram = OWLHelper.getOriginalMarkProgram(relevantSubset); |
| 392 | 398 | ||
| 393 | int queryDependentMaxTermDepth = 3; // TODO make it dynamic | 399 | int queryDependentMaxTermDepth = properties.getSkolemDepth(); |
| 394 | relevantStore.materialise("Mark original individuals", relevantOriginalMarkProgram); | 400 | relevantStore.materialise("Mark original individuals", relevantOriginalMarkProgram); |
| 395 | int materialisationTag = relevantStore.materialiseSkolemly(relevantProgram, null, | 401 | int materialisationTag = relevantStore.materialiseSkolemly(relevantProgram, null, |
| 396 | queryDependentMaxTermDepth); | 402 | queryDependentMaxTermDepth); |
