Terminology Package

Overview

The base.foundation_types.terminology package provides leaf types used to represent a terminology code, i.e. a code within a terminology, and a term, which is the combination of a code and one rubric (natural language) string associated with it. Terminology codes are sometimes called concept codes among terminology experts, and when used as references, concept references.

An instance of Terminology_code is a reference to any referenceable entity within a terminology or ontology, which may be:

  • a single term, for which a rubric(s) and potentially relationships (at least the IS-A relationship) are defined;

  • a value set i.e. a set of single terms, possibly in a tree or other structure corresponding to relationships between the member terms;

  • any other terminological entity referencable with a code.

An instance of Terminology_term provides a way to record a terminology code and the rubric used in some operational context, allowing the receiver or reader of the data to avoid having to perform a terminology lookup to obtain the rubric, e.g. for display purposes.

BASE foundation types.terminology
Figure 1. base.foundation_types.terminology package

Class Definitions

Terminology_term Class

  • Definition

  • Effective

  • BMM

  • UML

Class

Terminology_term

Description

Leaf type representing a standalone term from a terminology, which consists of the term text and the code, i.e. a concept reference.

Inherit

Any

Attributes

Signature

Meaning

1..1

concept: Terminology_code

Reference to the terminology concept formally representing this term.

1..1

text: String

Text of term.

Terminology_term

Leaf type representing a standalone term from a terminology, which consists of the term text and the code, i.e. a concept reference.

Inherits: Any

Attributes

concept: Terminology_code [1..1]

Reference to the terminology concept formally representing this term.

text: String [1..1]

Text of term.

Functions

(abstract) Any.is_equal (
other: Any[1]
): Boolean [1..1]

Value equality: return True if this and other are attached to objects considered to be equal in value.

Parameters
other

Other object for comparison.

Any.equal alias "=", "==" (
other: Any[1]
): Boolean [1..1]

Reference equality for reference types, value equality for value types.

Parameters
other

Other object for comparison.

Any.instance_of (
a_type: String[1]
): Any [1..1]

Create new instance of a type.

Any.type_of (
an_object: Any[1]
): String [1..1]

Type name of an object as a string. May include generic parameters, as in "Interval<Time>".

Any.not_equal alias "!=", "≠" (
other: Ordered[1]
): Boolean [1..1]

True if current object not equal to other. Returns not equal().

{
    "name": "Terminology_term",
    "documentation": "Leaf type representing a standalone term from a terminology, which consists of the term text and the code, i.e. a concept reference.",
    "ancestors": [
        "Any"
    ],
    "properties": {
        "concept": {
            "_type": "P_BMM_SINGLE_PROPERTY",
            "name": "concept",
            "documentation": "Reference to the terminology concept formally representing this term.",
            "is_mandatory": true,
            "type": "Terminology_code"
        },
        "text": {
            "_type": "P_BMM_SINGLE_PROPERTY",
            "name": "text",
            "documentation": "Text of term.",
            "is_mandatory": true,
            "type": "String"
        }
    }
}
Terminology_term

Terminology_code Class

  • Definition

  • Effective

  • BMM

  • UML

Class

Terminology_code

Description

Primitive type representing a standalone reference to a terminology concept, in the form of a terminology identifier, optional version, and a code or code string from the terminology.

Inherit

Any

Attributes

Signature

Meaning

1..1

terminology_id: String

The archetype environment namespace identifier used to identify a terminology. Typically a value like "snomed_ct" that is mapped elsewhere to the full URI identifying the terminology.

0..1

terminology_version: String

Optional string value representing terminology version, typically a date or dotted numeric.

1..1

code_string: String

A terminology code or post-coordinated code expression, if supported by the terminology. The code may refer to a single term, a value set consisting of multiple terms, or some other entity representable within the terminology.

0..1

uri: Uri

The URI reference that may be used as a concrete key into a notional terminology service for queries that can obtain the term text, definition, and other associated elements.

Terminology_code

Primitive type representing a standalone reference to a terminology concept, in the form of a terminology identifier, optional version, and a code or code string from the terminology.

Inherits: Any

Attributes

terminology_id: String [1..1]

The archetype environment namespace identifier used to identify a terminology. Typically a value like "snomed_ct" that is mapped elsewhere to the full URI identifying the terminology.

terminology_version: String [0..1]

Optional string value representing terminology version, typically a date or dotted numeric.

code_string: String [1..1]

A terminology code or post-coordinated code expression, if supported by the terminology. The code may refer to a single term, a value set consisting of multiple terms, or some other entity representable within the terminology.

uri: Uri [0..1]

The URI reference that may be used as a concrete key into a notional terminology service for queries that can obtain the term text, definition, and other associated elements.

Functions

(abstract) Any.is_equal (
other: Any[1]
): Boolean [1..1]

Value equality: return True if this and other are attached to objects considered to be equal in value.

Parameters
other

Other object for comparison.

Any.equal alias "=", "==" (
other: Any[1]
): Boolean [1..1]

Reference equality for reference types, value equality for value types.

Parameters
other

