package com.github.anno4j.querying.evaluation.ldpath; import com.github.anno4j.querying.evaluation.LDPathEvaluatorConfiguration; import com.github.anno4j.querying.extension.QueryEvaluator; import com.github.anno4j.annotations.Evaluator; import com.hp.hpl.jena.sparql.core.Var; import com.hp.hpl.jena.sparql.syntax.ElementGroup; import org.apache.marmotta.ldpath.api.selectors.NodeSelector; import org.apache.marmotta.ldpath.model.selectors.PathSelector; @Evaluator(PathSelector.class) public class PathSelectorEvaluator implements QueryEvaluator { @Override public Var evaluate(NodeSelector nodeSelector, ElementGroup elementGroup, Var var, LDPathEvaluatorConfiguration evaluatorConfiguration) { PathSelector pathSelector = (PathSelector) nodeSelector; Var leftVar = LDPathEvaluator.evaluate(pathSelector.getLeft(), elementGroup, var, evaluatorConfiguration); return LDPathEvaluator.evaluate(pathSelector.getRight(), elementGroup, leftVar, evaluatorConfiguration); } }