A list type is represented using an array. During decoding, the array will be created to be the exact size needed for the number of items in the list. During encoding, the entire array will be encoded into the list, which means that you must correctly size the array when populating it.

Example XSD:

   <xsd:simpleType name="IntList" >
      <xsd:list itemType="xsd:int" />

C# and Java:

      private IntList() {} 

      public static String encode(int[] value, XBContext xbContext) {...}

      public static int[] decode(String text, XBContext xbContext) {...}

Just as with the atomic types, a list type is represented using an array; the generated class only provides static coding methods.