- From: Asir S Vedamuthu <asirv@webmethods.com>
- Date: Tue, 12 Feb 2002 10:21:04 -0500
- To: "'Xml-Dist-App@W3. Org'" <xml-dist-app@w3.org>
- Cc: "Jacek Kopecky" <jacek@systinet.com>, "Marc Hadley" <marc.hadley@sun.com>, "Henrik Frystyk Nielsen" <henrikn@microsoft.com>
Issue 163 [1] In SOAP Encoding, unqualified attribute named 'id' and of type 'ID' per the XML 1.0 specification DOES NOT MEAN that it is of type ID !! For details, please refer to [1]. Analysis We considered three options, (a) DTD processing and an <!ATTLIST foo myid ID #REQUIRED> (b) Schema processing and an <xs:attribute name='myid' type='xs:ID' use='required' /> (c) SOAP 1.2 spec mandates that all attributes whose local name is ID and whose namespace name is http://www.w3.org/2001/12/soap-envelope are always of type ID in the http://www.w3.org/2001/XMLSchema namespace Option (a) and (b) are obviously ruled out by SOAP specs. (c) is the only option. But, (c) does not mean that it is of type XML 1.0 ID. 'Cos, type ID in the http://www.w3.org/2001/XMLSchema namespace is different from the XML 1.0 type ID. This means that implementations must use additional code to simulate XML 1.0 ID behavior. This analysis also applies to the unqualified attribute named 'ref' in SOAP Encoding. Proposal Adopt option (c) and issue a health warning that 'id' and 'ref' are not of the type XML 1.0 ID and IDREF respectively. This involves, --- Rewrite rule 5 of the 'The rules for serialization are as follows' [2] section as follows, FROM The value of the ref attribute information item MUST conform to the XML Specification[8] and the XML Schema Specification[4],[5]. TO The value of the ref attribute information item MUST conform to the XML Schema Specification[4],[5]. AND FROM "A multi-reference simple or compound value is encoded as an element containing a local, unqualified attribute named id and of type "ID" per the XML Specification [8]. A referencing accessor to this value is an empty element having a local, unqualified attribute named ref (see above), with the value of the corresponding id." TO "A multi-reference simple or compound value is encoded as an element containing a local, unqualified attribute named id and of type "ID" per the XML Schema Specification [4][5]. A referencing accessor to this value is an empty element having a local, unqualified attribute named ref (see above), with the value of the corresponding id." --- Issue a health warning - unqualified attributes 'id' and 'ref' are NOT of type XML 1.0 ID and IDREF respectively. This means, the following applies: (i) at the infoset level, the attribute information item will not have a proper value for [attribute type], [3] (ii) Document.getElementById(in DOMString elementId); will not execute as expected [4] (iii) XPath node-set id(object) will not execute as expected [5] .... [1] http://www.w3.org/2000/xp/Group/xmlp-issues.html#x163 [2] http://www.w3.org/2000/xp/Group/1/10/11/soap12-part2.html#encrules [3] http://www.w3.org/TR/xml-infoset/#infoitem.attribute [4] http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-getElBId [5] http://www.w3.org/TR/xpath#function-id Regards, Asir S Vedamuthu webMethods, Inc. 703-460-2513 or asirv@webmethods.com http://www.webmethods.com/
Received on Tuesday, 12 February 2002 10:15:13 UTC