Attribute cardinality
Overview
To support use cases such as the SNOMED CT concept model and terminology binding, expression constraints may constrain the number of times an attribute can be included in an expression or concept definition represented in the SNOMED CT distribution view1 . This is done using a cardinality constraint, which consists of a minimum cardinality and a maximum cardinality (written "[X..Y]"). A minimum cardinality of X constrains the valid clinical meanings to those which have at least (i.e. >=) X non-redundant2 attributes that match the given attribute criteria. A maximum cardinality of Y constrains the valid clinical meanings to those which have at most (i.e. <=) Y non-redundant2 attributes that match the given attribute criteria. For example, a cardinality of "[1..5]" indicates that all clinical meanings that satisfy the given expression constraint must have at least one and at most five attributes that match the given attribute criteria.
The expression constraint below is satisfied only by products with one, two or three active ingredients.
[1 to 3] 127489000 |Has active ingredient| = descendantOf 105590001 |Substance|
Unconstrained Cardinalities
A minimum cardinality of '0' indicates that there is no constraint on the minimum number of attributes that may match the given attribute criteria. For example, the following expression constraint is satisfied only by products with at most one active ingredient (i.e. the maximum cardinality is '1' and the minimum cardinality is unconstrained).
[0 to 1] 127489000 |Has active ingredient| = descendantOf 105590001 |Substance|
[1 to many] 127489000 |Has active ingredient| = descendantOf 105590001 |Substance|
Default Cardinalities
The default cardinality of each attribute, where not explicitly stated, is [1..*]. Therefore, the following two expression constraints are equivalent.
Non-redundant Attributes
As mentioned above, only non-redundant defining attributes are included in the cardinality count. Therefore, the following postcoordinated expression:
Attribute Cardinality in Groups
When the attributes to which cardinality are applied can be grouped, but braces are not used in the expression constraint, the cardinality constrains the number of times the attribute may be included in any attribute group. For example, the following expression constraint is satisfied by any clinical finding whose definition has two or more non-redundant finding sites, irrespective of which attribute group they are contained in.
{ [2..*] 363698007 |Finding site| = < 91723000 |Anatomical structure| }
Attribute Group Cardinality
Minimum and maximum cardinalities may also be applied to attribute groups. A minimum attribute group cardinality of X constrains the valid clinical meanings to those which have at least (i.e. >=) X non-redundant attribute groups that match the given attribute group criteria. A maximum cardinality of Y constrains the valid clinical meanings to those which have at most (i.e. <=) Y non-redundant attribute groups that match the given attribute group criteria. For example, a cardinality of "[1..2]" indicates that all clinical meanings that satisfy the given expression constraint must have at least one and at most two attribute groups that match the given attribute group criteria.
The expression constraint below is satisfied only by products with one, two or three attribute groups, which each contain at least one active ingredient relationship.
[1..3] { [1..*] 127489000 |Has active ingredient| = < 105590001 |Substance| }
[1 to 3] { [1 to many] 127489000 |Has active ingredient| =
descendantOf 105590001 |Substance| }
Unconstrained Cardinalities
As with attribute cardinalities, a minimum cardinality of '0' indicates that there is no constraint on the minimum number of attribute groups that may match the given attribute group criteria. For example, the following expression constraint is satisfied only by products with at most one attribute group containing an active ingredient relationship (i.e. the maximum attribute group cardinality is '1' and the minimum attribute group cardinality is unconstrained).
[0 to 1] { 127489000 |Has active ingredient| = descendantOf 105590001 |Substance| }
[1 to *] { 127489000 |Has active ingredient| = descendantOf 105590001 |Substance| }
Default Cardinalities
As with attribute cardinality, the default attribute group cardinality, where not explicitly stated, is [1..*]. Therefore, the following four expression constraints are equivalent.
[1..*] { [1..*] 127489000 |Has active ingredient| = < 105590001 |Substance| }
Non-redundant Attribute Groups
As mentioned above, only non-redundant defining attributes are included in the cardinality count. Therefore, the following postcoordinated expression:
[1..1] { 363698007 |Finding site| = < 91723000 |Anatomical structure| }
Attribute and Attribute Group Cardinalities
Attribute cardinalities and attribute group cardinalities can be used together to achieve a combined effect. For example, to represent the set of clinical findings which have no attribute groups that contain two or more finding site attributes (in the same attribute group), the following expression constraint can be used:
[0..0] { [2..*] 363698007 |Finding site| = < 91723000 |Anatomical structure| }
Reverse Cardinalities
When a cardinality constraint is applied to a reversed refinement, it constrains the number of source concepts (matching the given criteria) for which each destination concept may be relevant attribute value.
For example, the following expression constraint represents the substances, which are the active ingredient of exactly three products.
Source concept | Attribute | Destination concept |
---|---|---|
then the result would include only the concept 387458008 | Aspirin| .
Ref | Notes |
---|---|
1 | For more information about the SNOMED CT distribution view, please refer to the SNOMED CT Technical Implementation Guide. Please note that full normalization of expressions (as would be performed by a Description Logic classifier) is required prior to evaluation. |
2 | As defined in the SNOMED CT Technical Implementation Guide. [ a b ] |
Feedback