# Data Parsing

## Content

Data parsing defines how raw data is interpreted and converted into table records during `fetch()`.
When a table is created, the `data` option may contain different data formats, such as:

* A JSON array
* A CSV string
* An XML string
* Column-oriented JSON data

The `schema` configuration controls how this raw data is transformed into a record collection that DataManager can operate on.
Data parsing consists of two parts:

* [Schema Type](/spreadjs/docs/features/data-manager/schema/data-parsing/schema-type) — Specifies how the raw data is parsed.
* [DataPath](/spreadjs/docs/features/data-manager/schema/data-parsing/datapath-of-schema) — Selects the record collection from the parsed result.

The parsing process follows this order:

1. The raw `data` is parsed according to `schema.type`.
2. The parsed result is resolved using `dataPath` (if specified).
3. The final resolved value must be an array of records.

Only after these steps does column modeling and other schema features take effect.
Data parsing does not define:

* Column behavior
* Data validation
* Formulas
* Hierarchical structure

Those capabilities are configured separately within `schema`.