Class Procedure
- java.lang.Object
-
- org.linuxforhealth.fhir.model.visitor.AbstractVisitable
-
- org.linuxforhealth.fhir.model.resource.Resource
-
- org.linuxforhealth.fhir.model.resource.DomainResource
-
- org.linuxforhealth.fhir.model.resource.Procedure
-
- All Implemented Interfaces:
Visitable
@Generated("org.linuxforhealth.fhir.tools.CodeGenerator") public class Procedure extends DomainResource
An action that is or was performed on or for a patient. This can be a physical intervention like an operation, or less invasive like long term services, counseling, or hypnotherapy.Maturity level: FMM3 (Trial Use)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Procedure.Builder
static class
Procedure.FocalDevice
A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure.static class
Procedure.Performer
Limited to "real" people rather than equipment.
-
Field Summary
-
Fields inherited from class org.linuxforhealth.fhir.model.resource.DomainResource
contained, extension, modifierExtension, text
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(java.lang.String elementName, int elementIndex, Visitor visitor)
Accept a Visitor and invoke the appropriate visit methods.static Procedure.Builder
builder()
boolean
equals(java.lang.Object obj)
Reference
getAsserter()
Individual who is making the procedure statement.java.util.List<Reference>
getBasedOn()
A reference to a resource that contains details of the request for this procedure.java.util.List<CodeableConcept>
getBodySite()
Detailed and structured anatomical location information.CodeableConcept
getCategory()
A code that classifies the procedure for searching, sorting and display purposes (e.g.CodeableConcept
getCode()
The specific procedure that is performed.java.util.List<CodeableConcept>
getComplication()
Any complications that occurred during the procedure, or in the immediate post-performance period.java.util.List<Reference>
getComplicationDetail()
Any complications that occurred during the procedure, or in the immediate post-performance period.Reference
getEncounter()
The Encounter during which this Procedure was created or performed or to which the creation of this record is tightly associated.java.util.List<Procedure.FocalDevice>
getFocalDevice()
A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure.java.util.List<CodeableConcept>
getFollowUp()
If the procedure required specific follow up - e.g.java.util.List<Identifier>
getIdentifier()
Business identifiers assigned to this procedure by the performer or other systems which remain constant as the resource is updated and is propagated from server to server.java.util.List<Canonical>
getInstantiatesCanonical()
The URL pointing to a FHIR-defined protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.java.util.List<Uri>
getInstantiatesUri()
The URL pointing to an externally maintained protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.Reference
getLocation()
The location where the procedure actually happened.java.util.List<Annotation>
getNote()
Any other notes and comments about the procedure.CodeableConcept
getOutcome()
The outcome of the procedure - did it resolve the reasons for the procedure being performed?java.util.List<Reference>
getPartOf()
A larger event of which this particular procedure is a component or step.Element
getPerformed()
Estimated or actual date, date-time, period, or age when the procedure was performed.java.util.List<Procedure.Performer>
getPerformer()
Limited to "real" people rather than equipment.java.util.List<CodeableConcept>
getReasonCode()
The coded reason why the procedure was performed.java.util.List<Reference>
getReasonReference()
The justification of why the procedure was performed.Reference
getRecorder()
Individual who recorded the record and takes responsibility for its content.java.util.List<Reference>
getReport()
This could be a histology result, pathology report, surgical report, etc.ProcedureStatus
getStatus()
A code specifying the state of the procedure.CodeableConcept
getStatusReason()
Captures the reason for the current state of the procedure.Reference
getSubject()
The person, animal or group on which the procedure was performed.java.util.List<CodeableConcept>
getUsedCode()
Identifies coded items that were used as part of the procedure.java.util.List<Reference>
getUsedReference()
Identifies medications, devices and any other substance used as part of the procedure.boolean
hasChildren()
int
hashCode()
Procedure.Builder
toBuilder()
Create a new Builder from the contents of this Resource-
Methods inherited from class org.linuxforhealth.fhir.model.resource.DomainResource
getContained, getExtension, getModifierExtension, getText
-
Methods inherited from class org.linuxforhealth.fhir.model.resource.Resource
as, getId, getImplicitRules, getLanguage, getMeta, is
-
-
-
-
Method Detail
-
getIdentifier
public java.util.List<Identifier> getIdentifier()
Business identifiers assigned to this procedure by the performer or other systems which remain constant as the resource is updated and is propagated from server to server.- Returns:
- An unmodifiable list containing immutable objects of type
Identifier
that may be empty.
-
getInstantiatesCanonical
public java.util.List<Canonical> getInstantiatesCanonical()
The URL pointing to a FHIR-defined protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.- Returns:
- An unmodifiable list containing immutable objects of type
Canonical
that may be empty.
-
getInstantiatesUri
public java.util.List<Uri> getInstantiatesUri()
The URL pointing to an externally maintained protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.- Returns:
- An unmodifiable list containing immutable objects of type
Uri
that may be empty.
-
getBasedOn
public java.util.List<Reference> getBasedOn()
A reference to a resource that contains details of the request for this procedure.- Returns:
- An unmodifiable list containing immutable objects of type
Reference
that may be empty.
-
getPartOf
public java.util.List<Reference> getPartOf()
A larger event of which this particular procedure is a component or step.- Returns:
- An unmodifiable list containing immutable objects of type
Reference
that may be empty.
-
getStatus
public ProcedureStatus getStatus()
A code specifying the state of the procedure. Generally, this will be the in-progress or completed state.- Returns:
- An immutable object of type
ProcedureStatus
that is non-null.
-
getStatusReason
public CodeableConcept getStatusReason()
Captures the reason for the current state of the procedure.- Returns:
- An immutable object of type
CodeableConcept
that may be null.
-
getCategory
public CodeableConcept getCategory()
A code that classifies the procedure for searching, sorting and display purposes (e.g. "Surgical Procedure").- Returns:
- An immutable object of type
CodeableConcept
that may be null.
-
getCode
public CodeableConcept getCode()
The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. "Laparoscopic Appendectomy").- Returns:
- An immutable object of type
CodeableConcept
that may be null.
-
getSubject
public Reference getSubject()
The person, animal or group on which the procedure was performed.- Returns:
- An immutable object of type
Reference
that is non-null.
-
getEncounter
public Reference getEncounter()
The Encounter during which this Procedure was created or performed or to which the creation of this record is tightly associated.- Returns:
- An immutable object of type
Reference
that may be null.
-
getPerformed
public Element getPerformed()
Estimated or actual date, date-time, period, or age when the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured.
-
getRecorder
public Reference getRecorder()
Individual who recorded the record and takes responsibility for its content.- Returns:
- An immutable object of type
Reference
that may be null.
-
getAsserter
public Reference getAsserter()
Individual who is making the procedure statement.- Returns:
- An immutable object of type
Reference
that may be null.
-
getPerformer
public java.util.List<Procedure.Performer> getPerformer()
Limited to "real" people rather than equipment.- Returns:
- An unmodifiable list containing immutable objects of type
Procedure.Performer
that may be empty.
-
getLocation
public Reference getLocation()
The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant.- Returns:
- An immutable object of type
Reference
that may be null.
-
getReasonCode
public java.util.List<CodeableConcept> getReasonCode()
The coded reason why the procedure was performed. This may be a coded entity of some type, or may simply be present as text.- Returns:
- An unmodifiable list containing immutable objects of type
CodeableConcept
that may be empty.
-
getReasonReference
public java.util.List<Reference> getReasonReference()
The justification of why the procedure was performed.- Returns:
- An unmodifiable list containing immutable objects of type
Reference
that may be empty.
-
getBodySite
public java.util.List<CodeableConcept> getBodySite()
Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion.- Returns:
- An unmodifiable list containing immutable objects of type
CodeableConcept
that may be empty.
-
getOutcome
public CodeableConcept getOutcome()
The outcome of the procedure - did it resolve the reasons for the procedure being performed?- Returns:
- An immutable object of type
CodeableConcept
that may be null.
-
getReport
public java.util.List<Reference> getReport()
This could be a histology result, pathology report, surgical report, etc.- Returns:
- An unmodifiable list containing immutable objects of type
Reference
that may be empty.
-
getComplication
public java.util.List<CodeableConcept> getComplication()
Any complications that occurred during the procedure, or in the immediate post-performance period. These are generally tracked separately from the notes, which will typically describe the procedure itself rather than any 'post procedure' issues.- Returns:
- An unmodifiable list containing immutable objects of type
CodeableConcept
that may be empty.
-
getComplicationDetail
public java.util.List<Reference> getComplicationDetail()
Any complications that occurred during the procedure, or in the immediate post-performance period.- Returns:
- An unmodifiable list containing immutable objects of type
Reference
that may be empty.
-
getFollowUp
public java.util.List<CodeableConcept> getFollowUp()
If the procedure required specific follow up - e.g. removal of sutures. The follow up may be represented as a simple note or could potentially be more complex, in which case the CarePlan resource can be used.- Returns:
- An unmodifiable list containing immutable objects of type
CodeableConcept
that may be empty.
-
getNote
public java.util.List<Annotation> getNote()
Any other notes and comments about the procedure.- Returns:
- An unmodifiable list containing immutable objects of type
Annotation
that may be empty.
-
getFocalDevice
public java.util.List<Procedure.FocalDevice> getFocalDevice()
A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure.- Returns:
- An unmodifiable list containing immutable objects of type
Procedure.FocalDevice
that may be empty.
-
getUsedReference
public java.util.List<Reference> getUsedReference()
Identifies medications, devices and any other substance used as part of the procedure.- Returns:
- An unmodifiable list containing immutable objects of type
Reference
that may be empty.
-
getUsedCode
public java.util.List<CodeableConcept> getUsedCode()
Identifies coded items that were used as part of the procedure.- Returns:
- An unmodifiable list containing immutable objects of type
CodeableConcept
that may be empty.
-
hasChildren
public boolean hasChildren()
- Overrides:
hasChildren
in classDomainResource
-
accept
public void accept(java.lang.String elementName, int elementIndex, Visitor visitor)
Description copied from interface:Visitable
Accept a Visitor and invoke the appropriate visit methods. A typical implementation would look like this:if (visitor.preVisit(this)) { visitor.visitStart(elementName, elementIndex, this); if (visitor.visit(elementName, elementIndex, this)) { // visit children } visitor.visitEnd(elementName, elementIndex, this); visitor.postVisit(this); }
- Specified by:
accept
in interfaceVisitable
- Specified by:
accept
in classAbstractVisitable
- Parameters:
elementName
- the name of the element in the context of this visitelementIndex
- the index of the element in a list or -1 if it is not contained within a Listvisitor
- the visitor to use
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toBuilder
public Procedure.Builder toBuilder()
Description copied from class:Resource
Create a new Builder from the contents of this Resource- Specified by:
toBuilder
in classDomainResource
-
builder
public static Procedure.Builder builder()
-
-