International Patient Summary Implementation Guide
1.0.0 - STU 1

This page is part of the International Patient Summary Implementation Guide (v1.0.0: STU 1) based on FHIR R4. The current version which supercedes this version is 1.1.0. For a full list of available versions, see the Directory of published versions

StructureDefinition: ProcedureUvIps

This profile represents the constraints applied to the Procedure resource by the IPS project, which specifies an entry of the History of Procedure for the international patient summary based on the FHIR standard R4.

The official URL for this profile is:

http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips

Formal Views of Profile Content

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

This structure is derived from Procedure

Summary

Mandatory: 3 elements
Must-Support: 8 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Procedure.code is sliced based on the value of pattern:$this

This structure is derived from Procedure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure S0..*ProcedureAn action that is being or was performed on a patient
... status S1..1codepreparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
... code S1..1(Slice Definition)Concept - reference to a terminology or just text
Slice: Unordered, Open by pattern:$this
Binding: Procedures - IPS (preferred)
.... code:absentOrUnknownProcedure S0..1CodeableConceptIPSCode for absent problem or for unknown procedure
Binding: Absent or Unknown Procedures - IPS (required)
... subject S1..1Reference(Patient (IPS))Who the procedure was performed on
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL
.... data-absent-reason S0..1codeperformed[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
... asserter 0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)Person who asserts this procedure
... performer 0..*BackboneElementThe people who performed the procedure
.... actor 1..1Reference(Patient (IPS) | RelatedPerson | Device (performer, observer) | Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS))The reference to the practitioner
.... onBehalfOf 0..1Reference(Organization (IPS))Organization the device or practitioner was acting for
... bodySite S0..*CodeableConceptIPSConcept - reference to a terminology or just text
Binding: SNOMEDCTBodyStructures (example)

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure SI0..*ProcedureAn action that is being or was performed on a patient
... id Σ0..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... identifier ΣI0..*IdentifierExternal Identifiers for this procedure
... instantiatesCanonical ΣI0..*canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire)Instantiates FHIR protocol or definition
... instantiatesUri ΣI0..*uriInstantiates external protocol or definition
... basedOn ΣI0..*Reference(CarePlan | ServiceRequest)A request for this procedure
... partOf ΣI0..*Reference(Procedure | Observation | MedicationAdministration)Part of referenced event
... status ?!SΣI1..1codepreparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required)
... statusReason ΣI0..1CodeableConceptReason for current status
Binding: ProcedureNotPerformedReason(SNOMED-CT) (example)
... category ΣI0..1CodeableConceptClassification of the procedure
Binding: ProcedureCategoryCodes(SNOMEDCT) (example)
... code SΣI1..1(Slice Definition)Concept - reference to a terminology or just text
Slice: Unordered, Open by pattern:$this
Binding: Procedures - IPS (preferred)
.... code:absentOrUnknownProcedure SI0..1CodeableConceptIPSCode for absent problem or for unknown procedure
Binding: Absent or Unknown Procedures - IPS (required)
... subject SΣI1..1Reference(Patient (IPS))Who the procedure was performed on
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... encounter ΣI0..1Reference(Encounter)Encounter created as part of
... performed[x] SΣI1..1When the procedure was performed
.... performed[x]:All Types Content/Rules for all Types
..... id 0..1stringUnique id for inter-element referencing
..... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... data-absent-reason SI0..1codeperformed[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
.... performedDateTimedateTime
.... performedPeriodPeriod
.... performedStringstring
.... performedAgeAge
.... performedRangeRange
... recorder ΣI0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)Who recorded the procedure
... asserter ΣI0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)Person who asserts this procedure
... performer ΣI0..*BackboneElementThe people who performed the procedure
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... function ΣI0..1CodeableConceptType of performance
Binding: ProcedurePerformerRoleCodes (example)
.... actor ΣI1..1Reference(Patient (IPS) | RelatedPerson | Device (performer, observer) | Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS))The reference to the practitioner
.... onBehalfOf I0..1Reference(Organization (IPS))Organization the device or practitioner was acting for
... location ΣI0..1Reference(Location)Where the procedure happened
... reasonCode ΣI0..*CodeableConceptCoded reason procedure performed
Binding: ProcedureReasonCodes (example)
... reasonReference ΣI0..*Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference)The justification that the procedure was performed
... bodySite SI0..*CodeableConceptIPSConcept - reference to a terminology or just text
Binding: SNOMEDCTBodyStructures (example)
... outcome ΣI0..1CodeableConceptThe result of procedure
Binding: ProcedureOutcomeCodes(SNOMEDCT) (example)
... report I0..*Reference(DiagnosticReport | DocumentReference | Composition)Any report resulting from the procedure
... complication I0..*CodeableConceptComplication following the procedure
Binding: Condition/Problem/DiagnosisCodes (example)
... complicationDetail I0..*Reference(Condition)A condition that is a result of the procedure
... followUp I0..*CodeableConceptInstructions for follow up
Binding: ProcedureFollowUpCodes(SNOMEDCT) (example)
... note I0..*AnnotationAdditional information about the procedure
... focalDevice I0..*BackboneElementManipulated, implanted, or removed device
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... action I0..1CodeableConceptKind of change to device
Binding: ProcedureDeviceActionCodes (preferred)
.... manipulated I1..1Reference(Device)Device that was changed
... usedReference I0..*Reference(Device | Medication | Substance)Items used during procedure
... usedCode I0..*CodeableConceptCoded items used during the procedure
Binding: FHIRDeviceTypes (example)

