- From: Joseph Reagle <reagle@w3.org>
- Date: Thu, 10 Jan 2002 18:45:43 -0500
- To: Paul Denning <pauld@mitre.org>, xmldsig <w3c-ietf-xmldsig@w3.org>
- Cc: <xml-dist-app@w3.org>
[Resulting document:
http://www.w3.org/Signature/Drafts/xml-exc-c14n
$Revision: 1.27 $ on $Date: 2002/01/10 20:09:49 $ GMT by $Author: reagle $
]
Thank you for your comments Paul!
Paul Denning wrote:
>As discussed in the telecon, here is additional comments on Exclusive XML
>Canonicalization [4]:
>Add a section 2.3 that uses actual SOAP messages as an example.
I considered this might be useful as an informative appendix and reviewed [a] for examples (1-5) that would be useful to show a payload being selected via XPath and exc-c14n However, things are relatively straightforward. I'm not sure it would demonstrate anything more about exc-c14n or SOAP over that which is already shown in the very examples that try to simply demonstrate some of the concepts involved. (See end of email for example.)
[a] http://www.w3.org/TR/soap12-part0/
>Also, section 1.1 terminology, could use examples to illustrate apex node
>and orphan node.
Ok, please see simple (ps-tree like) diagram and description now in the spec.
>In section 2.2, the 3rd example uses a namespace prefix "ns3", which I
>think should be "n3". See <ns3:stuff> within <n1:elem2 ....
Fixed.
>Section 3, should reinforce that the begins with "One method for
>implementing ..." is non-normative.
/+(non-normative)+/
>I am still collecting my thoughts on other ideas triggered by reading this
>document, but these are more concerned with words we should add to
>SOAP 1.2 documents, rather than anything additional for XML
>Encryption WG documents. For example,
I'm interested in the reslolution of the issues you identified for the XP WG? Have the been addressed?
__
I took the example 1, selected the content of the env:Header. [1] the result being [2].
c14n_nodelist = xpath.Evaluate('(//. | //@* | //namespace::*)[ancestor::env:Header]', context=con)
(Note that the example in the spec isn't well-formed. (For example, the closing m:reference tag is missing a prefix. There were other problems I can't identify and maybe were related to my cut-paste from the browser...)
In the result you see that m:reservation now has the env: declaration, and some of the attributes/ns nodes have been re-ordered but that is already shown in the spec.
[1]
eg3 = """<?xml version='1.0' ?>
<env:Envelope xmlns:env="http://www.w3.org/2001/12/soap-envelope">
<env:Header>
<m:reservation xmlns:m="http://travelcompany.example.org/reservation"
env:actor="http://www.w3.org/2001/12/soap-envelope/actor/next"
env:mustUnderstand="true">
<m:reference>uuid:093a2da1-q345-739r-ba5d-pqff98fe8j7d</m:reference>
<m:dateAndTime>2001-11-29T13:20:00.000-05:00</m:dateAndTime>
</m:reservation>
<n:passenger xmlns:n="http://mycompany.example.com/employees"
env:actor="http://www.w3.org/2001/12/soap-envelope/actor/next"
env:mustUnderstand="true">
<n:name>John Q. Public</n:name>
</n:passenger>
</env:Header>
<env:Body>
<p:itinerary xmlns:p="http://travelcompany.example.org/reservation/travel">
<p:departure>
<p:departing>New York</p:departing>
<p:arriving>Los Angeles</p:arriving>
<p:departureDate>2001-12-14</p:departureDate>
<p:departureTime>late afternoon</p:departureTime>
<p:seatPreference>aisle</p:seatPreference>
</p:departure>
<p:return>
<p:departing>Los Angeles</p:departing>
<p:arriving>New York</p:arriving>
<p:departureDate>2001-12-20</p:departureDate>
<p:departureTime>mid morning</p:departureTime>
<p:seatPreference/>
</p:return>
</p:itinerary>
<q:lodging xmlns:q="http://travelcompany.example.org/reservation/hotels">
<q:preference>none</q:preference>
</q:lodging>
</env:Body>
</env:Envelope>
"""
[2]
<m:reservation xmlns:env="http://www.w3.org/2001/12/soap-envelope" xmlns:m="http://travelcompany.example.org/reservation" env:actor="http://www.w3.org/2001/12/soap-envelope/actor/next" env:mustUnderstand="true">
<m:reference>uuid:093a2da1-q345-739r-ba5d-pqff98fe8j7d</m:reference>
<m:dateAndTime>2001-11-29T13:20:00.000-05:00</m:dateAndTime>
</m:reservation>
<n:passenger xmlns:env="http://www.w3.org/2001/12/soap-envelope" xmlns:n="http://mycompany.example.com/employees" env:actor="http://www.w3.org/2001/12/soap-envelope/actor/next" env:mustUnderstand="true">
<n:name>John Q. Public</n:name>
</n:passenger>
--
Joseph Reagle Jr. http://www.w3.org/People/Reagle/
W3C Policy Analyst mailto:reagle@w3.org
IETF/W3C XML-Signature Co-Chair http://www.w3.org/Signature/
W3C XML Encryption Chair http://www.w3.org/Encryption/2001/
Received on Thursday, 10 January 2002 18:48:52 UTC