Conditional Catalog Sets

Alation Cloud Service Applies to Alation Cloud Service instances of Alation

Customer Managed Applies to customer-managed instances of Alation

Important

You are viewing documentation for Classic Alation.

Conditional catalog sets allow you to dynamically group RDBMS objects (schemas, tables, or columns) based on user-defined name-matching rules. Instead of manually selecting individual objects into a set, you define criteria that Alation uses to automatically populate the set with matching objects. This ensures that catalog sets remain up-to-date as your catalog evolves:

  • Objects are automatically added to the set when they meet the defined conditions.

  • Through the set, you can modify field values across multiple catalog objects in a single action.

  • Any changes to the fields in the set are instantly applied to all its members.

To create and manage catalog sets, including bulk-editing field values for their members, you must have either Catalog Admin role or Server Admin role.

In this topic:

Create a Conditional Catalog Set

To create a conditional set:

  1. Open the Catalog Sets page.

  2. On the top right of the Catalog Sets page, click the Add icon.

    ../../_images/CatalogSets_AddNew.png

    The New Catalog Set dialog opens, with the Conditional type selected by default.

    ../../_images/CatalogSets_NewSetDialog.png
  3. From the Member Data Object Type list, select the type of RDBMS object that will form the basis of this set. Choose from:

    • Schema

    • Table

    • Column

    Note

    You cannot change the member data object type (schema, table, or column) after saving the new set.

  4. Click Create. The new conditional catalog set page opens on the Overview & Rules tab.

    ../../_images/CatalogSets_NewConditionalSetPage.png
  5. New catalog sets are initially untitled and appear as Untitled Catalog Set [Number]. Click the title to edit it and enter a meaningful name. Click outside the field to apply your changes.

  6. Click the Edit button for the Description field, enter a description, and click Save.

  7. Click the Edit button for Membership Rules. The Membership Rules pane expands. Membership rules define how objects of the selected type (schema, table, or column) are identified and grouped into the set.

  8. If you have selected Schema, you have the capability to use catalog sets to control the visibility of objects by hiding schemas and their child objects from the catalog. Select the Hide schemas and their children from Catalog and Search checkbox to make the schemas and their child objects undiscoverable by catalog users when they browse and search. Leave this checkbox clear to keep the catalog members visible.

  9. Configure the name matching rules based on the selected data object types:

    1. Define the rules for grouping catalog set members using Including and Excluding conditions. You can use both conditions simultaneously.

      • Use the fields under Including to specify criteria for including schemas.

      • Use the fields under Excluding to specify criteria for excluding schemas.

    2. By default, schemas from any data source are considered. To limit the set to specific data sources, click +Add next to the Data Source is field. A quick search widget opens.

      ../../_images/CatalogSets_SchemaRules_SearchDataSource_Neo.png
    3. Select a data source from the list or use the search box. You can select multiple data sources.

      Note

      Already selected data sources are not filtered out from the quick search list.

    4. By default, all schemas are considered to be part of the set. To limit the set to specific schemas, in the Schema name row, select a rule for matching schema names:

      ../../_images/CatalogSets_SchemaRules_SchemaName_Options.png
    5. In the Schema name field, enter the string that forms the basis of the schema rule.

      ../../_images/CatalogSets_SchemaRules_String.png
    1. Define the rules for grouping catalog set members using Including and Excluding conditions. You can use both conditions simultaneously.

      • Use the fields under Including to specify criteria for including schemas.

      • Use the fields under Excluding to specify criteria for excluding schemas.

    2. By default, schemas from any data source are considered. To limit the set to specific data sources, click +Add next to the Data Source is field. A quick search widget opens.

      ../../_images/CatalogSets_SchemaRules_SearchDataSource_Neo.png
    3. Select a data source from the list or use the search box. You can select multiple data sources.

      Note

      Already selected data sources are not filtered out from the quick search list.

    4. By default, all schemas are considered to be part of the set. To limit the set to specific schemas, in the Schema name row, select a rule for matching schema names:

      ../../_images/CatalogSets_SchemaRules_SchemaName_Options.png
    5. In the Schema name field, enter the string that forms the basis of the schema rule.

      ../../_images/CatalogSets_SchemaRules_String.png
    1. By default, all tables are considered. To restrict the set to tables with names that match a specific pattern, select the appropriate rule in the Table Name row:

      • exactly matches

      • starts with

      • ends with

      • matches regex

    2. In the Table name field, enter the string that forms the basis of the table rule.

      ../../_images/CatalogSets_TableRules_String.png
    1. Define the rules for grouping catalog set members using Including and Excluding conditions. You can use both conditions simultaneously.

      • Use the fields under Including to specify criteria for including schemas.

      • Use the fields under Excluding to specify criteria for excluding schemas.

    2. By default, schemas from any data source are considered. To limit the set to specific data sources, click +Add next to the Data Source is field. A quick search widget opens.

      ../../_images/CatalogSets_SchemaRules_SearchDataSource_Neo.png
    3. Select a data source from the list or use the search box. You can select multiple data sources.

      Note

      Already selected data sources are not filtered out from the quick search list.

    4. By default, all schemas are considered to be part of the set. To limit the set to specific schemas, in the Schema name row, select a rule for matching schema names:

      ../../_images/CatalogSets_SchemaRules_SchemaName_Options.png
    5. In the Schema name field, enter the string that forms the basis of the schema rule.

      ../../_images/CatalogSets_SchemaRules_String.png
    1. By default, all tables are considered. To restrict the set to tables with names that match a specific pattern, select the appropriate rule in the Table Name row:

      • exactly matches

      • starts with

      • ends with

      • matches regex

    2. In the Table name field, enter the string that forms the basis of the table rule.

      ../../_images/CatalogSets_TableRules_String.png
    1. By default, all columns are considered. To restrict the set to columns with names that match a specific pattern, select the appropriate rule in the Column name row:

      • exactly matches

      • starts with

      • ends with

      • matches regex

    2. In the Column name field, enter the string that forms the basis of the column rule.

      ../../_images/CatalogSets_ColumnRules_String.png
  1. Click Save to apply the rule. Alation matches the objects and displays the matching ones in the Catalog Set Members table.

  2. Review the catalog set members to ensure the group includes all the intended objects. Once confirmed, you can proceed to bulk-edit fields for all members in the set.

  1. Open the Catalog Sets page.

  2. On the top right of the Catalog Sets page, click the Add icon.

    ../../_images/CatalogSets_CreateNew_Classic.png

    The new catalog set page opens, with the Conditional type selected by default.

    ../../_images/CatalogSets_NewSetDialog_Classic.png
  3. New catalog sets are initially untitled and appear as Untitled Catalog Set [Number]. Click the title to edit it and enter a meaningful name. Click outside the field to apply your changes.

  4. From the Member Data Object Type list, select the type of RDBMS object that will form the basis of this set. Choose from:

    • Schemas

    • Tables

    • Columns

    Note

    You cannot change the member data object type (schema, table, or column) after saving the new set.

  5. If you have selected Schema, you have the capability to use catalog sets to control the visibility of objects by hiding schemas and their child objects from the catalog. Select the Hide schemas and their children from Catalog and Search checkbox to make the schemas and their child objects undiscoverable by catalog users when they browse and search. Leave this checkbox clear to keep the catalog members visible.

  6. Click the Edit button for Membership Rules. The Membership Rules pane expands. Membership rules define how objects of the selected type (schema, table, or column) are identified and grouped into the set.

  7. Configure the name matching rules based on the selected data object types:

    1. Define the rules for grouping catalog set members using Including and Excluding conditions. You can use both conditions simultaneously.

      • Use the fields under Including to specify criteria for including schemas.

      • Use the fields under Excluding to specify criteria for excluding schemas.

    2. By default, schemas from any data source are considered. To limit the set to specific data sources, click +Add next to the Data Source is field. A quick search widget opens.

      ../../_images/CatalogSets_SchemaRules_SearchDataSource_Classic.png
    3. Select a data source from the list or use the search box. You can select multiple data sources.

      Note

      Already selected data sources are not filtered out from the quick search list.

    4. By default, all schemas are considered to be part of the set. To limit the set to specific schemas, in the Schema name row, select a rule for matching schema names:

      ../../_images/CatalogSets_SchemaRules_String_Classic.png
    5. In the Schema name field, enter the string that forms the basis of the schema rule.

    1. Define the rules for grouping catalog set members using Including and Excluding conditions. You can use both conditions simultaneously.

      • Use the fields under Including to specify criteria for including schemas.

      • Use the fields under Excluding to specify criteria for excluding schemas.

    2. By default, schemas from any data source are considered. To limit the set to specific data sources, click +Add next to the Data Source is field. A quick search widget opens.

      ../../_images/CatalogSets_SchemaRules_SearchDataSource_Classic.png
    3. Select a data source from the list or use the search box. You can select multiple data sources.

      Note

      Already selected data sources are not filtered out from the quick search list.

    4. By default, all schemas are considered to be part of the set. To limit the set to specific schemas, in the Schema name row, select a rule for matching schema names:

      ../../_images/CatalogSets_SchemaRules_String_Classic.png
    5. In the Schema name field, enter the string that forms the basis of the schema rule.

    1. By default, all tables are considered. To restrict the set to tables with names that match a specific pattern, select the appropriate rule in the Table Name row:

      • exactly matches

      • starts with

      • ends with

      • matches regex

    2. In the Table name field, enter the string that forms the basis of the table rule.

    1. Define the rules for grouping catalog set members using Including and Excluding conditions. You can use both conditions simultaneously.

      • Use the fields under Including to specify criteria for including schemas.

      • Use the fields under Excluding to specify criteria for excluding schemas.

    2. By default, schemas from any data source are considered. To limit the set to specific data sources, click +Add next to the Data Source is field. A quick search widget opens.

      ../../_images/CatalogSets_SchemaRules_SearchDataSource_Classic.png
    3. Select a data source from the list or use the search box. You can select multiple data sources.

      Note

      Already selected data sources are not filtered out from the quick search list.

    4. By default, all schemas are considered to be part of the set. To limit the set to specific schemas, in the Schema name row, select a rule for matching schema names:

      ../../_images/CatalogSets_SchemaRules_String_Classic.png
    5. In the Schema name field, enter the string that forms the basis of the schema rule.

    1. By default, all tables are considered. To restrict the set to tables with names that match a specific pattern, select the appropriate rule in the Table Name row:

      • exactly matches

      • starts with

      • ends with

      • matches regex

    2. In the Table name field, enter the string that forms the basis of the table rule.

    1. By default, all columns are considered. To restrict the set to columns with names that match a specific pattern, select the appropriate rule in the Column name row:

      • exactly matches

      • starts with

      • ends with

      • matches regex

    2. In the Column name field, enter the string that forms the basis of the column rule.

  1. Click Save to apply the rule. Alation matches the objects and displays the matching ones in the Catalog Set Members table.

  2. Review the catalog set members to ensure the group includes all the intended objects. Once confirmed, you can proceed to bulk-edit fields for all members in the set.

  3. Click the Edit button for the Description field, enter a description, and click Save.

