Search in sources :

Example 16 with Node

use of org.apache.jena.graph.Node in project jena by apache.

the class TurtleRDFGraphInserter method triple.

@Override
public void triple(int line, int col, Triple triple) {
    //Check it's valid triple.
    Node s = triple.getSubject();
    Node p = triple.getPredicate();
    Node o = triple.getObject();
    if (!(s.isURI() || s.isBlank()))
        throw new TurtleParseException("[" + line + ", " + col + "] : Error: Subject is not a URI or blank node");
    if (!p.isURI())
        throw new TurtleParseException("[" + line + ", " + col + "] : Error: Predicate is not a URI");
    if (!(o.isURI() || o.isBlank() || o.isLiteral()))
        throw new TurtleParseException("[" + line + ", " + col + "] : Error: Object is not a URI, blank node or literal");
    graph.add(triple);
}
Also used : Node(org.apache.jena.graph.Node)

Example 17 with Node

use of org.apache.jena.graph.Node in project jena by apache.

the class REST_Quads method doPostTriplesGSP.

protected void doPostTriplesGSP(HttpAction action, Lang lang) {
    action.beginWrite();
    try {
        DatasetGraph dsg = action.getActiveDSG();
        //log.info(format("[%d] ** Content-length: %d", action.id, action.request.getContentLength())) ;  
        String name = action.request.getRequestURL().toString();
        if (!name.endsWith("/"))
            name = name + "/";
        name = name + (++counter);
        Node gn = NodeFactory.createURI(name);
        Graph g = dsg.getGraph(gn);
        RDFDataMgr.read(g, action.request.getInputStream(), name, lang);
        log.info(format("[%d] Location: %s", action.id, name));
        action.response.setHeader("Location", name);
        action.commit();
        successCreated(action);
    } catch (IOException ex) {
        action.abort();
    } finally {
        action.endWrite();
    }
}
Also used : DatasetGraph(org.apache.jena.sparql.core.DatasetGraph) Graph(org.apache.jena.graph.Graph) Node(org.apache.jena.graph.Node) IOException(java.io.IOException) DatasetGraph(org.apache.jena.sparql.core.DatasetGraph)

Example 18 with Node

use of org.apache.jena.graph.Node in project jena by apache.

the class SPARQL_REST method determineTarget.

protected static final Target determineTarget(HttpAction action) {
    // Delayed until inside a transaction.
    if (action.getActiveDSG() == null)
        errorOccurred("Internal error : No action graph (not in a transaction?)");
    boolean dftGraph = getOneOnly(action.request, HttpNames.paramGraphDefault) != null;
    String uri = getOneOnly(action.request, HttpNames.paramGraph);
    if (!dftGraph && uri == null) {
        // Direct naming or error.
        uri = action.request.getRequestURL().toString();
        if (action.request.getRequestURI().equals(action.getDatasetRef().name))
            // No name 
            errorBadRequest("Neither default graph nor named graph specified; no direct name");
    }
    if (dftGraph)
        return Target.createDefault(action.getActiveDSG());
    // Named graph
    if (uri.equals(HttpNames.valueDefault))
        // But "named" default
        return Target.createDefault(action.getActiveDSG());
    // Strictly, a bit naughty on the URI resolution.  But more sensible. 
    // Base is dataset.
    //wholeRequestURL(request) ;
    String base = action.request.getRequestURL().toString();
    // Make sure it ends in "/", ie. dataset as container.
    if (action.request.getQueryString() != null && !base.endsWith("/"))
        base = base + "/";
    String absUri = IRIResolver.resolveString(uri, base);
    Node gn = NodeFactory.createURI(absUri);
    return Target.createNamed(action.getActiveDSG(), absUri, gn);
}
Also used : Node(org.apache.jena.graph.Node)

Example 19 with Node

use of org.apache.jena.graph.Node in project jena by apache.

the class sdbload method loadOne.

