Search in sources :

Example 31 with Item

use of org.apache.jena.sparql.sse.Item in project jena by apache.

the class BuilderOp method buildBGP.

private static BasicPattern buildBGP(ItemList list) {
    // Skips the tag.
    BasicPattern triples = new BasicPattern();
    for (int i = 1; i < list.size(); i++) {
        Item item = list.get(i);
        if (!item.isList())
            BuilderLib.broken(item, "Not a triple structure");
        Triple t = BuilderGraph.buildTriple(item.getList());
        triples.add(t);
    }
    return triples;
}
Also used : Triple(org.apache.jena.graph.Triple) Item(org.apache.jena.sparql.sse.Item)

Example 32 with Item

use of org.apache.jena.sparql.sse.Item in project jena by apache.

the class BuilderPrefixMapping method build.

public static void build(PrefixMapping newMappings, Item elt) {
    if (!elt.isList())
        BuilderLib.broken(elt, "Prefix mapping requires a list of pairs", elt);
    ItemList prefixes = elt.getList();
    // Strip (prefixmapping  ...)
    if (elt.isTaggedIgnoreCase(Tags.tagPrefixMap) || elt.isTaggedIgnoreCase(Tags.tagPrefixMapping)) {
        BuilderLib.checkLength(2, elt.getList(), "Not of length 2" + elt.shortString());
        // drop the tag
        prefixes = prefixes.cdr();
    }
    for (Item pair : prefixes) {
        if (!pair.isList() || pair.getList().size() != 2)
            BuilderLib.broken(pair, "Not a prefix/IRI pair");
        Item prefixItem = pair.getList().get(0);
        Item iriItem = pair.getList().get(1);
        // Maybe a Node (fake prefixed name) or a Symbol, depending on parser set up.
        String prefix = null;
        // -- Prefix as symbol
        if (prefixItem.isSymbol())
            prefix = prefixItem.getSymbol();
        if (prefix == null)
            BuilderLib.broken(pair, "Prefix part not recognized: " + prefixItem);
        if (!prefix.endsWith(":"))
            BuilderLib.broken(pair, "Prefix part does not end with a ':': " + pair);
        prefix = prefix.substring(0, prefix.length() - 1);
        if (StrUtils.contains(prefix, ":"))
            BuilderLib.broken(pair, "Prefix itself contains a ':' : " + pair);
        // -- /Prefix
        Node iriNode = iriItem.getNode();
        if (iriNode == null || !iriNode.isURI())
            BuilderLib.broken(pair, "Not an IRI: " + iriItem);
        String iri = iriNode.getURI();
        newMappings.setNsPrefix(prefix, iri);
    }
}
Also used : Item(org.apache.jena.sparql.sse.Item) ItemList(org.apache.jena.sparql.sse.ItemList) Node(org.apache.jena.graph.Node)

Example 33 with Item

use of org.apache.jena.sparql.sse.Item in project jena by apache.

the class BuilderNode method buildVars.

public static List<Var> buildVars(ItemList list) {
    list = BuilderLib.skipTag(list, Tags.tagVars);
    List<Var> x = new ArrayList<>();
    for (int i = 0; i < list.size(); i++) {
        Item item = list.get(i);
        Var var = BuilderNode.buildVar(item);
        x.add(Var.alloc(item.getNode()));
    }
    return x;
}
Also used : Item(org.apache.jena.sparql.sse.Item) Var(org.apache.jena.sparql.core.Var) ArrayList(java.util.ArrayList)

Example 34 with Item

use of org.apache.jena.sparql.sse.Item in project jena by apache.

the class BuilderNode method buildVarList.

public static List<Var> buildVarList(ItemList list) {
    if (list.size() > 0 && list.getFirst().isSymbol(Tags.tagVars))
        list = list.cdr();
    List<Var> vars = new ArrayList<>();
    for (Item x : list) {
        Var v = buildVar(x);
        vars.add(v);
    }
    return vars;
}
Also used : Item(org.apache.jena.sparql.sse.Item) Var(org.apache.jena.sparql.core.Var) ArrayList(java.util.ArrayList)

Example 35 with Item

use of org.apache.jena.sparql.sse.Item in project jena by apache.

the class BuilderNode method buildNodeList.

public static List<Node> buildNodeList(ItemList list) {
    List<Node> nodes = new ArrayList<>();
    for (Item item : list) {
        Node v = buildNode(item);
        nodes.add(v);
    }
    return nodes;
}
Also used : Item(org.apache.jena.sparql.sse.Item) Node(org.apache.jena.graph.Node) ArrayList(java.util.ArrayList)

Aggregations

Item (org.apache.jena.sparql.sse.Item)78 Test (org.junit.Test)31 Node (org.apache.jena.graph.Node)11 ItemList (org.apache.jena.sparql.sse.ItemList)10 Var (org.apache.jena.sparql.core.Var)6 ArrayList (java.util.ArrayList)5 Binding (org.apache.jena.sparql.engine.binding.Binding)3 Graph (org.apache.jena.graph.Graph)2 Triple (org.apache.jena.graph.Triple)2 ARQException (org.apache.jena.sparql.ARQException)2 DatasetGraph (org.apache.jena.sparql.core.DatasetGraph)2 VarExprList (org.apache.jena.sparql.core.VarExprList)2 ItemException (org.apache.jena.sparql.sse.ItemException)2 Tuple (org.apache.jena.atlas.lib.tuple.Tuple)1 RDFDatatype (org.apache.jena.datatypes.RDFDatatype)1 QueryParseException (org.apache.jena.query.QueryParseException)1 ResultSetRewindable (org.apache.jena.query.ResultSetRewindable)1 Model (org.apache.jena.rdf.model.Model)1 ARQInternalErrorException (org.apache.jena.sparql.ARQInternalErrorException)1 Table (org.apache.jena.sparql.algebra.Table)1