Skip to content
This repository has been archived by the owner on Oct 28, 2024. It is now read-only.

Commit

Permalink
Updated list
Browse files Browse the repository at this point in the history
  • Loading branch information
roll committed Apr 3, 2024
1 parent d7466ff commit 954a220
Showing 1 changed file with 6 additions and 7 deletions.
13 changes: 6 additions & 7 deletions content/docs/specifications/table-schema.md
Original file line number Diff line number Diff line change
Expand Up @@ -454,18 +454,17 @@ If supported, values `MUST` be natively represented by a data format. If not sup

### `list`

The field contains data that is an ordered one-level depth collection of primitive values with a fixed item type.
The field contains data that is an ordered one-level depth collection of primitive values with a fixed item type. In comparison to the `array` type, the `list` type is directly modelled on the concept of SQL typed collections.

**Native Representaiton**
The list field can be customised with this additional property:

If supported, values `MUST` be natively represented by a data format. If not supported, values `MUST` be represented as strings following the rules below.
- **itemType**: specifies the list item type in terms of existent Table Schema types. If present, it `MUST` be one of `string`, `integer`, `boolean`, `number`, `datetme`, `date`, and `time`. If not present, the default is `string`. A data consumer `MUST` process list items as it were individual values of the corresponding data type.

The field `MUST` contain a string with values separated by a delimiter which is `,` (comma) by default e.g. `value1,value2`. In comparison to the `array` type, the `list` type is directly modelled on the concept of SQL typed collections.
**Native Representaiton**

The list field can be customised with these additional properties:
If supported, values `MUST` be natively represented by a data format. If not supported, the field `MUST` contain a string with list items separated by a delimiter which is `,` (comma) by default e.g. `value1,value2`. The list items `MUST` be serialized in default format of the corresponding `itemType`. The delimiter can be customised with this additional property:

- **delimiter**: specifies the character sequence which separates, if [native representation](../glossary/#native-representation) is a string. If not present, the default is `,` (comma).
- **itemType**: specifies the list item type in terms of existent Table Schema types. If present, it `MUST` be one of `string`, `integer`, `boolean`, `number`, `datetme`, `date`, and `time`. If not present, the default is `string`. A data consumer `MUST` process list items as it were individual values of the corresponding data type. Note, that if [native representation](../glossary/#native-representation) is a string, only default formats are supported, for example, for a list with `itemType` set to `date`, items have to be in default form for dates i.e. `yyyy-mm-dd`.
- **delimiter**: specifies the character sequence which separates list items. If not present, the default is `,` (comma).

### `datetime`

Expand Down

0 comments on commit 954a220

Please sign in to comment.