...
Member of
The memberOf function (by default) evaluates to the set of concepts that are referenced by the given reference set (i.e. the set of referencedComponentIds). Please note that this function may be applied only to reference sets whose referenced components are concepts. The SNOMED CT Expression Constraint Language does not support use of the memberOf function on reference sets whose referencedComponents are not concepts (i.e. descriptions or relationships).
...
Scg expression |
---|
Border | ridge |
---|
ShowFormat | block |
---|
|
^ 700043003 |Example problem list concepts reference set | |
Using the long syntax the expression constraint is represented as:
Scg expression |
---|
Border | ridge |
---|
ShowFormat | block |
---|
|
memberOf 700043003 |Example problem list concepts reference set| |
The expression constraints above both return the values in the referencedComponentId field of the given reference sets. However, it is also possible to specify one or more fields, whose values will be returned, by including the relevant field names is square brackets after the memberOf operator ("^" or "memberOf"). For example, the following expression constraint is equivalent to the brief syntax example above.
Scg expression |
---|
Border | ridge |
---|
ShowFormat | block |
---|
|
^ [referencedComponentId] 700043003 |Example problem list concepts reference set| |
The value of other fields can also be returned by an expression constraint
Footnote Macro |
---|
Note: If a reference set field is selected that does not exist in any of the identified reference sets, then the expression constraint should be considered erroneous. |
. For example, the following expression constraint will return the targetComponentId values (i.e. the 'Entire' anatomy concepts) from the
Concept |
---|
t | 734138000 |Anatomy structure and entire association reference set| |
---|
|
. Scg expression |
---|
Border | ridge |
---|
ShowFormat | block |
---|
|
^ [targetComponentId] 734138000 |Anatomy structure and entire association reference set| |
It is also possible to return the values of more than one field in a reference set (e.g. a pair or tuple of values).
Footnote Macro |
---|
Note: Returning the values of more than one reference set field may only be done as the final operation of an expression constraint. |
Footnote Macro |
---|
Note: Attempts to select more than one reference set field on an inner subquery should result in an execution error. |
Footnote Macro |
---|
Note: In some implementation contexts, the memberOf function may be restricted to return only a single field. |
For example, to return both the source and target of the
Concept |
---|
t | 816210007 |SNOMED CT to MedDRA simple map reference set| |
---|
|
, the following expression constraint could be used: Scg expression |
---|
Border | ridge |
---|
ShowFormat | block |
---|
|
^ [referencedComponentId, mapTarget] 816210007 |SNOMED CT to MedDRA simple map reference set| |
To return all the non-metadata fields of a referenceSet (i.e. the values of the referencedComponentId and additional fields), a wildcard (i.e. "*" in the brief syntax, and "*" or "Any" in the long syntax) can be used. For example, the following expression constraint will return the referencedComponentId, mapGroup, mapPriority, mapRule, mapAdvice, mapTarget and correlationId for each row of the
Concept |
---|
t | 447562003 |ICD-10 complex map reference set| |
---|
|
. Scg expression |
---|
Border | ridge |
---|
ShowFormat | block |
---|
|
^ [*] 447562003 |ICD-10 complex map reference set| |
For more information on the use of reference set field names in ECL, please refer to Appendix E - Reference Set Fields.
Please note that it is also possible to apply the memberOf function to an expression constraint that returns a set of concept-based reference set concepts. For more information, please refer to 6.7 Nested Expression Constraints.
And for information about applying filter constraints to reference set members, please refer to 6.10 Member Filters.
Any
A single 'star' (i.e. "*") may be used in the place of a concept reference to represent any concept in the substrate. The expression constraint below evaluates to the set of all concepts in the given substrate.
...
Scg expression |
---|
Border | ridge |
---|
ShowFormat | block |
---|
|
^ * |
Alternate Identifier
If an alternate identifier exists for a concept, in an identifier scheme other than SNOMED CT, then this can be used to refer to that concept
Footnote Macro |
---|
Note: No alternate identifiers exist in the International Edition at this time. |
(see 4.2.4 Identifier File Specification). For example there may be SNOMED CT concept for "Type of hemoglobin in blood at point in time" with an alternate identifier with the scheme alias "LOINC" and the code "54486-6":
Scg expression |
---|
Border | ridge |
---|
ShowFormat | block |
---|
|
LOINC#54486-6 |
The alternate identifier code can be surrounded by quotes.
The alternate identifier code can be surrounded by quotes.
The alternate identifier code can be surrounded by double quotes. Quoting may be necessary to ensure correct parsing of the constraint depending on the characters used in the code:
Scg expression |
---|
Border | ridge |
---|
ShowFormat | block |
---|
|
LOINC#"54486-6" |
Please note: ECL is always evaluated against SNOMED CT concepts. When you run a query using alternate identifiers from another code system only concepts that are in the SNOMED CT representation of that other code system will be returned. For example the descendants of a concept in the SNOMED CT version of a code system is likely to be different from the code system of the alternate identifier.