- From: Jacek Kopecky <jacek@systinet.com>
- Date: Wed, 6 Feb 2002 14:05:42 +0100 (CET)
- To: Henrik Frystyk Nielsen <henrikn@microsoft.com>
- cc: <xml-dist-app@w3.org>
Henrik, I think the proposal as you stated it below effectively states that an omitted member is a NULL, am I right? Why I think so: in our data model there are concrete values and NULLs. A concrete value is serialized as the value per other rules. A NULL then may be serialized with xsi:nil or as omission. There is nothing else that can be serialized with xsi:nil or as omission - therefore an omission is a NULL. Btw, if it is indeed so, I like this proposal very much because NULLs can be taken for default values by the application - out of scope of SOAP Encoding. Regards, Jacek Kopecky Senior Architect, Systinet (formerly Idoox) http://www.systinet.com/ On Tue, 5 Feb 2002, Henrik Frystyk Nielsen wrote: > > The ETF was tasked with coming up with a recommendation for issue 177 > [1] which points out an apparent conflict in the SOAP 1.2 spec part 2. > This mail is an attempt on my behalf to capture the discussion that has > happened within the ETF and to propose a word change to remove the > conflict. I apologize if I have failed to capture all aspects of the > discussion or deviate from the understanding of the other parties in the > ETF. > > The respective pieces of text are: > > (section 3.1, rule #8) [3] "A NULL value or a default value MAY be > represented by omission of the accessor element. A NULL value MAY also > be indicated by an accessor element containing the attribute xsi:nil > with value '1 or true' [...]" > > and > > (section 3.6 [4]) "An omitted accessor element implies either a default > value or that no value is known. The specifics depend on the accessor, > method, and its context. For example, an omitted accessor typically > implies a Null value for polymorphic accessors (with the exact meaning > of Null accessor-dependent). Likewise, an omitted Boolean accessor > typically implies either a False value or that no value is known, and an > omitted numeric accessor typically implies either that the value is zero > or that no value is known." > > The issue is stated as follows: The first statement seems to indicate > that there is a difference between NULL and a default value whereas the > latter does not. > > Analysis and Proposal: > > While there is and has been a lot of discussion about what NULL means, > the SOAP encoding does not need to answer questions of meaning. Rather, > it merely needs to provide rules for a transformation between the data > model described in part 2, section 2 and some encoding--in this case the > particular encoding that we provide in part 2, section 3. > > Default values are not part of our data model. They are at a higher > semantic level. It is sufficient for us to describe an encoding > serialization that permits omitted values and null values. We can leave > it to higher levels to decide whether and under what circumstances an > omitted or null value is a signal that the reader should infer a default > value or other out-of-band behavior. We can, therefore, either remove > section 3.6 which is already very loose or downgrade it to a note rather > than having it as an independent section. > > Regarding nulls and omitted values, some languages and data models make > a distinction between these and others do not. As indicated in part 2, > section 2, we need to accommodate both. That means that we need to > permit that omission may result in a serialized form that is distinct > from NULL, or that it may not. > > The proposal for solving this issue is as follows: > > 1) Simplify section 3.1 rule #8 to say: "A NULL value MAY be represented > by omission of the accessor element or by an accessor element containing > the attribute xsi:nil with value True. > > 2) Remove section 3.6 or downgrade it to a note in section 2 talking > about application-specific interpretation of instances of the data > model. > > Thank you, > > Henrik Frystyk Nielsen > mailto:henrikn@microsoft.com > > [1] http://www.w3.org/2000/xp/Group/xmlp-issues#x177 > [2] http://lists.w3.org/Archives/Public/xml-dist-app/2002Jan/0057.html > [3] http://www.w3.org/2000/xp/Group/1/10/11/soap12-part2.html#encrules > [4] http://www.w3.org/2000/xp/Group/1/10/11/soap12-part2.html#N750 >
Received on Wednesday, 6 February 2002 08:05:44 UTC