# UpdateCapabilityType (Complex Type)

### Namespace: http://midpoint.evolveum.com/xml/ns/public/resource/capabilities-3

Supertype: AbstractWriteCapabilityType
Describes update capability.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
enabled | property boolean | [0,1] | Element specifying whether the capability is enabled or disabled.
manual | property boolean | [0,1] | If set to true then there is NO online connection to the resource.
delta | property boolean | [0,1] | If set to true then resource supports update operation that takes complete delta as an argument.
addRemoveAttributeValues | property boolean | [0,1] | If set to true then resource supports update operation that can add and remove individual attribute values.
attributeContentRequirement | property AttributeContentRequirementType | [0,1] | Specifies requirement on attribute values that should be passed to an operation.

- ### Items

  - #### enabled

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Element specifying whether the capability is enabled or disabled. Enabled capability work as usual (this is the default). Disabled capability acts as it is not there at all. This is used to disable undesirable native capabilities. Each capability definition should have this element. It is made a top-level element in this XSD definition to make that easier.

  - #### manual

    Flags: RAM,runtime

    Multiplicity: [0,1]

    If set to true then there is NO online connection to the resource. The operations are executed manually by a human operator. The resource provides ability to execute the operations in an asynchronous way. But this asynchronous operation contains a human in the loop.

  - #### delta

    Flags: RAM,runtime

    Multiplicity: [0,1]

    If set to true then resource supports update operation that takes complete delta as an argument. Or in other words: the resource can execute complex updates that add/remove/replace values of several attributes in one operation.

    If set to false then resource cannot execute complex updates in one operation. Several operations may be needed, e.g. one operation to add values, separate operation to delete values. This may cause schema violations. E.g. deleting last value of a mandatory multi-valued attribute just to immediately add new value. Such operation may fail.

  - #### addRemoveAttributeValues

    Flags: RAM,runtime

    Multiplicity: [0,1]

    If set to true then resource supports update operation that can add and remove individual attribute values.

    This is an replacement for deprecated AddRemoveAttributeValuesCapabilityType. If no value is provided for this element, then the presence or non-presence of AddRemoveAttributeValuesCapabilityType determines its value.

  - #### attributeContentRequirement

    Flags: RAM,runtime,AVals:2

    Multiplicity: [0,1]

    Specifies requirement on attribute values that should be passed to an operation. E.g. whether only changed attributes should be passed to update operation or whether all the values should be passed.