xsd:listtype is used to model a space-separated list
of values of a given type. This type is mapped to a linked-list type if
its length is unbounded, or an array type if its length is bounded. The
OSRTDListtype (run-time doubly linked list) is
the type used for repeating sequences such as this. This list type can
be used with the rtxDListrun-time
functions for building and manipulating lists. See the Doubly-Linked List Utility Functionssection
for more details.
In the case of C++, the built-in OSRTDListClassor OSRTObjListClasstype is used. These classes extend the C OSRTDList structure and add constructors and methods for adding, finding, and removing items from the list. The generated C++ code contains overloaded versions of these methods that correspond to the specific type of the element within the list.
The general C and C++ mapping for an XSD list type is as follows: