Page tree

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Date & Time

20:00 UTC Wednesday 12 October 2016 

GoToMeeting Details

Click here to see GoToMeeting joining information

Goals

  • Briefly mention relevant IHTSDO business meetings in Wellington
  • Discuss updates to ECL in v1.1 
    • Decomposition syntax
    • Nesting/subexpressions
  • Discuss proposed v1.0 Template Syntax

Attendees 

Apologies

Observers

Agenda and Meeting Notes

Description
Owner
Notes

Welcome, introductions and apologies

 
Agenda reviewReview agenda for today's meeting
IHTSDO Business Meetings in Wellington

Relevant Modelling Advisory Group (MAG) meeting topics -

Expression Constraint Language v1.1
  • Discuss new updates to ECL in v1.1
    • Decomposition syntax - for example:
        • 57617002 |Urine specimen collection (procedure)| . 363701004 |Direct substance|
            • ... equivalent to ... < *: { R 363701004 |Direct substance| = 57617002 |Urine specimen collection (procedure)| }
        • ( << 17636008 | specimen collection| : 260686004 | method | = 129314006 | Biopsy - action | ) . 363701004 | direct substance|
            • ... equivalent to .... << 105590001|substance| : R 363701004 | direct substance| = ( << 17636008 | specimen collection| : 260686004 | method | = 129314006 | Biopsy - action | )
    • Subexpression requirements
Template Syntax v1.0
  • Discuss draft Template Syntax v0.1

Example 1: CT of X

71388002 |Procedure| : [[~1..1]]

{ 260686004 |Method| = 312251004 |Computed tomography imaging action|,

  405813007 |Procedure site - Direct| = [[+id (<<442083009 |Anatomical or acquired body structure|)]] }

 

Example 2: Family history of disease X in family member Y

413350009 |Finding with explicit context| : [[~1..1]]

{ 246090004 |Associated finding| = [[+id (< 404684003 |Clinical finding)]],

  408732007 |Subject relationship context| = [[+id (<< 125676002 |Person (person)|)]],

  408729009 |Finding context| = 410515003 |Known present|,

  408731000 |Temporal context| = 410511007 |Current or past (actual)| }

  • Topics raised by Ed
      • Preference for option 1 syntax. That is, with 'remove slots' e.g.[[ ~ 0..1 @slot1]] and 'replace slots' e.g. [[ + id (< 12345 |term|) @slot2 ]]
        • Note: Rather than '+ cpt' for a concept replacement, I now prefer '+ id' (for consistency with the URI standard which uses "http://snomed.info/id/267038008" for the concept 267038008 |Edema|)
      • The fact that the "~" may not be necessary in a 'remove slot', as the absence of a "+" may be sufficient (for discussion with the SLPG)
      • The requirement to be able to replace other characters in an expression constraint template (such as comparison operators "=" and "!=")
      • If we all agree on this requirement, then we just need to select an appropriate abbreviation. I see in your example you've used "+char". Perhaps we could also consider "+str"?
      • The fact that a template processor would need to 'clean-up' any left over characters, such as ":". I suggest that we try to document the steps that a template processor should follow to turn a template into an expression, constraint etc.

Proposed Syntax Rules and Questions

  • Constraints and names appearing before a brace apply to the whole relationship group
  • Constraints and names appearing before an attribute apply to the whole Attribute Value pair
  • A cardinality constraint:
    • Preceding a brace indicates the number of times the following relationship group is allowed in the final expression (default separator between repetitions is ",")
    • Preceding an attribute within a relationship group indicates the number of times the following attribute may appear with a distinct (non-redundant) value in each instance of the given relationship group (default separator between repetitions is ",")
    • Preceding an attribute that is not in a relationship group indicates the number of times the following attribute may appear with a distinct (non-redundant) value in the relevant expression (or subexpression) (default separator between repetitions is ",")
    • Within a slot that is a focus concept of an expression (or subexpression) indicates the number of times the slot can be filled in the focus (default separator between repetitions is "+")
    • Within a slot that is the attribute in an Attribute-Value pair indicates the number of distinct attribute concepts that can be used in this position in the expression (default separator between repetitions is ",")
    • Within a slot that is the value of an Attribute-Value pair (but which is NOT the focus concept of a subexpression) is not allowed ???
  • Question 1 - How do we represent the cardinality of how many non-redundant values may appear in a given Attribute-Value pair across any relationship group. While this is currently always [0..*] in the MRCM, this may be more relevant in specialized authoring templates.
  • Question 2 - Do we need to provide support to vary the default connector between repetitions. Note, I think this is probably more important for Expression Constraint Templates, as there are more options (e.g. ANDs and ORs)
  • Question 3 - Do we introduce the ability for expression constraints in a slot to be replaced by a variable name (assigned using a SET-IN construct)? For example:
    • SET (severity_range = < |Severities|) IN [[ @finding ]]: |Severity| = [[+ecl ([[$severity_range]]) ]]
Confirm next meeting date/time

Next meeting to be held at 20:00 UTC on Wednesday 9 November (due to SNOMED Expo in New Zealand)

Meeting Files

No files shared here yet.

  • No labels