OpenEHR Base package
0.1.0 - First Draft International flag

OpenEHR Base package, published by openEHR + HL7. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/openehr-fhir/base-spec/ and changes regularly. See the Directory of published versions

Logical Model: EXTRACT_UPDATE_SPEC - XML Profile

Page standards status: Informative Maturity Level: 3

XML representation of the EXTRACT-UPDATE-SPEC logical model.

Raw xml | Download


<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="EXTRACT-UPDATE-SPEC"/>
  <text>
    <status value="extensions"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureDefinition EXTRACT-UPDATE-SPEC</b></p><a name="EXTRACT-UPDATE-SPEC"> </a><a name="hcEXTRACT-UPDATE-SPEC"> </a><table border="0" cellpadding="0" cellspacing="0" style="border: 0px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top;"><tr style="border: 1px #F0F0F0 solid; font-size: 11px; font-family: verdana; vertical-align: top"><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="The logical name of the element">Name</a></th><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Information about the use of the element">Flags</a></th><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Minimum and Maximum # of times the element can appear in the instance">Card.</a></th><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px; width: 100px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Reference to the type of the element">Type</a></th><th style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; padding-top: 3px; padding-bottom: 3px" class="hierarchy"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Additional information about the element">Description &amp; Constraints</a><span style="float: right"><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Legend for this format"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3goXBCwdPqAP0wAAAldJREFUOMuNk0tIlFEYhp9z/vE2jHkhxXA0zJCMitrUQlq4lnSltEqCFhFG2MJFhIvIFpkEWaTQqjaWZRkp0g26URZkTpbaaOJkDqk10szoODP//7XIMUe0elcfnPd9zsfLOYplGrpRwZaqTtw3K7PtGem7Q6FoidbGgqHVy/HRb669R+56zx7eRV1L31JGxYbBtjKK93cxeqfyQHbehkZbUkK20goELEuIzEd+dHS+qz/Y8PTSif0FnGkbiwcAjHaU1+QWOptFiyCLp/LnKptpqIuXHx6rbR26kJcBX3yLgBfnd7CxwJmflpP2wUg0HIAoUUpZBmKzELGWcN8nAr6Gpu7tLU/CkwAaoKTWRSQyt89Q8w6J+oVQkKnBoblH7V0PPvUOvDYXfopE/SJmALsxnVm6LbkotrUtNowMeIrVrBcBpaMmdS0j9df7abpSuy7HWehwJdt1lhVwi/J58U5beXGAF6c3UXLycw1wdFklArBn87xdh0ZsZtArghBdAA3+OEDVubG4UEzP6x1FOWneHh2VDAHBAt80IbdXDcesNoCvs3E5AFyNSU5nbrDPZpcUEQQTFZiEVx+51fxMhhyJEAgvlriadIJZZksRuwBYMOPBbO3hePVVqgEJhFeUuFLhIPkRP6BQLIBrmMenujm/3g4zc398awIe90Zb5A1vREALqneMcYgP/xVQWlG+Ncu5vgwwlaUNx+3799rfe96u9K0JSDXcOzOTJg4B6IgmXfsygc7/Bvg9g9E58/cDVmGIBOP/zT8Bz1zqWqpbXIsd0O9hajXfL6u4BaOS6SeWAAAAAElFTkSuQmCC" alt="doco" style="background-color: inherit"/></a></span></th></tr><tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white"><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck1.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_element.gif" alt="." style="background-color: white; background-color: inherit" title="Element" class="hierarchy"/> <a href="StructureDefinition-EXTRACT-UPDATE-SPEC-definitions.html#EXTRACT_UPDATE_SPEC" title="Specification of the how the request should be processed by server. The request can be persisted in the server, meaning that a) it can be re-activated by the requesting system simply by indicating Request id, and b) that a changes-only pattern of Extract updates can be set up. To achieve this, the server has to remember what was sent in the previous response.

