001package org.hl7.fhir.r5.model; 002 003 004/* 005 Copyright (c) 2011+, HL7, Inc. 006 All rights reserved. 007 008 Redistribution and use in source and binary forms, with or without modification, \ 009 are permitted provided that the following conditions are met: 010 011 * Redistributions of source code must retain the above copyright notice, this \ 012 list of conditions and the following disclaimer. 013 * Redistributions in binary form must reproduce the above copyright notice, \ 014 this list of conditions and the following disclaimer in the documentation \ 015 and/or other materials provided with the distribution. 016 * Neither the name of HL7 nor the names of its contributors may be used to 017 endorse or promote products derived from this software without specific 018 prior written permission. 019 020 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ 021 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ 022 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ 023 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ 024 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ 025 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ 026 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ 027 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ 028 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ 029 POSSIBILITY OF SUCH DAMAGE. 030 */ 031 032// Generated on Tue, Dec 28, 2021 07:16+1100 for FHIR v5.0.0-snapshot1 033 034import java.util.ArrayList; 035import java.util.Date; 036import java.util.List; 037import org.hl7.fhir.utilities.Utilities; 038import org.hl7.fhir.r5.model.Enumerations.*; 039import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 040import org.hl7.fhir.exceptions.FHIRException; 041import org.hl7.fhir.instance.model.api.ICompositeType; 042import ca.uhn.fhir.model.api.annotation.ResourceDef; 043import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 044import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 045import ca.uhn.fhir.model.api.annotation.Child; 046import ca.uhn.fhir.model.api.annotation.ChildOrder; 047import ca.uhn.fhir.model.api.annotation.Description; 048import ca.uhn.fhir.model.api.annotation.Block; 049 050/** 051 * A record of a request for service such as diagnostic investigations, treatments, or operations to be performed. 052 */ 053@ResourceDef(name="ServiceRequest", profile="http://hl7.org/fhir/StructureDefinition/ServiceRequest") 054public class ServiceRequest extends DomainResource { 055 056 /** 057 * Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller. 058 */ 059 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 060 @Description(shortDefinition="Identifiers assigned to this order", formalDefinition="Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller." ) 061 protected List<Identifier> identifier; 062 063 /** 064 * The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest. 065 */ 066 @Child(name = "instantiatesCanonical", type = {CanonicalType.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 067 @Description(shortDefinition="Instantiates FHIR protocol or definition", formalDefinition="The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest." ) 068 protected List<CanonicalType> instantiatesCanonical; 069 070 /** 071 * The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest. 072 */ 073 @Child(name = "instantiatesUri", type = {UriType.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 074 @Description(shortDefinition="Instantiates external protocol or definition", formalDefinition="The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest." ) 075 protected List<UriType> instantiatesUri; 076 077 /** 078 * Plan/proposal/order fulfilled by this request. 079 */ 080 @Child(name = "basedOn", type = {CarePlan.class, ServiceRequest.class, MedicationRequest.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 081 @Description(shortDefinition="What request fulfills", formalDefinition="Plan/proposal/order fulfilled by this request." ) 082 protected List<Reference> basedOn; 083 084 /** 085 * The request takes the place of the referenced completed or terminated request(s). 086 */ 087 @Child(name = "replaces", type = {ServiceRequest.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 088 @Description(shortDefinition="What request replaces", formalDefinition="The request takes the place of the referenced completed or terminated request(s)." ) 089 protected List<Reference> replaces; 090 091 /** 092 * A shared identifier common to all service requests that were authorized more or less simultaneously by a single author, representing the composite or group identifier. 093 */ 094 @Child(name = "requisition", type = {Identifier.class}, order=5, min=0, max=1, modifier=false, summary=true) 095 @Description(shortDefinition="Composite Request ID", formalDefinition="A shared identifier common to all service requests that were authorized more or less simultaneously by a single author, representing the composite or group identifier." ) 096 protected Identifier requisition; 097 098 /** 099 * The status of the order. 100 */ 101 @Child(name = "status", type = {CodeType.class}, order=6, min=1, max=1, modifier=true, summary=true) 102 @Description(shortDefinition="draft | active | on-hold | revoked | completed | entered-in-error | unknown", formalDefinition="The status of the order." ) 103 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/request-status") 104 protected Enumeration<RequestStatus> status; 105 106 /** 107 * Whether the request is a proposal, plan, an original order or a reflex order. 108 */ 109 @Child(name = "intent", type = {CodeType.class}, order=7, min=1, max=1, modifier=true, summary=true) 110 @Description(shortDefinition="proposal | plan | directive | order +", formalDefinition="Whether the request is a proposal, plan, an original order or a reflex order." ) 111 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/request-intent") 112 protected Enumeration<RequestIntent> intent; 113 114 /** 115 * A code that classifies the service for searching, sorting and display purposes (e.g. "Surgical Procedure"). 116 */ 117 @Child(name = "category", type = {CodeableConcept.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 118 @Description(shortDefinition="Classification of service", formalDefinition="A code that classifies the service for searching, sorting and display purposes (e.g. \"Surgical Procedure\")." ) 119 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/servicerequest-category") 120 protected List<CodeableConcept> category; 121 122 /** 123 * Indicates how quickly the ServiceRequest should be addressed with respect to other requests. 124 */ 125 @Child(name = "priority", type = {CodeType.class}, order=9, min=0, max=1, modifier=false, summary=true) 126 @Description(shortDefinition="routine | urgent | asap | stat", formalDefinition="Indicates how quickly the ServiceRequest should be addressed with respect to other requests." ) 127 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/request-priority") 128 protected Enumeration<RequestPriority> priority; 129 130 /** 131 * Set this to true if the record is saying that the service/procedure should NOT be performed. 132 */ 133 @Child(name = "doNotPerform", type = {BooleanType.class}, order=10, min=0, max=1, modifier=true, summary=true) 134 @Description(shortDefinition="True if service/procedure should not be performed", formalDefinition="Set this to true if the record is saying that the service/procedure should NOT be performed." ) 135 protected BooleanType doNotPerform; 136 137 /** 138 * A code that identifies a particular service (i.e., procedure, diagnostic investigation, or panel of investigations) that have been requested. 139 */ 140 @Child(name = "code", type = {CodeableConcept.class}, order=11, min=0, max=1, modifier=false, summary=true) 141 @Description(shortDefinition="What is being requested/ordered", formalDefinition="A code that identifies a particular service (i.e., procedure, diagnostic investigation, or panel of investigations) that have been requested." ) 142 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/procedure-code") 143 protected CodeableConcept code; 144 145 /** 146 * Additional details and instructions about the how the services are to be delivered. For example, and order for a urinary catheter may have an order detail for an external or indwelling catheter, or an order for a bandage may require additional instructions specifying how the bandage should be applied. 147 */ 148 @Child(name = "orderDetail", type = {CodeableConcept.class}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 149 @Description(shortDefinition="Additional order information", formalDefinition="Additional details and instructions about the how the services are to be delivered. For example, and order for a urinary catheter may have an order detail for an external or indwelling catheter, or an order for a bandage may require additional instructions specifying how the bandage should be applied." ) 150 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/servicerequest-orderdetail") 151 protected List<CodeableConcept> orderDetail; 152 153 /** 154 * An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction). 155 */ 156 @Child(name = "quantity", type = {Quantity.class, Ratio.class, Range.class}, order=13, min=0, max=1, modifier=false, summary=true) 157 @Description(shortDefinition="Service amount", formalDefinition="An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction)." ) 158 protected DataType quantity; 159 160 /** 161 * On whom or what the service is to be performed. This is usually a human patient, but can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans). 162 */ 163 @Child(name = "subject", type = {Patient.class, Group.class, Location.class, Device.class}, order=14, min=1, max=1, modifier=false, summary=true) 164 @Description(shortDefinition="Individual or Entity the service is ordered for", formalDefinition="On whom or what the service is to be performed. This is usually a human patient, but can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans)." ) 165 protected Reference subject; 166 167 /** 168 * An encounter that provides additional information about the healthcare context in which this request is made. 169 */ 170 @Child(name = "encounter", type = {Encounter.class}, order=15, min=0, max=1, modifier=false, summary=true) 171 @Description(shortDefinition="Encounter in which the request was created", formalDefinition="An encounter that provides additional information about the healthcare context in which this request is made." ) 172 protected Reference encounter; 173 174 /** 175 * The date/time at which the requested service should occur. 176 */ 177 @Child(name = "occurrence", type = {DateTimeType.class, Period.class, Timing.class}, order=16, min=0, max=1, modifier=false, summary=true) 178 @Description(shortDefinition="When service should occur", formalDefinition="The date/time at which the requested service should occur." ) 179 protected DataType occurrence; 180 181 /** 182 * If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example "pain", "on flare-up", etc. 183 */ 184 @Child(name = "asNeeded", type = {BooleanType.class, CodeableConcept.class}, order=17, min=0, max=1, modifier=false, summary=true) 185 @Description(shortDefinition="Preconditions for service", formalDefinition="If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example \"pain\", \"on flare-up\", etc." ) 186 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-as-needed-reason") 187 protected DataType asNeeded; 188 189 /** 190 * When the request transitioned to being actionable. 191 */ 192 @Child(name = "authoredOn", type = {DateTimeType.class}, order=18, min=0, max=1, modifier=false, summary=true) 193 @Description(shortDefinition="Date request signed", formalDefinition="When the request transitioned to being actionable." ) 194 protected DateTimeType authoredOn; 195 196 /** 197 * The individual who initiated the request and has responsibility for its activation. 198 */ 199 @Child(name = "requester", type = {Practitioner.class, PractitionerRole.class, Organization.class, Patient.class, RelatedPerson.class, Device.class}, order=19, min=0, max=1, modifier=false, summary=true) 200 @Description(shortDefinition="Who/what is requesting service", formalDefinition="The individual who initiated the request and has responsibility for its activation." ) 201 protected Reference requester; 202 203 /** 204 * Desired type of performer for doing the requested service. 205 */ 206 @Child(name = "performerType", type = {CodeableConcept.class}, order=20, min=0, max=1, modifier=false, summary=true) 207 @Description(shortDefinition="Performer role", formalDefinition="Desired type of performer for doing the requested service." ) 208 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/participant-role") 209 protected CodeableConcept performerType; 210 211 /** 212 * The desired performer for doing the requested service. For example, the surgeon, dermatopathologist, endoscopist, etc. 213 */ 214 @Child(name = "performer", type = {Practitioner.class, PractitionerRole.class, Organization.class, CareTeam.class, HealthcareService.class, Patient.class, Device.class, RelatedPerson.class}, order=21, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 215 @Description(shortDefinition="Requested performer", formalDefinition="The desired performer for doing the requested service. For example, the surgeon, dermatopathologist, endoscopist, etc." ) 216 protected List<Reference> performer; 217 218 /** 219 * The preferred location(s) where the procedure should actually happen in coded or free text form. E.g. at home or nursing day care center. 220 */ 221 @Child(name = "location", type = {CodeableReference.class}, order=22, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 222 @Description(shortDefinition="Requested location", formalDefinition="The preferred location(s) where the procedure should actually happen in coded or free text form. E.g. at home or nursing day care center." ) 223 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType") 224 protected List<CodeableReference> location; 225 226 /** 227 * An explanation or justification for why this service is being requested in coded or textual form. This is often for billing purposes. May relate to the resources referred to in `supportingInfo`. 228 */ 229 @Child(name = "reason", type = {CodeableReference.class}, order=23, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 230 @Description(shortDefinition="Explanation/Justification for procedure or service", formalDefinition="An explanation or justification for why this service is being requested in coded or textual form. This is often for billing purposes. May relate to the resources referred to in `supportingInfo`." ) 231 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/procedure-reason") 232 protected List<CodeableReference> reason; 233 234 /** 235 * Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be needed for delivering the requested service. 236 */ 237 @Child(name = "insurance", type = {Coverage.class, ClaimResponse.class}, order=24, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 238 @Description(shortDefinition="Associated insurance coverage", formalDefinition="Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be needed for delivering the requested service." ) 239 protected List<Reference> insurance; 240 241 /** 242 * Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations. In laboratory ordering these are typically referred to as "ask at order entry questions (AOEs)". This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example, reporting the amount of inspired oxygen for blood gas measurements. 243 */ 244 @Child(name = "supportingInfo", type = {Reference.class}, order=25, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 245 @Description(shortDefinition="Additional clinical information", formalDefinition="Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations. In laboratory ordering these are typically referred to as \"ask at order entry questions (AOEs)\". This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example, reporting the amount of inspired oxygen for blood gas measurements." ) 246 protected List<Reference> supportingInfo; 247 248 /** 249 * One or more specimens that the laboratory procedure will use. 250 */ 251 @Child(name = "specimen", type = {Specimen.class}, order=26, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 252 @Description(shortDefinition="Procedure Samples", formalDefinition="One or more specimens that the laboratory procedure will use." ) 253 protected List<Reference> specimen; 254 255 /** 256 * Anatomic location where the procedure should be performed. This is the target site. 257 */ 258 @Child(name = "bodySite", type = {CodeableConcept.class}, order=27, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 259 @Description(shortDefinition="Location on Body", formalDefinition="Anatomic location where the procedure should be performed. This is the target site." ) 260 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/body-site") 261 protected List<CodeableConcept> bodySite; 262 263 /** 264 * Any other notes and comments made about the service request. For example, internal billing notes. 265 */ 266 @Child(name = "note", type = {Annotation.class}, order=28, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 267 @Description(shortDefinition="Comments", formalDefinition="Any other notes and comments made about the service request. For example, internal billing notes." ) 268 protected List<Annotation> note; 269 270 /** 271 * Instructions in terms that are understood by the patient or consumer. 272 */ 273 @Child(name = "patientInstruction", type = {StringType.class}, order=29, min=0, max=1, modifier=false, summary=true) 274 @Description(shortDefinition="Patient or consumer-oriented instructions", formalDefinition="Instructions in terms that are understood by the patient or consumer." ) 275 protected StringType patientInstruction; 276 277 /** 278 * Key events in the history of the request. 279 */ 280 @Child(name = "relevantHistory", type = {Provenance.class}, order=30, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 281 @Description(shortDefinition="Request provenance", formalDefinition="Key events in the history of the request." ) 282 protected List<Reference> relevantHistory; 283 284 private static final long serialVersionUID = -578395935L; 285 286 /** 287 * Constructor 288 */ 289 public ServiceRequest() { 290 super(); 291 } 292 293 /** 294 * Constructor 295 */ 296 public ServiceRequest(RequestStatus status, RequestIntent intent, Reference subject) { 297 super(); 298 this.setStatus(status); 299 this.setIntent(intent); 300 this.setSubject(subject); 301 } 302 303 /** 304 * @return {@link #identifier} (Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller.) 305 */ 306 public List<Identifier> getIdentifier() { 307 if (this.identifier == null) 308 this.identifier = new ArrayList<Identifier>(); 309 return this.identifier; 310 } 311 312 /** 313 * @return Returns a reference to <code>this</code> for easy method chaining 314 */ 315 public ServiceRequest setIdentifier(List<Identifier> theIdentifier) { 316 this.identifier = theIdentifier; 317 return this; 318 } 319 320 public boolean hasIdentifier() { 321 if (this.identifier == null) 322 return false; 323 for (Identifier item : this.identifier) 324 if (!item.isEmpty()) 325 return true; 326 return false; 327 } 328 329 public Identifier addIdentifier() { //3 330 Identifier t = new Identifier(); 331 if (this.identifier == null) 332 this.identifier = new ArrayList<Identifier>(); 333 this.identifier.add(t); 334 return t; 335 } 336 337 public ServiceRequest addIdentifier(Identifier t) { //3 338 if (t == null) 339 return this; 340 if (this.identifier == null) 341 this.identifier = new ArrayList<Identifier>(); 342 this.identifier.add(t); 343 return this; 344 } 345 346 /** 347 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 348 */ 349 public Identifier getIdentifierFirstRep() { 350 if (getIdentifier().isEmpty()) { 351 addIdentifier(); 352 } 353 return getIdentifier().get(0); 354 } 355 356 /** 357 * @return {@link #instantiatesCanonical} (The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.) 358 */ 359 public List<CanonicalType> getInstantiatesCanonical() { 360 if (this.instantiatesCanonical == null) 361 this.instantiatesCanonical = new ArrayList<CanonicalType>(); 362 return this.instantiatesCanonical; 363 } 364 365 /** 366 * @return Returns a reference to <code>this</code> for easy method chaining 367 */ 368 public ServiceRequest setInstantiatesCanonical(List<CanonicalType> theInstantiatesCanonical) { 369 this.instantiatesCanonical = theInstantiatesCanonical; 370 return this; 371 } 372 373 public boolean hasInstantiatesCanonical() { 374 if (this.instantiatesCanonical == null) 375 return false; 376 for (CanonicalType item : this.instantiatesCanonical) 377 if (!item.isEmpty()) 378 return true; 379 return false; 380 } 381 382 /** 383 * @return {@link #instantiatesCanonical} (The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.) 384 */ 385 public CanonicalType addInstantiatesCanonicalElement() {//2 386 CanonicalType t = new CanonicalType(); 387 if (this.instantiatesCanonical == null) 388 this.instantiatesCanonical = new ArrayList<CanonicalType>(); 389 this.instantiatesCanonical.add(t); 390 return t; 391 } 392 393 /** 394 * @param value {@link #instantiatesCanonical} (The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.) 395 */ 396 public ServiceRequest addInstantiatesCanonical(String value) { //1 397 CanonicalType t = new CanonicalType(); 398 t.setValue(value); 399 if (this.instantiatesCanonical == null) 400 this.instantiatesCanonical = new ArrayList<CanonicalType>(); 401 this.instantiatesCanonical.add(t); 402 return this; 403 } 404 405 /** 406 * @param value {@link #instantiatesCanonical} (The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.) 407 */ 408 public boolean hasInstantiatesCanonical(String value) { 409 if (this.instantiatesCanonical == null) 410 return false; 411 for (CanonicalType v : this.instantiatesCanonical) 412 if (v.getValue().equals(value)) // canonical 413 return true; 414 return false; 415 } 416 417 /** 418 * @return {@link #instantiatesUri} (The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.) 419 */ 420 public List<UriType> getInstantiatesUri() { 421 if (this.instantiatesUri == null) 422 this.instantiatesUri = new ArrayList<UriType>(); 423 return this.instantiatesUri; 424 } 425 426 /** 427 * @return Returns a reference to <code>this</code> for easy method chaining 428 */ 429 public ServiceRequest setInstantiatesUri(List<UriType> theInstantiatesUri) { 430 this.instantiatesUri = theInstantiatesUri; 431 return this; 432 } 433 434 public boolean hasInstantiatesUri() { 435 if (this.instantiatesUri == null) 436 return false; 437 for (UriType item : this.instantiatesUri) 438 if (!item.isEmpty()) 439 return true; 440 return false; 441 } 442 443 /** 444 * @return {@link #instantiatesUri} (The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.) 445 */ 446 public UriType addInstantiatesUriElement() {//2 447 UriType t = new UriType(); 448 if (this.instantiatesUri == null) 449 this.instantiatesUri = new ArrayList<UriType>(); 450 this.instantiatesUri.add(t); 451 return t; 452 } 453 454 /** 455 * @param value {@link #instantiatesUri} (The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.) 456 */ 457 public ServiceRequest addInstantiatesUri(String value) { //1 458 UriType t = new UriType(); 459 t.setValue(value); 460 if (this.instantiatesUri == null) 461 this.instantiatesUri = new ArrayList<UriType>(); 462 this.instantiatesUri.add(t); 463 return this; 464 } 465 466 /** 467 * @param value {@link #instantiatesUri} (The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.) 468 */ 469 public boolean hasInstantiatesUri(String value) { 470 if (this.instantiatesUri == null) 471 return false; 472 for (UriType v : this.instantiatesUri) 473 if (v.getValue().equals(value)) // uri 474 return true; 475 return false; 476 } 477 478 /** 479 * @return {@link #basedOn} (Plan/proposal/order fulfilled by this request.) 480 */ 481 public List<Reference> getBasedOn() { 482 if (this.basedOn == null) 483 this.basedOn = new ArrayList<Reference>(); 484 return this.basedOn; 485 } 486 487 /** 488 * @return Returns a reference to <code>this</code> for easy method chaining 489 */ 490 public ServiceRequest setBasedOn(List<Reference> theBasedOn) { 491 this.basedOn = theBasedOn; 492 return this; 493 } 494 495 public boolean hasBasedOn() { 496 if (this.basedOn == null) 497 return false; 498 for (Reference item : this.basedOn) 499 if (!item.isEmpty()) 500 return true; 501 return false; 502 } 503 504 public Reference addBasedOn() { //3 505 Reference t = new Reference(); 506 if (this.basedOn == null) 507 this.basedOn = new ArrayList<Reference>(); 508 this.basedOn.add(t); 509 return t; 510 } 511 512 public ServiceRequest addBasedOn(Reference t) { //3 513 if (t == null) 514 return this; 515 if (this.basedOn == null) 516 this.basedOn = new ArrayList<Reference>(); 517 this.basedOn.add(t); 518 return this; 519 } 520 521 /** 522 * @return The first repetition of repeating field {@link #basedOn}, creating it if it does not already exist {3} 523 */ 524 public Reference getBasedOnFirstRep() { 525 if (getBasedOn().isEmpty()) { 526 addBasedOn(); 527 } 528 return getBasedOn().get(0); 529 } 530 531 /** 532 * @return {@link #replaces} (The request takes the place of the referenced completed or terminated request(s).) 533 */ 534 public List<Reference> getReplaces() { 535 if (this.replaces == null) 536 this.replaces = new ArrayList<Reference>(); 537 return this.replaces; 538 } 539 540 /** 541 * @return Returns a reference to <code>this</code> for easy method chaining 542 */ 543 public ServiceRequest setReplaces(List<Reference> theReplaces) { 544 this.replaces = theReplaces; 545 return this; 546 } 547 548 public boolean hasReplaces() { 549 if (this.replaces == null) 550 return false; 551 for (Reference item : this.replaces) 552 if (!item.isEmpty()) 553 return true; 554 return false; 555 } 556 557 public Reference addReplaces() { //3 558 Reference t = new Reference(); 559 if (this.replaces == null) 560 this.replaces = new ArrayList<Reference>(); 561 this.replaces.add(t); 562 return t; 563 } 564 565 public ServiceRequest addReplaces(Reference t) { //3 566 if (t == null) 567 return this; 568 if (this.replaces == null) 569 this.replaces = new ArrayList<Reference>(); 570 this.replaces.add(t); 571 return this; 572 } 573 574 /** 575 * @return The first repetition of repeating field {@link #replaces}, creating it if it does not already exist {3} 576 */ 577 public Reference getReplacesFirstRep() { 578 if (getReplaces().isEmpty()) { 579 addReplaces(); 580 } 581 return getReplaces().get(0); 582 } 583 584 /** 585 * @return {@link #requisition} (A shared identifier common to all service requests that were authorized more or less simultaneously by a single author, representing the composite or group identifier.) 586 */ 587 public Identifier getRequisition() { 588 if (this.requisition == null) 589 if (Configuration.errorOnAutoCreate()) 590 throw new Error("Attempt to auto-create ServiceRequest.requisition"); 591 else if (Configuration.doAutoCreate()) 592 this.requisition = new Identifier(); // cc 593 return this.requisition; 594 } 595 596 public boolean hasRequisition() { 597 return this.requisition != null && !this.requisition.isEmpty(); 598 } 599 600 /** 601 * @param value {@link #requisition} (A shared identifier common to all service requests that were authorized more or less simultaneously by a single author, representing the composite or group identifier.) 602 */ 603 public ServiceRequest setRequisition(Identifier value) { 604 this.requisition = value; 605 return this; 606 } 607 608 /** 609 * @return {@link #status} (The status of the order.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 610 */ 611 public Enumeration<RequestStatus> getStatusElement() { 612 if (this.status == null) 613 if (Configuration.errorOnAutoCreate()) 614 throw new Error("Attempt to auto-create ServiceRequest.status"); 615 else if (Configuration.doAutoCreate()) 616 this.status = new Enumeration<RequestStatus>(new RequestStatusEnumFactory()); // bb 617 return this.status; 618 } 619 620 public boolean hasStatusElement() { 621 return this.status != null && !this.status.isEmpty(); 622 } 623 624 public boolean hasStatus() { 625 return this.status != null && !this.status.isEmpty(); 626 } 627 628 /** 629 * @param value {@link #status} (The status of the order.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 630 */ 631 public ServiceRequest setStatusElement(Enumeration<RequestStatus> value) { 632 this.status = value; 633 return this; 634 } 635 636 /** 637 * @return The status of the order. 638 */ 639 public RequestStatus getStatus() { 640 return this.status == null ? null : this.status.getValue(); 641 } 642 643 /** 644 * @param value The status of the order. 645 */ 646 public ServiceRequest setStatus(RequestStatus value) { 647 if (this.status == null) 648 this.status = new Enumeration<RequestStatus>(new RequestStatusEnumFactory()); 649 this.status.setValue(value); 650 return this; 651 } 652 653 /** 654 * @return {@link #intent} (Whether the request is a proposal, plan, an original order or a reflex order.). This is the underlying object with id, value and extensions. The accessor "getIntent" gives direct access to the value 655 */ 656 public Enumeration<RequestIntent> getIntentElement() { 657 if (this.intent == null) 658 if (Configuration.errorOnAutoCreate()) 659 throw new Error("Attempt to auto-create ServiceRequest.intent"); 660 else if (Configuration.doAutoCreate()) 661 this.intent = new Enumeration<RequestIntent>(new RequestIntentEnumFactory()); // bb 662 return this.intent; 663 } 664 665 public boolean hasIntentElement() { 666 return this.intent != null && !this.intent.isEmpty(); 667 } 668 669 public boolean hasIntent() { 670 return this.intent != null && !this.intent.isEmpty(); 671 } 672 673 /** 674 * @param value {@link #intent} (Whether the request is a proposal, plan, an original order or a reflex order.). This is the underlying object with id, value and extensions. The accessor "getIntent" gives direct access to the value 675 */ 676 public ServiceRequest setIntentElement(Enumeration<RequestIntent> value) { 677 this.intent = value; 678 return this; 679 } 680 681 /** 682 * @return Whether the request is a proposal, plan, an original order or a reflex order. 683 */ 684 public RequestIntent getIntent() { 685 return this.intent == null ? null : this.intent.getValue(); 686 } 687 688 /** 689 * @param value Whether the request is a proposal, plan, an original order or a reflex order. 690 */ 691 public ServiceRequest setIntent(RequestIntent value) { 692 if (this.intent == null) 693 this.intent = new Enumeration<RequestIntent>(new RequestIntentEnumFactory()); 694 this.intent.setValue(value); 695 return this; 696 } 697 698 /** 699 * @return {@link #category} (A code that classifies the service for searching, sorting and display purposes (e.g. "Surgical Procedure").) 700 */ 701 public List<CodeableConcept> getCategory() { 702 if (this.category == null) 703 this.category = new ArrayList<CodeableConcept>(); 704 return this.category; 705 } 706 707 /** 708 * @return Returns a reference to <code>this</code> for easy method chaining 709 */ 710 public ServiceRequest setCategory(List<CodeableConcept> theCategory) { 711 this.category = theCategory; 712 return this; 713 } 714 715 public boolean hasCategory() { 716 if (this.category == null) 717 return false; 718 for (CodeableConcept item : this.category) 719 if (!item.isEmpty()) 720 return true; 721 return false; 722 } 723 724 public CodeableConcept addCategory() { //3 725 CodeableConcept t = new CodeableConcept(); 726 if (this.category == null) 727 this.category = new ArrayList<CodeableConcept>(); 728 this.category.add(t); 729 return t; 730 } 731 732 public ServiceRequest addCategory(CodeableConcept t) { //3 733 if (t == null) 734 return this; 735 if (this.category == null) 736 this.category = new ArrayList<CodeableConcept>(); 737 this.category.add(t); 738 return this; 739 } 740 741 /** 742 * @return The first repetition of repeating field {@link #category}, creating it if it does not already exist {3} 743 */ 744 public CodeableConcept getCategoryFirstRep() { 745 if (getCategory().isEmpty()) { 746 addCategory(); 747 } 748 return getCategory().get(0); 749 } 750 751 /** 752 * @return {@link #priority} (Indicates how quickly the ServiceRequest should be addressed with respect to other requests.). This is the underlying object with id, value and extensions. The accessor "getPriority" gives direct access to the value 753 */ 754 public Enumeration<RequestPriority> getPriorityElement() { 755 if (this.priority == null) 756 if (Configuration.errorOnAutoCreate()) 757 throw new Error("Attempt to auto-create ServiceRequest.priority"); 758 else if (Configuration.doAutoCreate()) 759 this.priority = new Enumeration<RequestPriority>(new RequestPriorityEnumFactory()); // bb 760 return this.priority; 761 } 762 763 public boolean hasPriorityElement() { 764 return this.priority != null && !this.priority.isEmpty(); 765 } 766 767 public boolean hasPriority() { 768 return this.priority != null && !this.priority.isEmpty(); 769 } 770 771 /** 772 * @param value {@link #priority} (Indicates how quickly the ServiceRequest should be addressed with respect to other requests.). This is the underlying object with id, value and extensions. The accessor "getPriority" gives direct access to the value 773 */ 774 public ServiceRequest setPriorityElement(Enumeration<RequestPriority> value) { 775 this.priority = value; 776 return this; 777 } 778 779 /** 780 * @return Indicates how quickly the ServiceRequest should be addressed with respect to other requests. 781 */ 782 public RequestPriority getPriority() { 783 return this.priority == null ? null : this.priority.getValue(); 784 } 785 786 /** 787 * @param value Indicates how quickly the ServiceRequest should be addressed with respect to other requests. 788 */ 789 public ServiceRequest setPriority(RequestPriority value) { 790 if (value == null) 791 this.priority = null; 792 else { 793 if (this.priority == null) 794 this.priority = new Enumeration<RequestPriority>(new RequestPriorityEnumFactory()); 795 this.priority.setValue(value); 796 } 797 return this; 798 } 799 800 /** 801 * @return {@link #doNotPerform} (Set this to true if the record is saying that the service/procedure should NOT be performed.). This is the underlying object with id, value and extensions. The accessor "getDoNotPerform" gives direct access to the value 802 */ 803 public BooleanType getDoNotPerformElement() { 804 if (this.doNotPerform == null) 805 if (Configuration.errorOnAutoCreate()) 806 throw new Error("Attempt to auto-create ServiceRequest.doNotPerform"); 807 else if (Configuration.doAutoCreate()) 808 this.doNotPerform = new BooleanType(); // bb 809 return this.doNotPerform; 810 } 811 812 public boolean hasDoNotPerformElement() { 813 return this.doNotPerform != null && !this.doNotPerform.isEmpty(); 814 } 815 816 public boolean hasDoNotPerform() { 817 return this.doNotPerform != null && !this.doNotPerform.isEmpty(); 818 } 819 820 /** 821 * @param value {@link #doNotPerform} (Set this to true if the record is saying that the service/procedure should NOT be performed.). This is the underlying object with id, value and extensions. The accessor "getDoNotPerform" gives direct access to the value 822 */ 823 public ServiceRequest setDoNotPerformElement(BooleanType value) { 824 this.doNotPerform = value; 825 return this; 826 } 827 828 /** 829 * @return Set this to true if the record is saying that the service/procedure should NOT be performed. 830 */ 831 public boolean getDoNotPerform() { 832 return this.doNotPerform == null || this.doNotPerform.isEmpty() ? false : this.doNotPerform.getValue(); 833 } 834 835 /** 836 * @param value Set this to true if the record is saying that the service/procedure should NOT be performed. 837 */ 838 public ServiceRequest setDoNotPerform(boolean value) { 839 if (this.doNotPerform == null) 840 this.doNotPerform = new BooleanType(); 841 this.doNotPerform.setValue(value); 842 return this; 843 } 844 845 /** 846 * @return {@link #code} (A code that identifies a particular service (i.e., procedure, diagnostic investigation, or panel of investigations) that have been requested.) 847 */ 848 public CodeableConcept getCode() { 849 if (this.code == null) 850 if (Configuration.errorOnAutoCreate()) 851 throw new Error("Attempt to auto-create ServiceRequest.code"); 852 else if (Configuration.doAutoCreate()) 853 this.code = new CodeableConcept(); // cc 854 return this.code; 855 } 856 857 public boolean hasCode() { 858 return this.code != null && !this.code.isEmpty(); 859 } 860 861 /** 862 * @param value {@link #code} (A code that identifies a particular service (i.e., procedure, diagnostic investigation, or panel of investigations) that have been requested.) 863 */ 864 public ServiceRequest setCode(CodeableConcept value) { 865 this.code = value; 866 return this; 867 } 868 869 /** 870 * @return {@link #orderDetail} (Additional details and instructions about the how the services are to be delivered. For example, and order for a urinary catheter may have an order detail for an external or indwelling catheter, or an order for a bandage may require additional instructions specifying how the bandage should be applied.) 871 */ 872 public List<CodeableConcept> getOrderDetail() { 873 if (this.orderDetail == null) 874 this.orderDetail = new ArrayList<CodeableConcept>(); 875 return this.orderDetail; 876 } 877 878 /** 879 * @return Returns a reference to <code>this</code> for easy method chaining 880 */ 881 public ServiceRequest setOrderDetail(List<CodeableConcept> theOrderDetail) { 882 this.orderDetail = theOrderDetail; 883 return this; 884 } 885 886 public boolean hasOrderDetail() { 887 if (this.orderDetail == null) 888 return false; 889 for (CodeableConcept item : this.orderDetail) 890 if (!item.isEmpty()) 891 return true; 892 return false; 893 } 894 895 public CodeableConcept addOrderDetail() { //3 896 CodeableConcept t = new CodeableConcept(); 897 if (this.orderDetail == null) 898 this.orderDetail = new ArrayList<CodeableConcept>(); 899 this.orderDetail.add(t); 900 return t; 901 } 902 903 public ServiceRequest addOrderDetail(CodeableConcept t) { //3 904 if (t == null) 905 return this; 906 if (this.orderDetail == null) 907 this.orderDetail = new ArrayList<CodeableConcept>(); 908 this.orderDetail.add(t); 909 return this; 910 } 911 912 /** 913 * @return The first repetition of repeating field {@link #orderDetail}, creating it if it does not already exist {3} 914 */ 915 public CodeableConcept getOrderDetailFirstRep() { 916 if (getOrderDetail().isEmpty()) { 917 addOrderDetail(); 918 } 919 return getOrderDetail().get(0); 920 } 921 922 /** 923 * @return {@link #quantity} (An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).) 924 */ 925 public DataType getQuantity() { 926 return this.quantity; 927 } 928 929 /** 930 * @return {@link #quantity} (An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).) 931 */ 932 public Quantity getQuantityQuantity() throws FHIRException { 933 if (this.quantity == null) 934 this.quantity = new Quantity(); 935 if (!(this.quantity instanceof Quantity)) 936 throw new FHIRException("Type mismatch: the type Quantity was expected, but "+this.quantity.getClass().getName()+" was encountered"); 937 return (Quantity) this.quantity; 938 } 939 940 public boolean hasQuantityQuantity() { 941 return this != null && this.quantity instanceof Quantity; 942 } 943 944 /** 945 * @return {@link #quantity} (An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).) 946 */ 947 public Ratio getQuantityRatio() throws FHIRException { 948 if (this.quantity == null) 949 this.quantity = new Ratio(); 950 if (!(this.quantity instanceof Ratio)) 951 throw new FHIRException("Type mismatch: the type Ratio was expected, but "+this.quantity.getClass().getName()+" was encountered"); 952 return (Ratio) this.quantity; 953 } 954 955 public boolean hasQuantityRatio() { 956 return this != null && this.quantity instanceof Ratio; 957 } 958 959 /** 960 * @return {@link #quantity} (An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).) 961 */ 962 public Range getQuantityRange() throws FHIRException { 963 if (this.quantity == null) 964 this.quantity = new Range(); 965 if (!(this.quantity instanceof Range)) 966 throw new FHIRException("Type mismatch: the type Range was expected, but "+this.quantity.getClass().getName()+" was encountered"); 967 return (Range) this.quantity; 968 } 969 970 public boolean hasQuantityRange() { 971 return this != null && this.quantity instanceof Range; 972 } 973 974 public boolean hasQuantity() { 975 return this.quantity != null && !this.quantity.isEmpty(); 976 } 977 978 /** 979 * @param value {@link #quantity} (An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).) 980 */ 981 public ServiceRequest setQuantity(DataType value) { 982 if (value != null && !(value instanceof Quantity || value instanceof Ratio || value instanceof Range)) 983 throw new Error("Not the right type for ServiceRequest.quantity[x]: "+value.fhirType()); 984 this.quantity = value; 985 return this; 986 } 987 988 /** 989 * @return {@link #subject} (On whom or what the service is to be performed. This is usually a human patient, but can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans).) 990 */ 991 public Reference getSubject() { 992 if (this.subject == null) 993 if (Configuration.errorOnAutoCreate()) 994 throw new Error("Attempt to auto-create ServiceRequest.subject"); 995 else if (Configuration.doAutoCreate()) 996 this.subject = new Reference(); // cc 997 return this.subject; 998 } 999 1000 public boolean hasSubject() { 1001 return this.subject != null && !this.subject.isEmpty(); 1002 } 1003 1004 /** 1005 * @param value {@link #subject} (On whom or what the service is to be performed. This is usually a human patient, but can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans).) 1006 */ 1007 public ServiceRequest setSubject(Reference value) { 1008 this.subject = value; 1009 return this; 1010 } 1011 1012 /** 1013 * @return {@link #encounter} (An encounter that provides additional information about the healthcare context in which this request is made.) 1014 */ 1015 public Reference getEncounter() { 1016 if (this.encounter == null) 1017 if (Configuration.errorOnAutoCreate()) 1018 throw new Error("Attempt to auto-create ServiceRequest.encounter"); 1019 else if (Configuration.doAutoCreate()) 1020 this.encounter = new Reference(); // cc 1021 return this.encounter; 1022 } 1023 1024 public boolean hasEncounter() { 1025 return this.encounter != null && !this.encounter.isEmpty(); 1026 } 1027 1028 /** 1029 * @param value {@link #encounter} (An encounter that provides additional information about the healthcare context in which this request is made.) 1030 */ 1031 public ServiceRequest setEncounter(Reference value) { 1032 this.encounter = value; 1033 return this; 1034 } 1035 1036 /** 1037 * @return {@link #occurrence} (The date/time at which the requested service should occur.) 1038 */ 1039 public DataType getOccurrence() { 1040 return this.occurrence; 1041 } 1042 1043 /** 1044 * @return {@link #occurrence} (The date/time at which the requested service should occur.) 1045 */ 1046 public DateTimeType getOccurrenceDateTimeType() throws FHIRException { 1047 if (this.occurrence == null) 1048 this.occurrence = new DateTimeType(); 1049 if (!(this.occurrence instanceof DateTimeType)) 1050 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.occurrence.getClass().getName()+" was encountered"); 1051 return (DateTimeType) this.occurrence; 1052 } 1053 1054 public boolean hasOccurrenceDateTimeType() { 1055 return this != null && this.occurrence instanceof DateTimeType; 1056 } 1057 1058 /** 1059 * @return {@link #occurrence} (The date/time at which the requested service should occur.) 1060 */ 1061 public Period getOccurrencePeriod() throws FHIRException { 1062 if (this.occurrence == null) 1063 this.occurrence = new Period(); 1064 if (!(this.occurrence instanceof Period)) 1065 throw new FHIRException("Type mismatch: the type Period was expected, but "+this.occurrence.getClass().getName()+" was encountered"); 1066 return (Period) this.occurrence; 1067 } 1068 1069 public boolean hasOccurrencePeriod() { 1070 return this != null && this.occurrence instanceof Period; 1071 } 1072 1073 /** 1074 * @return {@link #occurrence} (The date/time at which the requested service should occur.) 1075 */ 1076 public Timing getOccurrenceTiming() throws FHIRException { 1077 if (this.occurrence == null) 1078 this.occurrence = new Timing(); 1079 if (!(this.occurrence instanceof Timing)) 1080 throw new FHIRException("Type mismatch: the type Timing was expected, but "+this.occurrence.getClass().getName()+" was encountered"); 1081 return (Timing) this.occurrence; 1082 } 1083 1084 public boolean hasOccurrenceTiming() { 1085 return this != null && this.occurrence instanceof Timing; 1086 } 1087 1088 public boolean hasOccurrence() { 1089 return this.occurrence != null && !this.occurrence.isEmpty(); 1090 } 1091 1092 /** 1093 * @param value {@link #occurrence} (The date/time at which the requested service should occur.) 1094 */ 1095 public ServiceRequest setOccurrence(DataType value) { 1096 if (value != null && !(value instanceof DateTimeType || value instanceof Period || value instanceof Timing)) 1097 throw new Error("Not the right type for ServiceRequest.occurrence[x]: "+value.fhirType()); 1098 this.occurrence = value; 1099 return this; 1100 } 1101 1102 /** 1103 * @return {@link #asNeeded} (If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example "pain", "on flare-up", etc.) 1104 */ 1105 public DataType getAsNeeded() { 1106 return this.asNeeded; 1107 } 1108 1109 /** 1110 * @return {@link #asNeeded} (If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example "pain", "on flare-up", etc.) 1111 */ 1112 public BooleanType getAsNeededBooleanType() throws FHIRException { 1113 if (this.asNeeded == null) 1114 this.asNeeded = new BooleanType(); 1115 if (!(this.asNeeded instanceof BooleanType)) 1116 throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.asNeeded.getClass().getName()+" was encountered"); 1117 return (BooleanType) this.asNeeded; 1118 } 1119 1120 public boolean hasAsNeededBooleanType() { 1121 return this != null && this.asNeeded instanceof BooleanType; 1122 } 1123 1124 /** 1125 * @return {@link #asNeeded} (If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example "pain", "on flare-up", etc.) 1126 */ 1127 public CodeableConcept getAsNeededCodeableConcept() throws FHIRException { 1128 if (this.asNeeded == null) 1129 this.asNeeded = new CodeableConcept(); 1130 if (!(this.asNeeded instanceof CodeableConcept)) 1131 throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.asNeeded.getClass().getName()+" was encountered"); 1132 return (CodeableConcept) this.asNeeded; 1133 } 1134 1135 public boolean hasAsNeededCodeableConcept() { 1136 return this != null && this.asNeeded instanceof CodeableConcept; 1137 } 1138 1139 public boolean hasAsNeeded() { 1140 return this.asNeeded != null && !this.asNeeded.isEmpty(); 1141 } 1142 1143 /** 1144 * @param value {@link #asNeeded} (If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example "pain", "on flare-up", etc.) 1145 */ 1146 public ServiceRequest setAsNeeded(DataType value) { 1147 if (value != null && !(value instanceof BooleanType || value instanceof CodeableConcept)) 1148 throw new Error("Not the right type for ServiceRequest.asNeeded[x]: "+value.fhirType()); 1149 this.asNeeded = value; 1150 return this; 1151 } 1152 1153 /** 1154 * @return {@link #authoredOn} (When the request transitioned to being actionable.). This is the underlying object with id, value and extensions. The accessor "getAuthoredOn" gives direct access to the value 1155 */ 1156 public DateTimeType getAuthoredOnElement() { 1157 if (this.authoredOn == null) 1158 if (Configuration.errorOnAutoCreate()) 1159 throw new Error("Attempt to auto-create ServiceRequest.authoredOn"); 1160 else if (Configuration.doAutoCreate()) 1161 this.authoredOn = new DateTimeType(); // bb 1162 return this.authoredOn; 1163 } 1164 1165 public boolean hasAuthoredOnElement() { 1166 return this.authoredOn != null && !this.authoredOn.isEmpty(); 1167 } 1168 1169 public boolean hasAuthoredOn() { 1170 return this.authoredOn != null && !this.authoredOn.isEmpty(); 1171 } 1172 1173 /** 1174 * @param value {@link #authoredOn} (When the request transitioned to being actionable.). This is the underlying object with id, value and extensions. The accessor "getAuthoredOn" gives direct access to the value 1175 */ 1176 public ServiceRequest setAuthoredOnElement(DateTimeType value) { 1177 this.authoredOn = value; 1178 return this; 1179 } 1180 1181 /** 1182 * @return When the request transitioned to being actionable. 1183 */ 1184 public Date getAuthoredOn() { 1185 return this.authoredOn == null ? null : this.authoredOn.getValue(); 1186 } 1187 1188 /** 1189 * @param value When the request transitioned to being actionable. 1190 */ 1191 public ServiceRequest setAuthoredOn(Date value) { 1192 if (value == null) 1193 this.authoredOn = null; 1194 else { 1195 if (this.authoredOn == null) 1196 this.authoredOn = new DateTimeType(); 1197 this.authoredOn.setValue(value); 1198 } 1199 return this; 1200 } 1201 1202 /** 1203 * @return {@link #requester} (The individual who initiated the request and has responsibility for its activation.) 1204 */ 1205 public Reference getRequester() { 1206 if (this.requester == null) 1207 if (Configuration.errorOnAutoCreate()) 1208 throw new Error("Attempt to auto-create ServiceRequest.requester"); 1209 else if (Configuration.doAutoCreate()) 1210 this.requester = new Reference(); // cc 1211 return this.requester; 1212 } 1213 1214 public boolean hasRequester() { 1215 return this.requester != null && !this.requester.isEmpty(); 1216 } 1217 1218 /** 1219 * @param value {@link #requester} (The individual who initiated the request and has responsibility for its activation.) 1220 */ 1221 public ServiceRequest setRequester(Reference value) { 1222 this.requester = value; 1223 return this; 1224 } 1225 1226 /** 1227 * @return {@link #performerType} (Desired type of performer for doing the requested service.) 1228 */ 1229 public CodeableConcept getPerformerType() { 1230 if (this.performerType == null) 1231 if (Configuration.errorOnAutoCreate()) 1232 throw new Error("Attempt to auto-create ServiceRequest.performerType"); 1233 else if (Configuration.doAutoCreate()) 1234 this.performerType = new CodeableConcept(); // cc 1235 return this.performerType; 1236 } 1237 1238 public boolean hasPerformerType() { 1239 return this.performerType != null && !this.performerType.isEmpty(); 1240 } 1241 1242 /** 1243 * @param value {@link #performerType} (Desired type of performer for doing the requested service.) 1244 */ 1245 public ServiceRequest setPerformerType(CodeableConcept value) { 1246 this.performerType = value; 1247 return this; 1248 } 1249 1250 /** 1251 * @return {@link #performer} (The desired performer for doing the requested service. For example, the surgeon, dermatopathologist, endoscopist, etc.) 1252 */ 1253 public List<Reference> getPerformer() { 1254 if (this.performer == null) 1255 this.performer = new ArrayList<Reference>(); 1256 return this.performer; 1257 } 1258 1259 /** 1260 * @return Returns a reference to <code>this</code> for easy method chaining 1261 */ 1262 public ServiceRequest setPerformer(List<Reference> thePerformer) { 1263 this.performer = thePerformer; 1264 return this; 1265 } 1266 1267 public boolean hasPerformer() { 1268 if (this.performer == null) 1269 return false; 1270 for (Reference item : this.performer) 1271 if (!item.isEmpty()) 1272 return true; 1273 return false; 1274 } 1275 1276 public Reference addPerformer() { //3 1277 Reference t = new Reference(); 1278 if (this.performer == null) 1279 this.performer = new ArrayList<Reference>(); 1280 this.performer.add(t); 1281 return t; 1282 } 1283 1284 public ServiceRequest addPerformer(Reference t) { //3 1285 if (t == null) 1286 return this; 1287 if (this.performer == null) 1288 this.performer = new ArrayList<Reference>(); 1289 this.performer.add(t); 1290 return this; 1291 } 1292 1293 /** 1294 * @return The first repetition of repeating field {@link #performer}, creating it if it does not already exist {3} 1295 */ 1296 public Reference getPerformerFirstRep() { 1297 if (getPerformer().isEmpty()) { 1298 addPerformer(); 1299 } 1300 return getPerformer().get(0); 1301 } 1302 1303 /** 1304 * @return {@link #location} (The preferred location(s) where the procedure should actually happen in coded or free text form. E.g. at home or nursing day care center.) 1305 */ 1306 public List<CodeableReference> getLocation() { 1307 if (this.location == null) 1308 this.location = new ArrayList<CodeableReference>(); 1309 return this.location; 1310 } 1311 1312 /** 1313 * @return Returns a reference to <code>this</code> for easy method chaining 1314 */ 1315 public ServiceRequest setLocation(List<CodeableReference> theLocation) { 1316 this.location = theLocation; 1317 return this; 1318 } 1319 1320 public boolean hasLocation() { 1321 if (this.location == null) 1322 return false; 1323 for (CodeableReference item : this.location) 1324 if (!item.isEmpty()) 1325 return true; 1326 return false; 1327 } 1328 1329 public CodeableReference addLocation() { //3 1330 CodeableReference t = new CodeableReference(); 1331 if (this.location == null) 1332 this.location = new ArrayList<CodeableReference>(); 1333 this.location.add(t); 1334 return t; 1335 } 1336 1337 public ServiceRequest addLocation(CodeableReference t) { //3 1338 if (t == null) 1339 return this; 1340 if (this.location == null) 1341 this.location = new ArrayList<CodeableReference>(); 1342 this.location.add(t); 1343 return this; 1344 } 1345 1346 /** 1347 * @return The first repetition of repeating field {@link #location}, creating it if it does not already exist {3} 1348 */ 1349 public CodeableReference getLocationFirstRep() { 1350 if (getLocation().isEmpty()) { 1351 addLocation(); 1352 } 1353 return getLocation().get(0); 1354 } 1355 1356 /** 1357 * @return {@link #reason} (An explanation or justification for why this service is being requested in coded or textual form. This is often for billing purposes. May relate to the resources referred to in `supportingInfo`.) 1358 */ 1359 public List<CodeableReference> getReason() { 1360 if (this.reason == null) 1361 this.reason = new ArrayList<CodeableReference>(); 1362 return this.reason; 1363 } 1364 1365 /** 1366 * @return Returns a reference to <code>this</code> for easy method chaining 1367 */ 1368 public ServiceRequest setReason(List<CodeableReference> theReason) { 1369 this.reason = theReason; 1370 return this; 1371 } 1372 1373 public boolean hasReason() { 1374 if (this.reason == null) 1375 return false; 1376 for (CodeableReference item : this.reason) 1377 if (!item.isEmpty()) 1378 return true; 1379 return false; 1380 } 1381 1382 public CodeableReference addReason() { //3 1383 CodeableReference t = new CodeableReference(); 1384 if (this.reason == null) 1385 this.reason = new ArrayList<CodeableReference>(); 1386 this.reason.add(t); 1387 return t; 1388 } 1389 1390 public ServiceRequest addReason(CodeableReference t) { //3 1391 if (t == null) 1392 return this; 1393 if (this.reason == null) 1394 this.reason = new ArrayList<CodeableReference>(); 1395 this.reason.add(t); 1396 return this; 1397 } 1398 1399 /** 1400 * @return The first repetition of repeating field {@link #reason}, creating it if it does not already exist {3} 1401 */ 1402 public CodeableReference getReasonFirstRep() { 1403 if (getReason().isEmpty()) { 1404 addReason(); 1405 } 1406 return getReason().get(0); 1407 } 1408 1409 /** 1410 * @return {@link #insurance} (Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be needed for delivering the requested service.) 1411 */ 1412 public List<Reference> getInsurance() { 1413 if (this.insurance == null) 1414 this.insurance = new ArrayList<Reference>(); 1415 return this.insurance; 1416 } 1417 1418 /** 1419 * @return Returns a reference to <code>this</code> for easy method chaining 1420 */ 1421 public ServiceRequest setInsurance(List<Reference> theInsurance) { 1422 this.insurance = theInsurance; 1423 return this; 1424 } 1425 1426 public boolean hasInsurance() { 1427 if (this.insurance == null) 1428 return false; 1429 for (Reference item : this.insurance) 1430 if (!item.isEmpty()) 1431 return true; 1432 return false; 1433 } 1434 1435 public Reference addInsurance() { //3 1436 Reference t = new Reference(); 1437 if (this.insurance == null) 1438 this.insurance = new ArrayList<Reference>(); 1439 this.insurance.add(t); 1440 return t; 1441 } 1442 1443 public ServiceRequest addInsurance(Reference t) { //3 1444 if (t == null) 1445 return this; 1446 if (this.insurance == null) 1447 this.insurance = new ArrayList<Reference>(); 1448 this.insurance.add(t); 1449 return this; 1450 } 1451 1452 /** 1453 * @return The first repetition of repeating field {@link #insurance}, creating it if it does not already exist {3} 1454 */ 1455 public Reference getInsuranceFirstRep() { 1456 if (getInsurance().isEmpty()) { 1457 addInsurance(); 1458 } 1459 return getInsurance().get(0); 1460 } 1461 1462 /** 1463 * @return {@link #supportingInfo} (Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations. In laboratory ordering these are typically referred to as "ask at order entry questions (AOEs)". This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example, reporting the amount of inspired oxygen for blood gas measurements.) 1464 */ 1465 public List<Reference> getSupportingInfo() { 1466 if (this.supportingInfo == null) 1467 this.supportingInfo = new ArrayList<Reference>(); 1468 return this.supportingInfo; 1469 } 1470 1471 /** 1472 * @return Returns a reference to <code>this</code> for easy method chaining 1473 */ 1474 public ServiceRequest setSupportingInfo(List<Reference> theSupportingInfo) { 1475 this.supportingInfo = theSupportingInfo; 1476 return this; 1477 } 1478 1479 public boolean hasSupportingInfo() { 1480 if (this.supportingInfo == null) 1481 return false; 1482 for (Reference item : this.supportingInfo) 1483 if (!item.isEmpty()) 1484 return true; 1485 return false; 1486 } 1487 1488 public Reference addSupportingInfo() { //3 1489 Reference t = new Reference(); 1490 if (this.supportingInfo == null) 1491 this.supportingInfo = new ArrayList<Reference>(); 1492 this.supportingInfo.add(t); 1493 return t; 1494 } 1495 1496 public ServiceRequest addSupportingInfo(Reference t) { //3 1497 if (t == null) 1498 return this; 1499 if (this.supportingInfo == null) 1500 this.supportingInfo = new ArrayList<Reference>(); 1501 this.supportingInfo.add(t); 1502 return this; 1503 } 1504 1505 /** 1506 * @return The first repetition of repeating field {@link #supportingInfo}, creating it if it does not already exist {3} 1507 */ 1508 public Reference getSupportingInfoFirstRep() { 1509 if (getSupportingInfo().isEmpty()) { 1510 addSupportingInfo(); 1511 } 1512 return getSupportingInfo().get(0); 1513 } 1514 1515 /** 1516 * @return {@link #specimen} (One or more specimens that the laboratory procedure will use.) 1517 */ 1518 public List<Reference> getSpecimen() { 1519 if (this.specimen == null) 1520 this.specimen = new ArrayList<Reference>(); 1521 return this.specimen; 1522 } 1523 1524 /** 1525 * @return Returns a reference to <code>this</code> for easy method chaining 1526 */ 1527 public ServiceRequest setSpecimen(List<Reference> theSpecimen) { 1528 this.specimen = theSpecimen; 1529 return this; 1530 } 1531 1532 public boolean hasSpecimen() { 1533 if (this.specimen == null) 1534 return false; 1535 for (Reference item : this.specimen) 1536 if (!item.isEmpty()) 1537 return true; 1538 return false; 1539 } 1540 1541 public Reference addSpecimen() { //3 1542 Reference t = new Reference(); 1543 if (this.specimen == null) 1544 this.specimen = new ArrayList<Reference>(); 1545 this.specimen.add(t); 1546 return t; 1547 } 1548 1549 public ServiceRequest addSpecimen(Reference t) { //3 1550 if (t == null) 1551 return this; 1552 if (this.specimen == null) 1553 this.specimen = new ArrayList<Reference>(); 1554 this.specimen.add(t); 1555 return this; 1556 } 1557 1558 /** 1559 * @return The first repetition of repeating field {@link #specimen}, creating it if it does not already exist {3} 1560 */ 1561 public Reference getSpecimenFirstRep() { 1562 if (getSpecimen().isEmpty()) { 1563 addSpecimen(); 1564 } 1565 return getSpecimen().get(0); 1566 } 1567 1568 /** 1569 * @return {@link #bodySite} (Anatomic location where the procedure should be performed. This is the target site.) 1570 */ 1571 public List<CodeableConcept> getBodySite() { 1572 if (this.bodySite == null) 1573 this.bodySite = new ArrayList<CodeableConcept>(); 1574 return this.bodySite; 1575 } 1576 1577 /** 1578 * @return Returns a reference to <code>this</code> for easy method chaining 1579 */ 1580 public ServiceRequest setBodySite(List<CodeableConcept> theBodySite) { 1581 this.bodySite = theBodySite; 1582 return this; 1583 } 1584 1585 public boolean hasBodySite() { 1586 if (this.bodySite == null) 1587 return false; 1588 for (CodeableConcept item : this.bodySite) 1589 if (!item.isEmpty()) 1590 return true; 1591 return false; 1592 } 1593 1594 public CodeableConcept addBodySite() { //3 1595 CodeableConcept t = new CodeableConcept(); 1596 if (this.bodySite == null) 1597 this.bodySite = new ArrayList<CodeableConcept>(); 1598 this.bodySite.add(t); 1599 return t; 1600 } 1601 1602 public ServiceRequest addBodySite(CodeableConcept t) { //3 1603 if (t == null) 1604 return this; 1605 if (this.bodySite == null) 1606 this.bodySite = new ArrayList<CodeableConcept>(); 1607 this.bodySite.add(t); 1608 return this; 1609 } 1610 1611 /** 1612 * @return The first repetition of repeating field {@link #bodySite}, creating it if it does not already exist {3} 1613 */ 1614 public CodeableConcept getBodySiteFirstRep() { 1615 if (getBodySite().isEmpty()) { 1616 addBodySite(); 1617 } 1618 return getBodySite().get(0); 1619 } 1620 1621 /** 1622 * @return {@link #note} (Any other notes and comments made about the service request. For example, internal billing notes.) 1623 */ 1624 public List<Annotation> getNote() { 1625 if (this.note == null) 1626 this.note = new ArrayList<Annotation>(); 1627 return this.note; 1628 } 1629 1630 /** 1631 * @return Returns a reference to <code>this</code> for easy method chaining 1632 */ 1633 public ServiceRequest setNote(List<Annotation> theNote) { 1634 this.note = theNote; 1635 return this; 1636 } 1637 1638 public boolean hasNote() { 1639 if (this.note == null) 1640 return false; 1641 for (Annotation item : this.note) 1642 if (!item.isEmpty()) 1643 return true; 1644 return false; 1645 } 1646 1647 public Annotation addNote() { //3 1648 Annotation t = new Annotation(); 1649 if (this.note == null) 1650 this.note = new ArrayList<Annotation>(); 1651 this.note.add(t); 1652 return t; 1653 } 1654 1655 public ServiceRequest addNote(Annotation t) { //3 1656 if (t == null) 1657 return this; 1658 if (this.note == null) 1659 this.note = new ArrayList<Annotation>(); 1660 this.note.add(t); 1661 return this; 1662 } 1663 1664 /** 1665 * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} 1666 */ 1667 public Annotation getNoteFirstRep() { 1668 if (getNote().isEmpty()) { 1669 addNote(); 1670 } 1671 return getNote().get(0); 1672 } 1673 1674 /** 1675 * @return {@link #patientInstruction} (Instructions in terms that are understood by the patient or consumer.). This is the underlying object with id, value and extensions. The accessor "getPatientInstruction" gives direct access to the value 1676 */ 1677 public StringType getPatientInstructionElement() { 1678 if (this.patientInstruction == null) 1679 if (Configuration.errorOnAutoCreate()) 1680 throw new Error("Attempt to auto-create ServiceRequest.patientInstruction"); 1681 else if (Configuration.doAutoCreate()) 1682 this.patientInstruction = new StringType(); // bb 1683 return this.patientInstruction; 1684 } 1685 1686 public boolean hasPatientInstructionElement() { 1687 return this.patientInstruction != null && !this.patientInstruction.isEmpty(); 1688 } 1689 1690 public boolean hasPatientInstruction() { 1691 return this.patientInstruction != null && !this.patientInstruction.isEmpty(); 1692 } 1693 1694 /** 1695 * @param value {@link #patientInstruction} (Instructions in terms that are understood by the patient or consumer.). This is the underlying object with id, value and extensions. The accessor "getPatientInstruction" gives direct access to the value 1696 */ 1697 public ServiceRequest setPatientInstructionElement(StringType value) { 1698 this.patientInstruction = value; 1699 return this; 1700 } 1701 1702 /** 1703 * @return Instructions in terms that are understood by the patient or consumer. 1704 */ 1705 public String getPatientInstruction() { 1706 return this.patientInstruction == null ? null : this.patientInstruction.getValue(); 1707 } 1708 1709 /** 1710 * @param value Instructions in terms that are understood by the patient or consumer. 1711 */ 1712 public ServiceRequest setPatientInstruction(String value) { 1713 if (Utilities.noString(value)) 1714 this.patientInstruction = null; 1715 else { 1716 if (this.patientInstruction == null) 1717 this.patientInstruction = new StringType(); 1718 this.patientInstruction.setValue(value); 1719 } 1720 return this; 1721 } 1722 1723 /** 1724 * @return {@link #relevantHistory} (Key events in the history of the request.) 1725 */ 1726 public List<Reference> getRelevantHistory() { 1727 if (this.relevantHistory == null) 1728 this.relevantHistory = new ArrayList<Reference>(); 1729 return this.relevantHistory; 1730 } 1731 1732 /** 1733 * @return Returns a reference to <code>this</code> for easy method chaining 1734 */ 1735 public ServiceRequest setRelevantHistory(List<Reference> theRelevantHistory) { 1736 this.relevantHistory = theRelevantHistory; 1737 return this; 1738 } 1739 1740 public boolean hasRelevantHistory() { 1741 if (this.relevantHistory == null) 1742 return false; 1743 for (Reference item : this.relevantHistory) 1744 if (!item.isEmpty()) 1745 return true; 1746 return false; 1747 } 1748 1749 public Reference addRelevantHistory() { //3 1750 Reference t = new Reference(); 1751 if (this.relevantHistory == null) 1752 this.relevantHistory = new ArrayList<Reference>(); 1753 this.relevantHistory.add(t); 1754 return t; 1755 } 1756 1757 public ServiceRequest addRelevantHistory(Reference t) { //3 1758 if (t == null) 1759 return this; 1760 if (this.relevantHistory == null) 1761 this.relevantHistory = new ArrayList<Reference>(); 1762 this.relevantHistory.add(t); 1763 return this; 1764 } 1765 1766 /** 1767 * @return The first repetition of repeating field {@link #relevantHistory}, creating it if it does not already exist {3} 1768 */ 1769 public Reference getRelevantHistoryFirstRep() { 1770 if (getRelevantHistory().isEmpty()) { 1771 addRelevantHistory(); 1772 } 1773 return getRelevantHistory().get(0); 1774 } 1775 1776 protected void listChildren(List<Property> children) { 1777 super.listChildren(children); 1778 children.add(new Property("identifier", "Identifier", "Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1779 children.add(new Property("instantiatesCanonical", "canonical(ActivityDefinition|PlanDefinition)", "The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.", 0, java.lang.Integer.MAX_VALUE, instantiatesCanonical)); 1780 children.add(new Property("instantiatesUri", "uri", "The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.", 0, java.lang.Integer.MAX_VALUE, instantiatesUri)); 1781 children.add(new Property("basedOn", "Reference(CarePlan|ServiceRequest|MedicationRequest)", "Plan/proposal/order fulfilled by this request.", 0, java.lang.Integer.MAX_VALUE, basedOn)); 1782 children.add(new Property("replaces", "Reference(ServiceRequest)", "The request takes the place of the referenced completed or terminated request(s).", 0, java.lang.Integer.MAX_VALUE, replaces)); 1783 children.add(new Property("requisition", "Identifier", "A shared identifier common to all service requests that were authorized more or less simultaneously by a single author, representing the composite or group identifier.", 0, 1, requisition)); 1784 children.add(new Property("status", "code", "The status of the order.", 0, 1, status)); 1785 children.add(new Property("intent", "code", "Whether the request is a proposal, plan, an original order or a reflex order.", 0, 1, intent)); 1786 children.add(new Property("category", "CodeableConcept", "A code that classifies the service for searching, sorting and display purposes (e.g. \"Surgical Procedure\").", 0, java.lang.Integer.MAX_VALUE, category)); 1787 children.add(new Property("priority", "code", "Indicates how quickly the ServiceRequest should be addressed with respect to other requests.", 0, 1, priority)); 1788 children.add(new Property("doNotPerform", "boolean", "Set this to true if the record is saying that the service/procedure should NOT be performed.", 0, 1, doNotPerform)); 1789 children.add(new Property("code", "CodeableConcept", "A code that identifies a particular service (i.e., procedure, diagnostic investigation, or panel of investigations) that have been requested.", 0, 1, code)); 1790 children.add(new Property("orderDetail", "CodeableConcept", "Additional details and instructions about the how the services are to be delivered. For example, and order for a urinary catheter may have an order detail for an external or indwelling catheter, or an order for a bandage may require additional instructions specifying how the bandage should be applied.", 0, java.lang.Integer.MAX_VALUE, orderDetail)); 1791 children.add(new Property("quantity[x]", "Quantity|Ratio|Range", "An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).", 0, 1, quantity)); 1792 children.add(new Property("subject", "Reference(Patient|Group|Location|Device)", "On whom or what the service is to be performed. This is usually a human patient, but can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans).", 0, 1, subject)); 1793 children.add(new Property("encounter", "Reference(Encounter)", "An encounter that provides additional information about the healthcare context in which this request is made.", 0, 1, encounter)); 1794 children.add(new Property("occurrence[x]", "dateTime|Period|Timing", "The date/time at which the requested service should occur.", 0, 1, occurrence)); 1795 children.add(new Property("asNeeded[x]", "boolean|CodeableConcept", "If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example \"pain\", \"on flare-up\", etc.", 0, 1, asNeeded)); 1796 children.add(new Property("authoredOn", "dateTime", "When the request transitioned to being actionable.", 0, 1, authoredOn)); 1797 children.add(new Property("requester", "Reference(Practitioner|PractitionerRole|Organization|Patient|RelatedPerson|Device)", "The individual who initiated the request and has responsibility for its activation.", 0, 1, requester)); 1798 children.add(new Property("performerType", "CodeableConcept", "Desired type of performer for doing the requested service.", 0, 1, performerType)); 1799 children.add(new Property("performer", "Reference(Practitioner|PractitionerRole|Organization|CareTeam|HealthcareService|Patient|Device|RelatedPerson)", "The desired performer for doing the requested service. For example, the surgeon, dermatopathologist, endoscopist, etc.", 0, java.lang.Integer.MAX_VALUE, performer)); 1800 children.add(new Property("location", "CodeableReference(Location)", "The preferred location(s) where the procedure should actually happen in coded or free text form. E.g. at home or nursing day care center.", 0, java.lang.Integer.MAX_VALUE, location)); 1801 children.add(new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport|DocumentReference|DetectedIssue)", "An explanation or justification for why this service is being requested in coded or textual form. This is often for billing purposes. May relate to the resources referred to in `supportingInfo`.", 0, java.lang.Integer.MAX_VALUE, reason)); 1802 children.add(new Property("insurance", "Reference(Coverage|ClaimResponse)", "Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be needed for delivering the requested service.", 0, java.lang.Integer.MAX_VALUE, insurance)); 1803 children.add(new Property("supportingInfo", "Reference(Any)", "Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations. In laboratory ordering these are typically referred to as \"ask at order entry questions (AOEs)\". This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example, reporting the amount of inspired oxygen for blood gas measurements.", 0, java.lang.Integer.MAX_VALUE, supportingInfo)); 1804 children.add(new Property("specimen", "Reference(Specimen)", "One or more specimens that the laboratory procedure will use.", 0, java.lang.Integer.MAX_VALUE, specimen)); 1805 children.add(new Property("bodySite", "CodeableConcept", "Anatomic location where the procedure should be performed. This is the target site.", 0, java.lang.Integer.MAX_VALUE, bodySite)); 1806 children.add(new Property("note", "Annotation", "Any other notes and comments made about the service request. For example, internal billing notes.", 0, java.lang.Integer.MAX_VALUE, note)); 1807 children.add(new Property("patientInstruction", "string", "Instructions in terms that are understood by the patient or consumer.", 0, 1, patientInstruction)); 1808 children.add(new Property("relevantHistory", "Reference(Provenance)", "Key events in the history of the request.", 0, java.lang.Integer.MAX_VALUE, relevantHistory)); 1809 } 1810 1811 @Override 1812 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1813 switch (_hash) { 1814 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller.", 0, java.lang.Integer.MAX_VALUE, identifier); 1815 case 8911915: /*instantiatesCanonical*/ return new Property("instantiatesCanonical", "canonical(ActivityDefinition|PlanDefinition)", "The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.", 0, java.lang.Integer.MAX_VALUE, instantiatesCanonical); 1816 case -1926393373: /*instantiatesUri*/ return new Property("instantiatesUri", "uri", "The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.", 0, java.lang.Integer.MAX_VALUE, instantiatesUri); 1817 case -332612366: /*basedOn*/ return new Property("basedOn", "Reference(CarePlan|ServiceRequest|MedicationRequest)", "Plan/proposal/order fulfilled by this request.", 0, java.lang.Integer.MAX_VALUE, basedOn); 1818 case -430332865: /*replaces*/ return new Property("replaces", "Reference(ServiceRequest)", "The request takes the place of the referenced completed or terminated request(s).", 0, java.lang.Integer.MAX_VALUE, replaces); 1819 case 395923612: /*requisition*/ return new Property("requisition", "Identifier", "A shared identifier common to all service requests that were authorized more or less simultaneously by a single author, representing the composite or group identifier.", 0, 1, requisition); 1820 case -892481550: /*status*/ return new Property("status", "code", "The status of the order.", 0, 1, status); 1821 case -1183762788: /*intent*/ return new Property("intent", "code", "Whether the request is a proposal, plan, an original order or a reflex order.", 0, 1, intent); 1822 case 50511102: /*category*/ return new Property("category", "CodeableConcept", "A code that classifies the service for searching, sorting and display purposes (e.g. \"Surgical Procedure\").", 0, java.lang.Integer.MAX_VALUE, category); 1823 case -1165461084: /*priority*/ return new Property("priority", "code", "Indicates how quickly the ServiceRequest should be addressed with respect to other requests.", 0, 1, priority); 1824 case -1788508167: /*doNotPerform*/ return new Property("doNotPerform", "boolean", "Set this to true if the record is saying that the service/procedure should NOT be performed.", 0, 1, doNotPerform); 1825 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "A code that identifies a particular service (i.e., procedure, diagnostic investigation, or panel of investigations) that have been requested.", 0, 1, code); 1826 case 1187338559: /*orderDetail*/ return new Property("orderDetail", "CodeableConcept", "Additional details and instructions about the how the services are to be delivered. For example, and order for a urinary catheter may have an order detail for an external or indwelling catheter, or an order for a bandage may require additional instructions specifying how the bandage should be applied.", 0, java.lang.Integer.MAX_VALUE, orderDetail); 1827 case -515002347: /*quantity[x]*/ return new Property("quantity[x]", "Quantity|Ratio|Range", "An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).", 0, 1, quantity); 1828 case -1285004149: /*quantity*/ return new Property("quantity[x]", "Quantity|Ratio|Range", "An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).", 0, 1, quantity); 1829 case -1087409610: /*quantityQuantity*/ return new Property("quantity[x]", "Quantity", "An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).", 0, 1, quantity); 1830 case -1004987840: /*quantityRatio*/ return new Property("quantity[x]", "Ratio", "An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).", 0, 1, quantity); 1831 case -1004993678: /*quantityRange*/ return new Property("quantity[x]", "Range", "An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).", 0, 1, quantity); 1832 case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group|Location|Device)", "On whom or what the service is to be performed. This is usually a human patient, but can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans).", 0, 1, subject); 1833 case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "An encounter that provides additional information about the healthcare context in which this request is made.", 0, 1, encounter); 1834 case -2022646513: /*occurrence[x]*/ return new Property("occurrence[x]", "dateTime|Period|Timing", "The date/time at which the requested service should occur.", 0, 1, occurrence); 1835 case 1687874001: /*occurrence*/ return new Property("occurrence[x]", "dateTime|Period|Timing", "The date/time at which the requested service should occur.", 0, 1, occurrence); 1836 case -298443636: /*occurrenceDateTime*/ return new Property("occurrence[x]", "dateTime", "The date/time at which the requested service should occur.", 0, 1, occurrence); 1837 case 1397156594: /*occurrencePeriod*/ return new Property("occurrence[x]", "Period", "The date/time at which the requested service should occur.", 0, 1, occurrence); 1838 case 1515218299: /*occurrenceTiming*/ return new Property("occurrence[x]", "Timing", "The date/time at which the requested service should occur.", 0, 1, occurrence); 1839 case -544329575: /*asNeeded[x]*/ return new Property("asNeeded[x]", "boolean|CodeableConcept", "If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example \"pain\", \"on flare-up\", etc.", 0, 1, asNeeded); 1840 case -1432923513: /*asNeeded*/ return new Property("asNeeded[x]", "boolean|CodeableConcept", "If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example \"pain\", \"on flare-up\", etc.", 0, 1, asNeeded); 1841 case -591717471: /*asNeededBoolean*/ return new Property("asNeeded[x]", "boolean", "If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example \"pain\", \"on flare-up\", etc.", 0, 1, asNeeded); 1842 case 1556420122: /*asNeededCodeableConcept*/ return new Property("asNeeded[x]", "CodeableConcept", "If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example \"pain\", \"on flare-up\", etc.", 0, 1, asNeeded); 1843 case -1500852503: /*authoredOn*/ return new Property("authoredOn", "dateTime", "When the request transitioned to being actionable.", 0, 1, authoredOn); 1844 case 693933948: /*requester*/ return new Property("requester", "Reference(Practitioner|PractitionerRole|Organization|Patient|RelatedPerson|Device)", "The individual who initiated the request and has responsibility for its activation.", 0, 1, requester); 1845 case -901444568: /*performerType*/ return new Property("performerType", "CodeableConcept", "Desired type of performer for doing the requested service.", 0, 1, performerType); 1846 case 481140686: /*performer*/ return new Property("performer", "Reference(Practitioner|PractitionerRole|Organization|CareTeam|HealthcareService|Patient|Device|RelatedPerson)", "The desired performer for doing the requested service. For example, the surgeon, dermatopathologist, endoscopist, etc.", 0, java.lang.Integer.MAX_VALUE, performer); 1847 case 1901043637: /*location*/ return new Property("location", "CodeableReference(Location)", "The preferred location(s) where the procedure should actually happen in coded or free text form. E.g. at home or nursing day care center.", 0, java.lang.Integer.MAX_VALUE, location); 1848 case -934964668: /*reason*/ return new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport|DocumentReference|DetectedIssue)", "An explanation or justification for why this service is being requested in coded or textual form. This is often for billing purposes. May relate to the resources referred to in `supportingInfo`.", 0, java.lang.Integer.MAX_VALUE, reason); 1849 case 73049818: /*insurance*/ return new Property("insurance", "Reference(Coverage|ClaimResponse)", "Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be needed for delivering the requested service.", 0, java.lang.Integer.MAX_VALUE, insurance); 1850 case 1922406657: /*supportingInfo*/ return new Property("supportingInfo", "Reference(Any)", "Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations. In laboratory ordering these are typically referred to as \"ask at order entry questions (AOEs)\". This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example, reporting the amount of inspired oxygen for blood gas measurements.", 0, java.lang.Integer.MAX_VALUE, supportingInfo); 1851 case -2132868344: /*specimen*/ return new Property("specimen", "Reference(Specimen)", "One or more specimens that the laboratory procedure will use.", 0, java.lang.Integer.MAX_VALUE, specimen); 1852 case 1702620169: /*bodySite*/ return new Property("bodySite", "CodeableConcept", "Anatomic location where the procedure should be performed. This is the target site.", 0, java.lang.Integer.MAX_VALUE, bodySite); 1853 case 3387378: /*note*/ return new Property("note", "Annotation", "Any other notes and comments made about the service request. For example, internal billing notes.", 0, java.lang.Integer.MAX_VALUE, note); 1854 case 737543241: /*patientInstruction*/ return new Property("patientInstruction", "string", "Instructions in terms that are understood by the patient or consumer.", 0, 1, patientInstruction); 1855 case 1538891575: /*relevantHistory*/ return new Property("relevantHistory", "Reference(Provenance)", "Key events in the history of the request.", 0, java.lang.Integer.MAX_VALUE, relevantHistory); 1856 default: return super.getNamedProperty(_hash, _name, _checkValid); 1857 } 1858 1859 } 1860 1861 @Override 1862 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1863 switch (hash) { 1864 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1865 case 8911915: /*instantiatesCanonical*/ return this.instantiatesCanonical == null ? new Base[0] : this.instantiatesCanonical.toArray(new Base[this.instantiatesCanonical.size()]); // CanonicalType 1866 case -1926393373: /*instantiatesUri*/ return this.instantiatesUri == null ? new Base[0] : this.instantiatesUri.toArray(new Base[this.instantiatesUri.size()]); // UriType 1867 case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : this.basedOn.toArray(new Base[this.basedOn.size()]); // Reference 1868 case -430332865: /*replaces*/ return this.replaces == null ? new Base[0] : this.replaces.toArray(new Base[this.replaces.size()]); // Reference 1869 case 395923612: /*requisition*/ return this.requisition == null ? new Base[0] : new Base[] {this.requisition}; // Identifier 1870 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<RequestStatus> 1871 case -1183762788: /*intent*/ return this.intent == null ? new Base[0] : new Base[] {this.intent}; // Enumeration<RequestIntent> 1872 case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept 1873 case -1165461084: /*priority*/ return this.priority == null ? new Base[0] : new Base[] {this.priority}; // Enumeration<RequestPriority> 1874 case -1788508167: /*doNotPerform*/ return this.doNotPerform == null ? new Base[0] : new Base[] {this.doNotPerform}; // BooleanType 1875 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 1876 case 1187338559: /*orderDetail*/ return this.orderDetail == null ? new Base[0] : this.orderDetail.toArray(new Base[this.orderDetail.size()]); // CodeableConcept 1877 case -1285004149: /*quantity*/ return this.quantity == null ? new Base[0] : new Base[] {this.quantity}; // DataType 1878 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference 1879 case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference 1880 case 1687874001: /*occurrence*/ return this.occurrence == null ? new Base[0] : new Base[] {this.occurrence}; // DataType 1881 case -1432923513: /*asNeeded*/ return this.asNeeded == null ? new Base[0] : new Base[] {this.asNeeded}; // DataType 1882 case -1500852503: /*authoredOn*/ return this.authoredOn == null ? new Base[0] : new Base[] {this.authoredOn}; // DateTimeType 1883 case 693933948: /*requester*/ return this.requester == null ? new Base[0] : new Base[] {this.requester}; // Reference 1884 case -901444568: /*performerType*/ return this.performerType == null ? new Base[0] : new Base[] {this.performerType}; // CodeableConcept 1885 case 481140686: /*performer*/ return this.performer == null ? new Base[0] : this.performer.toArray(new Base[this.performer.size()]); // Reference 1886 case 1901043637: /*location*/ return this.location == null ? new Base[0] : this.location.toArray(new Base[this.location.size()]); // CodeableReference 1887 case -934964668: /*reason*/ return this.reason == null ? new Base[0] : this.reason.toArray(new Base[this.reason.size()]); // CodeableReference 1888 case 73049818: /*insurance*/ return this.insurance == null ? new Base[0] : this.insurance.toArray(new Base[this.insurance.size()]); // Reference 1889 case 1922406657: /*supportingInfo*/ return this.supportingInfo == null ? new Base[0] : this.supportingInfo.toArray(new Base[this.supportingInfo.size()]); // Reference 1890 case -2132868344: /*specimen*/ return this.specimen == null ? new Base[0] : this.specimen.toArray(new Base[this.specimen.size()]); // Reference 1891 case 1702620169: /*bodySite*/ return this.bodySite == null ? new Base[0] : this.bodySite.toArray(new Base[this.bodySite.size()]); // CodeableConcept 1892 case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 1893 case 737543241: /*patientInstruction*/ return this.patientInstruction == null ? new Base[0] : new Base[] {this.patientInstruction}; // StringType 1894 case 1538891575: /*relevantHistory*/ return this.relevantHistory == null ? new Base[0] : this.relevantHistory.toArray(new Base[this.relevantHistory.size()]); // Reference 1895 default: return super.getProperty(hash, name, checkValid); 1896 } 1897 1898 } 1899 1900 @Override 1901 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1902 switch (hash) { 1903 case -1618432855: // identifier 1904 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 1905 return value; 1906 case 8911915: // instantiatesCanonical 1907 this.getInstantiatesCanonical().add(TypeConvertor.castToCanonical(value)); // CanonicalType 1908 return value; 1909 case -1926393373: // instantiatesUri 1910 this.getInstantiatesUri().add(TypeConvertor.castToUri(value)); // UriType 1911 return value; 1912 case -332612366: // basedOn 1913 this.getBasedOn().add(TypeConvertor.castToReference(value)); // Reference 1914 return value; 1915 case -430332865: // replaces 1916 this.getReplaces().add(TypeConvertor.castToReference(value)); // Reference 1917 return value; 1918 case 395923612: // requisition 1919 this.requisition = TypeConvertor.castToIdentifier(value); // Identifier 1920 return value; 1921 case -892481550: // status 1922 value = new RequestStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 1923 this.status = (Enumeration) value; // Enumeration<RequestStatus> 1924 return value; 1925 case -1183762788: // intent 1926 value = new RequestIntentEnumFactory().fromType(TypeConvertor.castToCode(value)); 1927 this.intent = (Enumeration) value; // Enumeration<RequestIntent> 1928 return value; 1929 case 50511102: // category 1930 this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 1931 return value; 1932 case -1165461084: // priority 1933 value = new RequestPriorityEnumFactory().fromType(TypeConvertor.castToCode(value)); 1934 this.priority = (Enumeration) value; // Enumeration<RequestPriority> 1935 return value; 1936 case -1788508167: // doNotPerform 1937 this.doNotPerform = TypeConvertor.castToBoolean(value); // BooleanType 1938 return value; 1939 case 3059181: // code 1940 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1941 return value; 1942 case 1187338559: // orderDetail 1943 this.getOrderDetail().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 1944 return value; 1945 case -1285004149: // quantity 1946 this.quantity = TypeConvertor.castToType(value); // DataType 1947 return value; 1948 case -1867885268: // subject 1949 this.subject = TypeConvertor.castToReference(value); // Reference 1950 return value; 1951 case 1524132147: // encounter 1952 this.encounter = TypeConvertor.castToReference(value); // Reference 1953 return value; 1954 case 1687874001: // occurrence 1955 this.occurrence = TypeConvertor.castToType(value); // DataType 1956 return value; 1957 case -1432923513: // asNeeded 1958 this.asNeeded = TypeConvertor.castToType(value); // DataType 1959 return value; 1960 case -1500852503: // authoredOn 1961 this.authoredOn = TypeConvertor.castToDateTime(value); // DateTimeType 1962 return value; 1963 case 693933948: // requester 1964 this.requester = TypeConvertor.castToReference(value); // Reference 1965 return value; 1966 case -901444568: // performerType 1967 this.performerType = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1968 return value; 1969 case 481140686: // performer 1970 this.getPerformer().add(TypeConvertor.castToReference(value)); // Reference 1971 return value; 1972 case 1901043637: // location 1973 this.getLocation().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference 1974 return value; 1975 case -934964668: // reason 1976 this.getReason().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference 1977 return value; 1978 case 73049818: // insurance 1979 this.getInsurance().add(TypeConvertor.castToReference(value)); // Reference 1980 return value; 1981 case 1922406657: // supportingInfo 1982 this.getSupportingInfo().add(TypeConvertor.castToReference(value)); // Reference 1983 return value; 1984 case -2132868344: // specimen 1985 this.getSpecimen().add(TypeConvertor.castToReference(value)); // Reference 1986 return value; 1987 case 1702620169: // bodySite 1988 this.getBodySite().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 1989 return value; 1990 case 3387378: // note 1991 this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation 1992 return value; 1993 case 737543241: // patientInstruction 1994 this.patientInstruction = TypeConvertor.castToString(value); // StringType 1995 return value; 1996 case 1538891575: // relevantHistory 1997 this.getRelevantHistory().add(TypeConvertor.castToReference(value)); // Reference 1998 return value; 1999 default: return super.setProperty(hash, name, value); 2000 } 2001 2002 } 2003 2004 @Override 2005 public Base setProperty(String name, Base value) throws FHIRException { 2006 if (name.equals("identifier")) { 2007 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 2008 } else if (name.equals("instantiatesCanonical")) { 2009 this.getInstantiatesCanonical().add(TypeConvertor.castToCanonical(value)); 2010 } else if (name.equals("instantiatesUri")) { 2011 this.getInstantiatesUri().add(TypeConvertor.castToUri(value)); 2012 } else if (name.equals("basedOn")) { 2013 this.getBasedOn().add(TypeConvertor.castToReference(value)); 2014 } else if (name.equals("replaces")) { 2015 this.getReplaces().add(TypeConvertor.castToReference(value)); 2016 } else if (name.equals("requisition")) { 2017 this.requisition = TypeConvertor.castToIdentifier(value); // Identifier 2018 } else if (name.equals("status")) { 2019 value = new RequestStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 2020 this.status = (Enumeration) value; // Enumeration<RequestStatus> 2021 } else if (name.equals("intent")) { 2022 value = new RequestIntentEnumFactory().fromType(TypeConvertor.castToCode(value)); 2023 this.intent = (Enumeration) value; // Enumeration<RequestIntent> 2024 } else if (name.equals("category")) { 2025 this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); 2026 } else if (name.equals("priority")) { 2027 value = new RequestPriorityEnumFactory().fromType(TypeConvertor.castToCode(value)); 2028 this.priority = (Enumeration) value; // Enumeration<RequestPriority> 2029 } else if (name.equals("doNotPerform")) { 2030 this.doNotPerform = TypeConvertor.castToBoolean(value); // BooleanType 2031 } else if (name.equals("code")) { 2032 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2033 } else if (name.equals("orderDetail")) { 2034 this.getOrderDetail().add(TypeConvertor.castToCodeableConcept(value)); 2035 } else if (name.equals("quantity[x]")) { 2036 this.quantity = TypeConvertor.castToType(value); // DataType 2037 } else if (name.equals("subject")) { 2038 this.subject = TypeConvertor.castToReference(value); // Reference 2039 } else if (name.equals("encounter")) { 2040 this.encounter = TypeConvertor.castToReference(value); // Reference 2041 } else if (name.equals("occurrence[x]")) { 2042 this.occurrence = TypeConvertor.castToType(value); // DataType 2043 } else if (name.equals("asNeeded[x]")) { 2044 this.asNeeded = TypeConvertor.castToType(value); // DataType 2045 } else if (name.equals("authoredOn")) { 2046 this.authoredOn = TypeConvertor.castToDateTime(value); // DateTimeType 2047 } else if (name.equals("requester")) { 2048 this.requester = TypeConvertor.castToReference(value); // Reference 2049 } else if (name.equals("performerType")) { 2050 this.performerType = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2051 } else if (name.equals("performer")) { 2052 this.getPerformer().add(TypeConvertor.castToReference(value)); 2053 } else if (name.equals("location")) { 2054 this.getLocation().add(TypeConvertor.castToCodeableReference(value)); 2055 } else if (name.equals("reason")) { 2056 this.getReason().add(TypeConvertor.castToCodeableReference(value)); 2057 } else if (name.equals("insurance")) { 2058 this.getInsurance().add(TypeConvertor.castToReference(value)); 2059 } else if (name.equals("supportingInfo")) { 2060 this.getSupportingInfo().add(TypeConvertor.castToReference(value)); 2061 } else if (name.equals("specimen")) { 2062 this.getSpecimen().add(TypeConvertor.castToReference(value)); 2063 } else if (name.equals("bodySite")) { 2064 this.getBodySite().add(TypeConvertor.castToCodeableConcept(value)); 2065 } else if (name.equals("note")) { 2066 this.getNote().add(TypeConvertor.castToAnnotation(value)); 2067 } else if (name.equals("patientInstruction")) { 2068 this.patientInstruction = TypeConvertor.castToString(value); // StringType 2069 } else if (name.equals("relevantHistory")) { 2070 this.getRelevantHistory().add(TypeConvertor.castToReference(value)); 2071 } else 2072 return super.setProperty(name, value); 2073 return value; 2074 } 2075 2076 @Override 2077 public Base makeProperty(int hash, String name) throws FHIRException { 2078 switch (hash) { 2079 case -1618432855: return addIdentifier(); 2080 case 8911915: return addInstantiatesCanonicalElement(); 2081 case -1926393373: return addInstantiatesUriElement(); 2082 case -332612366: return addBasedOn(); 2083 case -430332865: return addReplaces(); 2084 case 395923612: return getRequisition(); 2085 case -892481550: return getStatusElement(); 2086 case -1183762788: return getIntentElement(); 2087 case 50511102: return addCategory(); 2088 case -1165461084: return getPriorityElement(); 2089 case -1788508167: return getDoNotPerformElement(); 2090 case 3059181: return getCode(); 2091 case 1187338559: return addOrderDetail(); 2092 case -515002347: return getQuantity(); 2093 case -1285004149: return getQuantity(); 2094 case -1867885268: return getSubject(); 2095 case 1524132147: return getEncounter(); 2096 case -2022646513: return getOccurrence(); 2097 case 1687874001: return getOccurrence(); 2098 case -544329575: return getAsNeeded(); 2099 case -1432923513: return getAsNeeded(); 2100 case -1500852503: return getAuthoredOnElement(); 2101 case 693933948: return getRequester(); 2102 case -901444568: return getPerformerType(); 2103 case 481140686: return addPerformer(); 2104 case 1901043637: return addLocation(); 2105 case -934964668: return addReason(); 2106 case 73049818: return addInsurance(); 2107 case 1922406657: return addSupportingInfo(); 2108 case -2132868344: return addSpecimen(); 2109 case 1702620169: return addBodySite(); 2110 case 3387378: return addNote(); 2111 case 737543241: return getPatientInstructionElement(); 2112 case 1538891575: return addRelevantHistory(); 2113 default: return super.makeProperty(hash, name); 2114 } 2115 2116 } 2117 2118 @Override 2119 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 2120 switch (hash) { 2121 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 2122 case 8911915: /*instantiatesCanonical*/ return new String[] {"canonical"}; 2123 case -1926393373: /*instantiatesUri*/ return new String[] {"uri"}; 2124 case -332612366: /*basedOn*/ return new String[] {"Reference"}; 2125 case -430332865: /*replaces*/ return new String[] {"Reference"}; 2126 case 395923612: /*requisition*/ return new String[] {"Identifier"}; 2127 case -892481550: /*status*/ return new String[] {"code"}; 2128 case -1183762788: /*intent*/ return new String[] {"code"}; 2129 case 50511102: /*category*/ return new String[] {"CodeableConcept"}; 2130 case -1165461084: /*priority*/ return new String[] {"code"}; 2131 case -1788508167: /*doNotPerform*/ return new String[] {"boolean"}; 2132 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 2133 case 1187338559: /*orderDetail*/ return new String[] {"CodeableConcept"}; 2134 case -1285004149: /*quantity*/ return new String[] {"Quantity", "Ratio", "Range"}; 2135 case -1867885268: /*subject*/ return new String[] {"Reference"}; 2136 case 1524132147: /*encounter*/ return new String[] {"Reference"}; 2137 case 1687874001: /*occurrence*/ return new String[] {"dateTime", "Period", "Timing"}; 2138 case -1432923513: /*asNeeded*/ return new String[] {"boolean", "CodeableConcept"}; 2139 case -1500852503: /*authoredOn*/ return new String[] {"dateTime"}; 2140 case 693933948: /*requester*/ return new String[] {"Reference"}; 2141 case -901444568: /*performerType*/ return new String[] {"CodeableConcept"}; 2142 case 481140686: /*performer*/ return new String[] {"Reference"}; 2143 case 1901043637: /*location*/ return new String[] {"CodeableReference"}; 2144 case -934964668: /*reason*/ return new String[] {"CodeableReference"}; 2145 case 73049818: /*insurance*/ return new String[] {"Reference"}; 2146 case 1922406657: /*supportingInfo*/ return new String[] {"Reference"}; 2147 case -2132868344: /*specimen*/ return new String[] {"Reference"}; 2148 case 1702620169: /*bodySite*/ return new String[] {"CodeableConcept"}; 2149 case 3387378: /*note*/ return new String[] {"Annotation"}; 2150 case 737543241: /*patientInstruction*/ return new String[] {"string"}; 2151 case 1538891575: /*relevantHistory*/ return new String[] {"Reference"}; 2152 default: return super.getTypesForProperty(hash, name); 2153 } 2154 2155 } 2156 2157 @Override 2158 public Base addChild(String name) throws FHIRException { 2159 if (name.equals("identifier")) { 2160 return addIdentifier(); 2161 } 2162 else if (name.equals("instantiatesCanonical")) { 2163 throw new FHIRException("Cannot call addChild on a primitive type ServiceRequest.instantiatesCanonical"); 2164 } 2165 else if (name.equals("instantiatesUri")) { 2166 throw new FHIRException("Cannot call addChild on a primitive type ServiceRequest.instantiatesUri"); 2167 } 2168 else if (name.equals("basedOn")) { 2169 return addBasedOn(); 2170 } 2171 else if (name.equals("replaces")) { 2172 return addReplaces(); 2173 } 2174 else if (name.equals("requisition")) { 2175 this.requisition = new Identifier(); 2176 return this.requisition; 2177 } 2178 else if (name.equals("status")) { 2179 throw new FHIRException("Cannot call addChild on a primitive type ServiceRequest.status"); 2180 } 2181 else if (name.equals("intent")) { 2182 throw new FHIRException("Cannot call addChild on a primitive type ServiceRequest.intent"); 2183 } 2184 else if (name.equals("category")) { 2185 return addCategory(); 2186 } 2187 else if (name.equals("priority")) { 2188 throw new FHIRException("Cannot call addChild on a primitive type ServiceRequest.priority"); 2189 } 2190 else if (name.equals("doNotPerform")) { 2191 throw new FHIRException("Cannot call addChild on a primitive type ServiceRequest.doNotPerform"); 2192 } 2193 else if (name.equals("code")) { 2194 this.code = new CodeableConcept(); 2195 return this.code; 2196 } 2197 else if (name.equals("orderDetail")) { 2198 return addOrderDetail(); 2199 } 2200 else if (name.equals("quantityQuantity")) { 2201 this.quantity = new Quantity(); 2202 return this.quantity; 2203 } 2204 else if (name.equals("quantityRatio")) { 2205 this.quantity = new Ratio(); 2206 return this.quantity; 2207 } 2208 else if (name.equals("quantityRange")) { 2209 this.quantity = new Range(); 2210 return this.quantity; 2211 } 2212 else if (name.equals("subject")) { 2213 this.subject = new Reference(); 2214 return this.subject; 2215 } 2216 else if (name.equals("encounter")) { 2217 this.encounter = new Reference(); 2218 return this.encounter; 2219 } 2220 else if (name.equals("occurrenceDateTime")) { 2221 this.occurrence = new DateTimeType(); 2222 return this.occurrence; 2223 } 2224 else if (name.equals("occurrencePeriod")) { 2225 this.occurrence = new Period(); 2226 return this.occurrence; 2227 } 2228 else if (name.equals("occurrenceTiming")) { 2229 this.occurrence = new Timing(); 2230 return this.occurrence; 2231 } 2232 else if (name.equals("asNeededBoolean")) { 2233 this.asNeeded = new BooleanType(); 2234 return this.asNeeded; 2235 } 2236 else if (name.equals("asNeededCodeableConcept")) { 2237 this.asNeeded = new CodeableConcept(); 2238 return this.asNeeded; 2239 } 2240 else if (name.equals("authoredOn")) { 2241 throw new FHIRException("Cannot call addChild on a primitive type ServiceRequest.authoredOn"); 2242 } 2243 else if (name.equals("requester")) { 2244 this.requester = new Reference(); 2245 return this.requester; 2246 } 2247 else if (name.equals("performerType")) { 2248 this.performerType = new CodeableConcept(); 2249 return this.performerType; 2250 } 2251 else if (name.equals("performer")) { 2252 return addPerformer(); 2253 } 2254 else if (name.equals("location")) { 2255 return addLocation(); 2256 } 2257 else if (name.equals("reason")) { 2258 return addReason(); 2259 } 2260 else if (name.equals("insurance")) { 2261 return addInsurance(); 2262 } 2263 else if (name.equals("supportingInfo")) { 2264 return addSupportingInfo(); 2265 } 2266 else if (name.equals("specimen")) { 2267 return addSpecimen(); 2268 } 2269 else if (name.equals("bodySite")) { 2270 return addBodySite(); 2271 } 2272 else if (name.equals("note")) { 2273 return addNote(); 2274 } 2275 else if (name.equals("patientInstruction")) { 2276 throw new FHIRException("Cannot call addChild on a primitive type ServiceRequest.patientInstruction"); 2277 } 2278 else if (name.equals("relevantHistory")) { 2279 return addRelevantHistory(); 2280 } 2281 else 2282 return super.addChild(name); 2283 } 2284 2285 public String fhirType() { 2286 return "ServiceRequest"; 2287 2288 } 2289 2290 public ServiceRequest copy() { 2291 ServiceRequest dst = new ServiceRequest(); 2292 copyValues(dst); 2293 return dst; 2294 } 2295 2296 public void copyValues(ServiceRequest dst) { 2297 super.copyValues(dst); 2298 if (identifier != null) { 2299 dst.identifier = new ArrayList<Identifier>(); 2300 for (Identifier i : identifier) 2301 dst.identifier.add(i.copy()); 2302 }; 2303 if (instantiatesCanonical != null) { 2304 dst.instantiatesCanonical = new ArrayList<CanonicalType>(); 2305 for (CanonicalType i : instantiatesCanonical) 2306 dst.instantiatesCanonical.add(i.copy()); 2307 }; 2308 if (instantiatesUri != null) { 2309 dst.instantiatesUri = new ArrayList<UriType>(); 2310 for (UriType i : instantiatesUri) 2311 dst.instantiatesUri.add(i.copy()); 2312 }; 2313 if (basedOn != null) { 2314 dst.basedOn = new ArrayList<Reference>(); 2315 for (Reference i : basedOn) 2316 dst.basedOn.add(i.copy()); 2317 }; 2318 if (replaces != null) { 2319 dst.replaces = new ArrayList<Reference>(); 2320 for (Reference i : replaces) 2321 dst.replaces.add(i.copy()); 2322 }; 2323 dst.requisition = requisition == null ? null : requisition.copy(); 2324 dst.status = status == null ? null : status.copy(); 2325 dst.intent = intent == null ? null : intent.copy(); 2326 if (category != null) { 2327 dst.category = new ArrayList<CodeableConcept>(); 2328 for (CodeableConcept i : category) 2329 dst.category.add(i.copy()); 2330 }; 2331 dst.priority = priority == null ? null : priority.copy(); 2332 dst.doNotPerform = doNotPerform == null ? null : doNotPerform.copy(); 2333 dst.code = code == null ? null : code.copy(); 2334 if (orderDetail != null) { 2335 dst.orderDetail = new ArrayList<CodeableConcept>(); 2336 for (CodeableConcept i : orderDetail) 2337 dst.orderDetail.add(i.copy()); 2338 }; 2339 dst.quantity = quantity == null ? null : quantity.copy(); 2340 dst.subject = subject == null ? null : subject.copy(); 2341 dst.encounter = encounter == null ? null : encounter.copy(); 2342 dst.occurrence = occurrence == null ? null : occurrence.copy(); 2343 dst.asNeeded = asNeeded == null ? null : asNeeded.copy(); 2344 dst.authoredOn = authoredOn == null ? null : authoredOn.copy(); 2345 dst.requester = requester == null ? null : requester.copy(); 2346 dst.performerType = performerType == null ? null : performerType.copy(); 2347 if (performer != null) { 2348 dst.performer = new ArrayList<Reference>(); 2349 for (Reference i : performer) 2350 dst.performer.add(i.copy()); 2351 }; 2352 if (location != null) { 2353 dst.location = new ArrayList<CodeableReference>(); 2354 for (CodeableReference i : location) 2355 dst.location.add(i.copy()); 2356 }; 2357 if (reason != null) { 2358 dst.reason = new ArrayList<CodeableReference>(); 2359 for (CodeableReference i : reason) 2360 dst.reason.add(i.copy()); 2361 }; 2362 if (insurance != null) { 2363 dst.insurance = new ArrayList<Reference>(); 2364 for (Reference i : insurance) 2365 dst.insurance.add(i.copy()); 2366 }; 2367 if (supportingInfo != null) { 2368 dst.supportingInfo = new ArrayList<Reference>(); 2369 for (Reference i : supportingInfo) 2370 dst.supportingInfo.add(i.copy()); 2371 }; 2372 if (specimen != null) { 2373 dst.specimen = new ArrayList<Reference>(); 2374 for (Reference i : specimen) 2375 dst.specimen.add(i.copy()); 2376 }; 2377 if (bodySite != null) { 2378 dst.bodySite = new ArrayList<CodeableConcept>(); 2379 for (CodeableConcept i : bodySite) 2380 dst.bodySite.add(i.copy()); 2381 }; 2382 if (note != null) { 2383 dst.note = new ArrayList<Annotation>(); 2384 for (Annotation i : note) 2385 dst.note.add(i.copy()); 2386 }; 2387 dst.patientInstruction = patientInstruction == null ? null : patientInstruction.copy(); 2388 if (relevantHistory != null) { 2389 dst.relevantHistory = new ArrayList<Reference>(); 2390 for (Reference i : relevantHistory) 2391 dst.relevantHistory.add(i.copy()); 2392 }; 2393 } 2394 2395 protected ServiceRequest typedCopy() { 2396 return copy(); 2397 } 2398 2399 @Override 2400 public boolean equalsDeep(Base other_) { 2401 if (!super.equalsDeep(other_)) 2402 return false; 2403 if (!(other_ instanceof ServiceRequest)) 2404 return false; 2405 ServiceRequest o = (ServiceRequest) other_; 2406 return compareDeep(identifier, o.identifier, true) && compareDeep(instantiatesCanonical, o.instantiatesCanonical, true) 2407 && compareDeep(instantiatesUri, o.instantiatesUri, true) && compareDeep(basedOn, o.basedOn, true) 2408 && compareDeep(replaces, o.replaces, true) && compareDeep(requisition, o.requisition, true) && compareDeep(status, o.status, true) 2409 && compareDeep(intent, o.intent, true) && compareDeep(category, o.category, true) && compareDeep(priority, o.priority, true) 2410 && compareDeep(doNotPerform, o.doNotPerform, true) && compareDeep(code, o.code, true) && compareDeep(orderDetail, o.orderDetail, true) 2411 && compareDeep(quantity, o.quantity, true) && compareDeep(subject, o.subject, true) && compareDeep(encounter, o.encounter, true) 2412 && compareDeep(occurrence, o.occurrence, true) && compareDeep(asNeeded, o.asNeeded, true) && compareDeep(authoredOn, o.authoredOn, true) 2413 && compareDeep(requester, o.requester, true) && compareDeep(performerType, o.performerType, true) 2414 && compareDeep(performer, o.performer, true) && compareDeep(location, o.location, true) && compareDeep(reason, o.reason, true) 2415 && compareDeep(insurance, o.insurance, true) && compareDeep(supportingInfo, o.supportingInfo, true) 2416 && compareDeep(specimen, o.specimen, true) && compareDeep(bodySite, o.bodySite, true) && compareDeep(note, o.note, true) 2417 && compareDeep(patientInstruction, o.patientInstruction, true) && compareDeep(relevantHistory, o.relevantHistory, true) 2418 ; 2419 } 2420 2421 @Override 2422 public boolean equalsShallow(Base other_) { 2423 if (!super.equalsShallow(other_)) 2424 return false; 2425 if (!(other_ instanceof ServiceRequest)) 2426 return false; 2427 ServiceRequest o = (ServiceRequest) other_; 2428 return compareValues(instantiatesCanonical, o.instantiatesCanonical, true) && compareValues(instantiatesUri, o.instantiatesUri, true) 2429 && compareValues(status, o.status, true) && compareValues(intent, o.intent, true) && compareValues(priority, o.priority, true) 2430 && compareValues(doNotPerform, o.doNotPerform, true) && compareValues(authoredOn, o.authoredOn, true) 2431 && compareValues(patientInstruction, o.patientInstruction, true); 2432 } 2433 2434 public boolean isEmpty() { 2435 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, instantiatesCanonical 2436 , instantiatesUri, basedOn, replaces, requisition, status, intent, category, priority 2437 , doNotPerform, code, orderDetail, quantity, subject, encounter, occurrence, asNeeded 2438 , authoredOn, requester, performerType, performer, location, reason, insurance 2439 , supportingInfo, specimen, bodySite, note, patientInstruction, relevantHistory 2440 ); 2441 } 2442 2443 @Override 2444 public ResourceType getResourceType() { 2445 return ResourceType.ServiceRequest; 2446 } 2447 2448 /** 2449 * Search parameter: <b>authored</b> 2450 * <p> 2451 * Description: <b>Date request signed</b><br> 2452 * Type: <b>date</b><br> 2453 * Path: <b>ServiceRequest.authoredOn</b><br> 2454 * </p> 2455 */ 2456 @SearchParamDefinition(name="authored", path="ServiceRequest.authoredOn", description="Date request signed", type="date" ) 2457 public static final String SP_AUTHORED = "authored"; 2458 /** 2459 * <b>Fluent Client</b> search parameter constant for <b>authored</b> 2460 * <p> 2461 * Description: <b>Date request signed</b><br> 2462 * Type: <b>date</b><br> 2463 * Path: <b>ServiceRequest.authoredOn</b><br> 2464 * </p> 2465 */ 2466 public static final ca.uhn.fhir.rest.gclient.DateClientParam AUTHORED = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_AUTHORED); 2467 2468 /** 2469 * Search parameter: <b>based-on</b> 2470 * <p> 2471 * Description: <b>What request fulfills</b><br> 2472 * Type: <b>reference</b><br> 2473 * Path: <b>ServiceRequest.basedOn</b><br> 2474 * </p> 2475 */ 2476 @SearchParamDefinition(name="based-on", path="ServiceRequest.basedOn", description="What request fulfills", type="reference", target={CarePlan.class, MedicationRequest.class, ServiceRequest.class } ) 2477 public static final String SP_BASED_ON = "based-on"; 2478 /** 2479 * <b>Fluent Client</b> search parameter constant for <b>based-on</b> 2480 * <p> 2481 * Description: <b>What request fulfills</b><br> 2482 * Type: <b>reference</b><br> 2483 * Path: <b>ServiceRequest.basedOn</b><br> 2484 * </p> 2485 */ 2486 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam BASED_ON = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_BASED_ON); 2487 2488/** 2489 * Constant for fluent queries to be used to add include statements. Specifies 2490 * the path value of "<b>ServiceRequest:based-on</b>". 2491 */ 2492 public static final ca.uhn.fhir.model.api.Include INCLUDE_BASED_ON = new ca.uhn.fhir.model.api.Include("ServiceRequest:based-on").toLocked(); 2493 2494 /** 2495 * Search parameter: <b>body-site</b> 2496 * <p> 2497 * Description: <b>Where procedure is going to be done</b><br> 2498 * Type: <b>token</b><br> 2499 * Path: <b>ServiceRequest.bodySite</b><br> 2500 * </p> 2501 */ 2502 @SearchParamDefinition(name="body-site", path="ServiceRequest.bodySite", description="Where procedure is going to be done", type="token" ) 2503 public static final String SP_BODY_SITE = "body-site"; 2504 /** 2505 * <b>Fluent Client</b> search parameter constant for <b>body-site</b> 2506 * <p> 2507 * Description: <b>Where procedure is going to be done</b><br> 2508 * Type: <b>token</b><br> 2509 * Path: <b>ServiceRequest.bodySite</b><br> 2510 * </p> 2511 */ 2512 public static final ca.uhn.fhir.rest.gclient.TokenClientParam BODY_SITE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_BODY_SITE); 2513 2514 /** 2515 * Search parameter: <b>category</b> 2516 * <p> 2517 * Description: <b>Classification of service</b><br> 2518 * Type: <b>token</b><br> 2519 * Path: <b>ServiceRequest.category</b><br> 2520 * </p> 2521 */ 2522 @SearchParamDefinition(name="category", path="ServiceRequest.category", description="Classification of service", type="token" ) 2523 public static final String SP_CATEGORY = "category"; 2524 /** 2525 * <b>Fluent Client</b> search parameter constant for <b>category</b> 2526 * <p> 2527 * Description: <b>Classification of service</b><br> 2528 * Type: <b>token</b><br> 2529 * Path: <b>ServiceRequest.category</b><br> 2530 * </p> 2531 */ 2532 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CATEGORY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CATEGORY); 2533 2534 /** 2535 * Search parameter: <b>instantiates-canonical</b> 2536 * <p> 2537 * Description: <b>Instantiates FHIR protocol or definition</b><br> 2538 * Type: <b>reference</b><br> 2539 * Path: <b>ServiceRequest.instantiatesCanonical</b><br> 2540 * </p> 2541 */ 2542 @SearchParamDefinition(name="instantiates-canonical", path="ServiceRequest.instantiatesCanonical", description="Instantiates FHIR protocol or definition", type="reference", target={ActivityDefinition.class, PlanDefinition.class } ) 2543 public static final String SP_INSTANTIATES_CANONICAL = "instantiates-canonical"; 2544 /** 2545 * <b>Fluent Client</b> search parameter constant for <b>instantiates-canonical</b> 2546 * <p> 2547 * Description: <b>Instantiates FHIR protocol or definition</b><br> 2548 * Type: <b>reference</b><br> 2549 * Path: <b>ServiceRequest.instantiatesCanonical</b><br> 2550 * </p> 2551 */ 2552 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam INSTANTIATES_CANONICAL = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_INSTANTIATES_CANONICAL); 2553 2554/** 2555 * Constant for fluent queries to be used to add include statements. Specifies 2556 * the path value of "<b>ServiceRequest:instantiates-canonical</b>". 2557 */ 2558 public static final ca.uhn.fhir.model.api.Include INCLUDE_INSTANTIATES_CANONICAL = new ca.uhn.fhir.model.api.Include("ServiceRequest:instantiates-canonical").toLocked(); 2559 2560 /** 2561 * Search parameter: <b>instantiates-uri</b> 2562 * <p> 2563 * Description: <b>Instantiates external protocol or definition</b><br> 2564 * Type: <b>uri</b><br> 2565 * Path: <b>ServiceRequest.instantiatesUri</b><br> 2566 * </p> 2567 */ 2568 @SearchParamDefinition(name="instantiates-uri", path="ServiceRequest.instantiatesUri", description="Instantiates external protocol or definition", type="uri" ) 2569 public static final String SP_INSTANTIATES_URI = "instantiates-uri"; 2570 /** 2571 * <b>Fluent Client</b> search parameter constant for <b>instantiates-uri</b> 2572 * <p> 2573 * Description: <b>Instantiates external protocol or definition</b><br> 2574 * Type: <b>uri</b><br> 2575 * Path: <b>ServiceRequest.instantiatesUri</b><br> 2576 * </p> 2577 */ 2578 public static final ca.uhn.fhir.rest.gclient.UriClientParam INSTANTIATES_URI = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_INSTANTIATES_URI); 2579 2580 /** 2581 * Search parameter: <b>intent</b> 2582 * <p> 2583 * Description: <b>proposal | plan | directive | order +</b><br> 2584 * Type: <b>token</b><br> 2585 * Path: <b>ServiceRequest.intent</b><br> 2586 * </p> 2587 */ 2588 @SearchParamDefinition(name="intent", path="ServiceRequest.intent", description="proposal | plan | directive | order +", type="token" ) 2589 public static final String SP_INTENT = "intent"; 2590 /** 2591 * <b>Fluent Client</b> search parameter constant for <b>intent</b> 2592 * <p> 2593 * Description: <b>proposal | plan | directive | order +</b><br> 2594 * Type: <b>token</b><br> 2595 * Path: <b>ServiceRequest.intent</b><br> 2596 * </p> 2597 */ 2598 public static final ca.uhn.fhir.rest.gclient.TokenClientParam INTENT = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_INTENT); 2599 2600 /** 2601 * Search parameter: <b>occurrence</b> 2602 * <p> 2603 * Description: <b>When service should occur</b><br> 2604 * Type: <b>date</b><br> 2605 * Path: <b>ServiceRequest.occurrence</b><br> 2606 * </p> 2607 */ 2608 @SearchParamDefinition(name="occurrence", path="ServiceRequest.occurrence", description="When service should occur", type="date" ) 2609 public static final String SP_OCCURRENCE = "occurrence"; 2610 /** 2611 * <b>Fluent Client</b> search parameter constant for <b>occurrence</b> 2612 * <p> 2613 * Description: <b>When service should occur</b><br> 2614 * Type: <b>date</b><br> 2615 * Path: <b>ServiceRequest.occurrence</b><br> 2616 * </p> 2617 */ 2618 public static final ca.uhn.fhir.rest.gclient.DateClientParam OCCURRENCE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_OCCURRENCE); 2619 2620 /** 2621 * Search parameter: <b>performer-type</b> 2622 * <p> 2623 * Description: <b>Performer role</b><br> 2624 * Type: <b>token</b><br> 2625 * Path: <b>ServiceRequest.performerType</b><br> 2626 * </p> 2627 */ 2628 @SearchParamDefinition(name="performer-type", path="ServiceRequest.performerType", description="Performer role", type="token" ) 2629 public static final String SP_PERFORMER_TYPE = "performer-type"; 2630 /** 2631 * <b>Fluent Client</b> search parameter constant for <b>performer-type</b> 2632 * <p> 2633 * Description: <b>Performer role</b><br> 2634 * Type: <b>token</b><br> 2635 * Path: <b>ServiceRequest.performerType</b><br> 2636 * </p> 2637 */ 2638 public static final ca.uhn.fhir.rest.gclient.TokenClientParam PERFORMER_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PERFORMER_TYPE); 2639 2640 /** 2641 * Search parameter: <b>performer</b> 2642 * <p> 2643 * Description: <b>Requested performer</b><br> 2644 * Type: <b>reference</b><br> 2645 * Path: <b>ServiceRequest.performer</b><br> 2646 * </p> 2647 */ 2648 @SearchParamDefinition(name="performer", path="ServiceRequest.performer", description="Requested performer", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Device"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for RelatedPerson") }, target={CareTeam.class, Device.class, HealthcareService.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 2649 public static final String SP_PERFORMER = "performer"; 2650 /** 2651 * <b>Fluent Client</b> search parameter constant for <b>performer</b> 2652 * <p> 2653 * Description: <b>Requested performer</b><br> 2654 * Type: <b>reference</b><br> 2655 * Path: <b>ServiceRequest.performer</b><br> 2656 * </p> 2657 */ 2658 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PERFORMER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PERFORMER); 2659 2660/** 2661 * Constant for fluent queries to be used to add include statements. Specifies 2662 * the path value of "<b>ServiceRequest:performer</b>". 2663 */ 2664 public static final ca.uhn.fhir.model.api.Include INCLUDE_PERFORMER = new ca.uhn.fhir.model.api.Include("ServiceRequest:performer").toLocked(); 2665 2666 /** 2667 * Search parameter: <b>priority</b> 2668 * <p> 2669 * Description: <b>routine | urgent | asap | stat</b><br> 2670 * Type: <b>token</b><br> 2671 * Path: <b>ServiceRequest.priority</b><br> 2672 * </p> 2673 */ 2674 @SearchParamDefinition(name="priority", path="ServiceRequest.priority", description="routine | urgent | asap | stat", type="token" ) 2675 public static final String SP_PRIORITY = "priority"; 2676 /** 2677 * <b>Fluent Client</b> search parameter constant for <b>priority</b> 2678 * <p> 2679 * Description: <b>routine | urgent | asap | stat</b><br> 2680 * Type: <b>token</b><br> 2681 * Path: <b>ServiceRequest.priority</b><br> 2682 * </p> 2683 */ 2684 public static final ca.uhn.fhir.rest.gclient.TokenClientParam PRIORITY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PRIORITY); 2685 2686 /** 2687 * Search parameter: <b>replaces</b> 2688 * <p> 2689 * Description: <b>What request replaces</b><br> 2690 * Type: <b>reference</b><br> 2691 * Path: <b>ServiceRequest.replaces</b><br> 2692 * </p> 2693 */ 2694 @SearchParamDefinition(name="replaces", path="ServiceRequest.replaces", description="What request replaces", type="reference", target={ServiceRequest.class } ) 2695 public static final String SP_REPLACES = "replaces"; 2696 /** 2697 * <b>Fluent Client</b> search parameter constant for <b>replaces</b> 2698 * <p> 2699 * Description: <b>What request replaces</b><br> 2700 * Type: <b>reference</b><br> 2701 * Path: <b>ServiceRequest.replaces</b><br> 2702 * </p> 2703 */ 2704 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam REPLACES = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_REPLACES); 2705 2706/** 2707 * Constant for fluent queries to be used to add include statements. Specifies 2708 * the path value of "<b>ServiceRequest:replaces</b>". 2709 */ 2710 public static final ca.uhn.fhir.model.api.Include INCLUDE_REPLACES = new ca.uhn.fhir.model.api.Include("ServiceRequest:replaces").toLocked(); 2711 2712 /** 2713 * Search parameter: <b>requester</b> 2714 * <p> 2715 * Description: <b>Who/what is requesting service</b><br> 2716 * Type: <b>reference</b><br> 2717 * Path: <b>ServiceRequest.requester</b><br> 2718 * </p> 2719 */ 2720 @SearchParamDefinition(name="requester", path="ServiceRequest.requester", description="Who/what is requesting service", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Device"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 2721 public static final String SP_REQUESTER = "requester"; 2722 /** 2723 * <b>Fluent Client</b> search parameter constant for <b>requester</b> 2724 * <p> 2725 * Description: <b>Who/what is requesting service</b><br> 2726 * Type: <b>reference</b><br> 2727 * Path: <b>ServiceRequest.requester</b><br> 2728 * </p> 2729 */ 2730 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam REQUESTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_REQUESTER); 2731 2732/** 2733 * Constant for fluent queries to be used to add include statements. Specifies 2734 * the path value of "<b>ServiceRequest:requester</b>". 2735 */ 2736 public static final ca.uhn.fhir.model.api.Include INCLUDE_REQUESTER = new ca.uhn.fhir.model.api.Include("ServiceRequest:requester").toLocked(); 2737 2738 /** 2739 * Search parameter: <b>requisition</b> 2740 * <p> 2741 * Description: <b>Composite Request ID</b><br> 2742 * Type: <b>token</b><br> 2743 * Path: <b>ServiceRequest.requisition</b><br> 2744 * </p> 2745 */ 2746 @SearchParamDefinition(name="requisition", path="ServiceRequest.requisition", description="Composite Request ID", type="token" ) 2747 public static final String SP_REQUISITION = "requisition"; 2748 /** 2749 * <b>Fluent Client</b> search parameter constant for <b>requisition</b> 2750 * <p> 2751 * Description: <b>Composite Request ID</b><br> 2752 * Type: <b>token</b><br> 2753 * Path: <b>ServiceRequest.requisition</b><br> 2754 * </p> 2755 */ 2756 public static final ca.uhn.fhir.rest.gclient.TokenClientParam REQUISITION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_REQUISITION); 2757 2758 /** 2759 * Search parameter: <b>specimen</b> 2760 * <p> 2761 * Description: <b>Specimen to be tested</b><br> 2762 * Type: <b>reference</b><br> 2763 * Path: <b>ServiceRequest.specimen</b><br> 2764 * </p> 2765 */ 2766 @SearchParamDefinition(name="specimen", path="ServiceRequest.specimen", description="Specimen to be tested", type="reference", target={Specimen.class } ) 2767 public static final String SP_SPECIMEN = "specimen"; 2768 /** 2769 * <b>Fluent Client</b> search parameter constant for <b>specimen</b> 2770 * <p> 2771 * Description: <b>Specimen to be tested</b><br> 2772 * Type: <b>reference</b><br> 2773 * Path: <b>ServiceRequest.specimen</b><br> 2774 * </p> 2775 */ 2776 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SPECIMEN = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SPECIMEN); 2777 2778/** 2779 * Constant for fluent queries to be used to add include statements. Specifies 2780 * the path value of "<b>ServiceRequest:specimen</b>". 2781 */ 2782 public static final ca.uhn.fhir.model.api.Include INCLUDE_SPECIMEN = new ca.uhn.fhir.model.api.Include("ServiceRequest:specimen").toLocked(); 2783 2784 /** 2785 * Search parameter: <b>status</b> 2786 * <p> 2787 * Description: <b>draft | active | on-hold | revoked | completed | entered-in-error | unknown</b><br> 2788 * Type: <b>token</b><br> 2789 * Path: <b>ServiceRequest.status</b><br> 2790 * </p> 2791 */ 2792 @SearchParamDefinition(name="status", path="ServiceRequest.status", description="draft | active | on-hold | revoked | completed | entered-in-error | unknown", type="token" ) 2793 public static final String SP_STATUS = "status"; 2794 /** 2795 * <b>Fluent Client</b> search parameter constant for <b>status</b> 2796 * <p> 2797 * Description: <b>draft | active | on-hold | revoked | completed | entered-in-error | unknown</b><br> 2798 * Type: <b>token</b><br> 2799 * Path: <b>ServiceRequest.status</b><br> 2800 * </p> 2801 */ 2802 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 2803 2804 /** 2805 * Search parameter: <b>subject</b> 2806 * <p> 2807 * Description: <b>Search by subject</b><br> 2808 * Type: <b>reference</b><br> 2809 * Path: <b>ServiceRequest.subject</b><br> 2810 * </p> 2811 */ 2812 @SearchParamDefinition(name="subject", path="ServiceRequest.subject", description="Search by subject", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Device.class, Group.class, Location.class, Patient.class } ) 2813 public static final String SP_SUBJECT = "subject"; 2814 /** 2815 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 2816 * <p> 2817 * Description: <b>Search by subject</b><br> 2818 * Type: <b>reference</b><br> 2819 * Path: <b>ServiceRequest.subject</b><br> 2820 * </p> 2821 */ 2822 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 2823 2824/** 2825 * Constant for fluent queries to be used to add include statements. Specifies 2826 * the path value of "<b>ServiceRequest:subject</b>". 2827 */ 2828 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("ServiceRequest:subject").toLocked(); 2829 2830 /** 2831 * Search parameter: <b>code</b> 2832 * <p> 2833 * Description: <b>Multiple Resources: 2834 2835* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance 2836* [Condition](condition.html): Code for the condition 2837* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered 2838* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result 2839* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code 2840* [List](list.html): What the purpose of this list is 2841* [Medication](medication.html): Returns medications for a specific code 2842* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code 2843* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code 2844* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code 2845* [MedicationUsage](medicationusage.html): Return statements of this medication code 2846* [Observation](observation.html): The code of the observation type 2847* [Procedure](procedure.html): A code to identify a procedure 2848* [ServiceRequest](servicerequest.html): What is being requested/ordered 2849</b><br> 2850 * Type: <b>token</b><br> 2851 * Path: <b>AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code</b><br> 2852 * </p> 2853 */ 2854 @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) 2855 public static final String SP_CODE = "code"; 2856 /** 2857 * <b>Fluent Client</b> search parameter constant for <b>code</b> 2858 * <p> 2859 * Description: <b>Multiple Resources: 2860 2861* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance 2862* [Condition](condition.html): Code for the condition 2863* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered 2864* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result 2865* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code 2866* [List](list.html): What the purpose of this list is 2867* [Medication](medication.html): Returns medications for a specific code 2868* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code 2869* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code 2870* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code 2871* [MedicationUsage](medicationusage.html): Return statements of this medication code 2872* [Observation](observation.html): The code of the observation type 2873* [Procedure](procedure.html): A code to identify a procedure 2874* [ServiceRequest](servicerequest.html): What is being requested/ordered 2875</b><br> 2876 * Type: <b>token</b><br> 2877 * Path: <b>AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code</b><br> 2878 * </p> 2879 */ 2880 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); 2881 2882 /** 2883 * Search parameter: <b>encounter</b> 2884 * <p> 2885 * Description: <b>Multiple Resources: 2886 2887* [Composition](composition.html): Context of the Composition 2888* [DeviceRequest](devicerequest.html): Encounter during which request was created 2889* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made 2890* [DocumentReference](documentreference.html): Context of the document content 2891* [Flag](flag.html): Alert relevant during encounter 2892* [List](list.html): Context in which list created 2893* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier 2894* [Observation](observation.html): Encounter related to the observation 2895* [Procedure](procedure.html): The Encounter during which this Procedure was created 2896* [RiskAssessment](riskassessment.html): Where was assessment performed? 2897* [ServiceRequest](servicerequest.html): An encounter in which this request is made 2898* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier 2899</b><br> 2900 * Type: <b>reference</b><br> 2901 * Path: <b>Composition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | DocumentReference.encounter | Flag.encounter | List.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | RiskAssessment.encounter | ServiceRequest.encounter | VisionPrescription.encounter</b><br> 2902 * </p> 2903 */ 2904 @SearchParamDefinition(name="encounter", path="Composition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | DocumentReference.encounter | Flag.encounter | List.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | RiskAssessment.encounter | ServiceRequest.encounter | VisionPrescription.encounter", description="Multiple Resources: \r\n\r\n* [Composition](composition.html): Context of the Composition\r\n* [DeviceRequest](devicerequest.html): Encounter during which request was created\r\n* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made\r\n* [DocumentReference](documentreference.html): Context of the document content\r\n* [Flag](flag.html): Alert relevant during encounter\r\n* [List](list.html): Context in which list created\r\n* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier\r\n* [Observation](observation.html): Encounter related to the observation\r\n* [Procedure](procedure.html): The Encounter during which this Procedure was created\r\n* [RiskAssessment](riskassessment.html): Where was assessment performed?\r\n* [ServiceRequest](servicerequest.html): An encounter in which this request is made\r\n* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Encounter") }, target={Encounter.class } ) 2905 public static final String SP_ENCOUNTER = "encounter"; 2906 /** 2907 * <b>Fluent Client</b> search parameter constant for <b>encounter</b> 2908 * <p> 2909 * Description: <b>Multiple Resources: 2910 2911* [Composition](composition.html): Context of the Composition 2912* [DeviceRequest](devicerequest.html): Encounter during which request was created 2913* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made 2914* [DocumentReference](documentreference.html): Context of the document content 2915* [Flag](flag.html): Alert relevant during encounter 2916* [List](list.html): Context in which list created 2917* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier 2918* [Observation](observation.html): Encounter related to the observation 2919* [Procedure](procedure.html): The Encounter during which this Procedure was created 2920* [RiskAssessment](riskassessment.html): Where was assessment performed? 2921* [ServiceRequest](servicerequest.html): An encounter in which this request is made 2922* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier 2923</b><br> 2924 * Type: <b>reference</b><br> 2925 * Path: <b>Composition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | DocumentReference.encounter | Flag.encounter | List.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | RiskAssessment.encounter | ServiceRequest.encounter | VisionPrescription.encounter</b><br> 2926 * </p> 2927 */ 2928 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ENCOUNTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ENCOUNTER); 2929 2930/** 2931 * Constant for fluent queries to be used to add include statements. Specifies 2932 * the path value of "<b>ServiceRequest:encounter</b>". 2933 */ 2934 public static final ca.uhn.fhir.model.api.Include INCLUDE_ENCOUNTER = new ca.uhn.fhir.model.api.Include("ServiceRequest:encounter").toLocked(); 2935 2936 /** 2937 * Search parameter: <b>identifier</b> 2938 * <p> 2939 * Description: <b>Multiple Resources: 2940 2941* [AllergyIntolerance](allergyintolerance.html): External ids for this item 2942* [CarePlan](careplan.html): External Ids for this plan 2943* [CareTeam](careteam.html): External Ids for this team 2944* [Composition](composition.html): Version-independent identifier for the Composition 2945* [Condition](condition.html): A unique identifier of the condition record 2946* [Consent](consent.html): Identifier for this record (external references) 2947* [DetectedIssue](detectedissue.html): Unique id for the detected issue 2948* [DeviceRequest](devicerequest.html): Business identifier for request/order 2949* [DiagnosticReport](diagnosticreport.html): An identifier for the report 2950* [DocumentManifest](documentmanifest.html): Unique Identifier for the set of documents 2951* [DocumentReference](documentreference.html): Identifier of the attachment binary 2952* [Encounter](encounter.html): Identifier(s) by which this encounter is known 2953* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 2954* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 2955* [Goal](goal.html): External Ids for this goal 2956* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 2957* [Immunization](immunization.html): Business identifier 2958* [List](list.html): Business identifier 2959* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 2960* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 2961* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 2962* [MedicationUsage](medicationusage.html): Return statements with this external identifier 2963* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 2964* [Observation](observation.html): The unique id for a particular observation 2965* [Procedure](procedure.html): A unique identifier for a procedure 2966* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 2967* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 2968* [SupplyDelivery](supplydelivery.html): External identifier 2969* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 2970* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 2971</b><br> 2972 * Type: <b>token</b><br> 2973 * Path: <b>AllergyIntolerance.identifier | CarePlan.identifier | CareTeam.identifier | Composition.identifier | Condition.identifier | Consent.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DiagnosticReport.identifier | DocumentManifest.masterIdentifier | DocumentManifest.identifier | DocumentReference.content.identifier | DocumentReference.identifier | Encounter.identifier | EpisodeOfCare.identifier | FamilyMemberHistory.identifier | Goal.identifier | ImagingStudy.identifier | Immunization.identifier | List.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationUsage.identifier | NutritionOrder.identifier | Observation.identifier | Procedure.identifier | RiskAssessment.identifier | ServiceRequest.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | VisionPrescription.identifier</b><br> 2974 * </p> 2975 */ 2976 @SearchParamDefinition(name="identifier", path="AllergyIntolerance.identifier | CarePlan.identifier | CareTeam.identifier | Composition.identifier | Condition.identifier | Consent.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DiagnosticReport.identifier | DocumentManifest.masterIdentifier | DocumentManifest.identifier | DocumentReference.content.identifier | DocumentReference.identifier | Encounter.identifier | EpisodeOfCare.identifier | FamilyMemberHistory.identifier | Goal.identifier | ImagingStudy.identifier | Immunization.identifier | List.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationUsage.identifier | NutritionOrder.identifier | Observation.identifier | Procedure.identifier | RiskAssessment.identifier | ServiceRequest.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | VisionPrescription.identifier", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): External ids for this item\r\n* [CarePlan](careplan.html): External Ids for this plan\r\n* [CareTeam](careteam.html): External Ids for this team\r\n* [Composition](composition.html): Version-independent identifier for the Composition\r\n* [Condition](condition.html): A unique identifier of the condition record\r\n* [Consent](consent.html): Identifier for this record (external references)\r\n* [DetectedIssue](detectedissue.html): Unique id for the detected issue\r\n* [DeviceRequest](devicerequest.html): Business identifier for request/order\r\n* [DiagnosticReport](diagnosticreport.html): An identifier for the report\r\n* [DocumentManifest](documentmanifest.html): Unique Identifier for the set of documents\r\n* [DocumentReference](documentreference.html): Identifier of the attachment binary\r\n* [Encounter](encounter.html): Identifier(s) by which this encounter is known\r\n* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier\r\n* [Goal](goal.html): External Ids for this goal\r\n* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID\r\n* [Immunization](immunization.html): Business identifier\r\n* [List](list.html): Business identifier\r\n* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier\r\n* [MedicationUsage](medicationusage.html): Return statements with this external identifier\r\n* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier\r\n* [Observation](observation.html): The unique id for a particular observation\r\n* [Procedure](procedure.html): A unique identifier for a procedure\r\n* [RiskAssessment](riskassessment.html): Unique identifier for the assessment\r\n* [ServiceRequest](servicerequest.html): Identifiers assigned to this order\r\n* [SupplyDelivery](supplydelivery.html): External identifier\r\n* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest\r\n* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier\r\n", type="token" ) 2977 public static final String SP_IDENTIFIER = "identifier"; 2978 /** 2979 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 2980 * <p> 2981 * Description: <b>Multiple Resources: 2982 2983* [AllergyIntolerance](allergyintolerance.html): External ids for this item 2984* [CarePlan](careplan.html): External Ids for this plan 2985* [CareTeam](careteam.html): External Ids for this team 2986* [Composition](composition.html): Version-independent identifier for the Composition 2987* [Condition](condition.html): A unique identifier of the condition record 2988* [Consent](consent.html): Identifier for this record (external references) 2989* [DetectedIssue](detectedissue.html): Unique id for the detected issue 2990* [DeviceRequest](devicerequest.html): Business identifier for request/order 2991* [DiagnosticReport](diagnosticreport.html): An identifier for the report 2992* [DocumentManifest](documentmanifest.html): Unique Identifier for the set of documents 2993* [DocumentReference](documentreference.html): Identifier of the attachment binary 2994* [Encounter](encounter.html): Identifier(s) by which this encounter is known 2995* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 2996* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 2997* [Goal](goal.html): External Ids for this goal 2998* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 2999* [Immunization](immunization.html): Business identifier 3000* [List](list.html): Business identifier 3001* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 3002* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 3003* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 3004* [MedicationUsage](medicationusage.html): Return statements with this external identifier 3005* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 3006* [Observation](observation.html): The unique id for a particular observation 3007* [Procedure](procedure.html): A unique identifier for a procedure 3008* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 3009* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 3010* [SupplyDelivery](supplydelivery.html): External identifier 3011* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 3012* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 3013</b><br> 3014 * Type: <b>token</b><br> 3015 * Path: <b>AllergyIntolerance.identifier | CarePlan.identifier | CareTeam.identifier | Composition.identifier | Condition.identifier | Consent.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DiagnosticReport.identifier | DocumentManifest.masterIdentifier | DocumentManifest.identifier | DocumentReference.content.identifier | DocumentReference.identifier | Encounter.identifier | EpisodeOfCare.identifier | FamilyMemberHistory.identifier | Goal.identifier | ImagingStudy.identifier | Immunization.identifier | List.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationUsage.identifier | NutritionOrder.identifier | Observation.identifier | Procedure.identifier | RiskAssessment.identifier | ServiceRequest.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | VisionPrescription.identifier</b><br> 3016 * </p> 3017 */ 3018 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 3019 3020 /** 3021 * Search parameter: <b>patient</b> 3022 * <p> 3023 * Description: <b>Multiple Resources: 3024 3025* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 3026* [CarePlan](careplan.html): Who the care plan is for 3027* [CareTeam](careteam.html): Who care team is for 3028* [ClinicalImpression](clinicalimpression.html): Patient assessed 3029* [Composition](composition.html): Who and/or what the composition is about 3030* [Condition](condition.html): Who has the condition? 3031* [Consent](consent.html): Who the consent applies to 3032* [DetectedIssue](detectedissue.html): Associated patient 3033* [DeviceRequest](devicerequest.html): Individual the service is ordered for 3034* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 3035* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 3036* [DocumentManifest](documentmanifest.html): The subject of the set of documents 3037* [DocumentReference](documentreference.html): Who/what is the subject of the document 3038* [Encounter](encounter.html): The patient present at the encounter 3039* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 3040* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 3041* [Flag](flag.html): The identity of a subject to list flags for 3042* [Goal](goal.html): Who this goal is intended for 3043* [ImagingStudy](imagingstudy.html): Who the study is about 3044* [Immunization](immunization.html): The patient for the vaccination record 3045* [List](list.html): If all resources have the same subject 3046* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 3047* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 3048* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 3049* [MedicationUsage](medicationusage.html): Returns statements for a specific patient. 3050* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement 3051* [Observation](observation.html): The subject that the observation is about (if patient) 3052* [Procedure](procedure.html): Search by subject - a patient 3053* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 3054* [ServiceRequest](servicerequest.html): Search by subject - a patient 3055* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 3056* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 3057</b><br> 3058 * Type: <b>reference</b><br> 3059 * Path: <b>AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient</b><br> 3060 * </p> 3061 */ 3062 @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, ConceptMap2.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 3063 public static final String SP_PATIENT = "patient"; 3064 /** 3065 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 3066 * <p> 3067 * Description: <b>Multiple Resources: 3068 3069* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 3070* [CarePlan](careplan.html): Who the care plan is for 3071* [CareTeam](careteam.html): Who care team is for 3072* [ClinicalImpression](clinicalimpression.html): Patient assessed 3073* [Composition](composition.html): Who and/or what the composition is about 3074* [Condition](condition.html): Who has the condition? 3075* [Consent](consent.html): Who the consent applies to 3076* [DetectedIssue](detectedissue.html): Associated patient 3077* [DeviceRequest](devicerequest.html): Individual the service is ordered for 3078* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 3079* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 3080* [DocumentManifest](documentmanifest.html): The subject of the set of documents 3081* [DocumentReference](documentreference.html): Who/what is the subject of the document 3082* [Encounter](encounter.html): The patient present at the encounter 3083* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 3084* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 3085* [Flag](flag.html): The identity of a subject to list flags for 3086* [Goal](goal.html): Who this goal is intended for 3087* [ImagingStudy](imagingstudy.html): Who the study is about 3088* [Immunization](immunization.html): The patient for the vaccination record 3089* [List](list.html): If all resources have the same subject 3090* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 3091* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 3092* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 3093* [MedicationUsage](medicationusage.html): Returns statements for a specific patient. 3094* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement 3095* [Observation](observation.html): The subject that the observation is about (if patient) 3096* [Procedure](procedure.html): Search by subject - a patient 3097* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 3098* [ServiceRequest](servicerequest.html): Search by subject - a patient 3099* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 3100* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 3101</b><br> 3102 * Type: <b>reference</b><br> 3103 * Path: <b>AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient</b><br> 3104 * </p> 3105 */ 3106 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 3107 3108/** 3109 * Constant for fluent queries to be used to add include statements. Specifies 3110 * the path value of "<b>ServiceRequest:patient</b>". 3111 */ 3112 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("ServiceRequest:patient").toLocked(); 3113 3114 3115} 3116