Implementation Guide for Astacus project
0.0.1 - ci-build France flag

Implementation Guide for Astacus project - Local Development build (v0.0.1) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

: Astacus CQL - XML Representation

Draft as of 2023-04-07

Raw xml | Download



<OperationDefinition xmlns="http://hl7.org/fhir">
  <id value="astacus-cql"/>
  <text>
    <status value="extensions"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><p>URL: [base]/$astacus-cql</p><p>Parameters</p><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>expression</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#string">string</a></td><td/><td><div><p>Expression to be evaluated. Note that this is an expression of CQL, not the text of a library with definition statements.</p>
</div></td></tr><tr><td>IN</td><td>parameters</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/parameters.html">Parameters</a></td><td/><td><div><p>Any input parameters for the expression. 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 section of this 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>library</td><td/><td>0..*</td><td></td><td/><td><div><p>A library to be included. The library is resolved by url and made available by name within the expression to be evaluated.</p>
</div></td></tr><tr><td>IN</td><td>library.url</td><td/><td>1..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#canonical">canonical</a></td><td/><td><div><p>The canonical url (with optional version) of the library to be included</p>
</div></td></tr><tr><td>IN</td><td>library.name</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/datatypes.html#string">string</a></td><td/><td><div><p>The name of the library to be used to reference the library within the CQL expression. If no name is provided, the name of the library will be used</p>
</div></td></tr><tr><td>IN</td><td>dataEndpoint</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/endpoint.html">Endpoint</a></td><td/><td><div><p>An endpoint to use to access data referenced by retrieve operations in the library. If provided, this endpoint is used after the data or prefetchData bundles, and the server, if the useServerData parameter is true.</p>
</div></td></tr><tr><td>IN</td><td>contentEndpoint</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/endpoint.html">Endpoint</a></td><td/><td><div><p>An endpoint to use to access content (i.e. libraries) referenced by the library. If no content endpoint is supplied, the evaluation will attempt to retrieve content from the server on which the operation is being performed.</p>
</div></td></tr><tr><td>IN</td><td>terminologyEndpoint</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/endpoint.html">Endpoint</a></td><td/><td><div><p>An endpoint to use to access terminology (i.e. valuesets, codesystems, and membership testing) referenced by the library. If no terminology endpoint is supplied, the evaluation will attempt to use the server on which the operation is being performed as the terminology server.</p>
</div></td></tr><tr><td>OUT</td><td>return</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/resource.html">Resource</a></td><td/><td><div><p>A Bundle conforming to <a href="StructureDefinition-astacus-patient-bundle.html"><code>AstacusPatientBundle</code></a>.</p>
</div></td></tr><tr><td>OUT</td><td>issues</td><td/><td>0..1</td><td><a href="http://hl7.org/fhir/R4/operationoutcome.html">OperationOutcome</a></td><td/><td><div><p>A list of hints and warnings about problems encountered while extracting the resource(s).
If there was nothing to extract, a 'success' OperationOutcome is returned with a warning and/or information messages. In
situations where the input is invalid or the operation otherwise fails to complete successfully, a normal 'erroneous'
OperationOutcome would be returned (as happens with all operations) indicating what the issue was.</p>
</div></td></tr></table></div>
  </text>
  <url
       value="https://aphp.fr/fhir/fr/astacus/OperationDefinition/astacus-cql"/>
  <version value="0.0.1"/>
  <name value="AstacusCQL"/>
  <title value="Astacus CQL"/>
  <status value="draft"/>
  <kind value="operation"/>
  <experimental value="false"/>
  <date value="2023-04-07T09:25:00+02:00"/>
  <publisher value="APHP"/>
  <contact>
    <name value="APHP"/>
    <telecom>
      <system value="url"/>
      <value value="https://aphp.fr"/>
    </telecom>
  </contact>
  <description
               value="Evaluates a CQL expression and returns the results as a Parameters resource."/>
  <jurisdiction>
    <coding>
      <system value="urn:iso:std:iso:3166"/>
      <code value="FR"/>
      <display value="France"/>
    </coding>
  </jurisdiction>
  <purpose
           value="This operation is defined to support evaluating CQL expressions directly via an operation"/>
  <affectsState value="false"/>
  <code value="astacus-cql"/>
  <system value="true"/>
  <type value="false"/>
  <instance value="false"/>
  <parameter>
    <name value="expression"/>
    <use value="in"/>
    <min value="1"/>
    <max value="1"/>
    <documentation
                   value="Expression to be evaluated. Note that this is an expression of CQL, not the text of a library with definition statements."/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="parameters"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="Any input parameters for the expression. 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 section of this 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="library"/>
    <use value="in"/>
    <min value="0"/>
    <max value="*"/>
    <documentation
                   value="A library to be included. The library is resolved by url and made available by name within the expression to be evaluated."/>
    <part>
      <name value="url"/>
      <use value="in"/>
      <min value="1"/>
      <max value="1"/>
      <documentation
                     value="The canonical url (with optional version) of the library to be included"/>
      <type value="canonical"/>
    </part>
    <part>
      <name value="name"/>
      <use value="in"/>
      <min value="0"/>
      <max value="1"/>
      <documentation
                     value="The name of the library to be used to reference the library within the CQL expression. If no name is provided, the name of the library will be used"/>
      <type value="string"/>
    </part>
  </parameter>
  <parameter>
    <name value="dataEndpoint"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="An endpoint to use to access data referenced by retrieve operations in the library. If provided, this endpoint is used after the data or prefetchData bundles, and the server, if the useServerData parameter is true."/>
    <type value="Endpoint"/>
  </parameter>
  <parameter>
    <name value="contentEndpoint"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="An endpoint to use to access content (i.e. libraries) referenced by the library. If no content endpoint is supplied, the evaluation will attempt to retrieve content from the server on which the operation is being performed."/>
    <type value="Endpoint"/>
  </parameter>
  <parameter>
    <name value="terminologyEndpoint"/>
    <use value="in"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="An endpoint to use to access terminology (i.e. valuesets, codesystems, and membership testing) referenced by the library. If no terminology endpoint is supplied, the evaluation will attempt to use the server on which the operation is being performed as the terminology server."/>
    <type value="Endpoint"/>
  </parameter>
  <parameter>
    <name value="return"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="A Bundle conforming to [`AstacusPatientBundle`](StructureDefinition-astacus-patient-bundle.html)."/>
    <type value="Resource"/>
  </parameter>
  <parameter>
    <name value="issues"/>
    <use value="out"/>
    <min value="0"/>
    <max value="1"/>
    <documentation
                   value="A list of hints and warnings about problems encountered while extracting the resource(s).
If there was nothing to extract, a 'success' OperationOutcome is returned with a warning and/or information messages. In
situations where the input is invalid or the operation otherwise fails to complete successfully, a normal 'erroneous'
OperationOutcome would be returned (as happens with all operations) indicating what the issue was."/>
    <type value="OperationOutcome"/>
  </parameter>
</OperationDefinition>