FHIR Extensions Pack
5.2.0-ballot - 5.2.0 Ballot - September 2024) 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.2.0-ballot 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: Obligation Extension

Official URL: http://hl7.org/fhir/StructureDefinition/obligation Version: 5.2.0-ballot
Standards status: Draft Maturity Level: 1 Computable Name: Obligation
Other Identifiers: OID:2.16.840.1.113883.4.642.5.1531

When appearing on an element, documents obligations that apply to applications implementing that element. When appearing at the root of a StructureDefinition, indicates obligations that apply to all listed elements within the extension. When appearing on a type, indicates obligations that apply to the use of that specific type. The obligations relate to application behaviour, not the content of the element itself in the resource instances that contain this element. See the Obligation page in the core specification for further detail.

Context of Use

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

  • Element ID ElementDefinition
  • Element ID StructureDefinition
  • Element ID ElementDefinition.type

Usage info

Usage:

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

Changes since version 1.0.0:

  • The resource metadata has changed (title, experimental, description)
  • The data elements list has changed
  • One or more text definitions, invariants or bindings have changed
  • 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: When appearing on an element, documents obligations that apply to applications implementing that element. When appearing at the root of a StructureDefinition, indicates obligations that apply to all listed elements within the extension. When appearing on a type, indicates obligations that apply to the use of that specific type. The obligations relate to application behaviour, not the content of the element itself in the resource instances that contain this element. See the Obligation page in the core specification for further detail.

    • code: code: A code that describes the obligation(s) that apply to implementing applications.
    • elementId: string: An Extension
    • actor: canonical: Actor(s) to which the obligation applies.
    • documentation: markdown: Human readable documentation of the purpose or application of the obligation.
    • usage: UsageContext: Qualifies the usage of the obligation. Typically obligations are qualified by jurisdiction, but they may also be qualified by gender, workflow status, clinical domain etc. The information to decide whether a usege context applies is usually outside the resource, determined by context, and this might present challenges for validation tooling. An expected use: limiting obligations to particular jurisdictions (e.g. in IPS).
    • filter: string: A FHIRPath expression that restricts to the obligation to only those occurrences of the element that fall into the collection defined by the expression.
    • filterDocumentation: string: Documents the FHIRPath expression for the benefit of users who are not familiar with FHIRPath.
    • process: canonical, uri: A process that the obligation applies to. This might a canonical URL for an OperationDefinition, or a uri that refers to some externally defined process such as a section within an IG.

    Maturity: 1

    This structure is derived from Extension

    NameFlagsCard.TypeDescription & Constraintsdoco
    .. Extension 0..* Extension Obligations for applications using element/in model
    ... Slices for extension Content/Rules for all slices
    .... extension:code 1..* Extension Composite code describing the nature of the obligation
    ..... extension 0..0
    ..... url 1..1 uri "code"
    ..... value[x] 1..1 code Value of extension
    Binding: ObligationCodesVS (required): Codes, potentially a combination code, that describe an obligation that applies to implementing applications

    .... extension:elementId 0..* Extension When the obligation is on the profile itself, not a particular element, a list of elements to which it applies
    ..... extension 0..0
    ..... url 1..1 uri "elementId"
    ..... value[x] 1..1 string Value of extension
    .... extension:actor 0..* Extension Actor(s) this obligation applies to (all actors if none)
    ..... extension 0..0
    ..... url 1..1 uri "actor"
    ..... value[x] 1..1 canonical(ActorDefinition) Value of extension
    .... extension:documentation 0..1 Extension Documentation of the purpose or application of the obligation
    ..... extension 0..0
    ..... url 1..1 uri "documentation"
    ..... value[x] 1..1 markdown Value of extension
    .... extension:usage 0..* Extension Qualifies the usage - jurisdiction, gender, workflow status etc
    ..... extension 0..0
    ..... url 1..1 uri "usage"
    ..... value[x] 1..1 UsageContext Value of extension
    .... extension:filter 0..1 Extension Limits obligation to some repeats by FHIRPath
    ..... extension 0..0
    ..... url 1..1 uri "filter"
    ..... value[x] 1..1 string Value of extension
    .... extension:filterDocumentation 0..1 Extension Describes the intent of the filter (short)
    ..... extension 0..0
    ..... url 1..1 uri "filterDocumentation"
    ..... value[x] 1..1 string Value of extension
    .... extension:process 0..* Extension The obligation only applies when performing the indicated process
    ..... extension 0..0
    ..... url 1..1 uri "process"
    ..... value[x] 1..1 Value of extension
    ...... valueCanonical canonical(OperationDefinition)
    ...... valueUri uri
    ... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/obligation"
    ... value[x] 0..0

    doco Documentation for this format
    NameFlagsCard.TypeDescription & Constraintsdoco
    .. Extension 0..* Extension Obligations for applications using element/in model
    ... id 0..1 id Unique id for inter-element referencing
    ... Slices for extension 1..* Extension Additional content defined by implementations
    Slice: Unordered, Open by value:url
    .... extension:code 1..* Extension Composite code describing the nature of the obligation
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "code"
    ..... value[x] 1..1 code Value of extension
    Binding: ObligationCodesVS (required): Codes, potentially a combination code, that describe an obligation that applies to implementing applications

    .... extension:elementId 0..* Extension When the obligation is on the profile itself, not a particular element, a list of elements to which it applies
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "elementId"
    ..... value[x] 1..1 string Value of extension
    .... extension:actor 0..* Extension Actor(s) this obligation applies to (all actors if none)
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "actor"
    ..... value[x] 1..1 canonical(ActorDefinition) Value of extension
    .... extension:documentation 0..1 Extension Documentation of the purpose or application of the obligation
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "documentation"
    ..... value[x] 1..1 markdown Value of extension
    .... extension:usage 0..* Extension Qualifies the usage - jurisdiction, gender, workflow status etc
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "usage"
    ..... value[x] 1..1 UsageContext Value of extension
    .... extension:filter 0..1 Extension Limits obligation to some repeats by FHIRPath
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "filter"
    ..... value[x] 1..1 string Value of extension
    .... extension:filterDocumentation 0..1 Extension Describes the intent of the filter (short)
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "filterDocumentation"
    ..... value[x] 1..1 string Value of extension
    .... extension:process 0..* Extension The obligation only applies when performing the indicated process
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "process"
    ..... value[x] 1..1 Value of extension
    ...... valueCanonical canonical(OperationDefinition)
    ...... valueUri uri
    ... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/obligation"

    doco Documentation for this format

    This structure is derived from Extension

    Summary

    Complex Extension: When appearing on an element, documents obligations that apply to applications implementing that element. When appearing at the root of a StructureDefinition, indicates obligations that apply to all listed elements within the extension. When appearing on a type, indicates obligations that apply to the use of that specific type. The obligations relate to application behaviour, not the content of the element itself in the resource instances that contain this element. See the Obligation page in the core specification for further detail.

    • code: code: A code that describes the obligation(s) that apply to implementing applications.
    • elementId: string: An Extension
    • actor: canonical: Actor(s) to which the obligation applies.
    • documentation: markdown: Human readable documentation of the purpose or application of the obligation.
    • usage: UsageContext: Qualifies the usage of the obligation. Typically obligations are qualified by jurisdiction, but they may also be qualified by gender, workflow status, clinical domain etc. The information to decide whether a usege context applies is usually outside the resource, determined by context, and this might present challenges for validation tooling. An expected use: limiting obligations to particular jurisdictions (e.g. in IPS).
    • filter: string: A FHIRPath expression that restricts to the obligation to only those occurrences of the element that fall into the collection defined by the expression.
    • filterDocumentation: string: Documents the FHIRPath expression for the benefit of users who are not familiar with FHIRPath.
    • process: canonical, uri: A process that the obligation applies to. This might a canonical URL for an OperationDefinition, or a uri that refers to some externally defined process such as a section within an IG.

    Maturity: 1

    Differential View

    This structure is derived from Extension

    NameFlagsCard.TypeDescription & Constraintsdoco
    .. Extension 0..* Extension Obligations for applications using element/in model
    ... Slices for extension Content/Rules for all slices
    .... extension:code 1..* Extension Composite code describing the nature of the obligation
    ..... extension 0..0
    ..... url 1..1 uri "code"
    ..... value[x] 1..1 code Value of extension
    Binding: ObligationCodesVS (required): Codes, potentially a combination code, that describe an obligation that applies to implementing applications

    .... extension:elementId 0..* Extension When the obligation is on the profile itself, not a particular element, a list of elements to which it applies
    ..... extension 0..0
    ..... url 1..1 uri "elementId"
    ..... value[x] 1..1 string Value of extension
    .... extension:actor 0..* Extension Actor(s) this obligation applies to (all actors if none)
    ..... extension 0..0
    ..... url 1..1 uri "actor"
    ..... value[x] 1..1 canonical(ActorDefinition) Value of extension
    .... extension:documentation 0..1 Extension Documentation of the purpose or application of the obligation
    ..... extension 0..0
    ..... url 1..1 uri "documentation"
    ..... value[x] 1..1 markdown Value of extension
    .... extension:usage 0..* Extension Qualifies the usage - jurisdiction, gender, workflow status etc
    ..... extension 0..0
    ..... url 1..1 uri "usage"
    ..... value[x] 1..1 UsageContext Value of extension
    .... extension:filter 0..1 Extension Limits obligation to some repeats by FHIRPath
    ..... extension 0..0
    ..... url 1..1 uri "filter"
    ..... value[x] 1..1 string Value of extension
    .... extension:filterDocumentation 0..1 Extension Describes the intent of the filter (short)
    ..... extension 0..0
    ..... url 1..1 uri "filterDocumentation"
    ..... value[x] 1..1 string Value of extension
    .... extension:process 0..* Extension The obligation only applies when performing the indicated process
    ..... extension 0..0
    ..... url 1..1 uri "process"
    ..... value[x] 1..1 Value of extension
    ...... valueCanonical canonical(OperationDefinition)
    ...... valueUri uri
    ... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/obligation"
    ... value[x] 0..0

    doco Documentation for this format

    Snapshot View

    NameFlagsCard.TypeDescription & Constraintsdoco
    .. Extension 0..* Extension Obligations for applications using element/in model
    ... id 0..1 id Unique id for inter-element referencing
    ... Slices for extension 1..* Extension Additional content defined by implementations
    Slice: Unordered, Open by value:url
    .... extension:code 1..* Extension Composite code describing the nature of the obligation
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "code"
    ..... value[x] 1..1 code Value of extension
    Binding: ObligationCodesVS (required): Codes, potentially a combination code, that describe an obligation that applies to implementing applications

    .... extension:elementId 0..* Extension When the obligation is on the profile itself, not a particular element, a list of elements to which it applies
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "elementId"
    ..... value[x] 1..1 string Value of extension
    .... extension:actor 0..* Extension Actor(s) this obligation applies to (all actors if none)
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "actor"
    ..... value[x] 1..1 canonical(ActorDefinition) Value of extension
    .... extension:documentation 0..1 Extension Documentation of the purpose or application of the obligation
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "documentation"
    ..... value[x] 1..1 markdown Value of extension
    .... extension:usage 0..* Extension Qualifies the usage - jurisdiction, gender, workflow status etc
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "usage"
    ..... value[x] 1..1 UsageContext Value of extension
    .... extension:filter 0..1 Extension Limits obligation to some repeats by FHIRPath
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "filter"
    ..... value[x] 1..1 string Value of extension
    .... extension:filterDocumentation 0..1 Extension Describes the intent of the filter (short)
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "filterDocumentation"
    ..... value[x] 1..1 string Value of extension
    .... extension:process 0..* Extension The obligation only applies when performing the indicated process
    ..... id 0..1 id Unique id for inter-element referencing
    ..... extension 0..0
    ..... url 1..1 uri "process"
    ..... value[x] 1..1 Value of extension
    ...... valueCanonical canonical(OperationDefinition)
    ...... valueUri uri
    ... url 1..1 uri "http://hl7.org/fhir/StructureDefinition/obligation"

    doco Documentation for this format

     

    Other representations of profile: CSV, Excel, Schematron

    Terminology Bindings

    PathConformanceValueSetURI
    Extension.extension:code.value[x]requiredObligationCodesVS
    http://hl7.org/fhir/ValueSet/obligation
    from this IG

    Constraints

    IdGradePath(s)DetailsRequirements
    ele-1error**ALL** elementsAll FHIR elements must have a @value or children
    : hasValue() or (children().count() > id.count())
    ext-1error**ALL** extensionsMust have either extensions or value[x], not both
    : extension.exists() != value.exists()

    Search Parameters for this Extension

    (none found)