- From: <bill.roberts@planet.nl>
- Date: Fri, 5 Nov 2010 14:13:12 +0100
- To: <nathan@webr3.org>
- Cc: <public-lod@w3.org>, "Dan Brickley" <danbri@danbri.org>
- Message-ID: <09584178D434304885A073316C800D0C151140C7@CPEXBE-EML13.kpnsp.local>
Hi Nathan - thanks for clear answer. I see the point and also the argument for using hash URIs with ontologies. In practice how I get round this prob is to preload my triple store with the handful of common ontologies I know I'm going to use, so don't need to deref them as I go along. Cheers Bill -----Original Message----- From: Nathan [mailto:nathan@webr3.org] Sent: Fri 11/5/2010 1:12 PM To: bill.roberts@planet.nl Cc: public-lod@w3.org; Dan Brickley Subject: Re: What would break, a question for implementors? (was Re: Is 303 really necessary?) bill.roberts@planet.nl wrote: > Hi Nathan > > I'm not saying you're wrong - but could you explain why it would be a pain for FOAF terms to return 200? Which kinds of application are dereferencing those terms and relying on a 303 response? > > eg http://xmlns.com/foaf/0.1/Person currently 303s to http://xmlns.com/foaf/spec/ > > What would break if http://xmlns.com/foaf/0.1/Person returned that same content with a status code of 200? > > Just trying to understand the issue Hi Bill, Good question :) If you consider a basic linked data client, with a basic ontology/schema awareness, for instance one which shows peoples FOAF profiles and uses the nice rdfs:label's for properties rather than "foaf:Person". It's going to have to GET the ontology, now when it cycles through the properties it'll find http://xmlns.com/foaf/0.1/Person and GET it, then hopefully cache it against the URL specified in the [content?] location of the final request (be that 1 or many requests). When you 200 OK the response then the ontology will be stored against http://xmlns.com/foaf/0.1/Person so when you hit http://xmlns.com/foaf/0.1/knows you need to do another GET, and be returned a full ontology again, thus you end up with 40+ requests with full responses and 40+ cached versions of the single ontology. Unless you code around it in some way, make a provision for FOAF. However, if you use 303's the then first GET redirects there, then you store the ontology against the redirected-to URI, you still have to do 40+ GETs but each one is fast with no response-body (ontology sent down the wire) then the next request for the 303'd to URI comes right out of the cache. It's still 40+ requests unless you code around it in some way, but it's better than 40+ requests and 40+ copies of the single ontology. The above, together with the deployment for FOAF is a v good reason *not* to use slash URIs for ontologies - ask Dan Bri about the FOAF rewrite rules for a second opinion on that :p Hope that explains, Best, Nathan
Received on Friday, 5 November 2010 13:16:33 UTC