doco Documentation for this format

This structure is derived from Procedure

Summary

Mandatory: 3 elements
Must-Support: 8 elements

Structures

This structure refers to these other structures:

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Procedure.code is sliced based on the value of pattern:$this

Differential View

This structure is derived from Procedure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure S0..*ProcedureAn action that is being or was performed on a patient
... status S1..1codepreparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
... code S1..1(Slice Definition)Concept - reference to a terminology or just text
Slice: Unordered, Open by pattern:$this
Binding: Procedures - IPS (preferred)
.... code:absentOrUnknownProcedure S0..1CodeableConceptIPSCode for absent problem or for unknown procedure
Binding: Absent or Unknown Procedures - IPS (required)
... subject S1..1Reference(Patient (IPS))Who the procedure was performed on
.... reference S1..1stringLiteral reference, Relative, internal or absolute URL
.... data-absent-reason S0..1codeperformed[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
... asserter 0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)Person who asserts this procedure
... performer 0..*BackboneElementThe people who performed the procedure
.... actor 1..1Reference(Patient (IPS) | RelatedPerson | Device (performer, observer) | Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS))The reference to the practitioner
.... onBehalfOf 0..1Reference(Organization (IPS))Organization the device or practitioner was acting for
... bodySite S0..*CodeableConceptIPSConcept - reference to a terminology or just text
Binding: SNOMEDCTBodyStructures (example)

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Procedure SI0..*ProcedureAn action that is being or was performed on a patient
... id Σ0..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... identifier ΣI0..*IdentifierExternal Identifiers for this procedure
... instantiatesCanonical ΣI0..*canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire)Instantiates FHIR protocol or definition
... instantiatesUri ΣI0..*uriInstantiates external protocol or definition
... basedOn ΣI0..*Reference(CarePlan | ServiceRequest)A request for this procedure
... partOf ΣI0..*Reference(Procedure | Observation | MedicationAdministration)Part of referenced event
... status ?!SΣI1..1codepreparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required)
... statusReason ΣI0..1CodeableConceptReason for current status
Binding: ProcedureNotPerformedReason(SNOMED-CT) (example)
... category ΣI0..1CodeableConceptClassification of the procedure
Binding: ProcedureCategoryCodes(SNOMEDCT) (example)
... code SΣI1..1(Slice Definition)Concept - reference to a terminology or just text
Slice: Unordered, Open by pattern:$this
Binding: Procedures - IPS (preferred)
.... code:absentOrUnknownProcedure SI0..1CodeableConceptIPSCode for absent problem or for unknown procedure
Binding: Absent or Unknown Procedures - IPS (required)
... subject SΣI1..1Reference(Patient (IPS))Who the procedure was performed on
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference SΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... encounter ΣI0..1Reference(Encounter)Encounter created as part of
... performed[x] SΣI1..1When the procedure was performed
.... performed[x]:All Types Content/Rules for all Types
..... id 0..1stringUnique id for inter-element referencing
..... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... data-absent-reason SI0..1codeperformed[x] absence reason
URL: http://hl7.org/fhir/StructureDefinition/data-absent-reason
Binding: DataAbsentReason (required)
.... performedDateTimedateTime
.... performedPeriodPeriod
.... performedStringstring
.... performedAgeAge
.... performedRangeRange
... recorder ΣI0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)Who recorded the procedure
... asserter ΣI0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole)Person who asserts this procedure
... performer ΣI0..*BackboneElementThe people who performed the procedure
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... function ΣI0..1CodeableConceptType of performance
Binding: ProcedurePerformerRoleCodes (example)
.... actor ΣI1..1Reference(Patient (IPS) | RelatedPerson | Device (performer, observer) | Practitioner (IPS) | PractitionerRole (IPS) | Organization (IPS))The reference to the practitioner
.... onBehalfOf I0..1Reference(Organization (IPS))Organization the device or practitioner was acting for
... location ΣI0..1Reference(Location)Where the procedure happened
... reasonCode ΣI0..*CodeableConceptCoded reason procedure performed
Binding: ProcedureReasonCodes (example)
... reasonReference ΣI0..*Reference(Condition | Observation | Procedure | DiagnosticReport | DocumentReference)The justification that the procedure was performed
... bodySite SI0..*CodeableConceptIPSConcept - reference to a terminology or just text
Binding: SNOMEDCTBodyStructures (example)
... outcome ΣI0..1CodeableConceptThe result of procedure
Binding: ProcedureOutcomeCodes(SNOMEDCT) (example)
... report I0..*Reference(DiagnosticReport | DocumentReference | Composition)Any report resulting from the procedure
... complication I0..*CodeableConceptComplication following the procedure
Binding: Condition/Problem/DiagnosisCodes (example)
... complicationDetail I0..*Reference(Condition)A condition that is a result of the procedure
... followUp I0..*CodeableConceptInstructions for follow up
Binding: ProcedureFollowUpCodes(SNOMEDCT) (example)
... note I0..*AnnotationAdditional information about the procedure
... focalDevice I0..*BackboneElementManipulated, implanted, or removed device
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... action I0..1CodeableConceptKind of change to device
Binding: ProcedureDeviceActionCodes (preferred)
.... manipulated I1..1Reference(Device)Device that was changed
... usedReference I0..*Reference(Device | Medication | Substance)Items used during procedure
... usedCode I0..*CodeableConceptCoded items used during the procedure
Binding: FHIRDeviceTypes (example)

