complex types within complex types (arrays of records etc.)