From 2506ce08cb6660305922fc649c221226332d5783 Mon Sep 17 00:00:00 2001 From: Federico Igne Date: Mon, 7 Dec 2020 16:20:31 +0000 Subject: Add additional diagnostics --- src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala | 8 +++++++- src/main/scala/uk/ac/ox/cs/rsacomb/util/RDFoxUtil.scala | 4 ++++ 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'src') 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 87a2312..8a40e1e 100644 --- a/src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala +++ b/src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala @@ -108,6 +108,10 @@ class RSAOntology(val ontology: OWLOntology) { val axioms: List[OWLLogicalAxiom] = abox ::: tbox ::: rbox + Logger.print(s"Original TBox: ${tbox.length} axioms", Logger.DEBUG) + Logger.print(s"Original RBox: ${tbox.length} axioms", Logger.DEBUG) + Logger.print(s"Original ABox: ${tbox.length} axioms", Logger.DEBUG) + /* Retrieve individuals in the original ontology */ val individuals: List[IRI] = @@ -347,6 +351,7 @@ class RSAOntology(val ontology: OWLOntology) { Logger print s"Canonical model: ${canon.facts.length} facts" RDFoxUtil.addFacts(data, this.canonicalModel.facts) + RDFoxUtil materialize data RDFoxUtil printStatisticsFor data Logger print s"Filtering program: ${filter.rules.length} rules" @@ -355,7 +360,8 @@ class RSAOntology(val ontology: OWLOntology) { Logger print s"Filtering program: ${filter.facts.length} facts" RDFoxUtil.addFacts(data, filter.facts) - RDFoxUtil printStatistics data + RDFoxUtil materialize data + RDFoxUtil printStatisticsFor data val answers = { val ans = RDFoxUtil.buildDescriptionQuery("Ans", query.answer.size) diff --git a/src/main/scala/uk/ac/ox/cs/rsacomb/util/RDFoxUtil.scala b/src/main/scala/uk/ac/ox/cs/rsacomb/util/RDFoxUtil.scala index 51ef903..31cc850 100644 --- a/src/main/scala/uk/ac/ox/cs/rsacomb/util/RDFoxUtil.scala +++ b/src/main/scala/uk/ac/ox/cs/rsacomb/util/RDFoxUtil.scala @@ -114,6 +114,10 @@ object RDFoxUtil { Logger.DEBUG ) + /** Force materialization in RDFox. */ + def materialize(data: DataStoreConnection): Unit = + Logger.timed(data.updateMaterialization(), "Materialization", Logger.DEBUG) + /** Load SPARQL query from file. */ def loadQueryFromFile(file: File): String = { val source = io.Source.fromFile(file) -- cgit v1.2.3