ext-R4B-Library.dataRequirement
type: StructureDefinition
node role: treeRoot
id:
  v: ext-R4B-Library.dataRequirement
text:
  status:
    v: extensions
  div:
    v: Generated Narrative: StructureDefinition ext-R4B-Library.dataRequirement Name Flags Card. Type Description & Constraints<img src="[binary]" alt="doco" style="background-color: inherit"/> Extension 0..* Extension R4B: dataRequirement additional types #xD; Slices for extension 0..* Extension Extension Slice: Unordered, Open by value:url #xD; extension:_datatype 1..1 Extension DataType slice for a FHIR R4B `DataRequirement` value #xD; url 1..1 uri "http://hl7.org/fhir/StructureDefinition/_datatype" #xD; value[x] 1..1 string Value of extension Fixed Value: DataRequirement #xD; extension:type 1..1 Extension R4B: type additional codes #xD; url 1..1 uri "type" #xD; value[x] 1..1 code The type of the required data Binding: R4BAllTypesForR3 (0.1.0) (required) #xD; extension:profile 0..* Extension R4B: profile #xD; url 1..1 uri "profile" #xD; value[x] 0..1 uri The profile of the required data #xD; extension:subject 0..1 Extension R4B: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new) #xD; url 1..1 uri "subject" #xD; value[x] 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device Binding: R4BSubjectTypeForR3 (0.1.0) (extensible) #xD; valueCodeableConcept CodeableConcept #xD; valueReference Reference(Cross-version Profile for R4B.Group for use in FHIR STU3(0.1.0) | Group) #xD; extension:mustSupport 0..* Extension R4B: Indicates specific structure elements that are referenced by the knowledge module #xD; url 1..1 uri "mustSupport" #xD; <a href="StructureDefinition-ext-R4B-Library.dataRequirement-definitions.html#Extension.extension:mustSupport.value[x]" title="Indicates that specific elements of the type are referenced by the knowledge module and must be supported by the consumer in order to obtain an effective evaluation. This does not mean that a value is required for this element, only that the consuming system must understand the element and be able to provide values for it if they are available. #xA;#xA;The value of must…
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-wg
    l: structuredefinition-wg
  value: Code
    v: fhir
extension:
  extension:
    url:
      v: packageId
      l: packageId
    value: Id
      v: hl7.fhir.uv.xver-r4b.r3
  extension:
    url:
      v: version
      l: version
    value: String
      v: 0.1.0
  extension:
    url:
      v: uri
      l: uri
    value: Uri
      v: http://hl7.org/fhir/uv/xver/ImplementationGuide/hl7.fhir.uv.xver-r4b.r3
      l: hl7.fhir.uv.xver-r4b.r3
  url:
    v: http://hl7.org/fhir/StructureDefinition/package-source
    l: package-source
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm
    l: structuredefinition-fmm
  value: Integer
    v: 0
    extension:
      url:
        v: http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom
        l: structuredefinition-conformance-derivedFrom
      value: Uri
        v: http://hl7.org/fhir/uv/xver/ImplementationGuide/hl7.fhir.uv.xver-r4b.r3
        l: hl7.fhir.uv.xver-r4b.r3
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status
    l: structuredefinition-standards-status
  value: Code
    v: trial-use
    extension:
      url:
        v: http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom
        l: structuredefinition-conformance-derivedFrom
      value: Uri
        v: http://hl7.org/fhir/uv/xver/ImplementationGuide/hl7.fhir.uv.xver-r4b.r3
        l: hl7.fhir.uv.xver-r4b.r3
url:
  v: http://hl7.org/fhir/4.3/StructureDefinition/extension-Library.dataRequirement
  l: extension-Library.dataRequirement
version:
  v: 0.1.0
name:
  v: ExtensionLibrary_DataRequirement
title:
  v: R4B: dataRequirement additional types
status:
  v: active
experimental:
  v: false
date:
  v: 2026-03-17T21:02:03.8104715+00:00
publisher:
  v: FHIR Infrastructure
contact:
  name:
    v: FHIR Infrastructure
  telecom:
    system:
      v: url
    value:
      v: http://www.hl7.org/Special/committees/fiwg
description:
  v: R4B: `Library.dataRequirement` additional types (DataRequirement) additional types from child elements (codeFilter, code, path, searchParam, valueSet, dateFilter, value[x], limit, mustSupport, profile, sort, direction, subject[x], type)
jurisdiction:
  coding:
    system:
      v: http://unstats.un.org/unsd/methods/m49/m49.htm
      l: m49.htm
    code:
      v: 001
    display:
      v: World
purpose:
  v: This extension is part of the cross-version definitions generated to enable use of the element `Library.dataRequirement` as defined in FHIR R4B in FHIR STU3. The source element is defined as: `Library.dataRequirement` 0..* `DataRequirement` Across FHIR versions, the element set has been mapped as: * R4B: `Library.dataRequirement` 0..* `DataRequirement` * R4: `Library.dataRequirement` 0..* `DataRequirement` * STU3: `Library.dataRequirement` 0..* `DataRequirement` Following are the generation technical comments: Element `Library.dataRequirement` is mapped to FHIR STU3 element `Library.dataRequirement` as `SourceIsBroaderThanTarget`. The mappings for `Library.dataRequirement` do not cover the following types: DataRequirement. The mappings for `Library.dataRequirement` do not cover the following types based on type expansion: code, codeFilter, dateFilter, direction, limit, mustSupport, path, profile, searchParam, sort, subject[x], type, value[x], valueSet.
fhir version:
  v: 3.0.2
mapping:
  identity:
    v: rim
  uri:
    v: http://hl7.org/v3
    l: v3
  name:
    v: RIM Mapping
kind:
  v: complex-type
abstract:
  v: false
context type:
  v: resource
context:
  v: Library.dataRequirement
type:
  v: Extension
base definition:
  v: http://hl7.org/fhir/StructureDefinition/Extension
  l: Extension
derivation:
  v: constraint
snapshot:
  element:
    id:
      v: Extension
    path:
      v: Extension
    short:
      v: R4B: dataRequirement additional types
    definition:
      v: R4B: `Library.dataRequirement` additional types (DataRequirement) additional types from child elements (codeFilter, code, path, searchParam, valueSet, dateFilter, value[x], limit, mustSupport, profile, sort, direction, subject[x], type)
    comment:
      v: Element `Library.dataRequirement` is mapped to FHIR STU3 element `Library.dataRequirement` as `SourceIsBroaderThanTarget`. The mappings for `Library.dataRequirement` do not cover the following types: DataRequirement. The mappings for `Library.dataRequirement` do not cover the following types based on type expansion: code, codeFilter, dateFilter, direction, limit, mustSupport, path, profile, searchParam, sort, subject[x], type, value[x], valueSet.
    min:
      v: 0
    max:
      v: *
    base:
      path:
        v: Extension
      min:
        v: 0
      max:
        v: *
    condition:
      v: ele-1
    constraint:
      key:
        v: ele-1
      severity:
        v: error
      human:
        v: All FHIR elements must have a @value or children
      expression:
        v: hasValue() | (children().count() > id.count())
      xpath:
        v: @value|f:*|h:div
      source:
        v: http://hl7.org/fhir/StructureDefinition/Element
        l: Element
    constraint:
      key:
        v: ext-1
      severity:
        v: error
      human:
        v: Must have either extensions or value[x], not both
      expression:
        v: extension.exists() != value.exists()
      xpath:
        v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])
      source:
        v: http://hl7.org/fhir/StructureDefinition/Extension
        l: Extension
    is modifier:
      v: false
  element:
    id:
      v: Extension.id
    path:
      v: Extension.id
    representation:
      v: xmlAttr
    short:
      v: xml:id (or equivalent in JSON)
    definition:
      v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
    min:
      v: 0
    max:
      v: 1
    base:
      path:
        v: Element.id
      min:
        v: 0
      max:
        v: 1

