HL7中国FHIR Connectathon测试实施指南
2025.3.12 - release

HL7中国FHIR Connectathon测试实施指南 - Local Development build (v2025.3.12) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: 手术

官方URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/cn-operation 版本: 2025.3.12
Draft as of 2025-03-11 机读名称: CNOperation

手术是指医疗机构及其医务人员以诊断或治疗疾病为目的,在人体局部开展去除病变组织、修复损伤、重建形态或功能、移植细胞组织或器官、植入医疗器械等医学操作的医疗技术。FHIR Procedure除用于记录和表达手术外,还可用于表达长期护理、咨询、催眠治疗等由专业人员提供的专业服务。因此,针对较“操作”而言更为狭义的“手术”,对FHIR Procedure定义了Profile,仅用于表达手术,记录手术事件,手术申请应使用ServiceRequest及其衍生资源进行表达。

Usage:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure 0..* Procedure An action that is being or was performed on an individual or entity
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:cnsurgicalIncisionCategory S 0..1 Coding 中国标准手术切口类别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-incision-category
Binding: 手术切口类别值集 (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:cnsurgicalLevel S 0..1 Coding 中国标准手术级别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-level
Binding: 手术级别值集 (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:cnbloodLoss S 0..1 decimal 手术出血量(ml)
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-bloodLoss
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... status ?!Σ 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): A code specifying the state of the procedure.


ele-1: All FHIR elements must have a @value or children
... subject Σ 1..1 Reference(Patient | Group | Device | Practitioner | Organization | Location) Individual or entity the procedure was performed on
ele-1: All FHIR elements must have a @value or children
... Slices for performer ΣC 1..* BackboneElement Who performed the procedure and what they did
Slice: Unordered, Open by value:function.text
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
.... performer:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:operator ΣC 1..1 BackboneElement 主刀
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:1stAssistant ΣC 0..1 BackboneElement I助
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:2ndAssistant ΣC 0..1 BackboneElement II助
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:circulatingNurse ΣC 0..1 BackboneElement 巡回
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:scrubNurse ΣC 0..1 BackboneElement 器械
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Procedure.statusrequiredEventStatus
http://hl7.org/fhir/ValueSet/event-status|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorProcedureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorProcedureIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorProcedureIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorProcedureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceProcedureA resource should have narrative for robust management
: text.`div`.exists()
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()
prc-1errorProcedure.performer, Procedure.performer:operator, Procedure.performer:1stAssistant, Procedure.performer:2ndAssistant, Procedure.performer:circulatingNurse, Procedure.performer:scrubNurseProcedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
: onBehalfOf.exists() and actor.resolve().exists() implies actor.resolve().where($this is Practitioner or $this is PractitionerRole).empty()

该结构继承自 Procedure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure 0..* Procedure An action that is being or was performed on an individual or entity
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:cnsurgicalIncisionCategory S 0..1 Coding 中国标准手术切口类别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-incision-category
Binding: 手术切口类别值集 (required)
.... extension:cnsurgicalLevel S 0..1 Coding 中国标准手术级别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-level
Binding: 手术级别值集 (required)
.... extension:cnbloodLoss S 0..1 decimal 手术出血量(ml)
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-bloodLoss
... Slices for performer 1..* BackboneElement Who performed the procedure and what they did
Slice: Unordered, Open by value:function.text
.... performer:operator 1..1 BackboneElement 主刀
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: 主刀医师
.... performer:1stAssistant 0..1 BackboneElement I助
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: I助
.... performer:2ndAssistant 0..1 BackboneElement II助
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: II助
.... performer:circulatingNurse 0..1 BackboneElement 巡回
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: 巡回护士
.... performer:scrubNurse 0..1 BackboneElement 器械
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: 器械护士

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure 0..* Procedure An action that is being or was performed on an individual or entity
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

Additional BindingsPurpose
CommonLanguages Starter Set
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:cnsurgicalIncisionCategory S 0..1 Coding 中国标准手术切口类别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-incision-category
Binding: 手术切口类别值集 (required)
.... extension:cnsurgicalLevel S 0..1 Coding 中国标准手术级别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-level
Binding: 手术级别值集 (required)
.... extension:cnbloodLoss S 0..1 decimal 手术出血量(ml)
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-bloodLoss
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Identifiers for this procedure
... instantiatesCanonical Σ 0..* canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn Σ 0..* Reference(CarePlan | ServiceRequest) A request for this procedure
... partOf Σ 0..* Reference(Procedure | Observation | MedicationAdministration) Part of referenced event
... status ?!Σ 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): A code specifying the state of the procedure.

