R6 Ballot (3rd Draft) FHIR CI-Build

Publish-box (todo) This is the Continuous Integration Build of FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions

Example OperationDefinition/Measure-care-gaps (XML)

Maturity Level : N/A
Responsible Owner: Clinical Quality Information Work Group Standards Status : Informative

Raw XML ( canonical form + also see XML Format Specification )

Operation Definition

<?xml version="1.0" encoding="UTF-8"?>

<OperationDefinition xmlns="http://hl7.org/fhir">
  <id value="Measure-care-gaps"/> 
  <text> 
    <status value="generated"/> 
    <div xmlns="http://www.w3.org/1999/xhtml">
      <p class="res-header-id">
        <b> Generated Narrative: OperationDefinition Measure-care-gaps</b> 
      </p> 
      <a name="Measure-care-gaps"> </a> 
      <a name="hcMeasure-care-gaps"> </a> 
      

      <p> URL: [base]/Measure/$care-gaps</p> 
      <h3> Parameters</h3> 
      <table class="grid">
        <tr> 
          <td> 
            <b> Use</b> 
          </td> 
          <td> 
            <b> Name</b> 
          </td> 
          <td> 
            <b> Scope</b> 
          </td> 
          <td> 
            <b> Cardinality</b> 
          </td> 
          <td> 
            <b> Type</b> 
          </td> 
          <td> 
            <b> Binding</b> 
          </td> 
          <td> 
            <b> Documentation</b> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> measureUrl</td> 
          <td/>  
          <td> 1..*</td> 
          <td> 
            <a href="datatypes.html#canonical">canonical</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The URL of a measure for which the gaps in care report will be created. A measure
                 URL is specified in the 
                <a href="https://www.hl7.org/fhir/measure-definitions.html#Measure.url">url</a>  element of the Measure resource. The measure URL remains the same when the measure

                 is stored on different servers.
              </p>             </div>           </td>         </tr>         <tr>           <td> IN</td> 
          <td> periodStart</td> 
          <td/>  
          <td> 1..1</td> 
          <td> 
            <a href="datatypes.html#date">date</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              The start of the measurement period. In keeping with the semantics of the date
                 parameter used in the FHIR search operation, the period will start at the beginning
                 of the period implied by the supplied timestamp. E.g. a value of 2014 would set
                 the period s

              <p> The start of a gaps through period. This may be the start of the measurement period
                 defined by a measure, or a customized desired performance period start date determined
                 by a payer, a provider, a measure program, and etc.</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> periodEnd</td> 
          <td/>  
          <td> 1..1</td> 
          <td> 
            <a href="datatypes.html#date">date</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              The end of the measurement period. The period will end at the end of the period
                 implied by the supplied timestamp. E.g. a value of 2014 would set the period end
                 to be 2014-12-31T23:59:59 inclusive

              <p> The end of a gaps through period (the gaps through date). The gaps through date
                 could be a past date or a future date. For example, today's date is 2020-06-18,
                 1) if periodEnd date is 2020-09-30, it returns gaps through 2020-09-30, and 2)
                 if the periodEnd date is 2020-05-31, it returns gaps through 2020-05-31.</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          

          <td> subject</td> 
          <td/>  
          

          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#string">string</a> 
            <br/>  (
            <a href="search.html#reference">reference</a> )
          </td> 
          <td/>  
          <td> 
            <div> 
              The topic to be used to determine which measures are considered for the care gaps
                 report. Any measure with the given topic will be included in the report

              <p> Subject(s) for which the care gaps report will be produced. The subject may be
                 a Patient, Practitioner, PractitionerRole, Organization, Location, Device, or Group.
                 Subjects provided in this parameter SHALL match the subjectType of the measure
                 being evaluated (e.g. if the Measure.group.subjectType is Patient, the subject
                 SHALL be a reference to a Patient or a Group of Patients). If no subject is provided,
                 what subjects are evaluated is up to the server. This parameter cannot be used
                 with the subjectGroup parameter.</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          

          <td> subjectGroup</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="group.html">Group</a> 
          </td> 
          <td/>  
          

          <td> 
            <div> 
              <p> Subject for which the gaps in care report will be created is provided as a Group
                 resource. Subjects provided in this parameter SHALL match the subjectType of the
                 measure being evaluated.  (e.g. if the Measure.group.subjectType is Patient, the
                 subject SHALL be a reference to a Patient or a Group of Patients). If no subject
                 is provided, what subjects are evaluated is up to the server. This parameter cannot
                 be used with the subject parameter.</p> 
            </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> practitioner</td>           <td/>            <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#string">string</a> 
            <br/>  (
            <a href="search.html#reference">reference</a> )
          </td> 
          <td/>  
          <td> 
            <div> 
              

              <p> Reference to a 
                <a href="practitioner.html">Practitioner</a>  for which the gaps in care report will be created. For a practitioner focused
                 gaps in care report, this is a required In Parameter. The Server needs to make
                 sure that practitioner is authorized to get the gaps in care report for and know
                 what measures the practitioner are eligible or qualified.
              </p>             </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> organization</td>           <td/>            <td> 0..1</td>           <td>             <a href="datatypes.html#string">string</a>             <br/>  (            <a href="search.html#reference">reference</a> )          </td>           <td/>            <td>             <div>               <p> Reference to an                 <a href="organization.html">Organization</a>  for which the gaps in care report will be created. Either 'organization' or 'organizationRes

                ource' SHALL be provided, but not both.
              </p>             </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> organizationResource</td>           <td/>            <td> 0..1</td>           <td>             <a href="organization.html">Organization</a>           </td>           <td/>            <td>             <div>               <p> Organization for which the gaps in care report will be created is provided as an

                 Organization resource. This is intended to support the use case in which the organization
                 information is not on the server performing the evaluation, for example an 
                <a href="clinicalreasoning-quality-reporting.html#ad-hoc-organizations">ad-hoc group of practitioners</a>  that are part of a provider group. Either 'organization' or 'organizationResource'

                 SHALL be provided, but not both.
              </p>             </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> location</td>           <td/>            <td> 0..*</td>           <td>             <a href="datatypes.html#string">string</a>             <br/>  (            <a href="search.html#reference">reference</a> )          </td>           <td/>            <td>             <div>               <p> The location(s) for which the gaps in care report will be run. This parameter is

                 reflected in the location element of the resulting MeasureReport(s).</p> 
            </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> status</td>           <td/>            <td> 1..*</td>           <td>             <a href="datatypes.html#code">code</a>           </td>           <td/>            <td>             <div>               <p> Indicates status of a care gap. For all [open, closed, and prospective gaps], three

                 seperate status parameters must be provided. For a positive proportion measure,
                 gap means the patient is not in the numerator. For an inverse (negative) proportion
                 measure (e.g., Diabetes: Hemoglobin A1c (HbA1c) Poor Control (&gt; 9%)), gap means
                 the patient is in the numerator.</p> 
            </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> isDocument</td>           <td/>            <td> 0..1</td>           <td>             <a href="datatypes.html#boolean">boolean</a>           </td>           <td/>            <td>             <div>               <p> The isDocument parameter controls whether a Gaps in Care Composition is returned

                 in the Bundle (i.e. if the Bundle is of type 'Document'). When 'true,' the returned
                 Bundles contain the Gaps in Care Composition. This parameter defaults to 'true.'</p> 
            </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> parameters</td>           <td/>            <td> 0..1</td>           <td>             <a href="parameters.html">Parameters</a>           </td>           <td/>            <td>             <div>               <p> Any input parameters for the evaluation. Parameters defined in this input will

                 be made available by name to the CQL expression. Parameter types are mapped to
                 CQL as specified in the 
                <a href="https://hl7.org/fhir/uv/cql/">Using CQL with FHIR</a>  implementation guide. If a parameter appears more than once in the input Parameters

                 resource, it is represented with a List in the input CQL. If a parameter has parts,
                 it is represented as a Tuple in the input CQL.
              </p>             </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> manifest</td>           <td/>            <td> 0..1</td>           <td>             <a href="datatypes.html#canonical">canonical</a>  (            <a href="library.html" title="http://hl7.org/fhir/StructureDefinition/Library">Library</a> )          </td>           <td/>            <td>             <div>               <p> Specifies an asset-collection library that provides dependency version resolution

                 and expansion rules for the operation. See the version manifest discussion in the
                 
                <a href="http://hl7.org/fhir/uv/crmi/version-manifest.html">Canonical Resource Management Infrastructure IG</a>  for a complete description of how manifest values are used to provide defaults

                 for dependency version resolution and expansion parameters. Parameters specified
                 directly in the operation override behaviors specified by the manifest parameter.
                 In general, if this parameter is supplied, it is expected to be used in nested
                 operation calls. For example, in evaluating a measure, if the expansion of a value
                 set is required, this parameter SHALL be supplied to that expansion.
              </p> 
            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> return</td> 
          <td/>  
          

          <td> 0..*</td> 
          <td> 
            <a href="bundle.html">Bundle</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              The result of the care gaps report will be returned as a document bundle with a
                 MeasureReport entry for each included measure

              <p> The $care-gaps operation returns zero or more document Bundles, one for each input
                 subject. Consistent with FHIR Documents generally, each Bundle SHALL have a Composition
                 as the first entry in the document Bundle, and that Composition SHALL be limited
                 to a single subject. See the 
                <a href="https://build.fhir.org/clinicalreasoning-quality-reporting.html#bundles-organized-by-subject">guidance on Bundle structure</a>  for discussion about the Bundle content and organization.\n\nNote that even though

                 there is a single parameter named return of type Bundle, it is a multi-cardinality
                 parameter, and so will still be returned using a Parameters resource, as described
                 in the general operations framework 
                <a href="operations.html#response">response</a> .              </p> 
            </div> 
          </td> 
        </tr> 
      </table> 
      <div> 
        <p> The effect of invoking this operation is to calculate a set of measures for a particular
           topic (e.g. Preventive Care and Screening) and return a document describing the
           results of each measure for the given subject. Note that it is up to the server
           to determine whether or not the generated care gaps report is persisted. If the
           server does not persist the results, the operation does not affect state and can
           be invoked with a GET</p> 
      </div> 
    </div> 
  </text> 
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
    <valueInteger value="3"/> 
  </extension> 
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
    

    <valueCode value="normative"/> 
  </extension> 
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
    <valueCode value="cqi"/> 
  </extension> 
  <url value="http://hl7.org/fhir/OperationDefinition/Measure-care-gaps"/> 
  <version value="6.0.0-ballot3"/> 
  <name value="CareGaps"/> 
  <title value="Care Gaps"/> 
  

  <status value="active"/> 
  <kind value="operation"/> 
  <experimental value="false"/> 
  

  <date value="2025-11-20T23:56:49+00:00"/> 
  <publisher value="HL7 International / Clinical Quality Information"/> 
  <contact> 
    <telecom> 
      <system value="url"/> 
      <value value="http://hl7.org/fhir"/> 
    </telecom> 
    <telecom> 
      <system value="email"/> 
      <value value="fhir@lists.hl7.org"/> 
    </telecom> 
  </contact> 
  <contact> 
    <telecom> 
      <system value="url"/> 
      <value value="http://www.hl7.org/Special/committees/cqi"/> 
    </telecom> 
  </contact> 
  <description value="The care-gaps operation is used to determine gaps-in-care based on the results
   of quality measures"/> 
  <jurisdiction> 
    <coding> 
      <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/> 
      <code value="001"/> 
      <display value="World"/> 
    </coding> 
  </jurisdiction> 
  <affectsState value="false"/> 
  <code value="care-gaps"/> 
  <comment value="The effect of invoking this operation is to calculate a set of measures for a particular
   topic (e.g. Preventive Care and Screening) and return a document describing the
   results of each measure for the given subject. Note that it is up to the server
   to determine whether or not the generated care gaps report is persisted. If the
   server does not persist the results, the operation does not affect state and can
   be invoked with a GET"/> 
  <resource value="Measure"/> 
  <system value="false"/> 
  <type value="true"/> 
  <instance value="false"/> 
  <parameter> 
    <name value="measureUrl"/> 
    <use value="in"/> 
    <min value="1"/> 
    <max value="*"/> 
    <documentation value="The URL of a measure for which the gaps in care report will be created. A measure
     URL is specified in the [url](https://www.hl7.org/fhir/measure-definitions.html#Measure.url)
     element of the Measure resource. The measure URL remains the same when the measure
     is stored on different servers."/> 
    <type value="canonical"/>   </parameter>   <parameter> 
    <name value="periodStart"/> 
    <use value="in"/> 
    <min value="1"/> 
    <max value="1"/> 
    The start of the measurement period. In keeping with the semantics of the date
     parameter used in the FHIR search operation, the period will start at the beginning
     of the period implied by the supplied timestamp. E.g. a value of 2014 would set
     the period s

    <documentation value="The start of a gaps through period. This may be the start of the measurement period
     defined by a measure, or a customized desired performance period start date determined
     by a payer, a provider, a measure program, and etc."/> 

    <type value="date"/> 
  </parameter> 
  <parameter> 
    <name value="periodEnd"/> 
    <use value="in"/> 
    <min value="1"/> 
    <max value="1"/> 
    The end of the measurement period. The period will end at the end of the period
     implied by the supplied timestamp. E.g. a value of 2014 would set the period end
     to be 2014-12-31T23:59:59 inclusive

    <documentation value="The end of a gaps through period (the gaps through date). The gaps through date
     could be a past date or a future date. For example, today's date is 2020-06-18,
     1) if periodEnd date is 2020-09-30, it returns gaps through 2020-09-30, and 2)
     if the periodEnd date is 2020-05-31, it returns gaps through 2020-05-31."/> 

    <type value="date"/> 
  </parameter> 
  <parameter> 
    

    <name value="subject"/> 
    <use value="in"/> 
    

    <min value="0"/> 
    <max value="1"/> 
    The topic to be used to determine which measures are considered for the care gaps
     report. Any measure with the given topic will be included in the report

    <documentation value="Subject(s) for which the care gaps report will be produced. The subject may be
     a Patient, Practitioner, PractitionerRole, Organization, Location, Device, or Group.
     Subjects provided in this parameter SHALL match the subjectType of the measure
     being evaluated (e.g. if the Measure.group.subjectType is Patient, the subject
     SHALL be a reference to a Patient or a Group of Patients). If no subject is provided,
     what subjects are evaluated is up to the server. This parameter cannot be used
     with the subjectGroup parameter."/> 

    <type value="string"/> 
    <searchType value="reference"/> 
  </parameter> 
  <parameter> 
    

    <name value="subjectGroup"/> 
    <use value="in"/> 
    

    <min value="0"/> 
    <max value="1"/> 
    

    <documentation value="Subject for which the gaps in care report will be created is provided as a Group
     resource. Subjects provided in this parameter SHALL match the subjectType of the
     measure being evaluated.  (e.g. if the Measure.group.subjectType is Patient, the
     subject SHALL be a reference to a Patient or a Group of Patients). If no subject
     is provided, what subjects are evaluated is up to the server. This parameter cannot
     be used with the subject parameter."/> 
    <type value="Group"/>   </parameter>   <parameter>     <name value="practitioner"/>     <use value="in"/>     <min value="0"/>     <max value="1"/>     <documentation value="Reference to a [Practitioner](practitioner.html) for which the gaps in care report

     will be created. For a practitioner focused gaps in care report, this is a required
     In Parameter. The Server needs to make sure that practitioner is authorized to
     get the gaps in care report for and know what measures the practitioner are eligible
     or qualified."/> 

    <type value="string"/> 
    <searchType value="reference"/> 
  </parameter> 
  <parameter> 
    
    

    <name value="organization"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="Reference to an [Organization](organization.html) for which the gaps in care report
     will be created. Either 'organization' or 'organizationResource' SHALL be provided,
     but not both."/> 
    <type value="string"/>     <searchType value="reference"/>   </parameter>   <parameter>     <name value="organizationResource"/>     <use value="in"/>     <min value="0"/>     <max value="1"/>     <documentation value="Organization for which the gaps in care report will be created is provided as an

     Organization resource. This is intended to support the use case in which the organization
     information is not on the server performing the evaluation, for example an [ad-hoc
     group of practitioners](clinicalreasoning-quality-reporting.html#ad-hoc-organizations)
     that are part of a provider group. Either 'organization' or 'organizationResource'
     SHALL be provided, but not both."/> 
    <type value="Organization"/>   </parameter>   <parameter>     <name value="location"/>     <use value="in"/>     <min value="0"/>     <max value="*"/>     <documentation value="The location(s) for which the gaps in care report will be run. This parameter is

     reflected in the location element of the resulting MeasureReport(s)."/> 
    <type value="string"/>     <searchType value="reference"/>   </parameter>   <parameter>     <name value="status"/>     <use value="in"/> 
    <min value="1"/> 
    <max value="*"/> 
    <documentation value="Indicates status of a care gap. For all [open, closed, and prospective gaps], three
     seperate status parameters must be provided. For a positive proportion measure,
     gap means the patient is not in the numerator. For an inverse (negative) proportion
     measure (e.g., Diabetes: Hemoglobin A1c (HbA1c) Poor Control (&gt; 9%)), gap means
     the patient is in the numerator."/> 
    <type value="code"/>   </parameter>   <parameter>     <name value="isDocument"/>     <use value="in"/>     <min value="0"/> 
    <max value="1"/> 
    The result of the care gaps report will be returned as a document bundle with a
     MeasureReport entry for each included measure

    <documentation value="The isDocument parameter controls whether a Gaps in Care Composition is returned
     in the Bundle (i.e. if the Bundle is of type 'Document'). When 'true,' the returned
     Bundles contain the Gaps in Care Composition. This parameter defaults to 'true.'"/> 
    <type value="boolean"/>   </parameter>   <parameter>     <name value="parameters"/>     <use value="in"/>     <min value="0"/>     <max value="1"/>     <documentation value="Any input parameters for the evaluation. Parameters defined in this input will

     be made available by name to the CQL expression. Parameter types are mapped to
     CQL as specified in the [Using CQL with FHIR](https://hl7.org/fhir/uv/cql/) implementation
     guide. If a parameter appears more than once in the input Parameters resource,
     it is represented with a List in the input CQL. If a parameter has parts, it is
     represented as a Tuple in the input CQL."/> 
    <type value="Parameters"/>   </parameter>   <parameter>     <name value="manifest"/>     <use value="in"/>     <min value="0"/>     <max value="1"/>     <documentation value="Specifies an asset-collection library that provides dependency version resolution

     and expansion rules for the operation. See the version manifest discussion in the
     [Canonical Resource Management Infrastructure IG](http://hl7.org/fhir/uv/crmi/version-manifes
    t.html) for a complete description of how manifest values are used to provide defaults
     for dependency version resolution and expansion parameters. Parameters specified
     directly in the operation override behaviors specified by the manifest parameter.
     In general, if this parameter is supplied, it is expected to be used in nested
     operation calls. For example, in evaluating a measure, if the expansion of a value
     set is required, this parameter SHALL be supplied to that expansion."/> 
    <type value="canonical"/>     <targetProfile value="http://hl7.org/fhir/StructureDefinition/Library"/>   </parameter>   <parameter>     <name value="return"/>     <use value="out"/>     <min value="0"/>     <max value="*"/>     <documentation value="The $care-gaps operation returns zero or more document Bundles, one for each input

     subject. Consistent with FHIR Documents generally, each Bundle SHALL have a Composition
     as the first entry in the document Bundle, and that Composition SHALL be limited
     to a single subject. See the [guidance on Bundle structure](https://build.fhir.org/clinicalre
    asoning-quality-reporting.html#bundles-organized-by-subject) for discussion about
     the Bundle content and organization.\n\nNote that even though there is a single
     parameter named return of type Bundle, it is a multi-cardinality parameter, and
     so will still be returned using a Parameters resource, as described in the general
     operations framework [response](operations.html#response)."/> 

    <type value="Bundle"/> 
  </parameter> 


</

OperationDefinition

>



Usage note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of the specification.