- From: Richard H. McCullough <rhm@cdepot.net>
- Date: Sat, 24 May 2003 23:46:32 -0700
- To: <jimbobbs@hotmail.com>
- Cc: <www-rdf-logic@w3.org>
Jimmy 1. I like your "qualified names with a vengeance". It captures the spirit of my suggestion. 2. I think some further simplifications are possible for Literals. I'm not too sure exactly what is legal, but I'd like to replace <dc:creator> <r:Literal>Jimmy</r:Literal> <r:Literal>Jamie</r:Literal> </dc:creator> with something like <dc:creator r:Literal="Jimmy" r:Literal="Jamie"/> 3. My ideal translation of Tim Bray's example is <MKR xmlns ="http://rhm.cdepot.net/xml/" xmlns:ex ="http://www.example.com/terms/" xmlns:dc ="http://purl.org/dc/elements/1.1/" > Dave Beckett has ex:homepage="http://purl.org/net/dajobe"; document has dc:title="RDF/XML Syntax Specification (Revised)", ex:editor=Dave Beckett, uri="http://www.w3.org/TR/rdf-syntax-grammar"; </MKR> Dick McCullough knowledge := man do identify od existent done; knowledge haspart proposition list; ----- Original Message ----- From: "Jimmy Cerra" <jimbobbs@hotmail.com> To: <www-rdf-logic@w3.org> Sent: Saturday, May 24, 2003 9:44 PM Subject: Alternative RDF/XML serializations > > There have been quite a few criticisms of the official XML serialization > of RDF [1, 2, 3]. One common comment (to me, anyway) is that RDF/XML is > hard to read [3, 4]. Another criticism (that I can relate with) is that > generating HTML from the serialization using XSLT is complicated [5]. > So, I started thinking about alternative representations in XML. > > One idea, inspired by Dick McCullough [3], uses qualified names with a > vengeance: > > <r:RDF > xmlns:r="http://purl.org/jfc/2003/05/25/x-rdf-1#" > xmlns:jfc="http://purl.org/jfc/2003/05/25/ex-1#" > xmlns:dc="http://purl.org/dc/elements/1.1/"> > > <jfc:myDocument> > <r:type> > <jfc:webPage /> > </r:type> > <dc:creator> > <r:Literal>Jimmy</r:Literal> > <r:Literal>Jamie</r:Literal> > </dc:creator> > </jfc:myDocument> > > <r:Resource r:name="jfc:anotherDocument"> > <r:type><jfc:pdf /></r:type> > <dc:creator><r:Literal>Jimmy</r:Literal></dc:creator> > </r:Resource> > > <r:Resource r:uri="http://www.w3.org/TR/rdf-mt/"> > <r:type><jfc:w3cDocument /></r:type> > <r:Property r:uri="http://www.w3.org#Editor"> > <r:Literal>Patrick Hayes</r:Literal> > </r:Property> > <r:Property r:uri="http://www.w3.org#Series%20Editor"> > <r:Literal>Brian McBride</r:Literal> > </r:Property> > </r:Resource> > > </r:RDF> > > That example uses the element name to identify the thing being > described. Exceptions are made for elements in the "r" namespace. > Since some things may not be able to be described with an element name > (such as literals and uris), the r:Resource, r:Property and r:Literal > elements are provided. The attribute r:uri (for uris) and r:name (for > qualified names) indicates the thing being described in that case. > > Each child of the r:RDF element is a subject of a RDF statement. The > children in level 2 of the XML tree are predicates (or properties). > Finally, level 3 contains the objects for each statement. If a property > contains more than one child, then they are described by a bag; for > instance in the first child of the r:RDF element above: > > <jfc:myDocument> > <dc:creator> > <r:Literal>Jimmy</r:Literal> > <r:Literal>Jamie</r:Literal> > </dc:creator> > </jfc:myDocument> > > ...means, in the official serialization: > > <rdf:Description > rdf:about="http://purl.org/jfc/2003/05/25/ex-1#myDocument"> > <dc:creator> > <rdf:Bag> > <rdf:li>Jimmy</rdf:li> > <rdf:li>Jamie</rdf:li> > </rdf:Bag> > </dc:creator> > </rdf:Description> > > Another possible serialization uses properties: > > <r:RDF > xmlns:r="http://purl.org/jfc/2003/05/25/x-rdf-1#" > xmlns:dc="http://purl.org/dc/elements/1.1/"> > <dc:creator > r:of="http://www.foo.com/Document"> > <r:Literal>Jimmy</r:Literal> > </dc:creator> > <dc:creator > r:of="http://www.foo.com/Document" > r:is="http://www.foo.com/Mary" /> > </r:RDF> > > This serialization uses attributes to represent subjects (value of r:of) > and objects (value of r:is); the predicate is the parent element. > Literals are again wrapped in r:Literal elements and are also children > of the properties (unlike resources, which are referred to in r:of > attributes). > > Tim Bray also came up with a simple serialization [1]: > > <RPV xmlns="http://www.rdf.net/rpv/"> > <R id="Dave" pbase="http://www.example.com/terms/"> > <PV p="fullName">Dave Beckett</PV> > <PV p="homePage" v="http://purl.org/net/dajobe" /> > </R> > <R r="http://www.w3.org/TR/rdf-syntax-grammar"> > <PV p="http://www.example.com/terms/editor" v="#Dave" /> > <PV p="http://purl.org/dc/elements/1.1/title"> > RDF/XML Syntax Specification (Revised) > </PV> > </R> > </RPV> > > I personally don't like this representation. The element names are not > very descriptive. I suppose that it could be validated against a DTD; > however, and that is a significant positive aspect of his idea. > > Other ideas - that I have - include adding id attributes to properties > so rdf statements can be talked about (called rectification, right?) and > adding conditional attributes to properties for scope and context. > Finally, attributes could be added to rdf:li elements to indicated roles > of "elements" (not XML elements, but mathematical/set-theory elements) > in a set or container. > > -- > Jimmy Cerra > > ] "I had to learn very early not to limit > ] myself due to others limited imagination." > ] - Dr. Mae C. Jemison > > Notes: > [1] http://www.tbray.org/ongoing/When/200x/2003/05/21/RDFNet > [2] http://www.xml.com/pub/a/2002/11/27/rdf.html > [3] http://lists.w3.org/Archives/Public/www-rdf-logic/2003May/0036.html > [4] http://lists.xml.org/archives/xml-dev/200211/msg00750.html > [5] http://www.cee.hw.ac.uk/~alison/www9/paper.html
Received on Sunday, 25 May 2003 02:48:21 UTC