a. SELECT with simple RDF dataset

This SPARQL query

PREFIX foaf: <http://xmlns.com/foaf/0.1/> 
PREFIX dc: <http://purl.org/dc/elements/1.1/> 
SELECT ?book ?who 
WHERE { ?book dc:creator ?who }

is conveyed to the SPARQL query service, http://my.example/sparql/, as illustrated in this HTTP trace, which is formatted in order to be readable:

GET http://my.example/sparql/?query=PREFIX+foaf%3A+%3+Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E+
PREFIX+dc%3A++++++%3Chttp%3A%2F%2Fpurl.org%2+Fdc%2Felements%2F1.1%2F%3E+
SELECT+%3Fbook+%3Fwho+WHERE+%7B+%3Fbook+dc%3Acreator+%3Fwho++%7D
&default-graph-uri=http%3A%2F%2Fmy.example%2Fbooks HTTP 1.0
Host: my.example
User-agent: my-sparql-client/0.1
Accept: application/xml

That query against that RDF dataset, executed by that SPARQL query service, returns the following query result:

HTTP/1.1 200 OK
Date: Fri, 06 May 2005 20:55:12 GMT
Server: Apache/1.3.29 (Unix) PHP/4.3.4 DAV/1.0.3
Connection: close
Content-Type: application/xml; charset=utf-8

<?xml version="1.0"?>
<sparql xmlns="http://www.w3.org/2001/sw/DataAccess/rf1/result2">
 <head>
   <variable name="book"/>
   <variable name="who"/>
 </head>
 <results>
   <result>
     <binding name="book"><uri>http://example.org/book/book2</uri></binding>
     <binding name="who"><bnode>r1115396427r1133</bnode></binding>
   </result>
   <result>
     <binding name="book"><uri>http://example.org/book/book3</uri></binding>
     <binding name="who"><bnode>r1115396427r1133</bnode></binding>
   </result>
   <result>
     <binding name="book"><uri>http://example.org/book/book1</uri></binding>
     <binding name="who"><literal>J.K. Rowling</literal></binding>
   </result>
 </results>
</sparql>