W3C home > Mailing lists > Public > xml-dist-app@w3.org > December 2001

Re: [soapbuilders] FEEDBACK REQUESTED - Issues regarding Array encoding for SOAP 1.2

From: Robert van Engelen <engelen@acm.org>
Date: Fri, 14 Dec 2001 12:07:16 -0500 (EST)
Message-Id: <200112141659.fBEGxIh06313@diablo.cs.fsu.edu>
To: soapbuilders@yahoogroups.com


* With regard to the usefulness of partially transmitted arrays:

Partially transmitted arrays _do_ have native support in programming
languages in contrast to what has been said before. Some languages,
notably Ada and Fortran 90, allow array declarations with non-zero
offsets. I have not seen SOAP implementations for Ada and Fortran 90
yet (or I may have missed the advertisements), but that doesn't mean
that p.t. arrays with offsets should just be removed for the purpose
of "cleaning up the spec".

An example stack dynamic array declaration in Ada is:

  A : array (5..N) of INTEGER;

So the offset is set to 5 and the array length is N-4 elements.
To serialize this array in SOAP, the offset information should
be preserved which is _vital_ information for
the receiving side to determine the ordering and indexing of the
elements. Without an offset, nil elements need to be transmitted
to pad the array up to the offset index. Not to mention what to
do when the offset is negative! Sure, you can come up with a solution
for this that uses some mapping type, but the simplicity of the
p.t. array is very useful here. 

* With regard to the usefulness of sparse arrays:

Examples of realistic uses of sparse arrays:
1. array slices a-la Fortran 90. These slices are segments of
   arrays which can be conveniently represented with sparse
   arrays in which only the elements in the slice will be transmitted.
   Basically, the array offset and size information is
   preserved for the receiving side to put the array slice 
   into place (like an update operation on a global array).

2. sparse matrix representation for numerical computations
   (maybe not so popular in business environments).
   We have an infrastruture for vector and matrix computations
   in SOAP. First of all, the elements of vectors matrices
   start at 1 (in mathematical terms) so we use p.t. array
   offsets for this. Secondly, we use the sparse array representation
   to communicate sparse matrices. Very, very, very useful to us!

- Robert

------------------------ Yahoo! Groups Sponsor ---------------------~-->
Break free. Great
American Smokeout

This group is a forum for builders of SOAP implementations to discuss implementation and interoperability issues.  Please stay on-topic.

To unsubscribe from this group, send an email to:


Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/ 
Received on Friday, 14 December 2001 12:34:22 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 22:01:17 UTC