On 19/01/13 01:59, Thomsen, Mark wrote:
We have an application server on each of several computer systems,
and wish to have a TDB/Fuseki server on another computer system, all
on a common LAN. Some of the application servers will execute
transactions that involve loading new named graphs (RDF/XML files
local to the application servers) onto the TDB. TDB files are local
to the TDB/Fuseki server's computer system (and remote from the
application servers). The application is written in Java.
If all of the moving parts are on a single, common computer system
there are multiple options found in the documentation, from the
tdbloader scripts to (Java program executes it as a command) to
something like Model.read( ... ).
In our case the moving parts are distributed. Model.read( ... ) is
preferable, but it does not appear to work remotely.
What are the options for loading the RDF/XML file's data onto a
remote TDB?
Can someone point to an example or tutorial for this case. I've
looked and have not found an online resource.
(The users list is users AT jena.apache.org )
This is what the SPARQL Graph Store HTTP Protocol is for. You can add
graphs into a Fuseki/TDB server.
http://www.w3.org/TR/sparql11-http-rdf-update/
PUT http://server/dataset?graph=http://example/MyName
Content-type: application/rdf+xml
...
There is a class to help DatasetAccessor (which is in the wrong package
- org.apache.jena.fuseki.http for historical reasons) but the app would
need to read in the data.
By using directly, you can setup the HTTP operation and just read/write
the file to the HTTP connection.
You can also use SPARQL Update but that requires translating the input
data into a INSERT DATA statement.
There is "LOAD" but it read URLs, not (remote) files.
Andy