W3C home > Mailing lists > Public > public-linked-json@w3.org > January 2012

Re: json-ld.org playground updated

From: Gregg Kellogg <gregg@kellogg-assoc.com>
Date: Sat, 21 Jan 2012 03:27:11 -0500
To: Dave Longley <dlongley@digitalbazaar.com>
CC: "public-linked-json@w3.org" <public-linked-json@w3.org>
Message-ID: <AB1C4954-960B-465F-BD1D-899C908E9C58@kellogg-assoc.com>
Well, if a compact call is made with a context having an @language, a plain literal will still need to be generated using @literal, IMO.

Gregg

On Jan 21, 2012, at 7:01 AM, Dave Longley wrote:

> Ok, well it sounds like we should make this valid syntax, but if an API 
> call is made on a document (eg: compact or expand), then a plain literal 
> is always converted to a string. Does everything think this is the best 
> solution?
> 
> On 01/20/2012 06:32 AM, Gregg Kellogg wrote:
>> Sorry, not fully engaged here, and my mind is definitely mid-pacific. If {"@literal": "foo"} is banned, then how does one express a plain literal when the context has a default @language? Is it not possible to express a plain literal when the context has @language? I always presumed that this is how it would be done.
>> 
>> Gregg
>> 
>> On Jan 19, 2012, at 5:16 AM, Manu Sporny wrote:
>> 
>>> On 01/18/12 15:05, Manu Sporny wrote:
>>>> On 01/18/12 12:10, Alexandre Passant wrote:
>>>>> It seems that @value is not rendered properly, e.g.
>>>> Fixed:
>>>> 
>>>> https://github.com/json-ld/json-ld.org/commit/8b930458dac3e69ddef5bba6b716a6cd76dcaa9e
>>> After some discussion with Dave Longley, both of us feel that we should
>>> kill this feature. It overly complicates the number of ways that you can
>>> express a plain literal.
>>> 
>>> There is an argument that this should be valid: { "@value": "foo" }
>>> 
>>> However, it does two things:
>>> 
>>> 1. It complicates what developers have to deal with, now you can't just
>>> check to see if the value is a string for a plain literal... you have to
>>> check if it is a string, and if it isn't, you have to check to see if it
>>> is an object containing an "@value" key and only that key.
>>> 
>>> 2. It complicates the expansion algorithm, instead of { "name": "foo" },
>>> expanded form ends up being {"name": { "@value": "foo"}}
>>> 
>>> 3. The two items above thus complicate implementations.
>>> 
>>> While it's perfectly logical to interpret { "@value": "foo" } as a plain
>>> literal, I don't think we should because it doesn't buy us anything
>>> other than more complexity. We should keep it simple... plain literals
>>> are expressed as strings in JSON-LD - always.
>>> 
>>> -- manu
>>> 
>>> -- 
>>> Manu Sporny (skype: msporny, twitter: manusporny)
>>> President/CEO - Digital Bazaar, Inc.
>>> blog: Web Payments - PaySwarm vs. OpenTransact Shootout
>>> http://manu.sporny.org/2011/web-payments-comparison/
>>> 
>> 
> 
> 
> -- 
> Dave Longley
> CTO
> Digital Bazaar, Inc.
> 
> 
Received on Saturday, 21 January 2012 08:28:21 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:25:36 GMT