Release 4B

This page is part of the FHIR Specification (v4.3.0: R4B - STU). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R4B R4

Extension: Relative Date Criteria

FHIR Infrastructure Work Group Maturity Level: 1InformativeUse Context: Any

URL for this extension:

http://hl7.org/fhir/StructureDefinition/relative-date

Status: draft. Extension maintained by: Health Level Seven International (FHIR Infrastructure)

Specifies that a date is relative to some event. The event happens [Duration] after [Event].

Comment:

This extension is used when a precise date is not known, but rather, the date will be relative to some future event (e.g. Do this 2 weeks after an operation).

Context of Use: Use on Element ID date or Element ID dateTime

Extension Content

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. Relative Date Criteria0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/relative-date
Relative Date Criteria: Specifies that a date is relative to some event. The event happens [Duration] after [Event].


Use on Element ID date or Element ID dateTime
... event1..1Reference(Resource), CodeableConceptThe event that the date(time) is relative to.

... relationship1..1codeDefines the relationship between the event and the date.

... offset1..1DurationThe duration after the event that the date(time) will happen.


doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/relative-date
Relative Date Criteria: Specifies that a date is relative to some event. The event happens [Duration] after [Event].


Use on Element ID date or Element ID dateTime
... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... extension:event 1..1ExtensionEvent that the date is relative to
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"event"
.... value[x] 1..1Value of extension
..... valueReferenceReference(Resource)
..... valueCodeableConceptCodeableConcept
... extension:relationship 1..1Extensionbefore-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"relationship"
.... value[x] 1..1codeValue of extension
Binding: ActionRelationshipType (required)
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"offset"
.... value[x] 1..1DurationValue of extension
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/relative-date"
... value[x] 0..0
.... valueBase64Binarybase64Binary
.... valueBooleanboolean
.... valueCanonicalcanonical(Any)
.... valueCodecode
.... valueDatedate
.... valueDateTimedateTime
.... valueDecimaldecimal
.... valueIdid
.... valueInstantinstant
.... valueIntegerinteger
.... valueMarkdownmarkdown
.... valueOidoid
.... valuePositiveIntpositiveInt
.... valueStringstring
.... valueTimetime
.... valueUnsignedIntunsignedInt
.... valueUriuri
.... valueUrlurl
.... valueUuiduuid
.... valueAddressAddress
.... valueAgeAge
.... valueAnnotationAnnotation
.... valueAttachmentAttachment
.... valueCodeableConceptCodeableConcept
.... valueCodeableReferenceCodeableReference
.... valueCodingCoding
.... valueContactPointContactPoint
.... valueCountCount
.... valueDistanceDistance
.... valueDurationDuration
.... valueHumanNameHumanName
.... valueIdentifierIdentifier
.... valueMoneyMoney
.... valuePeriodPeriod
.... valueQuantityQuantity
.... valueRangeRange
.... valueRatioRatio
.... valueRatioRangeRatioRange
.... valueReferenceReference(Any)
.... valueSampledDataSampledData
.... valueSignatureSignature
.... valueTimingTiming
.... valueContactDetailContactDetail
.... valueContributorContributor
.... valueDataRequirementDataRequirement
.... valueExpressionExpression
.... valueParameterDefinitionParameterDefinition
.... valueRelatedArtifactRelatedArtifact
.... valueTriggerDefinitionTriggerDefinition
.... valueUsageContextUsageContext
.... valueDosageDosage

doco Documentation for this format

XML Template

<!-- Relative Date Criteria -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/relative-date" >
 <-- extension sliced by value:url  in the specified orderOpen-->
 <extension url="event"> ?? 1..1 Extension  <!-- ?? 1..1 Event that the date is relative to -->
  <value[x]><!-- ?? 1..1 Reference(Resource)|CodeableConcept 
      Value of extension --></value[x]>
 </extension>
 <extension url="relationship"> ?? 1..1 Extension  <!-- ?? 1..1 before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end -->
  <valueCode value="[code]"/><!-- ?? 1..1 Value of extension -->
 </extension>
 <extension url="offset"> ?? 1..1 Extension  <!-- ?? 1..1 Duration after the event -->
  <valueDuration><!-- ?? 1..1 Duration Value of extension --></valueDuration>
 </extension>
</extension>

JSON Template

{ // Relative Date Criteria
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // Event that the date is relative to // C? R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "event", // R! 
// value[x]: Value of extension. One of these 2:
        "valueReference" : { Reference(Resource) } // C? R! Value of extension
        "valueCodeableConcept" : { CodeableConcept }, // C? R! Value of extension
      },
      { // before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end // C? R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "relationship", // R! 
        "valueCode" : "<code>" // C? R! Value of extension
      },
      { // Duration after the event // C? R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "offset", // R! 
        "valueDuration" : { Duration } // C? R! Value of extension
      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/relative-date", // R! 
// value[x]: Value of extension. One of these 51:
  }

Summary

NameFlagsCard.TypeDescription & Constraintsdoco
.. Relative Date Criteria0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/relative-date
Relative Date Criteria: Specifies that a date is relative to some event. The event happens [Duration] after [Event].


Use on Element ID date or Element ID dateTime
... event1..1Reference(Resource), CodeableConceptThe event that the date(time) is relative to.

... relationship1..1codeDefines the relationship between the event and the date.

... offset1..1DurationThe duration after the event that the date(time) will happen.


doco Documentation for this format

Full Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. extension0..1ExtensionURL = http://hl7.org/fhir/StructureDefinition/relative-date
Relative Date Criteria: Specifies that a date is relative to some event. The event happens [Duration] after [Event].


