match_mode plus a
list of rules.
Match modes
| Mode | Logic |
|---|---|
any | At least one rule matches (OR). |
all | Every rule matches (AND). |
composite | Custom combination (typically a data-source gate AND a filename/header test). |
Rule types
| Type | Field | Meaning |
|---|---|---|
data_source | codes (string[]) | Restrict the spec to files coming from specific source systems. |
filename | pattern (string) | Exact filename match. |
filename_matches | pattern (regex) | Filename matches a regular expression (e.g. "(?i)tickets" — (?i) = case-insensitive). |
columns | columns (string[]) | The file’s columns must match this list exactly. |
header_contains | columns (string[]) | The header row must contain all of these columns (subset, order-independent). |
sheet_name | pattern (string) | An Excel sheet name matches exactly. |
data_source codes
The codes array uses the canonical data-source identifiers, including:
A composite example
When several specs could match, the winner is chosen by
priority then spec_version
— see Anatomy → priority.
