Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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

Apologies

Observers

Agenda and Meeting Notes

Advanced Tables - Table Plus
border2
rowStylesbackground-color:#ccccff;font-weight:bold;,background-color:"#eeeeff";font-weight:normal;,background-color:#eeffff;font-weight:normal;
autoNumberSorttrue
autoNumbertrue
enableSortingfalse
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 | )
        • (X . |associated with| AND < |organism|) . |cb|
    • Subexpression requirements
Template Syntax v1.0
  • Discuss draft Template Syntax v0.1

Example 1: CT of X

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

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

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

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

Attachments