cqf-relativeDateTime.xml
   1 <?xml version="1.0" encoding="utf-8"?>
   2 <StructureDefinition xmlns="http://hl7.org/fhir">
   3   <id value="cqf-relativeDateTime" />
   4   <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
   5     <valueCode value="fhir" />
   6   </extension>
   7   <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
   8     <valueInteger value="1" />
   9   </extension>
  10   <url value="http://hl7.org/fhir/StructureDefinition/cqf-relativeDateTime" />
  11   <version value="4.0.1" />
  12   <name value="relativeDateTime" />
  13   <status value="draft" />
  14   <date value="2015-05-30" />
  15   <publisher value="Health Level Seven, Inc. - CDS WG" />
  16   <contact>
  17     <telecom>
  18       <system value="url" />
  19       <value value="http://hl7.org/special/committees/dss" />
  20     </telecom>
  21   </contact>
  22   <description value="A date/time value that is determined based on a duration offset from a target event." />
  23   <fhirVersion value="4.0.1" />
  24   <mapping>
  25     <identity value="rim" />
  26     <uri value="http://hl7.org/v3" />
  27     <name value="RIM Mapping" />
  28   </mapping>
  29   <kind value="complex-type" />
  30   <abstract value="false" />
  31   <context>
  32     <type value="element" />
  33     <expression value="Element" />
  34   </context>
  35   <type value="Extension" />
  36   <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Extension" />
  37   <derivation value="constraint" />
  38   <snapshot>
  39     <element id="Extension">
  40       <path value="Extension" />
  41       <short value="A date/time that is specified relative to another event" />
  42       <definition value="A date/time value that is determined based on a duration offset from a target event." />
  43       <min value="0" />
  44       <max value="1" />
  45       <base>
  46         <path value="Extension" />
  47         <min value="0" />
  48         <max value="*" />
  49       </base>
  50       <condition value="ele-1" />
  51       <constraint>
  52         <key value="ele-1" />
  53         <severity value="error" />
  54         <human value="All FHIR elements must have a @value or children" />
  55         <expression value="hasValue() or (children().count() > id.count())" />
  56         <xpath value="@value|f:*|h:div" />
  57         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
  58       </constraint>
  59       <constraint>
  60         <key value="ext-1" />
  61         <severity value="error" />
  62         <human value="Must have either extensions or value[x], not both" />
  63         <expression value="extension.exists() != value.exists()" />
  64         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])" />
  65         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
  66       </constraint>
  67       <isModifier value="false" />
  68     </element>
  69     <element id="Extension.id">
  70       <path value="Extension.id" />
  71       <representation value="xmlAttr" />
  72       <short value="Unique id for inter-element referencing" />
  73       <definition value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." />
  74       <min value="0" />
  75       <max value="1" />
  76       <base>
  77         <path value="Element.id" />
  78         <min value="0" />
  79         <max value="1" />
  80       </base>
  81       <type>
  82         <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
  83           <valueUrl value="string" />
  84         </extension>
  85         <code value="http://hl7.org/fhirpath/System.String" />
  86       </type>
  87       <isModifier value="false" />
  88       <isSummary value="false" />
  89       <mapping>
  90         <identity value="rim" />
  91         <map value="n/a" />
  92       </mapping>
  93     </element>
  94     <element id="Extension.extension">
  95       <path value="Extension.extension" />
  96       <slicing>
  97         <discriminator>
  98           <type value="value" />
  99           <path value="url" />
 100         </discriminator>
 101         <description value="Extensions are always sliced by (at least) url" />
 102         <rules value="open" />
 103       </slicing>
 104       <short value="Additional content defined by implementations" />
 105       <definition value="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension." />
 106       <comment value="There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone." />
 107       <alias value="extensions" />
 108       <alias value="user content" />
 109       <min value="0" />
 110       <max value="*" />
 111       <base>
 112         <path value="Element.extension" />
 113         <min value="0" />
 114         <max value="*" />
 115       </base>
 116       <type>
 117         <code value="Extension" />
 118       </type>
 119       <constraint>
 120         <key value="ele-1" />
 121         <severity value="error" />
 122         <human value="All FHIR elements must have a @value or children" />
 123         <expression value="hasValue() or (children().count() > id.count())" />
 124         <xpath value="@value|f:*|h:div" />
 125         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 126       </constraint>
 127       <constraint>
 128         <key value="ext-1" />
 129         <severity value="error" />
 130         <human value="Must have either extensions or value[x], not both" />
 131         <expression value="extension.exists() != value.exists()" />
 132         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
 133         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 134       </constraint>
 135       <isModifier value="false" />
 136       <isSummary value="false" />
 137       <mapping>
 138         <identity value="rim" />
 139         <map value="n/a" />
 140       </mapping>
 141     </element>
 142     <element id="Extension.extension:target">
 143       <path value="Extension.extension" />
 144       <sliceName value="target" />
 145       <short value="Relative to what event" />
 146       <definition value="The event that the date/time value is relative to." />
 147       <min value="1" />
 148       <max value="1" />
 149       <base>
 150         <path value="Element.extension" />
 151         <min value="0" />
 152         <max value="*" />
 153       </base>
 154       <type>
 155         <code value="Extension" />
 156       </type>
 157       <constraint>
 158         <key value="ele-1" />
 159         <severity value="error" />
 160         <human value="All FHIR elements must have a @value or children" />
 161         <expression value="hasValue() or (children().count() > id.count())" />
 162         <xpath value="@value|f:*|h:div" />
 163         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 164       </constraint>
 165       <constraint>
 166         <key value="ext-1" />
 167         <severity value="error" />
 168         <human value="Must have either extensions or value[x], not both" />
 169         <expression value="extension.exists() != value.exists()" />
 170         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
 171         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 172       </constraint>
 173       <isModifier value="false" />
 174       <isSummary value="false" />
 175     </element>
 176     <element id="Extension.extension:target.id">
 177       <path value="Extension.extension.id" />
 178       <representation value="xmlAttr" />
 179       <short value="Unique id for inter-element referencing" />
 180       <definition value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." />
 181       <min value="0" />
 182       <max value="1" />
 183       <base>
 184         <path value="Element.id" />
 185         <min value="0" />
 186         <max value="1" />
 187       </base>
 188       <type>
 189         <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
 190           <valueUrl value="string" />
 191         </extension>
 192         <code value="http://hl7.org/fhirpath/System.String" />
 193       </type>
 194       <isModifier value="false" />
 195       <isSummary value="false" />
 196       <mapping>
 197         <identity value="rim" />
 198         <map value="n/a" />
 199       </mapping>
 200     </element>
 201     <element id="Extension.extension:target.extension">
 202       <path value="Extension.extension.extension" />
 203       <slicing>
 204         <discriminator>
 205           <type value="value" />
 206           <path value="url" />
 207         </discriminator>
 208         <description value="Extensions are always sliced by (at least) url" />
 209         <rules value="open" />
 210       </slicing>
 211       <short value="Extension" />
 212       <definition value="An Extension" />
 213       <min value="0" />
 214       <max value="0" />
 215       <base>
 216         <path value="Element.extension" />
 217         <min value="0" />
 218         <max value="*" />
 219       </base>
 220       <type>
 221         <code value="Extension" />
 222       </type>
 223       <constraint>
 224         <key value="ele-1" />
 225         <severity value="error" />
 226         <human value="All FHIR elements must have a @value or children" />
 227         <expression value="hasValue() or (children().count() > id.count())" />
 228         <xpath value="@value|f:*|h:div" />
 229         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 230       </constraint>
 231       <constraint>
 232         <key value="ext-1" />
 233         <severity value="error" />
 234         <human value="Must have either extensions or value[x], not both" />
 235         <expression value="extension.exists() != value.exists()" />
 236         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
 237         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 238       </constraint>
 239       <isModifier value="false" />
 240       <isSummary value="false" />
 241     </element>
 242     <element id="Extension.extension:target.url">
 243       <path value="Extension.extension.url" />
 244       <representation value="xmlAttr" />
 245       <short value="identifies the meaning of the extension" />
 246       <definition value="Source of the definition for the extension code - a logical name or a URL." />
 247       <comment value="The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension." />
 248       <min value="1" />
 249       <max value="1" />
 250       <base>
 251         <path value="Extension.url" />
 252         <min value="1" />
 253         <max value="1" />
 254       </base>
 255       <type>
 256         <code value="uri" />
 257       </type>
 258       <fixedUri value="target" />
 259       <isModifier value="false" />
 260       <isSummary value="false" />
 261       <mapping>
 262         <identity value="rim" />
 263         <map value="N/A" />
 264       </mapping>
 265     </element>
 266     <element id="Extension.extension:target.value[x]">
 267       <path value="Extension.extension.value[x]" />
 268       <short value="Value of extension" />
 269       <definition value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/extensibility.html) for a list)." />
 270       <min value="1" />
 271       <max value="1" />
 272       <base>
 273         <path value="Extension.value[x]" />
 274         <min value="0" />
 275         <max value="1" />
 276       </base>
 277       <type>
 278         <code value="Reference" />
 279         <targetProfile value="http://hl7.org/fhir/StructureDefinition/Resource" />
 280       </type>
 281       <constraint>
 282         <key value="ele-1" />
 283         <severity value="error" />
 284         <human value="All FHIR elements must have a @value or children" />
 285         <expression value="hasValue() or (children().count() > id.count())" />
 286         <xpath value="@value|f:*|h:div" />
 287         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 288       </constraint>
 289       <isModifier value="false" />
 290       <isSummary value="false" />
 291       <mapping>
 292         <identity value="rim" />
 293         <map value="N/A" />
 294       </mapping>
 295     </element>
 296     <element id="Extension.extension:targetPath">
 297       <path value="Extension.extension" />
 298       <sliceName value="targetPath" />
 299       <short value="Relative to which element on the event" />
 300       <definition value="The path to the element that defines the effective period for the event that the date/time value is relative to." />
 301       <comment value="The specified path must be resolvable from the type of the target. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements. Note that the index must be an integer constant." />
 302       <min value="1" />
 303       <max value="1" />
 304       <base>
 305         <path value="Element.extension" />
 306         <min value="0" />
 307         <max value="*" />
 308       </base>
 309       <type>
 310         <code value="Extension" />
 311       </type>
 312       <constraint>
 313         <key value="ele-1" />
 314         <severity value="error" />
 315         <human value="All FHIR elements must have a @value or children" />
 316         <expression value="hasValue() or (children().count() > id.count())" />
 317         <xpath value="@value|f:*|h:div" />
 318         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 319       </constraint>
 320       <constraint>
 321         <key value="ext-1" />
 322         <severity value="error" />
 323         <human value="Must have either extensions or value[x], not both" />
 324         <expression value="extension.exists() != value.exists()" />
 325         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
 326         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 327       </constraint>
 328       <isModifier value="false" />
 329       <isSummary value="false" />
 330     </element>
 331     <element id="Extension.extension:targetPath.id">
 332       <path value="Extension.extension.id" />
 333       <representation value="xmlAttr" />
 334       <short value="Unique id for inter-element referencing" />
 335       <definition value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." />
 336       <min value="0" />
 337       <max value="1" />
 338       <base>
 339         <path value="Element.id" />
 340         <min value="0" />
 341         <max value="1" />
 342       </base>
 343       <type>
 344         <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
 345           <valueUrl value="string" />
 346         </extension>
 347         <code value="http://hl7.org/fhirpath/System.String" />
 348       </type>
 349       <isModifier value="false" />
 350       <isSummary value="false" />
 351       <mapping>
 352         <identity value="rim" />
 353         <map value="n/a" />
 354       </mapping>
 355     </element>
 356     <element id="Extension.extension:targetPath.extension">
 357       <path value="Extension.extension.extension" />
 358       <slicing>
 359         <discriminator>
 360           <type value="value" />
 361           <path value="url" />
 362         </discriminator>
 363         <description value="Extensions are always sliced by (at least) url" />
 364         <rules value="open" />
 365       </slicing>
 366       <short value="Extension" />
 367       <definition value="An Extension" />
 368       <min value="0" />
 369       <max value="0" />
 370       <base>
 371         <path value="Element.extension" />
 372         <min value="0" />
 373         <max value="*" />
 374       </base>
 375       <type>
 376         <code value="Extension" />
 377       </type>
 378       <constraint>
 379         <key value="ele-1" />
 380         <severity value="error" />
 381         <human value="All FHIR elements must have a @value or children" />
 382         <expression value="hasValue() or (children().count() > id.count())" />
 383         <xpath value="@value|f:*|h:div" />
 384         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 385       </constraint>
 386       <constraint>
 387         <key value="ext-1" />
 388         <severity value="error" />
 389         <human value="Must have either extensions or value[x], not both" />
 390         <expression value="extension.exists() != value.exists()" />
 391         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
 392         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 393       </constraint>
 394       <isModifier value="false" />
 395       <isSummary value="false" />
 396     </element>
 397     <element id="Extension.extension:targetPath.url">
 398       <path value="Extension.extension.url" />
 399       <representation value="xmlAttr" />
 400       <short value="identifies the meaning of the extension" />
 401       <definition value="Source of the definition for the extension code - a logical name or a URL." />
 402       <comment value="The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension." />
 403       <min value="1" />
 404       <max value="1" />
 405       <base>
 406         <path value="Extension.url" />
 407         <min value="1" />
 408         <max value="1" />
 409       </base>
 410       <type>
 411         <code value="uri" />
 412       </type>
 413       <fixedUri value="targetPath" />
 414       <isModifier value="false" />
 415       <isSummary value="false" />
 416       <mapping>
 417         <identity value="rim" />
 418         <map value="N/A" />
 419       </mapping>
 420     </element>
 421     <element id="Extension.extension:targetPath.value[x]">
 422       <path value="Extension.extension.value[x]" />
 423       <short value="Value of extension" />
 424       <definition value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/extensibility.html) for a list)." />
 425       <min value="1" />
 426       <max value="1" />
 427       <base>
 428         <path value="Extension.value[x]" />
 429         <min value="0" />
 430         <max value="1" />
 431       </base>
 432       <type>
 433         <code value="string" />
 434       </type>
 435       <constraint>
 436         <key value="ele-1" />
 437         <severity value="error" />
 438         <human value="All FHIR elements must have a @value or children" />
 439         <expression value="hasValue() or (children().count() > id.count())" />
 440         <xpath value="@value|f:*|h:div" />
 441         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 442       </constraint>
 443       <isModifier value="false" />
 444       <isSummary value="false" />
 445       <mapping>
 446         <identity value="rim" />
 447         <map value="N/A" />
 448       </mapping>
 449     </element>
 450     <element id="Extension.extension:relationship">
 451       <path value="Extension.extension" />
 452       <sliceName value="relationship" />
 453       <short value="before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end" />
 454       <definition value="The relationship to the effective period of the target event that the date/time value is relative to." />
 455       <min value="1" />
 456       <max value="1" />
 457       <base>
 458         <path value="Element.extension" />
 459         <min value="0" />
 460         <max value="*" />
 461       </base>
 462       <type>
 463         <code value="Extension" />
 464       </type>
 465       <constraint>
 466         <key value="ele-1" />
 467         <severity value="error" />
 468         <human value="All FHIR elements must have a @value or children" />
 469         <expression value="hasValue() or (children().count() > id.count())" />
 470         <xpath value="@value|f:*|h:div" />
 471         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 472       </constraint>
 473       <constraint>
 474         <key value="ext-1" />
 475         <severity value="error" />
 476         <human value="Must have either extensions or value[x], not both" />
 477         <expression value="extension.exists() != value.exists()" />
 478         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
 479         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 480       </constraint>
 481       <isModifier value="false" />
 482       <isSummary value="false" />
 483     </element>
 484     <element id="Extension.extension:relationship.id">
 485       <path value="Extension.extension.id" />
 486       <representation value="xmlAttr" />
 487       <short value="Unique id for inter-element referencing" />
 488       <definition value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." />
 489       <min value="0" />
 490       <max value="1" />
 491       <base>
 492         <path value="Element.id" />
 493         <min value="0" />
 494         <max value="1" />
 495       </base>
 496       <type>
 497         <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
 498           <valueUrl value="string" />
 499         </extension>
 500         <code value="http://hl7.org/fhirpath/System.String" />
 501       </type>
 502       <isModifier value="false" />
 503       <isSummary value="false" />
 504       <mapping>
 505         <identity value="rim" />
 506         <map value="n/a" />
 507       </mapping>
 508     </element>
 509     <element id="Extension.extension:relationship.extension">
 510       <path value="Extension.extension.extension" />
 511       <slicing>
 512         <discriminator>
 513           <type value="value" />
 514           <path value="url" />
 515         </discriminator>
 516         <description value="Extensions are always sliced by (at least) url" />
 517         <rules value="open" />
 518       </slicing>
 519       <short value="Extension" />
 520       <definition value="An Extension" />
 521       <min value="0" />
 522       <max value="0" />
 523       <base>
 524         <path value="Element.extension" />
 525         <min value="0" />
 526         <max value="*" />
 527       </base>
 528       <type>
 529         <code value="Extension" />
 530       </type>
 531       <constraint>
 532         <key value="ele-1" />
 533         <severity value="error" />
 534         <human value="All FHIR elements must have a @value or children" />
 535         <expression value="hasValue() or (children().count() > id.count())" />
 536         <xpath value="@value|f:*|h:div" />
 537         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 538       </constraint>
 539       <constraint>
 540         <key value="ext-1" />
 541         <severity value="error" />
 542         <human value="Must have either extensions or value[x], not both" />
 543         <expression value="extension.exists() != value.exists()" />
 544         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
 545         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 546       </constraint>
 547       <isModifier value="false" />
 548       <isSummary value="false" />
 549     </element>
 550     <element id="Extension.extension:relationship.url">
 551       <path value="Extension.extension.url" />
 552       <representation value="xmlAttr" />
 553       <short value="identifies the meaning of the extension" />
 554       <definition value="Source of the definition for the extension code - a logical name or a URL." />
 555       <comment value="The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension." />
 556       <min value="1" />
 557       <max value="1" />
 558       <base>
 559         <path value="Extension.url" />
 560         <min value="1" />
 561         <max value="1" />
 562       </base>
 563       <type>
 564         <code value="uri" />
 565       </type>
 566       <fixedUri value="relationship" />
 567       <isModifier value="false" />
 568       <isSummary value="false" />
 569       <mapping>
 570         <identity value="rim" />
 571         <map value="N/A" />
 572       </mapping>
 573     </element>
 574     <element id="Extension.extension:relationship.value[x]">
 575       <path value="Extension.extension.value[x]" />
 576       <short value="Value of extension" />
 577       <definition value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/extensibility.html) for a list)." />
 578       <min value="1" />
 579       <max value="1" />
 580       <base>
 581         <path value="Extension.value[x]" />
 582         <min value="0" />
 583         <max value="1" />
 584       </base>
 585       <type>
 586         <code value="code" />
 587       </type>
 588       <constraint>
 589         <key value="ele-1" />
 590         <severity value="error" />
 591         <human value="All FHIR elements must have a @value or children" />
 592         <expression value="hasValue() or (children().count() > id.count())" />
 593         <xpath value="@value|f:*|h:div" />
 594         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 595       </constraint>
 596       <isModifier value="false" />
 597       <isSummary value="false" />
 598       <binding>
 599         <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
 600           <valueString value="ActionRelationshipType" />
 601         </extension>
 602         <strength value="required" />
 603         <description value="A type that describes how two events are related in time." />
 604         <valueSet value="http://hl7.org/fhir/ValueSet/action-relationship-type|4.0.1" />
 605       </binding>
 606       <mapping>
 607         <identity value="rim" />
 608         <map value="N/A" />
 609       </mapping>
 610     </element>
 611     <element id="Extension.extension:offset">
 612       <path value="Extension.extension" />
 613       <sliceName value="offset" />
 614       <short value="How long" />
 615       <definition value="A duration or range of durations that specifies the offset between the date/time value and the target event. For example, 30-60 minutes before." />
 616       <min value="1" />
 617       <max value="1" />
 618       <base>
 619         <path value="Element.extension" />
 620         <min value="0" />
 621         <max value="*" />
 622       </base>
 623       <type>
 624         <code value="Extension" />
 625       </type>
 626       <constraint>
 627         <key value="ele-1" />
 628         <severity value="error" />
 629         <human value="All FHIR elements must have a @value or children" />
 630         <expression value="hasValue() or (children().count() > id.count())" />
 631         <xpath value="@value|f:*|h:div" />
 632         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 633       </constraint>
 634       <constraint>
 635         <key value="ext-1" />
 636         <severity value="error" />
 637         <human value="Must have either extensions or value[x], not both" />
 638         <expression value="extension.exists() != value.exists()" />
 639         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
 640         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 641       </constraint>
 642       <isModifier value="false" />
 643       <isSummary value="false" />
 644     </element>
 645     <element id="Extension.extension:offset.id">
 646       <path value="Extension.extension.id" />
 647       <representation value="xmlAttr" />
 648       <short value="Unique id for inter-element referencing" />
 649       <definition value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." />
 650       <min value="0" />
 651       <max value="1" />
 652       <base>
 653         <path value="Element.id" />
 654         <min value="0" />
 655         <max value="1" />
 656       </base>
 657       <type>
 658         <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
 659           <valueUrl value="string" />
 660         </extension>
 661         <code value="http://hl7.org/fhirpath/System.String" />
 662       </type>
 663       <isModifier value="false" />
 664       <isSummary value="false" />
 665       <mapping>
 666         <identity value="rim" />
 667         <map value="n/a" />
 668       </mapping>
 669     </element>
 670     <element id="Extension.extension:offset.extension">
 671       <path value="Extension.extension.extension" />
 672       <slicing>
 673         <discriminator>
 674           <type value="value" />
 675           <path value="url" />
 676         </discriminator>
 677         <description value="Extensions are always sliced by (at least) url" />
 678         <rules value="open" />
 679       </slicing>
 680       <short value="Extension" />
 681       <definition value="An Extension" />
 682       <min value="0" />
 683       <max value="0" />
 684       <base>
 685         <path value="Element.extension" />
 686         <min value="0" />
 687         <max value="*" />
 688       </base>
 689       <type>
 690         <code value="Extension" />
 691       </type>
 692       <constraint>
 693         <key value="ele-1" />
 694         <severity value="error" />
 695         <human value="All FHIR elements must have a @value or children" />
 696         <expression value="hasValue() or (children().count() > id.count())" />
 697         <xpath value="@value|f:*|h:div" />
 698         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 699       </constraint>
 700       <constraint>
 701         <key value="ext-1" />
 702         <severity value="error" />
 703         <human value="Must have either extensions or value[x], not both" />
 704         <expression value="extension.exists() != value.exists()" />
 705         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
 706         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 707       </constraint>
 708       <isModifier value="false" />
 709       <isSummary value="false" />
 710     </element>
 711     <element id="Extension.extension:offset.url">
 712       <path value="Extension.extension.url" />
 713       <representation value="xmlAttr" />
 714       <short value="identifies the meaning of the extension" />
 715       <definition value="Source of the definition for the extension code - a logical name or a URL." />
 716       <comment value="The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension." />
 717       <min value="1" />
 718       <max value="1" />
 719       <base>
 720         <path value="Extension.url" />
 721         <min value="1" />
 722         <max value="1" />
 723       </base>
 724       <type>
 725         <code value="uri" />
 726       </type>
 727       <fixedUri value="offset" />
 728       <isModifier value="false" />
 729       <isSummary value="false" />
 730       <mapping>
 731         <identity value="rim" />
 732         <map value="N/A" />
 733       </mapping>
 734     </element>
 735     <element id="Extension.extension:offset.value[x]">
 736       <path value="Extension.extension.value[x]" />
 737       <short value="Value of extension" />
 738       <definition value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/extensibility.html) for a list)." />
 739       <min value="1" />
 740       <max value="1" />
 741       <base>
 742         <path value="Extension.value[x]" />
 743         <min value="0" />
 744         <max value="1" />
 745       </base>
 746       <type>
 747         <code value="Duration" />
 748       </type>
 749       <type>
 750         <code value="Range" />
 751       </type>
 752       <constraint>
 753         <key value="ele-1" />
 754         <severity value="error" />
 755         <human value="All FHIR elements must have a @value or children" />
 756         <expression value="hasValue() or (children().count() > id.count())" />
 757         <xpath value="@value|f:*|h:div" />
 758         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 759       </constraint>
 760       <isModifier value="false" />
 761       <isSummary value="false" />
 762       <mapping>
 763         <identity value="rim" />
 764         <map value="N/A" />
 765       </mapping>
 766     </element>
 767     <element id="Extension.url">
 768       <path value="Extension.url" />
 769       <representation value="xmlAttr" />
 770       <short value="identifies the meaning of the extension" />
 771       <definition value="Source of the definition for the extension code - a logical name or a URL." />
 772       <comment value="The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension." />
 773       <min value="1" />
 774       <max value="1" />
 775       <base>
 776         <path value="Extension.url" />
 777         <min value="1" />
 778         <max value="1" />
 779       </base>
 780       <type>
 781         <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
 782           <valueUrl value="uri" />
 783         </extension>
 784         <code value="http://hl7.org/fhirpath/System.String" />
 785       </type>
 786       <fixedUri value="http://hl7.org/fhir/StructureDefinition/cqf-relativeDateTime" />
 787       <isModifier value="false" />
 788       <isSummary value="false" />
 789       <mapping>
 790         <identity value="rim" />
 791         <map value="N/A" />
 792       </mapping>
 793     </element>
 794     <element id="Extension.value[x]">
 795       <path value="Extension.value[x]" />
 796       <short value="Value of extension" />
 797       <definition value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/extensibility.html) for a list)." />
 798       <min value="0" />
 799       <max value="0" />
 800       <base>
 801         <path value="Extension.value[x]" />
 802         <min value="0" />
 803         <max value="1" />
 804       </base>
 805       <type>
 806         <code value="base64Binary" />
 807       </type>
 808       <type>
 809         <code value="boolean" />
 810       </type>
 811       <type>
 812         <code value="canonical" />
 813       </type>
 814       <type>
 815         <code value="code" />
 816       </type>
 817       <type>
 818         <code value="date" />
 819       </type>
 820       <type>
 821         <code value="dateTime" />
 822       </type>
 823       <type>
 824         <code value="decimal" />
 825       </type>
 826       <type>
 827         <code value="id" />
 828       </type>
 829       <type>
 830         <code value="instant" />
 831       </type>
 832       <type>
 833         <code value="integer" />
 834       </type>
 835       <type>
 836         <code value="markdown" />
 837       </type>
 838       <type>
 839         <code value="oid" />
 840       </type>
 841       <type>
 842         <code value="positiveInt" />
 843       </type>
 844       <type>
 845         <code value="string" />
 846       </type>
 847       <type>
 848         <code value="time" />
 849       </type>
 850       <type>
 851         <code value="unsignedInt" />
 852       </type>
 853       <type>
 854         <code value="uri" />
 855       </type>
 856       <type>
 857         <code value="url" />
 858       </type>
 859       <type>
 860         <code value="uuid" />
 861       </type>
 862       <type>
 863         <code value="Address" />
 864       </type>
 865       <type>
 866         <code value="Age" />
 867       </type>
 868       <type>
 869         <code value="Annotation" />
 870       </type>
 871       <type>
 872         <code value="Attachment" />
 873       </type>
 874       <type>
 875         <code value="CodeableConcept" />
 876       </type>
 877       <type>
 878         <code value="Coding" />
 879       </type>
 880       <type>
 881         <code value="ContactPoint" />
 882       </type>
 883       <type>
 884         <code value="Count" />
 885       </type>
 886       <type>
 887         <code value="Distance" />
 888       </type>
 889       <type>
 890         <code value="Duration" />
 891       </type>
 892       <type>
 893         <code value="HumanName" />
 894       </type>
 895       <type>
 896         <code value="Identifier" />
 897       </type>
 898       <type>
 899         <code value="Money" />
 900       </type>
 901       <type>
 902         <code value="Period" />
 903       </type>
 904       <type>
 905         <code value="Quantity" />
 906       </type>
 907       <type>
 908         <code value="Range" />
 909       </type>
 910       <type>
 911         <code value="Ratio" />
 912       </type>
 913       <type>
 914         <code value="Reference" />
 915       </type>
 916       <type>
 917         <code value="SampledData" />
 918       </type>
 919       <type>
 920         <code value="Signature" />
 921       </type>
 922       <type>
 923         <code value="Timing" />
 924       </type>
 925       <type>
 926         <code value="ContactDetail" />
 927       </type>
 928       <type>
 929         <code value="Contributor" />
 930       </type>
 931       <type>
 932         <code value="DataRequirement" />
 933       </type>
 934       <type>
 935         <code value="Expression" />
 936       </type>
 937       <type>
 938         <code value="ParameterDefinition" />
 939       </type>
 940       <type>
 941         <code value="RelatedArtifact" />
 942       </type>
 943       <type>
 944         <code value="TriggerDefinition" />
 945       </type>
 946       <type>
 947         <code value="UsageContext" />
 948       </type>
 949       <type>
 950         <code value="Dosage" />
 951       </type>
 952       <type>
 953         <code value="Meta" />
 954       </type>
 955       <constraint>
 956         <key value="ele-1" />
 957         <severity value="error" />
 958         <human value="All FHIR elements must have a @value or children" />
 959         <expression value="hasValue() or (children().count() > id.count())" />
 960         <xpath value="@value|f:*|h:div" />
 961         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 962       </constraint>
 963       <isModifier value="false" />
 964       <isSummary value="false" />
 965       <mapping>
 966         <identity value="rim" />
 967         <map value="N/A" />
 968       </mapping>
 969     </element>
 970   </snapshot>
 971   <differential>
 972     <element id="Extension">
 973       <path value="Extension" />
 974       <short value="A date/time that is specified relative to another event" />
 975       <definition value="A date/time value that is determined based on a duration offset from a target event." />
 976       <min value="0" />
 977       <max value="1" />
 978     </element>
 979     <element id="Extension.extension:target">
 980       <path value="Extension.extension" />
 981       <sliceName value="target" />
 982       <short value="Relative to what event" />
 983       <definition value="The event that the date/time value is relative to." />
 984       <min value="1" />
 985       <max value="1" />
 986       <type>
 987         <code value="Extension" />
 988       </type>
 989     </element>
 990     <element id="Extension.extension:target.extension">
 991       <path value="Extension.extension.extension" />
 992       <max value="0" />
 993     </element>
 994     <element id="Extension.extension:target.url">
 995       <path value="Extension.extension.url" />
 996       <type>
 997         <code value="uri" />
 998       </type>
 999       <fixedUri value="target" />
