

The name portion of the fullname of named types, record field names, and enum symbols must:Ī namespace is a dot-separated sequence of such names. Fields and enum symbols across scopes are never equal. Equality of fields and enum symbols is defined on the name of the field/symbol within its scope (the record/enum that defines it). Record fields and enum symbols have names as well (but no namespace). Equality of names is defined on the fullname. Each has a fullname that is composed of two parts a name and a namespace, separated by a dot. aliases: a JSON array of strings, providing alternate names for this field (optional).įor example, a linked-list of 64-bit values may be defined with:.For more details on how this is used, see the sort order section below. Valid values are “ascending” (the default), “descending”, or “ignore”. order: specifies how this field impacts sort ordering of this record (optional).Avro encodes a field even if its value is equal to its default. Default values for bytes and fixed fields are JSON strings, where Unicode code points 0-255 are mapped to unsigned 8-bit byte values 0-255. Default values for union fields correspond to the first schema in the union. Permitted values depend on the field’s schema type, according to the table below. The presence of a default value does not make the field optional at encoding time. default: A default value for this field, only used when reading instances that lack the field for schema evolution purposes.doc: a JSON string describing this field for users (optional).name: a JSON string providing the name of the field (required), and.Each field is a JSON object with the following attributes: fields: a JSON array, listing fields (required).aliases: a JSON array of strings, providing alternate names for this record (optional).

