Re: Multiple GRDDL results in a single transform??? GRDDL and Named Graphs

It is beyond my skill to get involved with the detailed discussion here 
but, as you know, David, we ended up theorising about a two-stage 
encoding of POWDER when we met in Boston last year. In a fine example of 
convergent evolution, Jeremy has arrived at a similar notion - an 
operational version of a Description Resource, mapping via a prescribed 
transformation into a semantically more exact version (we are toying 
with names like DR-O/DR-S or POWDER Lite/POWDER Full for these).

Now... since GRDDL is about extracting RDF where it may not be apparent, 
its use for this transformation feels right (and it's always nice to use 
new Recs), but, if the detail doesn't allow this, OK, RDF/XML is XML so 
we should be able to use XSLT - I think. And if we can't use that 
either, then I think we may well contemplate writing our own algorithm.

We're exploring all possibilities here :-)

Phil.

Booth, David (HP Software - Boston) wrote:
> In http://www.w3.org/2007/OWL/wiki/POWDER
> I am taken aback by this statement:
> "By the operation of GRDDL, then every POWDER document has two GRDDL results: itself (being an RDF/XML document), and the result of the POWDER transform applied to that document."
> 
> In the GRDDL WG I remember pursuing the question of whether an RDF/XML document could have a GRDDL transformation (by virtue of being XML) in addition to the identity transformation defined by the GRDDL spec:
> http://www.w3.org/2004/01/rdxh/spec#rule_rdfxbase
> "If an information resource IR is represented by a conforming RDF/XML document[RDFX], then the RDF graph represented by that document is a GRDDL result of IR."
> 
> I remember being told that it is not possible: the RDF/XML syntax does not allow the grddl:transformation attribute to be specified on the root element.  Indeed, the RDF validator at
> http://www.w3.org/RDF/Validator/
> confirms this.  When I feed this supposedly RDF/XML into the validator:
> [[
> <?xml version="1.0"?>
> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>   xmlns:dc="http://purl.org/dc/elements/1.1/"
> xmlns:grddl='http://www.w3.org/2003/g/data-view#'
>       grddl:transformation="glean_title.xsl"
>   <rdf:Description rdf:about="http://www.w3.org/">
>     <dc:title>World Wide Web Consortium</dc:title>
>   </rdf:Description>
> </rdf:RDF>
> ]]
> The validator reports: "Error: {E201} Illegal attributes on rdf:RDF[Line = 6, Column = 2]"
> 
> How exactly is POWDER proposing to gain this additional GRDDL transformation?
> 
> 
> 
> 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.
> 
> 
>> -----Original Message-----
>> From: public-grddl-wg-request@w3.org
>> [mailto:public-grddl-wg-request@w3.org] On Behalf Of Jeremy Carroll
>> Sent: Thursday, January 17, 2008 1:43 PM
>> To: public-grddl-wg@w3.org
>> Cc: patrick.stickler@nokia.com; chris@bizer.de; Phil Archer
>> Subject: Multiple GRDDL results in a single transform???
>> GRDDL and Named Graphs
>>
>>
>>
>> Summary:
>> - XSLT2 supports multiple output documents, is each a GRDDL result?
>> - With a document with multiple GRDDL results can we regard each as a
>> graph in a named graph approach (particularly if each GRDDL result is
>> given a different base URI somehow, e.g. in an XSLT2 result-document
>> instruction)
>> - Can different GRDDL results for the same document be treated with
>> different pragmatic force (e.g. the end-user acts on some of the GRDDL
>> results while ignoring others, perhaps in a systematic way)
>> - Note it is possible to do this with XSLT1, and some trickery
>>
>> ===========
>>
>> I am looking at POWDER, and thinking about using GRDDL to convert a
>> simpler form into a more complicated form.
>>
>> The idea is that the simpler form would be more suited to operational
>> processing, but the more complex form would have a fuller statement of
>> the formal semantics, that underwrites the operational semantics.
>>
>> The page on which I am working is:
>>
>> http://www.w3.org/2007/OWL/wiki/POWDER
>>
>>
>> One issue is that a typical POWDER document consists of one DR
>> (description of resources or something). Some POWDER documents consist
>> of more than one DR.
>>
>> A DR typically specifies the following:
>>    - validity dates, during which it is claimed
>>    - a set of resources defined by matching various properties of URIs
>>    - properties that each of those resources are claimed to
>> have, while
>> the DR is valid (e.g. being pornographic)
>>
>> Thus a DR can be seen as claiming a rdfs:subClassOf
>> relationship, during
>> validity dates.
>>
>> One way of handling this, in the single DR case, is to include the
>> subClassOf in the GRDDL result, make the validity dates refer to the
>> document itself (the information resource), so that outside
>> the validity
>> period the GRDDL result says that it is invalid, and hence
>> shouldn't be
>> believed; whereas during the validity period, the subClassOf triple is
>> asserted.
>>
>> /// aside
>> Another way of handling this is to move all the complexity of validity
>> and subClassOf etc. into the text of the definition of DR, and use a
>> 'semantic extension' as the formal implementation ....
>> /// i don't really like that, since it's pushing the maths past its
>> design  limitations.
>>
>> ====
>>
>> Here is an XSLT1 implementation sketch, for multiple DRs in a
>> single file.
>>
>> The namespace is used to encode (an upper bound for) the
>> number of DRs.
>> e.g.
>>
>> http://example.org/powder?10
>>
>> can have no more than 10 DRs in it, whereas
>> http://example.org/powder?1000
>>
>> can have 1000 DRs
>>
>> The GRDDL result for
>>
>> http://example.org/powder?N
>>
>> provides N different GRDDL transforms for the namespace, the i-th
>> transform selecting the i-th DR in the document and transforming it.
>>
>> The result of the i-th transform includes the validity triples for the
>> ith DR and the subClassOf triple, which should only be believed if the
>> DR is valid.
>>
>> The intended reading is that the GRDDL results including
>> invalid DRs are
>> filtered, and only the GRDDL results with valid DRs are beleived.
>>
>> One way of achieving this is to attach the validity to the information
>> resource itself, e.g. a GRDDL result of
>>
>>    <rdf:Description rdf:about="">
>>       <wdr:validFrom>2007-01-01</wdr:validFrom>
>>       <wdr:validUntil>2007-07-07</wdr:validUntil>
>>    </rdf:Description>
>>
>> would describe a current invalid information resource, and hence,
>> pragmatically not useful.
>>
>> In this way, an application would have many different GRDDL results,
>> some describing a valid information resource, some not, and it is
>> expected to act on the merge of the GRDDL results describing a valid
>> information resource.
>>
>> Jeremy
>>

-- 
Phil Archer
Chief Technical Officer,
Family Online Safety Institute
w. http://www.fosi.org/people/philarcher/

Received on Friday, 18 January 2008 16:14:38 UTC