W3C home > Mailing lists > Public > public-rdf-comments@w3.org > April 2013

Re: JSON-LD should be an RDF syntax

From: David Booth <david@dbooth.org>
Date: Mon, 29 Apr 2013 13:51:31 -0400
Message-ID: <517EB323.6030505@dbooth.org>
To: Kingsley Idehen <kidehen@openlinksw.com>
CC: public-rdf-comments@w3.org
On 04/29/2013 09:45 AM, Kingsley Idehen wrote:
> On 4/29/13 9:06 AM, David Booth wrote:
>> On 04/29/2013 07:09 AM, Kingsley Idehen wrote:
>>> On 4/28/13 10:30 PM, David Booth wrote:
>>>> On 04/27/2013 05:49 PM, Bo Ferri wrote:
>>>>> Hi all,
>>>>> On 4/24/2013 8:33 PM, David Wood wrote:
>>>>>> Hi David,
>>>>>> Just so you hear another viewpoint on this topic, I consider any
>>>>>> reference to Linked Data to be an (indirect) reference to RDF. Linked
>>>>>> Data explicitly uses the RDF data model.
>>>>> I object to this a bit and I think other people out there as well
>>>>> ... ;)
>>>>> see also "A generalisation of the Linked Data publishing guideline"
>>>>> [1].
>>>>> so the Linked Data definition in the JSON-LD spec is just fine.
>>>> AFAICT you are proposing that the term "Linked Data" be co-opted and
>>>> redefined for a different purpose than it was originally intended, as
>>>> it very clearly was -- and has been for several years -- inextricably
>>>> linked to RDF (the Semantic Web).  I would vehemently disagree with
>>>> any proposal to change its meaning in such a fundamental way, as doing
>>>> so would be quite harmful to the Semantic Web community.
>>>> If you wish to refer to a different, non-RDF, non-Semantic-Web notion
>>>> of data interconnection, please coin a new term rather than name
>>>> squatting on an established term that is so important to the Semantic
>>>> Web community.
>>>> David Booth
>>> David,
>>> This matter was thrashed out in detail re., JSON-LD a long time ago.
>>> There are massive threads associated this with matter.
>> Apparently it was not entirely resolved.
> It was resolved, hence the definition in place today.

It clearly has *not* been resolved, as: (a) we are still discussing it; 
(b) there obviously is major contention; and (c) the definition in the 
current draft substantially conflicts with the original sense of the 
term and with established usage.

>>> RDF and Linked Data are not the same thing.
>> Of course not.  Linked Data (in its original sense) *builds* on RDF
>> and other standards, most notably HTTP.
> Sorta.
> Linked Data is something you can produce using RDF and associated
> standards.
>>> Linked Data is something that you can
>>> produce (5-star quality) using RDF.
>> Yes.
> Good, we are agreeing so far.
>>> TimBL's meme is all about a
>>> principled approach to producing Web-scale Linked Data that leverages
>>> standards such as RDF and SPARQL.
>> Exactly.
>>> That doesn't imply that the meme owns the phrase "Linked Data.
>> The term was coined specifically for that purpose.  AFAIK there is no
>> legal ownership of the term, so we're talking moral ownership here --
>> not legal.  The point is that attempting to redefine this term is
>> harmful to the Semantic Web community, because it creates confusion
>> about what "Linked Data" means.  And that is harmful to W3C's mission.
> TimBL cleverly generated a meme using a quite generic phrase. The
> original meme (the one that had no RDF or SPARQL references) was totally
> GOLDEN re., blending Open Data and Web Architecture.
> The meme got itself into trouble the moment RDF and SPARQL where added
> to its most recent revision, for the totally wrong reasons. This
> revision lay the foundation for RDF and Linked Data conflation. It took
> a GOLDEN meme and turned it into a vector for the same old political
> distractions that come with RDF (which is generally misunderstood).
>>> Over extending what RDF is remains its ultimate problem. RDF doesn't
>>> have to cloud the definition of everything in order for it to be
>>> useful :-)
>> That's directly backwards.  What's clouding the definition is *not*
>> RDF, but the attempt to redefine the term "Linked Data" to mean
>> something different than what it was specifically coined to mean:
>> http://www.w3.org/standards/semanticweb/data
>> http://www.w3.org/DesignIssues/LinkedData.html
> RDF does not imply Linked Data,

