- From: Kevin D. Keck <kdkeck@lbl.gov>
- Date: Tue, 5 Jul 2005 10:53:33 -0700
- To: public-rdf-dawg-comments@w3.org
I rather liked the December draft of the Variable Binding Results XML Format (http://www.w3.org/TR/2004/WD-rdf-sparql-XMLres-20041221/), and am sorry to see that the latest draft is considerably more verbose and less RDF-like. In thinking about how to make it more RDF-like, I came up with the following counterpart to the example <output.xml>: <?xml version="1.0"?> <qr:ResultSet rdf:about="" xmlns="#" xmlns:qr="http://purl.org/QueryResults/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <qr:variables rdf:parseType="Collection"> <qr:Variable rdf:ID="x"/> <qr:Variable rdf:ID="hpage"/> <qr:Variable rdf:ID="name"/> <qr:Variable rdf:ID="mbox"/> <qr:Variable rdf:ID="age"/> <qr:Variable rdf:ID="blurb"/> <qr:Variable rdf:ID="friend"/> </qr:variables> <qr:results rdf:parseType="Collection"> <qr:Result> <x rdf:nodeID="r1"/> <hpage rdf:resource="http://work.example.org/alice/"/> <name>Alice</name> <mbox></mbox> <blurb rdf:datatype="http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral"><p xmlns="http://www.w3.org/1999/xhtml">My name is <b>alice</b></p></blurb> <friend rdf:nodeID="r2"/> </qr:Result> <qr:Result> <x rdf:nodeID="r2"/> <hpage rdf:resource="http://work.example.org/bob/"/> <name xml:lang="en">Bob</name> <mbox rdf:resource="mailto:bob@work.example.org"/> <age rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">30</age> <friend rdf:nodeID="r1"/> </qr:Result> </qr:results> </qr:ResultSet> Note that by using RDF/XML syntax to indicate types, I have made this same XML file also parse as RDF. If translated into N3, it would look like: @prefix qr: <http://purl.org/QueryResults/> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . <> a qr:ResultSet ; qr:variables (:x :hpage :name :mbox :age :blurb :friend) ; qr:results ( [a qr:Result ; :x _:r1 ; :hpage <http://work.example.org/alice/> ; :name "Alice" ; :mbox "" ; :blurb "<p xmlns=\"http://www.w3.org/1999/xhtml\">My name is <em>Alice</em></p>"^^rdf:XMLLiteral ; :friend _:r2 ] [a qr:Result ; :x _r2 ; :hpage <http://work.example.org/bob/> ; :name "Bob"@en ; :mbox <mailto:bob@work.example.org> ; :age 30 ; :friend _:r1 ] ) . :x a qr:Variable . :hpage a qr:Variable . :name a qr:Variable . :mbox a qr:Variable . :age a qr:Variable . :blurb a qr:Variable . :friend a qr:Variable . An RDF Schema for <http://purl.org/QueryResults/> would look something like: @prefix qr: <http://purl.org/QueryResults/> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . qr:ResultSet a rdfs:Class . qr:variables a rdf:Property ; rdfs:domain qr:ResultSet ; rdfs:range rdf:List . qr:results a rdf:Property ; rdfs:domain qr:ResultSet ; rdfs:range rdf:List . qr:Variable rdfs:subClassOf rdf:Property . qr:Result a rdfs:Class .
Received on Tuesday, 5 July 2005 18:24:05 UTC