Skip to main content
Marks a topic as an abstract template. Template topics cannot be used directly — they must be extended by another topic using the extends property. This enables reusable topic patterns and inheritance. Template topics have relaxed model validation, meaning missing tables or columns will not cause errors. This allows you to define abstract structures that are completed by the extending topic. Refer to this community article for more information. When a non-template topic extends a template topic, it inherits all of the template’s attributes and can override or add to them.

Syntax

template: true/false

Properties

template
boolean
Controls whether the topic is treated as an abstract template. When set to true, the topic cannot be used directly and must be extended by another topic. Omni will also disable model validation for the topic.

Examples

template_topic
base_view: users
template: true

default_filters:
  status:
    is: active
extended_topic
base_view: users
extends: [template_topic]

# Inherits default_filters from template_topic
# Can override or add additional attributes
joins:
  orders: {}