Of course not.  The implication is the other way around: Linked Data (in 
the original, established sense of the term) implies RDF.

> most RDF resource out in the wild
> (modulo LOD cloud datasets) don't even conform to Linked Data principles
> in the slightest.


> Re-read this thread and I think you will see that you
> got "backwards" completely backwards.

I am amazed that you think so.  If you can show me evidence, then 
perhaps I can figure out why we seem to be miscommunicating so badly. 
At present I am mystified.

> RDF is a poor understood composite of:
> 1. Data Model
> 2. Data Model Syntax
> 3. Data Model Syntax Notations
> 4. Data Serialization Formats -- the product of processors transforming
> Syntax Notation into raw data for storage or across-the-write transfer.

Please do not conflate RDF with its syntax or serializations.  Many who 
are new to RDF make this mistake.  It is harmful to perpetuate this 

RDF may be poorly understood to many developers, but that is irrelevant, 
as many technologies are poorly understood to many developers.  But RDF 
is *not* poorly understood from a technical perspective: it is a W3C 
standard and is very clearly defined.

> Nothing in the RDF specs mandates that URIs or IRIs must resolve.


> Basically, the HTTP URI duality reality [1] isn't a part of the RDF
> spec.


> Thus, you cannot constructively conflate Linked Data and RDF.

I didn't conflate them.  Linked Data (in the original and established 
sense of the term) *builds* on RDF.  Not the other way around.  And the 
two are not synonymous.

> What you can do though, is talk about RDF based Linked Data.

Yes, and in the original and established sense of the term "Linked 
Data", *all* Linked Data is RDF based.

> To conclude:
> JSON-LD is a good effort at outlining how to produce RDF based Linked
> Data that's expressible and serializable using JSON.

I agree that's what JSON-LD *should* be.  But the problem is that that 
is *not* what the current draft of the JSON-LD spec reflects.  In the 
current draft, JSON-LD has no normative basis in the RDF model or the 
RDF semantics **at all**.  Sure JSON-LD *can* be mapped to RDF, but 
that's not saying much, because *any* language can be mapped to RDF. 
The current draft reads as a completely parallel attempt at defining an 
independent language for achieving similar goals as Linked Data (in the 
original, established sense of the term), while redefining the term 
"Linked Data" to include this parallel language.

If the definition of "Linked Data" were broadened beyond using RDF as 
the information model, where would the line be drawn?   Would Excel 
spreadsheets be considered "Linked Data" if they contained HTTP URIs 
that resolved to other spreadsheets?  Would relational database tables? 
  Would HTML documents?

To step up a level: what is your goal in attempting to disassociate RDF 
from Linked Data?   What are you trying to achieve by redefining the 
term?  Are you trying to invent a different Semantic Web that is 
JSON-based instead of being RDF-based?


