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 * Describes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party. 052 */ 053@ResourceDef(name="Immunization", profile="http://hl7.org/fhir/StructureDefinition/Immunization") 054public class Immunization extends DomainResource { 055 056 public enum ImmunizationStatusCodes { 057 /** 058 * The event has now concluded. 059 */ 060 COMPLETED, 061 /** 062 * This electronic record should never have existed, though it is possible that real-world decisions were based on it. (If real-world activity has occurred, the status should be \"stopped\" rather than \"entered-in-error\".). 063 */ 064 ENTEREDINERROR, 065 /** 066 * The event was terminated prior to any activity beyond preparation. I.e. The 'main' activity has not yet begun. The boundary between preparatory and the 'main' activity is context-specific. 067 */ 068 NOTDONE, 069 /** 070 * added to help the parsers with the generic types 071 */ 072 NULL; 073 public static ImmunizationStatusCodes fromCode(String codeString) throws FHIRException { 074 if (codeString == null || "".equals(codeString)) 075 return null; 076 if ("completed".equals(codeString)) 077 return COMPLETED; 078 if ("entered-in-error".equals(codeString)) 079 return ENTEREDINERROR; 080 if ("not-done".equals(codeString)) 081 return NOTDONE; 082 if (Configuration.isAcceptInvalidEnums()) 083 return null; 084 else 085 throw new FHIRException("Unknown ImmunizationStatusCodes code '"+codeString+"'"); 086 } 087 public String toCode() { 088 switch (this) { 089 case COMPLETED: return "completed"; 090 case ENTEREDINERROR: return "entered-in-error"; 091 case NOTDONE: return "not-done"; 092 case NULL: return null; 093 default: return "?"; 094 } 095 } 096 public String getSystem() { 097 switch (this) { 098 case COMPLETED: return "http://hl7.org/fhir/event-status"; 099 case ENTEREDINERROR: return "http://hl7.org/fhir/event-status"; 100 case NOTDONE: return "http://hl7.org/fhir/event-status"; 101 case NULL: return null; 102 default: return "?"; 103 } 104 } 105 public String getDefinition() { 106 switch (this) { 107 case COMPLETED: return "The event has now concluded."; 108 case ENTEREDINERROR: return "This electronic record should never have existed, though it is possible that real-world decisions were based on it. (If real-world activity has occurred, the status should be \"stopped\" rather than \"entered-in-error\".)."; 109 case NOTDONE: return "The event was terminated prior to any activity beyond preparation. I.e. The 'main' activity has not yet begun. The boundary between preparatory and the 'main' activity is context-specific."; 110 case NULL: return null; 111 default: return "?"; 112 } 113 } 114 public String getDisplay() { 115 switch (this) { 116 case COMPLETED: return "Completed"; 117 case ENTEREDINERROR: return "Entered in Error"; 118 case NOTDONE: return "Not Done"; 119 case NULL: return null; 120 default: return "?"; 121 } 122 } 123 } 124 125 public static class ImmunizationStatusCodesEnumFactory implements EnumFactory<ImmunizationStatusCodes> { 126 public ImmunizationStatusCodes fromCode(String codeString) throws IllegalArgumentException { 127 if (codeString == null || "".equals(codeString)) 128 if (codeString == null || "".equals(codeString)) 129 return null; 130 if ("completed".equals(codeString)) 131 return ImmunizationStatusCodes.COMPLETED; 132 if ("entered-in-error".equals(codeString)) 133 return ImmunizationStatusCodes.ENTEREDINERROR; 134 if ("not-done".equals(codeString)) 135 return ImmunizationStatusCodes.NOTDONE; 136 throw new IllegalArgumentException("Unknown ImmunizationStatusCodes code '"+codeString+"'"); 137 } 138 public Enumeration<ImmunizationStatusCodes> fromType(PrimitiveType<?> code) throws FHIRException { 139 if (code == null) 140 return null; 141 if (code.isEmpty()) 142 return new Enumeration<ImmunizationStatusCodes>(this, ImmunizationStatusCodes.NULL, code); 143 String codeString = ((PrimitiveType) code).asStringValue(); 144 if (codeString == null || "".equals(codeString)) 145 return new Enumeration<ImmunizationStatusCodes>(this, ImmunizationStatusCodes.NULL, code); 146 if ("completed".equals(codeString)) 147 return new Enumeration<ImmunizationStatusCodes>(this, ImmunizationStatusCodes.COMPLETED, code); 148 if ("entered-in-error".equals(codeString)) 149 return new Enumeration<ImmunizationStatusCodes>(this, ImmunizationStatusCodes.ENTEREDINERROR, code); 150 if ("not-done".equals(codeString)) 151 return new Enumeration<ImmunizationStatusCodes>(this, ImmunizationStatusCodes.NOTDONE, code); 152 throw new FHIRException("Unknown ImmunizationStatusCodes code '"+codeString+"'"); 153 } 154 public String toCode(ImmunizationStatusCodes code) { 155 if (code == ImmunizationStatusCodes.COMPLETED) 156 return "completed"; 157 if (code == ImmunizationStatusCodes.ENTEREDINERROR) 158 return "entered-in-error"; 159 if (code == ImmunizationStatusCodes.NOTDONE) 160 return "not-done"; 161 return "?"; 162 } 163 public String toSystem(ImmunizationStatusCodes code) { 164 return code.getSystem(); 165 } 166 } 167 168 @Block() 169 public static class ImmunizationPerformerComponent extends BackboneElement implements IBaseBackboneElement { 170 /** 171 * Describes the type of performance (e.g. ordering provider, administering provider, etc.). 172 */ 173 @Child(name = "function", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) 174 @Description(shortDefinition="What type of performance was done", formalDefinition="Describes the type of performance (e.g. ordering provider, administering provider, etc.)." ) 175 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-function") 176 protected CodeableConcept function; 177 178 /** 179 * The practitioner or organization who performed the action. 180 */ 181 @Child(name = "actor", type = {Practitioner.class, PractitionerRole.class, Organization.class, Patient.class, RelatedPerson.class}, order=2, min=1, max=1, modifier=false, summary=true) 182 @Description(shortDefinition="Individual or organization who was performing", formalDefinition="The practitioner or organization who performed the action." ) 183 protected Reference actor; 184 185 private static final long serialVersionUID = -576943815L; 186 187 /** 188 * Constructor 189 */ 190 public ImmunizationPerformerComponent() { 191 super(); 192 } 193 194 /** 195 * Constructor 196 */ 197 public ImmunizationPerformerComponent(Reference actor) { 198 super(); 199 this.setActor(actor); 200 } 201 202 /** 203 * @return {@link #function} (Describes the type of performance (e.g. ordering provider, administering provider, etc.).) 204 */ 205 public CodeableConcept getFunction() { 206 if (this.function == null) 207 if (Configuration.errorOnAutoCreate()) 208 throw new Error("Attempt to auto-create ImmunizationPerformerComponent.function"); 209 else if (Configuration.doAutoCreate()) 210 this.function = new CodeableConcept(); // cc 211 return this.function; 212 } 213 214 public boolean hasFunction() { 215 return this.function != null && !this.function.isEmpty(); 216 } 217 218 /** 219 * @param value {@link #function} (Describes the type of performance (e.g. ordering provider, administering provider, etc.).) 220 */ 221 public ImmunizationPerformerComponent setFunction(CodeableConcept value) { 222 this.function = value; 223 return this; 224 } 225 226 /** 227 * @return {@link #actor} (The practitioner or organization who performed the action.) 228 */ 229 public Reference getActor() { 230 if (this.actor == null) 231 if (Configuration.errorOnAutoCreate()) 232 throw new Error("Attempt to auto-create ImmunizationPerformerComponent.actor"); 233 else if (Configuration.doAutoCreate()) 234 this.actor = new Reference(); // cc 235 return this.actor; 236 } 237 238 public boolean hasActor() { 239 return this.actor != null && !this.actor.isEmpty(); 240 } 241 242 /** 243 * @param value {@link #actor} (The practitioner or organization who performed the action.) 244 */ 245 public ImmunizationPerformerComponent setActor(Reference value) { 246 this.actor = value; 247 return this; 248 } 249 250 protected void listChildren(List<Property> children) { 251 super.listChildren(children); 252 children.add(new Property("function", "CodeableConcept", "Describes the type of performance (e.g. ordering provider, administering provider, etc.).", 0, 1, function)); 253 children.add(new Property("actor", "Reference(Practitioner|PractitionerRole|Organization|Patient|RelatedPerson)", "The practitioner or organization who performed the action.", 0, 1, actor)); 254 } 255 256 @Override 257 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 258 switch (_hash) { 259 case 1380938712: /*function*/ return new Property("function", "CodeableConcept", "Describes the type of performance (e.g. ordering provider, administering provider, etc.).", 0, 1, function); 260 case 92645877: /*actor*/ return new Property("actor", "Reference(Practitioner|PractitionerRole|Organization|Patient|RelatedPerson)", "The practitioner or organization who performed the action.", 0, 1, actor); 261 default: return super.getNamedProperty(_hash, _name, _checkValid); 262 } 263 264 } 265 266 @Override 267 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 268 switch (hash) { 269 case 1380938712: /*function*/ return this.function == null ? new Base[0] : new Base[] {this.function}; // CodeableConcept 270 case 92645877: /*actor*/ return this.actor == null ? new Base[0] : new Base[] {this.actor}; // Reference 271 default: return super.getProperty(hash, name, checkValid); 272 } 273 274 } 275 276 @Override 277 public Base setProperty(int hash, String name, Base value) throws FHIRException { 278 switch (hash) { 279 case 1380938712: // function 280 this.function = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 281 return value; 282 case 92645877: // actor 283 this.actor = TypeConvertor.castToReference(value); // Reference 284 return value; 285 default: return super.setProperty(hash, name, value); 286 } 287 288 } 289 290 @Override 291 public Base setProperty(String name, Base value) throws FHIRException { 292 if (name.equals("function")) { 293 this.function = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 294 } else if (name.equals("actor")) { 295 this.actor = TypeConvertor.castToReference(value); // Reference 296 } else 297 return super.setProperty(name, value); 298 return value; 299 } 300 301 @Override 302 public Base makeProperty(int hash, String name) throws FHIRException { 303 switch (hash) { 304 case 1380938712: return getFunction(); 305 case 92645877: return getActor(); 306 default: return super.makeProperty(hash, name); 307 } 308 309 } 310 311 @Override 312 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 313 switch (hash) { 314 case 1380938712: /*function*/ return new String[] {"CodeableConcept"}; 315 case 92645877: /*actor*/ return new String[] {"Reference"}; 316 default: return super.getTypesForProperty(hash, name); 317 } 318 319 } 320 321 @Override 322 public Base addChild(String name) throws FHIRException { 323 if (name.equals("function")) { 324 this.function = new CodeableConcept(); 325 return this.function; 326 } 327 else if (name.equals("actor")) { 328 this.actor = new Reference(); 329 return this.actor; 330 } 331 else 332 return super.addChild(name); 333 } 334 335 public ImmunizationPerformerComponent copy() { 336 ImmunizationPerformerComponent dst = new ImmunizationPerformerComponent(); 337 copyValues(dst); 338 return dst; 339 } 340 341 public void copyValues(ImmunizationPerformerComponent dst) { 342 super.copyValues(dst); 343 dst.function = function == null ? null : function.copy(); 344 dst.actor = actor == null ? null : actor.copy(); 345 } 346 347 @Override 348 public boolean equalsDeep(Base other_) { 349 if (!super.equalsDeep(other_)) 350 return false; 351 if (!(other_ instanceof ImmunizationPerformerComponent)) 352 return false; 353 ImmunizationPerformerComponent o = (ImmunizationPerformerComponent) other_; 354 return compareDeep(function, o.function, true) && compareDeep(actor, o.actor, true); 355 } 356 357 @Override 358 public boolean equalsShallow(Base other_) { 359 if (!super.equalsShallow(other_)) 360 return false; 361 if (!(other_ instanceof ImmunizationPerformerComponent)) 362 return false; 363 ImmunizationPerformerComponent o = (ImmunizationPerformerComponent) other_; 364 return true; 365 } 366 367 public boolean isEmpty() { 368 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(function, actor); 369 } 370 371 public String fhirType() { 372 return "Immunization.performer"; 373 374 } 375 376 } 377 378 @Block() 379 public static class ImmunizationProgramEligibilityComponent extends BackboneElement implements IBaseBackboneElement { 380 /** 381 * Indicates which program the patient had their eligility evaluated for. 382 */ 383 @Child(name = "program", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) 384 @Description(shortDefinition="The program that eligibility is declared for", formalDefinition="Indicates which program the patient had their eligility evaluated for." ) 385 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-vaccine-funding-program") 386 protected CodeableConcept program; 387 388 /** 389 * Indicates the patient's eligility status for for a specific payment program. 390 */ 391 @Child(name = "programStatus", type = {CodeableConcept.class}, order=2, min=1, max=1, modifier=false, summary=false) 392 @Description(shortDefinition="The patient's eligibility status for the program", formalDefinition="Indicates the patient's eligility status for for a specific payment program." ) 393 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-program-eligibility") 394 protected CodeableConcept programStatus; 395 396 private static final long serialVersionUID = -442289864L; 397 398 /** 399 * Constructor 400 */ 401 public ImmunizationProgramEligibilityComponent() { 402 super(); 403 } 404 405 /** 406 * Constructor 407 */ 408 public ImmunizationProgramEligibilityComponent(CodeableConcept program, CodeableConcept programStatus) { 409 super(); 410 this.setProgram(program); 411 this.setProgramStatus(programStatus); 412 } 413 414 /** 415 * @return {@link #program} (Indicates which program the patient had their eligility evaluated for.) 416 */ 417 public CodeableConcept getProgram() { 418 if (this.program == null) 419 if (Configuration.errorOnAutoCreate()) 420 throw new Error("Attempt to auto-create ImmunizationProgramEligibilityComponent.program"); 421 else if (Configuration.doAutoCreate()) 422 this.program = new CodeableConcept(); // cc 423 return this.program; 424 } 425 426 public boolean hasProgram() { 427 return this.program != null && !this.program.isEmpty(); 428 } 429 430 /** 431 * @param value {@link #program} (Indicates which program the patient had their eligility evaluated for.) 432 */ 433 public ImmunizationProgramEligibilityComponent setProgram(CodeableConcept value) { 434 this.program = value; 435 return this; 436 } 437 438 /** 439 * @return {@link #programStatus} (Indicates the patient's eligility status for for a specific payment program.) 440 */ 441 public CodeableConcept getProgramStatus() { 442 if (this.programStatus == null) 443 if (Configuration.errorOnAutoCreate()) 444 throw new Error("Attempt to auto-create ImmunizationProgramEligibilityComponent.programStatus"); 445 else if (Configuration.doAutoCreate()) 446 this.programStatus = new CodeableConcept(); // cc 447 return this.programStatus; 448 } 449 450 public boolean hasProgramStatus() { 451 return this.programStatus != null && !this.programStatus.isEmpty(); 452 } 453 454 /** 455 * @param value {@link #programStatus} (Indicates the patient's eligility status for for a specific payment program.) 456 */ 457 public ImmunizationProgramEligibilityComponent setProgramStatus(CodeableConcept value) { 458 this.programStatus = value; 459 return this; 460 } 461 462 protected void listChildren(List<Property> children) { 463 super.listChildren(children); 464 children.add(new Property("program", "CodeableConcept", "Indicates which program the patient had their eligility evaluated for.", 0, 1, program)); 465 children.add(new Property("programStatus", "CodeableConcept", "Indicates the patient's eligility status for for a specific payment program.", 0, 1, programStatus)); 466 } 467 468 @Override 469 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 470 switch (_hash) { 471 case -309387644: /*program*/ return new Property("program", "CodeableConcept", "Indicates which program the patient had their eligility evaluated for.", 0, 1, program); 472 case 472508310: /*programStatus*/ return new Property("programStatus", "CodeableConcept", "Indicates the patient's eligility status for for a specific payment program.", 0, 1, programStatus); 473 default: return super.getNamedProperty(_hash, _name, _checkValid); 474 } 475 476 } 477 478 @Override 479 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 480 switch (hash) { 481 case -309387644: /*program*/ return this.program == null ? new Base[0] : new Base[] {this.program}; // CodeableConcept 482 case 472508310: /*programStatus*/ return this.programStatus == null ? new Base[0] : new Base[] {this.programStatus}; // CodeableConcept 483 default: return super.getProperty(hash, name, checkValid); 484 } 485 486 } 487 488 @Override 489 public Base setProperty(int hash, String name, Base value) throws FHIRException { 490 switch (hash) { 491 case -309387644: // program 492 this.program = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 493 return value; 494 case 472508310: // programStatus 495 this.programStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 496 return value; 497 default: return super.setProperty(hash, name, value); 498 } 499 500 } 501 502 @Override 503 public Base setProperty(String name, Base value) throws FHIRException { 504 if (name.equals("program")) { 505 this.program = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 506 } else if (name.equals("programStatus")) { 507 this.programStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 508 } else 509 return super.setProperty(name, value); 510 return value; 511 } 512 513 @Override 514 public Base makeProperty(int hash, String name) throws FHIRException { 515 switch (hash) { 516 case -309387644: return getProgram(); 517 case 472508310: return getProgramStatus(); 518 default: return super.makeProperty(hash, name); 519 } 520 521 } 522 523 @Override 524 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 525 switch (hash) { 526 case -309387644: /*program*/ return new String[] {"CodeableConcept"}; 527 case 472508310: /*programStatus*/ return new String[] {"CodeableConcept"}; 528 default: return super.getTypesForProperty(hash, name); 529 } 530 531 } 532 533 @Override 534 public Base addChild(String name) throws FHIRException { 535 if (name.equals("program")) { 536 this.program = new CodeableConcept(); 537 return this.program; 538 } 539 else if (name.equals("programStatus")) { 540 this.programStatus = new CodeableConcept(); 541 return this.programStatus; 542 } 543 else 544 return super.addChild(name); 545 } 546 547 public ImmunizationProgramEligibilityComponent copy() { 548 ImmunizationProgramEligibilityComponent dst = new ImmunizationProgramEligibilityComponent(); 549 copyValues(dst); 550 return dst; 551 } 552 553 public void copyValues(ImmunizationProgramEligibilityComponent dst) { 554 super.copyValues(dst); 555 dst.program = program == null ? null : program.copy(); 556 dst.programStatus = programStatus == null ? null : programStatus.copy(); 557 } 558 559 @Override 560 public boolean equalsDeep(Base other_) { 561 if (!super.equalsDeep(other_)) 562 return false; 563 if (!(other_ instanceof ImmunizationProgramEligibilityComponent)) 564 return false; 565 ImmunizationProgramEligibilityComponent o = (ImmunizationProgramEligibilityComponent) other_; 566 return compareDeep(program, o.program, true) && compareDeep(programStatus, o.programStatus, true) 567 ; 568 } 569 570 @Override 571 public boolean equalsShallow(Base other_) { 572 if (!super.equalsShallow(other_)) 573 return false; 574 if (!(other_ instanceof ImmunizationProgramEligibilityComponent)) 575 return false; 576 ImmunizationProgramEligibilityComponent o = (ImmunizationProgramEligibilityComponent) other_; 577 return true; 578 } 579 580 public boolean isEmpty() { 581 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(program, programStatus); 582 } 583 584 public String fhirType() { 585 return "Immunization.programEligibility"; 586 587 } 588 589 } 590 591 @Block() 592 public static class ImmunizationReactionComponent extends BackboneElement implements IBaseBackboneElement { 593 /** 594 * Date of reaction to the immunization. 595 */ 596 @Child(name = "date", type = {DateTimeType.class}, order=1, min=0, max=1, modifier=false, summary=false) 597 @Description(shortDefinition="When reaction started", formalDefinition="Date of reaction to the immunization." ) 598 protected DateTimeType date; 599 600 /** 601 * Details of the reaction. 602 */ 603 @Child(name = "manifestation", type = {CodeableReference.class}, order=2, min=0, max=1, modifier=false, summary=false) 604 @Description(shortDefinition="Additional information on reaction", formalDefinition="Details of the reaction." ) 605 protected CodeableReference manifestation; 606 607 /** 608 * Self-reported indicator. 609 */ 610 @Child(name = "reported", type = {BooleanType.class}, order=3, min=0, max=1, modifier=false, summary=false) 611 @Description(shortDefinition="Indicates self-reported reaction", formalDefinition="Self-reported indicator." ) 612 protected BooleanType reported; 613 614 private static final long serialVersionUID = 1181151012L; 615 616 /** 617 * Constructor 618 */ 619 public ImmunizationReactionComponent() { 620 super(); 621 } 622 623 /** 624 * @return {@link #date} (Date of reaction to the immunization.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 625 */ 626 public DateTimeType getDateElement() { 627 if (this.date == null) 628 if (Configuration.errorOnAutoCreate()) 629 throw new Error("Attempt to auto-create ImmunizationReactionComponent.date"); 630 else if (Configuration.doAutoCreate()) 631 this.date = new DateTimeType(); // bb 632 return this.date; 633 } 634 635 public boolean hasDateElement() { 636 return this.date != null && !this.date.isEmpty(); 637 } 638 639 public boolean hasDate() { 640 return this.date != null && !this.date.isEmpty(); 641 } 642 643 /** 644 * @param value {@link #date} (Date of reaction to the immunization.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 645 */ 646 public ImmunizationReactionComponent setDateElement(DateTimeType value) { 647 this.date = value; 648 return this; 649 } 650 651 /** 652 * @return Date of reaction to the immunization. 653 */ 654 public Date getDate() { 655 return this.date == null ? null : this.date.getValue(); 656 } 657 658 /** 659 * @param value Date of reaction to the immunization. 660 */ 661 public ImmunizationReactionComponent setDate(Date value) { 662 if (value == null) 663 this.date = null; 664 else { 665 if (this.date == null) 666 this.date = new DateTimeType(); 667 this.date.setValue(value); 668 } 669 return this; 670 } 671 672 /** 673 * @return {@link #manifestation} (Details of the reaction.) 674 */ 675 public CodeableReference getManifestation() { 676 if (this.manifestation == null) 677 if (Configuration.errorOnAutoCreate()) 678 throw new Error("Attempt to auto-create ImmunizationReactionComponent.manifestation"); 679 else if (Configuration.doAutoCreate()) 680 this.manifestation = new CodeableReference(); // cc 681 return this.manifestation; 682 } 683 684 public boolean hasManifestation() { 685 return this.manifestation != null && !this.manifestation.isEmpty(); 686 } 687 688 /** 689 * @param value {@link #manifestation} (Details of the reaction.) 690 */ 691 public ImmunizationReactionComponent setManifestation(CodeableReference value) { 692 this.manifestation = value; 693 return this; 694 } 695 696 /** 697 * @return {@link #reported} (Self-reported indicator.). This is the underlying object with id, value and extensions. The accessor "getReported" gives direct access to the value 698 */ 699 public BooleanType getReportedElement() { 700 if (this.reported == null) 701 if (Configuration.errorOnAutoCreate()) 702 throw new Error("Attempt to auto-create ImmunizationReactionComponent.reported"); 703 else if (Configuration.doAutoCreate()) 704 this.reported = new BooleanType(); // bb 705 return this.reported; 706 } 707 708 public boolean hasReportedElement() { 709 return this.reported != null && !this.reported.isEmpty(); 710 } 711 712 public boolean hasReported() { 713 return this.reported != null && !this.reported.isEmpty(); 714 } 715 716 /** 717 * @param value {@link #reported} (Self-reported indicator.). This is the underlying object with id, value and extensions. The accessor "getReported" gives direct access to the value 718 */ 719 public ImmunizationReactionComponent setReportedElement(BooleanType value) { 720 this.reported = value; 721 return this; 722 } 723 724 /** 725 * @return Self-reported indicator. 726 */ 727 public boolean getReported() { 728 return this.reported == null || this.reported.isEmpty() ? false : this.reported.getValue(); 729 } 730 731 /** 732 * @param value Self-reported indicator. 733 */ 734 public ImmunizationReactionComponent setReported(boolean value) { 735 if (this.reported == null) 736 this.reported = new BooleanType(); 737 this.reported.setValue(value); 738 return this; 739 } 740 741 protected void listChildren(List<Property> children) { 742 super.listChildren(children); 743 children.add(new Property("date", "dateTime", "Date of reaction to the immunization.", 0, 1, date)); 744 children.add(new Property("manifestation", "CodeableReference(Observation)", "Details of the reaction.", 0, 1, manifestation)); 745 children.add(new Property("reported", "boolean", "Self-reported indicator.", 0, 1, reported)); 746 } 747 748 @Override 749 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 750 switch (_hash) { 751 case 3076014: /*date*/ return new Property("date", "dateTime", "Date of reaction to the immunization.", 0, 1, date); 752 case 1115984422: /*manifestation*/ return new Property("manifestation", "CodeableReference(Observation)", "Details of the reaction.", 0, 1, manifestation); 753 case -427039533: /*reported*/ return new Property("reported", "boolean", "Self-reported indicator.", 0, 1, reported); 754 default: return super.getNamedProperty(_hash, _name, _checkValid); 755 } 756 757 } 758 759 @Override 760 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 761 switch (hash) { 762 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 763 case 1115984422: /*manifestation*/ return this.manifestation == null ? new Base[0] : new Base[] {this.manifestation}; // CodeableReference 764 case -427039533: /*reported*/ return this.reported == null ? new Base[0] : new Base[] {this.reported}; // BooleanType 765 default: return super.getProperty(hash, name, checkValid); 766 } 767 768 } 769 770 @Override 771 public Base setProperty(int hash, String name, Base value) throws FHIRException { 772 switch (hash) { 773 case 3076014: // date 774 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 775 return value; 776 case 1115984422: // manifestation 777 this.manifestation = TypeConvertor.castToCodeableReference(value); // CodeableReference 778 return value; 779 case -427039533: // reported 780 this.reported = TypeConvertor.castToBoolean(value); // BooleanType 781 return value; 782 default: return super.setProperty(hash, name, value); 783 } 784 785 } 786 787 @Override 788 public Base setProperty(String name, Base value) throws FHIRException { 789 if (name.equals("date")) { 790 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 791 } else if (name.equals("manifestation")) { 792 this.manifestation = TypeConvertor.castToCodeableReference(value); // CodeableReference 793 } else if (name.equals("reported")) { 794 this.reported = TypeConvertor.castToBoolean(value); // BooleanType 795 } else 796 return super.setProperty(name, value); 797 return value; 798 } 799 800 @Override 801 public Base makeProperty(int hash, String name) throws FHIRException { 802 switch (hash) { 803 case 3076014: return getDateElement(); 804 case 1115984422: return getManifestation(); 805 case -427039533: return getReportedElement(); 806 default: return super.makeProperty(hash, name); 807 } 808 809 } 810 811 @Override 812 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 813 switch (hash) { 814 case 3076014: /*date*/ return new String[] {"dateTime"}; 815 case 1115984422: /*manifestation*/ return new String[] {"CodeableReference"}; 816 case -427039533: /*reported*/ return new String[] {"boolean"}; 817 default: return super.getTypesForProperty(hash, name); 818 } 819 820 } 821 822 @Override 823 public Base addChild(String name) throws FHIRException { 824 if (name.equals("date")) { 825 throw new FHIRException("Cannot call addChild on a singleton property Immunization.reaction.date"); 826 } 827 else if (name.equals("manifestation")) { 828 this.manifestation = new CodeableReference(); 829 return this.manifestation; 830 } 831 else if (name.equals("reported")) { 832 throw new FHIRException("Cannot call addChild on a singleton property Immunization.reaction.reported"); 833 } 834 else 835 return super.addChild(name); 836 } 837 838 public ImmunizationReactionComponent copy() { 839 ImmunizationReactionComponent dst = new ImmunizationReactionComponent(); 840 copyValues(dst); 841 return dst; 842 } 843 844 public void copyValues(ImmunizationReactionComponent dst) { 845 super.copyValues(dst); 846 dst.date = date == null ? null : date.copy(); 847 dst.manifestation = manifestation == null ? null : manifestation.copy(); 848 dst.reported = reported == null ? null : reported.copy(); 849 } 850 851 @Override 852 public boolean equalsDeep(Base other_) { 853 if (!super.equalsDeep(other_)) 854 return false; 855 if (!(other_ instanceof ImmunizationReactionComponent)) 856 return false; 857 ImmunizationReactionComponent o = (ImmunizationReactionComponent) other_; 858 return compareDeep(date, o.date, true) && compareDeep(manifestation, o.manifestation, true) && compareDeep(reported, o.reported, true) 859 ; 860 } 861 862 @Override 863 public boolean equalsShallow(Base other_) { 864 if (!super.equalsShallow(other_)) 865 return false; 866 if (!(other_ instanceof ImmunizationReactionComponent)) 867 return false; 868 ImmunizationReactionComponent o = (ImmunizationReactionComponent) other_; 869 return compareValues(date, o.date, true) && compareValues(reported, o.reported, true); 870 } 871 872 public boolean isEmpty() { 873 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(date, manifestation, reported 874 ); 875 } 876 877 public String fhirType() { 878 return "Immunization.reaction"; 879 880 } 881 882 } 883 884 @Block() 885 public static class ImmunizationProtocolAppliedComponent extends BackboneElement implements IBaseBackboneElement { 886 /** 887 * One possible path to achieve presumed immunity against a disease - within the context of an authority. 888 */ 889 @Child(name = "series", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) 890 @Description(shortDefinition="Name of vaccine series", formalDefinition="One possible path to achieve presumed immunity against a disease - within the context of an authority." ) 891 protected StringType series; 892 893 /** 894 * Indicates the authority who published the protocol (e.g. ACIP) that is being followed. 895 */ 896 @Child(name = "authority", type = {Organization.class}, order=2, min=0, max=1, modifier=false, summary=false) 897 @Description(shortDefinition="Who is responsible for publishing the recommendations", formalDefinition="Indicates the authority who published the protocol (e.g. ACIP) that is being followed." ) 898 protected Reference authority; 899 900 /** 901 * The vaccine preventable disease the dose is being administered against. 902 */ 903 @Child(name = "targetDisease", type = {CodeableConcept.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 904 @Description(shortDefinition="Vaccine preventatable disease being targeted", formalDefinition="The vaccine preventable disease the dose is being administered against." ) 905 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-target-disease") 906 protected List<CodeableConcept> targetDisease; 907 908 /** 909 * Nominal position in a series as intended by the practitioner administering the dose. 910 */ 911 @Child(name = "doseNumber", type = {StringType.class}, order=4, min=1, max=1, modifier=false, summary=false) 912 @Description(shortDefinition="Dose number within series", formalDefinition="Nominal position in a series as intended by the practitioner administering the dose." ) 913 protected StringType doseNumber; 914 915 /** 916 * The recommended number of doses to achieve immunity as intended by the practitioner administering the dose. 917 */ 918 @Child(name = "seriesDoses", type = {StringType.class}, order=5, min=0, max=1, modifier=false, summary=false) 919 @Description(shortDefinition="Recommended number of doses for immunity", formalDefinition="The recommended number of doses to achieve immunity as intended by the practitioner administering the dose." ) 920 protected StringType seriesDoses; 921 922 private static final long serialVersionUID = 660613103L; 923 924 /** 925 * Constructor 926 */ 927 public ImmunizationProtocolAppliedComponent() { 928 super(); 929 } 930 931 /** 932 * Constructor 933 */ 934 public ImmunizationProtocolAppliedComponent(String doseNumber) { 935 super(); 936 this.setDoseNumber(doseNumber); 937 } 938 939 /** 940 * @return {@link #series} (One possible path to achieve presumed immunity against a disease - within the context of an authority.). This is the underlying object with id, value and extensions. The accessor "getSeries" gives direct access to the value 941 */ 942 public StringType getSeriesElement() { 943 if (this.series == null) 944 if (Configuration.errorOnAutoCreate()) 945 throw new Error("Attempt to auto-create ImmunizationProtocolAppliedComponent.series"); 946 else if (Configuration.doAutoCreate()) 947 this.series = new StringType(); // bb 948 return this.series; 949 } 950 951 public boolean hasSeriesElement() { 952 return this.series != null && !this.series.isEmpty(); 953 } 954 955 public boolean hasSeries() { 956 return this.series != null && !this.series.isEmpty(); 957 } 958 959 /** 960 * @param value {@link #series} (One possible path to achieve presumed immunity against a disease - within the context of an authority.). This is the underlying object with id, value and extensions. The accessor "getSeries" gives direct access to the value 961 */ 962 public ImmunizationProtocolAppliedComponent setSeriesElement(StringType value) { 963 this.series = value; 964 return this; 965 } 966 967 /** 968 * @return One possible path to achieve presumed immunity against a disease - within the context of an authority. 969 */ 970 public String getSeries() { 971 return this.series == null ? null : this.series.getValue(); 972 } 973 974 /** 975 * @param value One possible path to achieve presumed immunity against a disease - within the context of an authority. 976 */ 977 public ImmunizationProtocolAppliedComponent setSeries(String value) { 978 if (Utilities.noString(value)) 979 this.series = null; 980 else { 981 if (this.series == null) 982 this.series = new StringType(); 983 this.series.setValue(value); 984 } 985 return this; 986 } 987 988 /** 989 * @return {@link #authority} (Indicates the authority who published the protocol (e.g. ACIP) that is being followed.) 990 */ 991 public Reference getAuthority() { 992 if (this.authority == null) 993 if (Configuration.errorOnAutoCreate()) 994 throw new Error("Attempt to auto-create ImmunizationProtocolAppliedComponent.authority"); 995 else if (Configuration.doAutoCreate()) 996 this.authority = new Reference(); // cc 997 return this.authority; 998 } 999 1000 public boolean hasAuthority() { 1001 return this.authority != null && !this.authority.isEmpty(); 1002 } 1003 1004 /** 1005 * @param value {@link #authority} (Indicates the authority who published the protocol (e.g. ACIP) that is being followed.) 1006 */ 1007 public ImmunizationProtocolAppliedComponent setAuthority(Reference value) { 1008 this.authority = value; 1009 return this; 1010 } 1011 1012 /** 1013 * @return {@link #targetDisease} (The vaccine preventable disease the dose is being administered against.) 1014 */ 1015 public List<CodeableConcept> getTargetDisease() { 1016 if (this.targetDisease == null) 1017 this.targetDisease = new ArrayList<CodeableConcept>(); 1018 return this.targetDisease; 1019 } 1020 1021 /** 1022 * @return Returns a reference to <code>this</code> for easy method chaining 1023 */ 1024 public ImmunizationProtocolAppliedComponent setTargetDisease(List<CodeableConcept> theTargetDisease) { 1025 this.targetDisease = theTargetDisease; 1026 return this; 1027 } 1028 1029 public boolean hasTargetDisease() { 1030 if (this.targetDisease == null) 1031 return false; 1032 for (CodeableConcept item : this.targetDisease) 1033 if (!item.isEmpty()) 1034 return true; 1035 return false; 1036 } 1037 1038 public CodeableConcept addTargetDisease() { //3 1039 CodeableConcept t = new CodeableConcept(); 1040 if (this.targetDisease == null) 1041 this.targetDisease = new ArrayList<CodeableConcept>(); 1042 this.targetDisease.add(t); 1043 return t; 1044 } 1045 1046 public ImmunizationProtocolAppliedComponent addTargetDisease(CodeableConcept t) { //3 1047 if (t == null) 1048 return this; 1049 if (this.targetDisease == null) 1050 this.targetDisease = new ArrayList<CodeableConcept>(); 1051 this.targetDisease.add(t); 1052 return this; 1053 } 1054 1055 /** 1056 * @return The first repetition of repeating field {@link #targetDisease}, creating it if it does not already exist {3} 1057 */ 1058 public CodeableConcept getTargetDiseaseFirstRep() { 1059 if (getTargetDisease().isEmpty()) { 1060 addTargetDisease(); 1061 } 1062 return getTargetDisease().get(0); 1063 } 1064 1065 /** 1066 * @return {@link #doseNumber} (Nominal position in a series as intended by the practitioner administering the dose.). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value 1067 */ 1068 public StringType getDoseNumberElement() { 1069 if (this.doseNumber == null) 1070 if (Configuration.errorOnAutoCreate()) 1071 throw new Error("Attempt to auto-create ImmunizationProtocolAppliedComponent.doseNumber"); 1072 else if (Configuration.doAutoCreate()) 1073 this.doseNumber = new StringType(); // bb 1074 return this.doseNumber; 1075 } 1076 1077 public boolean hasDoseNumberElement() { 1078 return this.doseNumber != null && !this.doseNumber.isEmpty(); 1079 } 1080 1081 public boolean hasDoseNumber() { 1082 return this.doseNumber != null && !this.doseNumber.isEmpty(); 1083 } 1084 1085 /** 1086 * @param value {@link #doseNumber} (Nominal position in a series as intended by the practitioner administering the dose.). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value 1087 */ 1088 public ImmunizationProtocolAppliedComponent setDoseNumberElement(StringType value) { 1089 this.doseNumber = value; 1090 return this; 1091 } 1092 1093 /** 1094 * @return Nominal position in a series as intended by the practitioner administering the dose. 1095 */ 1096 public String getDoseNumber() { 1097 return this.doseNumber == null ? null : this.doseNumber.getValue(); 1098 } 1099 1100 /** 1101 * @param value Nominal position in a series as intended by the practitioner administering the dose. 1102 */ 1103 public ImmunizationProtocolAppliedComponent setDoseNumber(String value) { 1104 if (this.doseNumber == null) 1105 this.doseNumber = new StringType(); 1106 this.doseNumber.setValue(value); 1107 return this; 1108 } 1109 1110 /** 1111 * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity as intended by the practitioner administering the dose.). This is the underlying object with id, value and extensions. The accessor "getSeriesDoses" gives direct access to the value 1112 */ 1113 public StringType getSeriesDosesElement() { 1114 if (this.seriesDoses == null) 1115 if (Configuration.errorOnAutoCreate()) 1116 throw new Error("Attempt to auto-create ImmunizationProtocolAppliedComponent.seriesDoses"); 1117 else if (Configuration.doAutoCreate()) 1118 this.seriesDoses = new StringType(); // bb 1119 return this.seriesDoses; 1120 } 1121 1122 public boolean hasSeriesDosesElement() { 1123 return this.seriesDoses != null && !this.seriesDoses.isEmpty(); 1124 } 1125 1126 public boolean hasSeriesDoses() { 1127 return this.seriesDoses != null && !this.seriesDoses.isEmpty(); 1128 } 1129 1130 /** 1131 * @param value {@link #seriesDoses} (The recommended number of doses to achieve immunity as intended by the practitioner administering the dose.). This is the underlying object with id, value and extensions. The accessor "getSeriesDoses" gives direct access to the value 1132 */ 1133 public ImmunizationProtocolAppliedComponent setSeriesDosesElement(StringType value) { 1134 this.seriesDoses = value; 1135 return this; 1136 } 1137 1138 /** 1139 * @return The recommended number of doses to achieve immunity as intended by the practitioner administering the dose. 1140 */ 1141 public String getSeriesDoses() { 1142 return this.seriesDoses == null ? null : this.seriesDoses.getValue(); 1143 } 1144 1145 /** 1146 * @param value The recommended number of doses to achieve immunity as intended by the practitioner administering the dose. 1147 */ 1148 public ImmunizationProtocolAppliedComponent setSeriesDoses(String value) { 1149 if (Utilities.noString(value)) 1150 this.seriesDoses = null; 1151 else { 1152 if (this.seriesDoses == null) 1153 this.seriesDoses = new StringType(); 1154 this.seriesDoses.setValue(value); 1155 } 1156 return this; 1157 } 1158 1159 protected void listChildren(List<Property> children) { 1160 super.listChildren(children); 1161 children.add(new Property("series", "string", "One possible path to achieve presumed immunity against a disease - within the context of an authority.", 0, 1, series)); 1162 children.add(new Property("authority", "Reference(Organization)", "Indicates the authority who published the protocol (e.g. ACIP) that is being followed.", 0, 1, authority)); 1163 children.add(new Property("targetDisease", "CodeableConcept", "The vaccine preventable disease the dose is being administered against.", 0, java.lang.Integer.MAX_VALUE, targetDisease)); 1164 children.add(new Property("doseNumber", "string", "Nominal position in a series as intended by the practitioner administering the dose.", 0, 1, doseNumber)); 1165 children.add(new Property("seriesDoses", "string", "The recommended number of doses to achieve immunity as intended by the practitioner administering the dose.", 0, 1, seriesDoses)); 1166 } 1167 1168 @Override 1169 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1170 switch (_hash) { 1171 case -905838985: /*series*/ return new Property("series", "string", "One possible path to achieve presumed immunity against a disease - within the context of an authority.", 0, 1, series); 1172 case 1475610435: /*authority*/ return new Property("authority", "Reference(Organization)", "Indicates the authority who published the protocol (e.g. ACIP) that is being followed.", 0, 1, authority); 1173 case -319593813: /*targetDisease*/ return new Property("targetDisease", "CodeableConcept", "The vaccine preventable disease the dose is being administered against.", 0, java.lang.Integer.MAX_VALUE, targetDisease); 1174 case -887709242: /*doseNumber*/ return new Property("doseNumber", "string", "Nominal position in a series as intended by the practitioner administering the dose.", 0, 1, doseNumber); 1175 case -1936727105: /*seriesDoses*/ return new Property("seriesDoses", "string", "The recommended number of doses to achieve immunity as intended by the practitioner administering the dose.", 0, 1, seriesDoses); 1176 default: return super.getNamedProperty(_hash, _name, _checkValid); 1177 } 1178 1179 } 1180 1181 @Override 1182 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1183 switch (hash) { 1184 case -905838985: /*series*/ return this.series == null ? new Base[0] : new Base[] {this.series}; // StringType 1185 case 1475610435: /*authority*/ return this.authority == null ? new Base[0] : new Base[] {this.authority}; // Reference 1186 case -319593813: /*targetDisease*/ return this.targetDisease == null ? new Base[0] : this.targetDisease.toArray(new Base[this.targetDisease.size()]); // CodeableConcept 1187 case -887709242: /*doseNumber*/ return this.doseNumber == null ? new Base[0] : new Base[] {this.doseNumber}; // StringType 1188 case -1936727105: /*seriesDoses*/ return this.seriesDoses == null ? new Base[0] : new Base[] {this.seriesDoses}; // StringType 1189 default: return super.getProperty(hash, name, checkValid); 1190 } 1191 1192 } 1193 1194 @Override 1195 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1196 switch (hash) { 1197 case -905838985: // series 1198 this.series = TypeConvertor.castToString(value); // StringType 1199 return value; 1200 case 1475610435: // authority 1201 this.authority = TypeConvertor.castToReference(value); // Reference 1202 return value; 1203 case -319593813: // targetDisease 1204 this.getTargetDisease().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 1205 return value; 1206 case -887709242: // doseNumber 1207 this.doseNumber = TypeConvertor.castToString(value); // StringType 1208 return value; 1209 case -1936727105: // seriesDoses 1210 this.seriesDoses = TypeConvertor.castToString(value); // StringType 1211 return value; 1212 default: return super.setProperty(hash, name, value); 1213 } 1214 1215 } 1216 1217 @Override 1218 public Base setProperty(String name, Base value) throws FHIRException { 1219 if (name.equals("series")) { 1220 this.series = TypeConvertor.castToString(value); // StringType 1221 } else if (name.equals("authority")) { 1222 this.authority = TypeConvertor.castToReference(value); // Reference 1223 } else if (name.equals("targetDisease")) { 1224 this.getTargetDisease().add(TypeConvertor.castToCodeableConcept(value)); 1225 } else if (name.equals("doseNumber")) { 1226 this.doseNumber = TypeConvertor.castToString(value); // StringType 1227 } else if (name.equals("seriesDoses")) { 1228 this.seriesDoses = TypeConvertor.castToString(value); // StringType 1229 } else 1230 return super.setProperty(name, value); 1231 return value; 1232 } 1233 1234 @Override 1235 public Base makeProperty(int hash, String name) throws FHIRException { 1236 switch (hash) { 1237 case -905838985: return getSeriesElement(); 1238 case 1475610435: return getAuthority(); 1239 case -319593813: return addTargetDisease(); 1240 case -887709242: return getDoseNumberElement(); 1241 case -1936727105: return getSeriesDosesElement(); 1242 default: return super.makeProperty(hash, name); 1243 } 1244 1245 } 1246 1247 @Override 1248 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1249 switch (hash) { 1250 case -905838985: /*series*/ return new String[] {"string"}; 1251 case 1475610435: /*authority*/ return new String[] {"Reference"}; 1252 case -319593813: /*targetDisease*/ return new String[] {"CodeableConcept"}; 1253 case -887709242: /*doseNumber*/ return new String[] {"string"}; 1254 case -1936727105: /*seriesDoses*/ return new String[] {"string"}; 1255 default: return super.getTypesForProperty(hash, name); 1256 } 1257 1258 } 1259 1260 @Override 1261 public Base addChild(String name) throws FHIRException { 1262 if (name.equals("series")) { 1263 throw new FHIRException("Cannot call addChild on a singleton property Immunization.protocolApplied.series"); 1264 } 1265 else if (name.equals("authority")) { 1266 this.authority = new Reference(); 1267 return this.authority; 1268 } 1269 else if (name.equals("targetDisease")) { 1270 return addTargetDisease(); 1271 } 1272 else if (name.equals("doseNumber")) { 1273 throw new FHIRException("Cannot call addChild on a singleton property Immunization.protocolApplied.doseNumber"); 1274 } 1275 else if (name.equals("seriesDoses")) { 1276 throw new FHIRException("Cannot call addChild on a singleton property Immunization.protocolApplied.seriesDoses"); 1277 } 1278 else 1279 return super.addChild(name); 1280 } 1281 1282 public ImmunizationProtocolAppliedComponent copy() { 1283 ImmunizationProtocolAppliedComponent dst = new ImmunizationProtocolAppliedComponent(); 1284 copyValues(dst); 1285 return dst; 1286 } 1287 1288 public void copyValues(ImmunizationProtocolAppliedComponent dst) { 1289 super.copyValues(dst); 1290 dst.series = series == null ? null : series.copy(); 1291 dst.authority = authority == null ? null : authority.copy(); 1292 if (targetDisease != null) { 1293 dst.targetDisease = new ArrayList<CodeableConcept>(); 1294 for (CodeableConcept i : targetDisease) 1295 dst.targetDisease.add(i.copy()); 1296 }; 1297 dst.doseNumber = doseNumber == null ? null : doseNumber.copy(); 1298 dst.seriesDoses = seriesDoses == null ? null : seriesDoses.copy(); 1299 } 1300 1301 @Override 1302 public boolean equalsDeep(Base other_) { 1303 if (!super.equalsDeep(other_)) 1304 return false; 1305 if (!(other_ instanceof ImmunizationProtocolAppliedComponent)) 1306 return false; 1307 ImmunizationProtocolAppliedComponent o = (ImmunizationProtocolAppliedComponent) other_; 1308 return compareDeep(series, o.series, true) && compareDeep(authority, o.authority, true) && compareDeep(targetDisease, o.targetDisease, true) 1309 && compareDeep(doseNumber, o.doseNumber, true) && compareDeep(seriesDoses, o.seriesDoses, true) 1310 ; 1311 } 1312 1313 @Override 1314 public boolean equalsShallow(Base other_) { 1315 if (!super.equalsShallow(other_)) 1316 return false; 1317 if (!(other_ instanceof ImmunizationProtocolAppliedComponent)) 1318 return false; 1319 ImmunizationProtocolAppliedComponent o = (ImmunizationProtocolAppliedComponent) other_; 1320 return compareValues(series, o.series, true) && compareValues(doseNumber, o.doseNumber, true) && compareValues(seriesDoses, o.seriesDoses, true) 1321 ; 1322 } 1323 1324 public boolean isEmpty() { 1325 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(series, authority, targetDisease 1326 , doseNumber, seriesDoses); 1327 } 1328 1329 public String fhirType() { 1330 return "Immunization.protocolApplied"; 1331 1332 } 1333 1334 } 1335 1336 /** 1337 * A unique identifier assigned to this immunization record. 1338 */ 1339 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1340 @Description(shortDefinition="Business identifier", formalDefinition="A unique identifier assigned to this immunization record." ) 1341 protected List<Identifier> identifier; 1342 1343 /** 1344 * A plan, order or recommendation fulfilled in whole or in part by this immunization. 1345 */ 1346 @Child(name = "basedOn", type = {CarePlan.class, MedicationRequest.class, ServiceRequest.class, ImmunizationRecommendation.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1347 @Description(shortDefinition="Authority that the immunization event is based on", formalDefinition="A plan, order or recommendation fulfilled in whole or in part by this immunization." ) 1348 protected List<Reference> basedOn; 1349 1350 /** 1351 * Indicates the current status of the immunization event. 1352 */ 1353 @Child(name = "status", type = {CodeType.class}, order=2, min=1, max=1, modifier=true, summary=true) 1354 @Description(shortDefinition="completed | entered-in-error | not-done", formalDefinition="Indicates the current status of the immunization event." ) 1355 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-status") 1356 protected Enumeration<ImmunizationStatusCodes> status; 1357 1358 /** 1359 * Indicates the reason the immunization event was not performed. 1360 */ 1361 @Child(name = "statusReason", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=false) 1362 @Description(shortDefinition="Reason for current status", formalDefinition="Indicates the reason the immunization event was not performed." ) 1363 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-status-reason") 1364 protected CodeableConcept statusReason; 1365 1366 /** 1367 * Vaccine that was administered or was to be administered. 1368 */ 1369 @Child(name = "vaccineCode", type = {CodeableConcept.class}, order=4, min=1, max=1, modifier=false, summary=true) 1370 @Description(shortDefinition="Vaccine administered", formalDefinition="Vaccine that was administered or was to be administered." ) 1371 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/vaccine-code") 1372 protected CodeableConcept vaccineCode; 1373 1374 /** 1375 * An indication of which product was administered to the patient. This is typically a more detailed representation of the concept conveyed by the vaccineCode data element. If a Medication resource is referenced, it may be to a stand-alone resource or a contained resource within the Immunization resource. 1376 */ 1377 @Child(name = "administeredProduct", type = {CodeableReference.class}, order=5, min=0, max=1, modifier=false, summary=false) 1378 @Description(shortDefinition="Product that was administered", formalDefinition="An indication of which product was administered to the patient. This is typically a more detailed representation of the concept conveyed by the vaccineCode data element. If a Medication resource is referenced, it may be to a stand-alone resource or a contained resource within the Immunization resource." ) 1379 protected CodeableReference administeredProduct; 1380 1381 /** 1382 * Name of vaccine manufacturer. 1383 */ 1384 @Child(name = "manufacturer", type = {CodeableReference.class}, order=6, min=0, max=1, modifier=false, summary=false) 1385 @Description(shortDefinition="Vaccine manufacturer", formalDefinition="Name of vaccine manufacturer." ) 1386 protected CodeableReference manufacturer; 1387 1388 /** 1389 * Lot number of the vaccine product. 1390 */ 1391 @Child(name = "lotNumber", type = {StringType.class}, order=7, min=0, max=1, modifier=false, summary=false) 1392 @Description(shortDefinition="Vaccine lot number", formalDefinition="Lot number of the vaccine product." ) 1393 protected StringType lotNumber; 1394 1395 /** 1396 * Date vaccine batch expires. 1397 */ 1398 @Child(name = "expirationDate", type = {DateType.class}, order=8, min=0, max=1, modifier=false, summary=false) 1399 @Description(shortDefinition="Vaccine expiration date", formalDefinition="Date vaccine batch expires." ) 1400 protected DateType expirationDate; 1401 1402 /** 1403 * The patient who either received or did not receive the immunization. 1404 */ 1405 @Child(name = "patient", type = {Patient.class}, order=9, min=1, max=1, modifier=false, summary=true) 1406 @Description(shortDefinition="Who was immunized", formalDefinition="The patient who either received or did not receive the immunization." ) 1407 protected Reference patient; 1408 1409 /** 1410 * The visit or admission or other contact between patient and health care provider the immunization was performed as part of. 1411 */ 1412 @Child(name = "encounter", type = {Encounter.class}, order=10, min=0, max=1, modifier=false, summary=false) 1413 @Description(shortDefinition="Encounter immunization was part of", formalDefinition="The visit or admission or other contact between patient and health care provider the immunization was performed as part of." ) 1414 protected Reference encounter; 1415 1416 /** 1417 * Additional information that is relevant to the immunization (e.g. for a vaccine recipient who is pregnant, the gestational age of the fetus). The reason why a vaccine was given (e.g. occupation, underlying medical condition) should be conveyed in Immunization.reason, not as supporting information. The reason why a vaccine was not given (e.g. contraindication) should be conveyed in Immunization.statusReason, not as supporting information. 1418 */ 1419 @Child(name = "supportingInformation", type = {Reference.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1420 @Description(shortDefinition="Additional information in support of the immunization", formalDefinition="Additional information that is relevant to the immunization (e.g. for a vaccine recipient who is pregnant, the gestational age of the fetus). The reason why a vaccine was given (e.g. occupation, underlying medical condition) should be conveyed in Immunization.reason, not as supporting information. The reason why a vaccine was not given (e.g. contraindication) should be conveyed in Immunization.statusReason, not as supporting information." ) 1421 protected List<Reference> supportingInformation; 1422 1423 /** 1424 * Date vaccine administered or was to be administered. 1425 */ 1426 @Child(name = "occurrence", type = {DateTimeType.class, StringType.class}, order=12, min=1, max=1, modifier=false, summary=true) 1427 @Description(shortDefinition="Vaccine administration date", formalDefinition="Date vaccine administered or was to be administered." ) 1428 protected DataType occurrence; 1429 1430 /** 1431 * Indicates whether the data contained in the resource was captured by the individual/organization which was responsible for the administration of the vaccine rather than as 'secondary reported' data documented by a third party. A value of 'true' means this data originated with the individual/organization which was responsible for the administration of the vaccine. 1432 */ 1433 @Child(name = "primarySource", type = {BooleanType.class}, order=13, min=0, max=1, modifier=false, summary=true) 1434 @Description(shortDefinition="Indicates context the data was captured in", formalDefinition="Indicates whether the data contained in the resource was captured by the individual/organization which was responsible for the administration of the vaccine rather than as 'secondary reported' data documented by a third party. A value of 'true' means this data originated with the individual/organization which was responsible for the administration of the vaccine." ) 1435 protected BooleanType primarySource; 1436 1437 /** 1438 * Typically the source of the data when the report of the immunization event is not based on information from the person who administered the vaccine. 1439 */ 1440 @Child(name = "informationSource", type = {CodeableReference.class}, order=14, min=0, max=1, modifier=false, summary=false) 1441 @Description(shortDefinition="Indicates the source of a reported record", formalDefinition="Typically the source of the data when the report of the immunization event is not based on information from the person who administered the vaccine." ) 1442 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-origin") 1443 protected CodeableReference informationSource; 1444 1445 /** 1446 * The service delivery location where the vaccine administration occurred. 1447 */ 1448 @Child(name = "location", type = {Location.class}, order=15, min=0, max=1, modifier=false, summary=false) 1449 @Description(shortDefinition="Where immunization occurred", formalDefinition="The service delivery location where the vaccine administration occurred." ) 1450 protected Reference location; 1451 1452 /** 1453 * Body site where vaccine was administered. 1454 */ 1455 @Child(name = "site", type = {CodeableConcept.class}, order=16, min=0, max=1, modifier=false, summary=false) 1456 @Description(shortDefinition="Body site vaccine was administered", formalDefinition="Body site where vaccine was administered." ) 1457 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-site") 1458 protected CodeableConcept site; 1459 1460 /** 1461 * The path by which the vaccine product is taken into the body. 1462 */ 1463 @Child(name = "route", type = {CodeableConcept.class}, order=17, min=0, max=1, modifier=false, summary=false) 1464 @Description(shortDefinition="How vaccine entered body", formalDefinition="The path by which the vaccine product is taken into the body." ) 1465 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-route") 1466 protected CodeableConcept route; 1467 1468 /** 1469 * The quantity of vaccine product that was administered. 1470 */ 1471 @Child(name = "doseQuantity", type = {Quantity.class}, order=18, min=0, max=1, modifier=false, summary=false) 1472 @Description(shortDefinition="Amount of vaccine administered", formalDefinition="The quantity of vaccine product that was administered." ) 1473 protected Quantity doseQuantity; 1474 1475 /** 1476 * Indicates who performed the immunization event. 1477 */ 1478 @Child(name = "performer", type = {}, order=19, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1479 @Description(shortDefinition="Who performed event", formalDefinition="Indicates who performed the immunization event." ) 1480 protected List<ImmunizationPerformerComponent> performer; 1481 1482 /** 1483 * Extra information about the immunization that is not conveyed by the other attributes. 1484 */ 1485 @Child(name = "note", type = {Annotation.class}, order=20, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1486 @Description(shortDefinition="Additional immunization notes", formalDefinition="Extra information about the immunization that is not conveyed by the other attributes." ) 1487 protected List<Annotation> note; 1488 1489 /** 1490 * Describes why the immunization occurred in coded or textual form, or Indicates another resource (Condition, Observation or DiagnosticReport) whose existence justifies this immunization. 1491 */ 1492 @Child(name = "reason", type = {CodeableReference.class}, order=21, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1493 @Description(shortDefinition="Why immunization occurred", formalDefinition="Describes why the immunization occurred in coded or textual form, or Indicates another resource (Condition, Observation or DiagnosticReport) whose existence justifies this immunization." ) 1494 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-reason") 1495 protected List<CodeableReference> reason; 1496 1497 /** 1498 * Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent. 1499 */ 1500 @Child(name = "isSubpotent", type = {BooleanType.class}, order=22, min=0, max=1, modifier=true, summary=true) 1501 @Description(shortDefinition="Dose potency", formalDefinition="Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent." ) 1502 protected BooleanType isSubpotent; 1503 1504 /** 1505 * Reason why a dose is considered to be subpotent. 1506 */ 1507 @Child(name = "subpotentReason", type = {CodeableConcept.class}, order=23, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1508 @Description(shortDefinition="Reason for being subpotent", formalDefinition="Reason why a dose is considered to be subpotent." ) 1509 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-subpotent-reason") 1510 protected List<CodeableConcept> subpotentReason; 1511 1512 /** 1513 * Indicates a patient's eligibility for a funding program. 1514 */ 1515 @Child(name = "programEligibility", type = {}, order=24, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1516 @Description(shortDefinition="Patient eligibility for a specific vaccination program", formalDefinition="Indicates a patient's eligibility for a funding program." ) 1517 protected List<ImmunizationProgramEligibilityComponent> programEligibility; 1518 1519 /** 1520 * Indicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered). 1521 */ 1522 @Child(name = "fundingSource", type = {CodeableConcept.class}, order=25, min=0, max=1, modifier=false, summary=false) 1523 @Description(shortDefinition="Funding source for the vaccine", formalDefinition="Indicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered)." ) 1524 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/immunization-funding-source") 1525 protected CodeableConcept fundingSource; 1526 1527 /** 1528 * Categorical data indicating that an adverse event is associated in time to an immunization. 1529 */ 1530 @Child(name = "reaction", type = {}, order=26, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1531 @Description(shortDefinition="Details of a reaction that follows immunization", formalDefinition="Categorical data indicating that an adverse event is associated in time to an immunization." ) 1532 protected List<ImmunizationReactionComponent> reaction; 1533 1534 /** 1535 * The protocol (set of recommendations) being followed by the provider who administered the dose. 1536 */ 1537 @Child(name = "protocolApplied", type = {}, order=27, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1538 @Description(shortDefinition="Protocol followed by the provider", formalDefinition="The protocol (set of recommendations) being followed by the provider who administered the dose." ) 1539 protected List<ImmunizationProtocolAppliedComponent> protocolApplied; 1540 1541 private static final long serialVersionUID = 425193818L; 1542 1543 /** 1544 * Constructor 1545 */ 1546 public Immunization() { 1547 super(); 1548 } 1549 1550 /** 1551 * Constructor 1552 */ 1553 public Immunization(ImmunizationStatusCodes status, CodeableConcept vaccineCode, Reference patient, DataType occurrence) { 1554 super(); 1555 this.setStatus(status); 1556 this.setVaccineCode(vaccineCode); 1557 this.setPatient(patient); 1558 this.setOccurrence(occurrence); 1559 } 1560 1561 /** 1562 * @return {@link #identifier} (A unique identifier assigned to this immunization record.) 1563 */ 1564 public List<Identifier> getIdentifier() { 1565 if (this.identifier == null) 1566 this.identifier = new ArrayList<Identifier>(); 1567 return this.identifier; 1568 } 1569 1570 /** 1571 * @return Returns a reference to <code>this</code> for easy method chaining 1572 */ 1573 public Immunization setIdentifier(List<Identifier> theIdentifier) { 1574 this.identifier = theIdentifier; 1575 return this; 1576 } 1577 1578 public boolean hasIdentifier() { 1579 if (this.identifier == null) 1580 return false; 1581 for (Identifier item : this.identifier) 1582 if (!item.isEmpty()) 1583 return true; 1584 return false; 1585 } 1586 1587 public Identifier addIdentifier() { //3 1588 Identifier t = new Identifier(); 1589 if (this.identifier == null) 1590 this.identifier = new ArrayList<Identifier>(); 1591 this.identifier.add(t); 1592 return t; 1593 } 1594 1595 public Immunization addIdentifier(Identifier t) { //3 1596 if (t == null) 1597 return this; 1598 if (this.identifier == null) 1599 this.identifier = new ArrayList<Identifier>(); 1600 this.identifier.add(t); 1601 return this; 1602 } 1603 1604 /** 1605 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 1606 */ 1607 public Identifier getIdentifierFirstRep() { 1608 if (getIdentifier().isEmpty()) { 1609 addIdentifier(); 1610 } 1611 return getIdentifier().get(0); 1612 } 1613 1614 /** 1615 * @return {@link #basedOn} (A plan, order or recommendation fulfilled in whole or in part by this immunization.) 1616 */ 1617 public List<Reference> getBasedOn() { 1618 if (this.basedOn == null) 1619 this.basedOn = new ArrayList<Reference>(); 1620 return this.basedOn; 1621 } 1622 1623 /** 1624 * @return Returns a reference to <code>this</code> for easy method chaining 1625 */ 1626 public Immunization setBasedOn(List<Reference> theBasedOn) { 1627 this.basedOn = theBasedOn; 1628 return this; 1629 } 1630 1631 public boolean hasBasedOn() { 1632 if (this.basedOn == null) 1633 return false; 1634 for (Reference item : this.basedOn) 1635 if (!item.isEmpty()) 1636 return true; 1637 return false; 1638 } 1639 1640 public Reference addBasedOn() { //3 1641 Reference t = new Reference(); 1642 if (this.basedOn == null) 1643 this.basedOn = new ArrayList<Reference>(); 1644 this.basedOn.add(t); 1645 return t; 1646 } 1647 1648 public Immunization addBasedOn(Reference t) { //3 1649 if (t == null) 1650 return this; 1651 if (this.basedOn == null) 1652 this.basedOn = new ArrayList<Reference>(); 1653 this.basedOn.add(t); 1654 return this; 1655 } 1656 1657 /** 1658 * @return The first repetition of repeating field {@link #basedOn}, creating it if it does not already exist {3} 1659 */ 1660 public Reference getBasedOnFirstRep() { 1661 if (getBasedOn().isEmpty()) { 1662 addBasedOn(); 1663 } 1664 return getBasedOn().get(0); 1665 } 1666 1667 /** 1668 * @return {@link #status} (Indicates the current status of the immunization event.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1669 */ 1670 public Enumeration<ImmunizationStatusCodes> getStatusElement() { 1671 if (this.status == null) 1672 if (Configuration.errorOnAutoCreate()) 1673 throw new Error("Attempt to auto-create Immunization.status"); 1674 else if (Configuration.doAutoCreate()) 1675 this.status = new Enumeration<ImmunizationStatusCodes>(new ImmunizationStatusCodesEnumFactory()); // bb 1676 return this.status; 1677 } 1678 1679 public boolean hasStatusElement() { 1680 return this.status != null && !this.status.isEmpty(); 1681 } 1682 1683 public boolean hasStatus() { 1684 return this.status != null && !this.status.isEmpty(); 1685 } 1686 1687 /** 1688 * @param value {@link #status} (Indicates the current status of the immunization event.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1689 */ 1690 public Immunization setStatusElement(Enumeration<ImmunizationStatusCodes> value) { 1691 this.status = value; 1692 return this; 1693 } 1694 1695 /** 1696 * @return Indicates the current status of the immunization event. 1697 */ 1698 public ImmunizationStatusCodes getStatus() { 1699 return this.status == null ? null : this.status.getValue(); 1700 } 1701 1702 /** 1703 * @param value Indicates the current status of the immunization event. 1704 */ 1705 public Immunization setStatus(ImmunizationStatusCodes value) { 1706 if (this.status == null) 1707 this.status = new Enumeration<ImmunizationStatusCodes>(new ImmunizationStatusCodesEnumFactory()); 1708 this.status.setValue(value); 1709 return this; 1710 } 1711 1712 /** 1713 * @return {@link #statusReason} (Indicates the reason the immunization event was not performed.) 1714 */ 1715 public CodeableConcept getStatusReason() { 1716 if (this.statusReason == null) 1717 if (Configuration.errorOnAutoCreate()) 1718 throw new Error("Attempt to auto-create Immunization.statusReason"); 1719 else if (Configuration.doAutoCreate()) 1720 this.statusReason = new CodeableConcept(); // cc 1721 return this.statusReason; 1722 } 1723 1724 public boolean hasStatusReason() { 1725 return this.statusReason != null && !this.statusReason.isEmpty(); 1726 } 1727 1728 /** 1729 * @param value {@link #statusReason} (Indicates the reason the immunization event was not performed.) 1730 */ 1731 public Immunization setStatusReason(CodeableConcept value) { 1732 this.statusReason = value; 1733 return this; 1734 } 1735 1736 /** 1737 * @return {@link #vaccineCode} (Vaccine that was administered or was to be administered.) 1738 */ 1739 public CodeableConcept getVaccineCode() { 1740 if (this.vaccineCode == null) 1741 if (Configuration.errorOnAutoCreate()) 1742 throw new Error("Attempt to auto-create Immunization.vaccineCode"); 1743 else if (Configuration.doAutoCreate()) 1744 this.vaccineCode = new CodeableConcept(); // cc 1745 return this.vaccineCode; 1746 } 1747 1748 public boolean hasVaccineCode() { 1749 return this.vaccineCode != null && !this.vaccineCode.isEmpty(); 1750 } 1751 1752 /** 1753 * @param value {@link #vaccineCode} (Vaccine that was administered or was to be administered.) 1754 */ 1755 public Immunization setVaccineCode(CodeableConcept value) { 1756 this.vaccineCode = value; 1757 return this; 1758 } 1759 1760 /** 1761 * @return {@link #administeredProduct} (An indication of which product was administered to the patient. This is typically a more detailed representation of the concept conveyed by the vaccineCode data element. If a Medication resource is referenced, it may be to a stand-alone resource or a contained resource within the Immunization resource.) 1762 */ 1763 public CodeableReference getAdministeredProduct() { 1764 if (this.administeredProduct == null) 1765 if (Configuration.errorOnAutoCreate()) 1766 throw new Error("Attempt to auto-create Immunization.administeredProduct"); 1767 else if (Configuration.doAutoCreate()) 1768 this.administeredProduct = new CodeableReference(); // cc 1769 return this.administeredProduct; 1770 } 1771 1772 public boolean hasAdministeredProduct() { 1773 return this.administeredProduct != null && !this.administeredProduct.isEmpty(); 1774 } 1775 1776 /** 1777 * @param value {@link #administeredProduct} (An indication of which product was administered to the patient. This is typically a more detailed representation of the concept conveyed by the vaccineCode data element. If a Medication resource is referenced, it may be to a stand-alone resource or a contained resource within the Immunization resource.) 1778 */ 1779 public Immunization setAdministeredProduct(CodeableReference value) { 1780 this.administeredProduct = value; 1781 return this; 1782 } 1783 1784 /** 1785 * @return {@link #manufacturer} (Name of vaccine manufacturer.) 1786 */ 1787 public CodeableReference getManufacturer() { 1788 if (this.manufacturer == null) 1789 if (Configuration.errorOnAutoCreate()) 1790 throw new Error("Attempt to auto-create Immunization.manufacturer"); 1791 else if (Configuration.doAutoCreate()) 1792 this.manufacturer = new CodeableReference(); // cc 1793 return this.manufacturer; 1794 } 1795 1796 public boolean hasManufacturer() { 1797 return this.manufacturer != null && !this.manufacturer.isEmpty(); 1798 } 1799 1800 /** 1801 * @param value {@link #manufacturer} (Name of vaccine manufacturer.) 1802 */ 1803 public Immunization setManufacturer(CodeableReference value) { 1804 this.manufacturer = value; 1805 return this; 1806 } 1807 1808 /** 1809 * @return {@link #lotNumber} (Lot number of the vaccine product.). This is the underlying object with id, value and extensions. The accessor "getLotNumber" gives direct access to the value 1810 */ 1811 public StringType getLotNumberElement() { 1812 if (this.lotNumber == null) 1813 if (Configuration.errorOnAutoCreate()) 1814 throw new Error("Attempt to auto-create Immunization.lotNumber"); 1815 else if (Configuration.doAutoCreate()) 1816 this.lotNumber = new StringType(); // bb 1817 return this.lotNumber; 1818 } 1819 1820 public boolean hasLotNumberElement() { 1821 return this.lotNumber != null && !this.lotNumber.isEmpty(); 1822 } 1823 1824 public boolean hasLotNumber() { 1825 return this.lotNumber != null && !this.lotNumber.isEmpty(); 1826 } 1827 1828 /** 1829 * @param value {@link #lotNumber} (Lot number of the vaccine product.). This is the underlying object with id, value and extensions. The accessor "getLotNumber" gives direct access to the value 1830 */ 1831 public Immunization setLotNumberElement(StringType value) { 1832 this.lotNumber = value; 1833 return this; 1834 } 1835 1836 /** 1837 * @return Lot number of the vaccine product. 1838 */ 1839 public String getLotNumber() { 1840 return this.lotNumber == null ? null : this.lotNumber.getValue(); 1841 } 1842 1843 /** 1844 * @param value Lot number of the vaccine product. 1845 */ 1846 public Immunization setLotNumber(String value) { 1847 if (Utilities.noString(value)) 1848 this.lotNumber = null; 1849 else { 1850 if (this.lotNumber == null) 1851 this.lotNumber = new StringType(); 1852 this.lotNumber.setValue(value); 1853 } 1854 return this; 1855 } 1856 1857 /** 1858 * @return {@link #expirationDate} (Date vaccine batch expires.). This is the underlying object with id, value and extensions. The accessor "getExpirationDate" gives direct access to the value 1859 */ 1860 public DateType getExpirationDateElement() { 1861 if (this.expirationDate == null) 1862 if (Configuration.errorOnAutoCreate()) 1863 throw new Error("Attempt to auto-create Immunization.expirationDate"); 1864 else if (Configuration.doAutoCreate()) 1865 this.expirationDate = new DateType(); // bb 1866 return this.expirationDate; 1867 } 1868 1869 public boolean hasExpirationDateElement() { 1870 return this.expirationDate != null && !this.expirationDate.isEmpty(); 1871 } 1872 1873 public boolean hasExpirationDate() { 1874 return this.expirationDate != null && !this.expirationDate.isEmpty(); 1875 } 1876 1877 /** 1878 * @param value {@link #expirationDate} (Date vaccine batch expires.). This is the underlying object with id, value and extensions. The accessor "getExpirationDate" gives direct access to the value 1879 */ 1880 public Immunization setExpirationDateElement(DateType value) { 1881 this.expirationDate = value; 1882 return this; 1883 } 1884 1885 /** 1886 * @return Date vaccine batch expires. 1887 */ 1888 public Date getExpirationDate() { 1889 return this.expirationDate == null ? null : this.expirationDate.getValue(); 1890 } 1891 1892 /** 1893 * @param value Date vaccine batch expires. 1894 */ 1895 public Immunization setExpirationDate(Date value) { 1896 if (value == null) 1897 this.expirationDate = null; 1898 else { 1899 if (this.expirationDate == null) 1900 this.expirationDate = new DateType(); 1901 this.expirationDate.setValue(value); 1902 } 1903 return this; 1904 } 1905 1906 /** 1907 * @return {@link #patient} (The patient who either received or did not receive the immunization.) 1908 */ 1909 public Reference getPatient() { 1910 if (this.patient == null) 1911 if (Configuration.errorOnAutoCreate()) 1912 throw new Error("Attempt to auto-create Immunization.patient"); 1913 else if (Configuration.doAutoCreate()) 1914 this.patient = new Reference(); // cc 1915 return this.patient; 1916 } 1917 1918 public boolean hasPatient() { 1919 return this.patient != null && !this.patient.isEmpty(); 1920 } 1921 1922 /** 1923 * @param value {@link #patient} (The patient who either received or did not receive the immunization.) 1924 */ 1925 public Immunization setPatient(Reference value) { 1926 this.patient = value; 1927 return this; 1928 } 1929 1930 /** 1931 * @return {@link #encounter} (The visit or admission or other contact between patient and health care provider the immunization was performed as part of.) 1932 */ 1933 public Reference getEncounter() { 1934 if (this.encounter == null) 1935 if (Configuration.errorOnAutoCreate()) 1936 throw new Error("Attempt to auto-create Immunization.encounter"); 1937 else if (Configuration.doAutoCreate()) 1938 this.encounter = new Reference(); // cc 1939 return this.encounter; 1940 } 1941 1942 public boolean hasEncounter() { 1943 return this.encounter != null && !this.encounter.isEmpty(); 1944 } 1945 1946 /** 1947 * @param value {@link #encounter} (The visit or admission or other contact between patient and health care provider the immunization was performed as part of.) 1948 */ 1949 public Immunization setEncounter(Reference value) { 1950 this.encounter = value; 1951 return this; 1952 } 1953 1954 /** 1955 * @return {@link #supportingInformation} (Additional information that is relevant to the immunization (e.g. for a vaccine recipient who is pregnant, the gestational age of the fetus). The reason why a vaccine was given (e.g. occupation, underlying medical condition) should be conveyed in Immunization.reason, not as supporting information. The reason why a vaccine was not given (e.g. contraindication) should be conveyed in Immunization.statusReason, not as supporting information.) 1956 */ 1957 public List<Reference> getSupportingInformation() { 1958 if (this.supportingInformation == null) 1959 this.supportingInformation = new ArrayList<Reference>(); 1960 return this.supportingInformation; 1961 } 1962 1963 /** 1964 * @return Returns a reference to <code>this</code> for easy method chaining 1965 */ 1966 public Immunization setSupportingInformation(List<Reference> theSupportingInformation) { 1967 this.supportingInformation = theSupportingInformation; 1968 return this; 1969 } 1970 1971 public boolean hasSupportingInformation() { 1972 if (this.supportingInformation == null) 1973 return false; 1974 for (Reference item : this.supportingInformation) 1975 if (!item.isEmpty()) 1976 return true; 1977 return false; 1978 } 1979 1980 public Reference addSupportingInformation() { //3 1981 Reference t = new Reference(); 1982 if (this.supportingInformation == null) 1983 this.supportingInformation = new ArrayList<Reference>(); 1984 this.supportingInformation.add(t); 1985 return t; 1986 } 1987 1988 public Immunization addSupportingInformation(Reference t) { //3 1989 if (t == null) 1990 return this; 1991 if (this.supportingInformation == null) 1992 this.supportingInformation = new ArrayList<Reference>(); 1993 this.supportingInformation.add(t); 1994 return this; 1995 } 1996 1997 /** 1998 * @return The first repetition of repeating field {@link #supportingInformation}, creating it if it does not already exist {3} 1999 */ 2000 public Reference getSupportingInformationFirstRep() { 2001 if (getSupportingInformation().isEmpty()) { 2002 addSupportingInformation(); 2003 } 2004 return getSupportingInformation().get(0); 2005 } 2006 2007 /** 2008 * @return {@link #occurrence} (Date vaccine administered or was to be administered.) 2009 */ 2010 public DataType getOccurrence() { 2011 return this.occurrence; 2012 } 2013 2014 /** 2015 * @return {@link #occurrence} (Date vaccine administered or was to be administered.) 2016 */ 2017 public DateTimeType getOccurrenceDateTimeType() throws FHIRException { 2018 if (this.occurrence == null) 2019 this.occurrence = new DateTimeType(); 2020 if (!(this.occurrence instanceof DateTimeType)) 2021 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.occurrence.getClass().getName()+" was encountered"); 2022 return (DateTimeType) this.occurrence; 2023 } 2024 2025 public boolean hasOccurrenceDateTimeType() { 2026 return this != null && this.occurrence instanceof DateTimeType; 2027 } 2028 2029 /** 2030 * @return {@link #occurrence} (Date vaccine administered or was to be administered.) 2031 */ 2032 public StringType getOccurrenceStringType() throws FHIRException { 2033 if (this.occurrence == null) 2034 this.occurrence = new StringType(); 2035 if (!(this.occurrence instanceof StringType)) 2036 throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.occurrence.getClass().getName()+" was encountered"); 2037 return (StringType) this.occurrence; 2038 } 2039 2040 public boolean hasOccurrenceStringType() { 2041 return this != null && this.occurrence instanceof StringType; 2042 } 2043 2044 public boolean hasOccurrence() { 2045 return this.occurrence != null && !this.occurrence.isEmpty(); 2046 } 2047 2048 /** 2049 * @param value {@link #occurrence} (Date vaccine administered or was to be administered.) 2050 */ 2051 public Immunization setOccurrence(DataType value) { 2052 if (value != null && !(value instanceof DateTimeType || value instanceof StringType)) 2053 throw new FHIRException("Not the right type for Immunization.occurrence[x]: "+value.fhirType()); 2054 this.occurrence = value; 2055 return this; 2056 } 2057 2058 /** 2059 * @return {@link #primarySource} (Indicates whether the data contained in the resource was captured by the individual/organization which was responsible for the administration of the vaccine rather than as 'secondary reported' data documented by a third party. A value of 'true' means this data originated with the individual/organization which was responsible for the administration of the vaccine.). This is the underlying object with id, value and extensions. The accessor "getPrimarySource" gives direct access to the value 2060 */ 2061 public BooleanType getPrimarySourceElement() { 2062 if (this.primarySource == null) 2063 if (Configuration.errorOnAutoCreate()) 2064 throw new Error("Attempt to auto-create Immunization.primarySource"); 2065 else if (Configuration.doAutoCreate()) 2066 this.primarySource = new BooleanType(); // bb 2067 return this.primarySource; 2068 } 2069 2070 public boolean hasPrimarySourceElement() { 2071 return this.primarySource != null && !this.primarySource.isEmpty(); 2072 } 2073 2074 public boolean hasPrimarySource() { 2075 return this.primarySource != null && !this.primarySource.isEmpty(); 2076 } 2077 2078 /** 2079 * @param value {@link #primarySource} (Indicates whether the data contained in the resource was captured by the individual/organization which was responsible for the administration of the vaccine rather than as 'secondary reported' data documented by a third party. A value of 'true' means this data originated with the individual/organization which was responsible for the administration of the vaccine.). This is the underlying object with id, value and extensions. The accessor "getPrimarySource" gives direct access to the value 2080 */ 2081 public Immunization setPrimarySourceElement(BooleanType value) { 2082 this.primarySource = value; 2083 return this; 2084 } 2085 2086 /** 2087 * @return Indicates whether the data contained in the resource was captured by the individual/organization which was responsible for the administration of the vaccine rather than as 'secondary reported' data documented by a third party. A value of 'true' means this data originated with the individual/organization which was responsible for the administration of the vaccine. 2088 */ 2089 public boolean getPrimarySource() { 2090 return this.primarySource == null || this.primarySource.isEmpty() ? false : this.primarySource.getValue(); 2091 } 2092 2093 /** 2094 * @param value Indicates whether the data contained in the resource was captured by the individual/organization which was responsible for the administration of the vaccine rather than as 'secondary reported' data documented by a third party. A value of 'true' means this data originated with the individual/organization which was responsible for the administration of the vaccine. 2095 */ 2096 public Immunization setPrimarySource(boolean value) { 2097 if (this.primarySource == null) 2098 this.primarySource = new BooleanType(); 2099 this.primarySource.setValue(value); 2100 return this; 2101 } 2102 2103 /** 2104 * @return {@link #informationSource} (Typically the source of the data when the report of the immunization event is not based on information from the person who administered the vaccine.) 2105 */ 2106 public CodeableReference getInformationSource() { 2107 if (this.informationSource == null) 2108 if (Configuration.errorOnAutoCreate()) 2109 throw new Error("Attempt to auto-create Immunization.informationSource"); 2110 else if (Configuration.doAutoCreate()) 2111 this.informationSource = new CodeableReference(); // cc 2112 return this.informationSource; 2113 } 2114 2115 public boolean hasInformationSource() { 2116 return this.informationSource != null && !this.informationSource.isEmpty(); 2117 } 2118 2119 /** 2120 * @param value {@link #informationSource} (Typically the source of the data when the report of the immunization event is not based on information from the person who administered the vaccine.) 2121 */ 2122 public Immunization setInformationSource(CodeableReference value) { 2123 this.informationSource = value; 2124 return this; 2125 } 2126 2127 /** 2128 * @return {@link #location} (The service delivery location where the vaccine administration occurred.) 2129 */ 2130 public Reference getLocation() { 2131 if (this.location == null) 2132 if (Configuration.errorOnAutoCreate()) 2133 throw new Error("Attempt to auto-create Immunization.location"); 2134 else if (Configuration.doAutoCreate()) 2135 this.location = new Reference(); // cc 2136 return this.location; 2137 } 2138 2139 public boolean hasLocation() { 2140 return this.location != null && !this.location.isEmpty(); 2141 } 2142 2143 /** 2144 * @param value {@link #location} (The service delivery location where the vaccine administration occurred.) 2145 */ 2146 public Immunization setLocation(Reference value) { 2147 this.location = value; 2148 return this; 2149 } 2150 2151 /** 2152 * @return {@link #site} (Body site where vaccine was administered.) 2153 */ 2154 public CodeableConcept getSite() { 2155 if (this.site == null) 2156 if (Configuration.errorOnAutoCreate()) 2157 throw new Error("Attempt to auto-create Immunization.site"); 2158 else if (Configuration.doAutoCreate()) 2159 this.site = new CodeableConcept(); // cc 2160 return this.site; 2161 } 2162 2163 public boolean hasSite() { 2164 return this.site != null && !this.site.isEmpty(); 2165 } 2166 2167 /** 2168 * @param value {@link #site} (Body site where vaccine was administered.) 2169 */ 2170 public Immunization setSite(CodeableConcept value) { 2171 this.site = value; 2172 return this; 2173 } 2174 2175 /** 2176 * @return {@link #route} (The path by which the vaccine product is taken into the body.) 2177 */ 2178 public CodeableConcept getRoute() { 2179 if (this.route == null) 2180 if (Configuration.errorOnAutoCreate()) 2181 throw new Error("Attempt to auto-create Immunization.route"); 2182 else if (Configuration.doAutoCreate()) 2183 this.route = new CodeableConcept(); // cc 2184 return this.route; 2185 } 2186 2187 public boolean hasRoute() { 2188 return this.route != null && !this.route.isEmpty(); 2189 } 2190 2191 /** 2192 * @param value {@link #route} (The path by which the vaccine product is taken into the body.) 2193 */ 2194 public Immunization setRoute(CodeableConcept value) { 2195 this.route = value; 2196 return this; 2197 } 2198 2199 /** 2200 * @return {@link #doseQuantity} (The quantity of vaccine product that was administered.) 2201 */ 2202 public Quantity getDoseQuantity() { 2203 if (this.doseQuantity == null) 2204 if (Configuration.errorOnAutoCreate()) 2205 throw new Error("Attempt to auto-create Immunization.doseQuantity"); 2206 else if (Configuration.doAutoCreate()) 2207 this.doseQuantity = new Quantity(); // cc 2208 return this.doseQuantity; 2209 } 2210 2211 public boolean hasDoseQuantity() { 2212 return this.doseQuantity != null && !this.doseQuantity.isEmpty(); 2213 } 2214 2215 /** 2216 * @param value {@link #doseQuantity} (The quantity of vaccine product that was administered.) 2217 */ 2218 public Immunization setDoseQuantity(Quantity value) { 2219 this.doseQuantity = value; 2220 return this; 2221 } 2222 2223 /** 2224 * @return {@link #performer} (Indicates who performed the immunization event.) 2225 */ 2226 public List<ImmunizationPerformerComponent> getPerformer() { 2227 if (this.performer == null) 2228 this.performer = new ArrayList<ImmunizationPerformerComponent>(); 2229 return this.performer; 2230 } 2231 2232 /** 2233 * @return Returns a reference to <code>this</code> for easy method chaining 2234 */ 2235 public Immunization setPerformer(List<ImmunizationPerformerComponent> thePerformer) { 2236 this.performer = thePerformer; 2237 return this; 2238 } 2239 2240 public boolean hasPerformer() { 2241 if (this.performer == null) 2242 return false; 2243 for (ImmunizationPerformerComponent item : this.performer) 2244 if (!item.isEmpty()) 2245 return true; 2246 return false; 2247 } 2248 2249 public ImmunizationPerformerComponent addPerformer() { //3 2250 ImmunizationPerformerComponent t = new ImmunizationPerformerComponent(); 2251 if (this.performer == null) 2252 this.performer = new ArrayList<ImmunizationPerformerComponent>(); 2253 this.performer.add(t); 2254 return t; 2255 } 2256 2257 public Immunization addPerformer(ImmunizationPerformerComponent t) { //3 2258 if (t == null) 2259 return this; 2260 if (this.performer == null) 2261 this.performer = new ArrayList<ImmunizationPerformerComponent>(); 2262 this.performer.add(t); 2263 return this; 2264 } 2265 2266 /** 2267 * @return The first repetition of repeating field {@link #performer}, creating it if it does not already exist {3} 2268 */ 2269 public ImmunizationPerformerComponent getPerformerFirstRep() { 2270 if (getPerformer().isEmpty()) { 2271 addPerformer(); 2272 } 2273 return getPerformer().get(0); 2274 } 2275 2276 /** 2277 * @return {@link #note} (Extra information about the immunization that is not conveyed by the other attributes.) 2278 */ 2279 public List<Annotation> getNote() { 2280 if (this.note == null) 2281 this.note = new ArrayList<Annotation>(); 2282 return this.note; 2283 } 2284 2285 /** 2286 * @return Returns a reference to <code>this</code> for easy method chaining 2287 */ 2288 public Immunization setNote(List<Annotation> theNote) { 2289 this.note = theNote; 2290 return this; 2291 } 2292 2293 public boolean hasNote() { 2294 if (this.note == null) 2295 return false; 2296 for (Annotation item : this.note) 2297 if (!item.isEmpty()) 2298 return true; 2299 return false; 2300 } 2301 2302 public Annotation addNote() { //3 2303 Annotation t = new Annotation(); 2304 if (this.note == null) 2305 this.note = new ArrayList<Annotation>(); 2306 this.note.add(t); 2307 return t; 2308 } 2309 2310 public Immunization addNote(Annotation t) { //3 2311 if (t == null) 2312 return this; 2313 if (this.note == null) 2314 this.note = new ArrayList<Annotation>(); 2315 this.note.add(t); 2316 return this; 2317 } 2318 2319 /** 2320 * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} 2321 */ 2322 public Annotation getNoteFirstRep() { 2323 if (getNote().isEmpty()) { 2324 addNote(); 2325 } 2326 return getNote().get(0); 2327 } 2328 2329 /** 2330 * @return {@link #reason} (Describes why the immunization occurred in coded or textual form, or Indicates another resource (Condition, Observation or DiagnosticReport) whose existence justifies this immunization.) 2331 */ 2332 public List<CodeableReference> getReason() { 2333 if (this.reason == null) 2334 this.reason = new ArrayList<CodeableReference>(); 2335 return this.reason; 2336 } 2337 2338 /** 2339 * @return Returns a reference to <code>this</code> for easy method chaining 2340 */ 2341 public Immunization setReason(List<CodeableReference> theReason) { 2342 this.reason = theReason; 2343 return this; 2344 } 2345 2346 public boolean hasReason() { 2347 if (this.reason == null) 2348 return false; 2349 for (CodeableReference item : this.reason) 2350 if (!item.isEmpty()) 2351 return true; 2352 return false; 2353 } 2354 2355 public CodeableReference addReason() { //3 2356 CodeableReference t = new CodeableReference(); 2357 if (this.reason == null) 2358 this.reason = new ArrayList<CodeableReference>(); 2359 this.reason.add(t); 2360 return t; 2361 } 2362 2363 public Immunization addReason(CodeableReference t) { //3 2364 if (t == null) 2365 return this; 2366 if (this.reason == null) 2367 this.reason = new ArrayList<CodeableReference>(); 2368 this.reason.add(t); 2369 return this; 2370 } 2371 2372 /** 2373 * @return The first repetition of repeating field {@link #reason}, creating it if it does not already exist {3} 2374 */ 2375 public CodeableReference getReasonFirstRep() { 2376 if (getReason().isEmpty()) { 2377 addReason(); 2378 } 2379 return getReason().get(0); 2380 } 2381 2382 /** 2383 * @return {@link #isSubpotent} (Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent.). This is the underlying object with id, value and extensions. The accessor "getIsSubpotent" gives direct access to the value 2384 */ 2385 public BooleanType getIsSubpotentElement() { 2386 if (this.isSubpotent == null) 2387 if (Configuration.errorOnAutoCreate()) 2388 throw new Error("Attempt to auto-create Immunization.isSubpotent"); 2389 else if (Configuration.doAutoCreate()) 2390 this.isSubpotent = new BooleanType(); // bb 2391 return this.isSubpotent; 2392 } 2393 2394 public boolean hasIsSubpotentElement() { 2395 return this.isSubpotent != null && !this.isSubpotent.isEmpty(); 2396 } 2397 2398 public boolean hasIsSubpotent() { 2399 return this.isSubpotent != null && !this.isSubpotent.isEmpty(); 2400 } 2401 2402 /** 2403 * @param value {@link #isSubpotent} (Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent.). This is the underlying object with id, value and extensions. The accessor "getIsSubpotent" gives direct access to the value 2404 */ 2405 public Immunization setIsSubpotentElement(BooleanType value) { 2406 this.isSubpotent = value; 2407 return this; 2408 } 2409 2410 /** 2411 * @return Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent. 2412 */ 2413 public boolean getIsSubpotent() { 2414 return this.isSubpotent == null || this.isSubpotent.isEmpty() ? false : this.isSubpotent.getValue(); 2415 } 2416 2417 /** 2418 * @param value Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent. 2419 */ 2420 public Immunization setIsSubpotent(boolean value) { 2421 if (this.isSubpotent == null) 2422 this.isSubpotent = new BooleanType(); 2423 this.isSubpotent.setValue(value); 2424 return this; 2425 } 2426 2427 /** 2428 * @return {@link #subpotentReason} (Reason why a dose is considered to be subpotent.) 2429 */ 2430 public List<CodeableConcept> getSubpotentReason() { 2431 if (this.subpotentReason == null) 2432 this.subpotentReason = new ArrayList<CodeableConcept>(); 2433 return this.subpotentReason; 2434 } 2435 2436 /** 2437 * @return Returns a reference to <code>this</code> for easy method chaining 2438 */ 2439 public Immunization setSubpotentReason(List<CodeableConcept> theSubpotentReason) { 2440 this.subpotentReason = theSubpotentReason; 2441 return this; 2442 } 2443 2444 public boolean hasSubpotentReason() { 2445 if (this.subpotentReason == null) 2446 return false; 2447 for (CodeableConcept item : this.subpotentReason) 2448 if (!item.isEmpty()) 2449 return true; 2450 return false; 2451 } 2452 2453 public CodeableConcept addSubpotentReason() { //3 2454 CodeableConcept t = new CodeableConcept(); 2455 if (this.subpotentReason == null) 2456 this.subpotentReason = new ArrayList<CodeableConcept>(); 2457 this.subpotentReason.add(t); 2458 return t; 2459 } 2460 2461 public Immunization addSubpotentReason(CodeableConcept t) { //3 2462 if (t == null) 2463 return this; 2464 if (this.subpotentReason == null) 2465 this.subpotentReason = new ArrayList<CodeableConcept>(); 2466 this.subpotentReason.add(t); 2467 return this; 2468 } 2469 2470 /** 2471 * @return The first repetition of repeating field {@link #subpotentReason}, creating it if it does not already exist {3} 2472 */ 2473 public CodeableConcept getSubpotentReasonFirstRep() { 2474 if (getSubpotentReason().isEmpty()) { 2475 addSubpotentReason(); 2476 } 2477 return getSubpotentReason().get(0); 2478 } 2479 2480 /** 2481 * @return {@link #programEligibility} (Indicates a patient's eligibility for a funding program.) 2482 */ 2483 public List<ImmunizationProgramEligibilityComponent> getProgramEligibility() { 2484 if (this.programEligibility == null) 2485 this.programEligibility = new ArrayList<ImmunizationProgramEligibilityComponent>(); 2486 return this.programEligibility; 2487 } 2488 2489 /** 2490 * @return Returns a reference to <code>this</code> for easy method chaining 2491 */ 2492 public Immunization setProgramEligibility(List<ImmunizationProgramEligibilityComponent> theProgramEligibility) { 2493 this.programEligibility = theProgramEligibility; 2494 return this; 2495 } 2496 2497 public boolean hasProgramEligibility() { 2498 if (this.programEligibility == null) 2499 return false; 2500 for (ImmunizationProgramEligibilityComponent item : this.programEligibility) 2501 if (!item.isEmpty()) 2502 return true; 2503 return false; 2504 } 2505 2506 public ImmunizationProgramEligibilityComponent addProgramEligibility() { //3 2507 ImmunizationProgramEligibilityComponent t = new ImmunizationProgramEligibilityComponent(); 2508 if (this.programEligibility == null) 2509 this.programEligibility = new ArrayList<ImmunizationProgramEligibilityComponent>(); 2510 this.programEligibility.add(t); 2511 return t; 2512 } 2513 2514 public Immunization addProgramEligibility(ImmunizationProgramEligibilityComponent t) { //3 2515 if (t == null) 2516 return this; 2517 if (this.programEligibility == null) 2518 this.programEligibility = new ArrayList<ImmunizationProgramEligibilityComponent>(); 2519 this.programEligibility.add(t); 2520 return this; 2521 } 2522 2523 /** 2524 * @return The first repetition of repeating field {@link #programEligibility}, creating it if it does not already exist {3} 2525 */ 2526 public ImmunizationProgramEligibilityComponent getProgramEligibilityFirstRep() { 2527 if (getProgramEligibility().isEmpty()) { 2528 addProgramEligibility(); 2529 } 2530 return getProgramEligibility().get(0); 2531 } 2532 2533 /** 2534 * @return {@link #fundingSource} (Indicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered).) 2535 */ 2536 public CodeableConcept getFundingSource() { 2537 if (this.fundingSource == null) 2538 if (Configuration.errorOnAutoCreate()) 2539 throw new Error("Attempt to auto-create Immunization.fundingSource"); 2540 else if (Configuration.doAutoCreate()) 2541 this.fundingSource = new CodeableConcept(); // cc 2542 return this.fundingSource; 2543 } 2544 2545 public boolean hasFundingSource() { 2546 return this.fundingSource != null && !this.fundingSource.isEmpty(); 2547 } 2548 2549 /** 2550 * @param value {@link #fundingSource} (Indicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered).) 2551 */ 2552 public Immunization setFundingSource(CodeableConcept value) { 2553 this.fundingSource = value; 2554 return this; 2555 } 2556 2557 /** 2558 * @return {@link #reaction} (Categorical data indicating that an adverse event is associated in time to an immunization.) 2559 */ 2560 public List<ImmunizationReactionComponent> getReaction() { 2561 if (this.reaction == null) 2562 this.reaction = new ArrayList<ImmunizationReactionComponent>(); 2563 return this.reaction; 2564 } 2565 2566 /** 2567 * @return Returns a reference to <code>this</code> for easy method chaining 2568 */ 2569 public Immunization setReaction(List<ImmunizationReactionComponent> theReaction) { 2570 this.reaction = theReaction; 2571 return this; 2572 } 2573 2574 public boolean hasReaction() { 2575 if (this.reaction == null) 2576 return false; 2577 for (ImmunizationReactionComponent item : this.reaction) 2578 if (!item.isEmpty()) 2579 return true; 2580 return false; 2581 } 2582 2583 public ImmunizationReactionComponent addReaction() { //3 2584 ImmunizationReactionComponent t = new ImmunizationReactionComponent(); 2585 if (this.reaction == null) 2586 this.reaction = new ArrayList<ImmunizationReactionComponent>(); 2587 this.reaction.add(t); 2588 return t; 2589 } 2590 2591 public Immunization addReaction(ImmunizationReactionComponent t) { //3 2592 if (t == null) 2593 return this; 2594 if (this.reaction == null) 2595 this.reaction = new ArrayList<ImmunizationReactionComponent>(); 2596 this.reaction.add(t); 2597 return this; 2598 } 2599 2600 /** 2601 * @return The first repetition of repeating field {@link #reaction}, creating it if it does not already exist {3} 2602 */ 2603 public ImmunizationReactionComponent getReactionFirstRep() { 2604 if (getReaction().isEmpty()) { 2605 addReaction(); 2606 } 2607 return getReaction().get(0); 2608 } 2609 2610 /** 2611 * @return {@link #protocolApplied} (The protocol (set of recommendations) being followed by the provider who administered the dose.) 2612 */ 2613 public List<ImmunizationProtocolAppliedComponent> getProtocolApplied() { 2614 if (this.protocolApplied == null) 2615 this.protocolApplied = new ArrayList<ImmunizationProtocolAppliedComponent>(); 2616 return this.protocolApplied; 2617 } 2618 2619 /** 2620 * @return Returns a reference to <code>this</code> for easy method chaining 2621 */ 2622 public Immunization setProtocolApplied(List<ImmunizationProtocolAppliedComponent> theProtocolApplied) { 2623 this.protocolApplied = theProtocolApplied; 2624 return this; 2625 } 2626 2627 public boolean hasProtocolApplied() { 2628 if (this.protocolApplied == null) 2629 return false; 2630 for (ImmunizationProtocolAppliedComponent item : this.protocolApplied) 2631 if (!item.isEmpty()) 2632 return true; 2633 return false; 2634 } 2635 2636 public ImmunizationProtocolAppliedComponent addProtocolApplied() { //3 2637 ImmunizationProtocolAppliedComponent t = new ImmunizationProtocolAppliedComponent(); 2638 if (this.protocolApplied == null) 2639 this.protocolApplied = new ArrayList<ImmunizationProtocolAppliedComponent>(); 2640 this.protocolApplied.add(t); 2641 return t; 2642 } 2643 2644 public Immunization addProtocolApplied(ImmunizationProtocolAppliedComponent t) { //3 2645 if (t == null) 2646 return this; 2647 if (this.protocolApplied == null) 2648 this.protocolApplied = new ArrayList<ImmunizationProtocolAppliedComponent>(); 2649 this.protocolApplied.add(t); 2650 return this; 2651 } 2652 2653 /** 2654 * @return The first repetition of repeating field {@link #protocolApplied}, creating it if it does not already exist {3} 2655 */ 2656 public ImmunizationProtocolAppliedComponent getProtocolAppliedFirstRep() { 2657 if (getProtocolApplied().isEmpty()) { 2658 addProtocolApplied(); 2659 } 2660 return getProtocolApplied().get(0); 2661 } 2662 2663 protected void listChildren(List<Property> children) { 2664 super.listChildren(children); 2665 children.add(new Property("identifier", "Identifier", "A unique identifier assigned to this immunization record.", 0, java.lang.Integer.MAX_VALUE, identifier)); 2666 children.add(new Property("basedOn", "Reference(CarePlan|MedicationRequest|ServiceRequest|ImmunizationRecommendation)", "A plan, order or recommendation fulfilled in whole or in part by this immunization.", 0, java.lang.Integer.MAX_VALUE, basedOn)); 2667 children.add(new Property("status", "code", "Indicates the current status of the immunization event.", 0, 1, status)); 2668 children.add(new Property("statusReason", "CodeableConcept", "Indicates the reason the immunization event was not performed.", 0, 1, statusReason)); 2669 children.add(new Property("vaccineCode", "CodeableConcept", "Vaccine that was administered or was to be administered.", 0, 1, vaccineCode)); 2670 children.add(new Property("administeredProduct", "CodeableReference(Medication)", "An indication of which product was administered to the patient. This is typically a more detailed representation of the concept conveyed by the vaccineCode data element. If a Medication resource is referenced, it may be to a stand-alone resource or a contained resource within the Immunization resource.", 0, 1, administeredProduct)); 2671 children.add(new Property("manufacturer", "CodeableReference(Organization)", "Name of vaccine manufacturer.", 0, 1, manufacturer)); 2672 children.add(new Property("lotNumber", "string", "Lot number of the vaccine product.", 0, 1, lotNumber)); 2673 children.add(new Property("expirationDate", "date", "Date vaccine batch expires.", 0, 1, expirationDate)); 2674 children.add(new Property("patient", "Reference(Patient)", "The patient who either received or did not receive the immunization.", 0, 1, patient)); 2675 children.add(new Property("encounter", "Reference(Encounter)", "The visit or admission or other contact between patient and health care provider the immunization was performed as part of.", 0, 1, encounter)); 2676 children.add(new Property("supportingInformation", "Reference(Any)", "Additional information that is relevant to the immunization (e.g. for a vaccine recipient who is pregnant, the gestational age of the fetus). The reason why a vaccine was given (e.g. occupation, underlying medical condition) should be conveyed in Immunization.reason, not as supporting information. The reason why a vaccine was not given (e.g. contraindication) should be conveyed in Immunization.statusReason, not as supporting information.", 0, java.lang.Integer.MAX_VALUE, supportingInformation)); 2677 children.add(new Property("occurrence[x]", "dateTime|string", "Date vaccine administered or was to be administered.", 0, 1, occurrence)); 2678 children.add(new Property("primarySource", "boolean", "Indicates whether the data contained in the resource was captured by the individual/organization which was responsible for the administration of the vaccine rather than as 'secondary reported' data documented by a third party. A value of 'true' means this data originated with the individual/organization which was responsible for the administration of the vaccine.", 0, 1, primarySource)); 2679 children.add(new Property("informationSource", "CodeableReference(Patient|Practitioner|PractitionerRole|RelatedPerson|Organization)", "Typically the source of the data when the report of the immunization event is not based on information from the person who administered the vaccine.", 0, 1, informationSource)); 2680 children.add(new Property("location", "Reference(Location)", "The service delivery location where the vaccine administration occurred.", 0, 1, location)); 2681 children.add(new Property("site", "CodeableConcept", "Body site where vaccine was administered.", 0, 1, site)); 2682 children.add(new Property("route", "CodeableConcept", "The path by which the vaccine product is taken into the body.", 0, 1, route)); 2683 children.add(new Property("doseQuantity", "Quantity", "The quantity of vaccine product that was administered.", 0, 1, doseQuantity)); 2684 children.add(new Property("performer", "", "Indicates who performed the immunization event.", 0, java.lang.Integer.MAX_VALUE, performer)); 2685 children.add(new Property("note", "Annotation", "Extra information about the immunization that is not conveyed by the other attributes.", 0, java.lang.Integer.MAX_VALUE, note)); 2686 children.add(new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport)", "Describes why the immunization occurred in coded or textual form, or Indicates another resource (Condition, Observation or DiagnosticReport) whose existence justifies this immunization.", 0, java.lang.Integer.MAX_VALUE, reason)); 2687 children.add(new Property("isSubpotent", "boolean", "Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent.", 0, 1, isSubpotent)); 2688 children.add(new Property("subpotentReason", "CodeableConcept", "Reason why a dose is considered to be subpotent.", 0, java.lang.Integer.MAX_VALUE, subpotentReason)); 2689 children.add(new Property("programEligibility", "", "Indicates a patient's eligibility for a funding program.", 0, java.lang.Integer.MAX_VALUE, programEligibility)); 2690 children.add(new Property("fundingSource", "CodeableConcept", "Indicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered).", 0, 1, fundingSource)); 2691 children.add(new Property("reaction", "", "Categorical data indicating that an adverse event is associated in time to an immunization.", 0, java.lang.Integer.MAX_VALUE, reaction)); 2692 children.add(new Property("protocolApplied", "", "The protocol (set of recommendations) being followed by the provider who administered the dose.", 0, java.lang.Integer.MAX_VALUE, protocolApplied)); 2693 } 2694 2695 @Override 2696 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 2697 switch (_hash) { 2698 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "A unique identifier assigned to this immunization record.", 0, java.lang.Integer.MAX_VALUE, identifier); 2699 case -332612366: /*basedOn*/ return new Property("basedOn", "Reference(CarePlan|MedicationRequest|ServiceRequest|ImmunizationRecommendation)", "A plan, order or recommendation fulfilled in whole or in part by this immunization.", 0, java.lang.Integer.MAX_VALUE, basedOn); 2700 case -892481550: /*status*/ return new Property("status", "code", "Indicates the current status of the immunization event.", 0, 1, status); 2701 case 2051346646: /*statusReason*/ return new Property("statusReason", "CodeableConcept", "Indicates the reason the immunization event was not performed.", 0, 1, statusReason); 2702 case 664556354: /*vaccineCode*/ return new Property("vaccineCode", "CodeableConcept", "Vaccine that was administered or was to be administered.", 0, 1, vaccineCode); 2703 case 1610069896: /*administeredProduct*/ return new Property("administeredProduct", "CodeableReference(Medication)", "An indication of which product was administered to the patient. This is typically a more detailed representation of the concept conveyed by the vaccineCode data element. If a Medication resource is referenced, it may be to a stand-alone resource or a contained resource within the Immunization resource.", 0, 1, administeredProduct); 2704 case -1969347631: /*manufacturer*/ return new Property("manufacturer", "CodeableReference(Organization)", "Name of vaccine manufacturer.", 0, 1, manufacturer); 2705 case 462547450: /*lotNumber*/ return new Property("lotNumber", "string", "Lot number of the vaccine product.", 0, 1, lotNumber); 2706 case -668811523: /*expirationDate*/ return new Property("expirationDate", "date", "Date vaccine batch expires.", 0, 1, expirationDate); 2707 case -791418107: /*patient*/ return new Property("patient", "Reference(Patient)", "The patient who either received or did not receive the immunization.", 0, 1, patient); 2708 case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The visit or admission or other contact between patient and health care provider the immunization was performed as part of.", 0, 1, encounter); 2709 case -1248768647: /*supportingInformation*/ return new Property("supportingInformation", "Reference(Any)", "Additional information that is relevant to the immunization (e.g. for a vaccine recipient who is pregnant, the gestational age of the fetus). The reason why a vaccine was given (e.g. occupation, underlying medical condition) should be conveyed in Immunization.reason, not as supporting information. The reason why a vaccine was not given (e.g. contraindication) should be conveyed in Immunization.statusReason, not as supporting information.", 0, java.lang.Integer.MAX_VALUE, supportingInformation); 2710 case -2022646513: /*occurrence[x]*/ return new Property("occurrence[x]", "dateTime|string", "Date vaccine administered or was to be administered.", 0, 1, occurrence); 2711 case 1687874001: /*occurrence*/ return new Property("occurrence[x]", "dateTime|string", "Date vaccine administered or was to be administered.", 0, 1, occurrence); 2712 case -298443636: /*occurrenceDateTime*/ return new Property("occurrence[x]", "dateTime", "Date vaccine administered or was to be administered.", 0, 1, occurrence); 2713 case 1496896834: /*occurrenceString*/ return new Property("occurrence[x]", "string", "Date vaccine administered or was to be administered.", 0, 1, occurrence); 2714 case -528721731: /*primarySource*/ return new Property("primarySource", "boolean", "Indicates whether the data contained in the resource was captured by the individual/organization which was responsible for the administration of the vaccine rather than as 'secondary reported' data documented by a third party. A value of 'true' means this data originated with the individual/organization which was responsible for the administration of the vaccine.", 0, 1, primarySource); 2715 case -2123220889: /*informationSource*/ return new Property("informationSource", "CodeableReference(Patient|Practitioner|PractitionerRole|RelatedPerson|Organization)", "Typically the source of the data when the report of the immunization event is not based on information from the person who administered the vaccine.", 0, 1, informationSource); 2716 case 1901043637: /*location*/ return new Property("location", "Reference(Location)", "The service delivery location where the vaccine administration occurred.", 0, 1, location); 2717 case 3530567: /*site*/ return new Property("site", "CodeableConcept", "Body site where vaccine was administered.", 0, 1, site); 2718 case 108704329: /*route*/ return new Property("route", "CodeableConcept", "The path by which the vaccine product is taken into the body.", 0, 1, route); 2719 case -2083618872: /*doseQuantity*/ return new Property("doseQuantity", "Quantity", "The quantity of vaccine product that was administered.", 0, 1, doseQuantity); 2720 case 481140686: /*performer*/ return new Property("performer", "", "Indicates who performed the immunization event.", 0, java.lang.Integer.MAX_VALUE, performer); 2721 case 3387378: /*note*/ return new Property("note", "Annotation", "Extra information about the immunization that is not conveyed by the other attributes.", 0, java.lang.Integer.MAX_VALUE, note); 2722 case -934964668: /*reason*/ return new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport)", "Describes why the immunization occurred in coded or textual form, or Indicates another resource (Condition, Observation or DiagnosticReport) whose existence justifies this immunization.", 0, java.lang.Integer.MAX_VALUE, reason); 2723 case 1618512556: /*isSubpotent*/ return new Property("isSubpotent", "boolean", "Indication if a dose is considered to be subpotent. By default, a dose should be considered to be potent.", 0, 1, isSubpotent); 2724 case 805168794: /*subpotentReason*/ return new Property("subpotentReason", "CodeableConcept", "Reason why a dose is considered to be subpotent.", 0, java.lang.Integer.MAX_VALUE, subpotentReason); 2725 case 1207530089: /*programEligibility*/ return new Property("programEligibility", "", "Indicates a patient's eligibility for a funding program.", 0, java.lang.Integer.MAX_VALUE, programEligibility); 2726 case 1120150904: /*fundingSource*/ return new Property("fundingSource", "CodeableConcept", "Indicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered).", 0, 1, fundingSource); 2727 case -867509719: /*reaction*/ return new Property("reaction", "", "Categorical data indicating that an adverse event is associated in time to an immunization.", 0, java.lang.Integer.MAX_VALUE, reaction); 2728 case 607985349: /*protocolApplied*/ return new Property("protocolApplied", "", "The protocol (set of recommendations) being followed by the provider who administered the dose.", 0, java.lang.Integer.MAX_VALUE, protocolApplied); 2729 default: return super.getNamedProperty(_hash, _name, _checkValid); 2730 } 2731 2732 } 2733 2734 @Override 2735 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 2736 switch (hash) { 2737 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 2738 case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : this.basedOn.toArray(new Base[this.basedOn.size()]); // Reference 2739 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<ImmunizationStatusCodes> 2740 case 2051346646: /*statusReason*/ return this.statusReason == null ? new Base[0] : new Base[] {this.statusReason}; // CodeableConcept 2741 case 664556354: /*vaccineCode*/ return this.vaccineCode == null ? new Base[0] : new Base[] {this.vaccineCode}; // CodeableConcept 2742 case 1610069896: /*administeredProduct*/ return this.administeredProduct == null ? new Base[0] : new Base[] {this.administeredProduct}; // CodeableReference 2743 case -1969347631: /*manufacturer*/ return this.manufacturer == null ? new Base[0] : new Base[] {this.manufacturer}; // CodeableReference 2744 case 462547450: /*lotNumber*/ return this.lotNumber == null ? new Base[0] : new Base[] {this.lotNumber}; // StringType 2745 case -668811523: /*expirationDate*/ return this.expirationDate == null ? new Base[0] : new Base[] {this.expirationDate}; // DateType 2746 case -791418107: /*patient*/ return this.patient == null ? new Base[0] : new Base[] {this.patient}; // Reference 2747 case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference 2748 case -1248768647: /*supportingInformation*/ return this.supportingInformation == null ? new Base[0] : this.supportingInformation.toArray(new Base[this.supportingInformation.size()]); // Reference 2749 case 1687874001: /*occurrence*/ return this.occurrence == null ? new Base[0] : new Base[] {this.occurrence}; // DataType 2750 case -528721731: /*primarySource*/ return this.primarySource == null ? new Base[0] : new Base[] {this.primarySource}; // BooleanType 2751 case -2123220889: /*informationSource*/ return this.informationSource == null ? new Base[0] : new Base[] {this.informationSource}; // CodeableReference 2752 case 1901043637: /*location*/ return this.location == null ? new Base[0] : new Base[] {this.location}; // Reference 2753 case 3530567: /*site*/ return this.site == null ? new Base[0] : new Base[] {this.site}; // CodeableConcept 2754 case 108704329: /*route*/ return this.route == null ? new Base[0] : new Base[] {this.route}; // CodeableConcept 2755 case -2083618872: /*doseQuantity*/ return this.doseQuantity == null ? new Base[0] : new Base[] {this.doseQuantity}; // Quantity 2756 case 481140686: /*performer*/ return this.performer == null ? new Base[0] : this.performer.toArray(new Base[this.performer.size()]); // ImmunizationPerformerComponent 2757 case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 2758 case -934964668: /*reason*/ return this.reason == null ? new Base[0] : this.reason.toArray(new Base[this.reason.size()]); // CodeableReference 2759 case 1618512556: /*isSubpotent*/ return this.isSubpotent == null ? new Base[0] : new Base[] {this.isSubpotent}; // BooleanType 2760 case 805168794: /*subpotentReason*/ return this.subpotentReason == null ? new Base[0] : this.subpotentReason.toArray(new Base[this.subpotentReason.size()]); // CodeableConcept 2761 case 1207530089: /*programEligibility*/ return this.programEligibility == null ? new Base[0] : this.programEligibility.toArray(new Base[this.programEligibility.size()]); // ImmunizationProgramEligibilityComponent 2762 case 1120150904: /*fundingSource*/ return this.fundingSource == null ? new Base[0] : new Base[] {this.fundingSource}; // CodeableConcept 2763 case -867509719: /*reaction*/ return this.reaction == null ? new Base[0] : this.reaction.toArray(new Base[this.reaction.size()]); // ImmunizationReactionComponent 2764 case 607985349: /*protocolApplied*/ return this.protocolApplied == null ? new Base[0] : this.protocolApplied.toArray(new Base[this.protocolApplied.size()]); // ImmunizationProtocolAppliedComponent 2765 default: return super.getProperty(hash, name, checkValid); 2766 } 2767 2768 } 2769 2770 @Override 2771 public Base setProperty(int hash, String name, Base value) throws FHIRException { 2772 switch (hash) { 2773 case -1618432855: // identifier 2774 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 2775 return value; 2776 case -332612366: // basedOn 2777 this.getBasedOn().add(TypeConvertor.castToReference(value)); // Reference 2778 return value; 2779 case -892481550: // status 2780 value = new ImmunizationStatusCodesEnumFactory().fromType(TypeConvertor.castToCode(value)); 2781 this.status = (Enumeration) value; // Enumeration<ImmunizationStatusCodes> 2782 return value; 2783 case 2051346646: // statusReason 2784 this.statusReason = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2785 return value; 2786 case 664556354: // vaccineCode 2787 this.vaccineCode = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2788 return value; 2789 case 1610069896: // administeredProduct 2790 this.administeredProduct = TypeConvertor.castToCodeableReference(value); // CodeableReference 2791 return value; 2792 case -1969347631: // manufacturer 2793 this.manufacturer = TypeConvertor.castToCodeableReference(value); // CodeableReference 2794 return value; 2795 case 462547450: // lotNumber 2796 this.lotNumber = TypeConvertor.castToString(value); // StringType 2797 return value; 2798 case -668811523: // expirationDate 2799 this.expirationDate = TypeConvertor.castToDate(value); // DateType 2800 return value; 2801 case -791418107: // patient 2802 this.patient = TypeConvertor.castToReference(value); // Reference 2803 return value; 2804 case 1524132147: // encounter 2805 this.encounter = TypeConvertor.castToReference(value); // Reference 2806 return value; 2807 case -1248768647: // supportingInformation 2808 this.getSupportingInformation().add(TypeConvertor.castToReference(value)); // Reference 2809 return value; 2810 case 1687874001: // occurrence 2811 this.occurrence = TypeConvertor.castToType(value); // DataType 2812 return value; 2813 case -528721731: // primarySource 2814 this.primarySource = TypeConvertor.castToBoolean(value); // BooleanType 2815 return value; 2816 case -2123220889: // informationSource 2817 this.informationSource = TypeConvertor.castToCodeableReference(value); // CodeableReference 2818 return value; 2819 case 1901043637: // location 2820 this.location = TypeConvertor.castToReference(value); // Reference 2821 return value; 2822 case 3530567: // site 2823 this.site = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2824 return value; 2825 case 108704329: // route 2826 this.route = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2827 return value; 2828 case -2083618872: // doseQuantity 2829 this.doseQuantity = TypeConvertor.castToQuantity(value); // Quantity 2830 return value; 2831 case 481140686: // performer 2832 this.getPerformer().add((ImmunizationPerformerComponent) value); // ImmunizationPerformerComponent 2833 return value; 2834 case 3387378: // note 2835 this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation 2836 return value; 2837 case -934964668: // reason 2838 this.getReason().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference 2839 return value; 2840 case 1618512556: // isSubpotent 2841 this.isSubpotent = TypeConvertor.castToBoolean(value); // BooleanType 2842 return value; 2843 case 805168794: // subpotentReason 2844 this.getSubpotentReason().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 2845 return value; 2846 case 1207530089: // programEligibility 2847 this.getProgramEligibility().add((ImmunizationProgramEligibilityComponent) value); // ImmunizationProgramEligibilityComponent 2848 return value; 2849 case 1120150904: // fundingSource 2850 this.fundingSource = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2851 return value; 2852 case -867509719: // reaction 2853 this.getReaction().add((ImmunizationReactionComponent) value); // ImmunizationReactionComponent 2854 return value; 2855 case 607985349: // protocolApplied 2856 this.getProtocolApplied().add((ImmunizationProtocolAppliedComponent) value); // ImmunizationProtocolAppliedComponent 2857 return value; 2858 default: return super.setProperty(hash, name, value); 2859 } 2860 2861 } 2862 2863 @Override 2864 public Base setProperty(String name, Base value) throws FHIRException { 2865 if (name.equals("identifier")) { 2866 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 2867 } else if (name.equals("basedOn")) { 2868 this.getBasedOn().add(TypeConvertor.castToReference(value)); 2869 } else if (name.equals("status")) { 2870 value = new ImmunizationStatusCodesEnumFactory().fromType(TypeConvertor.castToCode(value)); 2871 this.status = (Enumeration) value; // Enumeration<ImmunizationStatusCodes> 2872 } else if (name.equals("statusReason")) { 2873 this.statusReason = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2874 } else if (name.equals("vaccineCode")) { 2875 this.vaccineCode = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2876 } else if (name.equals("administeredProduct")) { 2877 this.administeredProduct = TypeConvertor.castToCodeableReference(value); // CodeableReference 2878 } else if (name.equals("manufacturer")) { 2879 this.manufacturer = TypeConvertor.castToCodeableReference(value); // CodeableReference 2880 } else if (name.equals("lotNumber")) { 2881 this.lotNumber = TypeConvertor.castToString(value); // StringType 2882 } else if (name.equals("expirationDate")) { 2883 this.expirationDate = TypeConvertor.castToDate(value); // DateType 2884 } else if (name.equals("patient")) { 2885 this.patient = TypeConvertor.castToReference(value); // Reference 2886 } else if (name.equals("encounter")) { 2887 this.encounter = TypeConvertor.castToReference(value); // Reference 2888 } else if (name.equals("supportingInformation")) { 2889 this.getSupportingInformation().add(TypeConvertor.castToReference(value)); 2890 } else if (name.equals("occurrence[x]")) { 2891 this.occurrence = TypeConvertor.castToType(value); // DataType 2892 } else if (name.equals("primarySource")) { 2893 this.primarySource = TypeConvertor.castToBoolean(value); // BooleanType 2894 } else if (name.equals("informationSource")) { 2895 this.informationSource = TypeConvertor.castToCodeableReference(value); // CodeableReference 2896 } else if (name.equals("location")) { 2897 this.location = TypeConvertor.castToReference(value); // Reference 2898 } else if (name.equals("site")) { 2899 this.site = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2900 } else if (name.equals("route")) { 2901 this.route = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2902 } else if (name.equals("doseQuantity")) { 2903 this.doseQuantity = TypeConvertor.castToQuantity(value); // Quantity 2904 } else if (name.equals("performer")) { 2905 this.getPerformer().add((ImmunizationPerformerComponent) value); 2906 } else if (name.equals("note")) { 2907 this.getNote().add(TypeConvertor.castToAnnotation(value)); 2908 } else if (name.equals("reason")) { 2909 this.getReason().add(TypeConvertor.castToCodeableReference(value)); 2910 } else if (name.equals("isSubpotent")) { 2911 this.isSubpotent = TypeConvertor.castToBoolean(value); // BooleanType 2912 } else if (name.equals("subpotentReason")) { 2913 this.getSubpotentReason().add(TypeConvertor.castToCodeableConcept(value)); 2914 } else if (name.equals("programEligibility")) { 2915 this.getProgramEligibility().add((ImmunizationProgramEligibilityComponent) value); 2916 } else if (name.equals("fundingSource")) { 2917 this.fundingSource = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2918 } else if (name.equals("reaction")) { 2919 this.getReaction().add((ImmunizationReactionComponent) value); 2920 } else if (name.equals("protocolApplied")) { 2921 this.getProtocolApplied().add((ImmunizationProtocolAppliedComponent) value); 2922 } else 2923 return super.setProperty(name, value); 2924 return value; 2925 } 2926 2927 @Override 2928 public Base makeProperty(int hash, String name) throws FHIRException { 2929 switch (hash) { 2930 case -1618432855: return addIdentifier(); 2931 case -332612366: return addBasedOn(); 2932 case -892481550: return getStatusElement(); 2933 case 2051346646: return getStatusReason(); 2934 case 664556354: return getVaccineCode(); 2935 case 1610069896: return getAdministeredProduct(); 2936 case -1969347631: return getManufacturer(); 2937 case 462547450: return getLotNumberElement(); 2938 case -668811523: return getExpirationDateElement(); 2939 case -791418107: return getPatient(); 2940 case 1524132147: return getEncounter(); 2941 case -1248768647: return addSupportingInformation(); 2942 case -2022646513: return getOccurrence(); 2943 case 1687874001: return getOccurrence(); 2944 case -528721731: return getPrimarySourceElement(); 2945 case -2123220889: return getInformationSource(); 2946 case 1901043637: return getLocation(); 2947 case 3530567: return getSite(); 2948 case 108704329: return getRoute(); 2949 case -2083618872: return getDoseQuantity(); 2950 case 481140686: return addPerformer(); 2951 case 3387378: return addNote(); 2952 case -934964668: return addReason(); 2953 case 1618512556: return getIsSubpotentElement(); 2954 case 805168794: return addSubpotentReason(); 2955 case 1207530089: return addProgramEligibility(); 2956 case 1120150904: return getFundingSource(); 2957 case -867509719: return addReaction(); 2958 case 607985349: return addProtocolApplied(); 2959 default: return super.makeProperty(hash, name); 2960 } 2961 2962 } 2963 2964 @Override 2965 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 2966 switch (hash) { 2967 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 2968 case -332612366: /*basedOn*/ return new String[] {"Reference"}; 2969 case -892481550: /*status*/ return new String[] {"code"}; 2970 case 2051346646: /*statusReason*/ return new String[] {"CodeableConcept"}; 2971 case 664556354: /*vaccineCode*/ return new String[] {"CodeableConcept"}; 2972 case 1610069896: /*administeredProduct*/ return new String[] {"CodeableReference"}; 2973 case -1969347631: /*manufacturer*/ return new String[] {"CodeableReference"}; 2974 case 462547450: /*lotNumber*/ return new String[] {"string"}; 2975 case -668811523: /*expirationDate*/ return new String[] {"date"}; 2976 case -791418107: /*patient*/ return new String[] {"Reference"}; 2977 case 1524132147: /*encounter*/ return new String[] {"Reference"}; 2978 case -1248768647: /*supportingInformation*/ return new String[] {"Reference"}; 2979 case 1687874001: /*occurrence*/ return new String[] {"dateTime", "string"}; 2980 case -528721731: /*primarySource*/ return new String[] {"boolean"}; 2981 case -2123220889: /*informationSource*/ return new String[] {"CodeableReference"}; 2982 case 1901043637: /*location*/ return new String[] {"Reference"}; 2983 case 3530567: /*site*/ return new String[] {"CodeableConcept"}; 2984 case 108704329: /*route*/ return new String[] {"CodeableConcept"}; 2985 case -2083618872: /*doseQuantity*/ return new String[] {"Quantity"}; 2986 case 481140686: /*performer*/ return new String[] {}; 2987 case 3387378: /*note*/ return new String[] {"Annotation"}; 2988 case -934964668: /*reason*/ return new String[] {"CodeableReference"}; 2989 case 1618512556: /*isSubpotent*/ return new String[] {"boolean"}; 2990 case 805168794: /*subpotentReason*/ return new String[] {"CodeableConcept"}; 2991 case 1207530089: /*programEligibility*/ return new String[] {}; 2992 case 1120150904: /*fundingSource*/ return new String[] {"CodeableConcept"}; 2993 case -867509719: /*reaction*/ return new String[] {}; 2994 case 607985349: /*protocolApplied*/ return new String[] {}; 2995 default: return super.getTypesForProperty(hash, name); 2996 } 2997 2998 } 2999 3000 @Override 3001 public Base addChild(String name) throws FHIRException { 3002 if (name.equals("identifier")) { 3003 return addIdentifier(); 3004 } 3005 else if (name.equals("basedOn")) { 3006 return addBasedOn(); 3007 } 3008 else if (name.equals("status")) { 3009 throw new FHIRException("Cannot call addChild on a singleton property Immunization.status"); 3010 } 3011 else if (name.equals("statusReason")) { 3012 this.statusReason = new CodeableConcept(); 3013 return this.statusReason; 3014 } 3015 else if (name.equals("vaccineCode")) { 3016 this.vaccineCode = new CodeableConcept(); 3017 return this.vaccineCode; 3018 } 3019 else if (name.equals("administeredProduct")) { 3020 this.administeredProduct = new CodeableReference(); 3021 return this.administeredProduct; 3022 } 3023 else if (name.equals("manufacturer")) { 3024 this.manufacturer = new CodeableReference(); 3025 return this.manufacturer; 3026 } 3027 else if (name.equals("lotNumber")) { 3028 throw new FHIRException("Cannot call addChild on a singleton property Immunization.lotNumber"); 3029 } 3030 else if (name.equals("expirationDate")) { 3031 throw new FHIRException("Cannot call addChild on a singleton property Immunization.expirationDate"); 3032 } 3033 else if (name.equals("patient")) { 3034 this.patient = new Reference(); 3035 return this.patient; 3036 } 3037 else if (name.equals("encounter")) { 3038 this.encounter = new Reference(); 3039 return this.encounter; 3040 } 3041 else if (name.equals("supportingInformation")) { 3042 return addSupportingInformation(); 3043 } 3044 else if (name.equals("occurrenceDateTime")) { 3045 this.occurrence = new DateTimeType(); 3046 return this.occurrence; 3047 } 3048 else if (name.equals("occurrenceString")) { 3049 this.occurrence = new StringType(); 3050 return this.occurrence; 3051 } 3052 else if (name.equals("primarySource")) { 3053 throw new FHIRException("Cannot call addChild on a singleton property Immunization.primarySource"); 3054 } 3055 else if (name.equals("informationSource")) { 3056 this.informationSource = new CodeableReference(); 3057 return this.informationSource; 3058 } 3059 else if (name.equals("location")) { 3060 this.location = new Reference(); 3061 return this.location; 3062 } 3063 else if (name.equals("site")) { 3064 this.site = new CodeableConcept(); 3065 return this.site; 3066 } 3067 else if (name.equals("route")) { 3068 this.route = new CodeableConcept(); 3069 return this.route; 3070 } 3071 else if (name.equals("doseQuantity")) { 3072 this.doseQuantity = new Quantity(); 3073 return this.doseQuantity; 3074 } 3075 else if (name.equals("performer")) { 3076 return addPerformer(); 3077 } 3078 else if (name.equals("note")) { 3079 return addNote(); 3080 } 3081 else if (name.equals("reason")) { 3082 return addReason(); 3083 } 3084 else if (name.equals("isSubpotent")) { 3085 throw new FHIRException("Cannot call addChild on a singleton property Immunization.isSubpotent"); 3086 } 3087 else if (name.equals("subpotentReason")) { 3088 return addSubpotentReason(); 3089 } 3090 else if (name.equals("programEligibility")) { 3091 return addProgramEligibility(); 3092 } 3093 else if (name.equals("fundingSource")) { 3094 this.fundingSource = new CodeableConcept(); 3095 return this.fundingSource; 3096 } 3097 else if (name.equals("reaction")) { 3098 return addReaction(); 3099 } 3100 else if (name.equals("protocolApplied")) { 3101 return addProtocolApplied(); 3102 } 3103 else 3104 return super.addChild(name); 3105 } 3106 3107 public String fhirType() { 3108 return "Immunization"; 3109 3110 } 3111 3112 public Immunization copy() { 3113 Immunization dst = new Immunization(); 3114 copyValues(dst); 3115 return dst; 3116 } 3117 3118 public void copyValues(Immunization dst) { 3119 super.copyValues(dst); 3120 if (identifier != null) { 3121 dst.identifier = new ArrayList<Identifier>(); 3122 for (Identifier i : identifier) 3123 dst.identifier.add(i.copy()); 3124 }; 3125 if (basedOn != null) { 3126 dst.basedOn = new ArrayList<Reference>(); 3127 for (Reference i : basedOn) 3128 dst.basedOn.add(i.copy()); 3129 }; 3130 dst.status = status == null ? null : status.copy(); 3131 dst.statusReason = statusReason == null ? null : statusReason.copy(); 3132 dst.vaccineCode = vaccineCode == null ? null : vaccineCode.copy(); 3133 dst.administeredProduct = administeredProduct == null ? null : administeredProduct.copy(); 3134 dst.manufacturer = manufacturer == null ? null : manufacturer.copy(); 3135 dst.lotNumber = lotNumber == null ? null : lotNumber.copy(); 3136 dst.expirationDate = expirationDate == null ? null : expirationDate.copy(); 3137 dst.patient = patient == null ? null : patient.copy(); 3138 dst.encounter = encounter == null ? null : encounter.copy(); 3139 if (supportingInformation != null) { 3140 dst.supportingInformation = new ArrayList<Reference>(); 3141 for (Reference i : supportingInformation) 3142 dst.supportingInformation.add(i.copy()); 3143 }; 3144 dst.occurrence = occurrence == null ? null : occurrence.copy(); 3145 dst.primarySource = primarySource == null ? null : primarySource.copy(); 3146 dst.informationSource = informationSource == null ? null : informationSource.copy(); 3147 dst.location = location == null ? null : location.copy(); 3148 dst.site = site == null ? null : site.copy(); 3149 dst.route = route == null ? null : route.copy(); 3150 dst.doseQuantity = doseQuantity == null ? null : doseQuantity.copy(); 3151 if (performer != null) { 3152 dst.performer = new ArrayList<ImmunizationPerformerComponent>(); 3153 for (ImmunizationPerformerComponent i : performer) 3154 dst.performer.add(i.copy()); 3155 }; 3156 if (note != null) { 3157 dst.note = new ArrayList<Annotation>(); 3158 for (Annotation i : note) 3159 dst.note.add(i.copy()); 3160 }; 3161 if (reason != null) { 3162 dst.reason = new ArrayList<CodeableReference>(); 3163 for (CodeableReference i : reason) 3164 dst.reason.add(i.copy()); 3165 }; 3166 dst.isSubpotent = isSubpotent == null ? null : isSubpotent.copy(); 3167 if (subpotentReason != null) { 3168 dst.subpotentReason = new ArrayList<CodeableConcept>(); 3169 for (CodeableConcept i : subpotentReason) 3170 dst.subpotentReason.add(i.copy()); 3171 }; 3172 if (programEligibility != null) { 3173 dst.programEligibility = new ArrayList<ImmunizationProgramEligibilityComponent>(); 3174 for (ImmunizationProgramEligibilityComponent i : programEligibility) 3175 dst.programEligibility.add(i.copy()); 3176 }; 3177 dst.fundingSource = fundingSource == null ? null : fundingSource.copy(); 3178 if (reaction != null) { 3179 dst.reaction = new ArrayList<ImmunizationReactionComponent>(); 3180 for (ImmunizationReactionComponent i : reaction) 3181 dst.reaction.add(i.copy()); 3182 }; 3183 if (protocolApplied != null) { 3184 dst.protocolApplied = new ArrayList<ImmunizationProtocolAppliedComponent>(); 3185 for (ImmunizationProtocolAppliedComponent i : protocolApplied) 3186 dst.protocolApplied.add(i.copy()); 3187 }; 3188 } 3189 3190 protected Immunization typedCopy() { 3191 return copy(); 3192 } 3193 3194 @Override 3195 public boolean equalsDeep(Base other_) { 3196 if (!super.equalsDeep(other_)) 3197 return false; 3198 if (!(other_ instanceof Immunization)) 3199 return false; 3200 Immunization o = (Immunization) other_; 3201 return compareDeep(identifier, o.identifier, true) && compareDeep(basedOn, o.basedOn, true) && compareDeep(status, o.status, true) 3202 && compareDeep(statusReason, o.statusReason, true) && compareDeep(vaccineCode, o.vaccineCode, true) 3203 && compareDeep(administeredProduct, o.administeredProduct, true) && compareDeep(manufacturer, o.manufacturer, true) 3204 && compareDeep(lotNumber, o.lotNumber, true) && compareDeep(expirationDate, o.expirationDate, true) 3205 && compareDeep(patient, o.patient, true) && compareDeep(encounter, o.encounter, true) && compareDeep(supportingInformation, o.supportingInformation, true) 3206 && compareDeep(occurrence, o.occurrence, true) && compareDeep(primarySource, o.primarySource, true) 3207 && compareDeep(informationSource, o.informationSource, true) && compareDeep(location, o.location, true) 3208 && compareDeep(site, o.site, true) && compareDeep(route, o.route, true) && compareDeep(doseQuantity, o.doseQuantity, true) 3209 && compareDeep(performer, o.performer, true) && compareDeep(note, o.note, true) && compareDeep(reason, o.reason, true) 3210 && compareDeep(isSubpotent, o.isSubpotent, true) && compareDeep(subpotentReason, o.subpotentReason, true) 3211 && compareDeep(programEligibility, o.programEligibility, true) && compareDeep(fundingSource, o.fundingSource, true) 3212 && compareDeep(reaction, o.reaction, true) && compareDeep(protocolApplied, o.protocolApplied, true) 3213 ; 3214 } 3215 3216 @Override 3217 public boolean equalsShallow(Base other_) { 3218 if (!super.equalsShallow(other_)) 3219 return false; 3220 if (!(other_ instanceof Immunization)) 3221 return false; 3222 Immunization o = (Immunization) other_; 3223 return compareValues(status, o.status, true) && compareValues(lotNumber, o.lotNumber, true) && compareValues(expirationDate, o.expirationDate, true) 3224 && compareValues(primarySource, o.primarySource, true) && compareValues(isSubpotent, o.isSubpotent, true) 3225 ; 3226 } 3227 3228 public boolean isEmpty() { 3229 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, basedOn, status 3230 , statusReason, vaccineCode, administeredProduct, manufacturer, lotNumber, expirationDate 3231 , patient, encounter, supportingInformation, occurrence, primarySource, informationSource 3232 , location, site, route, doseQuantity, performer, note, reason, isSubpotent 3233 , subpotentReason, programEligibility, fundingSource, reaction, protocolApplied); 3234 } 3235 3236 @Override 3237 public ResourceType getResourceType() { 3238 return ResourceType.Immunization; 3239 } 3240 3241 /** 3242 * Search parameter: <b>location</b> 3243 * <p> 3244 * Description: <b>The service delivery location or facility in which the vaccine was / was to be administered</b><br> 3245 * Type: <b>reference</b><br> 3246 * Path: <b>Immunization.location</b><br> 3247 * </p> 3248 */ 3249 @SearchParamDefinition(name="location", path="Immunization.location", description="The service delivery location or facility in which the vaccine was / was to be administered", type="reference", target={Location.class } ) 3250 public static final String SP_LOCATION = "location"; 3251 /** 3252 * <b>Fluent Client</b> search parameter constant for <b>location</b> 3253 * <p> 3254 * Description: <b>The service delivery location or facility in which the vaccine was / was to be administered</b><br> 3255 * Type: <b>reference</b><br> 3256 * Path: <b>Immunization.location</b><br> 3257 * </p> 3258 */ 3259 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam LOCATION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_LOCATION); 3260 3261/** 3262 * Constant for fluent queries to be used to add include statements. Specifies 3263 * the path value of "<b>Immunization:location</b>". 3264 */ 3265 public static final ca.uhn.fhir.model.api.Include INCLUDE_LOCATION = new ca.uhn.fhir.model.api.Include("Immunization:location").toLocked(); 3266 3267 /** 3268 * Search parameter: <b>lot-number</b> 3269 * <p> 3270 * Description: <b>Vaccine Lot Number</b><br> 3271 * Type: <b>string</b><br> 3272 * Path: <b>Immunization.lotNumber</b><br> 3273 * </p> 3274 */ 3275 @SearchParamDefinition(name="lot-number", path="Immunization.lotNumber", description="Vaccine Lot Number", type="string" ) 3276 public static final String SP_LOT_NUMBER = "lot-number"; 3277 /** 3278 * <b>Fluent Client</b> search parameter constant for <b>lot-number</b> 3279 * <p> 3280 * Description: <b>Vaccine Lot Number</b><br> 3281 * Type: <b>string</b><br> 3282 * Path: <b>Immunization.lotNumber</b><br> 3283 * </p> 3284 */ 3285 public static final ca.uhn.fhir.rest.gclient.StringClientParam LOT_NUMBER = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_LOT_NUMBER); 3286 3287 /** 3288 * Search parameter: <b>manufacturer</b> 3289 * <p> 3290 * Description: <b>Vaccine Manufacturer</b><br> 3291 * Type: <b>reference</b><br> 3292 * Path: <b>Immunization.manufacturer.reference</b><br> 3293 * </p> 3294 */ 3295 @SearchParamDefinition(name="manufacturer", path="Immunization.manufacturer.reference", description="Vaccine Manufacturer", type="reference", target={Organization.class } ) 3296 public static final String SP_MANUFACTURER = "manufacturer"; 3297 /** 3298 * <b>Fluent Client</b> search parameter constant for <b>manufacturer</b> 3299 * <p> 3300 * Description: <b>Vaccine Manufacturer</b><br> 3301 * Type: <b>reference</b><br> 3302 * Path: <b>Immunization.manufacturer.reference</b><br> 3303 * </p> 3304 */ 3305 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam MANUFACTURER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_MANUFACTURER); 3306 3307/** 3308 * Constant for fluent queries to be used to add include statements. Specifies 3309 * the path value of "<b>Immunization:manufacturer</b>". 3310 */ 3311 public static final ca.uhn.fhir.model.api.Include INCLUDE_MANUFACTURER = new ca.uhn.fhir.model.api.Include("Immunization:manufacturer").toLocked(); 3312 3313 /** 3314 * Search parameter: <b>performer</b> 3315 * <p> 3316 * Description: <b>The practitioner, individual or organization who played a role in the vaccination</b><br> 3317 * Type: <b>reference</b><br> 3318 * Path: <b>Immunization.performer.actor</b><br> 3319 * </p> 3320 */ 3321 @SearchParamDefinition(name="performer", path="Immunization.performer.actor", description="The practitioner, individual or organization who played a role in the vaccination", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 3322 public static final String SP_PERFORMER = "performer"; 3323 /** 3324 * <b>Fluent Client</b> search parameter constant for <b>performer</b> 3325 * <p> 3326 * Description: <b>The practitioner, individual or organization who played a role in the vaccination</b><br> 3327 * Type: <b>reference</b><br> 3328 * Path: <b>Immunization.performer.actor</b><br> 3329 * </p> 3330 */ 3331 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PERFORMER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PERFORMER); 3332 3333/** 3334 * Constant for fluent queries to be used to add include statements. Specifies 3335 * the path value of "<b>Immunization:performer</b>". 3336 */ 3337 public static final ca.uhn.fhir.model.api.Include INCLUDE_PERFORMER = new ca.uhn.fhir.model.api.Include("Immunization:performer").toLocked(); 3338 3339 /** 3340 * Search parameter: <b>reaction-date</b> 3341 * <p> 3342 * Description: <b>When reaction started</b><br> 3343 * Type: <b>date</b><br> 3344 * Path: <b>Immunization.reaction.date</b><br> 3345 * </p> 3346 */ 3347 @SearchParamDefinition(name="reaction-date", path="Immunization.reaction.date", description="When reaction started", type="date" ) 3348 public static final String SP_REACTION_DATE = "reaction-date"; 3349 /** 3350 * <b>Fluent Client</b> search parameter constant for <b>reaction-date</b> 3351 * <p> 3352 * Description: <b>When reaction started</b><br> 3353 * Type: <b>date</b><br> 3354 * Path: <b>Immunization.reaction.date</b><br> 3355 * </p> 3356 */ 3357 public static final ca.uhn.fhir.rest.gclient.DateClientParam REACTION_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_REACTION_DATE); 3358 3359 /** 3360 * Search parameter: <b>reaction</b> 3361 * <p> 3362 * Description: <b>Additional information on reaction</b><br> 3363 * Type: <b>reference</b><br> 3364 * Path: <b>Immunization.reaction.manifestation.reference</b><br> 3365 * </p> 3366 */ 3367 @SearchParamDefinition(name="reaction", path="Immunization.reaction.manifestation.reference", description="Additional information on reaction", type="reference", target={Observation.class } ) 3368 public static final String SP_REACTION = "reaction"; 3369 /** 3370 * <b>Fluent Client</b> search parameter constant for <b>reaction</b> 3371 * <p> 3372 * Description: <b>Additional information on reaction</b><br> 3373 * Type: <b>reference</b><br> 3374 * Path: <b>Immunization.reaction.manifestation.reference</b><br> 3375 * </p> 3376 */ 3377 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam REACTION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_REACTION); 3378 3379/** 3380 * Constant for fluent queries to be used to add include statements. Specifies 3381 * the path value of "<b>Immunization:reaction</b>". 3382 */ 3383 public static final ca.uhn.fhir.model.api.Include INCLUDE_REACTION = new ca.uhn.fhir.model.api.Include("Immunization:reaction").toLocked(); 3384 3385 /** 3386 * Search parameter: <b>reason-code</b> 3387 * <p> 3388 * Description: <b>Reason why the vaccine was administered</b><br> 3389 * Type: <b>token</b><br> 3390 * Path: <b>Immunization.reason.concept</b><br> 3391 * </p> 3392 */ 3393 @SearchParamDefinition(name="reason-code", path="Immunization.reason.concept", description="Reason why the vaccine was administered", type="token" ) 3394 public static final String SP_REASON_CODE = "reason-code"; 3395 /** 3396 * <b>Fluent Client</b> search parameter constant for <b>reason-code</b> 3397 * <p> 3398 * Description: <b>Reason why the vaccine was administered</b><br> 3399 * Type: <b>token</b><br> 3400 * Path: <b>Immunization.reason.concept</b><br> 3401 * </p> 3402 */ 3403 public static final ca.uhn.fhir.rest.gclient.TokenClientParam REASON_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_REASON_CODE); 3404 3405 /** 3406 * Search parameter: <b>reason-reference</b> 3407 * <p> 3408 * Description: <b>Reference to a resource (by instance)</b><br> 3409 * Type: <b>reference</b><br> 3410 * Path: <b>Immunization.reason.reference</b><br> 3411 * </p> 3412 */ 3413 @SearchParamDefinition(name="reason-reference", path="Immunization.reason.reference", description="Reference to a resource (by instance)", type="reference", target={Condition.class, DiagnosticReport.class, Observation.class } ) 3414 public static final String SP_REASON_REFERENCE = "reason-reference"; 3415 /** 3416 * <b>Fluent Client</b> search parameter constant for <b>reason-reference</b> 3417 * <p> 3418 * Description: <b>Reference to a resource (by instance)</b><br> 3419 * Type: <b>reference</b><br> 3420 * Path: <b>Immunization.reason.reference</b><br> 3421 * </p> 3422 */ 3423 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam REASON_REFERENCE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_REASON_REFERENCE); 3424 3425/** 3426 * Constant for fluent queries to be used to add include statements. Specifies 3427 * the path value of "<b>Immunization:reason-reference</b>". 3428 */ 3429 public static final ca.uhn.fhir.model.api.Include INCLUDE_REASON_REFERENCE = new ca.uhn.fhir.model.api.Include("Immunization:reason-reference").toLocked(); 3430 3431 /** 3432 * Search parameter: <b>series</b> 3433 * <p> 3434 * Description: <b>The series being followed by the provider</b><br> 3435 * Type: <b>string</b><br> 3436 * Path: <b>Immunization.protocolApplied.series</b><br> 3437 * </p> 3438 */ 3439 @SearchParamDefinition(name="series", path="Immunization.protocolApplied.series", description="The series being followed by the provider", type="string" ) 3440 public static final String SP_SERIES = "series"; 3441 /** 3442 * <b>Fluent Client</b> search parameter constant for <b>series</b> 3443 * <p> 3444 * Description: <b>The series being followed by the provider</b><br> 3445 * Type: <b>string</b><br> 3446 * Path: <b>Immunization.protocolApplied.series</b><br> 3447 * </p> 3448 */ 3449 public static final ca.uhn.fhir.rest.gclient.StringClientParam SERIES = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_SERIES); 3450 3451 /** 3452 * Search parameter: <b>status-reason</b> 3453 * <p> 3454 * Description: <b>Reason why the vaccine was not administered</b><br> 3455 * Type: <b>token</b><br> 3456 * Path: <b>Immunization.statusReason</b><br> 3457 * </p> 3458 */ 3459 @SearchParamDefinition(name="status-reason", path="Immunization.statusReason", description="Reason why the vaccine was not administered", type="token" ) 3460 public static final String SP_STATUS_REASON = "status-reason"; 3461 /** 3462 * <b>Fluent Client</b> search parameter constant for <b>status-reason</b> 3463 * <p> 3464 * Description: <b>Reason why the vaccine was not administered</b><br> 3465 * Type: <b>token</b><br> 3466 * Path: <b>Immunization.statusReason</b><br> 3467 * </p> 3468 */ 3469 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS_REASON = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS_REASON); 3470 3471 /** 3472 * Search parameter: <b>status</b> 3473 * <p> 3474 * Description: <b>Immunization event status</b><br> 3475 * Type: <b>token</b><br> 3476 * Path: <b>Immunization.status</b><br> 3477 * </p> 3478 */ 3479 @SearchParamDefinition(name="status", path="Immunization.status", description="Immunization event status", type="token" ) 3480 public static final String SP_STATUS = "status"; 3481 /** 3482 * <b>Fluent Client</b> search parameter constant for <b>status</b> 3483 * <p> 3484 * Description: <b>Immunization event status</b><br> 3485 * Type: <b>token</b><br> 3486 * Path: <b>Immunization.status</b><br> 3487 * </p> 3488 */ 3489 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 3490 3491 /** 3492 * Search parameter: <b>target-disease</b> 3493 * <p> 3494 * Description: <b>The target disease the dose is being administered against</b><br> 3495 * Type: <b>token</b><br> 3496 * Path: <b>Immunization.protocolApplied.targetDisease</b><br> 3497 * </p> 3498 */ 3499 @SearchParamDefinition(name="target-disease", path="Immunization.protocolApplied.targetDisease", description="The target disease the dose is being administered against", type="token" ) 3500 public static final String SP_TARGET_DISEASE = "target-disease"; 3501 /** 3502 * <b>Fluent Client</b> search parameter constant for <b>target-disease</b> 3503 * <p> 3504 * Description: <b>The target disease the dose is being administered against</b><br> 3505 * Type: <b>token</b><br> 3506 * Path: <b>Immunization.protocolApplied.targetDisease</b><br> 3507 * </p> 3508 */ 3509 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TARGET_DISEASE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TARGET_DISEASE); 3510 3511 /** 3512 * Search parameter: <b>vaccine-code</b> 3513 * <p> 3514 * Description: <b>Vaccine Product Administered</b><br> 3515 * Type: <b>token</b><br> 3516 * Path: <b>Immunization.vaccineCode</b><br> 3517 * </p> 3518 */ 3519 @SearchParamDefinition(name="vaccine-code", path="Immunization.vaccineCode", description="Vaccine Product Administered", type="token" ) 3520 public static final String SP_VACCINE_CODE = "vaccine-code"; 3521 /** 3522 * <b>Fluent Client</b> search parameter constant for <b>vaccine-code</b> 3523 * <p> 3524 * Description: <b>Vaccine Product Administered</b><br> 3525 * Type: <b>token</b><br> 3526 * Path: <b>Immunization.vaccineCode</b><br> 3527 * </p> 3528 */ 3529 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VACCINE_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VACCINE_CODE); 3530 3531 /** 3532 * Search parameter: <b>date</b> 3533 * <p> 3534 * Description: <b>Multiple Resources: 3535 3536* [AdverseEvent](adverseevent.html): When the event occurred 3537* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded 3538* [Appointment](appointment.html): Appointment date/time. 3539* [AuditEvent](auditevent.html): Time when the event was recorded 3540* [CarePlan](careplan.html): Time period plan covers 3541* [CareTeam](careteam.html): A date within the coverage time period. 3542* [ClinicalImpression](clinicalimpression.html): When the assessment was documented 3543* [Composition](composition.html): Composition editing time 3544* [Consent](consent.html): When consent was agreed to 3545* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report 3546* [DocumentReference](documentreference.html): When this document reference was created 3547* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted 3548* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period 3549* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated 3550* [Flag](flag.html): Time period when flag is active 3551* [Immunization](immunization.html): Vaccination (non)-Administration Date 3552* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated 3553* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created 3554* [Invoice](invoice.html): Invoice date / posting date 3555* [List](list.html): When the list was prepared 3556* [MeasureReport](measurereport.html): The date of the measure report 3557* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication 3558* [Observation](observation.html): Clinically relevant time/time-period for observation 3559* [Procedure](procedure.html): When the procedure occurred or is occurring 3560* [ResearchSubject](researchsubject.html): Start and end of participation 3561* [RiskAssessment](riskassessment.html): When was assessment made? 3562* [SupplyRequest](supplyrequest.html): When the request was made 3563</b><br> 3564 * Type: <b>date</b><br> 3565 * Path: <b>AdverseEvent.occurrence.ofType(dateTime) | AdverseEvent.occurrence.ofType(Period) | AdverseEvent.occurrence.ofType(Timing) | AllergyIntolerance.recordedDate | (start | requestedPeriod.start).first() | AuditEvent.recorded | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.date | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | DocumentReference.date | Encounter.actualPeriod | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence.ofType(dateTime)) | ImmunizationEvaluation.date | ImmunizationRecommendation.date | Invoice.date | List.date | MeasureReport.date | NutritionIntake.occurrence.ofType(dateTime) | NutritionIntake.occurrence.ofType(Period) | Observation.effective.ofType(dateTime) | Observation.effective.ofType(Period) | Observation.effective.ofType(Timing) | Observation.effective.ofType(instant) | Procedure.occurrence.ofType(dateTime) | Procedure.occurrence.ofType(Period) | Procedure.occurrence.ofType(Timing) | ResearchSubject.period | (RiskAssessment.occurrence.ofType(dateTime)) | SupplyRequest.authoredOn</b><br> 3566 * </p> 3567 */ 3568 @SearchParamDefinition(name="date", path="AdverseEvent.occurrence.ofType(dateTime) | AdverseEvent.occurrence.ofType(Period) | AdverseEvent.occurrence.ofType(Timing) | AllergyIntolerance.recordedDate | (start | requestedPeriod.start).first() | AuditEvent.recorded | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.date | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | DocumentReference.date | Encounter.actualPeriod | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence.ofType(dateTime)) | ImmunizationEvaluation.date | ImmunizationRecommendation.date | Invoice.date | List.date | MeasureReport.date | NutritionIntake.occurrence.ofType(dateTime) | NutritionIntake.occurrence.ofType(Period) | Observation.effective.ofType(dateTime) | Observation.effective.ofType(Period) | Observation.effective.ofType(Timing) | Observation.effective.ofType(instant) | Procedure.occurrence.ofType(dateTime) | Procedure.occurrence.ofType(Period) | Procedure.occurrence.ofType(Timing) | ResearchSubject.period | (RiskAssessment.occurrence.ofType(dateTime)) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AdverseEvent](adverseevent.html): When the event occurred\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [Appointment](appointment.html): Appointment date/time.\r\n* [AuditEvent](auditevent.html): Time when the event was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [DocumentReference](documentreference.html): When this document reference was created\r\n* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated\r\n* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created\r\n* [Invoice](invoice.html): Invoice date / posting date\r\n* [List](list.html): When the list was prepared\r\n* [MeasureReport](measurereport.html): The date of the measure report\r\n* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication\r\n* [Observation](observation.html): Clinically relevant time/time-period for observation\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [ResearchSubject](researchsubject.html): Start and end of participation\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) 3569 public static final String SP_DATE = "date"; 3570 /** 3571 * <b>Fluent Client</b> search parameter constant for <b>date</b> 3572 * <p> 3573 * Description: <b>Multiple Resources: 3574 3575* [AdverseEvent](adverseevent.html): When the event occurred 3576* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded 3577* [Appointment](appointment.html): Appointment date/time. 3578* [AuditEvent](auditevent.html): Time when the event was recorded 3579* [CarePlan](careplan.html): Time period plan covers 3580* [CareTeam](careteam.html): A date within the coverage time period. 3581* [ClinicalImpression](clinicalimpression.html): When the assessment was documented 3582* [Composition](composition.html): Composition editing time 3583* [Consent](consent.html): When consent was agreed to 3584* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report 3585* [DocumentReference](documentreference.html): When this document reference was created 3586* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted 3587* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period 3588* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated 3589* [Flag](flag.html): Time period when flag is active 3590* [Immunization](immunization.html): Vaccination (non)-Administration Date 3591* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated 3592* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created 3593* [Invoice](invoice.html): Invoice date / posting date 3594* [List](list.html): When the list was prepared 3595* [MeasureReport](measurereport.html): The date of the measure report 3596* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication 3597* [Observation](observation.html): Clinically relevant time/time-period for observation 3598* [Procedure](procedure.html): When the procedure occurred or is occurring 3599* [ResearchSubject](researchsubject.html): Start and end of participation 3600* [RiskAssessment](riskassessment.html): When was assessment made? 3601* [SupplyRequest](supplyrequest.html): When the request was made 3602</b><br> 3603 * Type: <b>date</b><br> 3604 * Path: <b>AdverseEvent.occurrence.ofType(dateTime) | AdverseEvent.occurrence.ofType(Period) | AdverseEvent.occurrence.ofType(Timing) | AllergyIntolerance.recordedDate | (start | requestedPeriod.start).first() | AuditEvent.recorded | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.date | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | DocumentReference.date | Encounter.actualPeriod | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence.ofType(dateTime)) | ImmunizationEvaluation.date | ImmunizationRecommendation.date | Invoice.date | List.date | MeasureReport.date | NutritionIntake.occurrence.ofType(dateTime) | NutritionIntake.occurrence.ofType(Period) | Observation.effective.ofType(dateTime) | Observation.effective.ofType(Period) | Observation.effective.ofType(Timing) | Observation.effective.ofType(instant) | Procedure.occurrence.ofType(dateTime) | Procedure.occurrence.ofType(Period) | Procedure.occurrence.ofType(Timing) | ResearchSubject.period | (RiskAssessment.occurrence.ofType(dateTime)) | SupplyRequest.authoredOn</b><br> 3605 * </p> 3606 */ 3607 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 3608 3609 /** 3610 * Search parameter: <b>identifier</b> 3611 * <p> 3612 * Description: <b>Multiple Resources: 3613 3614* [Account](account.html): Account number 3615* [AdverseEvent](adverseevent.html): Business identifier for the event 3616* [AllergyIntolerance](allergyintolerance.html): External ids for this item 3617* [Appointment](appointment.html): An Identifier of the Appointment 3618* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 3619* [Basic](basic.html): Business identifier 3620* [BodyStructure](bodystructure.html): Bodystructure identifier 3621* [CarePlan](careplan.html): External Ids for this plan 3622* [CareTeam](careteam.html): External Ids for this team 3623* [ChargeItem](chargeitem.html): Business Identifier for item 3624* [Claim](claim.html): The primary identifier of the financial resource 3625* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 3626* [ClinicalImpression](clinicalimpression.html): Business identifier 3627* [Communication](communication.html): Unique identifier 3628* [CommunicationRequest](communicationrequest.html): Unique identifier 3629* [Composition](composition.html): Version-independent identifier for the Composition 3630* [Condition](condition.html): A unique identifier of the condition record 3631* [Consent](consent.html): Identifier for this record (external references) 3632* [Contract](contract.html): The identity of the contract 3633* [Coverage](coverage.html): The primary identifier of the insured and the coverage 3634* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 3635* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 3636* [DetectedIssue](detectedissue.html): Unique id for the detected issue 3637* [DeviceRequest](devicerequest.html): Business identifier for request/order 3638* [DeviceUsage](deviceusage.html): Search by identifier 3639* [DiagnosticReport](diagnosticreport.html): An identifier for the report 3640* [DocumentReference](documentreference.html): Identifier of the attachment binary 3641* [Encounter](encounter.html): Identifier(s) by which this encounter is known 3642* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 3643* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 3644* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 3645* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 3646* [Flag](flag.html): Business identifier 3647* [Goal](goal.html): External Ids for this goal 3648* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 3649* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 3650* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 3651* [Immunization](immunization.html): Business identifier 3652* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 3653* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 3654* [Invoice](invoice.html): Business Identifier for item 3655* [List](list.html): Business identifier 3656* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 3657* [Medication](medication.html): Returns medications with this external identifier 3658* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 3659* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 3660* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 3661* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 3662* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 3663* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 3664* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 3665* [Observation](observation.html): The unique id for a particular observation 3666* [Person](person.html): A person Identifier 3667* [Procedure](procedure.html): A unique identifier for a procedure 3668* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 3669* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 3670* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 3671* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 3672* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 3673* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 3674* [Specimen](specimen.html): The unique identifier associated with the specimen 3675* [SupplyDelivery](supplydelivery.html): External identifier 3676* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 3677* [Task](task.html): Search for a task instance by its business identifier 3678* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 3679</b><br> 3680 * Type: <b>token</b><br> 3681 * 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> 3682 * </p> 3683 */ 3684 @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" ) 3685 public static final String SP_IDENTIFIER = "identifier"; 3686 /** 3687 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 3688 * <p> 3689 * Description: <b>Multiple Resources: 3690 3691* [Account](account.html): Account number 3692* [AdverseEvent](adverseevent.html): Business identifier for the event 3693* [AllergyIntolerance](allergyintolerance.html): External ids for this item 3694* [Appointment](appointment.html): An Identifier of the Appointment 3695* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 3696* [Basic](basic.html): Business identifier 3697* [BodyStructure](bodystructure.html): Bodystructure identifier 3698* [CarePlan](careplan.html): External Ids for this plan 3699* [CareTeam](careteam.html): External Ids for this team 3700* [ChargeItem](chargeitem.html): Business Identifier for item 3701* [Claim](claim.html): The primary identifier of the financial resource 3702* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 3703* [ClinicalImpression](clinicalimpression.html): Business identifier 3704* [Communication](communication.html): Unique identifier 3705* [CommunicationRequest](communicationrequest.html): Unique identifier 3706* [Composition](composition.html): Version-independent identifier for the Composition 3707* [Condition](condition.html): A unique identifier of the condition record 3708* [Consent](consent.html): Identifier for this record (external references) 3709* [Contract](contract.html): The identity of the contract 3710* [Coverage](coverage.html): The primary identifier of the insured and the coverage 3711* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 3712* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 3713* [DetectedIssue](detectedissue.html): Unique id for the detected issue 3714* [DeviceRequest](devicerequest.html): Business identifier for request/order 3715* [DeviceUsage](deviceusage.html): Search by identifier 3716* [DiagnosticReport](diagnosticreport.html): An identifier for the report 3717* [DocumentReference](documentreference.html): Identifier of the attachment binary 3718* [Encounter](encounter.html): Identifier(s) by which this encounter is known 3719* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 3720* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 3721* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 3722* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 3723* [Flag](flag.html): Business identifier 3724* [Goal](goal.html): External Ids for this goal 3725* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 3726* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 3727* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 3728* [Immunization](immunization.html): Business identifier 3729* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 3730* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 3731* [Invoice](invoice.html): Business Identifier for item 3732* [List](list.html): Business identifier 3733* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 3734* [Medication](medication.html): Returns medications with this external identifier 3735* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 3736* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 3737* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 3738* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 3739* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 3740* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 3741* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 3742* [Observation](observation.html): The unique id for a particular observation 3743* [Person](person.html): A person Identifier 3744* [Procedure](procedure.html): A unique identifier for a procedure 3745* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 3746* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 3747* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 3748* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 3749* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 3750* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 3751* [Specimen](specimen.html): The unique identifier associated with the specimen 3752* [SupplyDelivery](supplydelivery.html): External identifier 3753* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 3754* [Task](task.html): Search for a task instance by its business identifier 3755* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 3756</b><br> 3757 * Type: <b>token</b><br> 3758 * 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> 3759 * </p> 3760 */ 3761 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 3762 3763 /** 3764 * Search parameter: <b>patient</b> 3765 * <p> 3766 * Description: <b>Multiple Resources: 3767 3768* [Account](account.html): The entity that caused the expenses 3769* [AdverseEvent](adverseevent.html): Subject impacted by event 3770* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 3771* [Appointment](appointment.html): One of the individuals of the appointment is this patient 3772* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 3773* [AuditEvent](auditevent.html): Where the activity involved patient data 3774* [Basic](basic.html): Identifies the focus of this resource 3775* [BodyStructure](bodystructure.html): Who this is about 3776* [CarePlan](careplan.html): Who the care plan is for 3777* [CareTeam](careteam.html): Who care team is for 3778* [ChargeItem](chargeitem.html): Individual service was done for/to 3779* [Claim](claim.html): Patient receiving the products or services 3780* [ClaimResponse](claimresponse.html): The subject of care 3781* [ClinicalImpression](clinicalimpression.html): Patient assessed 3782* [Communication](communication.html): Focus of message 3783* [CommunicationRequest](communicationrequest.html): Focus of message 3784* [Composition](composition.html): Who and/or what the composition is about 3785* [Condition](condition.html): Who has the condition? 3786* [Consent](consent.html): Who the consent applies to 3787* [Contract](contract.html): The identity of the subject of the contract (if a patient) 3788* [Coverage](coverage.html): Retrieve coverages for a patient 3789* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 3790* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 3791* [DetectedIssue](detectedissue.html): Associated patient 3792* [DeviceRequest](devicerequest.html): Individual the service is ordered for 3793* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 3794* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 3795* [DocumentReference](documentreference.html): Who/what is the subject of the document 3796* [Encounter](encounter.html): The patient present at the encounter 3797* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 3798* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 3799* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 3800* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 3801* [Flag](flag.html): The identity of a subject to list flags for 3802* [Goal](goal.html): Who this goal is intended for 3803* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 3804* [ImagingSelection](imagingselection.html): Who the study is about 3805* [ImagingStudy](imagingstudy.html): Who the study is about 3806* [Immunization](immunization.html): The patient for the vaccination record 3807* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 3808* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 3809* [Invoice](invoice.html): Recipient(s) of goods and services 3810* [List](list.html): If all resources have the same subject 3811* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 3812* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 3813* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 3814* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 3815* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 3816* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 3817* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 3818* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 3819* [Observation](observation.html): The subject that the observation is about (if patient) 3820* [Person](person.html): The Person links to this Patient 3821* [Procedure](procedure.html): Search by subject - a patient 3822* [Provenance](provenance.html): Where the activity involved patient data 3823* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 3824* [RelatedPerson](relatedperson.html): The patient this related person is related to 3825* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 3826* [ResearchSubject](researchsubject.html): Who or what is part of study 3827* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 3828* [ServiceRequest](servicerequest.html): Search by subject - a patient 3829* [Specimen](specimen.html): The patient the specimen comes from 3830* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 3831* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 3832* [Task](task.html): Search by patient 3833* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 3834</b><br> 3835 * Type: <b>reference</b><br> 3836 * 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> 3837 * </p> 3838 */ 3839 @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", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Patient.class } ) 3840 public static final String SP_PATIENT = "patient"; 3841 /** 3842 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 3843 * <p> 3844 * Description: <b>Multiple Resources: 3845 3846* [Account](account.html): The entity that caused the expenses 3847* [AdverseEvent](adverseevent.html): Subject impacted by event 3848* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 3849* [Appointment](appointment.html): One of the individuals of the appointment is this patient 3850* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 3851* [AuditEvent](auditevent.html): Where the activity involved patient data 3852* [Basic](basic.html): Identifies the focus of this resource 3853* [BodyStructure](bodystructure.html): Who this is about 3854* [CarePlan](careplan.html): Who the care plan is for 3855* [CareTeam](careteam.html): Who care team is for 3856* [ChargeItem](chargeitem.html): Individual service was done for/to 3857* [Claim](claim.html): Patient receiving the products or services 3858* [ClaimResponse](claimresponse.html): The subject of care 3859* [ClinicalImpression](clinicalimpression.html): Patient assessed 3860* [Communication](communication.html): Focus of message 3861* [CommunicationRequest](communicationrequest.html): Focus of message 3862* [Composition](composition.html): Who and/or what the composition is about 3863* [Condition](condition.html): Who has the condition? 3864* [Consent](consent.html): Who the consent applies to 3865* [Contract](contract.html): The identity of the subject of the contract (if a patient) 3866* [Coverage](coverage.html): Retrieve coverages for a patient 3867* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 3868* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 3869* [DetectedIssue](detectedissue.html): Associated patient 3870* [DeviceRequest](devicerequest.html): Individual the service is ordered for 3871* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 3872* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 3873* [DocumentReference](documentreference.html): Who/what is the subject of the document 3874* [Encounter](encounter.html): The patient present at the encounter 3875* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 3876* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 3877* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 3878* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 3879* [Flag](flag.html): The identity of a subject to list flags for 3880* [Goal](goal.html): Who this goal is intended for 3881* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 3882* [ImagingSelection](imagingselection.html): Who the study is about 3883* [ImagingStudy](imagingstudy.html): Who the study is about 3884* [Immunization](immunization.html): The patient for the vaccination record 3885* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 3886* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 3887* [Invoice](invoice.html): Recipient(s) of goods and services 3888* [List](list.html): If all resources have the same subject 3889* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 3890* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 3891* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 3892* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 3893* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 3894* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 3895* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 3896* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 3897* [Observation](observation.html): The subject that the observation is about (if patient) 3898* [Person](person.html): The Person links to this Patient 3899* [Procedure](procedure.html): Search by subject - a patient 3900* [Provenance](provenance.html): Where the activity involved patient data 3901* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 3902* [RelatedPerson](relatedperson.html): The patient this related person is related to 3903* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 3904* [ResearchSubject](researchsubject.html): Who or what is part of study 3905* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 3906* [ServiceRequest](servicerequest.html): Search by subject - a patient 3907* [Specimen](specimen.html): The patient the specimen comes from 3908* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 3909* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 3910* [Task](task.html): Search by patient 3911* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 3912</b><br> 3913 * Type: <b>reference</b><br> 3914 * 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> 3915 * </p> 3916 */ 3917 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 3918 3919/** 3920 * Constant for fluent queries to be used to add include statements. Specifies 3921 * the path value of "<b>Immunization:patient</b>". 3922 */ 3923 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("Immunization:patient").toLocked(); 3924 3925 3926} 3927