if (steps.size() == 1 && steps.get(0) instanceof DescendantOrSelf) return new RelativePathLikeExpressions();
PathLikeBuilder builder = new SinglePathLikeBuilder();
int depth = 0;
DepthMode depthMode = DepthMode.EXACT;
for (Iterator<StepExpression> iterator = steps.iterator(); iterator.hasNext();) {
StepExpression step = iterator.next();
if (step instanceof DescendantOrSelf) {
++depth;
depthMode = DepthMode.DEFAULT;
if (builder.isEmpty()) {
builder.append("%/");