Class MergeAdjacentValuesTransform
java.lang.Object
org.eclipse.rdf4j.queryrender.sparql.ir.util.transform.BaseTransform
org.eclipse.rdf4j.queryrender.sparql.ir.util.transform.MergeAdjacentValuesTransform
Merge adjacent VALUES blocks under provably-safe conditions:
- Identical variable lists (same names, same order): conjunction is equivalent to the multiset intersection of rows.
The merged VALUES has the same variable list and duplicates with multiplicity = m1 * m2 per identical row. - Disjoint
variable lists: conjunction is equivalent to a single multi-column VALUES with the cross product of rows (row
multiplicities multiply). Variable column order is preserved as [left vars..., right vars...].
Overlapping-but-not-identical variable sets are left untouched.
-
Field Summary
Fields inherited from class BaseTransform
ANON_PATH_INVERSE_PREFIX, ANON_PATH_PREFIX -
Method Summary
Methods inherited from class BaseTransform
bgpWithLines, branchHasAnonPathBridge, copyAllExcept, fuseAdjacentPtThenPt, fuseAdjacentSpThenPt, fuseAltInverseTailBGP, fusePtSpPtSequence, invertNegatedPropertySet, iri, isAnonPathInverseVar, isAnonPathVar, isConstantIriPredicate, joinPathWithLaterSp, mergeNpsMembers, normalizeCompactNps, orientBareNpsForNext, rewriteContainers, sameVar, sameVarOrValue, unionBranchesAllHaveAnonPathBridge, unionBranchesShareAnonPathVarWithAllowedRoleMapping, unionBranchesShareCommonAnonPathVarName, unionIsExplicitAndAllBranchesScoped, varOrValue
-
Method Details
-
apply
-