QI-Core Implementation Guide
5.0.0-ballot - STU Ballot US

This page is part of the Quality Improvement Core Framework (v5.0.0-ballot: STU 5 Ballot 1) based on FHIR R4. The current version which supercedes this version is 4.1.1. For a full list of available versions, see the Directory of published versions

Extension: Encounter Procedure Extension

Official URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure Version: 5.0.0-ballot
Draft as of 2018-08-22 Computable Name: EncounterProcedureExtension

Procedures performed during the encounter, or as the primary reason for the encounter.

Need to be able to determine whether a given procedure was performed as the primary reason for an encounter, or as a secondary event.

Context of Use

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

  • Encounter
Usage

See the patterns page for implementation and usage patterns.

Examples

Inpatient Admission for Appendicitis

Usage info

Usage:

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

Mandatory: 3 elements
Fixed Value: 4 elements
Prohibited: 1 element

Structures

This structure refers to these other structures:

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionEncounter Procedure Extension
... extension:type 1..1Extensiontype
.... url 1..1uri"type"
.... value[x] 0..1CodeableConceptValue of extension
Binding: QICoreProcedureType (extensible): Whether the procedure was primary or secondary

... extension:rank 1..1Extensionrank
.... url 1..1uri"rank"
.... value[x] 0..1positiveIntValue of extension
... extension:procedure 1..1Extensionprocedure
.... url 1..1uri"procedure"
.... value[x] 0..1Reference(QICoreProcedure)Value of extension
... value[x] 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionEncounter Procedure Extension
... id 0..1stringUnique id for inter-element referencing
... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... extension:type 1..1Extensiontype
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... url 1..1uri"type"
.... value[x] 0..1CodeableConceptValue of extension
Binding: QICoreProcedureType (extensible): Whether the procedure was primary or secondary

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... url 1..1uri"rank"
.... value[x] 0..1positiveIntValue of extension
... extension:procedure 1..1Extensionprocedure
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... url 1..1uri"procedure"
.... value[x] 0..1Reference(QICoreProcedure)Value of extension
... url 1..1uri"http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure"

doco Documentation for this format

This structure is derived from Extension

Summary

Mandatory: 3 elements
Fixed Value: 4 elements
Prohibited: 1 element

Structures

This structure refers to these other structures:

Differential View

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionEncounter Procedure Extension
... extension:type 1..1Extensiontype
.... url 1..1uri"type"
.... value[x] 0..1CodeableConceptValue of extension
Binding: QICoreProcedureType (extensible): Whether the procedure was primary or secondary

... extension:rank 1..1Extensionrank
.... url 1..1uri"rank"
.... value[x] 0..1positiveIntValue of extension
... extension:procedure 1..1Extensionprocedure
.... url 1..1uri"procedure"
.... value[x] 0..1Reference(QICoreProcedure)Value of extension
... value[x] 0..0

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionEncounter Procedure Extension
... id 0..1stringUnique id for inter-element referencing
... Slices for extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
... extension:type 1..1Extensiontype
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... url 1..1uri"type"
.... value[x] 0..1CodeableConceptValue of extension
Binding: QICoreProcedureType (extensible): Whether the procedure was primary or secondary

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... url 1..1uri"rank"
.... value[x] 0..1positiveIntValue of extension
... extension:procedure 1..1Extensionprocedure
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... url 1..1uri"procedure"
.... value[x] 0..1Reference(QICoreProcedure)Value of extension
... url 1..1uri"http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-encounter-procedure"

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
Extension.extension:type.value[x]extensibleQICoreProcedureType

Constraints

IdGradePathDetailsRequirements
ele-1errorExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:typeMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:type.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:type.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:type.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorExtension.extension:rankAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:rankMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:rank.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:rank.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:rank.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorExtension.extension:procedureAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:procedureMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:procedure.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorExtension.extension:procedure.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorExtension.extension:procedure.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())