> For the complete documentation index, see [llms.txt](https://docs.guardianservice.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.guardianservice.app/technical-information/users/standard-registry-users-schemas-and-policies/schemas/repeatable-field-links.md).

# Repeatable Field Links

Pair the entries of one repeatable field to the entries of another.

A repeatable field, meaning a field with **Allow multiple answers** enabled, lets a user add as many entries as they need. Repeatable field links tie those entries to the entries of other repeatable fields, so every entry carries its own separate set of related fields, including fields that live in other schemas of the same document.

## The problem it solves

When a policy document tracks several parallel subjects, such as locations, activities, or measurement periods, each subject needs its own set of related data. Without linked fields, a user would have to manage that relationship manually, and the form has no way to enforce that each subject's data stays grouped together.

Repeatable field links enforce the one-to-one pairing automatically. A user adds one entry to the source field, and every linked field gains a matching entry. The entries stay paired through the entire lifecycle of the form.

## How it works

Links are declared in the **Repeatable links** tab of the [Schema Editor](/technical-information/users/standard-registry-users-schemas-and-policies/schemas/schema-editor.md) and pair entries **by index**: the first entry of the source matches the first entry of each dependent, the second matches the second, and so on.

When a policy is being filled in:

* Adding an entry to the source field creates a matching entry in every linked field. Linked fields have no manual add or remove controls, since they always follow the source.
* Each entry is labeled with the **Entry display name** chosen during schema configuration, so entries are easy to identify.
* Fields mapped as **Copied values** arrive filled and read-only in the linked entry, and stay in step when the source value changes.
* Removing a source entry that has dependents opens a **Delete entry** confirmation warning that linked entries will be deleted together with it. The remaining entries keep their own values.

## Key distinctions

* **Cross-schema links are supported.** A dependent field can live in a different schema of the same document, not just in the same schema as the source.
* **Chains are supported.** A dependent field can itself be a source for another field, forming a group of any depth. Build chains from the top down, adding the parent link before using its child as a source.
* **One source, many dependents.** A single source field can drive several dependent fields at once.
* **Conditions cannot reach inside a repeatable group.** Fields inside a repeatable (array) sub-schema are not offered in the condition pickers, and the repeatable container itself cannot be a condition target. See below.

## Conditions and repeatable groups

A condition compiles to JSON Schema `properties` and `required` keywords walked along a field path. There is no `items` step in that path, so there is no way to express "entry 2 of this array shows a field that entry 1 hides". Against an array instance the constraint either does nothing at all, or is enforced on every entry unconditionally.

Because a rule like that cannot be enforced on the server, MGS keeps those fields out of the condition pickers rather than letting an author configure one. In practice:

* You cannot use a field inside a repeatable group as a condition trigger.
* You cannot target a field inside a repeatable group, or the group itself, from a THEN or ELSE branch.
* Conditions on fields outside repeatable groups work normally, including [cross-schema conditions](/technical-information/users/standard-registry-users-schemas-and-policies/schemas/cross-schema-conditions.md).

If entries need to differ from one another, model the difference as data (a type or category field on each entry) rather than as conditional visibility.

## Related

* Task: [Set up Repeatable Field Links](/technical-information/users/standard-registry-users-schemas-and-policies/schemas/repeatable-field-links/set-up-repeatable-field-links.md)
* Concept: [Schema Editor](/technical-information/users/standard-registry-users-schemas-and-policies/schemas/schema-editor.md)
* Concept: [Cross-Schema Conditions](/technical-information/users/standard-registry-users-schemas-and-policies/schemas/cross-schema-conditions.md)