The update mode may be event-driven and periodic update or a mixture of both. The candidate items to be sent each time are the result of re-evaluating the content and versioning parts of the specification; what is actually sent is determined by the `_send_changes_only_` flag.">EXTRACT_UPDATE_SPEC</a><a name="EXTRACT_UPDATE_SPEC"> </a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a style="padding-left: 3px; padding-right: 3px; border: 1px maroon solid; font-weight: bold; color: #301212; background-color: #fdf4f4;; padding-left: 3px; padding-right: 3px; border: 1px maroon solid; font-weight: bold; color: #301212; background-color: #fdf4f4;" href="http://hl7.org/fhir/R5/conformance-rules.html#constraints" title="This element has or is affected by constraints ( Overall_validity, Trigger_events_validity, Send_changes_only_validity )">C</a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">0..*</td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="StructureDefinition-Any.html">Any</a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">Specification of the how the request should be processed by server.<br class="constraint"/><span title="null" class="constraint">Constraints: </span><span style="font-weight:bold" title="Overall validity must be present" class="constraint">Overall_validity</span><span title="null" class="constraint">, </span><span style="font-weight:bold" title="Trigger events validity must be present" class="constraint">Trigger_events_validity</span><span title="null" class="constraint">, </span><span style="font-weight:bold" title="Send changes only validity must satisfy conditional constraints" class="constraint">Send_changes_only_validity</span><br/></td></tr>
<tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: #F7F7F7"><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck10.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="tbl_vjoin.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_primitive.png" alt="." style="background-color: #F7F7F7; background-color: inherit" title="Primitive Data Type" class="hierarchy"/> <a href="StructureDefinition-EXTRACT-UPDATE-SPEC-definitions.html#EXTRACT_UPDATE_SPEC.persist-in-server" title="If True, this Request is persisted in the server until further notice.">persist_in_server</a><a name="EXTRACT_UPDATE_SPEC.persist_in_server"> </a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">1..1</td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="http://hl7.org/fhir/R5/datatypes.html#boolean">boolean</a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">If True, this Request is persisted in the server until further notice.</td></tr>
<tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white"><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck10.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="tbl_vjoin.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_resource.png" alt="." style="background-color: white; background-color: inherit" title="Resource" class="hierarchy"/> <a href="StructureDefinition-EXTRACT-UPDATE-SPEC-definitions.html#EXTRACT_UPDATE_SPEC.repeat-period" title="Period for resending update Extracts in response to original Request.">repeat_period</a><a name="EXTRACT_UPDATE_SPEC.repeat_period"> </a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">0..1</td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="StructureDefinition-DV-DURATION.html">DV_DURATION</a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">Period for resending update Extracts in response to original Request.</td></tr>
<tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: #F7F7F7"><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck10.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="tbl_vjoin.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_resource.png" alt="." style="background-color: #F7F7F7; background-color: inherit" title="Resource" class="hierarchy"/> <a href="StructureDefinition-EXTRACT-UPDATE-SPEC-definitions.html#EXTRACT_UPDATE_SPEC.trigger-events" title="Set of Event names that will cause sending of update Extracts. Event types include:   

* `|any_change|` - any change in content items matched by content specification, e.g. new versions of persistent compositions. If the content list allows matching of any, or a wide range of archetypes, this event type will match any additions to the record.
* `|correction|` - match error corrections only, including deletions.
* `|update|` - match updates (i.e. new versions) of included content items.