private void loadOne(String filename, boolean replace) {
    Model model = null;
    Dataset dataset = null;
    PrefixMapping pmap;
    Lang lang = RDFLanguages.filenameToLang(filename);
    if (lang == null)
        throw new CmdException("Data syntax not recognized: " + filename);
    // --graph or not
    if (modGraph.getGraphName() != null) {
        model = modGraph.getModel(getStore());
        pmap = model;
    } else {
        dataset = SDBFactory.connectDataset(getStore());
        pmap = dataset.asDatasetGraph().getDefaultGraph().getPrefixMapping();
    }
    // For monitoring only.
    Graph monitorGraph = (model == null) ? null : model.getGraph();
    if (replace) {
        if (model != null)
            model.removeAll();
        else
            dataset.asDatasetGraph().clear();
    }
    boolean showProgress = isVerbose() || getModTime().timingEnabled();
    if (showProgress)
        output.print("Start load: %s", filename);
    StreamRDF stream = streamToStore(pmap, getStore());
    if (modGraph.getGraphName() != null) {
        Node gn = NodeFactory.createURI(modGraph.getGraphName());
        stream = StreamRDFLib.extendTriplesToQuads(gn, stream);
    }
    ProgressMonitor progress = null;
    if (showProgress) {
        progress = new ProgressMonitor(filename, 100_000, 10, output);
        stream = new ProgressStreamRDF(stream, progress);
    }
    if (progress != null)
        progress.start();
    // Load!
    RDFDataMgr.parse(stream, filename, lang);
    if (progress != null) {
        progress.finish();
        progress.finishMessage();
    }
}
Also used : ProgressMonitor(org.apache.jena.atlas.lib.ProgressMonitor) PrefixMapping(org.apache.jena.shared.PrefixMapping) Graph(org.apache.jena.graph.Graph) ModGraph(sdb.cmd.ModGraph) ProgressStreamRDF(org.apache.jena.riot.system.ProgressStreamRDF) CmdException(jena.cmd.CmdException) ProgressStreamRDF(org.apache.jena.riot.system.ProgressStreamRDF) StreamRDF(org.apache.jena.riot.system.StreamRDF) Dataset(org.apache.jena.query.Dataset) Node(org.apache.jena.graph.Node) Model(org.apache.jena.rdf.model.Model) Lang(org.apache.jena.riot.Lang)

Example 20 with Node

use of org.apache.jena.graph.Node in project jena by apache.

the class SlotCompilerIndex method insertConstantAccesses.

protected SqlNode insertConstantAccesses(Collection<Node> constants) {
    SqlNode sqlNode = null;
    for (Node n : constants) {
        long hash = NodeLayout2.hash(n);
        SqlConstant hashValue = new SqlConstant(hash);
        // Access nodes table.
        SqlTable nTable = new SqlTable(getRequest().genId(NodeConstBase), nodeTableDesc.getTableName());
        nTable.addNote("Const: " + FmtUtils.stringForNode(n, getRequest().getPrefixMapping()));
        SqlColumn cHash = new SqlColumn(nTable, nodeTableDesc.getHashColName());
        // Record 
        constantCols.put(n, new SqlColumn(nTable, nodeTableDesc.getIdColName()));
        SqlExpr c = new S_Equal(cHash, hashValue);
        sqlNode = SqlBuilder.innerJoin(getRequest(), sqlNode, nTable);
        sqlNode = SqlBuilder.restrict(getRequest(), sqlNode, c);
    }
    return sqlNode;
}
Also used : SqlNode(org.apache.jena.sdb.core.sqlnode.SqlNode) Node(org.apache.jena.graph.Node) SqlTable(org.apache.jena.sdb.core.sqlnode.SqlTable) SqlNode(org.apache.jena.sdb.core.sqlnode.SqlNode)

Aggregations

Node (org.apache.jena.graph.Node)1250 Test (org.junit.Test)440 Triple (org.apache.jena.graph.Triple)201 Var (org.apache.jena.sparql.core.Var)164 Graph (org.apache.jena.graph.Graph)121 ArrayList (java.util.ArrayList)104 Binding (org.apache.jena.sparql.engine.binding.Binding)80 Quad (org.apache.jena.sparql.core.Quad)73 GeometryWrapper (org.apache.jena.geosparql.implementation.GeometryWrapper)64 RDFNode (org.apache.jena.rdf.model.RDFNode)64 DatasetGraph (org.apache.jena.sparql.core.DatasetGraph)62 Literal (org.apache.jena.rdf.model.Literal)61 PropFuncArg (org.apache.jena.sparql.pfunction.PropFuncArg)56 SpatialArguments (org.apache.jena.geosparql.spatial.property_functions.SpatialArguments)51 SearchEnvelope (org.apache.jena.geosparql.spatial.SearchEnvelope)46 HashMap (java.util.HashMap)44 TriplePath (org.apache.jena.sparql.core.TriplePath)36 Model (org.apache.jena.rdf.model.Model)33 NodeValue (org.apache.jena.sparql.expr.NodeValue)31 WhereValidator (org.apache.jena.arq.querybuilder.WhereValidator)30