... statusReason Σ 0..1 CodeableConcept Reason for current status
Binding: ProcedureNotPerformedReasonSNOMEDCT (example): A code that identifies the reason a procedure was not performed.

... category Σ 0..* CodeableConcept Classification of the procedure
Binding: ProcedureCategoryCodesSNOMEDCT (example): A code that classifies a procedure for searching, sorting and display purposes.


... code Σ 0..1 CodeableConcept Identification of the procedure
Binding: ProcedureCodesSNOMEDCT (example): A code to identify a specific procedure .

... subject Σ 1..1 Reference(Patient | Group | Device | Practitioner | Organization | Location) Individual or entity the procedure was performed on
... focus Σ 0..1 Reference(Patient | Group | RelatedPerson | Practitioner | Organization | CareTeam | PractitionerRole | Specimen) Who is the target of the procedure when it is not the subject of record only
... encounter Σ 0..1 Reference(Encounter) The Encounter during which this Procedure was created
... occurrence[x] Σ 0..1 When the procedure occurred or is occurring
.... occurrenceDateTime dateTime
.... occurrencePeriod Period
.... occurrenceString string
.... occurrenceAge Age
.... occurrenceRange Range
.... occurrenceTiming Timing
... recorded Σ 0..1 dateTime When the procedure was first captured in the subject's record
... recorder Σ 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) Who recorded the procedure
... reported[x] Σ 0..1 Reported rather than primary record
.... reportedBoolean boolean
.... reportedReference Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization)
... Slices for performer ΣC 1..* BackboneElement Who performed the procedure and what they did
Slice: Unordered, Open by value:function.text
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
.... performer:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:operator ΣC 1..1 BackboneElement 主刀
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: 主刀医师
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:1stAssistant ΣC 0..1 BackboneElement I助
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: I助
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:2ndAssistant ΣC 0..1 BackboneElement II助
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: II助
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:circulatingNurse ΣC 0..1 BackboneElement 巡回
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: 巡回护士
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:scrubNurse ΣC 0..1 BackboneElement 器械
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: 器械护士
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
... location Σ 0..1 Reference(Location) Where the procedure happened
... reason Σ 0..* CodeableReference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) The justification that the procedure was performed
Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required.


... bodySite Σ 0..* CodeableConcept Target body sites
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts


... outcome Σ 0..1 CodeableConcept The result of procedure
Binding: ProcedureOutcomeCodesSNOMEDCT (example): An outcome of a procedure - whether it was resolved or otherwise.

... report 0..* Reference(DiagnosticReport | DocumentReference | Composition) Any report resulting from the procedure
... complication 0..* CodeableReference(Condition) Complication following the procedure
Binding: ConditionProblemDiagnosisCodes (example): Codes describing complications that resulted from a procedure.


... followUp 0..* CodeableConcept Instructions for follow up
Binding: ProcedureFollowUpCodesSNOMEDCT (example): Specific follow up required for a procedure e.g. removal of sutures.


... note 0..* Annotation Additional information about the procedure
... focalDevice 0..* BackboneElement Manipulated, implanted, or removed device
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... action 0..1 CodeableConcept Kind of change to device
Binding: ProcedureDeviceActionCodes (preferred): A kind of change that happened to the device during the procedure.

.... manipulated 1..1 Reference(Device) Device that was changed
... used 0..* CodeableReference(Device | Medication | Substance | BiologicallyDerivedProduct) Items used during procedure
Binding: DeviceType (example): Codes describing items used during a procedure.


