SNOMED CT Logical Model Browser

About the project

SNOMED CT is a globally recognized and comprehensive clinical terminology that enables standardized representation and exchange of clinical information. It is a key component of electronic health records and other applications such as clinical decision support, clinical data analytics, and reporting.

The content of SNOMED CT is split across a set of tab-delimited release files (RF2 file structure) that contain the concepts, descriptions, relationships, and other components of the terminology. The data in these files follows a logical model (content model, object model) that represents the low-level view of how the terminology is structured internally.

I've built this browser to provide a convenient way to explore the logical model of SNOMED CT used to represent, store, and distribute the terminology's content. To aid in the understanding of the model, the browser displays the classes as TypeScript-like type definitions (as an object model). In the type definitions, you can navigate to referenced classes by following the purple links.

Browse the model

Class hierarchy
Classes and attributes
Name and description
Fields
Component
A component is a unit of SNOMED CT content that is assigned a unique identifier and that is self-contained with regard to its representation in the terminology. Components are the basic building blocks of SNOMED CT.
type = {
The unique identifier for the component.
id: number,
The date on which the component version's status became the current status of the component.
effectiveTime: time,
Indicates whether the component version's status is active or inactive.
active: boolean,
The module that contains this component version.
module:
}
Concept
A concept is a unit of knowledge created by a unique combination of characteristics.
type = & {
The definition status of the concept.
definitionStatus:
}
Description
A description is a unit of content that provides additional information about a concept. Descriptions are used to support effective navigation and retrieval of SNOMED CT content.
type = & {
The concept to which this description applies.
concept: ,
The language code of the description.
languageCode: string,
The type of description.
type: ,
The text of the description.
term: string,
The case significance of the description.
caseSignificance:
}
Relationship
A relationship is an association between two concepts.
type = & {
The source concept of the relationship.
source: ,
The destination concept of the relationship.
destination: ,
The relationship group number of the relationship.
relationshipGroup: number,
The type of relationship.
type: ,
The characteristic type of the relationship.
characteristicType: ,
The modifier of the relationship.
modifier:
}
ConcreteValueRelationship
A concrete value relationship is an association between a concept and a value.
type = & {
The source concept of the relationship.
source: ,
The associated value.
value: number | string,
The relationship group number of the relationship.
relationshipGroup: number,
The type of relationship.
type: ,
The characteristic type of the relationship.
characteristicType: ,
The modifier of the relationship.
modifier:
}
Identifier
type = {
The scheme to which the identifier value belongs.
identifierScheme: ,
The alternative identifier in its native scheme.
alternateIdentifier: string,
The date on which the identifier version's status became the current status of the identifier.
effectiveTime: time,
Indicates whether the identifier version's status is active or inactive.
active: boolean,
The module that contains this identifier version.
module: ,
The component with which the alternative identifier is associated.
referencedComponent:
}
ReferenceSetMember
A single member of a reference set.
type = {
The unique identifier for the reference set member.
id: uuid,
The date on which the reference set member version's status became the current status of the reference set member.
effectiveTime: time,
Indicates whether the reference set member version's status is active or inactive.
active: boolean,
The module that contains this reference set member version.
module: ,
The reference set to which this member belongs.
refset: ,
The component that is a member of the reference set.
referencedComponent:
}
ContentReferenceSetMember
A member of a content reference set. A content reference set is a reference set used to represent a set of components.
type =
SimpleReferenceSetMember
A member of a simple reference set.
type =
AttributeValueReferenceSetMember
A member of an attribute value reference set. An attribute value reference set is a reference set used to apply a tagged value to a component.
type = & {
The value of the attribute.
value:
}
AssociationReferenceSetMember
A member of an association reference set. An association reference set is a reference set used to represent associations between components.
type = & {
The target component of the association.
targetComponent:
}
QuerySpecificationReferenceSetMember
A member of a query specification reference set.
type = & {
The serialised query that can be used to (re-)generate the reference set members.
query: string
}
OwlExpressionReferenceSetMember
An OWL expression reference set member is a reference set member that represents an OWL expression.
type = & {
The OWL expression.
owlExpression: string
}
LanguageReferenceSetMember
A member of a language reference set. A language reference set is a reference set that is used to indicate which descriptions contain terms that are acceptable or preferred in a particular language or dialect.
type = & {
The acceptability of the description in the specified language.
acceptability:
}
MapReferenceSetMember
A member of a map reference set. A map reference set is a reference set that contains a set of mappings between two or more terminologies.
type =
SimpleMapReferenceSetMember
A member of a simple map reference set. A simple map reference set is a reference set that contains a set of mappings between two or more terminologies.
type = & {
The map target of the simple map reference set member.
mapTarget: string
}
ExtendedMapReferenceSetMember
A member of an extended map reference set. An extended map reference set is a reference set that contains a set of mappings between two or more terminologies.
type = & {
The map group number of the extended map reference set member.
mapGroup: number,
The map priority of the extended map reference set member.
mapPriority: number,
The map rule of the extended map reference set member.
mapRule: string,
The map advice of the extended map reference set member.
mapAdvice: string,
The map target of the extended map reference set member.
mapTarget: string,
The correlation of the extended map reference set member.
correlation: ,
The map category of the extended map reference set member.
mapCategory:
}
MetadataReferenceSetMember
A member of a metadata reference set. A metadata reference set is a reference set that contains metadata about a terminology.
type =
ReferenceSetDescriptorReferenceSetMember
A member of a reference set descriptor reference set. A reference set descriptor reference set is a reference set that contains a set of reference set descriptors.
type = & {
The attribute description of the reference set descriptor reference set member.
attributeDescription: ,
The attribute type of the reference set descriptor reference set member.
attributeType: ,
The attribute order of the reference set descriptor reference set member.
attributeOrder: number
}
ModuleDependencyReferenceSetMember
A member of a module dependency reference set. A module dependency reference set is a reference set that contains a set of module dependencies.
type = & {
The source effective time of the module dependency reference set member.
sourceEffectiveTime: time,
The target effective time of the module dependency reference set member.
targetEffectiveTime: time
}
DescriptionFormatReferenceSetMember
A member of a description format reference set. A description format reference set is a reference set that contains a set of description formats.
type = & {
The description format of the description format reference set member.
descriptionFormat: ,
The description length of the description format reference set member.
descriptionLength: number
}
MrcmDomainReferenceSetMember
A member of an MRCM domain reference set. An MRCM domain reference set is a reference set that contains a set of MRCM domains.
type = & {
The domain constraint of the MRCM domain reference set member.
domainConstraint: string,
The parent domain of the MRCM domain reference set member.
parentDomain: string,
The proximal primitive constraint of the MRCM domain reference set member.
proximalPrimitiveConstraint: string,
The proximal primitive refinement of the MRCM domain reference set member.
proximalPrimitiveRefinement: string,
The domain template for precoordination of the MRCM domain reference set member.
domainTemplateForPrecoordination: string,
The domain template for postcoordination of the MRCM domain reference set member.
domainTemplateForPostcoordination: string,
The guide URL of the MRCM domain reference set member.
guideURL: url
}
McrmAttributeDomainReferenceSetMember
A member of an MRCM attribute domain reference set. An MRCM attribute domain reference set is a reference set that contains a set of MRCM attribute domains.
type = & {
The domain of the MRCM attribute domain reference set member.
domain: ,
The grouped flag of the MRCM attribute domain reference set member.
grouped: boolean,
The attribute cardinality of the MRCM attribute domain reference set member.
attributeCardinality: string,
The attribute in group cardinality of the MRCM attribute domain reference set member.
attributeInGroupCardinality: string,
The rule strength of the MRCM attribute domain reference set member.
ruleStrength: ,
The content type of the MRCM attribute domain reference set member.
contentType:
}
MrcmAttributeRangeReferenceSetMember
A member of an MRCM attribute range reference set. An MRCM attribute range reference set is a reference set that contains a set of MRCM attribute ranges.
type = & {
The range constraint of the MRCM attribute range reference set member.
rangeConstraint: string,
The attribute rule of the MRCM attribute range reference set member.
attributeRule: string,
The rule strength of the MRCM attribute range reference set member.
ruleStrength: ,
The content type of the MRCM attribute range reference set member.
contentType:
}
MrcmModuleScopeReferenceSetMember
A member of an MRCM module scope reference set. An MRCM module scope reference set is a reference set that contains a set of MRCM rules that apply to a particular module.
type = & {
The MRCM rule reference set that contains the rule.
mrcmRuleRefset:
}

See also

A browser for the HL7v2 specification.
HL7v2, ER7, healthcare standards
Validate UCUM units.
UCUM, healthcare standards
Write and execute ECL queries.
ECL, SNOMED CT
Convert SNOMED CT RF2 to OWL online.
SNOMED CT, OWL, ontologies
Explore the HL7 Reference Information Model.
HL7 RIM, healthcare standards
The list of sources of the structured and machine-readable HL7v2 specifications.
HL7v2, healthcare standards
Browse the SNOMED CT ontology.
SNOMED CT
Browse the PCORnet Common Data Model.
PCORnet, healthcare standards
How are WHO-FIC entities modeled?
healthcare standards, data models
Browse the SDTM model.
SDTM, healthcare standards
An introduction to SNOMED CT's Expression Constraint Language (ECL) with examples.
ECL, SNOMED CT
Look up object identifiers (OIDs) and browse the OID tree.
healthcare standards

Made by Anton Vasetenkov.

If you want to say hi, you can reach me on LinkedIn or via email. If you like my work, you can support me by buying me a coffee.