FHIR Tooling Extensions IG
0.1.0 - Release International flag

This page is part of the current release of the HL7 Tools Extension IG (v0.1.0: Releases - Informative) based on FHIR (HL7® FHIR® Standard) v5.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/tools/StructureDefinition/obligation Version: 0.1.0
Standards status: Deprecated Maturity Level: 3 Computable Name: Obligation

This definition is deprecated in favor of the same extension in the core extensions pack. Documents obligations that apply to applications implementing this element. The obligations relate to application behaviour, not the content of the element itself in the resource instances that contain this element. See Obligation Extension 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

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 definition is deprecated in favor of the same extension in the core extensions pack. Documents obligations that apply to applications implementing this element. The obligations relate to application behaviour, not the content of the element itself in the resource instances that contain this element. See Obligation Extension for further detail.

  • code: code: A code that describes the obligations 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 one of a set of repeats.
  • filterDocumentation: string: Documents the FHIRPath expression for the benefit of users who are not familiar with FHIRPath.
  • process: code: A process that the obligation applies to. This might a canonical URL for an OperationDefiniti on, or some other reference.

Maturity: 3

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionDocuments obligations for applications making use of this element
... extension:code 1..1ExtensionComposite 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..1ExtensionDdescribes 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..1codeValue of extension
... url 1..1uri"http://hl7.org/fhir/tools/StructureDefinition/obligation"
... value[x] 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionDocuments obligations for applications making use of this element
... 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..1ExtensionComposite 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..1ExtensionDdescribes 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..1codeValue of extension
... url 1..1uri"http://hl7.org/fhir/tools/StructureDefinition/obligation"

doco Documentation for this format

This structure is derived from Extension

Summary

Complex Extension: This definition is deprecated in favor of the same extension in the core extensions pack. Documents obligations that apply to applications implementing this element. The obligations relate to application behaviour, not the content of the element itself in the resource instances that contain this element. See Obligation Extension for further detail.

  • code: code: A code that describes the obligations 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 one of a set of repeats.
  • filterDocumentation: string: Documents the FHIRPath expression for the benefit of users who are not familiar with FHIRPath.
  • process: code: A process that the obligation applies to. This might a canonical URL for an OperationDefiniti on, or some other reference.

Maturity: 3

Differential View

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionDocuments obligations for applications making use of this element
... extension:code 1..1ExtensionComposite 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..1ExtensionDdescribes 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..1codeValue of extension
... url 1..1uri"http://hl7.org/fhir/tools/StructureDefinition/obligation"
... value[x] 0..0

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionDocuments obligations for applications making use of this element
... 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..1ExtensionComposite 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..1ExtensionDdescribes 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..1codeValue of extension
... url 1..1uri"http://hl7.org/fhir/tools/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()