Use Regex in Catalog Set Rules

You can use Regex (regular expression) patterns when configuring catalog set membership rules. Select matches regex as the condition for the name matching rule to use regular expressions.

Alation supports the regular expression syntax of Python’s re module.

Basic Regex Syntax

Syntax

Description

Example

a

A specific character, like a

ab

A specific string, like ab

^

The start of a string

^3: The string starts with 3.

$

The end of a string

3$: The string ends with 3.

.

Wildcard. Matches any character except newline (\n).

a.b: Matches any three-character string that starts with a, ends with b, and has any one character in between.

\

Escapes a special character

Price\: \d+\.\d{2}: The backslashes \ escape the colon and the period, which ensures the pattern matches a literal colon and a literal dot.

|

Matches either side (OR logic)

drg|ssn: Matches drg or ssn anywhere in the text. ^<drg>$|^<ssn>$: Matches drg or ssn if they are the entire content of the string.

Regex Examples

Refer to these examples for information on using some common Regex patterns:

Finding Column Names That Contain “email” Anywhere

  • Goal: Match column names that contain the word email anywhere, even with other symbols or words before or after.

  • Regex pattern: .*email.*

  • Explanation:

    • .: Matches any character (except for line terminators like newline \n)

    • *: Means zero or more occurrences of the immediately preceding element. In .*, it means zero or more of any character.

    • email: The literal word email.

  • Example matches:

    • Matching examples:

      • user_email

      • email_address

      • customer-email

      • contact_email_1

    • Non-matching examples:

      • e-mail (Doesn’t contain the contiguous substring email)

      • mail (Lacks the leading e)

