Date & Time
Wednesday 22nd June 2016, 20:00 UTC
GoToMeeting Details
Goals
- To progress the SNOMED CT Template Syntax
Attendees
- Chair: Linda Bird
- Project Group: Daniel Karlsson, Alejandro Lopez Osornio, Ed Cheetham, Brian Carlsen, Rob Hausam
Agenda and Meeting Notes
Item | Description | Owner | Notes | Action |
---|---|---|---|---|
1 | Welcome, introductions and apologies | Linda Bird | SLPG meetings will be recorded and recordings will be accessible to SLPG members. |
|
2 | Agenda review | Linda Bird | Review agenda for today's meeting
|
|
3 | Template Syntax - FHIR Example Templates | Linda Bird | STEP 1 - Convert SNOMED CT Expression Template into FHIR Structure Definition (for use as Target of Mapping) CONDITION - RESOURCE
[[ [1..1] @findingWithExplicitContext ]]: #[1..2] @RGa { 246090004 |Associated finding| = ([[ [0..1] @associatedFinding ]]: #[0..1] @RGb { 246112005 |Severity| = [[ [0..1] @severity]], 363698007 |Finding site| = [[ [0..1] @findingSite]] }) 408732007 |Subject relationship context| = 410604004 |Subject of record|, 408731000 |Temporal context| = [[ [1..1] @temporalContext ]], 408729009 |Finding context| = [[ [1..1] @findingContext ]] } CONDITION - HL7
SCT_ConditionTemplate: SNOMEDCTExpressionTemplate findingWithExplicitContext [1]: CodeableConcept RGa [1..2]: RoleGroupElementRelationshipGroupElement associatedFinding [1]: CodeableConcept RGb [0..1]: RoleGroupElementRelationshipGroupElement severity [0..1]: CodeableConcept findingSite [0..1]: CodeableConcept subjectRelationship [1]: CodeableConcept = 410604004 |Subject of record| temporalContext [1]: CodeableConcept findingContext [1]: CodeableConcept ALLERGYINTOLERANCE RESOURCE
[[ [1..1] @findingWithExplicitContext ]]: #[0..2] @RGa { 246090004 |Associated finding| = ([[ [1..1] @associatedFinding ]]: 370135005 |Pathological process| = [[ [0..1] @pathologicalProcess ]], #[0..1] @RGb { 255234002 |After| = [[ [0..1] @after ]], 246075003 |Causative agent| = [[ [1..1] @causativeAgent ]] }) 408732007 |Subject relationship context| = 410604004 |Subject of record|, 408731000 |Temporal context| = [[ [1..1] @temporalContext ]], 408729009 |Finding context| = [[ [1..1] @findingContext ]] } ALLERGYINTOLERANCE - HL7
SCT_AllergyIntoleranceTemplate: SNOMEDCTExpressionTemplate findingWithExplicitContext [1]: CodeableConcept RGa [1..2]: RoleGroupElementRelationshipGroupElement associatedFinding [1]: CodeableConcept pathologicalProcess [0..1]: CodeableConcept RGb [0..1]: RoleGroupElementRelationshipGroupElement after [0..1]: CodeableConcept causativeAgent [1]: CodeableConcept subjectRelationship [1]: CodeableConcept = 410604004 |Subject of record| temporalContext [1]: CodeableConcept findingContext [1]: CodeableConcept PROCEDURE RESOURCEPROCEDURE -
129125009 |Procedure with explicit context|: #[1..1] @RGa { 363589002 |Associated procedure| = ([[ [1..1] @associatedProcedure ]] : #[0..1] @RGb { 363704007 |Procedure site| = [[ [0..1] @procedureSite ]], 363699004 |Direct device| = [[ [0..1] @directDevice ]], 424361007 |Using substance| = [[ [0..1] < 105590001 |Substance| @usingSubstance ]], 424226004 |Using device| = [[ [0..1] < 49062001 |Device|) @usingDevice]] }), 408732007 |Subject relationship context| = 410604004 |Subject of record|, 408731000 |Temporal context| = 410512000 |Current or specified time|, 408730004 |Procedure context| = [[ [0..1] @procedureContext ]] } PROCEDURE - HL7
SCT_ProcedureTemplate: SNOMEDCTExpressionTemplate findingWithExplicitContext [1]: CodeableConcept RGa [1..2]: RoleGroupElementRelationshipGroupElement associatedFinding [1]: CodeableConcept RGb [0..1]: RoleGroupElementRelationshipGroupElement severity [0..1]: CodeableConcept findingSite [0..1]: CodeableConcept subjectRelationship [1]: CodeableConcept = 410604004 |Subject of record| temporalContext [1]: CodeableConcept findingContext [1]: CodeableConcept |
|
4 | Template Syntax - FHIR Mapping Example | STEP 2 - Define Mapping Rules from Source Structure (FHIR Resource) to Target Structure (SNOMED CT Expression Template) SOURCE STRUCTURE Condition: Resource code [1]: CodeableConcept (coding [1..*] - system, version, code, display, userSelected [0..1] - text [0..1]) category [0..1]: CodeableConcept (values: complaint | symptom | finding | diagnosis) clinicalStatus [0..1]: code (values: active | relapse | remission | resolved) verificationStatus [1]: code (values: provisional | differential | confirmed | refuted | entered-in-error | unknown) severity [0..1]: CodeableConcept bodySite [0..*]: CodeableConcept TARGET STRUCTURE SCT_ConditionTemplate: SNOMEDCTExpressionTemplate findingWithExplicitContext [1]: CodeableConcept RGa [1..2]: RoleGroupElementRelationshipGroupElement associatedFinding [1]: CodeableConcept RGb RGaa [0..1]: RoleGroupElementRelationshipGroupElement severity [0..1]: CodeableConcept findingSite [0..1]: CodeableConcept subjectRelationship [1]: CodeableConcept = 410604004 |Subject of record| temporalContext [1]: CodeableConcept findingContext [1]: CodeableConcept RULES rule_1: for source.code as code whereverificationStatus != "entered-in-error" make target.findingWithExplicitContext as fwec then { rule_1a: for code wherecode in descendantsOf (404684003 |Clinical finding|) make target.findingWithExplicitContext = 413350009 |Finding with explicit context|, target.RGa as rga then { rule_1aa: for code make rga.associatedFinding = code rule_1ab: for code whereseverity in descendantsOf (272141005 | Severities|) OR findingSite in descendantsOf (123037004 |Body structure|) make rga.RGb as rgb then { rule_1aba: forsource.severity as sev whereseverity in descendantsOf (272141005 | Severities|) make rgb.severity = sev rule_1abb: for source.bodySite as bs where findingSite in descendantsOf (123037004 |Body structure|) make rgb.findingSite = bs } rule_1ac: for code make rga.subjectRelationship = 410604004 |Subject of record| rule_1ad: for code make rga.temporalContext = 410512000 |Current or specified time| rule_1ae: for source.clinicalStatus as cs, source.verificationStatus as vs make rga.findingContext as fc then { rule_1aea: for vs make fc.coding as coding then { rule_1aeaa: for vs make coding.code = translate ((clinicalStatus,verificationStatus), 'status-to-findingContext-map', code) rule_1aeab: for vs make code.system = "http://snomed.info/" rule_1aeac: for vs make code.display = preferredTerm (en-us, coding.code) } } } rule_1b: for code where code in descendantsOf (413350009 |Finding with explicit context|) make target.findingWithExplicitContext = code then { rule_1ba: } } | ||
5 | Template Syntax - Details | Linda Bird |
Condition [[ [1..1] @findingWithExplicitContext ]]: #[1..2] @RGa { 246090004 |Associated finding| = ([[ [0..1] @associatedFinding ]]: #[0..1] @RGb { 246112005 |Severity| = [[ [0..1] @severity]], 363698007 |Finding site| = [[ [0..1] @findingSite]] }) 408732007 |Subject relationship context| = 410604004 |Subject of record|, 408731000 |Temporal context| = [[ [1..1] @temporalContext ]], 408729009 |Finding context| = [[ [1..1] @findingContext ]] } AllergyIntolerance [[ [1..1] @findingWithExplicitContext ]]: #[0..2] @RGa { 246090004 |Associated finding| = ([[ [1..1] @associatedFinding ]]:
370135005 |Pathological process| = [[ [0..1] @pathologicalProcess ]], #[0..1] @RGb { 255234002 |After| = [[ [0..1] @after ]], 246075003 |Causative agent| = [[ [1..1] @causativeAgent ]] }) 408732007 |Subject relationship context| = 410604004 |Subject of record|, 408731000 |Temporal context| = [[ [1..1] @temporalContext ]], 408729009 |Finding context| = [[ [1..1] @findingContext ]] } Procedure 129125009 |Procedure with explicit context|: #[1..1] @RGa { 363589002 |Associated procedure| = ([[ [1..1] @associatedProcedure ]] : #[0..1] @RGb { 363704007 |Procedure site| = [[ [0..1] @procedureSite ]], 363699004 |Direct device| = [[ [0..1] @directDevice ]], 424361007 |Using substance| = [[ [0..1] < 105590001 |Substance| @usingSubstance ]], 424226004 |Using device| = [[ [0..1] < 49062001 |Device|) @usingDevice]] }), 408732007 |Subject relationship context| = 410604004 |Subject of record|, 408731000 |Temporal context| = 410512000 |Current or specified time|, 408730004 |Procedure context| = [[ [0..1] @procedureContext ]] } | |
6 | Confirm next meeting date/time | Linda Bird
| Confirm date and time of next SLPG meeting - Wednesday 6th July, 20:00 UTC |
|
Meeting Files
Attachments |
---|