> Links:
> 1. http://bit.ly/YxW21k -- HTTP URI Duality that lies at the core of
> Linked Data as espoused by TimBL's original meme.
> Kingsley
>> David
>>> Links:
>>> 1. http://bit.ly/15TUunq -- 5-Star Linked Data.
>>> Kingsley
>>>>> Cheers,
>>>>> Bo
>>>>> [1]
>>>>> http://smiy.org/2011/02/17/a-generalisation-of-the-linked-data-publishing-guideline/
>>>>>> (chair hat "off")
>>>>>> Regards,
>>>>>> Dave
>>>>>> --
>>>>>> http://about.me/david_wood
>>>>>> On Apr 24, 2013, at 10:52, David Booth <david@dbooth.org> wrote:
>>>>>>> Hi Manu,
>>>>>>> Thanks for your remarks.  I don't agree with all of them, and just
>>>>>>> for completeness I'll note in-line below which ones and why, but
>>>>>>> rather than focus on those details I think it would be better to
>>>>>>> discuss this at a higher level, because you brought up a very
>>>>>>> interest point about potentially skolemizing blank nodes, and I
>>>>>>> think
>>>>>>> that raises the possibility of a different path for addressing the
>>>>>>> issue that JSON-LD should be an RDF syntax.
>>>>>>> To my mind, the central problem that needs to be addressed is that,
>>>>>>> at present, the draft of JSON-LD
>>>>>>> http://dvcs.w3.org/hg/json-ld/raw-file/default/spec/latest/json-ld/index.html
>>>>>>> reads as an attempt to divorce Linked Data (and JSON-LD) from RDF.
>>>>>>> This is evidenced in several places throughout the document.  For
>>>>>>> example, the definition of Linked Data in the introduction fails to
>>>>>>> mention RDF at all:
>>>>>>> [[
>>>>>>> Linked Data is a technique for creating a network of inter-connected
>>>>>>> data across different documents and Web sites. In general, Linked
>>>>>>> Data has four properties: 1) it uses IRIs to name things; 2) it uses
>>>>>>> HTTP IRIs for those names; 3) the name IRIs, when dereferenced,
>>>>>>> provide more information about the thing; and 4) the data expresses
>>>>>>> links to data on other Web sites.
>>>>>>> ]]
>>>>>>> I suggest fixing that omission by inserting the words "based on RDF"
>>>>>>> into the first sentence, to read: "Linked Data is a technique, based
>>>>>>> on RDF, for creating a network of inter-connected data across
>>>>>>> different documents and Web sites."
>>>>>>> The same sentiment of divorcing JSON-LD from RDF is evidenced in
>>>>>>> other places in the document as well, such as in phrases like
>>>>>>> "converted to RDF", and in the definition of a JSON-LD data model
>>>>>>> that is completely separate from the standard RDF data model,
>>>>>>> complete with parallel terms such a "blank node" and "blank node
>>>>>>> identifier".  Left as is, the world would have parallel and
>>>>>>> competing
>>>>>>> standards for Linked Data: those based on JSON-LD and its data
>>>>>>> model,
>>>>>>> blank nodes, etc., and those based on RDF and its data model, blank
>>>>>>> nodes, etc., because JSON-LD is *not* RDF.
>>>>>>> One might claim that JSON-LD *can* be used as a serialization of
>>>>>>> RDF,
>>>>>>> and therefore JSON-LD *is* already based on RDF.  But that argument
>>>>>>> does not hold water, because that same claim can be made of *any*
>>>>>>> language!  *Any* language can be viewed as a serialization of RDF,
>>>>>>> given an appropriate mapping.  Indeed, the whole purpose of GRDDL
>>>>>>> was
>>>>>>> to enable such mappings to be easily defined from XML and HTML. Many
>>>>>>> people have defined mappings from CSV to RDF, and from many other
>>>>>>> things to RDF.  We do not need a JSON syntax that *can* be mapped to
>>>>>>> RDF.  We need a JSON syntax that *is* a standard serialization of
>>>>>>> RDF, based on the RDF data model and RDF semantics -- not a parallel
>>>>>>> (but subtly different) data model, terminology and semantics.
>>>>>>> JSON-LD at present defines a parallel universe that looks
>>>>>>> confusingly
>>>>>>> similar to RDF -- even co-opting terms such as "blank node".
>>>>>>> I am sympathetic to -- and fully support -- the goal of making
>>>>>>> JSON-LD easy for people to use, **without knowing anything more
>>>>>>> about
>>>>>>> RDF than what they learn about JSON-LD,**.  But I also think it is
>>>>>>> critical that JSON-LD still be normatively based on RDF and grounded
>>>>>>> in the RDF data model and semantics.  And I think it is also pretty
>>>>>>> clear in the charter
>>>>>>> http://www.w3.org/2012/ldp/charter
>>>>>>> that the work of the group was intended to be **based on RDF** --
>>>>>>> not
>>>>>>> "inspired by RDF" or "similar to RDF" or "addressing the same goals
>>>>>>> as RDF".   In other words, the LD working group should define a
>>>>>>> JSON-based "RDF serialization syntax", as the charter calls it.
>>>>>>> Can the group achieve both of these aims?  I think so. And I think
>>>>>>> one way to achieve it would be to define a normative mapping between
>>>>>>> the JSON syntax and the RDF abstract syntax, by using skolemization
>>>>>>> in places where prohibited blank nodes would otherwise appear, such
>>>>>>> as in the predicate position of an RDF triple.
>>>>>>> Specific suggestions:
>>>>>>> 1. Insert "based on RDF" to the definition of Linked Data, as
>>>>>>> explained above.
>>>>>>> 2. Define a *normative* bi-directional mapping of a JSON profile to
>>>>>>> and from the RDF abstract syntax, so that the JSON profile *is* a
>>>>>>> serialization of RDF, and is fully grounded in the RDF data model
>>>>>>> and
>>>>>>> semantics.
>>>>>>> 3. Use skolemized URIs in the normative mapping to prevent mapping
>>>>>>> JSON syntax to illegal RDF.
>>>>>>> 4. Make editorial changes to avoid implying that JSON-LD is not RDF.
>>>>>>> For example, change "Convert to RDF" to "Convert to Turtle" or
>>>>>>> perhaps "Convert to RDF Abstract Syntax".
>>>>>>> 5. Define normative names for, and clearly differentiate between,
>>>>>>> the
>>>>>>> JSON serialization of RDF and JSON-LD, such that JSON-LD *is* a JSON
>>>>>>> serialization of RDF, with additional constraints for Linked Data
>>>>>>> (such as URIs use "http:" prefix, etc.).  They do not necessarily
>>>>>>> have to be defined in two separate documents.  They could be defined
>>>>>>> in a single document called "JSON-RDF and JSON-LD", for example.
>>>>>>> People that use the JSON RDF serialization for purposes other than
>>>>>>> Linked Data need to be able to easily and clearly talk about that
>>>>>>> serialization *without* wrongly implying adherence to the additional
>>>>>>> Linked Data requirements imposed by JSON-LD, and *without* having to
>>>>>>> explain that those requirements can be ignored in this case.
>>>>>>> If there is one thing we all should have learned from the Semantic
>>>>>>> Web, it is the value of assigning an unambiguous name to every
>>>>>>> important concept.  A JSON serialization of RDF is a *very*
>>>>>>> important
>>>>>>> concept and deserves its own unambiguous name, distinct from
>>>>>>> JSON-LD.
>>>>>>> BTW, regarding the name "JSON-RDF", when I first read your
>>>>>>> response at
>>>>>>> http://lists.w3.org/Archives/Public/public-rdf-comments/2013Mar/0036.html
>>>>>>> saying "We couldn't use JSON-RDF because a variation on the name was
>>>>>>> already taken", I assumed you meant that RDF/JSON was a defunct
>>>>>>> proposal, and I was going to suggest that if it is defunct, then
>>>>>>> there would be little harm in noting it as defunct, and using the
>>>>>>> term "JSON-RDF".  But when I view the RDF/JSON document now at
>>>>>>> https://dvcs.w3.org/hg/rdf/raw-file/default/rdf-json/index.html#
>>>>>>> I see it is dated "24 April 2013" and it says that is is a
>>>>>>> product of
>>>>>>> the RDF working group.  So what's going on?  Why is the W3C
>>>>>>> standardizing *two* potential JSON serializations of RDF? How are
>>>>>>> they related or different?  If this is a W3C activity then these
>>>>>>> activities should be coordinated, *one* should be picked -- that's
>>>>>>> what standards are for -- and the name JSON-RDF can be used for that
>>>>>>> one.
>>>>>>> 6. Some small editorial fixes:
>>>>>>> "Since JSON-LD is 100% compatible with JSON" would be better phrased
>>>>>>> as "Since JSON-LD is a restricted form of JSON", because saying that
>>>>>>> JSON-LD is compatible with JSON wrongly suggests that JSON-LD is
>>>>>>> *not* JSON, when in fact it is.
>>>>>>> s/secrete agents/secret agents/
>>>>>>> Thanks,
>>>>>>> David Booth
Received on Monday, 29 April 2013 17:52:01 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:59:32 UTC