Finding Column Names That Start With “ssn”

  • Goal: Match column names that start with ssn, followed by any additional characters.

  • Regex pattern: ^ssn\w*

  • Explanation:

    • ^: Ensures the match starts at the beginning of the column name.

    • ssn: The literal word ssn.

    • \w*: Matches zero or more word characters (letters, digits, or underscores) after ssn.

  • Example matches:

    • Matching examples:

      • ssn_number

      • ssn123

      • ssnid

      • ssn_backup

    • Non-matching examples:

      • my_ssn (Doesn’t start with ssn)

      • oldssn (Doesn’t start with ssn)

Finding Column Names “name” or “number”

  • Goal: Match column names name or number.

  • Regex pattern: ^(name|number)$

  • Explanation:

    • ^: Asserts the position at the start of the string.

    • (name|number): Matches either name or number.

    • $: Asserts the position at the end of the string.

  • Example matches:

    • Matching examples:

      • name

      • number

    • Non-matching examples:

      • first_name (name isn’t a standalone occurrence)

      • name_customer (name isn’t a standalone occurrence)

      • named_column (name isn’t separate but part of a larger word)

      • numbering_system (number isn’t separate but part of a larger word)

Finding Column Names That End with a Year After an Underscore

  • Goal: Match column names that end with an underscore followed by a four-digit year (e.g., _2025).

  • Regex pattern: \w+_\d{4}$

  • Explanation:

    • \w+: Matches one or more word characters (letters, digits, or underscores) at the beginning of the column name.

    • _: Requires an underscore before the year.

    • \d{4}: Matches exactly four digits, commonly representing a year.

    • $: Ensures the pattern matches only at the end of the column name.

  • Example matches:

    • Matching examples:

      • sales_data_2025

      • report_2023

      • backup_1999

      • some_word_2040

    • Non-matching examples:

      • @_2025 (A non-word character before the underscore)

      • 2025_report (Year is at the start, not at the end after an underscore)

      • sales_data_23 (Year is not four digits long)

Bulk-curate Shared Fields

You can manage catalog field values for all catalog set members from the Shared Fields tab on the catalog set’s properties page. Any values applied through the set are automatically propagated to all its members.

Learn more in Bulk-Curate Field Values Using Shared Fields.

Update or Delete Catalog Sets

For details on how to modify or delete a catalog set, refer to Manage Catalog Sets.