N3 rule for proposed Resource-Description header

Given the discussion on the TAG list about "Uniform access to descriptions" and the confusion/discussion on our last AWWSW call about what can be inferred from a 200 response, and what can be said about a Web document, I added a rule to the attached rules.n3 for inferring a set of ancillary assertions from a Resource-Description header.   A test case test7.n3 is also included.

In rules.n3:

 - Lines 132-135 define the hasResourceDescription property, which indicates that a particular HTTP response contains a Resource-Description header.

 - Lines 248-252 define a hasAncillaryAssertions property, which indicates that a URI has a particular set of ancillary assertions available, which the application may or may not choose to assert, as explained in
http://dbooth.org/2007/uri-decl/#ancillary .
The reason the Resource-Description assertions must be architecturally considered ancillary assertion rather than core assertions is explained in lines 347-360:
[[
347. # an HTTP Resource-Description header.  Note that if URI u
348. # is dereferenced to obtain a Response containing such a
349. # header, and the header points to a metadata document containing
350. # assertions, then those assertions must NOT be interpreted
351. # as core assertions for u's declaration.  Rather,
352. # they must be treated as ancillary assertions, as described in
353. # http://dbooth.org/2007/uri-decl/#ancillary .
354. # This is necessary to enable someone to use u to make
355. # a statement about its denoted document, such as:
356. #    <u> :hasRating :awful .
357. # without implying agreement with the assertions in the
358. # metadata document, which after all could contain a
359. # statement such as:
360. #    <u> :hasRating :excellent .
]]

 - Lines 346-371 define the inference rule for asserting hasAncillaryAssertions from an HTTP Response containing a Resource-Description header.

 - Lines 298-325 define the inference rule for inferring a URI declaration from an HTTP 200 response (per the httpRange-14 decision), as before.  Note that a URI declaration for a Web document ?r denoted by a URI ?u is very simple:
[[
318.            ?r a awww:InformationResource .
319.            ?r uri:hasURI ?u .
]]
I'm not 100% sure that the uri:hasURI assertion on line 319 should be treated as one of the core assertions -- perhaps it should be an ancillary assertion -- but I think it is harmless to include it as a core assertion, since it is irrefutable given the successful 200 response that triggered the rule.

In test7.n3:

 - I used the example of describing the relationship between http://www.w3.org/TR/rdf-mt/ and http://www.w3.org/TR/2003/WD-rdf-mt-20030123/ i.e., that the dated URI denotes a version of the (time-varying) "document" denoted by the undated URI.

 - Lines 57-70 assume that the Resource-Description header specifies a metadata URI, http://dbooth.org/2008/httpinf/metadata7.n3 .  The metadata document contains the assertion:
[[
<http://www.w3.org/TR/rdf-mt/> dcterms:hasVersion
        <http://www.w3.org/TR/2003/WD-rdf-mt-20030123/> .
]]
which, by the new inference rule, becomes an available ancillary assertion for http://www.w3.org/TR/rdf-mt/ .



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 Thursday, 3 April 2008 04:39:56 UTC