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

Re: ACTION-49: C14n 1.1 Illustrate proposed changes by example

From: Sean Mullan <Sean.Mullan@Sun.COM>
Date: Tue, 19 Jun 2007 17:47:16 -0400
To: Konrad Lanz <Konrad.Lanz@iaik.tugraz.at>
Cc: XMLSec <public-xmlsec-maintwg@w3.org>
Message-id: <46784EE4.7010007@sun.com>

Hi Konrad,

I agree with the technical basis for the change. May I suggest some
changes (prefixed with Comment:) to the text to make it a little more

Comment: In #1, break up first sentence into two sentences.

1. The input buffer is initialized with the now-appended path components
.  Replace occurrences of "//" in the input buffer with "/" until no
more occurrences of "//" are in the input buffer. If the input buffer
starts with a root slash "/" the output buffer is initialized with this
root slash "/" otherwise with the empty string.

Comment: Break up A into two bullets (I call them A1 and A2, but it
really should be A and B and the rest of the list moves down a letter).
I also tweaked the wording in A2 to make it more clear to me (but please
check - hopefully I didn't change the meaning)

A1.  If the input buffer begins with a prefix of "./", then remove that
prefix from the input buffer ; otherwise,

A2. if the input buffer begins with a prefix of "../" and the output
does not contain the root slash "/" only, then move this prefix to the
end of the output buffer else remove that prefix  ; otherwise,

Comment: C needs to be broken up into several sentences or sub-bullets.
It is too long and hard to follow.

C. if the input buffer begins with a prefix of "/../" or "/..", where
".." is a complete path segment, then replace that prefix with "/" in
the input buffer and if also the output buffer is empty, last segment in
the output buffer equals "../" or "..", where ".." is a complete path
segment, then append ".." or "/.." for the latter case respectively to
the output buffer else remove the last segment and its preceding "/" (if
any) from the output buffer; otherwise,

Comment: Break up D into two bullets:

D1. if the input buffer consists only of ".", then remove that from the
input buffer; otherwise,

D2. if the input buffer consists only of ".." and the output buffer does
not contain only the root slash "/", then move the ".." to the output
buffer else delete it; otherwise,

This should close my action item #37.


Konrad Lanz wrote:
> Dear all,
> A simple example should illustrate the need to change the current text:
> Remove_Dot_Segments("no/../") did evaluate to "/" but should evaluate to
> the no-op (i.e. "" or null) .
> Remove_Dot_Segments("no/../yes") did evaluate to "/yes" but should
> evaluate to "yes".
> Remove_Dot_Segments("../")  should also equal to
> Remove_Dot_Segments("..")  resulting in  "../".
> Other examples can be derived when trying the Exmples in
> http://lists.w3.org/Archives/Public/public-xmlsec-maintwg/2007May/att-0044/Apendix.html.
> The proposed changes relate to the so called '* several changes as in
> "Remove Dot Segments" ... (see Apendix)' in section 2.4 cf.
> "http://www.w3.org/TR/xml-c14n11/#DocSubsets" referring to the Appendix
> "http://www.w3.org/TR/xml-c14n11/#appendix".
> The proposed changes are outlined in :
> http://lists.w3.org/Archives/Public/public-xmlsec-maintwg/2007May/att-0044/Apendix.html
> http://lists.w3.org/Archives/Public/public-xmlsec-maintwg/2007May/0044.html
> In the Attachment is an image showing the difference between
> "http://www.w3.org/TR/xml-c14n11/#appendix" and
> "http://lists.w3.org/Archives/Public/public-xmlsec-maintwg/2007May/att-0044/Apendix.html".
> Blue text indicates additions. Deletions are indicated on the right side
> (Glöscht is German for deleted).
> some more points:
> * When copy pasting the edits  I must have missed an important edit in
> (2 C.) maintaining relative URI references - the following test case
> indicates it's need .
> Remove_Dot_Segments("no/.././/pseudo-netpath/seg/file.ext") did evaluate
> to "/pseudo-netpath/seg/file.ext" but should be
> "pseudo-netpath/seg/file.ext"
> s/remove the last segment and its preceding "/" (if any) from the output
> buffer/remove the last segment and its preceding "/" (if any) from the
> output buffer and if hereby the first character in the outputbuffer was
> removed and it was not the root slash then delete a leading slash from
> the input buffer/
> I'm happy to take an Action to update my proposal for early CR Feedback.
> * btw. (editorial Change) there is a typo in section 2.4 s/Apendix/Appendix/
> Konrad
> -- 
> 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, 19 June 2007 21:47:24 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 19:58:42 UTC