# AccessCertificationObjectBasedScopeType (Complex Type)

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

Supertype: AccessCertificationScopeType
The most common way of specifying scope - providing type+search filter to select "base" objects and then some means of deriving certification cases from them.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
name | property string | [0,1] | User-readable name of this scope definition.
description | property string | [0,1] | Description of this scope definition.
documentation | property string | [0,1] | Technical documentation for a particular object or construct.
objectType | property QName | [1,1] | Type of objects to be selected for certification.
searchFilter | property SearchFilterType | [0,1] | Filter to find objects for certification.
itemSelectionExpression | property ExpressionType | [0,1] | Expression that selects items that are to be included in the certification.
caseGenerationExpression | property ExpressionType | [0,-1] | Expression that produces certification cases.

- ### Items

  - #### name

    Flags: RAM,runtime

    Multiplicity: [0,1]

    User-readable name of this scope definition. (In case it is necessary.)

  - #### description

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Description of this scope definition.

  - #### documentation

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Technical documentation for a particular object or construct.

    The purpose of this element is to document system configuration and behavior. The documentation will not be presented to end users. In fact, it will probably not be presented at all in midPoint user interface. This documentation element is supposed to be a part of the technical documentation of midPoint deployment. The tools than generate deployment configuration will look for these elements and combine them to compiled documentation document.

    AsciiDoc formatting is assumed for this element. Any leading or trailing whitespace is skipped. Indentation equivalent to he indentation of the first non-blank line of text is also skipped.

  - #### objectType

    Flags: RAM,runtime

    Multiplicity: [1,1]

    Type of objects to be selected for certification.

  - #### searchFilter

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Filter to find objects for certification. By default, all objects of a given type will be selected.

  - #### itemSelectionExpression

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Expression that selects items that are to be included in the certification. Exact use of this expression depends on the certification handler. E.g. user assignment handler could call this expression individually with each assignment to determine which assignments should be included and which should not.

  - #### caseGenerationExpression

    Flags: RAM,runtime

    Multiplicity: [0,-1]

    Expression that produces certification cases. This can be any expression, whose input is an object that has passed the search filter specified above, and its output is a list of certification cases. An example: a groovy expression, creating certification cases by selecting user's "risky" assignments (e.g. assignments to a roles of a given type/types). Another example can be the computation of all assignments (direct and indirect ones), and selecting among these. NOT IMPLEMENTED YET