doco Documentation for this format

 

Other representations of profile: Schematron

Terminology Bindings

Terminology Bindings

PathConformanceValueSet
Procedure.languagepreferredCommonLanguages
Max Binding: AllLanguages
Procedure.statusrequiredEventStatus
Procedure.statusReasonexampleProcedureNotPerformedReason(SNOMED-CT)
Procedure.categoryexampleProcedureCategoryCodes(SNOMEDCT)
Procedure.codepreferredProceduresUvIps
Procedure.code:absentOrUnknownProcedurerequiredNoProceduresInfoUvIps
Procedure.subject.typeextensibleResourceType
Procedure.performer.functionexampleProcedurePerformerRoleCodes
Procedure.reasonCodeexampleProcedureReasonCodes
Procedure.bodySiteexampleSNOMEDCTBodyStructures
Procedure.outcomeexampleProcedureOutcomeCodes(SNOMEDCT)
Procedure.complicationexampleCondition/Problem/DiagnosisCodes
Procedure.followUpexampleProcedureFollowUpCodes(SNOMEDCT)
Procedure.focalDevice.actionpreferredProcedureDeviceActionCodes
Procedure.usedCodeexampleFHIRDeviceTypes

Constraints

Constraints

IdPathDetailsRequirements
dom-2ProcedureIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3ProcedureIf 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4ProcedureIf 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-5ProcedureIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6ProcedureA resource should have narrative for robust management
: text.`div`.exists()
ele-1Procedure.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Procedure.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Procedure.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Procedure.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Procedure.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.instantiatesCanonicalAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.instantiatesUriAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.basedOnAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.partOfAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.statusReasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.code:absentOrUnknownProcedureAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.subjectAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.subject.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Procedure.subject.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Procedure.subject.referenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.subject.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.subject.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.subject.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.encounterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.performed[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.performed[x].extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Procedure.performed[x].extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Procedure.performed[x].extension:data-absent-reasonAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Procedure.performed[x].extension:data-absent-reasonMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Procedure.recorderAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.asserterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.performerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.performer.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Procedure.performer.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Procedure.performer.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Procedure.performer.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Procedure.performer.functionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.performer.actorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.performer.onBehalfOfAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.locationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.reasonCodeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.reasonReferenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.bodySiteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.outcomeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.reportAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.complicationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.complicationDetailAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.followUpAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.noteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.focalDeviceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.focalDevice.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Procedure.focalDevice.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Procedure.focalDevice.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1Procedure.focalDevice.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1Procedure.focalDevice.actionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.focalDevice.manipulatedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.usedReferenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1Procedure.usedCodeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())