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
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.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.