Coded by openEHR Terminology group 'extract update trigger event type'.">trigger_events</a><a name="EXTRACT_UPDATE_SPEC.trigger_events"> </a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">0..*</td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="StructureDefinition-DV-CODED-TEXT.html">DV_CODED_TEXT</a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: #F7F7F7; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">Set of Event names that will cause sending of update Extracts.<br/></td></tr>
<tr style="border: 0px #F0F0F0 solid; padding:0px; vertical-align: top; background-color: white"><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px; white-space: nowrap; background-image: url(tbl_bck00.png)" class="hierarchy"><img src="tbl_spacer.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="tbl_vjoin_end.png" alt="." style="background-color: inherit" class="hierarchy"/><img src="icon_resource.png" alt="." style="background-color: white; background-color: inherit" title="Resource" class="hierarchy"/> <a href="StructureDefinition-EXTRACT-UPDATE-SPEC-definitions.html#EXTRACT_UPDATE_SPEC.update-method" title="Indicate mode of update. Can be: send only items that are changed (including logical deletions) or new since last send. For `_persist_in_server_` Requests only.">update_method</a><a name="EXTRACT_UPDATE_SPEC.update_method"> </a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"/><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">1..1</td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy"><a href="StructureDefinition-CODE-PHRASE.html">CODE_PHRASE</a></td><td style="vertical-align: top; text-align : var(--ig-left,left); background-color: white; border: 0px #F0F0F0 solid; padding:0px 4px 0px 4px" class="hierarchy">Indicate mode of update.</td></tr>
<tr><td colspan="5" class="hierarchy"><br/><a href="https://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#table-views" title="Legend for this format"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3goXBCwdPqAP0wAAAldJREFUOMuNk0tIlFEYhp9z/vE2jHkhxXA0zJCMitrUQlq4lnSltEqCFhFG2MJFhIvIFpkEWaTQqjaWZRkp0g26URZkTpbaaOJkDqk10szoODP//7XIMUe0elcfnPd9zsfLOYplGrpRwZaqTtw3K7PtGem7Q6FoidbGgqHVy/HRb669R+56zx7eRV1L31JGxYbBtjKK93cxeqfyQHbehkZbUkK20goELEuIzEd+dHS+qz/Y8PTSif0FnGkbiwcAjHaU1+QWOptFiyCLp/LnKptpqIuXHx6rbR26kJcBX3yLgBfnd7CxwJmflpP2wUg0HIAoUUpZBmKzELGWcN8nAr6Gpu7tLU/CkwAaoKTWRSQyt89Q8w6J+oVQkKnBoblH7V0PPvUOvDYXfopE/SJmALsxnVm6LbkotrUtNowMeIrVrBcBpaMmdS0j9df7abpSuy7HWehwJdt1lhVwi/J58U5beXGAF6c3UXLycw1wdFklArBn87xdh0ZsZtArghBdAA3+OEDVubG4UEzP6x1FOWneHh2VDAHBAt80IbdXDcesNoCvs3E5AFyNSU5nbrDPZpcUEQQTFZiEVx+51fxMhhyJEAgvlriadIJZZksRuwBYMOPBbO3hePVVqgEJhFeUuFLhIPkRP6BQLIBrmMenujm/3g4zc398awIe90Zb5A1vREALqneMcYgP/xVQWlG+Ncu5vgwwlaUNx+3799rfe96u9K0JSDXcOzOTJg4B6IgmXfsygc7/Bvg9g9E58/cDVmGIBOP/zT8Bz1zqWqpbXIsd0O9hajXfL6u4BaOS6SeWAAAAAElFTkSuQmCC" alt="doco" style="background-color: inherit"/> Documentation for this format</a></td></tr></table></div>
  </text>
  <extension
             url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
    <valueCode value="fhir"/>
  </extension>
  <extension url="http://hl7.org/fhir/tools/StructureDefinition/web-source">
    <valueUrl
              value="https://specifications.openehr.org/releases/BASE/latest/foundation_types.html#_any_class"/>
  </extension>
  <extension url="http://hl7.org/fhir/tools/StructureDefinition/view-hint">
    <valueCode value="element-view-replace-cardinality"/>
  </extension>
  <extension
             url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
    <valueInteger value="3">
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom">
        <valueCanonical
                        value="http://openehr.org/fhir/ImplementationGuide/openehr.base"/>
      </extension>
    </valueInteger>
  </extension>
  <extension
             url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
    <valueCode value="informative">
      <extension
                 url="http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom">
        <valueCanonical
                        value="http://openehr.org/fhir/ImplementationGuide/openehr.base"/>
      </extension>
    </valueCode>
  </extension>
  <url
       value="http://openehr.org/fhir/StructureDefinition/EXTRACT-UPDATE-SPEC"/>
  <version value="0.1.0"/>
  <name value="EXTRACT_UPDATE_SPEC"/>
  <title value="EXTRACT_UPDATE_SPEC"/>
  <status value="active"/>
  <experimental value="false"/>
  <date value="2025-09-06T15:35:39+10:00"/>
  <publisher value="openEHR + HL7"/>
  <contact>
    <telecom>
      <system value="url"/>
      <value value="http://www.openehr.org"/>
    </telecom>
  </contact>
  <description
               value="Specification of the how the request should be processed by server. The request can be persisted in the server, meaning that a) it can be re-activated by the requesting system simply by indicating Request id, and b) that a changes-only pattern of Extract updates can be set up. To achieve this, the server has to remember what was sent in the previous response.

