| | |
|---|
Welcome and agenda | All | |
Review Feedback for: Postcoordination Guide (Phase 1) | @Anne Randorff Højen | Socialise feedback received so far. Talk through any new/outstanding issues raised. A big thank you for the feedback so far! Need for a more thorough introduction to expressions Upgrade and maintenance is out of scope for the first version Definition status of postcoordinated expressions (vs. correlation between a term and an expression)
|
Postcoordination Implementation Previews | @Kai Kewley | A slot to share information about any complete or ongoing postcoordination implementations. |
The items below are currently on hold |
URIs for language instances | | |
ECL v2.2 Proposal | | Find the leaves of a set of concepts - example use case (find the proximal set in the international core / or in the IPS) - example: Example use cases Proximal ancestors in a specific module: ( > |concept| {{ C moduleId = 1234 }} ) MINUS ( > (> |concept| {{ moduleId = 1234 }}) ) Leaf nodes: < |concept| MINUS (> (< |concept|)) Removing any redundant concepts (ie subsumes another concept) from a set of concepts
Find the root concepts of a set of concepts - example use case (find the proximal set in the international core / or in the IPS) - example: |
ECL v2.1 - Requirement proposals (to be archived) | All | Potential requirements for ECL v2.1 - Discussion and brainstorming Daniel's comments Context supplements - e.g. << 56265001 |Heart disease| {{ + CONTEXT }} – This syntax is too general, as there is a risk of including absent finding, not-done procedure and family history << 56265001 |Heart disease| {{ + CONTEXT-DEFAULT }} ? – What would this mean? Brief form: Expanded form: [[ @ecl_query ]] OR (< 243796009 |Situation with explicit context|: { ( 246090004 |Associated finding| = ( [[ @ecl_query ]] ) OR |Associated procedure| = ( [[ @ecl_query ]] ) ( |Procedure context| = |Done| OR |Finding context| = |Known present|), |Subject relationship context| = |Subject of record|, |Temporal context| = [[ @temporal_value ]] } )
Example 1: << |Heart procedure| {{ + Context (Temporal = *) }} << |Heart procedure| OR (< 243796009 |Situation with explicit context|: { 246090004 |Associated finding| = << 56265001 |Heart disease|, |Procedure context| = |Done|, |Subject relationship context| = |Subject of record|, |Temporal context| = * } ) Example 2: (<< |Heart disease| OR << |Heart procedure| ) {{ + Context (Temporal = *) }} << |Heart procedure| OR (< 243796009 |Situation with explicit context|: { ( 246090004 |Associated finding| = (<< |Heart disease| OR << |Heart procedure| ) OR |Associated procedure| = ( << |Heart disease| OR << |Heart procedure| ) ) ( |Procedure context| = |Done| OR |Finding context| = |Known present|), |Subject relationship context| = |Subject of record|, |Temporal context| = * } )
<< 56265001 |Heart disease| {{ + Context (Temporal = *, FindingContext=<<|Known present| }}
However, you may want to exclude (or include) specific contexts - for example: To ensure that the finding was about the subject of the record (and not a family history, e.g. to exclude 429959009 |Family history of heart failure (situation)|), you could say: To ensure that the finding was 'Known present' (e.g. to exclude 394926003 |Heart disease excluded (situation)|), you could say: To ensure that the finding was about the subject of the record AND known present, you could say: ?? Is there any use case for restricting adding temporal context? (e.g. temporal != << 410513005 |In the past|)
Is any more syntactic sugar required? E.g. {{ + CONTEXT (relationship = self, finding context = present, temporal != past) }} {{ + CONTEXT (self, present, ! past) }}
Other ideas? Common profiles?
-------------------------- Ability to return attribute types (see proposal below) [ attributes ] << 125605004 |Fracture of bone (disorder)| << 125605004 |Fracture of bone (disorder)| . Attributes << 125605004 |Fracture of bone (disorder)| . (<< 125605004 |Fracture of bone (disorder)| . Attributes ) [ attribute, value] << 125605004 |Fracture of bone (disorder)|
------------------------- Reverse membership (see below) -------------------------- Other?
|
Returning Attributes | @michael lawley | For example, I can write: << 404684003|Clinical finding| : 363698007|Finding site| = <<66019005|Limb structure| << 404684003|Clinical finding| . 363698007|Finding site| But I can't get all the attribute names that are used by << 404684003|Clinical finding| |
Reverse Member Of | @michael lawley | What refsets is a given concept (e.g. 421235005 |Structure of femur|) a member of? |
Postcoordination Topics | | |
Dynamic Templates | | |
Postcoordination Use Case Examples | All | Example 1 - Dentistry / Odontogram Example 2 - Terminology binding Example 3 - Mapping Design-time activity Map targets may not be able to be fully represented using concept model attributes In many cases, an extension (with primitive concepts) should be recommended where there are gaps in the mapping There may be some cases in which postcoordination is helpful (e.g. LOINC to SNOMED CT map)
Example 4 - Natural Language Processing Usually run-time activity. May require manual confirmation of coding suggestions (unless low clinical risk, eg for suggesting relevant patient records for manual review)
|
Postcoordination Guidance | @Anne Randorff Højen , @Kai Kewley | Practical Guide to Postcoordination |