Release 5 FHIR CI-Build

This page is part of the Continuous Integration Build of FHIR Specification (v5.0.0: R5 - STU ). This is the current published version in it's permanent home (it will always (will be available incorrect/inconsistent at this URL). For a full list of available versions, see times).
See the Directory of published versions . Page versions: R5 R4B R4

Example OperationDefinition/Measure-collect-data (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-collect-data"/> 
  <text> 
    

    <status value="generated"/> 
    <div xmlns="http://www.w3.org/1999/xhtml">
      <p class="res-header-id">
        <b> Generated Narrative: OperationDefinition Measure-collect-data</b> 
      </p> 
      <a name="Measure-collect-data"> </a> 
      <a name="hcMeasure-collect-data"> </a> 
      <p> URL: [base]/Measure/$collect-data</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> This the the URL of a measure for which the data-of-interest will be collected.
                 A measure URL is specified in the url 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> 
              <p> 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

                 the period start to be 2014-01-01T00:00:00 inclusive</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> 
              <p> 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> 
            </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 measure to evaluate. This parameter is only required when the operation is
                 invoked on the resource type, it is not used when invoking the operation on a Measure
                 instance

              <p> Subject(s) for which the data-of-interest for the measure will be collected. 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 for which data is being collected (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, subjects for which data is collected 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> Subjects for which the data-of-interest for the measure will be collected, provided
                 as a Group resource. Subjects provided in this parameter SHALL match the subjectType
                 of the measure for which data is being collected. (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, subjects for which data is collected is up to the server.
                 This parameter cannot be used with the subject parameter.</p> 
            </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> reporter</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> 
              Subject for which the measure will be collected. If not specified, measure data
                 will be collected for all subjects that meet the requirements of the measure. If
                 specified, the measure will only be calculated for the referenced subject(s)

              <p> The provider for which the data-of-interest will be collected. This may be a reference
                 to a Practitioner, PractitionerRole, or Organization. If specified, systems MAY
                 use this information to determine subjects for which the data-of-interest will
                 be calculated, but how subjects are determined is implementation-specific. This
                 parameter is reflected in the reporter element of the resulting MeasureReport(s).
                 This parameter cannot be used with the reporterResource parameter.</p> 

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

          <td> reporterResource</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> 
              Practitioner for which the measure will be collected. If specified, measure data
                 will be collected only for subjects that have a primary relationship to the identified
                 practitioner

              <p> The provider for which the data-of-interest will be collected, 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. This parameter is reflected in the reporter

                 element of the resulting MeasureReport(s). This parameter cannot be used with the
                 reporter parameter.
              </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 resource for which data-of-interest for the given measure will be

                 collected.</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 data-of-interest will be collected. This parameter

                 is reflected in the location element of the resulting MeasureReport(s).</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> lastReceivedOn</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#dateTime">dateTime</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The date the results of this measure were last received. This parameter used to
                 indicate when the last time data for this measure was collected. This information
                 is used to support incremental data collection scenarios</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> IN</td>           <td> validateResources</td>           <td/>            <td> 0..1</td>           <td>             <a href="datatypes.html#boolean">boolean</a>           </td>           <td/>            <td>             <div>               <p> Indicates whether data collected conform to the appropriate profiles as specified

                 by the measure.</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> 
              

              <p> The results of the data collection, returned as a Bundle for each input subject.
                 The first entries in each Bundle are MeasureReport(s) corresponding to the measures
                 for which data was collected. The MeasureReport resources SHALL have a type of
                 data-exchange. Subsequent entries in each Bundle are resources representing the
                 data-of-interest for the measures, and referenced from the evaluatedResource element
                 of the corresponding MeasureReport resources. See the 
                <a href="clinicalreasoning-quality-reporting.html#bundles-organized-by-subject">guidance</a>  on Bundle structure 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 gather the data required to perform
           an evaluation of the measure. If the lastReceivedOn parameter is supplied, only
           data that is new or has been changed since the lastReceivedOn date is included
           in the response. Note that the resulting MeasureReport is a transient resource</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-collect-data"/> 
  

  <version value="6.0.0-ballot3"/> 
  <name value="CollectData"/> 
  <title value="Collect Data"/> 
  

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

  <date value="2025-11-14T20:54:02+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 collect-data operation is used to collect the data-of-interest for the given
   measure.

   measure. Note that the use of the [X-Provenance header data](provenance.html#header)
   with data that establishes provenance being submitted/collected **SHOULD** be supported.
    This provides the capability for associating the provider with the data submitted
   through the $collect-data transaction. If the X-Provenance header is used it should
   be consistent with the `reporter` element in the DEQM Data Exchange MeasureReport
   Profile."/> 

  <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="collect-data"/> 
  <comment value="The effect of invoking this operation is to gather the data required to perform
   an evaluation of the measure. If the lastReceivedOn parameter is supplied, only
   data that is new or has been changed since the lastReceivedOn date is included
   in the response. Note that the resulting MeasureReport is a transient resource"/> 
  <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="This the the URL of a measure for which the data-of-interest will be collected.
     A measure URL is specified in the 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"/> 
    <documentation value="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

     the period start to be 2014-01-01T00:00:00 inclusive"/> 

    <type value="date"/> 
  </parameter> 
  <parameter> 
    <name value="periodEnd"/> 
    <use value="in"/> 
    <min value="1"/> 
    <max value="1"/> 
    <documentation value="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"/> 
    <type value="date"/> 
  </parameter> 
  <parameter> 
    

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

    <min value="0"/> 
    <max value="1"/> 
    The measure to evaluate. This parameter is only required when the operation is
     invoked on the resource type, it is not used when invoking the operation on a Measure
     instance

    <documentation value="Subject(s) for which the data-of-interest for the measure will be collected. 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 for which data is being collected (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, subjects for which data is collected 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"/> 
    Subject for which the measure will be collected. If not specified, measure data
     will be collected for all subjects that meet the requirements of the measure. If
     specified, the measure will only be calculated for the referenced subject(s)

    <documentation value="Subjects for which the data-of-interest for the measure will be collected, provided
     as a Group resource. Subjects provided in this parameter SHALL match the subjectType
     of the measure for which data is being collected. (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, subjects for which data is collected is up to the server.
     This parameter cannot be used with the subject parameter."/> 
    <type value="Group"/>   </parameter>   <parameter>     <name value="reporter"/>     <use value="in"/>     <min value="0"/>     <max value="1"/>     <documentation value="The provider for which the data-of-interest will be collected. This may be a reference

     to a Practitioner, PractitionerRole, or Organization. If specified, systems MAY
     use this information to determine subjects for which the data-of-interest will
     be calculated, but how subjects are determined is implementation-specific. This
     parameter is reflected in the reporter element of the resulting MeasureReport(s).
     This parameter cannot be used with the reporterResource parameter."/> 

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

    <name value="reporterResource"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    Practitioner for which the measure will be collected. If specified, measure data
     will be collected only for subjects that have a primary relationship to the identified
     practitioner

    <documentation value="The provider for which the data-of-interest will be collected, 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. This parameter is reflected in the reporter element
     of the resulting MeasureReport(s). This parameter cannot be used with the reporter
     parameter."/> 
    <type value="string"/>     <searchType value="reference"/>   </parameter>   <parameter>     <name value="organizationResource"/>     <use value="in"/>     <min value="0"/>     <max value="1"/>     <documentation value="Organization resource for which data-of-interest for the given measure will be

     collected."/> 
    <type value="Organization"/>   </parameter>   <parameter>     <name value="location"/>     <use value="in"/>     <min value="0"/>     <max value="*"/>     <documentation value="The location(s) for which the data-of-interest will be collected. This parameter

     is reflected in the location element of the resulting MeasureReport(s)."/> 

    <type value="string"/> 
    <searchType value="reference"/> 
  </parameter> 
  <parameter> 
    <name value="lastReceivedOn"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="The date the results of this measure were last received. This parameter used to
     indicate when the last time data for this measure was collected. This information
     is used to support incremental data collection scenarios"/> 
    <type value="dateTime"/> 
  </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="validateResources"/>     <use value="in"/>     <min value="0"/>     <max value="1"/>     <documentation value="Indicates whether data collected conform to the appropriate profiles as specified

     by the measure."/> 
    <type value="boolean"/>   </parameter>   <parameter>     <name value="return"/> 
    <use value="out"/> 
    <min value="0"/> 
    <max value="*"/> 
    
    

    <documentation value="The results of the data collection, returned as a Bundle for each input subject.
     The first entries in each Bundle are MeasureReport(s) corresponding to the measures
     for which data was collected. The MeasureReport resources SHALL have a type of
     data-exchange. Subsequent entries in each Bundle are resources representing the
     data-of-interest for the measures, and referenced from the evaluatedResource element
     of the corresponding MeasureReport resources. See the [guidance](clinicalreasoning-quality-re
    porting.html#bundles-organized-by-subject) on Bundle structure 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.