Reputation: 2601
I got Jena 2.12.1 (2014-10-02) from the Apache Jena Releases page.
It's supposed to have JSON-LD support, according to Reading and Writing RDF in Apache Jena.
But when I try to use riot
with an output format of JSON-LD, I get an error (and the same happens for variants in capitalization, hyphenation, etc.):
riot --out=JSON-LD NIF-example2.ttl
Turtle
N-Quads
N-Triples
TriG
RDF_THRIFT
Not recognized as an streaming RDF language : 'JSON-LD'
How can I write in JSON-LD?
Upvotes: 7
Views: 1907
Reputation: 2601
More recent RIOT versions (since late 2015) support JSONLD. However, I don't see a way to give it a context
I tried providing a context inside the jsonld file like this (see https://gist.github.com/VladimirAlexiev/6ab60b6a0e1ab32a2f3980c57b005d8f):
{"@context":"gvp-context.jsonld", "@graph":[...]}
But it's ignored and it makes its own context.
Upvotes: 0
Reputation: 16630
It has correctly identified JSON-LD. JSON-LD is not a streaming output language (the writer needs all the data available before calling the jsonld-java code) and riot
is a streaming parser (it can cope with files of any size) and needs to write in a streaming fashion.
The tool to read in the data into memory and write it out is rdfcat
.
rdfcat -out JSONLD NIF-example2.ttl
Upvotes: 8