code:
  v: string
  l: string

identity:
  v: rim
map:
  v: n/a

id:
  v: Extension.extension
path:
  v: Extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  ordered:
    v: false
  rules:
    v: open
short:
  v: Extension
definition:
  v: An Extension
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:_datatype
path:
  v: Extension.extension
slice name:
  v: _datatype
short:
  v: DataType slice for a FHIR R4B `DataRequirement` value
definition:
  v: Slice to indicate the presence of a R4B `DataRequirement` in FHIR STU3
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:_datatype.id
path:
  v: Extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:_datatype.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:_datatype.url
path:
  v: Extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: http://hl7.org/fhir/StructureDefinition/_datatype
  l: datatype
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:_datatype.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: Value of extension
definition:
  v: Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).
comment:
  v: Must be: DataRequirement
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
fixed: String
  v: DataRequirement
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:type
path:
  v: Extension.extension
slice name:
  v: type
short:
  v: R4B: type additional codes
definition:
  v: R4B: `DataRequirement.type` additional codes
comment:
  v: Element `DataRequirement.type` is mapped to FHIR STU3 element `DataRequirement.type` as `RelatedTo`. The mappings for `DataRequirement.type` do not allow expression of the necessary codes, per the bindings on the source and target.
requirements:
  v: Element `DataRequirement.type` is mapped to FHIR STU3 element `DataRequirement.type` as `RelatedTo`. The mappings for `DataRequirement.type` do not allow expression of the necessary codes, per the bindings on the source and target.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:type.id
path:
  v: Extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:type.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:type.url
path:
  v: Extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: type
  l: type
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:type.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: The type of the required data
definition:
  v: The type of the required data, specified as the type name of a resource. For profiles, this value is set to the type of the base resource of the profile.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
binding:
  strength:
    v: required
  value set: Uri
    v: http://hl7.org/fhir/uv/xver/ValueSet/R4B-all-types-for-R3|0.1.0
    l: http://hl7.org/fhir/uv/xver/ValueSet/R4B-all-types-for-R3
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:profile
path:
  v: Extension.extension
slice name:
  v: profile
short:
  v: R4B: profile
definition:
  v: R4B: `DataRequirement.profile`
comment:
  v: Element `DataRequirement.profile` is mapped to FHIR STU3 element `DataRequirement.profile` as `Equivalent`.
requirements:
  v: Element `DataRequirement.profile` is mapped to FHIR STU3 element `DataRequirement.profile` as `Equivalent`.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:profile.id
path:
  v: Extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:profile.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:profile.url
path:
  v: Extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: profile
  l: profile
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:profile.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: The profile of the required data
definition:
  v: The profile of the required data, specified as the uri of the profile definition.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:subject
path:
  v: Extension.extension
slice name:
  v: subject
short:
  v: R4B: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)
definition:
  v: R4B: `DataRequirement.subject[x]` (new:CodeableConcept, Reference(Group))
comment:
  v: Element `DataRequirement.subject[x]` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.subject[x]` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element). The subject of a data requirement is critical, as the data being specified is determined with respect to a particular subject. This corresponds roughly to the notion of a Compartment in that it limits what data is available based on its relationship to the subject. In CQL, this corresponds to the context declaration.
requirements:
  v: Element `DataRequirement.subject[x]` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.subject[x]` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:subject.id
path:
  v: Extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:subject.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:subject.url
path:
  v: Extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: subject
  l: subject
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:subject.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
definition:
  v: The intended subjects of the data requirement. If this element is not provided, a Patient subject is assumed.
comment:
  v: The subject of a data requirement is critical, as the data being specified is determined with respect to a particular subject. This corresponds roughly to the notion of a Compartment in that it limits what data is available based on its relationship to the subject. In CQL, this corresponds to the context declaration.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
type:
  code:
    v: Reference
    l: Reference
  target profile:
    v: http://hl7.org/fhir/4.3/StructureDefinition/profile-Group|0.1.0
    l: http://hl7.org/fhir/4.3/StructureDefinition/profile-Group
type:
  code:
    v: Reference
    l: Reference
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/Group
    l: Group
binding:
  strength:
    v: extensible
  value set: Uri
    v: http://hl7.org/fhir/uv/xver/ValueSet/R4B-subject-type-for-R3|0.1.0
    l: http://hl7.org/fhir/uv/xver/ValueSet/R4B-subject-type-for-R3
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:mustSupport
path:
  v: Extension.extension
slice name:
  v: mustSupport
short:
  v: R4B: Indicates specific structure elements that are referenced by the knowledge module
definition:
  v: R4B: `DataRequirement.mustSupport`
comment:
  v: Element `DataRequirement.mustSupport` is mapped to FHIR STU3 element `DataRequirement.mustSupport` as `Equivalent`.
requirements:
  v: Element `DataRequirement.mustSupport` is mapped to FHIR STU3 element `DataRequirement.mustSupport` as `Equivalent`.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:mustSupport.id
path:
  v: Extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:mustSupport.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:mustSupport.url
