W3C home > Mailing lists > Public > public-grddl-wg@w3.org > January 2008

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

From: Jeremy Carroll <jjc@hpl.hp.com>
Date: Fri, 18 Jan 2008 16:16:07 +0000
Message-ID: <4790D0C7.3010107@hpl.hp.com>
To: "Booth, David (HP Software - Boston)" <dbooth@hp.com>
CC: "public-grddl-wg@w3.org" <public-grddl-wg@w3.org>, "patrick.stickler@nokia.com" <patrick.stickler@nokia.com>, "chris@bizer.de" <chris@bizer.de>, Phil Archer <parcher@icra.org>

 > I am taken aback by this statement:
Oh - that bit wasn't meant to be controversial (the controversial bits 
were meant to do with named graphs!)

I'll reply on two fronts, first on grddl:transformation in RDF/XML, and 
second on powder (for which I was suggesting a different mechanism).


A: grddl:transformation in RDF/XML
==================================

I don't recall the conversation that you mention.

We actual have a test case showing the opposite:

http://www.w3.org/TR/grddl-tests/#grddlonrdf

You are correct that the grddl attribute causes a validation error on 
the RDF/XML.

B: Powder
=========

It is possible to serve an XML document as application/rdf+xml if it 
matches the typed node construct of RDF Syntax.
This typed node construct can be in any namespace, and so that namespace 
can have a GRDDL transform associated with it.
In this way a GRDDL transform can be associated with a namespace for a 
restricted class of RDF/XML documents.
Since this does not have either the ugly validation error or the 
additional typing associated with the grddl attribute on the RDF root 
element, it is preferable.

Jeremy





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
>>
>>
>>
>>
>>
>>
>>
>>
>>
> 
Received on Friday, 18 January 2008 16:16:43 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:39:12 UTC