- From: Alexandre Passant <alex@seevl.net>
- Date: Mon, 12 Dec 2011 17:11:10 +0000
- To: Markus Lanthaler <markus.lanthaler@gmx.net>
- Cc: Linked JSON <public-linked-json@w3.org>
Hi all, On Sun, Dec 11, 2011 at 7:32 AM, Markus Lanthaler <markus.lanthaler@gmx.net> wrote: > To get a feeling for the issues regarding the different keywords (@subject, > @iri, @vocab, @base, @type, @datatype, ..) I went through the specification > again. Currently we use the following ten keywords: [snip] > @base and @vocab are used to set the base IRI for objects/properties. The > use cases are not so clear and they don't enable any new functionality. So > there's a discussion to remove them (ISSUE-26). I found that one particularly useful. I'd like to hide URIs in JSON and base is helpful for this. e.g { "@base": "http://example.org" "friend": { "id": "foobar#id", } } Instead of { "friend": { "uri": "http://example.org/foobar#id" } } So +1 from my side to keep it or something similar. I'd also favor a "@suffix" element, so that I could use { "@base": "http://example.org" "@suffix": "#id" "friend": { "id": "foobar", } } or - compact form proposal { "@base": "http://example.org{@iri}#id" "friend": { "id": "foobar", } } Alex. > > So, if we would like to simplify JSON-LD as much as possible and eliminate > as much keywords as possible without losing functionality we could end up > with the following minimum set of keywords: > > - @context > - @iri > - @literal > - @language > - @datatype > - @list > > Which would leave us with a mere of six keywords instead of ten. I really > think we should try as hard as possible to create the simplest possible > solution. We should begin with the Lite version and not follow the bad > example of other approaches starting with an overly complex solution and > creating a Lite version afterwards. > > In that version @list and @iri are still used in two different ways. If we > see them purely as data types we could eliminate the use of the shortcuts > "@iri": "..." and "@list": [ ... ] and require the use of "@datatype": > "@iri"/"@list" plus "@literal": "..."/[...] as alternative but this would > imply a need @subject again. I don't know if that's the right thing to do > but it certainly would simplify the spec. > > Another thing that I noticed while going through the spec is that using the > words subject, property (note we aren't using predicate) and object might > confuse some people. The subject has to be a JSON object, the (LD graph) > object doesn't. We could mitigate this by talking about nodes which have > properties whose values might be other nodes or a literal value. I've added > ISSUE-47 to not forget this. > > > > -- > Markus Lanthaler > @markuslanthaler > > > > -- Dr. Alexandre Passant - @terraces Founder, CEO - http://seevl.net - @seevl http://facebook.com/seevl.net - http://angel.co/seevl
Received on Monday, 12 December 2011 17:11:46 UTC