**Source URL:** https://general.veevavault.dev/mdl/component-types/docmatchingrule.md

# Docmatchingrule

**Class: ** `metadata`

Dynamic Access Control (DAC) is an access control model for documents, which automates the assignment of users to document roles.

Learn about <a href="https://platform.veevavault.help/en/lr/31824" target="_blank">Dynamic Access Control for Documents in Vault Help</a>.

| Attribute | Metadata | Description |
| --- | --- | --- |
| lifecycle | Type: ComponentRequired | The lifecycle this rule applies to. |
| role | Type: ComponentRequired | The role this rule applies to. |
| active | Type: BooleanRequired | Indicates whether the component is active. |
| description | Type: StringMax length: 255 | General description for this rule. |
| label | Type: StringRequiredMax length: 60 | UI-friendly string in the Vault's base language. |

### Docmatchingcriterion {#docmatchingcriterion}

| Attribute | Metadata | Description |
| --- | --- | --- |
| object_field | Type: ComponentRequired | The field of the object to match on. |
| data_field | Type: ComponentRequired | The field on the document to match on. |
| object | Type: ComponentRequired | The Object the matching rule is defined on. |

### Supported Operations {#supported-operations}

| Operation | Support |
| --- | --- |
| Create | Yes |
| Recreate | Yes |
| Alter | Yes |
| Drop | Yes |
| Rename | Yes |
| Describe | Yes |
| Generate Recreate | Yes |
| Queryable | No |


---

**Previous:** [Doclifecycle](/mdl/component-types/doclifecycle)  
**Next:** [Docparticipantrule](/mdl/component-types/docparticipantrule)