
## Priority Propagator

URL: https://docs.atlan.com/product/capabilities/governance/custom-metadata/references/priority-propagator

> Propagate tags or custom metadata from child assets to parent assets using configurable priority rules. Reference for workflow configuration, priority-rule syntax, and transformation settings.

<!--vale off-->

# Priority Propagator 

<!--vale on-->

Propagates tags and custom metadata from child assets (columns, fields) to parent assets (tables, views, schemas) using configurable priority rules. This reference documents app configuration, priority-rule syntax, value transformation, metadata selection, and preview-mode options.

Use this app to aggregate sensitive data classifications, data quality scores, or compliance statuses from granular assets to their containers so that you can standardize governance signals across your data estate with less manual effort.

This reference provides complete configuration details for the Priority Propagator app. Use this page to look up property definitions, valid values, and configuration examples when setting up priority-based metadata propagation.

## Access

The Priority Propagator app isn't enabled by default. To use this app, [contact Atlan support](https://docs.atlan.com/support/submit-request) and request it be added to your tenant.

## Authentication

This section defines the fields required for workflow authentication and identification.

### Workflow name

Specifies a unique and descriptive name to identify this workflow configuration in the Atlan interface. This name appears in the workflow list and helps you distinguish this run of Priority Propagator from other workflows, especially in environments with multiple propagation or governance automations.

*Example:*

```text
priority-propagator-column-to-table
```

### Atlan API token

