RE: URN as namespace URI for RDF Schema (run away... run away... ;-)

> -----Original Message-----
> From: ext Stephen Rhoads [mailto:rhoadsnyc@mac.com]
> Sent: 06 October, 2004 22:55
> To: Stickler Patrick (Nokia-TP-MSW/Tampere)
> Cc: www-rdf-interest@w3.org
> Subject: RE: URN as namespace URI for RDF Schema (run away... run
> away... ;-)
> 
> 
> On Wednesday, October 06, 2004, at 04:35AM, 
> <Patrick.Stickler@nokia.com> wrote:
> 
> >> Feel free to resolve (HTTP GET) any of the following
> >> terms for a human friendly representation (with hypertext
> >> links to other human friendly representations of related
> >> terms to boot!):
> 
> >> http://sw.nokia.com/VOC-1/Vocabulary
> >> http://sw.nokia.com/FN-1/topic
> >> http://sw.nokia.com/MARS-3/relevance
> 
> >> If you want something machine readable, consider using
> >> URIQA [2] (HTTP MGET) to ask for a concise bounded 
> >> description [3] of these terms:
> 
> 
> This brings to mind something which I have been struggling over ...
> 
> If one uses MGET (or "Accept: application/rdf+xml") to 
> retrieve an RDF description of a URI for which there is also 
> a representation available via GET (a URL), what is being 
> described, the concept denoted by the URI, or the 
> representation (such as an HTML page) returned when 
> dereferencing the URI?

For an MGET request, what is being returned is a description
of the resource denoted by the request URI. 

As for GET + "Accept: application/rdf+xml", what is returned
is a representation of the resource denoted by the request URI,
but whether that representation constitutes a "description"
of the resource is open to conjecture.

> If the former, how does one make statements about the 
> representation?  If the latter, how does one make statements 
> about the concept?

The representation returned may itself be a different resource
from the resource denoted by the request URI, and as such, the
response should provide a distinct URI denoting the entity
(representation) returned.
 
One may then use that distinct URI to request a representation
(or description) of that distinct resource.

> Suppose I mint a URI to identify myself and put up an RDF 
> description which is returned to an MGET or when 
> application/xml+rdf is specified.  

To be clear, MGET will return a description, and GET will
return a representation, and even if the representation
provided in response to a GET request is RDF, that does
not mean that it is (necessarily) a description, per se.

> I then put up an image of 
> myself which is returned to a normal GET. How can I 
> separately make statements about myself (type:Person, 
> name:"Stephen") and about the image (type:Image, 
> aspectRatio:"16:9", mediaType:"image/jpeg")?

It's actually quite straightforward.

You use distinct URIs to denote the three distinct resources.

E.g. consder the following set of RDF statements (expressed
in Turtle/N3 for brevity, but pretend it's RDF/XML ;-) which
are managed by a given server and exposed via a URIQA interface:

   <http://example.com/StephenRhoads> 
      rdf:type ex:Person ;
      ex:name "Stephen Rhoads" .

   <http://example.com/StephenRhoads.rdf> 
      rdf:type ex:RDFSchema ;
      dc:format "application/rdf+xml" .

   <http://example.com/StephenRhoads.jpg> 
      rdf:type ex:Image ;
      dc:format "image/jpeg" ;
      ex:aspectRatio "16:9" .

Now, given support for both content negotiation and URIQA,
and conneg configured to return a JPEG image before an
RDF schema when resolving a GET request:

All four of the following requests

   GET /StephenRhoads HTTP/1.1
   Host: example.com

   GET /StephenRhoads HTTP/1.1
   Host: example.com
   Accept: image/jpeg

   GET /StephenRhoads.jpg HTTP/1.1
   Host: example.com

   GET /StephenRhoads.jpg HTTP/1.1
   Host: example.com
   Accept: image/jpeg

would ultimately return a representation of 
http://example.com/StephenRhoads.jpg, which
can also be considered to be a representation of
http://example.com/StephenRhoads.

All of the following requests

   GET /StephenRhoads HTTP/1.1
   Host: example.com
   Accept: application/rdf+xml

   GET /StephenRhoads.rdf HTTP/1.1
   Host: example.com

   GET /StephenRhoads.rdf HTTP/1.1
   Host: example.com
   Accept: application/rdf+xml

would ultimately return a representation of 
http://example.com/StephenRhoads.rdf, which
can also be considered to be a representation of
http://example.com/StephenRhoads.

The URIQA request

   MGET /StephenRhoads HTTP/1.1
   Host: example.com

would return a concise bounded description comprised 
of the statements

   <http://example.com/StephenRhoads> 
      rdf:type ex:Person ;
      ex:name "Stephen Rhoads" .

The URIQA request

   MGET /StephenRhoads.rdf HTTP/1.1
   Host: example.com

would return a concise bounded description comprised 
of the statements [1]

   <http://example.com/StephenRhoads.rdf> 
      rdf:type ex:RDFSchema ;
      dc:format "application/rdf+xml" .

The URIQA request

   MGET /StephenRhoads.jpg HTTP/1.1
   Host: example.com

would return a concise bounded description comprised 
of the statements

   <http://example.com/StephenRhoads.jpg> 
      rdf:type ex:Image ;
      dc:format "image/jpeg" ;
      ex:aspectRatio "16:9" .

--

I hope that helps to answer your questions.

Cheers,

Patrick


--

[1] Note that this a description *about* the RDF document
(resource) denoted by <http://example.com/StephenRhoads.rdf>
and *not* a representation of the document itself, even if 
the document itself might contain statements about itself; and
in fact, that document may very well be the source
of the knowledge maintained/exposed by the URIQA interface, but
that is an implementational/system-internal issue.

We need not concern ourselves with the actual contents of any
representation of the document http://example.com/StephenRhoads.rdf 
insofar as the behavior of GET or MGET are concerned. Whether there 
is any relationship between http://example.com/StephenRhoads.rdf and 
any CBD returned in response to a URIQA request falls
below the opacity level of the HTTP/URIQA functionality.

Received on Thursday, 7 October 2004 07:28:30 UTC