Page tree

Versions Compared

Key

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

Date & Time

20:00 UTC Wednesday 15 March 2016 

GoToMeeting Details

https://global.gotomeeting.com/join/941718685

Goals

  • Review ECL known implementations list
  • Discuss Query specification reference set
  • Progress SNOMED template syntax

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
Review ECL known implementations list

SNOMED CT Expression Constraint Language

Discuss Query specification reference set

Alejandro has asked us to consider extensions to the |Query specification reference set| for better support of the computable languages.

  • How many query refsets?
    • Should everyone add their query rows to the same query refset? Alternatively, we could define one query refset per computable language and restrict the type of the query appropriately (e.g. create an |Expression constraint query refset|, where the query is of type |Expression constraint parsable string|)
  • Potential query refset attributes
    • referencedComponentId: |Concept type component| (or more specifically |Reference set concept type component|)
      • This defines the reference set into which the expansion of the query (executed against the given substrate) is populated. Initially, this will always be a simple type refset - however, we may wish to consider populating other types of refsets in future versions of the query language.
    • query: |String| (... or perhaps more specifically |SNOMED CT parsable string|)
    • queryLanguage: |Concept type component| (e.g. |Expression constraint language|)
      • Note: This attribute could be deleted if (a) we create separate query refsets for each of the main languages, or (b) rely on parsing the queryLanguageVersion URI to determine the language used
    • queryLanguageVersion: |Uniform resource identifier|
      • Defines the query language version (and perhaps profile if relevant) used by the query
    • expansionGenerated: Boolean (mutable)
      • A boolean flag that indicates whether or not the refset referred to by referencedComponentId has been populated by executing the query against the given substrate
      • Note: There are 2 potential ways that we could infer this value:
        1. Based on whether or not the refset referred to by referencedComponentId has members and/or
        2. Based on whether the substrate referenced includes a specific edition and specific version.
      • If 2. is true (ie the substrate refers to a versioned edition), then the members of the referencedComponent reference set should include the result of execution
      • If the substrate only includes an edition (with no version), or includes the more general "http://snomed.info" AND there are no members in the reference set, then it could be assumed that the query has not been executed against the substrate
      • If the referencedComponent refset is populated, and the substrate does not refer to a specific versioned edition, then should this be illegal ... or do we assume the latest version by default (and if no edition is specified, then the international edition by default)?
      • If the referencedComponent refset has no members, and the substrate does refer to a versioned edition, then can we assume that the query has been executed and produces 0 resultsWould it be an error to have expansionGenerated = 0, but still have members in the refset referred to by the referencedComponentId?
    • substrate: |Uniform resource identifier| ... http://snomed.info
      • The edition and/or version of the substrate used to generate the expansion into the refset identified by referencedComponentId. If no specific substrate is defined, then "http://snomed.info" could be used as a generic value.
      • Note: This attribute could be deleted if we assume that this will be defined in the query itself - however doing this will only be possible using the full SNOMED query language (with the filter substrate = "....")
  • How many rows in the query refset?
    • Since executing a query on different substrates may result in a different expansion (and therefore require a different referencedComponentId to indicate a different expansion refset), a separate row of the query refset should be created for each different query+substrate combination.

Alternative suggestion from Harold - 2 reference sets

  1. Query ref set (refsetId = |query refset|)
  • id: UUID
  • referencedComponentId - Query definition ref set
  • query - string
  • <metadata>Name, author, (etc ... Dublincore)
  • edition/substrate: URI (It was suggested that if the query is written based on a specific national/local edition, then we may need to identify which edition it was based on)

2. Query Expansion ref set (refsetId = |query refset|)

  • referencedComponentId
  • query: UUID
  • queryLanguage: URI
  • substrate
Progress SNOMED template syntaxWIP document: http://snomed.org/-sts
Confirm next meeting date/timeNext meeting to be held at 20:00 UTC on Wednesday 29th March 2017

Meeting Files

Attachments