path:
  v: Extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: mustSupport
  l: mustSupport
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:mustSupport.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: Indicates specific structure elements that are referenced by the knowledge module
definition:
  v: Indicates that specific elements of the type are referenced by the knowledge module and must be supported by the consumer in order to obtain an effective evaluation. This does not mean that a value is required for this element, only that the consuming system must understand the element and be able to provide values for it if they are available. The value of mustSupport SHALL be a FHIRPath resolveable on the type of the DataRequirement. The path SHALL consist only of identifiers, constant indexers, and .resolve() (see the [Simple FHIRPath Profile](https://hl7.org/fhir/fhirpat.html#simple) for full details).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter
path:
  v: Extension.extension
slice name:
  v: codeFilter
short:
  v: R4B: codeFilter
definition:
  v: R4B: `DataRequirement.codeFilter`
comment:
  v: Element `DataRequirement.codeFilter` is mapped to FHIR STU3 element `DataRequirement.codeFilter` as `Equivalent`.
requirements:
  v: Element `DataRequirement.codeFilter` is mapped to FHIR STU3 element `DataRequirement.codeFilter` as `Equivalent`.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:codeFilter.id
path:
  v: Extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:codeFilter.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  ordered:
    v: false
  rules:
    v: open
short:
  v: Extension
definition:
  v: An Extension
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:codeFilter.extension:path
path:
  v: Extension.extension.extension
slice name:
  v: path
short:
  v: R4B: A code-valued attribute to filter on
definition:
  v: R4B: `DataRequirement.codeFilter.path`
comment:
  v: Element `DataRequirement.codeFilter.path` is mapped to FHIR STU3 element `DataRequirement.codeFilter.path` as `Equivalent`. The path attribute contains a [Simple FHIRPath Subset](https://hl7.org/fhir/fhirpat.html#simple) that allows path traversal, but not calculation.
requirements:
  v: Element `DataRequirement.codeFilter.path` is mapped to FHIR STU3 element `DataRequirement.codeFilter.path` as `Equivalent`.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:codeFilter.extension:path.id
path:
  v: Extension.extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:codeFilter.extension:path.extension
path:
  v: Extension.extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:codeFilter.extension:path.url
path:
  v: Extension.extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: path
  l: path
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter.extension:path.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: A code-valued attribute to filter on
definition:
  v: The code-valued attribute of the filter. The specified path SHALL be a FHIRPath resolveable on the specified type of the DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](https://hl7.org/fhir/fhirpat.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type code, Coding, or CodeableConcept.
comment:
  v: The path attribute contains a [Simple FHIRPath Subset](https://hl7.org/fhir/fhirpat.html#simple) that allows path traversal, but not calculation.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter.extension:searchParam
path:
  v: Extension.extension.extension
slice name:
  v: searchParam
short:
  v: R4B: A coded (token) parameter to search on (new)
definition:
  v: R4B: `DataRequirement.codeFilter.searchParam` (new:string)
comment:
  v: Element `DataRequirement.codeFilter.searchParam` has a context of DataRequirement.codeFilter based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.codeFilter.searchParam` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
requirements:
  v: Element `DataRequirement.codeFilter.searchParam` has a context of DataRequirement.codeFilter based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.codeFilter.searchParam` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:codeFilter.extension:searchParam.id
path:
  v: Extension.extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:codeFilter.extension:searchParam.extension
path:
  v: Extension.extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:codeFilter.extension:searchParam.url
path:
  v: Extension.extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: searchParam
  l: searchParam
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter.extension:searchParam.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: A coded (token) parameter to search on
definition:
  v: A token parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type code, Coding, or CodeableConcept.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter.extension:valueSet
path:
  v: Extension.extension.extension
slice name:
  v: valueSet
short:
  v: R4B: valueSet
definition:
  v: R4B: `DataRequirement.codeFilter.valueSet`
comment:
  v: Element `DataRequirement.codeFilter.valueSet` is mapped to FHIR STU3 element `DataRequirement.codeFilter.valueSet[x]` as `SourceIsNarrowerThanTarget`. The target context `DataRequirement.codeFilter.valueSet[x]` is a choice-type element and cannot directly hold extensions. The context is moved up to parent element `DataRequirement.codeFilter`.
requirements:
  v: Element `DataRequirement.codeFilter.valueSet` is mapped to FHIR STU3 element `DataRequirement.codeFilter.valueSet[x]` as `SourceIsNarrowerThanTarget`. The target context `DataRequirement.codeFilter.valueSet[x]` is a choice-type element and cannot directly hold extensions. The context is moved up to parent element `DataRequirement.codeFilter`.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:codeFilter.extension:valueSet.id
path:
  v: Extension.extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:codeFilter.extension:valueSet.extension
path:
  v: Extension.extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:codeFilter.extension:valueSet.url
path:
  v: Extension.extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: valueSet
  l: valueSet
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter.extension:valueSet.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: Valueset for the filter
definition:
  v: The valueset for the code filter. The valueSet and code elements are additive. If valueSet is specified, the filter will return only those data items for which the value of the code-valued element specified in the path is a member of the specified valueset.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter.extension:code
path:
  v: Extension.extension.extension
slice name:
  v: code
short:
  v: R4B: What code is expected
definition:
  v: R4B: `DataRequirement.codeFilter.code`
comment:
  v: Element `DataRequirement.codeFilter.code` is mapped to FHIR STU3 element `DataRequirement.codeFilter.valueCoding` as `Equivalent`.
requirements:
  v: Element `DataRequirement.codeFilter.code` is mapped to FHIR STU3 element `DataRequirement.codeFilter.valueCoding` as `Equivalent`.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:codeFilter.extension:code.id
path:
  v: Extension.extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:codeFilter.extension:code.extension
path:
  v: Extension.extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:codeFilter.extension:code.url
path:
  v: Extension.extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: code
  l: code
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter.extension:code.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: What code is expected
definition:
  v: The codes for the code filter. If values are given, the filter will return only those data items for which the code-valued attribute specified by the path has a value that is one of the specified codes. If codes are specified in addition to a value set, the filter returns items matching a code in the value set or one of the specified codes.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter.url
path:
  v: Extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: codeFilter
  l: codeFilter
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:codeFilter.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: Value of extension
definition:
  v: Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).
min:
  v: 0
max:
  v: 0
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: base64Binary
    l: base64Binary
type:
  code:
    v: boolean
    l: boolean
type:
  code:
    v: code
    l: code
type:
  code:
    v: date
    l: date
type:
  code:
    v: dateTime
    l: dateTime
type:
  code:
    v: decimal
    l: decimal
type:
  code:
    v: id
    l: id
type:
  code:
    v: instant
    l: instant
type:
  code:
    v: integer
    l: integer
type:
  code:
    v: markdown
    l: markdown
type:
  code:
    v: oid
    l: oid
type:
  code:
    v: positiveInt
    l: positiveInt
type:
  code:
    v: string
    l: string
type:
  code:
    v: time
    l: time
type:
  code:
    v: unsignedInt
    l: unsignedInt
type:
  code:
    v: uri
    l: uri
type:
  code:
    v: Address
    l: Address
type:
  code:
    v: Age
    l: Age
type:
  code:
    v: Annotation
    l: Annotation
type:
  code:
    v: Attachment
    l: Attachment
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
type:
  code:
    v: Coding
    l: Coding
type:
  code:
    v: ContactPoint
    l: ContactPoint
type:
  code:
    v: Count
    l: Count
type:
  code:
    v: Distance
    l: Distance
type:
  code:
    v: Duration
    l: Duration
type:
  code:
    v: HumanName
    l: HumanName
type:
  code:
    v: Identifier
    l: Identifier
type:
  code:
    v: Money
    l: Money
type:
  code:
    v: Period
    l: Period
type:
  code:
    v: Quantity
    l: Quantity
type:
  code:
    v: Range
    l: Range
type:
  code:
    v: Ratio
    l: Ratio
type:
  code:
    v: Reference
    l: Reference
type:
  code:
    v: SampledData
    l: SampledData
type:
  code:
    v: Signature
    l: Signature
type:
  code:
    v: Timing
    l: Timing
type:
  code:
    v: Meta
    l: Meta
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:dateFilter
path:
  v: Extension.extension
slice name:
  v: dateFilter
short:
  v: R4B: dateFilter
definition:
  v: R4B: `DataRequirement.dateFilter`
comment:
  v: Element `DataRequirement.dateFilter` is mapped to FHIR STU3 element `DataRequirement.dateFilter` as `Equivalent`.
requirements:
  v: Element `DataRequirement.dateFilter` is mapped to FHIR STU3 element `DataRequirement.dateFilter` as `Equivalent`.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:dateFilter.id
path:
  v: Extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:dateFilter.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  ordered:
    v: false
  rules:
    v: open
short:
  v: Extension
definition:
  v: An Extension
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:dateFilter.extension:path
path:
  v: Extension.extension.extension
slice name:
  v: path
short:
  v: R4B: A date-valued attribute to filter on
definition:
  v: R4B: `DataRequirement.dateFilter.path`
comment:
  v: Element `DataRequirement.dateFilter.path` is mapped to FHIR STU3 element `DataRequirement.dateFilter.path` as `Equivalent`. The path attribute contains a [Simple FHIR Subset](https://hl7.org/fhir/fhirpat.html#simple) that allows path traversal, but not calculation.
requirements:
  v: Element `DataRequirement.dateFilter.path` is mapped to FHIR STU3 element `DataRequirement.dateFilter.path` as `Equivalent`.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:dateFilter.extension:path.id
path:
  v: Extension.extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:dateFilter.extension:path.extension
path:
  v: Extension.extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:dateFilter.extension:path.url
path:
  v: Extension.extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: path
  l: path
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:dateFilter.extension:path.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: A date-valued attribute to filter on
definition:
  v: The date-valued attribute of the filter. The specified path SHALL be a FHIRPath resolveable on the specified type of the DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](https://hl7.org/fhir/fhirpat.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type date, dateTime, Period, Schedule, or Timing.
comment:
  v: The path attribute contains a [Simple FHIR Subset](https://hl7.org/fhir/fhirpat.html#simple) that allows path traversal, but not calculation.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:dateFilter.extension:searchParam
path:
  v: Extension.extension.extension
slice name:
  v: searchParam
short:
  v: R4B: A date valued parameter to search on (new)
definition:
  v: R4B: `DataRequirement.dateFilter.searchParam` (new:string)
comment:
  v: Element `DataRequirement.dateFilter.searchParam` has a context of DataRequirement.dateFilter based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.dateFilter.searchParam` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
requirements:
  v: Element `DataRequirement.dateFilter.searchParam` has a context of DataRequirement.dateFilter based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.dateFilter.searchParam` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:dateFilter.extension:searchParam.id
path:
  v: Extension.extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:dateFilter.extension:searchParam.extension
path:
  v: Extension.extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:dateFilter.extension:searchParam.url
path:
  v: Extension.extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: searchParam
  l: searchParam
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:dateFilter.extension:searchParam.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: A date valued parameter to search on
definition:
  v: A date parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type date, dateTime, Period, Schedule, or Timing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:dateFilter.extension:value
path:
  v: Extension.extension.extension
slice name:
  v: value
short:
  v: R4B: value additional types
definition:
  v: R4B: `DataRequirement.dateFilter.value[x]` additional types (Period)
comment:
  v: Element `DataRequirement.dateFilter.value[x]` is mapped to FHIR STU3 element `DataRequirement.dateFilter.value[x]` as `SourceIsBroaderThanTarget`. The mappings for `DataRequirement.dateFilter.value[x]` do not cover the following types: Period. The target context `DataRequirement.dateFilter.value[x]` is a choice-type element and cannot directly hold extensions. The context is moved up to parent element `DataRequirement.dateFilter`.
requirements:
  v: Element `DataRequirement.dateFilter.value[x]` is mapped to FHIR STU3 element `DataRequirement.dateFilter.value[x]` as `SourceIsBroaderThanTarget`. The mappings for `DataRequirement.dateFilter.value[x]` do not cover the following types: Period. The target context `DataRequirement.dateFilter.value[x]` is a choice-type element and cannot directly hold extensions. The context is moved up to parent element `DataRequirement.dateFilter`.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:dateFilter.extension:value.id
path:
  v: Extension.extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:dateFilter.extension:value.extension
path:
  v: Extension.extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:dateFilter.extension:value.url
path:
  v: Extension.extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: value
  l: value
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:dateFilter.extension:value.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: The value of the filter, as a Period, DateTime, or Duration value
definition:
  v: The value of the filter. If period is specified, the filter will return only those data items that fall within the bounds determined by the Period, inclusive of the period boundaries. If dateTime is specified, the filter will return only those data items that are equal to the specified dateTime. If a Duration is specified, the filter will return only those data items that fall within Duration before now.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Period
    l: Period
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:dateFilter.url
path:
  v: Extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: dateFilter
  l: dateFilter
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:dateFilter.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: Value of extension
definition:
  v: Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).
min:
  v: 0
max:
  v: 0
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: base64Binary
    l: base64Binary
type:
  code:
    v: boolean
    l: boolean
type:
  code:
    v: code
    l: code
type:
  code:
    v: date
    l: date
type:
  code:
    v: dateTime
    l: dateTime
type:
  code:
    v: decimal
    l: decimal
type:
  code:
    v: id
    l: id
type:
  code:
    v: instant
    l: instant
type:
  code:
    v: integer
    l: integer
type:
  code:
    v: markdown
    l: markdown
type:
  code:
    v: oid
    l: oid
type:
  code:
    v: positiveInt
    l: positiveInt
type:
  code:
    v: string
    l: string
type:
  code:
    v: time
    l: time
type:
  code:
    v: unsignedInt
    l: unsignedInt
type:
  code:
    v: uri
    l: uri
type:
  code:
    v: Address
    l: Address
type:
  code:
    v: Age
    l: Age
type:
  code:
    v: Annotation
    l: Annotation
type:
  code:
    v: Attachment
    l: Attachment
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
type:
  code:
    v: Coding
    l: Coding
type:
  code:
    v: ContactPoint
    l: ContactPoint
type:
  code:
    v: Count
    l: Count
type:
  code:
    v: Distance
    l: Distance
type:
  code:
    v: Duration
    l: Duration
type:
  code:
    v: HumanName
    l: HumanName
type:
  code:
    v: Identifier
    l: Identifier
type:
  code:
    v: Money
    l: Money
type:
  code:
    v: Period
    l: Period
type:
  code:
    v: Quantity
    l: Quantity
type:
  code:
    v: Range
    l: Range
type:
  code:
    v: Ratio
    l: Ratio
type:
  code:
    v: Reference
    l: Reference
type:
  code:
    v: SampledData
    l: SampledData
type:
  code:
    v: Signature
    l: Signature
type:
  code:
    v: Timing
    l: Timing
type:
  code:
    v: Meta
    l: Meta
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:limit
path:
  v: Extension.extension
slice name:
  v: limit
short:
  v: R4B: Number of results (new)
definition:
  v: R4B: `DataRequirement.limit` (new:positiveInt)
comment:
  v: Element `DataRequirement.limit` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.limit` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element). This element can be used in combination with the sort element to specify quota requirements such as "the most recent 5" or "the highest 5".
requirements:
  v: Enables the requirement "most recent 5 results" to be expressed. Element `DataRequirement.limit` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.limit` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:limit.id
path:
  v: Extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:limit.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:limit.url
path:
  v: Extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: limit
  l: limit
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:limit.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: Number of results
definition:
  v: Specifies a maximum number of results that are required (uses the _count search parameter).
comment:
  v: This element can be used in combination with the sort element to specify quota requirements such as "the most recent 5" or "the highest 5".
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: positiveInt
    l: positiveInt
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:sort
path:
  v: Extension.extension
slice name:
  v: sort
short:
  v: R4B: Order of the results (new)
definition:
  v: R4B: `DataRequirement.sort` (new:Element)
comment:
  v: Element `DataRequirement.sort` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element). This element can be used in combination with the sort element to specify quota requirements such as "the most recent 5" or "the highest 5". When multiple sorts are specified, they are applied in the order they appear in the resource.
requirements:
  v: Enables the requirement "most recent 5 results" to be expressed. Element `DataRequirement.sort` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:sort.id
path:
  v: Extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:sort.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  ordered:
    v: false
  rules:
    v: open
short:
  v: Extension
definition:
  v: An Extension
min:
  v: 2
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:sort.extension:path
path:
  v: Extension.extension.extension
slice name:
  v: path
short:
  v: R4B: The name of the attribute to perform the sort (new)
definition:
  v: R4B: `DataRequirement.sort.path` (new:string)
comment:
  v: Element `DataRequirement.sort.path` is part of an existing definition because parent element `DataRequirement.sort` requires a cross-version extension. Element `DataRequirement.sort.path` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort.path` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
requirements:
  v: Element `DataRequirement.sort.path` is part of an existing definition because parent element `DataRequirement.sort` requires a cross-version extension. Element `DataRequirement.sort.path` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort.path` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:sort.extension:path.id
path:
  v: Extension.extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:sort.extension:path.extension
path:
  v: Extension.extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:sort.extension:path.url
path:
  v: Extension.extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: path
  l: path
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:sort.extension:path.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: The name of the attribute to perform the sort
definition:
  v: The attribute of the sort. The specified path must be resolvable from the type of the required data. 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:sort.extension:direction
path:
  v: Extension.extension.extension
slice name:
  v: direction
short:
  v: R4B: ascending | descending (new)
definition:
  v: R4B: `DataRequirement.sort.direction` (new:code)
comment:
  v: Element `DataRequirement.sort.direction` is part of an existing definition because parent element `DataRequirement.sort` requires a cross-version extension. Element `DataRequirement.sort.direction` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort.direction` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
requirements:
  v: Element `DataRequirement.sort.direction` is part of an existing definition because parent element `DataRequirement.sort` requires a cross-version extension. Element `DataRequirement.sort.direction` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort.direction` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension

id:
  v: Extension.extension:sort.extension:direction.id
path:
  v: Extension.extension.extension.id
representation:
  v: xmlAttr
short:
  v: xml:id (or equivalent in JSON)
definition:
  v: unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:sort.extension:direction.extension
path:
  v: Extension.extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional Content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. In order 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 is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: 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.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: Extension.extension:sort.extension:direction.url
path:
  v: Extension.extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: direction
  l: direction
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:sort.extension:direction.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: ascending | descending
definition:
  v: The direction of the sort, ascending or descending.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
binding:
  strength:
    v: required
  value set: Uri
    v: http://hl7.org/fhir/uv/xver/ValueSet/R4B-sort-direction-for-R3|0.1.0
    l: http://hl7.org/fhir/uv/xver/ValueSet/R4B-sort-direction-for-R3
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:sort.url
path:
  v: Extension.extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: sort
  l: sort
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.extension:sort.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: Value of extension
definition:
  v: Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).
min:
  v: 0
max:
  v: 0
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: base64Binary
    l: base64Binary
type:
  code:
    v: boolean
    l: boolean
type:
  code:
    v: code
    l: code
type:
  code:
    v: date
    l: date
type:
  code:
    v: dateTime
    l: dateTime
type:
  code:
    v: decimal
    l: decimal
type:
  code:
    v: id
    l: id
type:
  code:
    v: instant
    l: instant
type:
  code:
    v: integer
    l: integer
type:
  code:
    v: markdown
    l: markdown
type:
  code:
    v: oid
    l: oid
type:
  code:
    v: positiveInt
    l: positiveInt
type:
  code:
    v: string
    l: string
type:
  code:
    v: time
    l: time
type:
  code:
    v: unsignedInt
    l: unsignedInt
type:
  code:
    v: uri
    l: uri
type:
  code:
    v: Address
    l: Address
type:
  code:
    v: Age
    l: Age
type:
  code:
    v: Annotation
    l: Annotation
type:
  code:
    v: Attachment
    l: Attachment
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
type:
  code:
    v: Coding
    l: Coding
type:
  code:
    v: ContactPoint
    l: ContactPoint
type:
  code:
    v: Count
    l: Count
type:
  code:
    v: Distance
    l: Distance
type:
  code:
    v: Duration
    l: Duration
type:
  code:
    v: HumanName
    l: HumanName
type:
  code:
    v: Identifier
    l: Identifier
type:
  code:
    v: Money
    l: Money
type:
  code:
    v: Period
    l: Period
type:
  code:
    v: Quantity
    l: Quantity
type:
  code:
    v: Range
    l: Range
type:
  code:
    v: Ratio
    l: Ratio
type:
  code:
    v: Reference
    l: Reference
type:
  code:
    v: SampledData
    l: SampledData
type:
  code:
    v: Signature
    l: Signature
type:
  code:
    v: Timing
    l: Timing
type:
  code:
    v: Meta
    l: Meta
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.url
path:
  v: Extension.url
representation:
  v: xmlAttr
short:
  v: identifies the meaning of the extension
definition:
  v: Source of the definition for the extension code - a logical name or a URL.
comment:
  v: 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: uri
    l: uri
fixed: Uri
  v: http://hl7.org/fhir/4.3/StructureDefinition/extension-Library.dataRequirement
  l: extension-Library.dataRequirement
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: Extension.value[x]
path:
  v: Extension.value[x]
short:
  v: Value of extension
definition:
  v: Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).
min:
  v: 0
max:
  v: 0
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: base64Binary
    l: base64Binary
type:
  code:
    v: boolean
    l: boolean
type:
  code:
    v: code
    l: code
type:
  code:
    v: date
    l: date
type:
  code:
    v: dateTime
    l: dateTime
type:
  code:
    v: decimal
    l: decimal
type:
  code:
    v: id
    l: id
type:
  code:
    v: instant
    l: instant
type:
  code:
    v: integer
    l: integer
type:
  code:
    v: markdown
    l: markdown
type:
  code:
    v: oid
    l: oid
type:
  code:
    v: positiveInt
    l: positiveInt
type:
  code:
    v: string
    l: string
type:
  code:
    v: time
    l: time
type:
  code:
    v: unsignedInt
    l: unsignedInt
type:
  code:
    v: uri
    l: uri
type:
  code:
    v: Address
    l: Address
type:
  code:
    v: Age
    l: Age
type:
  code:
    v: Annotation
    l: Annotation
type:
  code:
    v: Attachment
    l: Attachment
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
type:
  code:
    v: Coding
    l: Coding
type:
  code:
    v: ContactPoint
    l: ContactPoint
type:
  code:
    v: Count
    l: Count
type:
  code:
    v: Distance
    l: Distance
type:
  code:
    v: Duration
    l: Duration
type:
  code:
    v: HumanName
    l: HumanName
type:
  code:
    v: Identifier
    l: Identifier
type:
  code:
    v: Money
    l: Money
type:
  code:
    v: Period
    l: Period
type:
  code:
    v: Quantity
    l: Quantity
type:
  code:
    v: Range
    l: Range
type:
  code:
    v: Ratio
    l: Ratio
type:
  code:
    v: Reference
    l: Reference
type:
  code:
    v: SampledData
    l: SampledData
type:
  code:
    v: Signature
    l: Signature
type:
  code:
    v: Timing
    l: Timing
type:
  code:
    v: Meta
    l: Meta
mapping:
  identity:
    v: rim
  map:
    v: N/A

element:
  id:
    v: Extension
  path:
    v: Extension
  short:
    v: R4B: dataRequirement additional types
  definition:
    v: R4B: `Library.dataRequirement` additional types (DataRequirement) additional types from child elements (codeFilter, code, path, searchParam, valueSet, dateFilter, value[x], limit, mustSupport, profile, sort, direction, subject[x], type)
  comment:
    v: Element `Library.dataRequirement` is mapped to FHIR STU3 element `Library.dataRequirement` as `SourceIsBroaderThanTarget`. The mappings for `Library.dataRequirement` do not cover the following types: DataRequirement. The mappings for `Library.dataRequirement` do not cover the following types based on type expansion: code, codeFilter, dateFilter, direction, limit, mustSupport, path, profile, searchParam, sort, subject[x], type, value[x], valueSet.
  min:
    v: 0
  max:
    v: *
  base:
    path:
      v: Extension
    min:
      v: 0
    max:
      v: *
  is modifier:
    v: false
element:
  id:
    v: Extension.extension
  path:
    v: Extension.extension
  slicing:
    discriminator:
      type:
        v: value
      path:
        v: url
    ordered:
      v: false
    rules:
      v: open
  min:
    v: 0
  max:
    v: *
  base:
    path:
      v: Extension.extension
    min:
      v: 0
    max:
      v: *
element:
  id:
    v: Extension.extension:_datatype
  path:
    v: Extension.extension
  slice name:
    v: _datatype
  short:
    v: DataType slice for a FHIR R4B `DataRequirement` value
  definition:
    v: Slice to indicate the presence of a R4B `DataRequirement` in FHIR STU3
  min:
    v: 1
  max:
    v: 1
  base:
    path:
      v: Extension.extension
    min:
      v: 0
    max:
      v: *
element:
  id:
    v: Extension.extension:_datatype.url
  path:
    v: Extension.extension.url
  min:
    v: 1
  max:
    v: 1
  base:
    path:
      v: Extension.url
    min:
      v: 1
    max:
      v: 1
  fixed: Uri
    v: http://hl7.org/fhir/StructureDefinition/_datatype
    l: datatype
element:
  id:
    v: Extension.extension:_datatype.value[x]
  path:
    v: Extension.extension.value[x]
  comment:
    v: Must be: DataRequirement
  min:
    v: 1
  max:
    v: 1
  base:
    path:
      v: Extension.value[x]
    min:
      v: 0
    max:
      v: 1
  type:
    code:
      v: string
      l: string
  fixed: String
    v: DataRequirement
element:
  id:
    v: Extension.extension:type
  path:
    v: Extension.extension
  slice name:
    v: type
  short:
    v: R4B: type additional codes
  definition:
    v: R4B: `DataRequirement.type` additional codes
  comment:
    v: Element `DataRequirement.type` is mapped to FHIR STU3 element `DataRequirement.type` as `RelatedTo`. The mappings for `DataRequirement.type` do not allow expression of the necessary codes, per the bindings on the source and target.
  requirements:
    v: Element `DataRequirement.type` is mapped to FHIR STU3 element `DataRequirement.type` as `RelatedTo`. The mappings for `DataRequirement.type` do not allow expression of the necessary codes, per the bindings on the source and target.
  min:
    v: 1
  max:
    v: 1
  base:
    path:
      v: Extension.extension
    min:
      v: 0
    max:
      v: *
element:
  id:
    v: Extension.extension:type.url
  path:
    v: Extension.extension.url
  min:
    v: 1
  max:
    v: 1
  base:
    path:
      v: Extension.url
    min:
      v: 1
    max:
      v: 1
  fixed: Uri
    v: type
    l: type
element:
  id:
    v: Extension.extension:type.value[x]
  path:
    v: Extension.extension.value[x]
  short:
    v: The type of the required data
  definition:
    v: The type of the required data, specified as the type name of a resource. For profiles, this value is set to the type of the base resource of the profile.
  min:
    v: 1
  max:
    v: 1
  base:
    path:
      v: Extension.value[x]
    min:
      v: 0
    max:
      v: 1
  type:
    code:
      v: code
      l: code
  binding:
    strength:
      v: required
    value set: Uri
      v: http://hl7.org/fhir/uv/xver/ValueSet/R4B-all-types-for-R3|0.1.0
      l: http://hl7.org/fhir/uv/xver/ValueSet/R4B-all-types-for-R3
element:
  id:
    v: Extension.extension:profile
  path:
    v: Extension.extension
  slice name:
    v: profile
  short:
    v: R4B: profile
  definition:
    v: R4B: `DataRequirement.profile`

v: Element `DataRequirement.profile` is mapped to FHIR STU3 element `DataRequirement.profile` as `Equivalent`.

v: Element `DataRequirement.profile` is mapped to FHIR STU3 element `DataRequirement.profile` as `Equivalent`.

v: 0

v: *

path:
  v: Extension.extension
min:
  v: 0
max:
  v: *

id:
  v: Extension.extension:profile.url
path:
  v: Extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: profile
  l: profile

id:
  v: Extension.extension:profile.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: The profile of the required data
definition:
  v: The profile of the required data, specified as the uri of the profile definition.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: uri
    l: uri

id:
  v: Extension.extension:subject
path:
  v: Extension.extension
slice name:
  v: subject
short:
  v: R4B: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)
