OpenEHR Base package
0.1.0 - First Draft
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
Page standards status: Informative | Maturity Level: 3 |
XML representation of the DV-DURATION logical model.
<StructureDefinition xmlns="http://hl7.org/fhir">
<id value="DV-DURATION"/>
<text>
<status value="extensions"/>
<div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: StructureDefinition DV-DURATION</b></p><a name="DV-DURATION"> </a><a name="hcDV-DURATION"> </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 & 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-DV-DURATION-definitions.html#DV_DURATION" title="Represents a period of time with respect to a notional point in time, which is not specified. A sign may be used to indicate the duration is backwards in time rather than forwards.
NOTE: two deviations from ISO 8601 are supported, the first, to allow a negative sign, and the second allowing the 'W' designator to be mixed with other designators. See time types section in the Foundation Types model.
Used for recording the duration of something in the real world, particularly when there is a need a) to represent the duration in customary format, i.e. days, hours, minutes etc, and b) if it will be used in computational operations with date/time quantities, i.e. additions, subtractions etc.
Misuse: Durations cannot be used to represent points in time, or intervals of time. ">DV_DURATION</a><a name="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"><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 ( Value_valid )">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-DV-AMOUNT.html">DV_AMOUNT</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">Represents a period of time with respect to a notional point in time, which is not specified.<br/><br/>Elements defined in Ancestors:<a href="StructureDefinition-BASIC-DEFINITIONS.html" title="Carriage return character.">CR</a>, <a href="StructureDefinition-BASIC-DEFINITIONS.html" title="Line feed character.">LF</a>, <a href="StructureDefinition-OPENEHR-DEFINITIONS.html" title="Predefined terminology identifier to indicate it is local to the knowledge resource in which it occurs, e.g. an archetype">Local_terminology_id</a>, <a href="StructureDefinition-DV-ORDERED.html" title="Optional normal status indicator of value with respect to normal range for this value. Often included by lab, even if the normal range itself is not included. Coded by ordinals in series HHH, HH, H, (nothing), L, LL, LLL; see openEHR terminology group `normal_status`. ">normal_status</a>, <a href="StructureDefinition-DV-ORDERED.html" title="Optional normal range. ">normal_range</a>, <a href="StructureDefinition-DV-ORDERED.html" title="Optional tagged other reference ranges for this value in its particular measurement context.">other_reference_ranges</a>, <a href="StructureDefinition-DV-QUANTIFIED.html" title="Optional status of magnitude with values:
* `"="` : magnitude is a point value
* `"<"` : value is < magnitude
* `">"` : value is > magnitude
* `"<="` : value is <= magnitude
* `">="` : value is >= magnitude
* `"~"` : value is approximately magnitude
If not present, assumed meaning is `"="` .
">magnitude_status</a>, <a href="StructureDefinition-DV-QUANTIFIED.html" title="Accuracy of measurement. Exact form of expression determined in descendants.">accuracy</a>, <a href="StructureDefinition-DV-AMOUNT.html" title="If `True`, indicates that when this object was created, `_accuracy_` was recorded as a percent value; if `False`, as an absolute quantity value.">accuracy_is_percent</a>, <a href="StructureDefinition-DV-AMOUNT.html" title="Accuracy of measurement, expressed either as a half-range percent value (`_accuracy_is_percent_` = `True`) or a half-range quantity. A value of `0` means that accuracy is 100%, i.e. no error.
A value of `_unknown_accuracy_value_` means that accuracy was not recorded.">accuracy</a><br class="constraint"/><span title="null" class="constraint">Constraints: </span><span style="font-weight:bold" title="Value valid" class="constraint">Value_valid</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_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_primitive.png" alt="." style="background-color: #F7F7F7; background-color: inherit" title="Primitive Data Type" class="hierarchy"/> <a href="StructureDefinition-DV-DURATION-definitions.html#DV_DURATION.value" title="ISO8601 duration string, including described deviations to support negative values and weeks.">value</a><a name="DV_DURATION.value"> </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#string">string</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">ISO8601 duration string, including described deviations to support negative values and weeks.</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>
<contained>
<OperationDefinition>
<id value="add"/>
<name value="add"/>
<title value="add"/>
<status value="active"/>
<kind value="operation"/>
<description value="Sum of this Duration and `_other_`."/>
<code value="add"/>
<system value="false"/>
<instance value="true"/>
<parameter>
<name value="other"/>
<use value="in"/>
<min value="1"/>
<max value="1"/>
<type value="Duration"/>
</parameter>
<parameter>
<name value="return"/>
<use value="out"/>
<min value="1"/>
<max value="1"/>
<type value="Duration"/>
</parameter>
</OperationDefinition>
</contained>
<contained>
<OperationDefinition>
<id value="subtract"/>
<name value="subtract"/>
<title value="subtract"/>
<status value="active"/>
<kind value="operation"/>
<description value="Difference of this Duration and `_other_`."/>
<code value="subtract"/>
<system value="false"/>
<instance value="true"/>
<parameter>
<name value="other"/>
<use value="in"/>
<min value="1"/>
<max value="1"/>
<type value="Duration"/>
</parameter>
<parameter>
<name value="return"/>
<use value="out"/>
<min value="1"/>
<max value="1"/>
<type value="Duration"/>
</parameter>
</OperationDefinition>
</contained>
<contained>
<OperationDefinition>
<id value="multiply"/>
<name value="multiply"/>
<title value="multiply"/>
<status value="active"/>
<kind value="operation"/>
<description value="Product of this Duration and `_factor_`."/>
<code value="multiply"/>
<system value="false"/>
<instance value="true"/>
<parameter>
<name value="factor"/>
<use value="in"/>
<min value="1"/>
<max value="1"/>
<type value="decimal"/>
</parameter>
<parameter>
<name value="return"/>
<use value="out"/>
<min value="1"/>
<max value="1"/>
<type value="Duration"/>
</parameter>
</OperationDefinition>
</contained>
<contained>
<OperationDefinition>
<id value="less_than"/>
<name value="less_than"/>
<title value="less_than"/>
<status value="active"/>
<kind value="operation"/>
<description
value="True if this duration object is less than `_other_`, based on comparison of `_magnitude()_`. "/>
<code value="less_than"/>
<system value="false"/>
<instance value="true"/>
<parameter>
<name value="other"/>
<use value="in"/>
<min value="1"/>
<max value="1"/>
<type value="Duration"/>
</parameter>
<parameter>
<name value="return"/>
<use value="out"/>
<min value="1"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
</OperationDefinition>
</contained>
<contained>
<OperationDefinition>
<id value="is_strictly_comparable_to"/>
<name value="is_strictly_comparable_to"/>
<title value="is_strictly_comparable_to"/>
<status value="active"/>
<kind value="operation"/>
<description value="True, for any two Durations."/>
<code value="is_strictly_comparable_to"/>
<system value="false"/>
<instance value="true"/>
<parameter>
<name value="other"/>
<use value="in"/>
<min value="1"/>
<max value="1"/>
<type value="Duration"/>
</parameter>
<parameter>
<name value="return"/>
<use value="out"/>
<min value="1"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
</OperationDefinition>
</contained>
<contained>
<OperationDefinition>
<id value="negative"/>
<name value="negative"/>
<title value="negative"/>
<status value="active"/>
<kind value="operation"/>
<description
value="Negated version of current duration.
Assuming the current duration is positive, the negated version represents a time prior to some origin point, or a negative age (e.g. so-called 'adjusted age' of premature infant)."/>
<code value="negative"/>
<system value="false"/>
<instance value="true"/>
<parameter>
<name value="return"/>
<use value="out"/>
<min value="1"/>
<max value="1"/>
<type value="Duration"/>
</parameter>
</OperationDefinition>
</contained>
<contained>
<OperationDefinition>
<id value="magnitude"/>
<name value="magnitude"/>
<title value="magnitude"/>
<status value="active"/>
<kind value="operation"/>
<description
value="Numeric value of the duration as a number of seconds. Computed using the method `_to_seconds()_` inherited from `Iso8601_duration`."/>
<code value="magnitude"/>
<system value="false"/>
<instance value="true"/>
<parameter>
<name value="return"/>
<use value="out"/>
<min value="1"/>
<max value="1"/>
<type value="decimal"/>
</parameter>
</OperationDefinition>
</contained>
<extension url="http://hl7.org/fhir/tools/StructureDefinition/web-source">
<valueUrl
value="https://specifications.openehr.org/releases/RM/Release-1.1.0/data_types.html#_dv_duration_class"/>
</extension>
<extension
url="http://hl7.org/fhir/tools/StructureDefinition/type-operation">
<valueCanonical value="#add"/>
</extension>
<extension
url="http://hl7.org/fhir/tools/StructureDefinition/type-operation">
<valueCanonical value="#subtract"/>
</extension>
<extension
url="http://hl7.org/fhir/tools/StructureDefinition/type-operation">
<valueCanonical value="#multiply"/>
</extension>
<extension
url="http://hl7.org/fhir/tools/StructureDefinition/type-operation">
<valueCanonical value="#less_than"/>
</extension>
<extension
url="http://hl7.org/fhir/tools/StructureDefinition/type-operation">
<valueCanonical value="#is_strictly_comparable_to"/>
</extension>
<extension
url="http://hl7.org/fhir/tools/StructureDefinition/type-operation">
<valueCanonical value="#negative"/>
</extension>
<extension
url="http://hl7.org/fhir/tools/StructureDefinition/type-operation">
<valueCanonical value="#magnitude"/>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
<valueCode value="fhir"/>
</extension>
<extension url="http://hl7.org/fhir/tools/StructureDefinition/view-hint">
<valueCode value="element-view-as-leaf"/>
</extension>
<extension url="http://hl7.org/fhir/tools/StructureDefinition/view-hint">
<valueCode value="element-view-defns-parent"/>
</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/DV-DURATION"/>
<version value="0.1.0"/>
<name value="DV_DURATION"/>
<title value="DV_DURATION"/>
<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="Represents a period of time with respect to a notional point in time, which is not specified. A sign may be used to indicate the duration is backwards in time rather than forwards.
NOTE: two deviations from ISO 8601 are supported, the first, to allow a negative sign, and the second allowing the 'W' designator to be mixed with other designators. See time types section in the Foundation Types model.
Used for recording the duration of something in the real world, particularly when there is a need a) to represent the duration in customary format, i.e. days, hours, minutes etc, and b) if it will be used in computational operations with date/time quantities, i.e. additions, subtractions etc.
Misuse: Durations cannot be used to represent points in time, or intervals of time. "/>
<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/DV_DURATION"/>
<baseDefinition
value="http://openehr.org/fhir/StructureDefinition/DV-AMOUNT"/>
<derivation value="specialization"/>
<snapshot>
<extension
url="http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version">
<valueString value="0.1.0"/>
</extension>
<element id="DV_DURATION">
<path value="DV_DURATION"/>
<short
value="Represents a period of time with respect to a notional point in time, which is not specified."/>
<definition
value="Represents a period of time with respect to a notional point in time, which is not specified. A sign may be used to indicate the duration is backwards in time rather than forwards.
NOTE: two deviations from ISO 8601 are supported, the first, to allow a negative sign, and the second allowing the 'W' designator to be mixed with other designators. See time types section in the Foundation Types model.
Used for recording the duration of something in the real world, particularly when there is a need a) to represent the duration in customary format, i.e. days, hours, minutes etc, and b) if it will be used in computational operations with date/time quantities, i.e. additions, subtractions etc.
Misuse: Durations cannot be used to represent points in time, or intervals of time. "/>
<min value="0"/>
<max value="*"/>
<base>
<path value="Base"/>
<min value="0"/>
<max value="*"/>
</base>
<constraint>
<key value="Other_reference_ranges_validity"/>
<severity value="error"/>
<human value="Other reference ranges validity must be present"/>
<expression
value="other_reference_ranges.exists() implies other_reference_ranges.empty().not()"/>
<source
value="http://openehr.org/fhir/StructureDefinition/DV-ORDERED"/>
</constraint>
<constraint>
<key value="Is_simple_validity"/>
<severity value="error"/>
<human
value="Is simple validity must satisfy conditional constraints"/>
<expression
value="(normal_range .empty() and other_reference_ranges .empty()) implies is_simple()"/>
<source
value="http://openehr.org/fhir/StructureDefinition/DV-ORDERED"/>
</constraint>
<constraint>
<key value="Normal_range_and_status_consistency"/>
<severity value="error"/>
<human value="Normal range and status consistency must be present"/>
<expression
value="(normal_range.exists() and normal_status.exists()) implies (normal_status.code_string.is_equal (āNā) xor normal_range.not().has (self))"/>
<source
value="http://openehr.org/fhir/StructureDefinition/DV-ORDERED"/>
</constraint>
<constraint>
<key value="Magnitude_status_valid"/>
<severity value="error"/>
<human value="Magnitude status valid must be present"/>
<expression
value="magnitude_status.exists() implies valid_magnitude_status() (magnitude_status)"/>
<source
value="http://openehr.org/fhir/StructureDefinition/DV-QUANTIFIED"/>
</constraint>
<constraint>
<key value="Accuracy_is_percent_validity"/>
<severity value="error"/>
<human
value="Accuracy is percent validity must satisfy conditional constraints"/>
<expression value="accuracy = 0 implies accuracy_is_percent.not()"/>
<source
value="http://openehr.org/fhir/StructureDefinition/DV-AMOUNT"/>
</constraint>
<constraint>
<key value="Accuracy_validity"/>
<severity value="error"/>
<human
value="Accuracy validity must satisfy conditional constraints"/>
<expression
value="accuracy_is_percent implies valid_percentage() (accuracy)"/>
<source
value="http://openehr.org/fhir/StructureDefinition/DV-AMOUNT"/>
</constraint>
<constraint>
<key value="Value_valid"/>
<severity value="error"/>
<human value="Value valid"/>
<expression value="null # TODO: manual translation needed"/>
</constraint>
<isModifier value="false"/>
<mapping>
<identity value="rim"/>
<map value="n/a"/>
</mapping>
</element>
<element id="DV_DURATION.CR">
<path value="DV_DURATION.CR"/>
<short value="Carriage return character."/>
<definition value="Carriage return character."/>
<min value="1"/>
<max value="1"/>
<base>
<path value="BASIC_DEFINITIONS.CR"/>
<min value="1"/>
<max value="1"/>
</base>
<type>
<code value="string"/>
</type>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.LF">
<path value="DV_DURATION.LF"/>
<short value="Line feed character."/>
<definition value="Line feed character."/>
<min value="1"/>
<max value="1"/>
<base>
<path value="BASIC_DEFINITIONS.LF"/>
<min value="1"/>
<max value="1"/>
</base>
<type>
<code value="string"/>
</type>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.Local-terminology-id">
<path value="DV_DURATION.Local_terminology_id"/>
<short value="Predefined terminology identifier"/>
<definition
value="Predefined terminology identifier to indicate it is local to the knowledge resource in which it occurs, e.g. an archetype"/>
<min value="1"/>
<max value="1"/>
<base>
<path value="OPENEHR_DEFINITIONS.Local_terminology_id"/>
<min value="1"/>
<max value="1"/>
</base>
<type>
<code value="string"/>
</type>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.normal-status">
<path value="DV_DURATION.normal_status"/>
<short
value="Optional normal status indicator of value with respect to normal range for this value."/>
<definition
value="Optional normal status indicator of value with respect to normal range for this value. Often included by lab, even if the normal range itself is not included. Coded by ordinals in series HHH, HH, H, (nothing), L, LL, LLL; see openEHR terminology group `normal_status`."/>
<min value="0"/>
<max value="1"/>
<base>
<path value="DV_ORDERED.normal_status"/>
<min value="0"/>
<max value="1"/>
</base>
<type>
<code
value="http://openehr.org/fhir/StructureDefinition/CODE-PHRASE"/>
</type>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.normal-range">
<path value="DV_DURATION.normal_range"/>
<short value="Optional normal range."/>
<definition value="Optional normal range."/>
<min value="0"/>
<max value="1"/>
<base>
<path value="DV_ORDERED.normal_range"/>
<min value="0"/>
<max value="1"/>
</base>
<type>
<code
value="http://openehr.org/fhir/StructureDefinition/DV-INTERVAL"/>
</type>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.other-reference-ranges">
<path value="DV_DURATION.other_reference_ranges"/>
<short
value="Optional tagged other reference ranges for this value in its particular measurement context."/>
<definition
value="Optional tagged other reference ranges for this value in its particular measurement context."/>
<min value="0"/>
<max value="*"/>
<base>
<path value="DV_ORDERED.other_reference_ranges"/>
<min value="0"/>
<max value="*"/>
</base>
<type>
<extension
url="http://hl7.org/fhir/tools/StructureDefinition/type-parameter">
<extension url="name">
<valueCode value="T"/>
</extension>
<extension url="type">
<valueUri
value="http://openehr.org/fhir/StructureDefinition/DV-ORDERED"/>
</extension>
</extension>
<code
value="http://openehr.org/fhir/StructureDefinition/REFERENCE-RANGE"/>
</type>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.magnitude-status">
<path value="DV_DURATION.magnitude_status"/>
<short
value="Optional status of magnitude with values:
* `"="` : magnitude is a point value
* `"<"` : value is < magnitude
* `">"` : value is > magnitude
* `"<="` : value is <= magnitude
* `">="` : value is >= magnitude
* `"~"` : value is approximately magnitude
If not present, assumed meaning is `"="` ."/>
<definition
value="Optional status of magnitude with values:
* `"="` : magnitude is a point value
* `"<"` : value is < magnitude
* `">"` : value is > magnitude
* `"<="` : value is <= magnitude
* `">="` : value is >= magnitude
* `"~"` : value is approximately magnitude
If not present, assumed meaning is `"="` ."/>
<min value="0"/>
<max value="1"/>
<base>
<path value="DV_QUANTIFIED.magnitude_status"/>
<min value="0"/>
<max value="1"/>
</base>
<type>
<code value="string"/>
</type>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.accuracy">
<path value="DV_DURATION.accuracy"/>
<short
value="Accuracy of measurement, expressed either as a half-range percent value (`_accuracy_is_percent_` = `True`) or a half-range quantity."/>
<definition
value="Accuracy of measurement, expressed either as a half-range percent value (`_accuracy_is_percent_` = `True`) or a half-range quantity. A value of `0` means that accuracy is 100%, i.e. no error.
A value of `_unknown_accuracy_value_` means that accuracy was not recorded."/>
<min value="0"/>
<max value="1"/>
<base>
<path value="DV_QUANTIFIED.accuracy"/>
<min value="0"/>
<max value="1"/>
</base>
<type>
<code value="decimal"/>
</type>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.accuracy-is-percent">
<path value="DV_DURATION.accuracy_is_percent"/>
<short
value="If `True`, indicates that when this object was created, `_accuracy_` was recorded as a percent value; if `False`, as an absolute quantity value."/>
<definition
value="If `True`, indicates that when this object was created, `_accuracy_` was recorded as a percent value; if `False`, as an absolute quantity value."/>
<min value="0"/>
<max value="1"/>
<base>
<path value="DV_AMOUNT.accuracy_is_percent"/>
<min value="0"/>
<max value="1"/>
</base>
<type>
<code value="boolean"/>
</type>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.value">
<path value="DV_DURATION.value"/>
<short
value="ISO8601 duration string, including described deviations to support negative values and weeks."/>
<definition
value="ISO8601 duration string, including described deviations to support negative values and weeks."/>
<min value="1"/>
<max value="1"/>
<base>
<path value="DV_DURATION.value"/>
<min value="1"/>
<max value="1"/>
</base>
<type>
<code value="string"/>
</type>
<isModifier value="false"/>
</element>
</snapshot>
<differential>
<element id="DV_DURATION">
<path value="DV_DURATION"/>
<short
value="Represents a period of time with respect to a notional point in time, which is not specified."/>
<definition
value="Represents a period of time with respect to a notional point in time, which is not specified. A sign may be used to indicate the duration is backwards in time rather than forwards.
NOTE: two deviations from ISO 8601 are supported, the first, to allow a negative sign, and the second allowing the 'W' designator to be mixed with other designators. See time types section in the Foundation Types model.
Used for recording the duration of something in the real world, particularly when there is a need a) to represent the duration in customary format, i.e. days, hours, minutes etc, and b) if it will be used in computational operations with date/time quantities, i.e. additions, subtractions etc.
Misuse: Durations cannot be used to represent points in time, or intervals of time. "/>
<min value="0"/>
<max value="*"/>
<constraint>
<key value="Value_valid"/>
<severity value="error"/>
<human value="Value valid"/>
<expression value="null # TODO: manual translation needed"/>
</constraint>
<isModifier value="false"/>
</element>
<element id="DV_DURATION.value">
<path value="DV_DURATION.value"/>
<short
value="ISO8601 duration string, including described deviations to support negative values and weeks."/>
<definition
value="ISO8601 duration string, including described deviations to support negative values and weeks."/>
<min value="1"/>
<max value="1"/>
<type>
<code value="string"/>
</type>
<isModifier value="false"/>
</element>
</differential>
</StructureDefinition>