- From: Seaborne, Andy <Andy_Seaborne@hplb.hpl.hp.com>
- Date: Fri, 21 Nov 2003 13:57:20 -0000
- To: "'Kevin Smathers'" <ks@saro2.hpl.hp.com>
- Cc: SIMILE public list <www-rdf-dspace@w3.org>
For SIMILE: For SIMILE, I suggest that the web aspect of the architecture is that there are databases on the web (Knowledge Bases) and applications look up information about concepts (people, works of art). Several different KBs can have information about the same concept. This paradigm is simple, works on top of existing web infrastructure, and (dare I say it) uncontroversial. It does not solve the problem of "have URI, tell me about without any other knowledge". Now that is controversial. Not for SIMILE: -------- Original Message -------- > From: Kevin Smathers <mailto:ks@saro2.hpl.hp.com> > Date: 20 November 2003 18:13 > > Hi Andy, > > A better description of what I was trying to get at during this > morning's telecon was to ask if Joseki couldn't be used to > publish nodes using the same URL as identifies the RDF node itself. So could you say more about the use case, the reason why? Why do you want the representation and some metadata about a thing at the same place on the web with, say, embedding the metadata in the representation (in the result of GET)? Joseki uses plain, old HTTP. Joseki published models (KBs) at their URL. Each KB has information about our resources. That RDF is independent of the resource described (e.g. all 3rd party information). > > Right now this is impossible with Joseki because of the way that Joseki > structures queries. > > Suppose there is a node <http://www.ank.com/~kevin> that I've said > identifies me. Is that a web page or is that "Kevin Smathers"? This is httpRange-14 that is being debated widely at the moment. I do not understand all the subtleties but I can try to capture some of the positions: 1/ The web is a web of documents. Documents are on the web. URLs and URIrefs only refer to documents. 2/ Documents and concepts (Tim Berners-Lees position, badly expressed URLs refer to document (information resources) URIrefs refer to concepts within that resource Consequence: concepts are http:// with fragId. They must have a # 3/ Everything / anything can be on the web. Its whatever the claimant says. 4/ It's context-dependent. If you GET the thing, it's a web page (context is http usage) It can identify a person. It can identify a web page. Consequence: Just the URI isn't enough to do anything. Note that in 3 there is a requirement of consistency - you're example does not meet that as it is both a web page and a person. You may claim http://www.ank.com/~kevin is you but when I go GET I don't get a representation of you, I get a web page with title "A&K Winery : Kevin Smathers, CBWO". This is why I suggest urn:uuid's for people - so systems can exchange a reference to the concept. What is the foaf:fullName of the web page? Consider the possibly less charged (it not about people): http://chandra.harvard.edu/photo/2003/ngc1068/index.html Question: Does this make NGC1068 on the web? (This question is often posed in terms of "Paris" or "DanC's black Toyota".) > To retrieve that node using Joseki I would write > (using GET, and ignoring URL quoting for the moment): > > GET /users?lang=fetch&query=http://www.ank.com/~kevin Untrue : Joseki supports plain GET. GET returns a representation of the resource. It is unclear in web architecture whether that can include metadata about the thing in question; there are people in the debate in www-rdf-rules/www-rdf-logic suggesting MIME type negotiation, others suggest a new HTTP verb. The paradigm I have is that the semantic web has information resources (KBs) available. c.f Google. Applications can look up about a resource in a KB. The "fetch" operation needs two things to find information : the KB and the URI of the resource. There can be many places where information about a resource are to be found. I may have some information about <foo> and so might you. So - web architecture - this request is asking the KB at http://example.org/users (NB absolute URL to identify the KB). Are your trying to solve the problem that you have a URI and, without any other information, wish to get metadata about the resource identified by the URI? Joseki's fills in the piece of this puzzle where there are many different KBs that might have metadata about the resource. Like the web service world, I'm assuming that the application is not isolated, it found out about the resource in some way and this can be informing as to good places to look. Is there, to you, a different between the representation of a resource and metadata about the resource? This is a 2000 year old philosophical issue. > > Now if I try to make my URL something that Joseki can understand, I > still can't reference that node directly because it will again be > prefixed by the Joseki query syntax, e.g.: > > <http://www.ank.com:2020/users?lang=fetch&query=http://www.ank.com/~kevin> > > would be fetched using: > > GET > /users?lang=fetch&query=http://www.ank.com:2020/users?lang=fetch&query=http: //www.ank.com/~kevin > > Yikes, it is like looking into back to back mirrors. No - you are trying to construct a "reductio ad absurdum" argument but mixing the concept with statements about the concept. Also, for SIMILE, there is a difference between a work and a manifestation of a work. There are two concepts - and hence potentially two names (URIs). > > However, if Joseki could respond to a relative request such as the > following and use its own configuration and the hostname of the > machine it is running on to determine what the original node was > that was being requested, then it could self-referentially return > the exact node by its own identity, e.g.: > > GET /users/~kevin > > should retrieve a node (from the Model 'users') named > > <http://www.ank.com:2020/users/~kevin> Firstly - mechanically this is just rewriting the incoming request to serve "GET http://example.org/users/~kevin" with the results of another request. Purely a local matter - mod_rewrite or mod_alias can do that, alternatively do it in web.xml. Second - isn't "/users" just your URI for the KB that has information about http://www.ank.com/~kevin (I am confused here because your example URI keeps changing). Third - It is hard, practically, to consistently turn relative URIs to absolute URIs: Consider: http://www.ank.com/~kevin http://www.ank.com./~kevin (final dot after "com" - an absolute DNS name) http://206.170.148.113/~kevin http://www.ank.com/~kevin/ (final /) Currently, doing a GET on all these yields the same representation. In the phone conference you wanted Joseki to convert relative URIs to absolute one on output. It is difficult to see which way it should be done. Deep in a servlet, there are all sorts of different routes a request may have come in, including being passed on by a front-end web server to a back-end app server. > > In this way a running Joseki server could be the reference source for > its > own nodes, which is appropriate in cases where the server is the > canonical > source for those nodes. This is especially true for e.g. anonymous > nodes, > but also applies to any node that a user has decided is defined by > itself. > > Cheers, > -kls > > Information (metadata) about a thing is different from (a representation of) the thing itself. See also URIQA - and the debate in www-rdf-logic/rules/interst with Patrick Sticker advocating the new HTTP verb MGET. This seems to be close to what you want. See also the discussion on embedding RDF in HTML which is also an interesting additional to the semantic web. Andy PS Removed www-archive from the distribution list.
Received on Friday, 21 November 2003 08:58:08 UTC