definition:
  v: R4B: `DataRequirement.subject[x]` (new:CodeableConcept, Reference(Group))
comment:
  v: Element `DataRequirement.subject[x]` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.subject[x]` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element). The subject of a data requirement is critical, as the data being specified is determined with respect to a particular subject. This corresponds roughly to the notion of a Compartment in that it limits what data is available based on its relationship to the subject. In CQL, this corresponds to the context declaration.
requirements:
  v: Element `DataRequirement.subject[x]` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.subject[x]` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:subject.url
path:
  v: Extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: subject
  l: subject

id:
  v: Extension.extension:subject.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
definition:
  v: The intended subjects of the data requirement. If this element is not provided, a Patient subject is assumed.
comment:
  v: The subject of a data requirement is critical, as the data being specified is determined with respect to a particular subject. This corresponds roughly to the notion of a Compartment in that it limits what data is available based on its relationship to the subject. In CQL, this corresponds to the context declaration.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: CodeableConcept
    l: CodeableConcept
type:
  code:
    v: Reference
    l: Reference
  target profile:
    v: http://hl7.org/fhir/4.3/StructureDefinition/profile-Group|0.1.0
    l: http://hl7.org/fhir/4.3/StructureDefinition/profile-Group
type:
  code:
    v: Reference
    l: Reference
  target profile:
    v: http://hl7.org/fhir/StructureDefinition/Group
    l: Group
