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?
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