... supportingInfo 0..* Reference(Resource) Extra information relevant to the procedure

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Procedure.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard
Procedure.statusrequiredEventStatus
http://hl7.org/fhir/ValueSet/event-status|5.0.0
from the FHIR Standard
Procedure.statusReasonexampleProcedureNotPerformedReasonSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-not-performed-reason
from the FHIR Standard
Procedure.categoryexampleProcedureCategoryCodesSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-category
from the FHIR Standard
Procedure.codeexampleProcedureCodesSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-code
from the FHIR Standard
Procedure.performer.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:operator.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:1stAssistant.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:2ndAssistant.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:circulatingNurse.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:scrubNurse.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.reasonexampleProcedureReasonCodes
http://hl7.org/fhir/ValueSet/procedure-reason
from the FHIR Standard
Procedure.bodySiteexampleSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
from the FHIR Standard
Procedure.outcomeexampleProcedureOutcomeCodesSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-outcome
from the FHIR Standard
Procedure.complicationexampleConditionProblemDiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard
Procedure.followUpexampleProcedureFollowUpCodesSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-followup
from the FHIR Standard
Procedure.focalDevice.actionpreferredProcedureDeviceActionCodes
http://hl7.org/fhir/ValueSet/device-action
from the FHIR Standard
Procedure.usedexampleDeviceType
http://hl7.org/fhir/ValueSet/device-type
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorProcedureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorProcedureIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorProcedureIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorProcedureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceProcedureA resource should have narrative for robust management
: text.`div`.exists()
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()
prc-1errorProcedure.performer, Procedure.performer:operator, Procedure.performer:1stAssistant, Procedure.performer:2ndAssistant, Procedure.performer:circulatingNurse, Procedure.performer:scrubNurseProcedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
: onBehalfOf.exists() and actor.resolve().exists() implies actor.resolve().where($this is Practitioner or $this is PractitionerRole).empty()

该结构继承自 Procedure

Summary

Mandatory: 2 elements(5 nested mandatory elements)
Must-Support: 3 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Procedure.performer

关键元素视图

NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure 0..* Procedure An action that is being or was performed on an individual or entity
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:cnsurgicalIncisionCategory S 0..1 Coding 中国标准手术切口类别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-incision-category
Binding: 手术切口类别值集 (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:cnsurgicalLevel S 0..1 Coding 中国标准手术级别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-level
Binding: 手术级别值集 (required)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:cnbloodLoss S 0..1 decimal 手术出血量(ml)
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-bloodLoss
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... status ?!Σ 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): A code specifying the state of the procedure.


ele-1: All FHIR elements must have a @value or children
... subject Σ 1..1 Reference(Patient | Group | Device | Practitioner | Organization | Location) Individual or entity the procedure was performed on
ele-1: All FHIR elements must have a @value or children
... Slices for performer ΣC 1..* BackboneElement Who performed the procedure and what they did
Slice: Unordered, Open by value:function.text
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
.... performer:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:operator ΣC 1..1 BackboneElement 主刀
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:1stAssistant ΣC 0..1 BackboneElement I助
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:2ndAssistant ΣC 0..1 BackboneElement II助
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:circulatingNurse ΣC 0..1 BackboneElement 巡回
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children
.... performer:scrubNurse ΣC 0..1 BackboneElement 器械
ele-1: All FHIR elements must have a @value or children
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Procedure.statusrequiredEventStatus
http://hl7.org/fhir/ValueSet/event-status|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorProcedureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorProcedureIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorProcedureIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorProcedureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceProcedureA resource should have narrative for robust management
: text.`div`.exists()
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()
prc-1errorProcedure.performer, Procedure.performer:operator, Procedure.performer:1stAssistant, Procedure.performer:2ndAssistant, Procedure.performer:circulatingNurse, Procedure.performer:scrubNurseProcedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
: onBehalfOf.exists() and actor.resolve().exists() implies actor.resolve().where($this is Practitioner or $this is PractitionerRole).empty()

差异视图

