W3C home > Mailing lists > Public > public-awwsw@w3.org > February 2008

RE: AWWSW minutes from today

From: Williams, Stuart (HP Labs, Bristol) <skw@hp.com>
Date: Wed, 6 Feb 2008 11:08:48 +0000
To: "Booth, David (HP Software - Boston)" <dbooth@hp.com>, "public-awwsw@w3.org" <public-awwsw@w3.org>
Message-ID: <9674EA156DA93A4F855379AABDA4A5C611950B4EA5@G5W0277.americas.hpqcorp.net>

Hello David,

Some comments on your rules wiki page:

In "Sample Input Data":

        # HTTP ontology mentioned by Jonathan:
        @prefix http: <http://www.w3.org/2007/ont/http#>

The given URI doesn't appear to resolve to anything :-(
There are a number of obvious prefixes that need 'grounding' and have 'example' in the authority field.

# And we'll assume that the app knows to dereference the racine
# in search of a URI declaration, and we'll assume that
# the racine dereferences (perhaps indirectly via 301, 302 or 307
# redirects) to a 200 OK response with an application/rdf+xml
# body.  The following RDF expresses these assumptions.
# Incidentally, the first line is needed to get around RDF's silly
# restriction that a literal cannot be a subject in a triple.

The intrinsic action of HTTP (and if I understand TimBL correctly - ALL (architecture conformant) Web access protocols) uses the 'racine' on the request line. ie. it is an *intentional* facit of the architecture that any fragment part of the URI is *not* included in a web retrieval request... ie. this is *not* an assumption that has to be made, it is intrinsic behaviour of ALL (architecture conformant) web access protocols.

BTW: I put 'racine' in quotes above because you are using it as a relation between strings and 'log:racine' from which I think your use derives is a relation between resources.

I don't know why you have made explicit mention of 301, 302 or 307 and made absolutely no mention of 303 which is what the TAG has been encouraging the use of.

[aside: And... while we're on the topic... (not that you have said otherwise) it is not in the gift of URI scheme specifications to constrain in any way the use of frag ids with the scheme in question, or to endow them with semantics.]


is going to be problematic... in that there are many of them over time. Maybe time needs to be used as a descriminant here - question is whether that should be intrinsic to the reply or 'extrinic' to the model. My guess is that a Reply is a subclass of Message which itself is a subclass of Event (all in some ontology) and that the temporal aspects should be recorded/inheritited from Event (which may have duration).

In Rules

# And we'll assume that in parsing the above triple, the app *also* automatically asserted the following triple:
# <http://dbooth.org/2008/httpinf/moon.rdf#themoon> log:uri
#       "http://dbooth.org/2008/httpinf/moon.rdf#themoon"^^xsd:anyURI .

This is an obvious tautology... and as such harmless... it also happens to entail a blank node:

        _:b1 log:uri log:uri "http://dbooth.org/2008/httpinf/moon.rdf#themoon"^^xsd:anyURI .

ie. a blank node (actually an infinite number of them... I'm told) - which for reason I find more interesting... not sure why... just musing that's all.

# hasDeclaration rule for 200 response with RDF.
{       ?uri a xsd:anyURI ;
                uri:hasRacine ?racine .
        ?racine http:hasGetReply ?reply .
        ?reply http:hasStatusCode "200" .
        ?reply http:hasContentType "application/rdf+xml" .
        ?reply http:hasEntityBody ?body .
        ?body rdfx:parsesTo ?formula .
} =>    {
        ?racine urid:declares ?u .
        } .

Minor problems... ?uri and I presume ?racine are bound to URI bearing strings of type xsd:anyURI. Cwm may be different, but for RDF these cannot be the subject of triples (some regard this a bug in RDF - I remain to be convinced). This leads to confusion about the subject of many of these statements.

Major problems:

1) I don't see that the conclusion necessarily follows from the premises. It *only* follows of ?formula says something 'declarative' (your word) about (the referent of) ?u. Otherwise it could be saying things about a whole bunch of things and may say nothing at all about (the referent of) ?u.

2) I think this will quickly get messy with some means to distinguish inferences derived from different responses. Over time the multipicity of different responses and monotonic assertions inferred from them may lead to inconsistent KBs.

# hasDeclaration rule for RDF via 303 redirect.
{       ?uri a xsd:anyURI ;
                uri:hasRacine ?racine .
        ?racine http:has303Reply ?reply .
        ?reply http:hasStatusCode "200" .
        ?reply http:hasContentType "application/rdf+xml" .
        ?reply http:hasEntityBody ?body .
        ?body rdfx:parsesTo ?formula .
} =>    {
        ?racine urid:declares ?u .
        } .

Similar problems to the previous rule.

# 301 case. 302 and 307 are the same.
{       ?u1 http:hasGetReply ?reply1 .          # IF ?u1 derefs to ?reply1
        ?reply1 http:hasStatusCode "301" .      # ... with 301 status
        ?reply1 http:hasLocation ?u2 .          # ... and URI ?u2
        ?u2 http:hasGetReply ?reply2 .          # ... which derefs to ?reply2
} => {                                          # THEN
        ?u1 http:hasGetReply ?reply2 .          # ... ?u1 derefs to ?reply2
} .

Not sure I agree with this though this is probably me being 'picky' (again). I think the conclusions are or should be that ?u1 has moved (on a temporary or permanent basis) to ?u2. Maybe those are additional conclusions. *iff* ?u1 and ?u2 are the same resource (maybe an owl:sameAs or owl:sameIndividual is appropriate too... but I'd be a bit guarded (again) about the temporal aspects) then I suppose that the conclusion you reach is 'ok' but I am uneasy.

Just some review comments... not deeply considered... so don't give them too much weight.


Hewlett-Packard Limited registered Office: Cain Road, Bracknell, Berks RG12 1HN
Registered No: 690597 England

The contents of this message and any attachments to it are confidential and may be legally privileged. If you have received this message in error, you should delete it from your system

> -----Original Message-----
> From: public-awwsw-request@w3.org
> [mailto:public-awwsw-request@w3.org] On Behalf Of Booth,
> David (HP Software - Boston)
> Sent: 06 February 2008 06:23
> To: public-awwsw@w3.org
> Subject: RE: AWWSW minutes from today
> As I mentioned on today's call, I've started writing n3 rules
> for inferences that can be made from HTTP interactions.  They
> aren't done and not fully working yet, but I've put them on the wiki:
> http://esw.w3.org/topic/AwwswDboothsRules
> Comments and suggestions are invited, especially on items
> marked "TODO". :)
> David Booth, Ph.D.
> HP Software
> +1 617 629 8881 office  |  dbooth@hp.com
> http://www.hp.com/go/software
> Opinions expressed herein are those of the author and do not
> represent the official views of HP unless explicitly stated otherwise.
Received on Wednesday, 6 February 2008 11:11:49 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 July 2008 07:55:27 GMT