- From: Jindřich Mynarz <mynarzjindrich@gmail.com>
- Date: Fri, 18 Dec 2015 10:13:28 +0100
- To: public-linked-json@w3.org
- Message-ID: <CAE=8Bu8-eBVP-SA9RRzfXeCoQQb5iCxtpxSGJxXRimDJm4tEcw@mail.gmail.com>
Hi all, Markus, thank you for the solution, and Dietrich, thank you for implying an explanation. However, I wonder if it's not possible to coerce objects as IRIs ( http://www.w3.org/TR/json-ld/#h3_type-coercion) *and* compact the property IRI in a single operation of the JSON-LD API. Currently, I understand I need to do the following to coerce objects as IRIs and compact the property IRI. Starting with this JSON-LD: { "@id": "http://mynarz.net/#jindrich", "http://xmlns.com/foaf/0.1/knows": [ "http://ruben.verborgh.org/#me", "http://richard.cyganiak.de/foaf.rdf#cygri" ] } I need to jam this @context in: { "@context": { "http://xmlns.com/foaf/0.1/knows": { "@type": "@id" } } } Then I can expand (http://www.w3.org/TR/json-ld-api/#expansion) the JSON-LD and compact (http://www.w3.org/TR/json-ld-api/#compaction) the result of expansion with the following @context if compact IRIs are desired: { "@context": { "foaf": "http://xmlns.com/foaf/0.1/" } } Is that a correct approach? - Jindřich -- Jindřich Mynarz http://mynarz.net/#jindrich On Fri, Dec 18, 2015 at 9:24 AM, Adrian Pohl <pohl@hbz-nrw.de> wrote: > Sorry for prematurely sending the former mail. Thinking about what I > wanted to say, my intended response isn't that relevant to this thread. As > I am already writing this, I will just mention it anyway. > > I just recently stumbled over the ability to define both @type and > @container in the context, e.g. > > { > "@context": { > "foaf": "http://xmlns.com/foaf/0.1/", > "foaf:knows": { > "@type": "@id", > "@container": "@set" > } > }, > "@id": "http://mynarz.net/#jindrich", > "http://xmlns.com/foaf/0.1/knows": [ > "http://ruben.verborgh.org/#me", > "http://richard.cyganiak.de/foaf.rdf#cygri" > ] > } > > Actually, this doesn't make a big difference in this case. It would make > sense, though, if you had some foaf:knows triples with only one object and > also wanted these to be delivered as an array for the sake of homogeneity... > > All the best > Adrian > > > > Am 18.12.2015 um 09:13 schrieb Adrian Pohl: > >> Hello Jindřich, >> >> with this context: >> >> Am 17.12.2015 um 23:53 schrieb Markus Lanthaler: >> >>> Hi Jindřich, >>> >>> >>> On Thursday, December 17, 2015 11:04 AM, Jindřich Mynarz wrote: >>> >>>> I found that some services return JSON-LD, in which IRIs are serialized >>>> as literals. For example, consider the following example: >>>> >>>> { >>>> "@id": "http://mynarz.net/#jindrich", >>>> "http://xmlns.com/foaf/0.1/knows": [ >>>> "http://ruben.verborgh.org/#me", >>>> "http://richard.cyganiak.de/foaf.rdf#cygri" >>>> ] >>>> } >>>> >>>> The objects of foaf:knows are serialized as literals, even though they >>>> are IRIs. >>>> >>>> Now, if I want to recover the objects of foaf:knows as IRIs, the >>>> following context is of no use: >>>> >>>> { >>>> "@context": { >>>> "foaf": "http://xmlns.com/foaf/0.1/", >>>> "foaf:knows": {"@type": "@id"} >>>> } >>>> } >>>> >>> >>> What about this context: >>> >>> "@context": { >>> "http://xmlns.com/foaf/0.1/knows": { "@type": "@id" } >>> } >>> >>> Result: http://tinyurl.com/hadcx4d >>> >>> >>> HTH, >>> Markus >>> >>> >>> -- >>> Markus Lanthaler >>> @markuslanthaler >>> >>> >>> >> >
Received on Friday, 18 December 2015 09:14:19 UTC