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

Re: Test Case with xml-dsig

From: Norman Walsh <Norman.Walsh@Sun.COM>
Date: Mon, 07 Feb 2005 16:59:25 -0500
To: John Boyer <JBoyer@PureEdge.com>
Cc: Joseph Reagle <reagle@mit.edu>, Gabe Wachob <gwachob@wachob.com>, public-xml-id@w3.org, w3c-ietf-xmldsig@w3.org
Message-id: <878y60qbeq.fsf@nwalsh.com>
/ John Boyer <JBoyer@PureEdge.com> was heard to say:
|>That's not strictly true. It's possible to introduce xml:id
|>processing into the XML stack at or just after the parsing process,
|>producing an XPath 1.0 data model in which all attributes named xml:id
|>are of type ID irrespective of whether or not a DTD or schema is used.
|>In that case also, XPath supports xml:id.
|
| Yikes, I would argue that introduing xml:id into the stack amounts to
| not producing an XPath 1.0 conformant data model.  XPath 1.0 does not
| support xml:id, so introducing it would result in a c14n that does not 
| conform to the recommendation.  The addition of xml:id creates something 
| that requires no interface modifications to query the resulting infoset, 
| but an xpath 1.0 data model it isn't.  The xpath 1.0 data model states
| that identified elements are identified by attributes declared to be
| of type ID ** in the DTD **.

I see your point and certainly I think it would be unwise to imagine
that inserting an xml:id processor at a low level in your stack would
have no impact on your applications, especially applications that
involve security or digital signatures.

But I think there's room in the XPath spec to justify the addition of
such a processor. In particular, Appendix B says:

  The unique ID of the element node comes from the children property
  of the attribute information item in the attributes property that
  has an attribute type property equal to ID.

and one of the mechanisms for an xml:id processor to report the IDness
of xml:id attributes to the application that calls it is by changing
attribute type property of the xml:id attribute in the Infoset.

One of my personal motivations for xml:id was to allow documents that
don't have any DTD or schema to make use of the id() function in
XPath. (In particular to avoid the sorts of problems I had in the
early days of the DocBook stylesheets when I was using the id()
function before support for keys was widespread.)

                                        Be seeing you,
                                          norm

-- 
Norman.Walsh@Sun.COM / XML Standards Architect / Sun Microsystems, Inc.
NOTICE: This email message is for the sole use of the intended
recipient(s) and may contain confidential and privileged information.
Any unauthorized review, use, disclosure or distribution is prohibited.
If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.

Received on Monday, 7 February 2005 22:00:24 GMT

This archive was generated by hypermail 2.2.0 + w3c-0.30 : Monday, 7 February 2005 22:00:29 GMT