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