aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/rsacomb/RDFoxClassExprConverter.scala
diff options
context:
space:
mode:
authorFederico Igne <federico.igne@cs.ox.ac.uk>2020-11-10 17:16:02 +0000
committerFederico Igne <federico.igne@cs.ox.ac.uk>2020-11-10 17:16:02 +0000
commit43234b253a74e71977ce29d0c7e2947e64fc6966 (patch)
tree02902f1d8afcbd21c20062f31ad4d3e5f8fc5ce7 /src/main/scala/rsacomb/RDFoxClassExprConverter.scala
parent159605a3b8b55a8394600a9c73d0c8bccba0546f (diff)
downloadRSAComb-43234b253a74e71977ce29d0c7e2947e64fc6966.tar.gz
RSAComb-43234b253a74e71977ce29d0c7e2947e64fc6966.zip
Fix SKOLEM call creation during function skolemization
The first argument of a SKOLEM call needs to be a literal string. Note that this is not enforced in any way by RDFox, that will fail silently.
Diffstat (limited to 'src/main/scala/rsacomb/RDFoxClassExprConverter.scala')
-rw-r--r--src/main/scala/rsacomb/RDFoxClassExprConverter.scala8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/main/scala/rsacomb/RDFoxClassExprConverter.scala b/src/main/scala/rsacomb/RDFoxClassExprConverter.scala
index de0f623..7f44ab1 100644
--- a/src/main/scala/rsacomb/RDFoxClassExprConverter.scala
+++ b/src/main/scala/rsacomb/RDFoxClassExprConverter.scala
@@ -20,6 +20,7 @@ import tech.oxfordsemantic.jrdfox.logic.datalog.{
20} 20}
21import tech.oxfordsemantic.jrdfox.logic.expression.{ 21import tech.oxfordsemantic.jrdfox.logic.expression.{
22 Term, 22 Term,
23 Literal,
23 Variable, 24 Variable,
24 FunctionCall, 25 FunctionCall,
25 IRI 26 IRI
@@ -118,14 +119,13 @@ class RDFoxClassExprConverter(
118 else 119 else
119 (List(), List(), c) 120 (List(), List(), c)
120 } 121 }
121 case SkolemStrategy.Standard(f) => 122 case SkolemStrategy.Standard(f) => {
122 // particular class for the "SKOLEM" operator and it is instead
123 // a simple builtin function with a "special" name.
124 ( 123 (
125 List(), 124 List(),
126 List(BindAtom.create(FunctionCall.create("SKOLEM", term), y)), 125 List(BindAtom.create(FunctionCall.create("SKOLEM", f, term), y)),
127 y 126 y
128 ) 127 )
128 }
129 } 129 }
130 val classVisitor = 130 val classVisitor =
131 new RDFoxClassExprConverter(term1, unsafe, skolem, suffix) 131 new RDFoxClassExprConverter(term1, unsafe, skolem, suffix)