Unlike replacement slots, information slots are added to an expression template purely to provide metadata about how the template should be processed. When an expression template is processed, the information contained in the information slots is used and then the information slot itself is removed.
Information slots may be added to an expression template in one of three places:
Information slots may include either a cardinality constraint or a slot name (or both). In the following sections, we describe how each of these may be used in an information slot.
One of the important roles of an information slot is to specify the cardinality of the expression part that follows. A cardinality constraint states the minimum and maximum number of times that the focus concept, relationship group or attribute name-value pair that follows may be repeated in an expression that is generated from the given template.
For example, the expression template below allows between one and three concepts to be used to populate the finding slot, and exactly one |Finding site| name-value pair.
When a cardinality constraint is not provided in an information slot preceding a focus concept, relationship group or attribute name-value pair, the default cardinality that is assumed is 1..*. This means that by default focus concepts, relationship groups and attribute name-value pairs must appear at least once in the resulting expression, but may also be repeated many times. The SNOMED CT concept model, if enforced, may also impose some additional cardinality constraints on the number of times an attribute may be repeated. However, these additional concept model rules are not directly implied by the expression template itself.
As an example, the following expression template allows one or more procedures to be collectively refined by one or more relationship groups, each containing one or more values for |Method| and |Procedure site - Direct|.
Information slots can also be given a slot name, to allow the expression part that follows the slot (i.e. focus concept, relationship group, or attribute name-value pair) to be referenced. The most common use of information slot names is to support the process of populating the template (e.g. as part of a programmatic value replacement process).