Other object for comparison.

Any.instance_of (
a_type: String[1]
): Any [1..1]

Create new instance of a type.

Any.type_of (
an_object: Any[1]
): String [1..1]

Type name of an object as a string. May include generic parameters, as in "Interval<Time>".

Any.not_equal alias "!=", "≠" (
other: Ordered[1]
): Boolean [1..1]

True if current object not equal to other. Returns not equal().

{
    "name": "Terminology_code",
    "documentation": "Primitive type representing a standalone reference to a terminology concept, in the form of a terminology identifier, optional version, and a code or code string from the terminology.",
    "ancestors": [
        "Any"
    ],
    "properties": {
        "terminology_id": {
            "_type": "P_BMM_SINGLE_PROPERTY",
            "name": "terminology_id",
            "documentation": "The archetype environment namespace identifier used to identify a terminology. Typically a value like `\"snomed_ct\"` that is mapped elsewhere to the full URI identifying the terminology.",
            "is_mandatory": true,
            "type": "String"
        },
        "terminology_version": {
            "_type": "P_BMM_SINGLE_PROPERTY",
            "name": "terminology_version",
            "documentation": "Optional string value representing terminology version, typically a date or dotted numeric.",
            "type": "String"
        },
        "code_string": {
            "_type": "P_BMM_SINGLE_PROPERTY",
            "name": "code_string",
            "documentation": "A terminology code or post-coordinated code expression, if supported by the terminology. The code may refer to a single term, a value set consisting of multiple terms, or some other entity representable within the terminology.",
            "is_mandatory": true,
            "type": "String"
        },
        "uri": {
            "_type": "P_BMM_SINGLE_PROPERTY",
            "name": "uri",
            "documentation": "The URI reference that may be used as a concrete key into a notional terminology service for queries that can obtain the term text, definition, and other associated elements.",
            "type": "Uri"
        }
    }
}
Terminology_code

CODE_PHRASE Class

  • Definition

  • Effective

  • BMM

  • UML

Class

CODE_PHRASE

Description

A fully coordinated (i.e. all coordination has been performed) term from a terminology service (as distinct from a particular terminology).

Retain for LEGACY only, while ADL1.4 requires CODE_PHRASE.

Attributes

Signature

Meaning

1..1

terminology_id: TERMINOLOGY_ID

Identifier of the distinct terminology from which the code_string (or its elements) was extracted.

1..1

code_string: String

The key used by the terminology service to identify a concept or coordination of concepts. This string is most likely parsable inside the terminology service, but nothing can be assumed about its syntax outside that context.

0..1

preferred_term: String

Optional attribute to carry preferred term corresponding to the code or expression in code_string. Typical use in integration situations which create mappings, and representing data for which both a (non-preferred) actual term and a preferred term are both required.

Invariants

Code_string_valid: not code_string.is_empty

CODE_PHRASE

A fully coordinated (i.e. all coordination has been performed) term from a terminology service (as distinct from a particular terminology).

Retain for LEGACY only, while ADL1.4 requires CODE_PHRASE.

Attributes

terminology_id: TERMINOLOGY_ID [1..1]

Identifier of the distinct terminology from which the code_string (or its elements) was extracted.

code_string: String [1..1]

The key used by the terminology service to identify a concept or coordination of concepts. This string is most likely parsable inside the terminology service, but nothing can be assumed about its syntax outside that context.

preferred_term: String [0..1]

Optional attribute to carry preferred term corresponding to the code or expression in code_string. Typical use in integration situations which create mappings, and representing data for which both a (non-preferred) actual term and a preferred term are both required.

Invariants

Code_string_valid: not code_string.is_empty

{
    "name": "CODE_PHRASE",
    "documentation": "A fully coordinated (i.e. all coordination has been performed) term from a terminology service (as distinct from a particular terminology).\n\nRetain for LEGACY only, while ADL1.4 requires CODE_PHRASE.",
    "properties": {
        "terminology_id": {
            "_type": "P_BMM_SINGLE_PROPERTY",
            "name": "terminology_id",
            "documentation": "Identifier of the distinct terminology from which the code_string (or its elements) was extracted.",
            "is_mandatory": true,
            "type": "TERMINOLOGY_ID"
        },
        "code_string": {
            "_type": "P_BMM_SINGLE_PROPERTY",
            "name": "code_string",
            "documentation": "The key used by the terminology service to identify a concept or coordination of concepts. This string is most likely parsable inside the terminology service, but nothing can be assumed about its syntax outside that context. ",
            "is_mandatory": true,
            "type": "String"
        },
        "preferred_term": {
            "_type": "P_BMM_SINGLE_PROPERTY",
            "name": "preferred_term",
            "documentation": "Optional attribute to carry preferred term corresponding to the code or expression in `_code_string_`. Typical use in integration situations which create mappings, and representing data for which both a (non-preferred) actual term and a preferred term are both required.",
            "type": "String"
        }
    },
    "invariants": {
        "Code_string_valid": "not code_string.is_empty"
    }
}
CODE_PHRASE