Unravelable Technical Instance Identifier | |||
---|---|---|---|
This data type is used to uniquely identifiy some entity that exists within some computer system. Examples are object identifier for RIM class instances, things like medical record number, placer and filler order number, service catalog item number, etc. | |||
component name | type/domain | optionality | description |
root |
ISO Object Identifier |
required | This is the required field that guarrantees the uniqueness of the identifier and that permits the origin of the identifier to be determined (un-raveled). This can be the only field in institutions that use OIDs for their internal object identifiers. |
extension | Charater String | optional | The extension can be used in case an institution uses non-OID identifiers locally and does not want to map every internal identifier to OIDs. Especially useful if the local identifiers are not purely numeric. This field may never ever be send alone without the connecting root OID. |
Dereferenceable Technical Instance Identifier | |||
---|---|---|---|
This is a dereferencable locator for some instance. For example, a bunch of radiology images that can be retrieved on demand. | |||
component name | type/domain | optionality | description |
protocol |
Code Value for technical concepts |
required | This mentions the protocol that can interpret the access string and can do something useful for the user to render the patrticular technical instance refered to. This may be spawning a WWW browser with a particular URL, fetching a DICOM image and show it, or opening a telephone connection to another party. |
address | Charater String | required | This is an arbitrary address string that must be meaningful to the protocol. |
The data type for Real World Concepts will be defined in as follows.
This is a bottom up approach! We define the small data types before the bigger ones.
Code Value | |||
---|---|---|---|
A code value is exactly one symbol in a code system. The meaning of the symbol is defined exclusively and completely by the code system that the symbol is from. | component name | type/domain | optionality | description |
value | Character String | required |
this is the plain symbol, like "784.0 "
|
code system | a code by itself | required, can be fixed by context |
denotes the code system that defined the plain symbol |
code system version | Character String | optional | a version descriptor defined specifically for the given code system. |
print name | Character String | optional | a sensible name for the code as a curtesy to an interpreter of the message. THE PRINTNAME HAS NO MEANING, it can never be sent alone and it can never modify the meaning of the code value |
Code Term | |||
---|---|---|---|
A code term is a list of code values which all together make up a meaning. This can be used for example in SNOMED, where you can combine multiple codes into a new composite meaning. HL7 used to combine codes and modifiers for the OBR specimen source. And HCFA procedure codes also come with modifiers. | |||
ORDERED LIST OF Code Value |
Code Translation | |||
---|---|---|---|
This data type holds one code term as one translation in a set of translations describing a concept. The additional information in this data type points to the source code used in the translation process and describes who or what performed the translation and what the quality of this translation is. | |||
component name | type/domain | optionality | description |
code term | Code Term | required | All the meaning of the translation is found here, the rest is descriptive stuff. |
origin |
reference to CodeTranslation |
required | This is the code term in the list of translations on which this translation was based. This is a required component which means, whoever adds an additional translation must reference the source code term. No reference here means that the given translation is the original code. |
producer |
Unravelable Instance Identifier |
optional | This identifier tells what system performed the translation. This information can be useful to audit the translation process or to estimate the quality of the term based on prior experience with a the translation of a given producer. This identifier refers to some system not a particular human coding clerk. However, the system identifier can be fine grained enough so that the human operator can be determined in the process of unraveling the identifier. |
quality |
Floating Point Number [0..1] |
optional | An estimation of the translation quality. This is a value between 0 and 1, where 1 stands for an absolutely accurate translation and 0 stands for random fuzz. We do not require a special method to be used here to estimate the quality. This can just be a subjective estimation of the form we use in eliciting probablilities for a belief network. But we can recommend some example methods of how those values can be computed. We can also map all other quality estimations mentioned in the literature onto the interval [0..1] of real numbers. |
Concept Descriptor | |||
---|---|---|---|
A concept descriptor communicates a real world concept (such as a finding or a diagnosis). A given concept may be expressed in multiple terms where each term is a translation of some other term, or is a (re-)encoding of the original human readable text. | |||
component name | type/domain | optionality | description |
translations |
SET OF Code Translations |
required | These are the translations or quasi-synonyms of one real world concept. Every translation in the set is supposed to "say the same thing in different words." The translations in the set form one directed graph that is fully connected. |
original text | Free Text | optional | This is the original text or phrase entered by a clinician that was the basis for the initial coding. This can also be the text that was displayed to the clinician in a selection menu and thus was the basis for the selection of the particular initial code term in the set of translations. |