W3C home > Mailing lists > Public > w3c-ietf-xmldsig@w3.org > January to March 2000

A "plug/play" URI/IDREF proposal

From: Gregor Karlinger <Gregor.Karlinger@iaik.at>
Date: Thu, 10 Feb 2000 10:07:31 +0100
Message-ID: <38A27FD3.F0082ABA@iaik.at>
To: ML W3C XML-Signature <w3c-ietf-xmldsig@w3.org>, "Joseph M. Reagle Jr." <reagle@w3.org>, Donald Eastlake <dee3@torque.pothole.com>, John Boyer <jboyer@uwi.com>
"Joseph M. Reagle Jr." wrote: 

> [...] I understand Eastlake (or others) might try to post a 
> plug/play proposal on URI/IDREF [...]

I have followed up the latest discussion about the URI/IDREF problem and
would like to present a proposal which is slightly different from what I
have posted in [1] and was referred to by Donald in [2]:

  1. Remove the 'IDREF' attribute from the Reference element.

  2. Allow the 'URI' attribute of the Reference element to be of type 'uri'
     as defined in XML Schema Part 2 [3]. This means the 'URI' attribute is
     a 'URI-Reference' and can have a 'fragment' part.

  3. Restrict the semantics of the 'fragment' part of the 'URI-Reference'
     to a single case: Only allow the XPointer 'bare name' shortcut as 
     defined in [4]. In other words: The content of the former 'IDREF' attribute
     is presented as the fragment part of the 'URI' attribute.

  4. All other means of selecting parts of an XML document can be expressed by
     XPath/XPointer transforms.


So what are the benefits of this changes?
-----------------------------------------

  a. The functionality of ID/IDREF is still supported.

  b. We don't need to define something like a 'clean-uri' type for the 'URI'
     attribute.

  c. Dsig implementations which - for some reasons - do not want to support 
     XPath/XPointer transforms need not to do so. They only have to support the 
     selection of an element by means of specifiying an ID attribute name.


Here are some examples of the extended 'URI' attribute:
-------------------------------------------------------

  'http://foo.com/bar.xml' - Selecting the external XML ressource 'http://foo.com/bar.xml'

  'http://foo.com/bar.xml#chapter1' - Selecting the element with ID attribute value
                                      'chapter1' of the external XML ressource
                                      'http://foo.com/bar.xml'
        
  '' - Selecting the XML ressource which will contain the signature

  '#chapter1' - Selecting the element with ID attribute value 'chapter1' of the  
                XML ressource which will contain the signature.


Gregor

-----

[1] http://lists.w3.org/Archives/Public/w3c-ietf-xmldsig/2000JanMar/0028.html
[2] http://lists.w3.org/Archives/Public/w3c-ietf-xmldsig/2000JanMar/0089.html
[3] http://www.w3.org/TR/xmlschema-2/#uri
[4] http://www.w3.org/TR/xptr#synth-2.1.2

-- 
---------------------------------------------------------------
Gregor Karlinger
mailto://gregor.karlinger@iaik.at
Institute for Applied Information Processing and Communications
Austria
---------------------------------------------------------------



Received on Thursday, 10 February 2000 04:09:07 GMT

This archive was generated by hypermail 2.2.0 + w3c-0.29 : Thursday, 13 January 2005 12:10:09 GMT