Migration Notes: EDG 8.4 to 8.5
Data Platform upgrade
Deployments that use TopBraid Data Platform must also upgrade the Data Coordinator server to version 2.0.0-tq-2.
SPARQL Changes
Starting with version 8.5, TopBraid made a low-level switch to the way that the Apache Jena API is handling pre-bound variables in SPARQL queries. This may affect any parameterized SPARQL query, for example in ADS scripts, SWP and SPARQL-based SHACL (or SPIN) features. TopBraid is now using variable substitution instead of so-called initial bindings for pre-bound variables.
While the full impact of this change is not fully understood, we have so far only observed differences w.r.t.
the semantics of the BIND
operator in SPARQL. Previously, when a variable on the right side of a BIND was pre-bound,
the engine had treated the BIND like an equals FILTER. For example, if your SPARQL query contains
BIND (?someExpr AS $preBound)
then it was interpreted as FILTER (?someExpr = $preBound)
.
It is no longer valid to use pre-bound variables on the right hand side, and the SPARQL engine will throw an exception
when it runs into such cases. You need to re-formulate your queries to avoid this.
If this is too difficult, in 8.5 you can use Use Product Configuration > SPARQL to re-activate the old pre-binding algorithm. However, this option will be removed once TopBraid has been upgraded to a newer Jena version in which the original pre-binding algorithm will be completely deleted.