Measurement Package
Overview
The Measurement package defines a minimum of semantics relating to quantitative measurement, units, and conversion, enabling the Quantity package of the openEHR Data Types Information Model to be correctly expressed. As for the Terminology package, a simple service interface is assumed, which provides useful functions to other parts of the reference model. The definitions underlying measurement and units come from a variety of sources, including:
-
CEN ENV 12435, Medical Informatics - Expression of results of measurements in health sciences (see http://www.centc251.org);
-
the Unified Code for Units of Measure (UCUM), developed by Gunther Schadow and Clement J. McDonald of The Regenstrief Institute.
These of course rest in turn upon a vast amount of literature and standards, mainly from ISO on the subject of scientific measurement.
Service Interface
A simple measurement data service interface is defined according to the figure below, enabling quantitative semantics to be used formally from within the Reference Model. Note that this service as currently defined in no way seeks to properly model the semantics of units, conversions etc - it provides only the minimum functions required by the openEHR Reference Model.
Class Definitions
TERMINOLOGY_SERVICE Class
-
Definition
-
Effective
-
BMM
-
UML
Class |
TERMINOLOGY_SERVICE |
|
|---|---|---|
Description |
Defines an object providing proxy access to a terminology service. |
|
Inherit |
|
|
Functions |
Signature |
Meaning |
1..1 |
terminology ( |
Return an interface to the terminology named name. Allowable names include:-
|
1..1 |
code_set ( |
Return an interface to the code_set identified by the external identifier name (e.g. ISO_639-1). |
1..1 |
code_set_for_id ( |
Return an interface to the code_set identified internally in openEHR by id. |
1..1 |
True if terminology named name known by this service. Allowable names include:-
|
|
1..1 |
True if code_set linked to internal name (e.g. languages ) is available. |
|
0..1 |
Set of all terminology identifiers known in the terminology service. Values from the US NLM UMLS meta-data list at:- http://www.nlm.nih.gov/research/umls/metaa1.html |
|
1..1 |
Set of all code set identifiers known in the terminology service. |
|
0..1 |
Set of all code sets identifiers for which there is an internal openEHR name; returned as a Map of ids keyed by internal name. |
|
| TERMINOLOGY_SERVICE | |
|---|---|
Defines an object providing proxy access to a terminology service. |
|
Inherits: OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS, OPENEHR_CODE_SET_IDENTIFIERS |
|
Constants |
|
Terminology_id_openehr: |
Name of openEHR’s own terminology. |
Group_id_audit_change_type: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_attestation_reason: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_composition_category: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_event_math_function: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_instruction_states: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_instruction_transitions: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_null_flavours: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_property: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_participation_function: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_participation_mode: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_setting: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_term_mapping_purpose: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_subject_relationship: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Group_id_version_life_cycle_state: |
+ Inherited from OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS |
Code_set_id_character_sets: |
+ Inherited from OPENEHR_CODE_SET_IDENTIFIERS |
Code_set_id_compression_algorithms: |
+ Inherited from OPENEHR_CODE_SET_IDENTIFIERS |
Code_set_id_countries: |
+ Inherited from OPENEHR_CODE_SET_IDENTIFIERS |
Code_set_integrity_check_algorithms: |
+ Inherited from OPENEHR_CODE_SET_IDENTIFIERS |
Code_set_id_languages: |
+ Inherited from OPENEHR_CODE_SET_IDENTIFIERS |
Code_set_id_media_types: |
+ Inherited from OPENEHR_CODE_SET_IDENTIFIERS |
Code_set_id_normal_statuses: |
+ Inherited from OPENEHR_CODE_SET_IDENTIFIERS |
Functions |
|
valid_terminology_group_id ( |
Validity function to test if an identifier is in the set defined by this class. |
Validity function to test if an identifier is in the set defined by this class. |
|
terminology ( |
Return an interface to the terminology named name. Allowable names include:-
|
code_set ( |
Return an interface to the code_set identified by the external identifier name (e.g. ISO_639-1). |
code_set_for_id ( |
Return an interface to the code_set identified internally in openEHR by id. |
True if terminology named name known by this service. Allowable names include:-
|
|
True if code_set linked to internal name (e.g. languages ) is available. |
|
Set of all terminology identifiers known in the terminology service. Values from the US NLM UMLS meta-data list at:- http://www.nlm.nih.gov/research/umls/metaa1.html |
|
Set of all code set identifiers known in the terminology service. |
|
Set of all code sets identifiers for which there is an internal openEHR name; returned as a Map of ids keyed by internal name. |
|
{
"name": "TERMINOLOGY_SERVICE",
"documentation": "Defines an object providing proxy access to a terminology service. ",
"ancestors": [
"OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS",
"OPENEHR_CODE_SET_IDENTIFIERS"
],
"functions": {
"terminology": {
"name": "terminology",
"documentation": "Return an interface to the terminology named name. Allowable names include:-\n\n* openehr, \n* centc251,\n* any name from are taken from the US NLM UMLS meta-data list at http://www.nlm.nih.gov/research/umls/metaa1.html ",
"parameters": {
"name": {
"_type": "P_BMM_SINGLE_FUNCTION_PARAMETER",
"name": "name",
"type": "String"
}
},
"result": {
"_type": "P_BMM_SIMPLE_TYPE",
"type": "TERMINOLOGY_ACCESS"
}
},
"code_set": {
"name": "code_set",
"documentation": "Return an interface to the code_set identified by the external identifier name (e.g. ISO_639-1). ",
"parameters": {
"name": {
"_type": "P_BMM_SINGLE_FUNCTION_PARAMETER",
"name": "name",
"type": "String"
}
},
"pre_conditions": {
"Pre": "has_code_set (name)"
},
"result": {
"_type": "P_BMM_SIMPLE_TYPE",
"type": "CODE_SET_ACCESS"
}
},
"code_set_for_id": {
"name": "code_set_for_id",
"documentation": "Return an interface to the code_set identified internally in openEHR by id. \n",
"parameters": {
"id": {
"_type": "P_BMM_SINGLE_FUNCTION_PARAMETER",
"name": "id",
"type": "String"
}
},
"pre_conditions": {
"Pre": "valid_code_set_id (id)"
},
"result": {
"_type": "P_BMM_SIMPLE_TYPE",
"type": "CODE_SET_ACCESS"
}
},
"has_terminology": {
"name": "has_terminology",
"documentation": "True if terminology named name known by this service. Allowable names include:-\n\n* openehr \n* centc251 \n* any name from are taken from the US NLM UMLS meta-data list at http://www.nlm.nih.gov/research/umls/metaa1.html",
"parameters": {
"name": {
"_type": "P_BMM_SINGLE_FUNCTION_PARAMETER",
"name": "name",
"type": "String"
}
},
"result": {
"_type": "P_BMM_SIMPLE_TYPE",
"type": "Boolean"
}
},
"has_code_set": {
"name": "has_code_set",
"documentation": "True if code_set linked to internal name (e.g. languages ) is available. ",
"parameters": {
"name": {
"_type": "P_BMM_SINGLE_FUNCTION_PARAMETER",
"name": "name",
"type": "String"
}
},
"result": {
"_type": "P_BMM_SIMPLE_TYPE",
"type": "Boolean"
}
},
"terminology_identifiers": {
"name": "terminology_identifiers",
"documentation": "Set of all terminology identifiers known in the terminology service. Values from the US NLM UMLS meta-data list at:- http://www.nlm.nih.gov/research/umls/metaa1.html ",
"result": {
"_type": "P_BMM_CONTAINER_TYPE",
"container_type": "List",
"type": "String"
},
"is_nullable": true
},
"openehr_code_sets": {
"name": "openehr_code_sets",
"documentation": "Set of all code set identifiers known in the terminology service. \n",
"result": {
"_type": "P_BMM_GENERIC_TYPE",
"root_type": "Hash",
"generic_parameters": [
"String",
"String"
]
}
},
"code_set_identifiers": {
"name": "code_set_identifiers",
"documentation": "Set of all code sets identifiers for which there is an internal openEHR name; returned as a Map of ids keyed by internal name. ",
"result": {
"_type": "P_BMM_CONTAINER_TYPE",
"container_type": "List",
"type": "String"
},
"is_nullable": true
}
}
}