The update mode may be event-driven and periodic update or a mixture of both. The candidate items to be sent each time are the result of re-evaluating the content and versioning parts of the specification; what is actually sent is determined by the `_send_changes_only_` flag."/>
  <jurisdiction>
    <coding>
      <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
      <code value="001"/>
    </coding>
  </jurisdiction>
  <fhirVersion value="5.0.0"/>
  <mapping>
    <identity value="rim"/>
    <uri value="http://hl7.org/v3"/>
    <name value="RIM Mapping"/>
  </mapping>
  <kind value="logical"/>
  <abstract value="false"/>
  <type
        value="http://openehr.org/fhir/StructureDefinition/EXTRACT_UPDATE_SPEC"/>
  <baseDefinition value="http://openehr.org/fhir/StructureDefinition/Any"/>
  <derivation value="specialization"/>
  <snapshot>
    <extension
               url="http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version">
      <valueString value="0.1.0"/>
    </extension>
    <element id="EXTRACT_UPDATE_SPEC">
      <path value="EXTRACT_UPDATE_SPEC"/>
      <short
             value="Specification of the how the request should be processed by server."/>
      <definition
                  value="Specification of the how the request should be processed by server. The request can be persisted in the server, meaning that a) it can be re-activated by the requesting system simply by indicating Request id, and b) that a changes-only pattern of Extract updates can be set up. To achieve this, the server has to remember what was sent in the previous response.

The update mode may be event-driven and periodic update or a mixture of both. The candidate items to be sent each time are the result of re-evaluating the content and versioning parts of the specification; what is actually sent is determined by the `_send_changes_only_` flag."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="Base"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <constraint>
        <key value="Overall_validity"/>
        <severity value="error"/>
        <human value="Overall validity must be present"/>
        <expression
                    value="repeat_period.exists() or trigger_events.exists()"/>
      </constraint>
      <constraint>
        <key value="Trigger_events_validity"/>
        <severity value="error"/>
        <human value="Trigger events validity must be present"/>
        <expression
                    value="trigger_events.exists() implies trigger_events.empty().not()"/>
      </constraint>
      <constraint>
        <key value="Send_changes_only_validity"/>
        <severity value="error"/>
        <human
               value="Send changes only validity must satisfy conditional constraints"/>
        <expression value="null # TODO: manual translation needed"/>
      </constraint>
      <isModifier value="false"/>
      <mapping>
        <identity value="rim"/>
        <map value="n/a"/>
      </mapping>
    </element>
    <element id="EXTRACT_UPDATE_SPEC.persist-in-server">
      <path value="EXTRACT_UPDATE_SPEC.persist_in_server"/>
      <short
             value="If True, this Request is persisted in the server until further notice."/>
      <definition
                  value="If True, this Request is persisted in the server until further notice."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="EXTRACT_UPDATE_SPEC.persist_in_server"/>
        <min value="1"/>
        <max value="1"/>
      </base>
      <type>
        <code value="boolean"/>
      </type>
      <isModifier value="false"/>
    </element>
    <element id="EXTRACT_UPDATE_SPEC.repeat-period">
      <path value="EXTRACT_UPDATE_SPEC.repeat_period"/>
      <short
             value="Period for resending update Extracts in response to original Request."/>
      <definition
                  value="Period for resending update Extracts in response to original Request."/>
      <min value="0"/>
      <max value="1"/>
      <base>
        <path value="EXTRACT_UPDATE_SPEC.repeat_period"/>
        <min value="0"/>
        <max value="1"/>
      </base>
      <type>
        <code
              value="http://openehr.org/fhir/StructureDefinition/DV-DURATION"/>
      </type>
      <isModifier value="false"/>
    </element>
    <element id="EXTRACT_UPDATE_SPEC.trigger-events">
      <path value="EXTRACT_UPDATE_SPEC.trigger_events"/>
      <short
             value="Set of Event names that will cause sending of update Extracts."/>
      <definition
                  value="Set of Event names that will cause sending of update Extracts. Event types include:   

* `|any_change|` - any change in content items matched by content specification, e.g. new versions of persistent compositions. If the content list allows matching of any, or a wide range of archetypes, this event type will match any additions to the record.
* `|correction|` - match error corrections only, including deletions.
* `|update|` - match updates (i.e. new versions) of included content items.

