From c3ff5305c30cdf31755972df4c3dc554d5246ae9 Mon Sep 17 00:00:00 2001 From: Federico Igne Date: Tue, 8 Dec 2020 12:22:56 +0000 Subject: Include literals in instances of `Named` internal predicate --- src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala') 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 7b4b142..0fb6c96 100644 --- a/src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala +++ b/src/main/scala/uk/ac/ox/cs/rsacomb/RSAOntology.scala @@ -11,6 +11,7 @@ import org.semanticweb.owlapi.model.{OWLOntology, OWLAxiom, OWLLogicalAxiom} import org.semanticweb.owlapi.model.{ OWLClass, OWLClassExpression, + OWLDataPropertyAssertionAxiom, OWLObjectProperty, OWLSubObjectPropertyOfAxiom, OWLObjectPropertyExpression, @@ -35,7 +36,8 @@ import tech.oxfordsemantic.jrdfox.logic.expression.{ Term, Variable, IRI, - Resource + Resource, + Literal } import tech.oxfordsemantic.jrdfox.logic.sparql.statement.SelectQuery @@ -117,6 +119,12 @@ class RSAOntology(val ontology: OWLOntology) { .map(implicits.RDFox.owlapiToRdfoxIri) .toList + val literals: List[Literal] = + abox + .collect { case a: OWLDataPropertyAssertionAxiom => a } + .map(_.getObject) + .map(implicits.RDFox.owlapiToRdfoxLiteral) + val concepts: List[OWLClass] = ontology.getClassesInSignature().asScala.toList @@ -288,7 +296,7 @@ class RSAOntology(val ontology: OWLOntology) { } def filteringProgram(query: ConjunctiveQuery): FilteringProgram = - new FilteringProgram(query, individuals) + new FilteringProgram(query, individuals ++ literals) lazy val canonicalModel = new CanonicalModel(this) -- cgit v1.2.3