FHIR Extensions Pack
5.1.0-ballot1 - Ballot for Release 5.1.0 International flag

This page is part of the FHIR Core Extensions Registry (v5.1.0-ballot: Releases Ballot 4) based on FHIR (HL7® FHIR® Standard) v5.0.0. The current version which supersedes this version is 1.0.0. For a full list of available versions, see the Directory of published versions

Extension: Obligation Extension (Experimental)

Official URL: http://hl7.org/fhir/StructureDefinition/obligation Version: 5.1.0-ballot1
Standards status: Draft Maturity Level: 1 Computable Name: Obligation

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, 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..*ExtensionObligations for applications using element/in model
    ... extension:code 1..*ExtensionComposite code describing the nature of the obligation
    .... extension 0..0
    .... url 1..1uri"code"
    .... value[x] 1..1codeValue of extension
    Binding: ObligationCodesVS (required): Codes, potentially a combination code, that describe an obligation that applies to implementing applications

    ... extension:elementId 0..*ExtensionWhen the obligation is on the profile itself, not a particular element, a list of elements to which it applies
    .... extension 0..0
    .... url 1..1uri"elementId"
    .... value[x] 1..1stringValue of extension
    ... extension:actor 0..*ExtensionActor(s) this obligation applies to (all actors if none)
    .... extension 0..0
    .... url 1..1uri"actor"
    .... value[x] 1..1canonical(ActorDefinition)Value of extension
    .... extension 0..0
    .... url 1..1uri"documentation"
    .... value[x] 1..1markdownValue of extension
    ... extension:usage 0..*ExtensionQualifies the usage - jurisdiction, gender, workflow status etc
    .... extension 0..0
    .... url 1..1uri"usage"
    .... value[x] 1..1UsageContextValue of extension
    ... extension:filter 0..1ExtensionLimits obligation to some repeats by FHIRPath
    .... extension 0..0
    .... url 1..1uri"filter"
    .... value[x] 1..1stringValue of extension
    ... extension:filterDocumentation 0..1ExtensionDescribes the intent of the filter (short)
    .... extension 0..0
    .... url 1..1uri"filterDocumentation"
    .... value[x] 1..1stringValue of extension
    ... extension:process 0..*ExtensionThe obligation only applies when performing the indicated process
    .... extension 0..0
    .... url 1..1uri"process"
    .... value[x] 1..1Value of extension
    ..... valueCanonicalcanonical(OperationDefinition)
    ..... valueUriuri
    ... url 1..1uri"http://hl7.org/fhir/StructureDefinition/obligation"
    ... value[x] 0..0

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

    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"elementId"
    .... value[x] 1..1stringValue of extension
    ... extension:actor 0..*ExtensionActor(s) this obligation applies to (all actors if none)
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"actor"
    .... value[x] 1..1canonical(ActorDefinition)Value of extension
    ... extension:documentation 0..1ExtensionDocumentation of the purpose or application of the obligation
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"documentation"
    .... value[x] 1..1markdownValue of extension
    ... extension:usage 0..*ExtensionQualifies the usage - jurisdiction, gender, workflow status etc
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"usage"
    .... value[x] 1..1UsageContextValue of extension
    ... extension:filter 0..1ExtensionLimits obligation to some repeats by FHIRPath
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"filter"
    .... value[x] 1..1stringValue of extension
    ... extension:filterDocumentation 0..1ExtensionDescribes the intent of the filter (short)
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"filterDocumentation"
    .... value[x] 1..1stringValue of extension
    ... extension:process 0..*ExtensionThe obligation only applies when performing the indicated process
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"process"
    .... value[x] 1..1Value of extension
    ..... valueCanonicalcanonical(OperationDefinition)
    ..... valueUriuri
    ... url 1..1uri"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..*ExtensionObligations for applications using element/in model
    ... extension:code 1..*ExtensionComposite code describing the nature of the obligation
    .... extension 0..0
    .... url 1..1uri"code"
    .... value[x] 1..1codeValue of extension
    Binding: ObligationCodesVS (required): Codes, potentially a combination code, that describe an obligation that applies to implementing applications

    ... extension:elementId 0..*ExtensionWhen the obligation is on the profile itself, not a particular element, a list of elements to which it applies
    .... extension 0..0
    .... url 1..1uri"elementId"
    .... value[x] 1..1stringValue of extension
    ... extension:actor 0..*ExtensionActor(s) this obligation applies to (all actors if none)
    .... extension 0..0
    .... url 1..1uri"actor"
    .... value[x] 1..1canonical(ActorDefinition)Value of extension
    .... extension 0..0
    .... url 1..1uri"documentation"
    .... value[x] 1..1markdownValue of extension
    ... extension:usage 0..*ExtensionQualifies the usage - jurisdiction, gender, workflow status etc
    .... extension 0..0
    .... url 1..1uri"usage"
    .... value[x] 1..1UsageContextValue of extension
    ... extension:filter 0..1ExtensionLimits obligation to some repeats by FHIRPath
    .... extension 0..0
    .... url 1..1uri"filter"
    .... value[x] 1..1stringValue of extension
    ... extension:filterDocumentation 0..1ExtensionDescribes the intent of the filter (short)
    .... extension 0..0
    .... url 1..1uri"filterDocumentation"
    .... value[x] 1..1stringValue of extension
    ... extension:process 0..*ExtensionThe obligation only applies when performing the indicated process
    .... extension 0..0
    .... url 1..1uri"process"
    .... value[x] 1..1Value of extension
    ..... valueCanonicalcanonical(OperationDefinition)
    ..... valueUriuri
    ... url 1..1uri"http://hl7.org/fhir/StructureDefinition/obligation"
    ... value[x] 0..0

    doco Documentation for this format

    Snapshot View

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

    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"elementId"
    .... value[x] 1..1stringValue of extension
    ... extension:actor 0..*ExtensionActor(s) this obligation applies to (all actors if none)
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"actor"
    .... value[x] 1..1canonical(ActorDefinition)Value of extension
    ... extension:documentation 0..1ExtensionDocumentation of the purpose or application of the obligation
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"documentation"
    .... value[x] 1..1markdownValue of extension
    ... extension:usage 0..*ExtensionQualifies the usage - jurisdiction, gender, workflow status etc
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"usage"
    .... value[x] 1..1UsageContextValue of extension
    ... extension:filter 0..1ExtensionLimits obligation to some repeats by FHIRPath
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"filter"
    .... value[x] 1..1stringValue of extension
    ... extension:filterDocumentation 0..1ExtensionDescribes the intent of the filter (short)
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"filterDocumentation"
    .... value[x] 1..1stringValue of extension
    ... extension:process 0..*ExtensionThe obligation only applies when performing the indicated process
    .... id 0..1idUnique id for inter-element referencing
    .... extension 0..0
    .... url 1..1uri"process"
    .... value[x] 1..1Value of extension
    ..... valueCanonicalcanonical(OperationDefinition)
    ..... valueUriuri
    ... url 1..1uri"http://hl7.org/fhir/StructureDefinition/obligation"

    doco Documentation for this format

     

    Other representations of profile: CSV, Excel, Schematron

    Terminology Bindings

    PathConformanceValueSet
    Extension.extension:code.value[x]requiredObligationCodesVS

    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)