Search



Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The

Concept
t900000000000534007|Module dependency reference set|
represents dependencies between different
Gloss
tSNOMED CT
release
Gloss
tmodules
. In each case, the dependency indicates which targetEffectiveTime
Specref
RefType(field)
ttargetEffectiveTime
of each particular
Gloss
tmodule
a given sourceEffectiveTime
Specref
RefType(field)
tsourceEffectiveTime
of the dependent
Gloss
tmodule
requires.

...

The

Gloss
tModule dependency reference set
is a String
Specref
RefType(data type)
- String
tString
-
Specref
RefType(data type)
tString
Gloss
treference set
which is used to represent dependencies between
Gloss
tmodules
, taking account of
Gloss
tmodule
versioning. Its structure is shown in the following table.

Field

Data type

Purpose

id

Specref
RefType
(field)
tid

UUID

Specref
RefType
(data type)
tUUID

A A 128 bit unsigned Integer

Specref
RefType(data type)
tInteger
, uniquely identifying this
Gloss
treference set member
.

Different versions of a reference set member share the same id

Specref
RefType(field)
tid
but have different effectiveTime
Specref
RefType(field)
teffectiveTime
. This allows a reference set member to be modified or made active
Specref
RefType(field)
tactive
(i.e. removed from the active set) at a specified time.

Specref
effectiveTime
RefType(field)
teffectiveTime

Specref
RefType(data type)
tTime
Time (data type)

The inclusive date or time at which this version of the identified

Gloss
treference set member
became the current version.

The current version of this

Gloss
treference set member
at time T is the version with the most recent effectiveTime
Specref
RefType(field)
teffectiveTime
prior to or equal to time T .

Specref
RefType
active
(field)
tactive

Boolean

Specref
RefType
(data type)
tBoolean

The state of the identified

Gloss
treference set member
as at the specified effectiveTime
Specref
RefType(field)
teffectiveTime
.

If active

Specref
RefType(field)
tactive
= 1 (true) the
Gloss
treference set member
is part of the current version of the set, if active
Specref
RefType(field)
tactive
= 0 (false) the
Gloss
treference set member
is not part of the current version of the set.

Specref
moduleId
RefType(field)
tmoduleId

SCTID

Specref
RefType
(data type)
tSCTID

Identifies the

Gloss
tSNOMED CT module
that contains this
Gloss
treference set member
as at the specified effectiveTime
Specref
RefType(field)
teffectiveTime
.

The value must be a

Gloss
tsubtype
of
Concept
t900000000000443000|Module (core metadata concept)|
within the metadata
Gloss
thierarchy
.

In this

Gloss
treference set
, moduleId
Specref
RefType(field)
tmoduleId
also refers to the dependent source
Gloss
tmodule
. Thus each
Gloss
tmodule
contains the rows of the
Concept
t900000000000534007|Module dependency reference set|
that represent its dependencies on other
Gloss
tmodules
.

Specref
refsetId
RefType(field
)
)
trefsetId

SCTID

Specref
RefType
(data type)
tSCTID

Identifies the

Gloss
treference set
to which this
Gloss
treference set member
belongs.

In this case, set to

Concept
t900000000000534007|Module dependency reference set|

referencedComponentId

Specref
RefType
(field)
treferencedComponentId

SCTID

Specref
RefType
(data type)
tSCTID

The identifier of a target

Gloss
tmodule
on which the dependent
Gloss
tmodule
(identified by moduleId
Specref
RefType(field)
tmoduleId
) depends. Thus must be a
Gloss
tsubtype
of
Concept
t900000000000443000|Module (core metadata concept)|
.

Specref
sourceEffectiveTime
RefType(field)
tsourceEffectiveTime

Time

Specref
RefType
(data type)
tTime

The effective time of the dependent source

Gloss
tmodule
(identified by moduleId by
Specref
RefType(field)
tmoduleId
). This specifies a version of that
Gloss
tmodule
, consisting of all
Gloss
tcomponents
that have the same moduleId
Specref
RefType(field)
tmoduleId
as this
Gloss
trefset member
in their states as at the specified targetEffectiveTime
Specref
RefType(field)
ttargetEffectiveTime
. targetEffectiveTime

Specref
RefType(field)
ttargetEffectiveTime

Time

Specref
RefType
(data type)
tTime

The effective time of the target

Gloss
tmodule
required to satisfy the dependency (identified by referencedComponentId (field)
Specref
RefType(field)
treferencedComponentId
). This specifies a version of that
Gloss
tmodule
, consisting of all
Gloss
tcomponents
with the moduleId
Specref
RefType(field)
tmoduleId
specified by referencedComponentId
Specref
RefType(field)
treferencedComponentId
in their states as at the specified targetEffectiveTime
Specref
RefType(field)
ttargetEffectiveTime
.

