The Transitive Closure is the complete set of relationships between every concept and each of its super-type concepts, in other words both its parents and ancestors.
A transitive closure table is one of the most efficient ways to test for subsumption between concepts.
Snapshot Transitive Closure File
SNOMED International provides an example of a Transitive Closure Perl script file (click to download) that can be used to generating a snapshot view of the transitive closure from the snapshot release of the Relationship. The output of this script conforms to the following following file structure. Note that the primary key for this table consists of both columns.
Field | Data type | Purpose | Part of Primary Key |
subtypeId | Id of the concept playing the subtype role. Set to an Identifier of a concept. | YES | |
supertypeId | Id of the concept playing the supertype role. Set to an Identifier of a concept. | YES |
Versioned Transitive Closure
A versioned view of the Transitive Closure can also be generated by combining the snapshot views for different effective times and removing redundant rows (e.g. where the transitive closure has not changed between release versions). The generated file could then be represented using the example specification below. Note that the unique key for this file would consist of the subtypeId, supertypeId and effectiveTime.
Field | Data type | Purpose | Part of Primary Key |
subtypeId | Id of the concept playing the subtype role. Set to an Identifier of a concept. | YES | |
supertypeId | Id of the concept playing the supertype role. Set to an Identifier of a concept. | YES | |
Specifies the inclusive date at which the transitive closure record was added or changed its active state. | YES | ||
Specifies whether at the transitive closure represented by the subtypeId and supertypeId became valid (active) or invalid (inactive) from the point in time specified by the effectiveTime. | NO |
Related Links
Feedback