# RoleAnalysisSessionOptionType (Complex Type)

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

Supertype: AbstractAnalysisSessionOptionType
Object clustering options for "role" mode. Specification of parameters utilized for establishing cluster generation conditions, specifically pertaining to the RoleAnalysisClusterType. These parameters play a critical role in defining the criteria and conditions for grouping objects into clusters, enabling effective role analysis. Furthermore, the role analysis session allows for the possibility of updating these values. If there is a need to modify or refine the cluster options during the analysis process, the values associated with the keys can be updated accordingly. This flexibility enables fine-tuning of the role analysis based on changing requirements or new insights gained during the analysis phase.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
userSearchFilter | property SearchFilterType | [0,1] | Specifies the query or filter applied to the UserType objects.
roleSearchFilter | property SearchFilterType | [0,1] | Specifies the query or filter applied to the RoleType objects.
assignmentSearchFilter | property SearchFilterType | [0,1] | Specifies the query or filter applied to the AssignmentType objects.
similarityThreshold | property double | [0,1] | Similarity threshold used for clustering (Jaccard).
minMembersCount | property int | [0,1] | Specifies the minimum required cluster size (member objects).
minPropertiesOverlap | property int | [0,1] | Minimum property overlap size between cluster members.
minAccessPopularity | property int | [0,1] | Represents the minimum number of members with access to a role required for the role to be considered popular.
maxAccessPopularity | property int | [0,1] | Represents the maximum number of members with access to a role.
minUsersPopularity | property int | [0,1] | Represents the minimum number of role access assignment required for a user to be considered popular.
maxUsersPopularity | property int | [0,1] | Represents the maximum number of role access assignments allowed for a user to be considered popular.
clusteringAttributeSetting | container ClusteringAttributeSettingType | [0,1] | Contains information about the clustering attribute analysis settings.
userAnalysisAttributeSetting | container AnalysisAttributeSettingType | [0,1] | Contains information about attribute analysis settings.
isIndirect | property boolean | [0,1] | Specifies whether the clustering runs in indirect mode.
detailedAnalysis | property boolean | [0,1] | Specifies whether the outlier detection process run over clustering noise group.

- ### Items

  - #### userSearchFilter

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Specifies the query or filter applied to the UserType objects. Only the objects that match the filter are included in the analysis.

  - #### roleSearchFilter

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Specifies the query or filter applied to the RoleType objects. Only the objects that match the filter are included in the analysis.

  - #### assignmentSearchFilter

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Specifies the query or filter applied to the AssignmentType objects. Only the objects that match the filter are included in the analysis.

  - #### similarityThreshold

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Similarity threshold used for clustering (Jaccard). If the condition is not met, then the objects are not grouped.

  - #### minMembersCount

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Specifies the minimum required cluster size (member objects). NOTE: The parameter checks the number of these unique objects, not the total number of included objects in the cluster.

  - #### minPropertiesOverlap

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Minimum property overlap size between cluster members. In the case of USER MODE, the user (member) is included in the cluster, if there are other user(s) who have at least "minOverlapCondition" equal roles. In the case of ROLE MODE, the role (member) is included in the cluster, if there are other role(s) who have at least "minOverlapCondition" equal users.

  - #### minAccessPopularity

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Represents the minimum number of members with access to a role required for the role to be considered popular. Roles with fewer members are marked as unpopular and excluded from clustering and analysis.

  - #### maxAccessPopularity

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Represents the maximum number of members with access to a role. This value is used to identify roles with high popularity and may influence clustering and analysis procedures by prioritizing roles with a higher number of members. Roles with more members than the specified value are marked as popular.

  - #### minUsersPopularity

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Represents the minimum number of role access assignment required for a user to be considered popular. User with fewer role access are marked as unpopular and may be excluded from certain analyses or clustering processes.

  - #### maxUsersPopularity

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Represents the maximum number of role access assignments allowed for a user to be considered popular. Users with more role access than this threshold may be marked as overly popular and can be flagged for further analysis or excluded from certain clustering processes.

  - #### clusteringAttributeSetting

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Contains information about the clustering attribute analysis settings. It allows for configuration of settings related to attribute analysis within clustering process.

  - #### userAnalysisAttributeSetting

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Contains information about attribute analysis settings. It allows for configuration of settings related to attribute analysis within the analysis process.

  - #### isIndirect

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Specifies whether the clustering runs in indirect mode.

  - #### detailedAnalysis

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Specifies whether the outlier detection process run over clustering noise group.