该结构继承自 Procedure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure 0..* Procedure An action that is being or was performed on an individual or entity
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:cnsurgicalIncisionCategory S 0..1 Coding 中国标准手术切口类别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-incision-category
Binding: 手术切口类别值集 (required)
.... extension:cnsurgicalLevel S 0..1 Coding 中国标准手术级别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-level
Binding: 手术级别值集 (required)
.... extension:cnbloodLoss S 0..1 decimal 手术出血量(ml)
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-bloodLoss
... Slices for performer 1..* BackboneElement Who performed the procedure and what they did
Slice: Unordered, Open by value:function.text
.... performer:operator 1..1 BackboneElement 主刀
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: 主刀医师
.... performer:1stAssistant 0..1 BackboneElement I助
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: I助
.... performer:2ndAssistant 0..1 BackboneElement II助
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: II助
.... performer:circulatingNurse 0..1 BackboneElement 巡回
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: 巡回护士
.... performer:scrubNurse 0..1 BackboneElement 器械
..... function
...... text 1..1 string Plain text representation of the concept
Required Pattern: 器械护士

doco Documentation for this format

快照视图

NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure 0..* Procedure An action that is being or was performed on an individual or entity
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

Additional BindingsPurpose
CommonLanguages Starter Set
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:cnsurgicalIncisionCategory S 0..1 Coding 中国标准手术切口类别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-incision-category
Binding: 手术切口类别值集 (required)
.... extension:cnsurgicalLevel S 0..1 Coding 中国标准手术级别
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-surgical-level
Binding: 手术级别值集 (required)
.... extension:cnbloodLoss S 0..1 decimal 手术出血量(ml)
URL: http://hl7.org.cn/fhir/connectathon/StructureDefinition/ext-bloodLoss
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier External Identifiers for this procedure
... instantiatesCanonical Σ 0..* canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn Σ 0..* Reference(CarePlan | ServiceRequest) A request for this procedure
... partOf Σ 0..* Reference(Procedure | Observation | MedicationAdministration) Part of referenced event
... status ?!Σ 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): A code specifying the state of the procedure.

... statusReason Σ 0..1 CodeableConcept Reason for current status
Binding: ProcedureNotPerformedReasonSNOMEDCT (example): A code that identifies the reason a procedure was not performed.

... category Σ 0..* CodeableConcept Classification of the procedure
Binding: ProcedureCategoryCodesSNOMEDCT (example): A code that classifies a procedure for searching, sorting and display purposes.


... code Σ 0..1 CodeableConcept Identification of the procedure
Binding: ProcedureCodesSNOMEDCT (example): A code to identify a specific procedure .

... subject Σ 1..1 Reference(Patient | Group | Device | Practitioner | Organization | Location) Individual or entity the procedure was performed on
... focus Σ 0..1 Reference(Patient | Group | RelatedPerson | Practitioner | Organization | CareTeam | PractitionerRole | Specimen) Who is the target of the procedure when it is not the subject of record only
... encounter Σ 0..1 Reference(Encounter) The Encounter during which this Procedure was created
... occurrence[x] Σ 0..1 When the procedure occurred or is occurring
.... occurrenceDateTime dateTime
.... occurrencePeriod Period
.... occurrenceString string
.... occurrenceAge Age
.... occurrenceRange Range
.... occurrenceTiming Timing
... recorded Σ 0..1 dateTime When the procedure was first captured in the subject's record
... recorder Σ 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole) Who recorded the procedure
... reported[x] Σ 0..1 Reported rather than primary record
.... reportedBoolean boolean
.... reportedReference Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization)
... Slices for performer ΣC 1..* BackboneElement Who performed the procedure and what they did
Slice: Unordered, Open by value:function.text
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
.... performer:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:operator ΣC 1..1 BackboneElement 主刀
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: 主刀医师
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:1stAssistant ΣC 0..1 BackboneElement I助
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: I助
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:2ndAssistant ΣC 0..1 BackboneElement II助
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: II助
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:circulatingNurse ΣC 0..1 BackboneElement 巡回
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: 巡回护士
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
.... performer:scrubNurse ΣC 0..1 BackboneElement 器械
prc-1: Procedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... function Σ 0..1 CodeableConcept Type of performance
Binding: ProcedurePerformerRoleCodes (example): A code that identifies the role of a performer of the procedure.

