Code Lists
Reusable option lists for attributes and controlled values in templates.
Code lists
Code lists are reusable sets of { code, label } values. They give authors and integrations a shared vocabulary for controlled choices such as language, country, document type, or organization-specific categories.
How they are used
Attributes can be bound to a code list. When an attribute uses a code list, editors see the allowed values and integrations can still send the stable code. Hidden entries are excluded from pickers but remain valid, which lets teams phase values out without breaking older content.
An attribute has one value constraint model at a time:
- Free format
- Inline values
- A code-list binding
Sources
Epistola supports inline code lists and URL-backed lists. URL-backed lists keep their last known entries when a refresh fails and record the error so operators can fix the source without immediately breaking authoring.
Classpath-backed lists are reserved for system and bundled content. The system catalog provides common lists such as locale, language, and country.
Catalog behavior
Code lists are catalog resources. Authored catalogs can release them together with templates, stencils, themes, fonts, and assets. Subscribed catalogs are read-only inside the consuming tenant.