package org.aksw.jena_sparql_api.util.sparql.syntax.path; import java.util.List; import org.apache.jena.graph.Node; import org.apache.jena.sparql.path.P_Alt; import org.apache.jena.sparql.path.P_Distinct; import org.apache.jena.sparql.path.P_FixedLength; import org.apache.jena.sparql.path.P_Inverse; import org.apache.jena.sparql.path.P_Link; import org.apache.jena.sparql.path.P_Mod; import org.apache.jena.sparql.path.P_Multi; import org.apache.jena.sparql.path.P_NegPropSet; import org.apache.jena.sparql.path.P_OneOrMore1; import org.apache.jena.sparql.path.P_OneOrMoreN; import org.apache.jena.sparql.path.P_ReverseLink; import org.apache.jena.sparql.path.P_Seq; import org.apache.jena.sparql.path.P_Shortest; import org.apache.jena.sparql.path.P_ZeroOrMore1; import org.apache.jena.sparql.path.P_ZeroOrMoreN; import org.apache.jena.sparql.path.P_ZeroOrOne; import org.apache.jena.sparql.path.Path; public interface PathTransform { Path transform(P_Link path, Node node); Path transform(P_ReverseLink path, Node node); Path transform(P_NegPropSet path, List<Node> fwdNodes, List<Node> bwdNodes); Path transform(P_Inverse path, Path subPath); Path transform(P_Mod path, Path subPath, long min, long max); Path transform(P_FixedLength path, Path subPath, long count); Path transform(P_Distinct path, Path subPath); Path transform(P_Multi path, Path subPath); Path transform(P_Shortest path, Path subPath); Path transform(P_ZeroOrOne path, Path subPath); Path transform(P_ZeroOrMore1 path, Path subPath); Path transform(P_ZeroOrMoreN path, Path subPath); Path transform(P_OneOrMore1 path, Path subPath); Path transform(P_OneOrMoreN path, Path subPath); Path transform(P_Alt path, Path left, Path right); Path transform(P_Seq path, Path left, Path right); }