1000     </element>
1001     <element id="Extension.extension:target.value[x]">
1002       <path value="Extension.extension.value[x]" />
1003       <min value="1" />
1004       <type>
1005         <code value="Reference" />
1006         <targetProfile value="http://hl7.org/fhir/StructureDefinition/Resource" />
1007       </type>
1008     </element>
1009     <element id="Extension.extension:targetPath">
1010       <path value="Extension.extension" />
1011       <sliceName value="targetPath" />
1012       <short value="Relative to which element on the event" />
1013       <definition value="The path to the element that defines the effective period for the event that the date/time value is relative to." />
1014       <comment value="The specified path must be resolvable from the type of the target. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements. Note that the index must be an integer constant." />
1015       <min value="1" />
1016       <max value="1" />
1017       <type>
1018         <code value="Extension" />
1019       </type>
1020     </element>
1021     <element id="Extension.extension:targetPath.extension">
1022       <path value="Extension.extension.extension" />
1023       <max value="0" />
1024     </element>
1025     <element id="Extension.extension:targetPath.url">
1026       <path value="Extension.extension.url" />
1027       <type>
1028         <code value="uri" />
1029       </type>
1030       <fixedUri value="targetPath" />
1031     </element>
1032     <element id="Extension.extension:targetPath.value[x]">
1033       <path value="Extension.extension.value[x]" />
1034       <min value="1" />
1035       <type>
1036         <code value="string" />
1037       </type>
1038     </element>
1039     <element id="Extension.extension:relationship">
1040       <path value="Extension.extension" />
1041       <sliceName value="relationship" />
1042       <short value="before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end" />
1043       <definition value="The relationship to the effective period of the target event that the date/time value is relative to." />
1044       <min value="1" />
1045       <max value="1" />
1046       <type>
1047         <code value="Extension" />
1048       </type>
1049     </element>
1050     <element id="Extension.extension:relationship.extension">
1051       <path value="Extension.extension.extension" />
1052       <max value="0" />
1053     </element>
1054     <element id="Extension.extension:relationship.url">
1055       <path value="Extension.extension.url" />
1056       <type>
1057         <code value="uri" />
1058       </type>
1059       <fixedUri value="relationship" />
1060     </element>
1061     <element id="Extension.extension:relationship.value[x]">
1062       <path value="Extension.extension.value[x]" />
1063       <min value="1" />
1064       <type>
1065         <code value="code" />
1066       </type>
1067       <binding>
1068         <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
1069           <valueString value="ActionRelationshipType" />
1070         </extension>
1071         <strength value="required" />
1072         <description value="A type that describes how two events are related in time." />
1073         <valueSet value="http://hl7.org/fhir/ValueSet/action-relationship-type|4.0.1" />
1074       </binding>
1075     </element>
1076     <element id="Extension.extension:offset">
1077       <path value="Extension.extension" />
1078       <sliceName value="offset" />
1079       <short value="How long" />
1080       <definition value="A duration or range of durations that specifies the offset between the date/time value and the target event. For example, 30-60 minutes before." />
1081       <min value="1" />
1082       <max value="1" />
1083       <type>
1084         <code value="Extension" />
1085       </type>
1086     </element>
1087     <element id="Extension.extension:offset.extension">
1088       <path value="Extension.extension.extension" />
1089       <max value="0" />
1090     </element>
1091     <element id="Extension.extension:offset.url">
1092       <path value="Extension.extension.url" />
1093       <type>
1094         <code value="uri" />
1095       </type>
1096       <fixedUri value="offset" />
1097     </element>
1098     <element id="Extension.extension:offset.value[x]">
1099       <path value="Extension.extension.value[x]" />
1100       <min value="1" />
1101       <type>
1102         <code value="Duration" />
1103       </type>
1104       <type>
1105         <code value="Range" />
1106       </type>
1107     </element>
1108     <element id="Extension.url">
1109       <path value="Extension.url" />
1110       <fixedUri value="http://hl7.org/fhir/StructureDefinition/cqf-relativeDateTime" />
1111     </element>
1112     <element id="Extension.value[x]">
1113       <path value="Extension.value[x]" />
1114       <min value="0" />
1115       <max value="0" />
1116     </element>
1117   </differential>
1118 </StructureDefinition>