binding:
  strength:
    v: extensible
  value set: Uri
    v: http://hl7.org/fhir/uv/xver/ValueSet/R4B-subject-type-for-R3|0.1.0
    l: http://hl7.org/fhir/uv/xver/ValueSet/R4B-subject-type-for-R3

id:
  v: Extension.extension:mustSupport
path:
  v: Extension.extension
slice name:
  v: mustSupport
short:
  v: R4B: Indicates specific structure elements that are referenced by the knowledge module
definition:
  v: R4B: `DataRequirement.mustSupport`
comment:
  v: Element `DataRequirement.mustSupport` is mapped to FHIR STU3 element `DataRequirement.mustSupport` as `Equivalent`.
requirements:
  v: Element `DataRequirement.mustSupport` is mapped to FHIR STU3 element `DataRequirement.mustSupport` as `Equivalent`.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:mustSupport.url
path:
  v: Extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: mustSupport
  l: mustSupport

id:
  v: Extension.extension:mustSupport.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: Indicates specific structure elements that are referenced by the knowledge module
definition:
  v: Indicates that specific elements of the type are referenced by the knowledge module and must be supported by the consumer in order to obtain an effective evaluation. This does not mean that a value is required for this element, only that the consuming system must understand the element and be able to provide values for it if they are available. The value of mustSupport SHALL be a FHIRPath resolveable on the type of the DataRequirement. The path SHALL consist only of identifiers, constant indexers, and .resolve() (see the [Simple FHIRPath Profile](https://hl7.org/fhir/fhirpat.html#simple) for full details).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: Extension.extension:codeFilter
path:
  v: Extension.extension
slice name:
  v: codeFilter
short:
  v: R4B: codeFilter
definition:
  v: R4B: `DataRequirement.codeFilter`
comment:
  v: Element `DataRequirement.codeFilter` is mapped to FHIR STU3 element `DataRequirement.codeFilter` as `Equivalent`.
requirements:
  v: Element `DataRequirement.codeFilter` is mapped to FHIR STU3 element `DataRequirement.codeFilter` as `Equivalent`.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:codeFilter.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  ordered:
    v: false
  rules:
    v: open
min:
  v: 0
max:
  v: *
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:codeFilter.extension:path
path:
  v: Extension.extension.extension
slice name:
  v: path
short:
  v: R4B: A code-valued attribute to filter on
definition:
  v: R4B: `DataRequirement.codeFilter.path`
comment:
  v: Element `DataRequirement.codeFilter.path` is mapped to FHIR STU3 element `DataRequirement.codeFilter.path` as `Equivalent`. The path attribute contains a [Simple FHIRPath Subset](https://hl7.org/fhir/fhirpat.html#simple) that allows path traversal, but not calculation.
requirements:
  v: Element `DataRequirement.codeFilter.path` is mapped to FHIR STU3 element `DataRequirement.codeFilter.path` as `Equivalent`.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:codeFilter.extension:path.url
path:
  v: Extension.extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: path
  l: path

id:
  v: Extension.extension:codeFilter.extension:path.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: A code-valued attribute to filter on
definition:
  v: The code-valued attribute of the filter. The specified path SHALL be a FHIRPath resolveable on the specified type of the DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](https://hl7.org/fhir/fhirpat.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type code, Coding, or CodeableConcept.
comment:
  v: The path attribute contains a [Simple FHIRPath Subset](https://hl7.org/fhir/fhirpat.html#simple) that allows path traversal, but not calculation.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: Extension.extension:codeFilter.extension:searchParam
path:
  v: Extension.extension.extension
slice name:
  v: searchParam
short:
  v: R4B: A coded (token) parameter to search on (new)
definition:
  v: R4B: `DataRequirement.codeFilter.searchParam` (new:string)
comment:
  v: Element `DataRequirement.codeFilter.searchParam` has a context of DataRequirement.codeFilter based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.codeFilter.searchParam` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
requirements:
  v: Element `DataRequirement.codeFilter.searchParam` has a context of DataRequirement.codeFilter based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.codeFilter.searchParam` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:codeFilter.extension:searchParam.url
path:
  v: Extension.extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: searchParam
  l: searchParam

id:
  v: Extension.extension:codeFilter.extension:searchParam.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: A coded (token) parameter to search on
definition:
  v: A token parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type code, Coding, or CodeableConcept.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: Extension.extension:codeFilter.extension:valueSet
path:
  v: Extension.extension.extension
slice name:
  v: valueSet
short:
  v: R4B: valueSet
definition:
  v: R4B: `DataRequirement.codeFilter.valueSet`
comment:
  v: Element `DataRequirement.codeFilter.valueSet` is mapped to FHIR STU3 element `DataRequirement.codeFilter.valueSet[x]` as `SourceIsNarrowerThanTarget`. The target context `DataRequirement.codeFilter.valueSet[x]` is a choice-type element and cannot directly hold extensions. The context is moved up to parent element `DataRequirement.codeFilter`.
requirements:
  v: Element `DataRequirement.codeFilter.valueSet` is mapped to FHIR STU3 element `DataRequirement.codeFilter.valueSet[x]` as `SourceIsNarrowerThanTarget`. The target context `DataRequirement.codeFilter.valueSet[x]` is a choice-type element and cannot directly hold extensions. The context is moved up to parent element `DataRequirement.codeFilter`.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:codeFilter.extension:valueSet.url
path:
  v: Extension.extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: valueSet
  l: valueSet

id:
  v: Extension.extension:codeFilter.extension:valueSet.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: Valueset for the filter
definition:
  v: The valueset for the code filter. The valueSet and code elements are additive. If valueSet is specified, the filter will return only those data items for which the value of the code-valued element specified in the path is a member of the specified valueset.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: uri
    l: uri

id:
  v: Extension.extension:codeFilter.extension:code
path:
  v: Extension.extension.extension
slice name:
  v: code
short:
  v: R4B: What code is expected
definition:
  v: R4B: `DataRequirement.codeFilter.code`
comment:
  v: Element `DataRequirement.codeFilter.code` is mapped to FHIR STU3 element `DataRequirement.codeFilter.valueCoding` as `Equivalent`.
requirements:
  v: Element `DataRequirement.codeFilter.code` is mapped to FHIR STU3 element `DataRequirement.codeFilter.valueCoding` as `Equivalent`.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:codeFilter.extension:code.url
path:
  v: Extension.extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: code
  l: code

id:
  v: Extension.extension:codeFilter.extension:code.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: What code is expected
definition:
  v: The codes for the code filter. If values are given, the filter will return only those data items for which the code-valued attribute specified by the path has a value that is one of the specified codes. If codes are specified in addition to a value set, the filter returns items matching a code in the value set or one of the specified codes.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding

id:
  v: Extension.extension:codeFilter.url
path:
  v: Extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: codeFilter
  l: codeFilter

id:
  v: Extension.extension:codeFilter.value[x]
path:
  v: Extension.extension.value[x]
min:
  v: 0
max:
  v: 0
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1

id:
  v: Extension.extension:dateFilter
path:
  v: Extension.extension
slice name:
  v: dateFilter
short:
  v: R4B: dateFilter
definition:
  v: R4B: `DataRequirement.dateFilter`
comment:
  v: Element `DataRequirement.dateFilter` is mapped to FHIR STU3 element `DataRequirement.dateFilter` as `Equivalent`.
requirements:
  v: Element `DataRequirement.dateFilter` is mapped to FHIR STU3 element `DataRequirement.dateFilter` as `Equivalent`.
min:
  v: 0
max:
  v: *
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:dateFilter.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  ordered:
    v: false
  rules:
    v: open
min:
  v: 0
max:
  v: *
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:dateFilter.extension:path
path:
  v: Extension.extension.extension
slice name:
  v: path
short:
  v: R4B: A date-valued attribute to filter on
definition:
  v: R4B: `DataRequirement.dateFilter.path`
comment:
  v: Element `DataRequirement.dateFilter.path` is mapped to FHIR STU3 element `DataRequirement.dateFilter.path` as `Equivalent`. The path attribute contains a [Simple FHIR Subset](https://hl7.org/fhir/fhirpat.html#simple) that allows path traversal, but not calculation.
requirements:
  v: Element `DataRequirement.dateFilter.path` is mapped to FHIR STU3 element `DataRequirement.dateFilter.path` as `Equivalent`.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:dateFilter.extension:path.url
path:
  v: Extension.extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: path
  l: path

id:
  v: Extension.extension:dateFilter.extension:path.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: A date-valued attribute to filter on
definition:
  v: The date-valued attribute of the filter. The specified path SHALL be a FHIRPath resolveable on the specified type of the DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](https://hl7.org/fhir/fhirpat.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type date, dateTime, Period, Schedule, or Timing.
comment:
  v: The path attribute contains a [Simple FHIR Subset](https://hl7.org/fhir/fhirpat.html#simple) that allows path traversal, but not calculation.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: Extension.extension:dateFilter.extension:searchParam
path:
  v: Extension.extension.extension
slice name:
  v: searchParam
short:
  v: R4B: A date valued parameter to search on (new)
definition:
  v: R4B: `DataRequirement.dateFilter.searchParam` (new:string)
comment:
  v: Element `DataRequirement.dateFilter.searchParam` has a context of DataRequirement.dateFilter based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.dateFilter.searchParam` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
requirements:
  v: Element `DataRequirement.dateFilter.searchParam` has a context of DataRequirement.dateFilter based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.dateFilter.searchParam` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:dateFilter.extension:searchParam.url
path:
  v: Extension.extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: searchParam
  l: searchParam

id:
  v: Extension.extension:dateFilter.extension:searchParam.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: A date valued parameter to search on
definition:
  v: A date parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type date, dateTime, Period, Schedule, or Timing.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: Extension.extension:dateFilter.extension:value
path:
  v: Extension.extension.extension
slice name:
  v: value
short:
  v: R4B: value additional types
definition:
  v: R4B: `DataRequirement.dateFilter.value[x]` additional types (Period)
comment:
  v: Element `DataRequirement.dateFilter.value[x]` is mapped to FHIR STU3 element `DataRequirement.dateFilter.value[x]` as `SourceIsBroaderThanTarget`. The mappings for `DataRequirement.dateFilter.value[x]` do not cover the following types: Period. The target context `DataRequirement.dateFilter.value[x]` is a choice-type element and cannot directly hold extensions. The context is moved up to parent element `DataRequirement.dateFilter`.
requirements:
  v: Element `DataRequirement.dateFilter.value[x]` is mapped to FHIR STU3 element `DataRequirement.dateFilter.value[x]` as `SourceIsBroaderThanTarget`. The mappings for `DataRequirement.dateFilter.value[x]` do not cover the following types: Period. The target context `DataRequirement.dateFilter.value[x]` is a choice-type element and cannot directly hold extensions. The context is moved up to parent element `DataRequirement.dateFilter`.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:dateFilter.extension:value.url
path:
  v: Extension.extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: value
  l: value

id:
  v: Extension.extension:dateFilter.extension:value.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: The value of the filter, as a Period, DateTime, or Duration value
definition:
  v: The value of the filter. If period is specified, the filter will return only those data items that fall within the bounds determined by the Period, inclusive of the period boundaries. If dateTime is specified, the filter will return only those data items that are equal to the specified dateTime. If a Duration is specified, the filter will return only those data items that fall within Duration before now.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Period
    l: Period

id:
  v: Extension.extension:dateFilter.url
path:
  v: Extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: dateFilter
  l: dateFilter

id:
  v: Extension.extension:dateFilter.value[x]
path:
  v: Extension.extension.value[x]
min:
  v: 0
max:
  v: 0
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1

id:
  v: Extension.extension:limit
path:
  v: Extension.extension
slice name:
  v: limit
short:
  v: R4B: Number of results (new)
definition:
  v: R4B: `DataRequirement.limit` (new:positiveInt)
comment:
  v: Element `DataRequirement.limit` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.limit` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element). This element can be used in combination with the sort element to specify quota requirements such as "the most recent 5" or "the highest 5".
requirements:
  v: Enables the requirement "most recent 5 results" to be expressed. Element `DataRequirement.limit` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.limit` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:limit.url
path:
  v: Extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: limit
  l: limit

id:
  v: Extension.extension:limit.value[x]
path:
  v: Extension.extension.value[x]
short:
  v: Number of results
definition:
  v: Specifies a maximum number of results that are required (uses the _count search parameter).
comment:
  v: This element can be used in combination with the sort element to specify quota requirements such as "the most recent 5" or "the highest 5".
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: positiveInt
    l: positiveInt

id:
  v: Extension.extension:sort
path:
  v: Extension.extension
slice name:
  v: sort
short:
  v: R4B: Order of the results (new)
definition:
  v: R4B: `DataRequirement.sort` (new:Element)
comment:
  v: Element `DataRequirement.sort` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element). This element can be used in combination with the sort element to specify quota requirements such as "the most recent 5" or "the highest 5". When multiple sorts are specified, they are applied in the order they appear in the resource.
requirements:
  v: Enables the requirement "most recent 5 results" to be expressed. Element `DataRequirement.sort` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 0
max:
  v: *
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:sort.extension
path:
  v: Extension.extension.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  ordered:
    v: false
  rules:
    v: open
min:
  v: 2
max:
  v: *
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:sort.extension:path
path:
  v: Extension.extension.extension
slice name:
  v: path
short:
  v: R4B: The name of the attribute to perform the sort (new)
definition:
  v: R4B: `DataRequirement.sort.path` (new:string)
comment:
  v: Element `DataRequirement.sort.path` is part of an existing definition because parent element `DataRequirement.sort` requires a cross-version extension. Element `DataRequirement.sort.path` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort.path` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
requirements:
  v: Element `DataRequirement.sort.path` is part of an existing definition because parent element `DataRequirement.sort` requires a cross-version extension. Element `DataRequirement.sort.path` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort.path` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:sort.extension:path.url
path:
  v: Extension.extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: path
  l: path

id:
  v: Extension.extension:sort.extension:path.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: The name of the attribute to perform the sort
definition:
  v: The attribute of the sort. The specified path must be resolvable from the type of the required data. 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.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: Extension.extension:sort.extension:direction
path:
  v: Extension.extension.extension
slice name:
  v: direction
short:
  v: R4B: ascending | descending (new)
definition:
  v: R4B: `DataRequirement.sort.direction` (new:code)
comment:
  v: Element `DataRequirement.sort.direction` is part of an existing definition because parent element `DataRequirement.sort` requires a cross-version extension. Element `DataRequirement.sort.direction` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort.direction` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
requirements:
  v: Element `DataRequirement.sort.direction` is part of an existing definition because parent element `DataRequirement.sort` requires a cross-version extension. Element `DataRequirement.sort.direction` has a context of DataRequirement based on following the parent source element upwards and mapping to `DataRequirement`. Element `DataRequirement.sort.direction` has no mapping targets in FHIR STU3. Typically, this is because the element has been added (is a new element).
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.extension
  min:
    v: 0
  max:
    v: *

id:
  v: Extension.extension:sort.extension:direction.url
path:
  v: Extension.extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: direction
  l: direction

id:
  v: Extension.extension:sort.extension:direction.value[x]
path:
  v: Extension.extension.extension.value[x]
short:
  v: ascending | descending
definition:
  v: The direction of the sort, ascending or descending.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code
binding:
  strength:
    v: required
  value set: Uri
    v: http://hl7.org/fhir/uv/xver/ValueSet/R4B-sort-direction-for-R3|0.1.0
    l: http://hl7.org/fhir/uv/xver/ValueSet/R4B-sort-direction-for-R3

id:
  v: Extension.extension:sort.url
path:
  v: Extension.extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: sort
  l: sort

id:
  v: Extension.extension:sort.value[x]
path:
  v: Extension.extension.value[x]
min:
  v: 0
max:
  v: 0
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1

id:
  v: Extension.url
path:
  v: Extension.url
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Extension.url
  min:
    v: 1
  max:
    v: 1
fixed: Uri
  v: http://hl7.org/fhir/4.3/StructureDefinition/extension-Library.dataRequirement
  l: extension-Library.dataRequirement

id:
  v: Extension.value[x]
path:
  v: Extension.value[x]
min:
  v: 0
max:
  v: 0
base:
  path:
    v: Extension.value[x]
  min:
    v: 0
  max:
    v: 1