Uploaded image for project: 'QDM Issue Tracker'
  1. QDM Issue Tracker
  2. QDM-11

Introduce parameterized definition syntax

XMLWordPrintable

      Recommended update: Introduce the“$” symbol in QDM logic to streamline repetitive logic in a measure.

      The “$” symbol within a variable declaration allows for named substitution of logic to take place. The ability to pass parameters into definitions allows for the reduction of overall measure redundancy, and provides clear separation of logical constructs. Many measures re-use the same set statements in several places, with only very minor variations. This redundancy leads to difficulty in quickly assessing the overall logic, and introduces additional maintenance. It requires changes in multiple places instead of one central definition that encapsulates the desired logic. For example, consider the following QDM logic:

      AND:
          OR: “Procedure, Performed: A” starts before start of “Encounter X”
          OR: “Procedure, Performed: A” ends after end of “Encounter Y”
      AND:
          OR: “Procedure, Performed: B” starts before start of “Encounter X”
          OR: “Procedure, Performed: B” ends after end of “Encounter Y”
      

      These statements could then be simplified to:

      procedureBeforeXAfterY $procedure = 
          AND:
              OR: “Procedure, Performed: $procedure” starts before start of “Encounter X”
              OR: “Procedure, Performed: $procedure” ends after end of “Encounter Y”
      
      $procedureBeforeXAfterY “A”
      $procedureBeforeXAfterY “B”
      

      This prevents the same logic from being repeated, and allows any additions or error corrections to happen at one point in the measure. This becomes even more important in longer measures with large amounts of duplication.

            FEisenberg Floyd Eisenberg
            gblack Gavin Black (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: