> ## Documentation Index
> Fetch the complete documentation index at: https://docs.activeviam.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Source to topic matching

> How `restrict-to-sources`, `restrict-from-sources`, `topics-to-include`, and `topics-to-exclude` control which topics can operate on which DLC sources.

A topic may belong to several sources.

If no restrictions are defined, then all topics will be able to operate on all sources of the compatible type.

At request time, if a requested topic resolves to more than one source, the source to operate on must be clarified
by using the `sourceType` and/or the `sourceName` parameters of the request.

The properties outlined below restrict which topics can operate on which source.

### Topic

| Property                | Description                                             |
| ----------------------- | ------------------------------------------------------- |
| `restrict-to-sources`   | Restrict the topic to a set of sources.                 |
| `restrict-from-sources` | Restrict the topic from being used by a set of sources. |

<br />

* Both properties are optional and cannot be used at the same time.
* When neither is used, the topic is not restricted in any way and can be used with any source of a compatible type.

### Source

| Property            | Description                                                 |
| ------------------- | ----------------------------------------------------------- |
| `topics-to-include` | Restrict the topics which should be included in the source. |
| `topics-to-exclude` | Specify which topics should be excluded.                    |

<br />

* Both properties are optional and cannot be used at the same time.

* When neither is used,
  the source will include topics that are of a compatible type and are not restricted from that source,
  nor restricted to another one.
