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 Thursday, 17 January 2008 18:43:12 UTC