I'd like to solicit opinions on this
suggestion:
We have been assuming we needed more
than just 1d array support, but this is now unclear.
We've pushed back on "top-down"
use of XML Schemas, i.e., DFDL must be used bottom up, and transformation
into the "logical form you wanted" is not our job. That is, the
DFDL Schema's logical organization is constrained (heavily) by the data
format.
We could take an exactly analogous position
with respect to multi-dimensional or other complex arrays.
The DFDL describes the representation,
and the sttructure of the DFDL schema will end up matching the shape of
the representation of the array. Transforming that into something that
looks and acts like a ordinary dense multi-dimensional array is a transformation
that is out-of-scope for us.
E.g., if the array is stored as a run-length
encoded vector, then it is DFDL's job to describe this run-length encoded
vector, but not to project/transform it so that it can be accessed in a
manner that hides the run-length encoding and makes it look like an ordinary
dense array.
(I actually believe hiding sparse array
implementations behind a dense-array facade is generally not advised. Algorithmically
you must operate on the sparce representation anyway for efficiency. )
Suggested Conclusion: we can just say
that we don't do multi-dimensional arrays because it is out-of-scope for
us.
Comments?
...mikeb