Changes between Initial Version and Version 1 of Support Information Model 5 Terminology Package


Ignore:
Timestamp:
Aug 27, 2008, 8:33:05 PM (16 years ago)
Author:
KOBAYASHI, Shinji
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Support Information Model 5 Terminology Package

    v1 v1  
     1Terminology Package
     2
     35.1 Overview
     4
     5This section describes the terminology package, which contains classes for accessing terminologies and code sets, including the openEHR Support Terminology, from within instances of classes defined in the reference model. The classes shown here would normally be inherited via the classes EXTERNAL_ENVIRONMENT_ACCESS and OPENEHR_DEFINITIONS, although the exact details of how this is done may vary depending on implementation language.
     6
     75.2 Service Interface
     8
     95.2.1 Code Sets
     10
     11  A simple terminology service interface is defined according to FIGURE 6, enabling  openEHR code sets and terminology to be referenced formally from within the Reference Model. Two types of coded entities are distinguished in openEHR, and are accessible via the service interface. The first is codes from ‘code sets’, which are the kind of terminology where the code stands for itself, such as the ISO 639-1 language codes. The identifiers themselves of these code sets do not appear to be standardised, but names such as “ISO_639-1” are expected to be used (see below).
     12
     13In any case, code sets needed within the openEHR models themselves (e.g. for attributes whose value is a language code) are not referred to directly by an external name such as “ISO_639-1”, but via an internal constant, in this case, the constant Code_set_id_languages, whose value is defined to be “languages”. These constants are defined in the class OPENEHR_CODE_SET_IDENTIFIERS  in FIGURE
     14
     15 6. The mapping between the internal identifiers and external names should be done in configuration files. The service function TERMINOLOGY_SERVICE.code_set_for_id() is used to retrieve code sets on the basis of a constant. The current mapping and external identifiers assumed in openEHR is defined in the openEHR Support Terminology document. This use of indirection is employed to ensure that the obsoleting and superseding of code-sets does not directly affect openEHR software.
     16
     17For code sets not mapped to internally used constants, i.e. code sets not required in the openEHR model itself, but otherwise known in the terminology service, the function TERMINOLOGY_SERVICE.code_set() can be used to retrieve these code sets by their external identifier.
     18
     195.2.2 Terminologies
     20
     21Terminologies, including the openEHR Support Terminology are accessed via the TERMINOLOGY_SERVICEfunctions terminology() and terminology_identifiers(), where the argument includes “openehr”, “centc251” (for CEN TC/251codes) and names from the US NLM terminologies list (see below). The openEHR Terminology supports groups, and the set of groups required by the reference model is defined in the class OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS. These groups correspond to coded attributes found in the openEHR Reference Model.
     22
     235.2.3 Terms and Codes in the openEHR Reference Model
     24
     25True coded attributes in the Reference Model (i.e. attributes of type DV_CODED_TEXT), such as FEEDER_AUDIT.change_type are defined by an invariant in the enclosing class, such as the following:
     26
     27[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 49 of 67] Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007]
     28
     29  © 2003-2006 The openEHR Foundation    email: info@openEHR.org web: !http://www.openEHR.org
     30
     31terminology
     32
     33OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS
     34
     35const Terminology_id_openehr: String is “openehr” const Group_id_audit_change_type: String is “audit change type” const Group_id_attestation_reason: String is “attestation reason” const Group_id_composition_category: String is “composition category” const Group_id_event_math_function: String is “event math function” const Group_id_instruction_states: String is “instruction states” const Group_id_instruction_transitions: String is “instruction transitions” const Group_id_null_flavours: String is “null flavours” const Group_id_property: String is “property” const Group_id_participation_function: String is “participation function” const Group_id_participation_mode: String is “participation mode” const Group_id_setting: String is “setting” const Group_id_term_mapping_purpose: String is “term mapping purpose” const Group_id_subject_relationship: String is “subject relationship” const Group_id_version_lifecycle_state: String is “version lifecycle state”
     36
     37valid_group_id(an_id: String): Boolean
     38
     39TERMINOLOGY_SERVICE
     40
     41OPENEHR_CODE_SET_IDENTIFIERS
     42
     43const Code_set_id_character_sets: String is “character sets” const Code_set_id_compression_algorithms: String is “compression algorithms” const Code_set_id_countries: String is “countries” const Code_set_id_integrity_check_algorithms: String is “integrity check algorithms” const Code_set_id_languages: String is “languages” const Code_set_id_media_types: String is “media types” const Code_set_id_normal_statuses: String is “normal statuses”
     44
     45valid_code_set_id(an_id: String): Boolean
     46
     47CODE_SET_ACCESS <<interface>>
     48
     49id: Stringall_codes: Set<CODE_PHRASE> has_lang (...): Boolean has_code (...): Boolean terminology (name: String): TERMINOLOGY_ACCESS code_set (name: String): CODE_SET_ACCESS code_set_for_id (id: String): CODE_SET_ACCESS has_terminology (name: String): Boolean has_code_set (name: String): Boolean terminology_identifiers: List<String>openehr_code_sets: Hash<String, String> code_set_identifiers: List<String>
     50
     51||TERMINOLOGY_ACCESS <<interface>>||
     52||||
     53||id: Stringall_codes: Set<CODE_PHRASE> codes_for_group_id (...): Set<CODE_PHRASE> codes_for_group_name (...): Set<CODE_PHRASE> has_code_for_group_id (...): Boolean rubric_for_code (...): String||
     54
     55FIGURE 6 rm.support.terminology Package
     56
     57[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Terminology Package Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     58
     59Change_type_valid:terminology(Terminology_id_openehr).has_code_for_group_id  (Group_id_audit_change_type, change_type.defining_code)
     60
     61This is a formal way of saying that the attribute change_type must have a value such that its defining_code (its CODE_PHRASE) is in the set of CODE_PHRASEs in the openEHR Terminology which are in the group whose indentifier is Group_id_audit_change_type.
     62
     63A similar invariant is used for attributes of type CODE_PHRASE, which come from a code_set. The following invariant appears in the class ENTRY (rm.composition.content.entry package):
     64
     65Language_valid: media_type /= Void and then  code_set(Code_set_languages).has_code(language)
     66
     675.3 Identifiers
     68
     69In openEHR, the identifier of a terminology or code set is found in the terminology_id attribute of the class CODE_PHRASE (Data Types Information Model, text package).
     70
     715.3.1 Code Set Identifiers
     72
     73Internal code set identifiers (such as “languages”) used in openEHR are defined in the class OPENEHR_CODE_SET_IDENTIFIERS; assumed external identifiers (such as “ISO_639-1”) for code sets used by the openEHR Reference Model are defined in the openEHR Support Terminology document.
     74
     755.3.2 Terminology Identifiers
     76
     77Valid identifiers that can be used for this attribute for terminologies include but are not limited to the following:
     78
     79 * “openehr”
     80 * “centc251”
     81 * an identifier value from the first column of the US National Library or Medicine (NLM) UMLS terminology identifiers table below, in either of two forms:
     82
     83-as is, e.g. “ICD10AM_2000”, “ICPC93”;  -with any trailing section starting with an underscore removed, e.g. “ICD10AM”.
     84
     85Other identification schemes are used in some standards, such as ISO Oids. These are not specified for direct use in openEHR for various reasons:
     86
     87 * they are not currently used by the NLM, and no definitive published list of terminology identifiers is available;
     88 * ISO Oids are long identifiers and may significantly increase the size of persisted information due to the ubiquity of coded terms;
     89 * determing the identity of the terminology in data always requires a request to a service containing the Oid / name mapping;
     90 * there is a safety factor in having human readable terminology identifiers in the data.
     91
     92The use of Oid-based or other terminology identification schemes is not however incompatible with openEHR; all that is required is a terminology identifier / name mapping service or table.
     93
     94[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 51 of 67] Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007]
     95
     96  © 2003-2006 The openEHR Foundation    email: info@openEHR.org web: !http://www.openEHR.org
     97
     98Terminology Package [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     99
     100The following table is a snapshot of the US National Library of Medicine UMLS terminology identifiers list. A definitive up-to-date list may be found on the NLM website at http://www.nlm.nih.gov/research/umls/metaa1.html .
     101
     102[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15429 © 2003-2006 The openEHR Foundation]  email: info@openEHR.org web: !http://www.openEHR.org
     103
     104||||UMLS 2003 Terminology Identifiers||
     105||Identifier||Description||
     106||AIR93||AI/RHEUM,1993||
     107||ALT2000||Alternative Billing Concepts, 2000||
     108||AOD2000||Alcohol and Other Drug Thesaurus, 2000||
     109||BI98||Beth Israel Vocabulary, 1.0||
     110||BRMP2002||Portuguese translation of the Medical Subject Headings, 2002||
     111||BRMS2002||Spanish translation of the Medical Subject Headings, 2002||
     112||CCPSS99||Canonical Clinical Problem Statement System, 1999||
     113||CCS99||Clinical Classifications Software, 1999||
     114||CDT4||Current Dental Terminology(CDT), 4||
     115||COSTAR_89-95||COSTAR, 1989-1995||
     116||CPM93||Medical Entities Dictionary, 1993||
     117||CPT01SP||Physicians' Current Procedural Terminology, Spanish Translation, 2001||
     118||CPT2003||Physicians' Current Procedural Terminology, 2003||
     119||CSP2002||CRISP Thesaurus, 2002||
     120||CST95||COSTART, 1995||
     121||DDB00||Diseases Database, 2000||
     122||DMD2003||German translation of the Medical Subject Headings, 2003||
     123||DMDICD10_1995||German translation of ICD10, 1995||
     124||DMDUMD_1996||German translation of UMDNS, 1996||
     125||DSM3R_1987||DSM-III-R, 1987||
     126||DSM4_1994||DSM-IV, 1994||
     127||DUT2001||Dutch Translation of the Medical Subject Headings, 2001||
     128||DXP94||DXplain, 1994||
     129||FIN2003||Finnish translations of the Medical Subject Headings, 2003||
     130||HCDT4||HCPCS Version of Current Dental Terminology(CDT), 4||
     131||HCPCS03||Healthcare Common Procedure Coding System, 2003||
     132||HCPT03||HCPCS Version of Current Procedural Terminology(CPT), 2003||
     133||HHC96||Home Health Care Classification, 1996||
     134||HL7_1998-2002||Health Level Seven Vocabulary, 1998-2002||
     135||HLREL_1998||ICPC2E-ICD10 relationships from Dr. Henk Lamberts, 1998||
     136||HPC99||Health Product Comparison System, 1999||
     137||ICD10AE_1998||ICD10, American English Equivalents, 1998||
     138||ICD10AMAE_2000||International Statistical Classification of Diseases and Related Health Problems, Australian Modification, Americanized English Equivalents, 2000||
     139||ICD10AM_2000||International Statistical Classification of Diseases and Related Health Problems, 10th Revision, Australian Modification, January 2000 Release||
     140||ICD10_1998||ICD10, 1998||
     141
     142Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 52 of 67] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}]
     143
     144[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Terminology Package Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     145
     146  © 2003-2006 The openEHR Foundation    email: info@openEHR.org web: !http://www.openEHR.org
     147
     148||||UMLS 2003 Terminology Identifiers||
     149||Identifier||Description||
     150||ICD9CM_2003||ICD-9-CM, 2003||
     151||ICPC2AE_1998||International Classification of Primary Care, Americanized English Equivalents, 2E, 1998||
     152||ICPC2E_1998||International Classification of Primary Care 2nd Edition, Electronic, 2E, 1998||
     153||ICPC2P_2000||International Classification of Primary Care, Version2-Plus, 2000||
     154||ICPC93||International Classification of Primary Care, 1993||
     155||ICPCBAQ_1993||ICPC, Basque Translation, 1993||
     156||ICPCDAN_1993||ICPC, Danish Translation, 1993||
     157||ICPCDUT_1993||ICPC, Dutch Translation, 1993||
     158||ICPCFIN_1993||ICPC, Finnish Translation, 1993||
     159||ICPCFRE_1993||ICPC, French Translation, 1993||
     160||ICPCGER_1993||ICPC, German Translation, 1993||
     161||ICPCHEB_1993||ICPC, Hebrew Translation, 1993||
     162||ICPCHUN_1993||ICPC, Hungarian Translation, 1993||
     163||ICPCITA_1993||ICPC, Italian Translation, 1993||
     164||ICPCNOR_1993||ICPC, Norwegian Translation, 1993||
     165||ICPCPAE_2000||International Classification of Primary Care ,Version2-Plus, Americanized English Equivalents, 2000||
     166||ICPCPOR_1993||ICPC, Portuguese Translation, 1993||
     167||ICPCSPA_1993||ICPC, Spanish Translation, 1993||
     168||ICPCSWE_1993||ICPC, Swedish Translation, 1993||
     169||INS2002||French translation of the Medical Subject Headings, 2002||
     170||ITA2003||Italian translation of Medical Subject Headings, 2003||
     171||JABL99||Online Congenital Multiple Anomaly/ Mental Retardation Syndromes, 1999||
     172||LCH90||Library of Congress Subject Headings, 1990||
     173||LNC205||LOINC, 2.05||
     174||LOINC||LOINC||
     175||MCM92||!McMaster University Epidemiology Terms, 1992||
     176||MDDB99||!MasterDrug !DataBase, 1999||
     177||MDR51||Medical Dictionary for Regulatory Activities Terminology (MedDRA), 5.1||
     178||MDRAE51||Medical Dictionary for Regulatory Activities Terminology (MedDRA), American English Equivalents, 5.1||
     179||MDREA51||Medical Dictionary for Regulatory Activities Terminology (MedDRA), American English, with expanded abbreviations, 5.1||
     180||MDREX51||Medical Dictionary for Regulatory Activities Terminology (MedDRA), with expanded abbreviations, 5.1||
     181||MDRPOR51||Medical Dictionary for Regulatory Activities Terminology (MedDRA), 5.1, Portuguese Edition||
     182
     183[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 53 of 67] Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007]
     184
     185Terminology Package [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     186
     187[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15429 © 2003-2006 The openEHR Foundation]  email: info@openEHR.org web: !http://www.openEHR.org
     188
     189||||UMLS 2003 Terminology Identifiers||
     190||Identifier||Description||
     191||MDRSPA51||Medical Dictionary for Regulatory Activities Terminology (MedDRA), 5.1, Spanish Edition||
     192||MIM93||Online Mendelian Inheritance in Man, 1993||
     193||MMSL01||Multum !MediSource Lexicon, 2001||
     194||MMX01||Micromedex DRUGDEX, 2001-08||
     195||MSH2003_2002_10_24||Medical Subject Headings, 2002_10_24||
     196||MTH||UMLS Metathesaurus||
     197||MTHCH03||Metathesaurus CPT Hierarchical Terms, 2003||
     198||MTHHH03||Metathesaurus HCPCS Hierarchical Terms, 2003||
     199||MTHICD9_2003||Metathesaurus additional entry terms for ICD-9-CM, 2003||
     200||MTHMST2001||Metathesaurus Version of Minimal Standard Terminology Digestive Endoscopy, 2001||
     201||MTHMSTFRE_2001||Metathesaurus Version of Minimal Standard Terminology Digestive Endoscopy, French Translation, 2001||
     202||MTHMSTITA_2001||Metathesaurus Version of Minimal Standard Terminology Digestive Endoscopy, Italian Translation, 2001||
     203||NAN99||Classification of Nursing Diagnoses, 1999||
     204||NCBI2001||NCBI Taxonomy, 2001||
     205||NCI2001a||NCI Thesaurus, 2001a||
     206||NCISEER_1999||NCISEER ICD Neoplasm Code Mappings, 1999||
     207||NDDF01||!FirstDataBank National Drug !DataFile, 2001-07||
     208||NEU99||Neuronames Brain Hierarchy, 1999||
     209||NIC99||Nursing Interventions Classification, 1999||
     210||NOC97||Nursing Outcomes Classification, 1997||
     211||OMIM97||OMIM, Online Mendelian Inheritance in Man, 1997||
     212||OMS94||Omaha System, 1994||
     213||PCDS97||Patient Care Data Set, 1997||
     214||PDQ2002||Physician Data Query, 2002||
     215||PPAC98||Pharmacy Practice Activity Classification , 1998||
     216||PSY2001||Thesaurus of Psychological Index Terms, 2001||
     217||QMR96||Quick Medical Reference (QMR), 1996||
     218||RAM99||QMR clinically related terms from Randolph A. Miller, 1999||
     219||RCD99||Clinical Terms Version 3 (CTV3) (Read Codes), 1999||
     220||RCDAE_1999||Read thesaurus, American English Equivalents, 1999||
     221||RCDSA_1999||Read thesaurus Americanized Synthesized Terms, 1999||
     222||RCDSY_1999||Read thesaurus, Synthesized Terms, 1999||
     223||RUS2003||Russian Translation of MeSH, 2003||
     224||RXNORM_03AA||RXNORM Project, META2003AA||
     225||SNM2||SNOMED-2, 2||
     226||SNMI98||SNOMED International, 1998||
     227
     228Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 54 of 67] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}]
     229
     230[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Terminology Package Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     231
     232||||UMLS 2003 Terminology Identifiers||
     233||Identifier||Description||
     234||SNOMED-CT||SNOMED International Clinical Terms, 2002||
     235||SPN02||Standard Product Nomenclature, 2002||
     236||SRC||Metathesaurus Source Terminology Names||
     237||ULT93||UltraSTAR, 1993||
     238||UMD2003||UMDNS: product category thesaurus, 2003||
     239||UMLS||UMLS: National Library of Medicine, USA||
     240||UWDA155||University of Washington Digital Anatomist, 1.5.5||
     241||VANDF01||Veterans Health Administration National Drug File, 2001||
     242||WHO97||WHO Adverse Reaction Terminology, 1997||
     243||WHOFRE_1997||WHOART, French Translation, 1997||
     244||WHOGER_1997||WHOART, German Translation, 1997||
     245||WHOPOR_1997||WHOART, Portuguese Translation, 1997||
     246||WHOSPA_1997||WHOART, Spanish Translation, 1997||
     247
     248[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 55 of 67] Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007]
     249
     250  © 2003-2006 The openEHR Foundation    email: info@openEHR.org web: !http://www.openEHR.org
     251
     252Terminology Package [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     253
     2545.4 Class Definitions
     255
     2565.4.1 TERMINOLOGY_SERVICE Class
     257
     258[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15429 © 2003-2006 The openEHR Foundation]  email: info@openEHR.org web: !http://www.openEHR.org
     259
     260||CLASS||TERMINOLOGY_SERVICE||
     261||Purpose||Defines an object providing proxy access to a terminology service.||
     262||Inherit||OPENEHR_CODE_SET_IDENTIFIERS, OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS||
     263||Functions||Signature||Meaning||
     264||||terminology (name: String):||Return an interface to the terminology||
     265||||TERMINOLOGY_ACCESS||named name. Allowable names include||
     266||||require||• “openehr”||
     267||||name /= Void and then has_terminology (name) ensure Result /= Void||[http://www.nlm.nih.gov/research/umls/metaa1.html • “centc251” • any name from are taken from the US NLM UMLS meta-data list at http://www.nlm.nih.gov/research/umls/metaa1.html]||
     268||||code_set (name: String): CODE_SET_ACCESS require name /= Void and then has_code_set (name) ensure Result /= Void||Return an interface to the code_set identified by the external identifier name (e.g. “ISO_639-1”).||
     269||||code_set_for_id(id: String): CODE_SET_ACCESS require id /= Void and then valid_code_set_id (id) ensure Result /= Void has_terminology (name: String): Boolean require name /= Void and then not name.is_empty||[http://www.nlm.nih.gov/research/umls/metaa1.html 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 • “openehr” • “centc251” • any name from are taken from the US NLM UMLS meta-data list at http://www.nlm.nih.gov/research/umls/metaa1.html]||
     270||||
     271
     272Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 56 of 67] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}]
     273
     274[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Terminology Package Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     275
     276||CLASS||TERMINOLOGY_SERVICE||
     277||||has_code_set (name: String): Boolean require name /= Void and then not name.is_empty||True if code_set linked to internal name (e.g. “languages”) is available.||
     278||||terminology_identifiers: List<String>||[http://www.nlm.nih.gov/research/umls/metaa1.html 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]||
     279||||code_set_identifiers: List<String>||Set of all code set identifiers known in the terminology service.||
     280||||openehr_code_sets: Hash<String, String>||Set of all code sets identifiers for which there is an internal openEHR name; returned as a Hash of ids keyed by internal name.||
     281||Invariants||||
     282
     2835.4.2 TERMINOLOGY_ACCESS Class
     284
     285||CLASS||TERMINOLOGY_ACCESS||
     286||Purpose||Defines an object providing proxy access to a terminology.||
     287||Functions||Signature||Meaning||
     288||||id: String||Identification of this Terminology||
     289||||all_codes: Set<CODE_PHRASE>||Return all codes known in this terminology||
     290||||codes_for_group_id (group_id: String): Set<CODE_PHRASE>||Return all codes under grouper ‘group_id’ from this terminology||
     291||||has_code_for_group_id (group_id: String; a_code: CODE_PHRASE): Boolean codes_for_group_name (name, lang: String): Set<CODE_PHRASE>||True if ‘a_code’ is known in group ‘group_id’ in the openEHR terminology. Return all codes under grouper whose name in ‘lang’ is ‘name’ from this terminology||
     292||||
     293||||rubric_for_code (code, lang: String): String||Return all rubric of code ‘code’ in language ‘lang’.||
     294||Invariants||id_exists: id /= Void and then not id.is_empty||
     295
     296[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 57 of 67] Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007]
     297
     298  © 2003-2006 The openEHR Foundation    email: info@openEHR.org web: !http://www.openEHR.org
     299
     300Terminology Package [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     301
     3025.4.3 CODE_SET_ACCESS Class
     303
     304||CLASS||CODE_SET_ACCESS||
     305||Purpose||Defines an object providing proxy access to a code_set.||
     306||Functions||Signature||Meaning||
     307||||id: String||External identifier of this code set||
     308||||all_codes: Set<CODE_PHRASE>||Return all codes known in this code set||
     309||||has_lang (a_lang: CODE_PHRASE): Boolean||True if code set knows about ‘a_lang’||
     310||||has_code (a_code: CODE_PHRASE): Boolean||True if code set knows about ‘a_code’||
     311||Invariants||Id_valid: id /= Void and then not id.is_empty||
     312
     3135.4.4 OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS Class
     314
     315[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15429 © 2003-2006 The openEHR Foundation]  email: info@openEHR.org web: !http://www.openEHR.org
     316
     317||CLASS||OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS||
     318||Purpose||List of identifiers for groups in the openEHR terminology.||
     319||Constants||Signature||Meaning||
     320||||Terminology_id: Stringis “openehr”||Name of openEHR’s own terminology||
     321||||Group_id_audit_change_type: String is “audit change type”||||
     322||||Group_id_attestation_reason: String is “attestation reason”||||
     323||||Group_id_composition_category: Stringis “composition category”||||
     324||||Group_id_event_math_function: String is “event math function”||||
     325||||Group_id_instruction_states: Stringis “instruction states”||||
     326||||Group_id_instruction_transitions: String is “instruction transitions”||||
     327||||Group_id_null_flavours: String is “null flavours”||||
     328
     329Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 58 of 67] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}]
     330
     331[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Terminology Package Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     332
     333||CLASS||OPENEHR_TERMINOLOGY_GROUP_IDENTIFIERS||
     334||||Group_id_property: Stringis “property”||||
     335||||Group_id_participation_function: Stringis “participation function”||||
     336||||Group_id_participation_mode: String is “participation mode”||||
     337||||Group_id_subject_relationship: String is “subject relationship”||||
     338||||Group_id_setting: String is “setting”||||
     339||||Group_id_term_mapping_purpose: String is “term mapping purpose”||||
     340||||Group_id_version_lifecycle_state: Stringis “version lifecycle state”||||
     341||Functions||Signature||Meaning||
     342||||valid_terminology_group_id (an_id: String): Boolean||Validity function to test if an identifier is in the set defined by this class.||
     343||Invariants||||
     344
     3455.4.5 OPENEHR_CODE_SET_IDENTIFIERS Class
     346
     347||CLASS||OPENEHR_CODE_SET_IDENTIFIERS||
     348||Purpose||List of identifiers for code sets in the openEHR terminology.||
     349||Constants||Signature||Meaning||
     350||||Code_set_id_character_sets: String is “character sets”||||
     351||||Code_set_id_compression_algorithms: Stringis “compression algorithms”||||
     352||||Code_set_id_countries: String is “countries”||||
     353||||Code_set_id_integrity_check_algorithms: Stringis “integrity check algorithms”||||
     354||||Code_set_id_languages: String is “languages”||||
     355
     356[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 59 of 67] Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007]
     357
     358  © 2003-2006 The openEHR Foundation    email: info@openEHR.org web: !http://www.openEHR.org
     359
     360Terminology Package [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]
     361
     362||CLASS||OPENEHR_CODE_SET_IDENTIFIERS||
     363||||Code_set_id_media_types: String is “media types”||||
     364||||Code_set_id_normal_statuses: String is “normal statuses”||||
     365||Functions||Signature||Meaning||
     366||||valid_code_set_id (an_id: String): Boolean||Validity function to test if an identifier is in the set defined by this class.||
     367||Invariants||||
     368
     369Date of Issue:[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15448 08 Apr 2007] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_19440 Page 60 of 67] [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 Editors:{T Beale, S Heard}, {D Kalra, D Lloyd}]
     370
     371[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15429 © 2003-2006 The openEHR Foundation]  email: info@openEHR.org web: !http://www.openEHR.org
     372
     373[file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15311 Support Information Model] Measurement Package Rev [file:///home/skoba/src/openehr-jp/adl/trunk/pdf2html/rm/support_im/support_im.htm#LinkTarget_15315 1.6.0]