From 88597503975804e3cb83d116f3cc9a3f12c57461 Mon Sep 17 00:00:00 2001 From: Federico Igne Date: Mon, 3 Aug 2020 09:52:53 +0100 Subject: Add DL renderer for input rules --- src/main/scala/rsacomb/RSAComb.scala | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) (limited to 'src/main/scala/rsacomb/RSAComb.scala') diff --git a/src/main/scala/rsacomb/RSAComb.scala b/src/main/scala/rsacomb/RSAComb.scala index 16d7a04..a6f237f 100644 --- a/src/main/scala/rsacomb/RSAComb.scala +++ b/src/main/scala/rsacomb/RSAComb.scala @@ -22,6 +22,7 @@ import tech.oxfordsemantic.jrdfox.logic.{LogicFormat} import scala.collection.JavaConverters._ import rsacomb.SkolemStrategy +import org.semanticweb.owlapi.dlsyntax.renderer.DLSyntaxObjectRenderer class RSA(ontology : OWLOntology) { @@ -52,12 +53,29 @@ object RSA { * step of approximation of an Horn-ALCHOIQ to RSA */ + val renderer = new DLSyntaxObjectRenderer() + + /* Print TBox axioms */ + println("TBox/RBox:") + for { + axiom <- onto.tboxAxioms(Imports.EXCLUDED).collect(Collectors.toList()).asScala + } yield println(renderer.render(axiom)) + for { + axiom <- onto.rboxAxioms(Imports.EXCLUDED).collect(Collectors.toList()).asScala + } yield println(renderer.render(axiom)) + /* Ontology axiom convertion into LP rules */ - for { + println("Logic rules:") + for { axiom <- onto.tboxAxioms(Imports.EXCLUDED).collect(Collectors.toList()).asScala visitor = new RDFoxAxiomConverter(Variable.create("x"), SkolemStrategy.Constant(axiom.toString)) rule <- axiom.accept(visitor) - } yield println(rule) + } yield println(rule) + for { + axiom <- onto.rboxAxioms(Imports.EXCLUDED).collect(Collectors.toList()).asScala + visitor = new RDFoxAxiomConverter(Variable.create("x"), SkolemStrategy.Constant(axiom.toString)) + rule <- axiom.accept(visitor) + } yield println(rule) /* Return true for now... */ true -- cgit v1.2.3