Hi all,

I'm struggling with inserting triples in a Jena Fuseki Geosparql dataset.
My application has the need to add triples at runtime which will afterwards
will be used to perform geo spatial analysis like within, distance, ...

The server is started as follows:

java -jar jena-fuseki-geosparql-3.17.0-SNAPSHOT.jar -rf
"geosparql_test.rdf" -i --port 35400

I trying to insert triples using this code:

import org.apache.jena.fuseki.geosparql.DatasetException;
import org.apache.jena.geosparql.spatial.SpatialIndexException;
import org.apache.jena.query.QueryExecution;
import org.apache.jena.query.QueryExecutionFactory;
import org.apache.jena.query.ResultSet;
import org.apache.jena.query.ResultSetFormatter;
import org.apache.jena.update.UpdateExecutionFactory;
import org.apache.jena.update.UpdateFactory;
import org.apache.jena.update.UpdateProcessor;
import org.apache.jena.update.UpdateRequest;

public class Case {

    public static void main(String[] args) throws DatasetException,
SpatialIndexException {

        String service = "http://localhost:35400/ds";;

        String insertQuery = "PREFIX rdf:
<http://www.w3.org/1999/02/22-rdf-syntax-ns#> \n INSERT DATA {\n" +
                "<http://example.com/test>
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://example.com/Test> .\n" +
                "<http://example.com/test>
<http://www.opengis.net/ont/geosparql#hasGeometry>
<http://example.com/test/geometry> .\n" +
                "<http://example.com/test/geometry>
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://www.opengis.net/ont/sf#Point> .\n" +
                "<http://example.com/test/geometry>
<http://www.opengis.net/ont/geosparql#asWKT>
\"<http://www.opengis.net/def/crs/EPSG/0/27700> POINT(4.4871426
51.9086434)\"^^<http://www.opengis.net/ont/geosparql#wktLiteral> \n" +
                "}";
        UpdateRequest updateRequest = UpdateFactory.create(insertQuery);
        UpdateProcessor updateProcessor =
UpdateExecutionFactory.createRemote(updateRequest, service);
        updateProcessor.execute();

        String query = "PREFIX geo: <http://www.opengis.net/ont/geosparql#>\n" +
                "\n" +
                "SELECT *\n" +
                "WHERE{\n" +
                "    ?subj ?pred ?obj\n" +
                "}";

        QueryExecution qe = QueryExecutionFactory.sparqlService(service, query);
        ResultSet rs = qe.execSelect();
        ResultSetFormatter.outputAsTSV(rs);

    }
}

What am I doing wrong? Is there a better way to insert triples into Jena
Fuseki Geosparql?

Thanks for you help!

Johan,

Reply via email to