FHIR Extensions Pack
5.3.0-ballot-tc1 - (September 2025 Ballot) International flag

FHIR Extensions Pack, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 5.3.0-ballot-tc1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-extensions/ and changes regularly. See the Directory of published versions

Extension: Target Feature Assertion

Official URL: http://hl7.org/fhir/StructureDefinition/target-feature-assertion Version: 5.3.0-ballot-tc1
Standards status: Draft Maturity Level: 2 Computable Name: TargetFeatureAsssertion

This extension asserts that the data in a resource a provenance statement identifies was authored (collected/handled/created/transformed) by an application that claims conformance to the definition of a feature. Note that 'authoring' is often a client function, but that is not always the case.

For further information about features, see the Application Feature Framework Implementation Guide.

As an example of the kind of use this extension might support, an application could choose to only use value set expansions that are explicitly labeled as 'prepared under the conformance rules defined in the CRMI implementation guide'.

This extension is a statement about the content of resources referred to from Provenance.target and is placed on the Provenance resource. See the related extension for declaring feature conformance in the resource itself.

This assertion is often used to drive processing rules associated with the trustworthiness of the data in the resource. Applications/specifications/workflows that make use of this assertion should carefully consider the integrity of the chain of handling from the source the processing before choosing to trust the assertion.

A more complex alternative to this profile is to use the Obligations Profile extension.

Context of Use

This extension may be used on the following element(s)

Usage info

Usages:

  • This Extension is not used by any profiles in this Implementation Guide

You can also check for usages in the FHIR IG Statistics

