Page tree

Date & Time

20:00 UTC Wednesday 20th December 2017

Teleconference Details

To join the meeting please go to https://snomed.zoom.us/j/471420169

Further information can be found at SLPG meeting information

Goals

  • Review proposed Query language examples

Apologies


Agenda and Meeting Notes

Description
Owner
Notes

Welcome and apologies


Query Language
  • Review proposed Query Language examples
  • Consider issues and potential resolutions. Questions needing resolution include:

    • Do we need inferred relationship filters?
      • Answer: Tentative Yes
    • If yes, then what are some good use cases?
      • Answer: QA - Find me all the source concepts of a relationship added in an extension module
      • Answer: QA - Find me all the source concepts of a relationship added at a particular effective time

    • How should no brackets be interpreted?
      1. What does this mean? "< 404684003 |Clinical finding| {{ C.definitionStatusId = 900000000000074008 |Primitive|}}"
        • 1a) ( < 404684003 |Clinical finding| ) {{ C.definitionStatusId = 900000000000074008 |Primitive|}}
        • 1b) < ( 404684003 |Clinical finding| {{ C.definitionStatusId = 900000000000074008 |Primitive|}} )
        • Answer: 1a
      2. What does this mean? "< 404684003 |Clinical finding| : 363698007 |Finding site| = << 80891009 |Heart structure| {{ C.definitionStatusId = 900000000000074008 |Primitive|}}"
        • 2a) ( < 404684003 |Clinical finding| : 363698007 |Finding site| = << 80891009 |Heart structure| ) {{ C.definitionStatusId = 900000000000074008 |Primitive|}}
        • 2b) < 404684003 |Clinical finding| : 363698007 |Finding site| = (( << 80891009 |Heart structure| ) {{ C.definitionStatusId = 900000000000074008 |Primitive|}} )
        • 2c) < 404684003 |Clinical finding| : 363698007 |Finding site| = << (( 80891009 |Heart structure| ) {{ C.definitionStatusId = 900000000000074008 |Primitive|}} )
        • Answer: 2a

    • If we do support relationship filters, then where should they go and how should they be bracketed?
      1. Directly after the attribute - for example:
        • 1a) < 404684003 |Clinical finding| : 363698007 |Finding site| {{ R.moduleId = 32506021000036107 |AU extension|}} = << 80891009 |Heart structure|
        • or
        • 1b) < 404684003 |Clinical finding| : ( 363698007 |Finding site| {{ R.moduleId = 32506021000036107 |AU extension| }} ) = << 80891009 |Heart structure|
      1. Directly after the refinement (with brackets) - for example:
        • 2a) < 404684003 |Clinical finding| : (( 363698007 |Finding site| = << 80891009 |Heart structure| ) {{ R.moduleId = 32506021000036107 |AU extension|}})
        • or
        • 2b) < 404684003 |Clinical finding| : ( 363698007 |Finding site| = << 80891009 |Heart structure| {{ R.moduleId = 32506021000036107 |AU extension|}} )
      2. Directly after the =/!= , for example:
        • 3a) < 404684003 |Clinical finding| : 363698007 |Finding site| = {{ R.moduleId = 32506021000036107 |AU extension|}} << 80891009 |Heart structure|
      3. Directly after the constraint operator (Interpretation - there exists a relationship in the chain) - for example:
        • 3a) < {{ R.moduleId = 32506021000036107 |AU extension|}} 404684003 |Clinical finding|
      4. After the concept being constrained - for example:
        • 4a) < 404684003 |Clinical finding| {{ R.moduleId = 32506021000036107 |AU extension|}}
        • or
        • 4b) ( < 404684003 |Clinical finding| ) {{ R.moduleId = 32506021000036107 |AU extension|}}
      • Answer(s): ? 2b and 4a (Note: 1b is more consistent with dotted notation)

    • How do we indicate the execution order for relationship filters?
      • Dotted notation - For example "ANY . << 246090004 |Associated finding| . 363698007 |Finding site|"
        1. Only returns those concepts that result from using a |Finding site| relationship in the AU core (Note: return the destinationConcept of these relationships)
          • 1a) ANY . << 246090004 |Associated finding| . 363698007 |Finding site| {{ R.moduleId != 'AU Core' }}
          • or
          • 1b) ANY . << 246090004 |Associated finding| . ( 363698007 |Finding site| {{ R.moduleId != 'AU Core' }} )
          • Answer: ? 1b
        2. Only returns those concepts that result from using an |Associated finding| relationship (or type of |associated finding| relationship) in the AU core (Note: return the destinationConcept of these relationships)
          • 2a) ANY . << 246090004 |Associated finding| {{ R.moduleId != 'AU Core' }}. 363698007 |Finding site| 
          • or
          • 2b) ANY . ( << 246090004 |Associated finding| ) {{ R.moduleId != 'AU Core' }}. 363698007 |Finding site| 
          • or
          • 2c) ANY . ( << 246090004 |Associated finding| {{ R.moduleId != 'AU Core' }} ). 363698007 |Finding site|
          • Answer: ? 2c
      • Cardinality
        1. Exactly one matching relationship in the AU core (but may be other matching relationships in other modules)
          • 1a) < 404684003 |Clinical finding| : [1..1] ( 63698007 |Finding site| = << 80891009 |Heart structure| {{ R.moduleId = 32506021000036107 |AU extension|}} )
          • or
          • 1b) < 404684003 |Clinical finding| : [1..1] ( 63698007 |Finding site| = << 80891009 |Heart structure| ) {{ R.moduleId = 32506021000036107 |AU extension|}}
          • Answer: ? 1a
        2. Exactly one matching relationship, and this relationship is in the AU core
          • 2a) < 404684003 |Clinical finding| : ( [1..1] 63698007 |Finding site| = << 80891009 |Heart structure| {{ R.moduleId = 32506021000036107 |AU extension|}} )
          • or
          • 2b) < 404684003 |Clinical finding| : ( [1..1] 63698007 |Finding site| = << 80891009 |Heart structure| ) {{ R.moduleId = 32506021000036107 |AU extension|}}
          • Answer: ? 2a

    • Which keyword filters must be qualified with a component/refset type? (e.g. "C", "D", "R", "M")
      • For example, do we qualify "substrate"? "languageRefSetId", "preferredTerm", "fullySpecifiedName", "acceptableTerm"?

    • What options do we provide for constraining terms, preferred terms, fully specified names, acceptable terms and/or selecting language refsets?
      • See slide deck
Confirm next meeting date/time

Next meeting to be held at 20:00 UTC on Wednesday 17th January 2018

  File Modified
Microsoft Powerpoint Presentation Draft SNOMED Query Language - Examples for Discussion.pptx 2017-Dec-18 by Linda Bird


  • No labels