Coded by openEHR Terminology group 'extract update trigger event type'."/>
      <min value="0"/>
      <max value="*"/>
      <base>
        <path value="EXTRACT_UPDATE_SPEC.trigger_events"/>
        <min value="0"/>
        <max value="*"/>
      </base>
      <type>
        <code
              value="http://openehr.org/fhir/StructureDefinition/DV-CODED-TEXT"/>
      </type>
      <isModifier value="false"/>
    </element>
    <element id="EXTRACT_UPDATE_SPEC.update-method">
      <path value="EXTRACT_UPDATE_SPEC.update_method"/>
      <short value="Indicate mode of update."/>
      <definition
                  value="Indicate mode of update. Can be: send only items that are changed (including logical deletions) or new since last send. For `_persist_in_server_` Requests only."/>
      <min value="1"/>
      <max value="1"/>
      <base>
        <path value="EXTRACT_UPDATE_SPEC.update_method"/>
        <min value="1"/>
        <max value="1"/>
      </base>
      <type>
        <code
              value="http://openehr.org/fhir/StructureDefinition/CODE-PHRASE"/>
      </type>
      <isModifier value="false"/>
    </element>
  </snapshot>
  <differential>
    <element id="EXTRACT_UPDATE_SPEC">
      <path value="EXTRACT_UPDATE_SPEC"/>
      <short
             value="Specification of the how the request should be processed by server."/>
      <definition
                  value="Specification of the how the request should be processed by server. The request can be persisted in the server, meaning that a) it can be re-activated by the requesting system simply by indicating Request id, and b) that a changes-only pattern of Extract updates can be set up. To achieve this, the server has to remember what was sent in the previous response.

The update mode may be event-driven and periodic update or a mixture of both. The candidate items to be sent each time are the result of re-evaluating the content and versioning parts of the specification; what is actually sent is determined by the `_send_changes_only_` flag."/>
      <min value="0"/>
      <max value="*"/>
      <constraint>
        <key value="Overall_validity"/>
        <severity value="error"/>
        <human value="Overall validity must be present"/>
        <expression
                    value="repeat_period.exists() or trigger_events.exists()"/>
      </constraint>
      <constraint>
        <key value="Trigger_events_validity"/>
        <severity value="error"/>
        <human value="Trigger events validity must be present"/>
        <expression
                    value="trigger_events.exists() implies trigger_events.empty().not()"/>
      </constraint>
      <constraint>
        <key value="Send_changes_only_validity"/>
        <severity value="error"/>
        <human
               value="Send changes only validity must satisfy conditional constraints"/>
        <expression value="null # TODO: manual translation needed"/>
      </constraint>
      <isModifier value="false"/>
    </element>
    <element id="EXTRACT_UPDATE_SPEC.persist-in-server">
      <path value="EXTRACT_UPDATE_SPEC.persist_in_server"/>
      <short
             value="If True, this Request is persisted in the server until further notice."/>
      <definition
                  value="If True, this Request is persisted in the server until further notice."/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code value="boolean"/>
      </type>
      <isModifier value="false"/>
    </element>
    <element id="EXTRACT_UPDATE_SPEC.repeat-period">
      <path value="EXTRACT_UPDATE_SPEC.repeat_period"/>
      <short
             value="Period for resending update Extracts in response to original Request."/>
      <definition
                  value="Period for resending update Extracts in response to original Request."/>
      <min value="0"/>
      <max value="1"/>
      <type>
        <code
              value="http://openehr.org/fhir/StructureDefinition/DV-DURATION"/>
      </type>
      <isModifier value="false"/>
    </element>
    <element id="EXTRACT_UPDATE_SPEC.trigger-events">
      <path value="EXTRACT_UPDATE_SPEC.trigger_events"/>
      <short
             value="Set of Event names that will cause sending of update Extracts."/>
      <definition
                  value="Set of Event names that will cause sending of update Extracts. Event types include:   

* `|any_change|` - any change in content items matched by content specification, e.g. new versions of persistent compositions. If the content list allows matching of any, or a wide range of archetypes, this event type will match any additions to the record.
* `|correction|` - match error corrections only, including deletions.
* `|update|` - match updates (i.e. new versions) of included content items.

Coded by openEHR Terminology group 'extract update trigger event type'."/>
      <min value="0"/>
      <max value="*"/>
      <type>
        <code
              value="http://openehr.org/fhir/StructureDefinition/DV-CODED-TEXT"/>
      </type>
      <isModifier value="false"/>
    </element>
    <element id="EXTRACT_UPDATE_SPEC.update-method">
      <path value="EXTRACT_UPDATE_SPEC.update_method"/>
      <short value="Indicate mode of update."/>
      <definition
                  value="Indicate mode of update. Can be: send only items that are changed (including logical deletions) or new since last send. For `_persist_in_server_` Requests only."/>
      <min value="1"/>
      <max value="1"/>
      <type>
        <code
              value="http://openehr.org/fhir/StructureDefinition/CODE-PHRASE"/>
      </type>
      <isModifier value="false"/>
    </element>
  </differential>
</StructureDefinition>