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