Class Procedure.Builder

    • Method Detail

      • id

        public Procedure.Builder id​(java.lang.String id)
        The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
        Overrides:
        id in class DomainResource.Builder
        Parameters:
        id - Logical id of this artifact
        Returns:
        A reference to this Builder instance
      • meta

        public Procedure.Builder meta​(Meta meta)
        The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
        Overrides:
        meta in class DomainResource.Builder
        Parameters:
        meta - Metadata about the resource
        Returns:
        A reference to this Builder instance
      • implicitRules

        public Procedure.Builder implicitRules​(Uri implicitRules)
        A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
        Overrides:
        implicitRules in class DomainResource.Builder
        Parameters:
        implicitRules - A set of rules under which this content was created
        Returns:
        A reference to this Builder instance
      • language

        public Procedure.Builder language​(Code language)
        The base language in which the resource is written.
        Overrides:
        language in class DomainResource.Builder
        Parameters:
        language - Language of the resource content
        Returns:
        A reference to this Builder instance
      • text

        public Procedure.Builder text​(Narrative text)
        A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
        Overrides:
        text in class DomainResource.Builder
        Parameters:
        text - Text summary of the resource, for human interpretation
        Returns:
        A reference to this Builder instance
      • contained

        public Procedure.Builder contained​(Resource... contained)
        These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Overrides:
        contained in class DomainResource.Builder
        Parameters:
        contained - Contained, inline Resources
        Returns:
        A reference to this Builder instance
      • contained

        public Procedure.Builder contained​(java.util.Collection<Resource> contained)
        These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Overrides:
        contained in class DomainResource.Builder
        Parameters:
        contained - Contained, inline Resources
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • extension

        public Procedure.Builder extension​(Extension... extension)
        May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Overrides:
        extension in class DomainResource.Builder
        Parameters:
        extension - Additional content defined by implementations
        Returns:
        A reference to this Builder instance
      • extension

        public Procedure.Builder extension​(java.util.Collection<Extension> extension)
        May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Overrides:
        extension in class DomainResource.Builder
        Parameters:
        extension - Additional content defined by implementations
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • modifierExtension

        public Procedure.Builder modifierExtension​(Extension... modifierExtension)
        May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Overrides:
        modifierExtension in class DomainResource.Builder
        Parameters:
        modifierExtension - Extensions that cannot be ignored
        Returns:
        A reference to this Builder instance
      • modifierExtension

        public Procedure.Builder modifierExtension​(java.util.Collection<Extension> modifierExtension)
        May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Overrides:
        modifierExtension in class DomainResource.Builder
        Parameters:
        modifierExtension - Extensions that cannot be ignored
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • identifier

        public Procedure.Builder identifier​(Identifier... identifier)
        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.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        identifier - External Identifiers for this procedure
        Returns:
        A reference to this Builder instance
      • identifier

        public Procedure.Builder identifier​(java.util.Collection<Identifier> identifier)
        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.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        identifier - External Identifiers for this procedure
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • instantiatesCanonical

        public Procedure.Builder instantiatesCanonical​(Canonical... instantiatesCanonical)
        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.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        instantiatesCanonical - Instantiates FHIR protocol or definition
        Returns:
        A reference to this Builder instance
      • instantiatesCanonical

        public Procedure.Builder instantiatesCanonical​(java.util.Collection<Canonical> instantiatesCanonical)
        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.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        instantiatesCanonical - Instantiates FHIR protocol or definition
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • instantiatesUri

        public Procedure.Builder instantiatesUri​(Uri... instantiatesUri)
        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.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        instantiatesUri - Instantiates external protocol or definition
        Returns:
        A reference to this Builder instance
      • instantiatesUri

        public Procedure.Builder instantiatesUri​(java.util.Collection<Uri> instantiatesUri)
        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.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        instantiatesUri - Instantiates external protocol or definition
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • basedOn

        public Procedure.Builder basedOn​(Reference... basedOn)
        A reference to a resource that contains details of the request for this procedure.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        basedOn - A request for this procedure
        Returns:
        A reference to this Builder instance
      • basedOn

        public Procedure.Builder basedOn​(java.util.Collection<Reference> basedOn)
        A reference to a resource that contains details of the request for this procedure.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        basedOn - A request for this procedure
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • partOf

        public Procedure.Builder partOf​(Reference... partOf)
        A larger event of which this particular procedure is a component or step.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        partOf - Part of referenced event
        Returns:
        A reference to this Builder instance
      • partOf

        public Procedure.Builder partOf​(java.util.Collection<Reference> partOf)
        A larger event of which this particular procedure is a component or step.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        partOf - Part of referenced event
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • status

        public Procedure.Builder status​(ProcedureStatus status)
        A code specifying the state of the procedure. Generally, this will be the in-progress or completed state.

        This element is required.

        Parameters:
        status - preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
        Returns:
        A reference to this Builder instance
      • statusReason

        public Procedure.Builder statusReason​(CodeableConcept statusReason)
        Captures the reason for the current state of the procedure.
        Parameters:
        statusReason - Reason for current status
        Returns:
        A reference to this Builder instance
      • category

        public Procedure.Builder category​(CodeableConcept category)
        A code that classifies the procedure for searching, sorting and display purposes (e.g. "Surgical Procedure").
        Parameters:
        category - Classification of the procedure
        Returns:
        A reference to this Builder instance
      • code

        public Procedure.Builder code​(CodeableConcept code)
        The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. "Laparoscopic Appendectomy").
        Parameters:
        code - Identification of the procedure
        Returns:
        A reference to this Builder instance
      • subject

        public Procedure.Builder subject​(Reference subject)
        The person, animal or group on which the procedure was performed.

        This element is required.

        Allowed resource types for this reference:

        Parameters:
        subject - Who the procedure was performed on
        Returns:
        A reference to this Builder instance
      • encounter

        public Procedure.Builder encounter​(Reference encounter)
        The Encounter during which this Procedure was created or performed or to which the creation of this record is tightly associated.

        Allowed resource types for this reference:

        Parameters:
        encounter - Encounter created as part of
        Returns:
        A reference to this Builder instance
      • performed

        public Procedure.Builder performed​(java.lang.String performed)
        Convenience method for setting performed with choice type String.
        Parameters:
        performed - When the procedure was performed
        Returns:
        A reference to this Builder instance
        See Also:
        performed(Element)
      • performed

        public Procedure.Builder performed​(Element performed)
        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.

        This is a choice element with the following allowed types:

        Parameters:
        performed - When the procedure was performed
        Returns:
        A reference to this Builder instance
      • performer

        public Procedure.Builder performer​(Procedure.Performer... performer)
        Limited to "real" people rather than equipment.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        performer - The people who performed the procedure
        Returns:
        A reference to this Builder instance
      • performer

        public Procedure.Builder performer​(java.util.Collection<Procedure.Performer> performer)
        Limited to "real" people rather than equipment.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        performer - The people who performed the procedure
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • location

        public Procedure.Builder location​(Reference location)
        The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant.

        Allowed resource types for this reference:

        Parameters:
        location - Where the procedure happened
        Returns:
        A reference to this Builder instance
      • reasonCode

        public Procedure.Builder reasonCode​(CodeableConcept... reasonCode)
        The coded reason why the procedure was performed. This may be a coded entity of some type, or may simply be present as text.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        reasonCode - Coded reason procedure performed
        Returns:
        A reference to this Builder instance
      • reasonCode

        public Procedure.Builder reasonCode​(java.util.Collection<CodeableConcept> reasonCode)
        The coded reason why the procedure was performed. This may be a coded entity of some type, or may simply be present as text.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        reasonCode - Coded reason procedure performed
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • reasonReference

        public Procedure.Builder reasonReference​(Reference... reasonReference)
        The justification of why the procedure was performed.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        reasonReference - The justification that the procedure was performed
        Returns:
        A reference to this Builder instance
      • reasonReference

        public Procedure.Builder reasonReference​(java.util.Collection<Reference> reasonReference)
        The justification of why the procedure was performed.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        reasonReference - The justification that the procedure was performed
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • bodySite

        public Procedure.Builder bodySite​(CodeableConcept... bodySite)
        Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        bodySite - Target body sites
        Returns:
        A reference to this Builder instance
      • bodySite

        public Procedure.Builder bodySite​(java.util.Collection<CodeableConcept> bodySite)
        Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        bodySite - Target body sites
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • outcome

        public Procedure.Builder outcome​(CodeableConcept outcome)
        The outcome of the procedure - did it resolve the reasons for the procedure being performed?
        Parameters:
        outcome - The result of procedure
        Returns:
        A reference to this Builder instance
      • report

        public Procedure.Builder report​(Reference... report)
        This could be a histology result, pathology report, surgical report, etc.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        report - Any report resulting from the procedure
        Returns:
        A reference to this Builder instance
      • report

        public Procedure.Builder report​(java.util.Collection<Reference> report)
        This could be a histology result, pathology report, surgical report, etc.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        report - Any report resulting from the procedure
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • complication

        public Procedure.Builder complication​(CodeableConcept... complication)
        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.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        complication - Complication following the procedure
        Returns:
        A reference to this Builder instance
      • complication

        public Procedure.Builder complication​(java.util.Collection<CodeableConcept> complication)
        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.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        complication - Complication following the procedure
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • complicationDetail

        public Procedure.Builder complicationDetail​(Reference... complicationDetail)
        Any complications that occurred during the procedure, or in the immediate post-performance period.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        complicationDetail - A condition that is a result of the procedure
        Returns:
        A reference to this Builder instance
      • complicationDetail

        public Procedure.Builder complicationDetail​(java.util.Collection<Reference> complicationDetail)
        Any complications that occurred during the procedure, or in the immediate post-performance period.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        complicationDetail - A condition that is a result of the procedure
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • followUp

        public Procedure.Builder followUp​(CodeableConcept... followUp)
        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.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        followUp - Instructions for follow up
        Returns:
        A reference to this Builder instance
      • followUp

        public Procedure.Builder followUp​(java.util.Collection<CodeableConcept> followUp)
        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.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        followUp - Instructions for follow up
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • note

        public Procedure.Builder note​(Annotation... note)
        Any other notes and comments about the procedure.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        note - Additional information about the procedure
        Returns:
        A reference to this Builder instance
      • note

        public Procedure.Builder note​(java.util.Collection<Annotation> note)
        Any other notes and comments about the procedure.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        note - Additional information about the procedure
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • focalDevice

        public Procedure.Builder focalDevice​(Procedure.FocalDevice... 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.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        focalDevice - Manipulated, implanted, or removed device
        Returns:
        A reference to this Builder instance
      • focalDevice

        public Procedure.Builder focalDevice​(java.util.Collection<Procedure.FocalDevice> 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.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        focalDevice - Manipulated, implanted, or removed device
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • usedReference

        public Procedure.Builder usedReference​(Reference... usedReference)
        Identifies medications, devices and any other substance used as part of the procedure.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        usedReference - Items used during procedure
        Returns:
        A reference to this Builder instance
      • usedReference

        public Procedure.Builder usedReference​(java.util.Collection<Reference> usedReference)
        Identifies medications, devices and any other substance used as part of the procedure.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Allowed resource types for the references:

        Parameters:
        usedReference - Items used during procedure
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • usedCode

        public Procedure.Builder usedCode​(CodeableConcept... usedCode)
        Identifies coded items that were used as part of the procedure.

        Adds new element(s) to the existing list. If any of the elements are null, calling build() will fail.

        Parameters:
        usedCode - Coded items used during the procedure
        Returns:
        A reference to this Builder instance
      • usedCode

        public Procedure.Builder usedCode​(java.util.Collection<CodeableConcept> usedCode)
        Identifies coded items that were used as part of the procedure.

        Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling build() will fail.

        Parameters:
        usedCode - Coded items used during the procedure
        Returns:
        A reference to this Builder instance
        Throws:
        java.lang.NullPointerException - If the passed collection is null
      • build

        public Procedure build()
        Build the Procedure

        Required elements:

        • status
        • subject
        Specified by:
        build in interface Builder<Resource>
        Specified by:
        build in class DomainResource.Builder
        Returns:
        An immutable object of type Procedure
        Throws:
        java.lang.IllegalStateException - if the current state cannot be built into a valid Procedure per the base specification
      • validate

        protected void validate​(Procedure procedure)