Specifies the API token used to authenticate this workflow with your Atlan tenant. [Generate a personal API token](https://docs.atlan.com/llms/platform/get-started/api-authentication/llms.txt) from your user profile in Atlan. The token must belong to a user with permission to read the child assets, read and update tags or custom metadata on parent assets, and access custom metadata definitions that participate in propagation.

## Package configuration

This section defines the properties used to configure the Priority Propagator workflow.

Configure the core behavior of the propagation workflow.

### Package mode

Choose what type of metadata to propagate:

- **Tags:** Propagate Atlan classification tags from children to parents. In this mode, you configure a global tag priority strategy using **Priority rule type**, **Priority rule pattern** or **Priority rule list**, optional **Replacement rules**, and an **Operation type** (Preview or Propagate).
- **Custom Metadata:** Propagate custom metadata attribute values from children to parents. In this mode, tag-level **Priority rule type** settings are hidden and you configure priority per custom metadata attribute under **Custom metadata configuration** by using **Priority type** and **Priority rule/pattern**.

### Priority rule type

Available only when **Package mode** is set to **Tags**.

Use this setting to choose how the workflow evaluates and orders tag values when multiple child assets have different tags:

- **Pattern (Regex):** Use regular expression pattern matching to extract priority numbers
- **List (Priority Order):** Use explicit comma-separated list where position determines priority

### Priority rule pattern

Used only when **Priority rule type** is set to **Pattern (Regex)** in **Tags** mode.

Enter a regular expression pattern with a capture group to extract priority numbers from values. Lower numbers indicate higher priority.

Valid patterns (don't use backslashes):

| Pattern | Matches |
|---------|---------|
| `P(d+)` | P0, P1, P2, P3 |
| `Level-(d+)` | Level-1, Level-2, Level-3 |
| `Tier(d+)` | Tier1, Tier2, Tier3 |
| `(d+)%` | 85%, 90%, 95% |

The workflow extracts numeric values from the capture group and selects the value with the lowest number as highest priority.

### Priority rule list

Used only when **Priority rule type** is set to **List (Priority Order)** in **Tags** mode.

Enter comma-separated values in priority order. First value has highest priority.

*Examples:*

```
P0,P1,P2,P3,P4
```

```
Critical,High,Medium,Low
```

```
Confidential,Internal,Public
```

```
100,95,90,85,80,75,70
```

:::caution
Values must match exactly as they appear in Atlan (case-sensitive), with no spaces after commas.
:::

### Replacement rules

Transform tag names during propagation using pattern-based replacement rules.

Format: `pattern1@replacement1@@@pattern2@replacement2@@@pattern3@replacement3`

*Examples:*

```
P0@HighSensitive@@@P1@MediumSensitive@@@P2@LowSensitive@@@P3@Public
```

```
P[0-2]@Sensitive@@@P[3-4]@Internal
```

```
^P@Sensitivity-P
```

**Replacement logic:**

- **Single value selected:** Checks exact match first, then regex patterns
- **Multiple values share same priority:** Uses only pattern matching for consistency
- **No rules match:** Original tag is used unchanged

### Operation type

Choose whether to preview or apply changes:

- **Preview:** Generates CSV report without applying changes (download from workflow artifacts)
- **Propagate:** Applies tags or custom metadata to parent assets and generates CSV for audit trail

## Custom metadata configuration

This section applies only when **Package mode** is set to **Custom Metadata**.

Configure up to 5 custom metadata sets for evaluation. Each set operates independently with its own priority rules.

### Custom metadata name

Select the custom metadata set and specific attributes to evaluate.

### Priority type

Choose how to evaluate priority for this custom metadata set:

- **Pattern (Regex):** Use regex pattern to extract priority
- **Rule List:** Use comma-separated priority order

### Priority rule/pattern

Define the priority evaluation rule based on the selected **Priority type**.

**If Pattern:** Enter regex with capture group (no backslashes):

```
Level-(d+)
```

```
Score-(d+)
```

```
Priority(d+)
```

**If Rule List:** Enter comma-separated values in priority order:

```
Critical,High,Medium,Low,None
```

```
100,95,90,85,80,75,70
```

```
Required,Recommended,Optional,Not Applicable
```

## Source asset filters

Define which child assets (columns or tables) are evaluated for tags or metadata to propagate.

### How source filtering works

- **Tags mode:** Searches for columns or tables that have the specified tags, then aggregates them by parent qualified name to identify parent assets.
- **Custom metadata mode:** Used in combination with impacted filters to narrow the scope of parent assets whose children are processed.

### Available filters

| Filter | Description | Operators |
|--------|-------------|-----------|
| **Connector** | Filter by data source platform (for example, snowflake, bigquery, databricks) | Is one of, Isn't one of |
| **Connection** | Filter by specific connection instances using qualified names. Format: `default/connector_type/connection_id` | Is one of, Isn't one of |
| **Asset type** | Filter by type of child asset. Supported types: Column (for propagating to Table/View parents), Table (for propagating to Schema parents). Default: Both Column and Table | Is one of, Isn't one of |
| **Name** | Filter by asset name | Equal, Not equal, Contains, Doesn't contain, Starts with, Pattern |
| **Certificate** | Filter by asset certification status. Values: VERIFIED, DRAFT, DEPRECATED | Is one of, Isn't one of |
| **Qualified name** | Filter by fully qualified asset name | Equal, Not equal, Contains, Doesn't contain, Starts with, Pattern |
| **Tag** | Required in Tags mode. Select which classification tags participate in priority evaluation | Is one of, Isn't one of |
| **Description** | Filter by asset description or user description | Equal, Not equal, Contains, Doesn't contain, Starts with, Pattern, Is empty, Isn't empty |
| **Announcement** | Filter by announcement type. Values: information, issue, warning | Is one of, Isn't one of |
| **Owner user** | Filter by individual data owners | Is one of, Isn't one of |
| **Owner group** | Filter by team or group ownership | Is one of, Isn't one of |
| **Domain** | Filter by business domain assignment | Is one of, Isn't one of |

### Filter combination logic

All filters use AND logic together. An asset must match all specified filters. Multiple values within a single filter use OR logic.

## Impacted asset filters

Define which parent assets (tables, views, or schemas) receive the propagated metadata.

### How impacted filtering works

- **Tags mode:** Parent assets are discovered by aggregating tagged children. Impacted filters then apply as an intersection to reduce the set of discovered parents.
- **Custom metadata mode:** Impacted filters search directly for parent assets. All filters apply during the initial search.

### Available filters

The impacted asset filters use the same configuration options as source asset filters, with these differences:

| Filter | Differences from source filters |
|--------|--------------------------------|
| **Asset type** | Supported parent types: Table, View, Schema. Default when not specified: Table, View, Schema |
| **Qualified name** | In Tags mode: applies as an intersection with discovered parents. In CM mode: applies during the initial search as part of the DSL query |
| **Tag** | Filters impacted assets by existing tags they already have (useful for updating existing classifications) |

### See also

- [What is custom metadata](https://docs.atlan.com/llms/governance/custom-metadata/what-is-custom-metadata/llms.txt)
- [Add options to custom metadata](https://docs.atlan.com/llms/governance/custom-metadata/add-options/llms.txt)
- [Manage custom metadata structures](https://docs.atlan.com/llms/governance/custom-metadata/manage-custom-metadata-structures/llms.txt)

---
