W3C home > Mailing lists > Public > public-xmlsec-maintwg@w3.org > August 2007

Re: FW: Clarification sought re C14N11

From: Konrad Lanz <Konrad.Lanz@iaik.tugraz.at>
Date: Tue, 21 Aug 2007 23:28:24 +0200
Message-ID: <46CB58F8.8080405@iaik.tugraz.at>
To: Thomas Roessler <tlr@w3.org>, Sean Mullan <Sean.Mullan@Sun.COM>
CC: XMLSec <public-xmlsec-maintwg@w3.org>, public-xml-core-wg <public-xml-core-wg@w3.org>
Dear all,

I searched the list archive, and found the first draft for section 2.4
in June 2006 [4]. Unfortunately I cannot exactly recall the intention of
that change. Nonetheless, looking at it today and todays wording of the
xml:base fix up, it makes perfect sense to revert this change.

> The relevant change is in section 2.4, where the language was changed
> from:
> 
> The processing of an element node E MUST be modified slightly when an
> XPath node-set is given as input and the element's parent is omitted
> from the node-set.
> 
> to:
> 
> The processing of an element node E MUST be modified slightly when an
> XPath node-set is given as input and some of the element's ancestors
> are omitted from the node-set.

Thus, may I propose to do this fix together with the feedback from CR
Testing ?

Looking at the current text of c14n 1.1 the reverting should not harm
the processing of xml:base. It says

"... ancestor axis contains successive elements E1...En that are omitted
and E=En+1 is included"

implying that the parent (En) has been omitted.


There is however a second point I'd like to discuss here, which needs
some introduction and an example:

[4] was focused on the xml:base fix-up and hence lacked an update to the
ancestor axis examination step for simple inheritable attributes

cf.: "This examination is performed until the first rendered occurrence
exclusive ..."

As far as I recall intended to fix the idiosyncrasy of unnecessary
copying of inheritable xml:base attributes in c14n.

Now, please consider the following example.

<e1 xml:lang="de" xml:base="http://www.example.org">
  <e2>
    <e3>
      <e4/>
    </e3>
  </e2>
</e1>

With <e2> being omitted this would result in

<e1 xml:lang="de" xml:base="http://www.example.org">
  <e3 xml:lang="de" (xml:base="http://www.example.org")>
      <e4/>
    </e3>
</e1>

(xml:base="http://www.example.org") is written in parenthesis to show
that it wouldn't appear in c14n 1.1 .
Without (xml:base="http://www.example.org") it should be the result
according to the text in c14n 1.0 .

The following however would be more natural and may be an option for
future versions of c14n.

<e1 xml:lang="de" xml:base="http://www.example.org">
  <e3>
      <e4/>
    </e3>
</e1>

The XML Security Maintenance Group might want to change this
idiosyncrasy in a version post c14n 1.1 .

Keeping this idiosyncrasy in both versions C14n 1.0 and 1.1 however
remains compatibility for documents not using xml:base or xml:id.

But then a question of consistency arises and we may want to have
xml:base also being copied into an orphan. Just to be consistent with
the other attributes in the xml namespace although it is not really
necessary.

This may result in the following sentence being removed from the
current c14n 1.1 text.

> Then fix-up is only performed if at least one of E1 ... En has an
> xml:base attribute.

Assuming others also feel it's worth to achieve consistency here, may I
propose to consider such a change also as a result from CR-Testing ?

Any Thoughts?

Konrad

Grosso, Paul schrieb:
> Forwarding to XML Core with permission.
> 
> paul
> 
> -----Original Message----- From: Thomas Roessler [mailto:tlr@w3.org]
>  Sent: Tuesday, 2007 August 21 10:55 To: Grosso, Paul;
> Norman.Walsh@Sun.COM Cc: w3c-xml-cg@w3.org; Sean.Mullan@Sun.COM 
> Subject: Clarification sought re C14N11
> 
> Paul, Norm,
> 
> Sean Mullan (CCed) noticed [3] that the C14N 1.1 CR [1] can be read 
> in a way that would copy inheritable attributes to all children of an
> element if that element's parent have been removed. That behavior 
> would be different from the one in C14N 1.0 [2].
> 
> The relevant change is in section 2.4, where the language was changed
> from:
> 
> The processing of an element node E MUST be modified slightly when an
> XPath node-set is given as input and the element's parent is omitted
> from the node-set.
> 
> to:
> 
> The processing of an element node E MUST be modified slightly when an
> XPath node-set is given as input and some of the element's ancestors
> are omitted from the node-set.
> 
> We are wondering whether this is an intentional change, and the 
> behavior sketched at [3] is desired, or whether this was an 
> inadvertent change, and the text is meant to describe the behavior 
> known from C14N 1.0.  Preliminary discussion seems to suggest that 
> people are leaning toward the latter interpretation; in that case, it
> might be worth cleaning up the text while considering CR feed-back.
> 
> Your guidance would be most welcome, to ensure that the right kind of
> guidance is provided to implementors in preparation for the interop
> event.
> 
> 1. http://www.w3.org/TR/2007/CR-xml-c14n11-20070621/ 2.
> http://www.w3.org/TR/xml-c14n 3. 
> http://lists.w3.org/Archives/Public/public-xmlsec-maintwg/2007Aug/0049.h
>  tml
> 
> Regards,


-- 
Konrad Lanz, IAIK/SIC - Graz University of Technology
Inffeldgasse 16a, 8010 Graz, Austria
Tel: +43 316 873 5547
Fax: +43 316 873 5520
https://www.iaik.tugraz.at/aboutus/people/lanz
http://jce.iaik.tugraz.at

Certificate chain (including the EuroPKI root certificate):
https://europki.iaik.at/ca/europki-at/cert_download.htm



Received on Tuesday, 21 August 2007 21:28:51 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 8 January 2008 14:22:01 GMT