Re: [soapbuilders] Null values.
>The current spec in section 5.1 says that it MAY also be represented
> SOAP allows a number of options for how database (or programming
> language) nulls would be lexically represented. There is a long thread
> on this in the soapbuilders archives. I have recommended that a null be
> represented by omission of the corresponding element.
by adding the xsi:null attribute to the accessor. I would actually
prefer the xsi:null/nil attribute because then I know for sure that
it's not a client sending a corrupt message. If you leave out
the element which is null then echoString with no parameters should
behave the same as sending a "null string." Having the acessor
present with xsi:null="1" makes the situation clear.
- Noah writes:
>>> What I think needs clarification is in section 7.1  where it
>>> should say that the request as well as the response must be
>>> serialized as the root object of the graph if encoded according to
>>> section 5.
>I agree. Would it make sense to go a bit further and establish rules
>along the lines of:
>* (Chap 5) If no multi-refs are referenced, use of the root attribute
>optional. The lexical root of the tree is deemed a root of the objectIsn't it only when there is no "true root" of a serialization (for
example multiple interlinked multi-refs) that the root attribute may
have to be used to disambiguate the true root of an object graph? Also,
this might be special to object graphs as it wouldn't cause any problems
for an RDF graph, for example.
I agree that in the simple case of no multi-refs, the lexical root of
the tree is the root of the object graph as well.
>* (Chap 7) As you suggest: RPC request/response must be the root ofthe
>graph, and there can be only one root of the serialization (else fault)yup
>* (Chap 5 or 7, I'm not sure) Either in all uses of the encoding (chap5)
>or when used specifically for RPC (Chap 7 ...which would BTW apply tomulti-ref
>other encodings too...a good thing I think) "When references to
>objects are present an a serialization, the ROOT attribute must be usedto
>establish the root of the object graph." A concern I have about thisis
>that there might be problems when doing partial deserializations...youIf my statement above is true then it seems that this should be
>might be deserializing a tree, for my header it might only be a subtree
>(for graphs in which that makes sense), which one(s) need a ROOT
mentioned in section 7 as it implies object graphs. However, it seems
that the MUST requirement for use of the "root" attribute only applies
in the case of multiple, interlinked multi-refs. The graph may be
unambiguous even with multi-refs involved which seems to call for a for
a MAY in those cases, no?
>What do you think?Henrik