# Class CIM_PolicyConditionStructure
extends CIM_PolicyComponent

PolicyConditions may be aggregated into rules and into compound conditions. PolicyConditionStructure is the abstract aggregation class for the structuring of policy conditions. The Conditions aggregated by a PolicyRule or CompoundPolicyCondition are grouped into two levels of lists: either an ORed set of ANDed sets of conditions (DNF, the default) or an ANDed set of ORed sets of conditions (CNF). Individual PolicyConditions in these lists may be negated. The property ConditionListType specifies which of these two grouping schemes applies to a particular PolicyRule or CompoundPolicyCondition instance. One or more PolicyTimePeriodConditions may be among the conditions associated with a PolicyRule or CompoundPolicyCondition via the PolicyConditionStructure subclass association. In this case, the time periods are simply additional Conditions to be evaluated along with any others that are specified.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_AbstractComponent
|
+--CIM_Component
|
+--CIM_PolicyComponent
|
+--CIM_PolicyConditionStructure

## Direct Known Subclasses

CIM_PolicyConditionInPolicyCondition
CIM_PolicyConditionInPolicyRule

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Abstract | boolean | true
Aggregation | boolean | true
Association | boolean | true
Description | string | PolicyConditions may be aggregated into rules and into compound conditions. PolicyConditionStructure is the abstract aggregation class for the structuring of policy conditions. The Conditions aggregated by a PolicyRule or CompoundPolicyCondition are grouped into two levels of lists: either an ORed set of ANDed sets of conditions (DNF, the default) or an ANDed set of ORed sets of conditions (CNF). Individual PolicyConditions in these lists may be negated. The property ConditionListType specifies which of these two grouping schemes applies to a particular PolicyRule or CompoundPolicyCondition instance. One or more PolicyTimePeriodConditions may be among the conditions associated with a PolicyRule or CompoundPolicyCondition via the PolicyConditionStructure subclass association. In this case, the time periods are simply additional Conditions to be evaluated along with any others that are specified.
UMLPackagePath | string | CIM::Policy
Version | string | 2.7.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
ConditionNegated | boolean |
Description | string | Indication of whether the contained PolicyCondition is negated. TRUE indicates that the PolicyCondition IS negated, FALSE indicates that it IS NOT negated.
GroupNumber | uint16 |
Description | string | Unsigned integer indicating the group to which the contained PolicyCondition belongs. This integer segments the Conditions into the ANDed sets (when the ConditionListType is "DNF") or, similarly, into the ORed sets (when the ConditionListType is "CNF").

### Association References

Name | Class Origin | Reference Class | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
GroupComponent | CIM_PolicyConditionStructure | CIM_Policy
Aggregate | boolean | true
Description | string | This property represents the Policy that contains one or more PolicyConditions.
Key | boolean | true
Override | string | GroupComponent
PartComponent | CIM_PolicyConditionStructure | CIM_PolicyCondition
Description | string | This property holds the name of a PolicyCondition contained by one or more PolicyRule or CompoundPolicyCondition instances.
Key | boolean | true
Override | string | PartComponent

## Class Methods