- From: David Booth <david@dbooth.org>
- Date: Thu, 28 Jul 2016 14:00:11 -0400
- To: public-linked-json@w3.org
I hope others who are more familiar with JSON-LD framing will answer your question, but . . . On 07/28/2016 01:39 PM, Aymeric Brisse wrote: > Hello, > > I am currently working on a API that would return some JSON-LD and face > some problematic. I would like to know, when transforming a graph to > JSON-LD, how to be able to avoid the @graph object generation and having > a nested hash instead (I assume that I have a root element). > > The idea is to have a structure more /traditional/ for the developers > that want to parse it as a simple JSON object. > > Let's say I have to following graph (rdf/xml for readability): Funny. I think rdf/xml is the *least* readable of RDF serializations! > > <?xml version='1.0' encoding='utf-8' ?> > <rdf:RDF xmlns:ns0='http://www.myresource.com/ontology/1.0#' > xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' > xmlns:rdfs='http://www.w3.org/2000/01/rdf-schema#'> > <rdf:Description rdf:about='http://www.myresource/uuid'> > <ns0:talksAbout> > <rdf:Description rdf:about='http://rdf.freebase.com/ns/m.018w8'> > <rdfs:label xml:lang='en'>Basketball</rdfs:label> > </rdf:Description> > </ns0:talksAbout> > </rdf:Description> > </rdf:RDF> Here is the same thing in turtle, for the benefit of other readers: @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix ns0: <http://www.myresource.com/ontology/1.0#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . <http://rdf.freebase.com/ns/m.018w8> rdfs:label "Basketball"@en . <http://www.myresource/uuid> ns0:talksAbout <http://rdf.freebase.com/ns/m.018w8> . Thanks, David Booth > > Basically when I use a standard serializer like the jsonld gem in Ruby > to serialize it in JSON-LD I obtain (reproducible on > http://rdf.greggkellogg.net/distiller) > > { > "@context": { > "rdfs": "http://www.w3.org/2000/01/rdf-schema#" > }, > "@graph": [ > { > "@id": "http://rdf.freebase.com/ns/m.018w8", > "rdfs:label": [ > { > "@value": "Basketball", > "@language": "en" > } > ] > }, > { > "@id": "http://www.myresource/uuid", > "http://www.myresource.com/ontology/1.0#talksAbout": [ > { > "@id": "http://rdf.freebase.com/ns/m.018w8" > } > ] > } > ] > } > > But I would like to obtain: > > { > "@context": { > "rdfs": "http://www.w3.org/2000/01/rdf-schema#" > }, > "@id": "http://www.myresource/uuid", > "http://www.myresource.com/ontology/1.0#talksAbout": [ > { > "@id": "http://rdf.freebase.com/ns/m.018w8", > "rdfs:label": [ > { > "@value": "Basketball", > "@language": "en" > } > ] > } > ] > } > > Is there any option or way to do it? > > Thanks!
Received on Thursday, 28 July 2016 18:00:40 UTC