Re: RDFON: a new RDF serialization

Garret Wilson wrote:

> I'm very happy for the encouragement from Sandro and Benjamin to push 
> for an RDF 2.0. ;) I have several problems with RDF itself, but many 
> more problems stem from one particular serialization: RDF/XML.
> 
> Let's face it---RDF is getting nowhere near the acceptance it should. 
> Why? RDF/XML has much to blame. It's hard to understand and 
> verbose---not to mention being unable to represent common RDF data 
> easily. I almost got RDF into the Open eBook Publication Structure back 
> in 2001 by simplifying the RDF/XML (see http://www.xpackage.org/story/ 
> ), but that fell through---RDF still seemed too difficult to understand, 
> and RDF/XML just looks like a mess to the uninitiated. XML was a cool 
> thing a decade ago (especially compared to SGML), and it still is fine 
> for holding unstructured data such as marked-up text (e.g. HTML and 
> Docbook), but it's beginning to get ragged along the edges when holding 
> loosely structured data such as RDF.

I'm not so sure I agree with the syntax-is-the-problem tradition. Surely 
syntax is one issue, but I tend to think it was just as much lack of a) 
well-developed tool infrastructure (since you should be working with 
models, not syntax), and b) a standard query language.

Both of those are being resolved.

> One very active member in the Ajax community has indicated to me 
> personally his disgust for RDF, but when it came down to it, the real 
> problem for him was RDF/XML. 

In my experience, people who complain about the RDF/XML syntax complain 
about XML too. And they often set up XML as a kind of straw man, as if 
JSON, etc. don't have their own (in some cases serious) limitations.

As an alternative data point, the OpenDocument TC just approved a new 
metadata system based on RDF. There was some resistance to this at 
first, but it was actually the engineers who saw the value. "Ah", they 
realized, "we don't have to deal with the DOM anymore; we can think of a 
simple data model." To them, syntax is just syntax.

...

> Let's look at the same thing in RDFON:
> 
> (
>    rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#>,
>    xsd:<http://www.w3.org/2001/XMLSchema-datatypes>,
>    vcard:<http://www.w3.org/2006/vcard/ns#>,
>    foaf:<http://xmlns.com/foaf/0.1/>,
>    eg:<http://www.example.com/>
> )
> foaf.Person(<urn:uuid:ca00db92-0f7f-434b-b254-8a6afcf57907>)
> {
>    vcard.name:vcard.Name()
>        {
>            vcard.givenName:"Mary Jane",
>            vcard.familyName:["Smith", "Van Buren"]
>        },
>    vcard.bday:@1980-01-01,
>    eg.married:true,
>    eg.childCount:123,
>    eg.custom:eg.datatype("value")
> }
> 
> Isn't that beautiful?

Um ... sure, but what's wrong with N3 or turtle that requires yet 
another slightly different syntax?

Your example here is no more simple or elegant, and arguably suffers 
from conforming to JSON:

<urn:uuid:ca00db92-0f7f-434b-b254-8a6afcf57907> a foaf:Person ;
     vcard:name [
         a vcard:Name ;
         vcard:givenName "Mary Jane" ;
         vcard.familyName ("Smith" "Van Buren")
      ] ;
     vcard:bday "1980-01-01"^^xsd:date ;
     eg.married "true"^^xsd:boolean ;
     eg.childCount "123" .

Isn't there a JS-based RDF parser that can handle N3?

> Just so you know, I used a few RDFON shortcuts for xsd:date, 
> xsd:boolean, and xsd:integer. Those could have been the equivalent full 
> form:
> 
>    vcard.bday:xsd.date("1980-01-01"),
>    eg.married:xsd.boolean("true"),
>    eg.childCount:xsd:integer("123"),
> 
> 
> In my opinion, RDFON is a huge achievement. This could bring great 
> simplicity to RDF serialization and aid understanding by the masses. And 
> the Ajax community should jump on board, as it solves a few JSON 
> problems (see http://www.nikhilk.net/DateSyntaxForJSON.aspx ) while 
> bringing a whole lot of benefits. Maybe we could get it into ECMAScript. 
> Basically, it's about the simplest thing you can get for RDF serialization.

Again, I think you misdiagnose the issue. The "Ajax community" don't 
ignore RDF because of the syntax. They ignore it because a) they think 
it's not needed to solve their problems (overkill), and b) lack of tool 
support. The microformats community (well, a few people who run it) 
won't even consider using namespaces, for example.

Bruce

Received on Thursday, 26 July 2007 21:43:46 UTC