Parser
Theparser object selects a reader (type) and configures it.
Common options
CSV options
encoding (e.g. utf-8, iso-8859-1), delimiter (,, ;, \t, |…), has_header.
Excel options
sheet_names (array, or null for all sheets), plus section_context for files
where data is grouped under section headers:
SAV options (Polaris)
sql_filename (path to the SQL dump inside the archive, e.g. 0-full.sql), tables
(table names to extract), extract_media (pull binary assets).
Column mapping
mapping.columns maps each source column to a target field and a Spark SQL type:
type is any Spark SQL type (it’s a free-form string, not a fixed enum). Common values:
STRING, INT, LONG, DOUBLE, TIMESTAMP.
Extra fields
Unmapped columns are handled byextra_fields.mode:
Validation
Guard rails applied after parsing:required_columns— must be present and non-null.min_rows— minimum row count.
Parsed columns then flow into the promotion pipeline,
where they’re transformed and written to silver/gold.

