- From: John Black <JohnBlack@kashori.com>
- Date: Mon, 25 Jun 2007 11:00:11 -0400
- To: "Richard Cyganiak" <richard@cyganiak.de>, "Jacek Kopecky" <jacek.kopecky@deri.org>
- Cc: "Bernard Vatant" <bernard.vatant@mondeca.com>, "Tim Berners-Lee" <timbl@w3.org>, <semantic-web@w3.org>
Richard Cyganiak wrote: > > On 25 Jun 2007, at 01:01, Jacek Kopecky wrote: > >> Wow. It's a nice description of the difference between the symbol and >> its referent. But I guess I should be able to state that >> >> @prefix ex <http://example.org/> >> ex:A http:redirects303To <http://example.org/A/doc> >> ex:B http:redirects303To <http://example.org/B/doc> >> ex:A owl:sameAs ex:B >> >> (which I think was Bernard's point) >> >> Or is it wrong to create http:redirects303To as a statement about the >> HTTP resource? If so, why? > > It's wrong indeed. Because RDF statements always are about the referents, > and never about the identifier. The redirection is a property of the > identifier system (the URI), and not of the identified thing. If I say: > > <http://dbpedia.org/resource/Berlin> http:redirectsTo <http:// > dbpedia.org/page/Berlin> . > > Then I have said “the city of Berlin redirects to a web page about the > city of Berlin.” Which is nonsense. > > Same with things like: > > <http://dbpedia.org/resource/Berlin> str:numOfCharacters 33 . > > “The city of Berlin is 33 characters long.” Nonsense again. > > You cannot talk directly about URIs in RDF. The statement will always be > about the referent. You can talk directly about a web page in RDF, I hope. Or at least about the information resource whose representation is returned by de-referencing the URI for that web page. But surely a URI is an information resource in the same way that a blog post is and so it can be represented by a web page the same way a blog post is represented by the web page you get through HTTP. Now my FOAF URI is this http://kashori.com/JohnBlack/foaf.rdf#jpb. As a URI, it is an information resource, namely a string of characters conforming to rfc3986. I have created a web page representation of this information resource at http://kashori.com/ontology/MyURI according to standard REST web architecture principles. As the owner of and therefore the authority about the referent of that URI, I hereby proclaim that this web URI denotes my RDF FOAF URI, http://kashori.com/JohnBlack/foaf.rdf#jpb. This uses web technologies to identify that FOAF URI by another URI. In particular, as an information resource, something that can be completely characterized by a message, I can identify it directly with a 'slash' URI. I don't need a 303 or a 'hash' URI. Now I can talk directly about, or mention, that FOAF URI in RDF. <http://kashori.com/ontology/MyURI> str:numOfCharacters 41. In this case, the RDF statement is about the identifier. This contradicts your statement that "...RDF statements always are about the referents, and never about the identifier." Here the referent is the identifier. I am talking as directly about my FOAF URI as I am talking directly about any other information resource as represented by a web page by stating in RDF: 1. <http://kashori.com/ontology/MyURI> owl:sameAs "http://kashori.com/JohnBlack/foaf.rdf#jpb"^^xsd:anyURI. 2. <http://kashori.com/ontology/MyURI> dc:creator <http://kashori.com/JohnBlack/foaf.rdf#jpb>. In natural language, 1. that FOAF URI is the same as that literal URI. and 2. that FOAF URI has a creator that is John Black. Finally, consider this URI: http://kashori.com/ontology/self-referential. This URI identifies/denotes itself. So we can say <http://kashori.com/ontology/self-referential> owl:sameAs "http://kashori.com/ontology/self-referential"^^xsd:anyURI. Only problem is, these URI are ambiguous, we can't tell if they identify the identifiers or the web pages representing the identifiers. John Black www.kashori.com > If you want to talk about the URI, then you would have to use something > like this: > > "http://dbpedia.org/resource/Berlin"^^xsd:anyURI str:numOfCharacters 33 . > > But of course literals are not allowed in the subject position ... > >> Or does it perhaps show that while so very >> convenient, http: URIs (without fragment ID) already introduce a pun >> that makes owl:sameAs too strong? > > I don't think so. It shows that you have to keep in mind that RDF doesn't > talk about URIs, but about the resources identified by the URIs. > >> I've always been uneasy about the 303 approach to having http: URIs >> denote non-information resources; I guess I'd be in the 'hash' camp. >> Basically, my feeling is that 303 does not fully solve the issue, so it >> should be a softer recommendation than a W3C Recommendation MUST. > > It isn't a MUST, and I've never seen anyone suggest that it should be. > > Hash URIs and 303 URIs are both perfectly fine as identifiers for non- > information resources, both with their pros and cons (discussed at length > in e.g. [1], [2] and [3]). > > Richard > > [1] http://www.w3.org/TR/swbp-vocab-pub/ > [2] http://www.dfki.uni-kl.de/~sauermann/2006/11/cooluris/ > [3] http://www.w3.org/2001/tag/doc/httpRange-14/2007-05-31/HttpRange-14 > > >> I'm >> off-line at the moment though so I can't verify whether the WebArch >> document makes a MUST-level statement about information resources and >> 200 vs. 303 responses. >> >> Having endless fun with the subtleties of SemWeb, >> Jacek Kopecky >> >> >> On Fri, 2007-06-15 at 16:23 +0200, Richard Cyganiak wrote: >>> Bernard, >>> >>> On 15 Jun 2007, at 10:30, Bernard Vatant wrote: >>>> But is not 'A owl:sameAs B' intended to mean, by OWL definition, >>>> that in any context using the semantics of URIs, those semantics >>>> are the same for A and B, so whatever assertion is true of A is >>>> true of B, so A and B can be used indifferently. >>> >>> Huh? No. A and B are *symbols*. They are two different symbols. They >>> cannot be used indifferently. >>> >>> The symbols A and B denote two *referents* A' and B' (glossing over >>> the question how exactly they denote those referents). A owl:sameAs B >>> means that anything that is true for A' is true for B' and vice >>> versa. You can use A' and B' indifferently (because they are the >>> same, if you choose to believe the owl:sameAs claim), but not A and B. >>> >>> We communicate using symbols. In natural language, in RDF, and in >>> OWL. Changing the symbols changes what is communicated, even if the >>> symbols denote the same thing. >>> >>>> But if through http protocol you retrieve "what the owner of A >>>> declares is true of A" and "what the owner of B declares is true of >>>> B" (read : RDF descriptions of A and B), with no certitude >>>> whatsoever if those descriptions are consistent or not, that means >>>> http protocol is not a context where A and B have the same semantics. >>> >>> “A and B have the same semantics” is a very murky statement best >>> avoided. >>> >>> HTTP deals only with symbols (URIs), descriptions of referents (where >>> the referent is a non-information resource), and representations of >>> referents (where the referent is an information resource). It never >>> deals with the referents themselves. >>> >>> Two symbols having different descriptions doesn't preclude me from >>> interpreting them as having the same referent. The same-ness of >>> referents never enters the picture at the HTTP level. >>> >>>> I can live with that, but it seems at least hard to understand and >>>> harder to explain, if one judge by the everthread about it. >>>> OTOH, if one uses owl:sameAs for URIs identifying resources which >>>> are *information resources*, then they should actually redirect to >>>> the same document. Yes? >>> >>> That would be a good idea, though technically I don't believe you >>> *have to*. >>> >>> Richard >>> >>> >> >> >> > > >
Received on Monday, 25 June 2007 15:03:28 UTC