...... id 0..1 id Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ 0..* Coding Code defined by a terminology system
...... text Σ 1..1 string Plain text representation of the concept
Required Pattern: 器械护士
..... actor ΣC 1..1 Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam | HealthcareService) Who performed the procedure
..... onBehalfOf C 0..1 Reference(Organization) Organization the device or practitioner was acting for
..... period 0..1 Period When the performer performed the procedure
... location Σ 0..1 Reference(Location) Where the procedure happened
... reason Σ 0..* CodeableReference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference) The justification that the procedure was performed
Binding: ProcedureReasonCodes (example): A code that identifies the reason a procedure is required.


... bodySite Σ 0..* CodeableConcept Target body sites
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts


... outcome Σ 0..1 CodeableConcept The result of procedure
Binding: ProcedureOutcomeCodesSNOMEDCT (example): An outcome of a procedure - whether it was resolved or otherwise.

... report 0..* Reference(DiagnosticReport | DocumentReference | Composition) Any report resulting from the procedure
... complication 0..* CodeableReference(Condition) Complication following the procedure
Binding: ConditionProblemDiagnosisCodes (example): Codes describing complications that resulted from a procedure.


... followUp 0..* CodeableConcept Instructions for follow up
Binding: ProcedureFollowUpCodesSNOMEDCT (example): Specific follow up required for a procedure e.g. removal of sutures.


... note 0..* Annotation Additional information about the procedure
... focalDevice 0..* BackboneElement Manipulated, implanted, or removed device
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... action 0..1 CodeableConcept Kind of change to device
Binding: ProcedureDeviceActionCodes (preferred): A kind of change that happened to the device during the procedure.

.... manipulated 1..1 Reference(Device) Device that was changed
... used 0..* CodeableReference(Device | Medication | Substance | BiologicallyDerivedProduct) Items used during procedure
Binding: DeviceType (example): Codes describing items used during a procedure.


... supportingInfo 0..* Reference(Resource) Extra information relevant to the procedure

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Procedure.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard
Procedure.statusrequiredEventStatus
http://hl7.org/fhir/ValueSet/event-status|5.0.0
from the FHIR Standard
Procedure.statusReasonexampleProcedureNotPerformedReasonSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-not-performed-reason
from the FHIR Standard
Procedure.categoryexampleProcedureCategoryCodesSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-category
from the FHIR Standard
Procedure.codeexampleProcedureCodesSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-code
from the FHIR Standard
Procedure.performer.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:operator.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:1stAssistant.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:2ndAssistant.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:circulatingNurse.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.performer:scrubNurse.functionexampleProcedurePerformerRoleCodes
http://hl7.org/fhir/ValueSet/performer-role
from the FHIR Standard
Procedure.reasonexampleProcedureReasonCodes
http://hl7.org/fhir/ValueSet/procedure-reason
from the FHIR Standard
Procedure.bodySiteexampleSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
from the FHIR Standard
Procedure.outcomeexampleProcedureOutcomeCodesSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-outcome
from the FHIR Standard
Procedure.complicationexampleConditionProblemDiagnosisCodes
http://hl7.org/fhir/ValueSet/condition-code
from the FHIR Standard
Procedure.followUpexampleProcedureFollowUpCodesSNOMEDCT
http://hl7.org/fhir/ValueSet/procedure-followup
from the FHIR Standard
Procedure.focalDevice.actionpreferredProcedureDeviceActionCodes
http://hl7.org/fhir/ValueSet/device-action
from the FHIR Standard
Procedure.usedexampleDeviceType
http://hl7.org/fhir/ValueSet/device-type
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorProcedureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorProcedureIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorProcedureIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorProcedureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceProcedureA resource should have narrative for robust management
: text.`div`.exists()
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()
prc-1errorProcedure.performer, Procedure.performer:operator, Procedure.performer:1stAssistant, Procedure.performer:2ndAssistant, Procedure.performer:circulatingNurse, Procedure.performer:scrubNurseProcedure.performer.onBehalfOf can only be populated when performer.actor isn't Practitioner or PractitionerRole
: onBehalfOf.exists() and actor.resolve().exists() implies actor.resolve().where($this is Practitioner or $this is PractitionerRole).empty()

该结构继承自 Procedure

Summary

Mandatory: 2 elements(5 nested mandatory elements)
Must-Support: 3 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Procedure.performer

 

本 Profile 的其它表示法: CSV, Excel, Schematron