Proposal for linguistic convention for referencing coded terms
Problem statement
In the specifications of IHTSDO, and indeed in any other documents talking about terminologies, including academic papers, as far as I know, there is no standard way of referring to coded terms in a way that is unambiguous. In some IHTSDO documents there is a convention of using bar characters ('|'). So far I have not seen any explicit convention for this, so I would like to propose a) that a convention be written and documented and b) an actual convention.
Why is this important? Because it is often difficult in written texts, including specifications and papers, to know whether the author is using words, e.g. 'Discharge Summary' to mean the general notion in the real world, or a coded 'concept' in some terminology.
Proposal
Based on what I have seen previously in SNOMED related documents, I would like to suggest a convention such as the following:
reference to |
syntax |
example |
---|---|---|
code and term |
code|term| |
J01|Acute sinusitis| (in ICD10) |
term only |
|term| |
|Acute sinusitis|, |sinusitis| |
code, term and terminology |
terminology_id::code|term| |
ICD10::J01|Acute sinusitis| |
code, term and terminology, including release |
terminology_id(release_id)::code|term| |
|
term and terminology |
terminology_id(release_id)::|term| |
ICD10::|Acute sinusitis| |
term within hierarchy |
|parent/parent/ ..... /term| |
|
terminology and code |
terminology_id(release_id)::code |
SNOMEDCT::36971009 |
This syntax allows us to write sentences like:
"The following patient transfer concepts can be used in the national discharge summary content framework: |discharge summary|, |referral|, etc."
It also allows us to do useful things like compare two such strings and determine if they are from the same terminology, but different releases. This brings us to the thorny issue of human-readable terminology identifiers.
Syntax Definition
A set of production rules for the above syntax is:
ref ::= terminology_part code_part | code_part terminology_part ::= terminology_id release_part '::' release_part ::= -- nothing is ok | '(' release_id ')' code_part ::= concept_id term_part | concept_id | term_part term_part ::= '|' text '|'