Note that wrapping records does not increase serialization size.  They may
require special handling to have the most compact in-memory representation
depending on the API in use.

On 3/23/11 6:34 AM, "Douglas Creager" <[email protected]> wrote:

>> Is there a way to structure a schema to support recursively nested
>>arrays, i.e. an arbitrary number of arrays within arrays?  As I haven't
>>found a way to reference an array/items "type" by name, I'm not sure
>>that its possible.  Anyone know any better?
>
>You need a wrapper record, to give you something that you can name:
>
>{
>  "type": "record",
>  "name": "foo",
>  "fields": [
>    { "name": "contents", "type": { "type": "array", "items": "foo" } }
>  ]
>}
>
>In general, you always need a record if you want a recursive type, since
>records are the only things that both (a) have names, and (b) can contain
>subschemas.
>
>­doug

Reply via email to