Catalog

Countries, languages, currencies and continents from curated reference data. See all field types and the options every field takes.

Catalog types draw whole records from curated reference data kept by Ghost Bakery. Pick one column with value, several coherent columns of the same record with columns, or list every matching record once with all: true. The catalog page lists each type's columns, groups and sizes, and which output languages are complete.

g20.yaml
version: "1"
output: { language: deu, format: csv }   # no quantity: the list size is used
fields:
  - name: land
    type: country
    columns: [name, iso3, population]    # -> land_name, land_iso3, land_population
    group: G20
    all: true

Rules that apply to every catalog type:

  • Catalog fields must be top-level, not inside json, person or contact.
  • Each column costs like one field, so the example above costs 3 × 19 records plus the usual overhead.
  • Reference data is edited live: the same recipe can produce different output after an update.

country

Sovereign states and territories with ISO codes, currency, calling code and population.

Parameter Values Default Description
value name, short_name, official_name, iso3, iso2, numeric, continent, currency, calling_code, population, official_languages name Column to emit. Localized columns follow output.language. Exclusive with columns.
columns list of column names Several columns of the same record, written as flat fields <name>_<column>.
group text Restrict to a group such as G20, EU, MERCOSUR, BRICS or OECD.
parent AF, AN, AS, EU, NA, OC, SA Restrict to one continent.
all boolean false Emit every matching record once instead of sampling. The list size replaces output.quantity. At most one field per recipe.
order name, code, random name With all: true: name (sorted for the output language), code or random.

Also takes the common options.

country.yaml
- { name: country, type: country, value: short_name }

language

Languages with ISO 639 codes and native names.

Parameter Values Default Description
value name, native_name, iso3, iso1 name Column to emit. Localized columns follow output.language. Exclusive with columns.
columns list of column names Several columns of the same record, written as flat fields <name>_<column>.
all boolean false Emit every matching record once instead of sampling. The list size replaces output.quantity. At most one field per recipe.
order name, code, random name With all: true: name (sorted for the output language), code or random.

Also takes the common options.

language.yaml
- { name: language, type: language, value: native_name }

currency

Currencies with ISO 4217 codes, symbols and minor units.

Parameter Values Default Description
value name, iso3, numeric, symbol, minor_units name Column to emit. Localized columns follow output.language. Exclusive with columns.
columns list of column names Several columns of the same record, written as flat fields <name>_<column>.
all boolean false Emit every matching record once instead of sampling. The list size replaces output.quantity. At most one field per recipe.
order name, code, random name With all: true: name (sorted for the output language), code or random.

Also takes the common options.

currency.yaml
- { name: currency, type: currency, value: iso3 }

continent

The seven continents.

Parameter Values Default Description
value name, code name Column to emit. Localized columns follow output.language. Exclusive with columns.
columns list of column names Several columns of the same record, written as flat fields <name>_<column>.
all boolean false Emit every matching record once instead of sampling. The list size replaces output.quantity. At most one field per recipe.
order name, code, random name With all: true: name (sorted for the output language), code or random.

Also takes the common options.

continent.yaml
- { name: continent, type: continent, value: code }