From 6a29b16dee0592fdeb03b26ff87fd00d57555f78 Mon Sep 17 00:00:00 2001 From: Federico Igne Date: Wed, 30 Sep 2020 19:45:25 +0200 Subject: Add rule generation for unsafe T5 axioms for canonical model --- src/main/scala/rsacomb/RDFoxPropertyExprConverter.scala | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'src/main/scala/rsacomb/RDFoxPropertyExprConverter.scala') diff --git a/src/main/scala/rsacomb/RDFoxPropertyExprConverter.scala b/src/main/scala/rsacomb/RDFoxPropertyExprConverter.scala index 6eecdbf..ba151d0 100644 --- a/src/main/scala/rsacomb/RDFoxPropertyExprConverter.scala +++ b/src/main/scala/rsacomb/RDFoxPropertyExprConverter.scala @@ -5,24 +5,27 @@ import org.semanticweb.owlapi.model.OWLPropertyExpressionVisitorEx import tech.oxfordsemantic.jrdfox.logic.{Atom, Term, IRI, Literal} -import rsacomb.SkolemStrategy import org.semanticweb.owlapi.model.OWLObjectInverseOf class RDFoxPropertyExprConverter( term1: Term, term2: Term, - skolem: SkolemStrategy + suffix: RSASuffix ) extends OWLPropertyExpressionVisitorEx[List[Atom]] { // Automatically converts OWLAPI types into RDFox equivalent types. import RDFoxUtil.owlapi2rdfox; - override def visit(expr: OWLObjectProperty): List[Atom] = - List(Atom.rdf(term1, expr.getIRI, term2)) + override def visit(expr: OWLObjectProperty): List[Atom] = { + val pred = IRI.create(expr.getIRI.getIRIString ++ suffix.getSuffix) + List(Atom.rdf(term1, pred, term2)) + } override def visit(expr: OWLObjectInverseOf): List[Atom] = { - val name = expr.getInverse.getNamedProperty.getIRI.getIRIString; - List(Atom.rdf(term1, IRI.create(name ++ "_inv"), term2)) + val pred = IRI.create( + expr.getInverse.getNamedProperty.getIRI.getIRIString ++ suffix.getSuffix ++ "_inv" + ) + List(Atom.rdf(term1, pred, term2)) } def doDefault(expr: OWLPropertyExpression): List[Atom] = List() -- cgit v1.2.3