Anchor
_7da5ff8f-9913-478c-8b35-8df009e328e9
_7da5ff8f-9913-478c-8b35-8df009e328e9
Notes on usage

...

It is the responsibility of the organization owning and maintaining a dependent module to identify all modules on which it depends. They do this by adding rows to the

Concept
t900000000000534007|Module dependency reference set|
within the dependent module. Because these added member must be in the dependent module, the moduleId
Specref
RefType(field)
tmoduleId
of the
Gloss
treference set
member record is also the identifier of the dependent (source) module. The target module on which the source module depends is identified by the referencedComponentId (field)
Specref
RefType(field)
treferencedComponentId
.

A module version may depend on one or more other module versions, and many module versions may have a dependency on a single module version. Cyclic module version dependencies are not allowed. If module-A depends on module-B, then module-B cannot depend on module-A.

...

Dependencies are specified between module versions, not just dependencies between modules. Therefore, it is possible to specify a dependency from a module released on one date to an earlier version of another module. The version of the dependent module is specified by the sourceEffectiveTime

Specref
RefType(field)
tsourceEffectiveTime
and the version of the module on which it depends is specified by the targetEffectiveTime
Specref
RefType(field)
ttargetEffectiveTime
.

Note: Current practice assumes the refset.id column contains the same identifier for all versions of the dependencies between the same pair of modules. This approach means that at any given time only one version of each module has effective dependencies. Therefore, to review the dependencies of an earlier version, a snapshot for an earlier time must be checked. An alternative approach has been suggested by some people in which a new identifier is allocated to each dependency of each module. This would then mean that all past dependencies would be visible in a snapshot view. It would also mean that it would be possible release updated dependencies for an existing module version while also releasing more up-to-date versions of the same module with different dependencies. This added flexibility comes at the price of additional complexity and for the time-being the

Gloss
tInternational Release
continues to use the simpler approach in which each new version of a dependency supersedes the dependency between earlier versions of the same pair of modules.

...

Each component within a

Gloss
tSNOMED CT release
references a moduleId
Specref
RefType(field)
tmoduleId
. This is the
Gloss
tmodule
that the component is currently mastered in (from the effectiveTime
Specref
RefType(field)
teffectiveTime
held on the component record). A module is simply a collection of
Gloss
tSNOMED CT components
that are maintained as a unit by a single organization. It is the organization 's responsibility to organize the components in each
Gloss
textension
that it is responsible for into one or more modules, in a way that best fits its business needs.

...

At the point of release, if any

Gloss
tcomponent
within a module has changed, then a new row will be added to
Concept
t900000000000534007|Module dependency reference set|
for the module's
Gloss
tconcept
, with the effectiveTime (field)
Specref
RefType(field)
teffectiveTime
set to the date of the new release, irrespective of whether the other fields in the module
Gloss
tconcept
record itself have changed. The updated |Module|
Gloss
tconcept
record identifies that some components within the module have been updated in this release. Where no components within a module have been updated, then a new module record will not be added and the module's effectiveTime
Specref
RefType(field)
teffectiveTime
field will not change from the previous release.

Each

Gloss
tcomponent
will be in one, and only one
Gloss
tcomponent
. The module that a component is mastered in may change over time, and when this happens, the component's moduleId
Specref
RefType(field)
tmoduleId
field will be updated (in the usual way by appending a row for the component).

Each module will be in one and only one

Gloss
textension
. Modules will not straddle
Gloss
textensions
. The
Gloss
textension
that a module resides in is defined by the SCTID
Specref
RefType(data type)
tSCTID
of the module. A module may not move from one
Gloss
textension
to another over time. If the components within a module are to be moved to another
Gloss
textension
, then a new module must be created within the destination
Gloss
textension
to host the components that are to be transferred.

...

Note: The table above omits the initial four columns of data present in the release file. These follow the standards versioning pattern

Specref
RefType(field)
tid
,
Specref
RefType(field)
, effectiveTime
teffectiveTime
,
Specref
RefType(field)
, active
tactive
,
Specref
RefType(field)
, active (field)
tactive
. Additionally, to aid understanding, the table above also shows the
Gloss
tterm
from one of the
Gloss
tdescriptions
associated with each of the identified
Gloss
tconcept
. The release file only contains the
Gloss
tidentifier
.

...

Note: The tables above omit the initial three columns of data present in the release file. These follow the standards versioning pattern id

Specref
RefType(field)
, effectiveTime
tid
,
Specref
RefType(field)
, active
teffectiveTime
,
Specref
RefType(field)
tactive
. Additionally, to aid understanding, the tables above also show the
Gloss
tterm
from one of the
Gloss
tdescriptions
associated with each of the identified
Gloss
tconcept
. The release file only contains the
Gloss
tidentifier
.