Changes since version 5.2.0:

  • New Content
  • Formal Views of Extension Content

    Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

    This structure is derived from Extension

    Summary

    Complex Extension: This extension asserts that the data in a resource a provenance statement identifies was authored (collected/handled/created/transformed) by an application that claims conformance to the definition of a feature. Note that 'authoring' is often a client function, but that is not always the case. For further information about features, see the Application Feature Framework Implementation Guide. As an example of the kind of use this extension might support, an application could choose to only use value set expansions that are explicitly labeled as 'prepared under the conformance rules defined in the CRMI implementation guide'. This extension is a statement about the content of resources referred to from Provenance.target and is placed on the Provenance resource. See the related extension for declaring feature conformance in the resource itself. This assertion is often used to drive processing rules associated with the trustworthiness of the data in the resource. Applications/specifications/workflows that make use of this assertion should carefully consider the integrity of the chain of handling from the source the processing before choosing to trust the assertion. A more complex alternative to this profile is to use the Obligations Profile extension.

    • definition: uri: A reference to the definition of the feature by its canonical URL
    • value: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference, SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta: The value of the feature (as defined in the definition of the feature)
    • name: code: A reference to the qualifier of the feature by its name
    • value: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference, SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta: The value of the feature qualifier (as defined in the definition of the feature)

    Maturity: 2

    This structure is derived from Extension

    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Extension 0..* Extension Authored by an application conforming to a set of obligations
    ... Slices for extension Content/Rules for all slices
    .... extension:definition 1..1 Extension Identifies the feature definition
    ..... extension 0..0 Extension
    ..... url 1..1 uri "definition"
    ..... value[x] 1..1 uri Value of extension
    .... extension:value 1..1 Extension The value of the feature
    ..... extension 0..0 Extension
    ..... url 1..1 uri "value"
    ..... value[x] 1..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference(), Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference(), SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta Value of extension
    .... extension:property 0..* Extension Provides a value for a qualifier of the feature
    ..... extension 2..2 Extension Extension
    ..... Slices for extension Content/Rules for all slices
    ...... extension:name 1..1 Extension Identifies the feature qualifier
    ....... extension 0..0 Extension
    ....... url 1..1 uri "name"
    ....... value[x] 1..1 code Value of extension
    ...... extension:value 1..1 Extension The value of the feature qualifier
    ....... extension 0..0 Extension
    ....... url 1..1 uri "value"
    ....... value[x] 1..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference(), Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference(), SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta Value of extension
    ..... url 1..1 uri "property"
    ..... value[x] 0..0 Value of extension
    ... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/feature-assertion"
    ... value[x] 0..0 Value of extension

    doco Documentation for this format
    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Extension 0..* Extension Authored by an application conforming to a set of obligations
    ... id 0..1 id Unique id for inter-element referencing
    ... Slices for extension 2..* Extension Additional content defined by implementations
    Slice: Unordered, Open by value:url
    .... extension:definition 1..1 Extension Identifies the feature definition
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0 Extension
    Slice: Unordered, Open by value:url
    ..... url 1..1 uri "definition"
    ..... value[x] 1..1 uri Value of extension
    .... extension:value 1..1 Extension The value of the feature
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0 Extension
    Slice: Unordered, Open by value:url
    ..... url 1..1 uri "value"
    ..... value[x] 1..1 Value of extension
    ...... valueBase64Binary base64Binary
    ...... valueBoolean boolean
    ...... valueCanonical canonical(Any)
    ...... valueCode code
    ...... valueDate date
    ...... valueDateTime dateTime
    ...... valueDecimal decimal
    ...... valueId id
    ...... valueInstant instant
    ...... valueInteger integer
    ...... valueInteger64 integer64
    ...... valueMarkdown markdown
    ...... valueOid oid
    ...... valuePositiveInt positiveInt
    ...... valueString string
    ...... valueTime time
    ...... valueUnsignedInt unsignedInt
    ...... valueUri uri
    ...... valueUrl url
    ...... valueUuid uuid
    ...... valueAddress Address
    ...... valueAge Age
    ...... valueAnnotation Annotation
    ...... valueAttachment Attachment
    ...... valueCodeableConcept CodeableConcept
    ...... valueCodeableReference CodeableReference
    ...... valueCoding Coding
    ...... valueContactPoint ContactPoint
    ...... valueCount Count
    ...... valueDistance Distance
    ...... valueDuration Duration
    ...... valueHumanName HumanName
    ...... valueIdentifier Identifier
    ...... valueMoney Money
    ...... valuePeriod Period
    ...... valueQuantity Quantity
    ...... valueRange Range
    ...... valueRatio Ratio
    ...... valueRatioRange RatioRange
    ...... valueReference Reference(Any)
    ...... valueSampledData SampledData
    ...... valueSignature Signature
    ...... valueTiming Timing
    ...... valueContactDetail ContactDetail
    ...... valueDataRequirement DataRequirement
    ...... valueExpression Expression
    ...... valueParameterDefinition ParameterDefinition
    ...... valueRelatedArtifact RelatedArtifact
    ...... valueTriggerDefinition TriggerDefinition
    ...... valueUsageContext UsageContext
    ...... valueAvailability Availability
    ...... valueExtendedContactDetail ExtendedContactDetail
    ...... valueDosage Dosage
    ...... valueMeta Meta
    .... extension:property 0..* Extension Provides a value for a qualifier of the feature
    ..... id 0..1 id Unique id for inter-element referencing
    ..... Slices for extension 2..2 Extension Extension
    Slice: Unordered, Open by value:url
    ...... extension:name 1..1 Extension Identifies the feature qualifier
    ....... id 0..1 id Unique id for inter-element referencing
    ....... extension 0..0 Extension
    Slice: Unordered, Open by value:url
    ....... url 1..1 uri "name"
    ....... value[x] 1..1 code Value of extension
    ...... extension:value 1..1 Extension The value of the feature qualifier
    ....... id 0..1 id Unique id for inter-element referencing
    ....... extension 0..0 Extension
    Slice: Unordered, Open by value:url
    ....... url 1..1 uri "value"
    ....... value[x] 1..1 Value of extension
    ........ valueBase64Binary base64Binary
    ........ valueBoolean boolean
    ........ valueCanonical canonical(Any)
    ........ valueCode code
    ........ valueDate date
    ........ valueDateTime dateTime
    ........ valueDecimal decimal
    ........ valueId id
    ........ valueInstant instant
    ........ valueInteger integer
    ........ valueInteger64 integer64
    ........ valueMarkdown markdown
    ........ valueOid oid
    ........ valuePositiveInt positiveInt
    ........ valueString string
    ........ valueTime time
    ........ valueUnsignedInt unsignedInt
    ........ valueUri uri
    ........ valueUrl url
    ........ valueUuid uuid
    ........ valueAddress Address
    ........ valueAge Age
    ........ valueAnnotation Annotation
    ........ valueAttachment Attachment
    ........ valueCodeableConcept CodeableConcept
    ........ valueCodeableReference CodeableReference
    ........ valueCoding Coding
    ........ valueContactPoint ContactPoint
    ........ valueCount Count
    ........ valueDistance Distance
    ........ valueDuration Duration
    ........ valueHumanName HumanName
    ........ valueIdentifier Identifier
    ........ valueMoney Money
    ........ valuePeriod Period
    ........ valueQuantity Quantity
    ........ valueRange Range
    ........ valueRatio Ratio
    ........ valueRatioRange RatioRange
    ........ valueReference Reference(Any)
    ........ valueSampledData SampledData
    ........ valueSignature Signature
    ........ valueTiming Timing
    ........ valueContactDetail ContactDetail
    ........ valueDataRequirement DataRequirement
    ........ valueExpression Expression
    ........ valueParameterDefinition ParameterDefinition
    ........ valueRelatedArtifact RelatedArtifact
    ........ valueTriggerDefinition TriggerDefinition
    ........ valueUsageContext UsageContext
    ........ valueAvailability Availability
    ........ valueExtendedContactDetail ExtendedContactDetail
    ........ valueDosage Dosage
    ........ valueMeta Meta
    ..... url 1..1 uri "property"
    ... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/feature-assertion"

    doco Documentation for this format

    This structure is derived from Extension

    Summary

    Complex Extension: This extension asserts that the data in a resource a provenance statement identifies was authored (collected/handled/created/transformed) by an application that claims conformance to the definition of a feature. Note that 'authoring' is often a client function, but that is not always the case. For further information about features, see the Application Feature Framework Implementation Guide. As an example of the kind of use this extension might support, an application could choose to only use value set expansions that are explicitly labeled as 'prepared under the conformance rules defined in the CRMI implementation guide'. This extension is a statement about the content of resources referred to from Provenance.target and is placed on the Provenance resource. See the related extension for declaring feature conformance in the resource itself. This assertion is often used to drive processing rules associated with the trustworthiness of the data in the resource. Applications/specifications/workflows that make use of this assertion should carefully consider the integrity of the chain of handling from the source the processing before choosing to trust the assertion. A more complex alternative to this profile is to use the Obligations Profile extension.

    • definition: uri: A reference to the definition of the feature by its canonical URL
    • value: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference, SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta: The value of the feature (as defined in the definition of the feature)
    • name: code: A reference to the qualifier of the feature by its name
    • value: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference, SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta: The value of the feature qualifier (as defined in the definition of the feature)

    Maturity: 2

    Differential View

    This structure is derived from Extension

    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Extension 0..* Extension Authored by an application conforming to a set of obligations
    ... Slices for extension Content/Rules for all slices
    .... extension:definition 1..1 Extension Identifies the feature definition
    ..... extension 0..0 Extension
    ..... url 1..1 uri "definition"
    ..... value[x] 1..1 uri Value of extension
    .... extension:value 1..1 Extension The value of the feature
    ..... extension 0..0 Extension
    ..... url 1..1 uri "value"
    ..... value[x] 1..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference(), Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference(), SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta Value of extension
    .... extension:property 0..* Extension Provides a value for a qualifier of the feature
    ..... extension 2..2 Extension Extension
    ..... Slices for extension Content/Rules for all slices
    ...... extension:name 1..1 Extension Identifies the feature qualifier
    ....... extension 0..0 Extension
    ....... url 1..1 uri "name"
    ....... value[x] 1..1 code Value of extension
    ...... extension:value 1..1 Extension The value of the feature qualifier
    ....... extension 0..0 Extension
    ....... url 1..1 uri "value"
    ....... value[x] 1..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference(), Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference(), SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta Value of extension
    ..... url 1..1 uri "property"
    ..... value[x] 0..0 Value of extension
    ... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/feature-assertion"
    ... value[x] 0..0 Value of extension

    doco Documentation for this format

    Snapshot View

    NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
    .. Extension 0..* Extension Authored by an application conforming to a set of obligations
    ... id 0..1 id Unique id for inter-element referencing
    ... Slices for extension 2..* Extension Additional content defined by implementations
    Slice: Unordered, Open by value:url
    .... extension:definition 1..1 Extension Identifies the feature definition
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0 Extension
    Slice: Unordered, Open by value:url
    ..... url 1..1 uri "definition"
    ..... value[x] 1..1 uri Value of extension
    .... extension:value 1..1 Extension The value of the feature
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0 Extension
    Slice: Unordered, Open by value:url
    ..... url 1..1 uri "value"
    ..... value[x] 1..1 Value of extension
    ...... valueBase64Binary base64Binary
    ...... valueBoolean boolean
    ...... valueCanonical canonical(Any)
    ...... valueCode code
    ...... valueDate date
    ...... valueDateTime dateTime
    ...... valueDecimal decimal
    ...... valueId id
    ...... valueInstant instant
    ...... valueInteger integer
    ...... valueInteger64 integer64
    ...... valueMarkdown markdown
    ...... valueOid oid
    ...... valuePositiveInt positiveInt
    ...... valueString string
    ...... valueTime time
    ...... valueUnsignedInt unsignedInt
    ...... valueUri uri
    ...... valueUrl url
    ...... valueUuid uuid
    ...... valueAddress Address
    ...... valueAge Age
    ...... valueAnnotation Annotation
    ...... valueAttachment Attachment
    ...... valueCodeableConcept CodeableConcept
    ...... valueCodeableReference CodeableReference
    ...... valueCoding Coding
    ...... valueContactPoint ContactPoint
    ...... valueCount Count
    ...... valueDistance Distance
    ...... valueDuration Duration
    ...... valueHumanName HumanName
    ...... valueIdentifier Identifier
    ...... valueMoney Money
    ...... valuePeriod Period
    ...... valueQuantity Quantity
    ...... valueRange Range
    ...... valueRatio Ratio
    ...... valueRatioRange RatioRange
    ...... valueReference Reference(Any)
    ...... valueSampledData SampledData
    ...... valueSignature Signature
    ...... valueTiming Timing
    ...... valueContactDetail ContactDetail
    ...... valueDataRequirement DataRequirement
    ...... valueExpression Expression
    ...... valueParameterDefinition ParameterDefinition
    ...... valueRelatedArtifact RelatedArtifact
    ...... valueTriggerDefinition TriggerDefinition
    ...... valueUsageContext UsageContext
    ...... valueAvailability Availability
    ...... valueExtendedContactDetail ExtendedContactDetail
    ...... valueDosage Dosage
    ...... valueMeta Meta
    .... extension:property 0..* Extension Provides a value for a qualifier of the feature
    ..... id 0..1 id Unique id for inter-element referencing
    ..... Slices for extension 2..2 Extension Extension
    Slice: Unordered, Open by value:url
    ...... extension:name 1..1 Extension Identifies the feature qualifier
    ....... id 0..1 id Unique id for inter-element referencing
    ....... extension 0..0 Extension
    Slice: Unordered, Open by value:url
    ....... url 1..1 uri "name"
    ....... value[x] 1..1 code Value of extension
    ...... extension:value 1..1 Extension The value of the feature qualifier
    ....... id 0..1 id Unique id for inter-element referencing
    ....... extension 0..0 Extension
    Slice: Unordered, Open by value:url
    ....... url 1..1 uri "value"
    ....... value[x] 1..1 Value of extension
    ........ valueBase64Binary base64Binary
    ........ valueBoolean boolean
    ........ valueCanonical canonical(Any)
    ........ valueCode code
    ........ valueDate date
    ........ valueDateTime dateTime
    ........ valueDecimal decimal
    ........ valueId id
    ........ valueInstant instant
    ........ valueInteger integer
    ........ valueInteger64 integer64
    ........ valueMarkdown markdown
    ........ valueOid oid
    ........ valuePositiveInt positiveInt
    ........ valueString string
    ........ valueTime time
    ........ valueUnsignedInt unsignedInt
    ........ valueUri uri
    ........ valueUrl url
    ........ valueUuid uuid
    ........ valueAddress Address
    ........ valueAge Age
    ........ valueAnnotation Annotation
    ........ valueAttachment Attachment
    ........ valueCodeableConcept CodeableConcept
    ........ valueCodeableReference CodeableReference
    ........ valueCoding Coding
    ........ valueContactPoint ContactPoint
    ........ valueCount Count
    ........ valueDistance Distance
    ........ valueDuration Duration
    ........ valueHumanName HumanName
    ........ valueIdentifier Identifier
    ........ valueMoney Money
    ........ valuePeriod Period
    ........ valueQuantity Quantity
    ........ valueRange Range
    ........ valueRatio Ratio
    ........ valueRatioRange RatioRange
    ........ valueReference Reference(Any)
    ........ valueSampledData SampledData
    ........ valueSignature Signature
    ........ valueTiming Timing
    ........ valueContactDetail ContactDetail
    ........ valueDataRequirement DataRequirement
    ........ valueExpression Expression
    ........ valueParameterDefinition ParameterDefinition
    ........ valueRelatedArtifact RelatedArtifact
    ........ valueTriggerDefinition TriggerDefinition
    ........ valueUsageContext UsageContext
    ........ valueAvailability Availability
    ........ valueExtendedContactDetail ExtendedContactDetail
    ........ valueDosage Dosage
    ........ valueMeta Meta
    ..... url 1..1 uri "property"
    ... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/feature-assertion"

    doco Documentation for this format

     

    Other representations of profile: CSV, Excel, Schematron

    Constraints

    Id Grade Path(s) Description Expression
    ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
    ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

    R4B

    The extension is unchanged in R4B

    R4

    The extension is unchanged in R4

    R3

    The extension is unchanged in R3

    Search Parameters for this Extension

    (none found)