- From: Olivier Rossel <olivier.rossel@gmail.com>
- Date: Mon, 13 Apr 2020 21:52:11 +0200
- To: Robert Sanderson <azaroth42@gmail.com>
- Cc: David Booth <david@dbooth.org>, Linked JSON <public-linked-json@w3.org>, Melvin Carvalho <melvincarvalho@gmail.com>
- Message-ID: <CAM0wMfS2wEJooLwiHA+D8ippaUmDyV=Lk3GeOQKj4MDMe3OLBw@mail.gmail.com>
You can pipe your JSON through jq to add the context. Le lun. 13 avr. 2020 à 21:02, Robert Sanderson <azaroth42@gmail.com> a écrit : > > I don't understand the rationale behind this, I'm afraid. Making JSON into > JSON-LD is just a matter of associating a context with the JSON, either in > the data with the @context key, or at the protocol level with a link > header. So a unix utility to make JSON into JSON-LD is ... cp :) > > Is what's needed some code that traverses a JSON document (or set of > documents) and determines all of the possible paths, to then build a > skeleton context document, such that it's a matter of associating the right > predicate with the particular key or path? E.g. a helper tool for context > creators? > > Rob > > On Sun, Apr 12, 2020 at 7:06 AM Melvin Carvalho <melvincarvalho@gmail.com> > wrote: > >> >> >> On Sun, 12 Apr 2020 at 15:34, David Booth <david@dbooth.org> wrote: >> >>> On 4/12/20 6:13 AM, Melvin Carvalho wrote: >>> > On Sat, 11 Apr 2020 at 21:23, David Booth wrote: >>> > On 4/11/20 11:54 AM, Melvin Carvalho wrote: >>> > > Is there are library that converts simple json (think just a >>> flat >>> > > object of key value pairs) Into JSON-LD >>> > [ . . . ] >>> > I have not seen one yet, but it's good idea. In particular, the >>> > algorithm needs to recursively traverse the JSON tree and keep >>> track of >>> > nesting to generate an @context that will keep nested properties >>> of the >>> > same name distinct. See the discussion here: >>> > https://github.com/w3c/EasierRDF/issues/29 >>> > >>> > [ . . . ] >>> > Does the algorithm specifically need to traverse the tree to >>> distinguish >>> > foo from baz/foo >>> > >>> > I can see why you may want to in JSONPath for example, but given that >>> > JSON predicates are "just names", would you specifically need that >>> > prefix in a name, or is it a nice to have? >>> >>> It depends on the application. Some will need to distinguish foo from >>> baz/foo and some will not. >>> >>> As one real-life example, in the case of FHIR RDF the distinction was >>> important, which is why we were not able to use JSON-LD 1.0 in the >>> original design of FHIR RDF (because 1.0 lacked the necessary nested >>> context feature) but we are now able to take advantage of JSON-LD 1.1 >>> (which added that feature). >>> >>> The reason I think the distinction between foo and baz/foo is important >>> to retain in a general purpose algorithm is merely because it is much >>> easier to forget the distinction between foo and baz/foo later -- or >>> treat baz/foo as a subproperty of foo -- than it is to re-create that >>> distinction if it is lost by the algorithm. If a general purpose >>> algorithm provides an option for ignoring the distinction, then that's >>> great, but I think the default should be to retain the distinction. >>> Make sense? >>> >> >> Thanks for the explanation. It makes a bit of sense. I think seeing an >> example from FHIR of why it's useful may be an eye opener. >> >> So the mind set I am in right now think of JSON as key value pairs. When >> I consider the key, my thought is "it's just a name", or "it's just a >> string of characters". This is in line with my understanding of JSON. ie >> it has the key itself has no special meaning whether or not it's nested. >> >> There's probably a few things I havent considered. But that's my thought >> process in at moment. Id be happy to try and expand that thought process, >> tho! >> >> >>> David Booth >>> >>> > > -- > Rob Sanderson > Semantic Architect > The Getty Trust > Los Angeles, CA 90049 >
Received on Monday, 13 April 2020 19:52:37 UTC