Re: What is the difference between a "struct" and an "array" in the e dge case?

 Kevin,
 first, I apologize for taking so long to write this.
 It is true that SOAP Encoding document is not fully
self-descriptive. It may not be a problem, though, see below.

 First, let me summarize the possible ambiguities:

 1) There is no difference between an empty simple value and a 
compound value with no members.
 2) One cannot tell whether a struct is not, in fact, an array or 
a generic.
 3) One cannot tell whether an array without array 
metainformation is not, in fact, a generic, or in some cases a 
struct.
 4) In some cases, one cannot tell whether a generic is not, in 
fact, a struct.
 5) One cannot tell whether a generic is not, in fact, an array.

 This is a problem unless we expect the receiver to know the
structure of the data (to have some form of schema for the data).  
SOAP 1.2 doesn't provide any formal schema language for its data
model because it didn't seem necessary (the applications will
somehow manage). It is my understanding that SOAP expects other 
parties to provide the information necessary for understanding 
SOAP Encoding data instances. For example, WSDL 1.1 has the 
so-called "encoded" use of XML Schema schemas that is used 
exactly for this.

 Personally, I think that the party providing the data model
should also provide a way to specify schemata in that data model,
but if the rest of the world thinks otherwise, I won't stand in
the way. 8-)

 Best regards,

                   Jacek Kopecky

                   Senior Architect, Systinet Corporation
                   http://www.systinet.com/



On Fri, 28 Jun 2002, Kevin Johnsrude wrote:

 > 
 > In SOAP 1.2, 3.1.2 "Encoding compound values" [1], is there any way to
 > distinguish between a "struct" and an "array" that has neither an "itemType"
 > nor an "arraySize" attribute?  Note that this appears to be permitted per
 > item 3.
 > 
 > [1] http://www.w3.org/TR/2002/WD-soap12-part2-20020626/#complexenc
 > 
 > Cheers,
 > Kevin Johnsrude
 > Rogue Wave Software, www.roguewave.com
 > 

Received on Wednesday, 3 July 2002 13:00:00 UTC