Use on Element ID date or Element ID dateTime
... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... extension:event 1..1ExtensionEvent that the date is relative to
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"event"
.... value[x] 1..1Value of extension
..... valueReferenceReference(Resource)
..... valueCodeableConceptCodeableConcept
... extension:relationship 1..1Extensionbefore-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"relationship"
.... value[x] 1..1codeValue of extension
Binding: ActionRelationshipType (required)
.... id 0..1idUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"offset"
.... value[x] 1..1DurationValue of extension
... url 1..1uri"http://hl7.org/fhir/StructureDefinition/relative-date"
... value[x] 0..0
.... valueBase64Binarybase64Binary
.... valueBooleanboolean
.... valueCanonicalcanonical(Any)
.... valueCodecode
.... valueDatedate
.... valueDateTimedateTime
.... valueDecimaldecimal
.... valueIdid
.... valueInstantinstant
.... valueIntegerinteger
.... valueMarkdownmarkdown
.... valueOidoid
.... valuePositiveIntpositiveInt
.... valueStringstring
.... valueTimetime
.... valueUnsignedIntunsignedInt
.... valueUriuri
.... valueUrlurl
.... valueUuiduuid
.... valueAddressAddress
.... valueAgeAge
.... valueAnnotationAnnotation
.... valueAttachmentAttachment
.... valueCodeableConceptCodeableConcept
.... valueCodeableReferenceCodeableReference
.... valueCodingCoding
.... valueContactPointContactPoint
.... valueCountCount
.... valueDistanceDistance
.... valueDurationDuration
.... valueHumanNameHumanName
.... valueIdentifierIdentifier
.... valueMoneyMoney
.... valuePeriodPeriod
.... valueQuantityQuantity
.... valueRangeRange
.... valueRatioRatio
.... valueRatioRangeRatioRange
.... valueReferenceReference(Any)
.... valueSampledDataSampledData
.... valueSignatureSignature
.... valueTimingTiming
.... valueContactDetailContactDetail
.... valueContributorContributor
.... valueDataRequirementDataRequirement
.... valueExpressionExpression
.... valueParameterDefinitionParameterDefinition
.... valueRelatedArtifactRelatedArtifact
.... valueTriggerDefinitionTriggerDefinition
.... valueUsageContextUsageContext
.... valueDosageDosage

doco Documentation for this format

XML Template

<!-- Relative Date Criteria -->doco

<extension xmlns="http://hl7.org/fhir"
     url="http://hl7.org/fhir/StructureDefinition/relative-date" >
 <-- extension sliced by value:url  in the specified orderOpen-->
 <extension url="event"> ?? 1..1 Extension  <!-- ?? 1..1 Event that the date is relative to -->
  <value[x]><!-- ?? 1..1 Reference(Resource)|CodeableConcept 
      Value of extension --></value[x]>
 </extension>
 <extension url="relationship"> ?? 1..1 Extension  <!-- ?? 1..1 before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end -->
  <valueCode value="[code]"/><!-- ?? 1..1 Value of extension -->
 </extension>
 <extension url="offset"> ?? 1..1 Extension  <!-- ?? 1..1 Duration after the event -->
  <valueDuration><!-- ?? 1..1 Duration Value of extension --></valueDuration>
 </extension>
</extension>

JSON Template

{ // Relative Date Criteria
    "extension" : [ //  sliced by value:url  in the specified order, Open 
      { // Event that the date is relative to // C? R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "event", // R! 
// value[x]: Value of extension. One of these 2:
        "valueReference" : { Reference(Resource) } // C? R! Value of extension
        "valueCodeableConcept" : { CodeableConcept }, // C? R! Value of extension
      },
      { // before-start | before | before-end | concurrent-with-start | concurrent | concurrent-with-end | after-start | after | after-end // C? R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "relationship", // R! 
        "valueCode" : "<code>" // C? R! Value of extension
      },
      { // Duration after the event // C? R! 
        // from Element: extension
        "extension" : [ //  sliced by value:url  in the specified order, Open ]
        "url" : "offset", // R! 
        "valueDuration" : { Duration } // C? R! Value of extension
      }
    ],
    "url" : "http://hl7.org/fhir/StructureDefinition/relative-date", // R! 
// value[x]: Value of extension. One of these 51:
  }

 

Constraints

  • ele-1: All FHIR elements must have a @value or children unless an empty Parameters resource (xpath: @value|f:*|h:div|self::f:Parameters)
  • ext-1: Must have either extensions or value[x], not both (xpath: exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')]))
  • ele-1: On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: @value|f:*|h:div)
  • ext-1: On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]))
  • ele-1: On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: @value|f:*|h:div)
  • ext-1: On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]))
  • ele-1: On Extension.extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension.extension: @value|f:*|h:div)
  • ext-1: On Extension.extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]))
  • ele-1: On Extension.extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.extension.value[x]: @value|f:*|h:div)
  • ele-1: On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: @value|f:*|h:div)
  • ext-1: On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]))
  • ele-1: On Extension.extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension.extension: @value|f:*|h:div)
  • ext-1: On Extension.extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]))
  • ele-1: On Extension.extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.extension.value[x]: @value|f:*|h:div)
  • ele-1: On Extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension: @value|f:*|h:div)
  • ext-1: On Extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]))
  • ele-1: On Extension.extension.extension: All FHIR elements must have a @value or children (xpath on Extension.extension.extension: @value|f:*|h:div)
  • ext-1: On Extension.extension.extension: Must have either extensions or value[x], not both (xpath on Extension.extension.extension: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")]))
  • ele-1: On Extension.extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.extension.value[x]: @value|f:*|h:div)
  • ele-1: On Extension.value[x]: All FHIR elements must have a @value or children (xpath on Extension.value[x]: @value|f:*|h:div)