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 * This resource is primarily used for the identification and definition of a medication, including ingredients, for the purposes of prescribing, dispensing, and administering a medication as well as for making statements about medication use. 052 */ 053@ResourceDef(name="Medication", profile="http://hl7.org/fhir/StructureDefinition/Medication") 054public class Medication extends DomainResource { 055 056 public enum MedicationStatusCodes { 057 /** 058 * The medication record is current and is appropriate for reference in new instances. 059 */ 060 ACTIVE, 061 /** 062 * The medication record is not current and is not is appropriate for reference in new instances. 063 */ 064 INACTIVE, 065 /** 066 * The medication record was created erroneously and is not appropriated for reference in new instances. 067 */ 068 ENTEREDINERROR, 069 /** 070 * added to help the parsers with the generic types 071 */ 072 NULL; 073 public static MedicationStatusCodes fromCode(String codeString) throws FHIRException { 074 if (codeString == null || "".equals(codeString)) 075 return null; 076 if ("active".equals(codeString)) 077 return ACTIVE; 078 if ("inactive".equals(codeString)) 079 return INACTIVE; 080 if ("entered-in-error".equals(codeString)) 081 return ENTEREDINERROR; 082 if (Configuration.isAcceptInvalidEnums()) 083 return null; 084 else 085 throw new FHIRException("Unknown MedicationStatusCodes code '"+codeString+"'"); 086 } 087 public String toCode() { 088 switch (this) { 089 case ACTIVE: return "active"; 090 case INACTIVE: return "inactive"; 091 case ENTEREDINERROR: return "entered-in-error"; 092 case NULL: return null; 093 default: return "?"; 094 } 095 } 096 public String getSystem() { 097 switch (this) { 098 case ACTIVE: return "http://hl7.org/fhir/CodeSystem/medication-status"; 099 case INACTIVE: return "http://hl7.org/fhir/CodeSystem/medication-status"; 100 case ENTEREDINERROR: return "http://hl7.org/fhir/CodeSystem/medication-status"; 101 case NULL: return null; 102 default: return "?"; 103 } 104 } 105 public String getDefinition() { 106 switch (this) { 107 case ACTIVE: return "The medication record is current and is appropriate for reference in new instances."; 108 case INACTIVE: return "The medication record is not current and is not is appropriate for reference in new instances."; 109 case ENTEREDINERROR: return "The medication record was created erroneously and is not appropriated for reference in new instances."; 110 case NULL: return null; 111 default: return "?"; 112 } 113 } 114 public String getDisplay() { 115 switch (this) { 116 case ACTIVE: return "Active"; 117 case INACTIVE: return "Inactive"; 118 case ENTEREDINERROR: return "Entered in Error"; 119 case NULL: return null; 120 default: return "?"; 121 } 122 } 123 } 124 125 public static class MedicationStatusCodesEnumFactory implements EnumFactory<MedicationStatusCodes> { 126 public MedicationStatusCodes fromCode(String codeString) throws IllegalArgumentException { 127 if (codeString == null || "".equals(codeString)) 128 if (codeString == null || "".equals(codeString)) 129 return null; 130 if ("active".equals(codeString)) 131 return MedicationStatusCodes.ACTIVE; 132 if ("inactive".equals(codeString)) 133 return MedicationStatusCodes.INACTIVE; 134 if ("entered-in-error".equals(codeString)) 135 return MedicationStatusCodes.ENTEREDINERROR; 136 throw new IllegalArgumentException("Unknown MedicationStatusCodes code '"+codeString+"'"); 137 } 138 public Enumeration<MedicationStatusCodes> fromType(PrimitiveType<?> code) throws FHIRException { 139 if (code == null) 140 return null; 141 if (code.isEmpty()) 142 return new Enumeration<MedicationStatusCodes>(this, MedicationStatusCodes.NULL, code); 143 String codeString = ((PrimitiveType) code).asStringValue(); 144 if (codeString == null || "".equals(codeString)) 145 return new Enumeration<MedicationStatusCodes>(this, MedicationStatusCodes.NULL, code); 146 if ("active".equals(codeString)) 147 return new Enumeration<MedicationStatusCodes>(this, MedicationStatusCodes.ACTIVE, code); 148 if ("inactive".equals(codeString)) 149 return new Enumeration<MedicationStatusCodes>(this, MedicationStatusCodes.INACTIVE, code); 150 if ("entered-in-error".equals(codeString)) 151 return new Enumeration<MedicationStatusCodes>(this, MedicationStatusCodes.ENTEREDINERROR, code); 152 throw new FHIRException("Unknown MedicationStatusCodes code '"+codeString+"'"); 153 } 154 public String toCode(MedicationStatusCodes code) { 155 if (code == MedicationStatusCodes.ACTIVE) 156 return "active"; 157 if (code == MedicationStatusCodes.INACTIVE) 158 return "inactive"; 159 if (code == MedicationStatusCodes.ENTEREDINERROR) 160 return "entered-in-error"; 161 return "?"; 162 } 163 public String toSystem(MedicationStatusCodes code) { 164 return code.getSystem(); 165 } 166 } 167 168 @Block() 169 public static class MedicationIngredientComponent extends BackboneElement implements IBaseBackboneElement { 170 /** 171 * The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication). 172 */ 173 @Child(name = "item", type = {CodeableReference.class}, order=1, min=1, max=1, modifier=false, summary=false) 174 @Description(shortDefinition="The ingredient (substance or medication) that the ingredient.strength relates to", formalDefinition="The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication)." ) 175 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-codes") 176 protected CodeableReference item; 177 178 /** 179 * Indication of whether this ingredient affects the therapeutic action of the drug. 180 */ 181 @Child(name = "isActive", type = {BooleanType.class}, order=2, min=0, max=1, modifier=false, summary=false) 182 @Description(shortDefinition="Active ingredient indicator", formalDefinition="Indication of whether this ingredient affects the therapeutic action of the drug." ) 183 protected BooleanType isActive; 184 185 /** 186 * Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet. 187 */ 188 @Child(name = "strength", type = {Ratio.class, CodeableConcept.class, Quantity.class}, order=3, min=0, max=1, modifier=false, summary=false) 189 @Description(shortDefinition="Quantity of ingredient present", formalDefinition="Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet." ) 190 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-ingredientstrength") 191 protected DataType strength; 192 193 private static final long serialVersionUID = -979760018L; 194 195 /** 196 * Constructor 197 */ 198 public MedicationIngredientComponent() { 199 super(); 200 } 201 202 /** 203 * Constructor 204 */ 205 public MedicationIngredientComponent(CodeableReference item) { 206 super(); 207 this.setItem(item); 208 } 209 210 /** 211 * @return {@link #item} (The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).) 212 */ 213 public CodeableReference getItem() { 214 if (this.item == null) 215 if (Configuration.errorOnAutoCreate()) 216 throw new Error("Attempt to auto-create MedicationIngredientComponent.item"); 217 else if (Configuration.doAutoCreate()) 218 this.item = new CodeableReference(); // cc 219 return this.item; 220 } 221 222 public boolean hasItem() { 223 return this.item != null && !this.item.isEmpty(); 224 } 225 226 /** 227 * @param value {@link #item} (The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).) 228 */ 229 public MedicationIngredientComponent setItem(CodeableReference value) { 230 this.item = value; 231 return this; 232 } 233 234 /** 235 * @return {@link #isActive} (Indication of whether this ingredient affects the therapeutic action of the drug.). This is the underlying object with id, value and extensions. The accessor "getIsActive" gives direct access to the value 236 */ 237 public BooleanType getIsActiveElement() { 238 if (this.isActive == null) 239 if (Configuration.errorOnAutoCreate()) 240 throw new Error("Attempt to auto-create MedicationIngredientComponent.isActive"); 241 else if (Configuration.doAutoCreate()) 242 this.isActive = new BooleanType(); // bb 243 return this.isActive; 244 } 245 246 public boolean hasIsActiveElement() { 247 return this.isActive != null && !this.isActive.isEmpty(); 248 } 249 250 public boolean hasIsActive() { 251 return this.isActive != null && !this.isActive.isEmpty(); 252 } 253 254 /** 255 * @param value {@link #isActive} (Indication of whether this ingredient affects the therapeutic action of the drug.). This is the underlying object with id, value and extensions. The accessor "getIsActive" gives direct access to the value 256 */ 257 public MedicationIngredientComponent setIsActiveElement(BooleanType value) { 258 this.isActive = value; 259 return this; 260 } 261 262 /** 263 * @return Indication of whether this ingredient affects the therapeutic action of the drug. 264 */ 265 public boolean getIsActive() { 266 return this.isActive == null || this.isActive.isEmpty() ? false : this.isActive.getValue(); 267 } 268 269 /** 270 * @param value Indication of whether this ingredient affects the therapeutic action of the drug. 271 */ 272 public MedicationIngredientComponent setIsActive(boolean value) { 273 if (this.isActive == null) 274 this.isActive = new BooleanType(); 275 this.isActive.setValue(value); 276 return this; 277 } 278 279 /** 280 * @return {@link #strength} (Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.) 281 */ 282 public DataType getStrength() { 283 return this.strength; 284 } 285 286 /** 287 * @return {@link #strength} (Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.) 288 */ 289 public Ratio getStrengthRatio() throws FHIRException { 290 if (this.strength == null) 291 this.strength = new Ratio(); 292 if (!(this.strength instanceof Ratio)) 293 throw new FHIRException("Type mismatch: the type Ratio was expected, but "+this.strength.getClass().getName()+" was encountered"); 294 return (Ratio) this.strength; 295 } 296 297 public boolean hasStrengthRatio() { 298 return this != null && this.strength instanceof Ratio; 299 } 300 301 /** 302 * @return {@link #strength} (Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.) 303 */ 304 public CodeableConcept getStrengthCodeableConcept() throws FHIRException { 305 if (this.strength == null) 306 this.strength = new CodeableConcept(); 307 if (!(this.strength instanceof CodeableConcept)) 308 throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.strength.getClass().getName()+" was encountered"); 309 return (CodeableConcept) this.strength; 310 } 311 312 public boolean hasStrengthCodeableConcept() { 313 return this != null && this.strength instanceof CodeableConcept; 314 } 315 316 /** 317 * @return {@link #strength} (Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.) 318 */ 319 public Quantity getStrengthQuantity() throws FHIRException { 320 if (this.strength == null) 321 this.strength = new Quantity(); 322 if (!(this.strength instanceof Quantity)) 323 throw new FHIRException("Type mismatch: the type Quantity was expected, but "+this.strength.getClass().getName()+" was encountered"); 324 return (Quantity) this.strength; 325 } 326 327 public boolean hasStrengthQuantity() { 328 return this != null && this.strength instanceof Quantity; 329 } 330 331 public boolean hasStrength() { 332 return this.strength != null && !this.strength.isEmpty(); 333 } 334 335 /** 336 * @param value {@link #strength} (Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.) 337 */ 338 public MedicationIngredientComponent setStrength(DataType value) { 339 if (value != null && !(value instanceof Ratio || value instanceof CodeableConcept || value instanceof Quantity)) 340 throw new FHIRException("Not the right type for Medication.ingredient.strength[x]: "+value.fhirType()); 341 this.strength = value; 342 return this; 343 } 344 345 protected void listChildren(List<Property> children) { 346 super.listChildren(children); 347 children.add(new Property("item", "CodeableReference(Substance|Medication)", "The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).", 0, 1, item)); 348 children.add(new Property("isActive", "boolean", "Indication of whether this ingredient affects the therapeutic action of the drug.", 0, 1, isActive)); 349 children.add(new Property("strength[x]", "Ratio|CodeableConcept|Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength)); 350 } 351 352 @Override 353 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 354 switch (_hash) { 355 case 3242771: /*item*/ return new Property("item", "CodeableReference(Substance|Medication)", "The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).", 0, 1, item); 356 case -748916528: /*isActive*/ return new Property("isActive", "boolean", "Indication of whether this ingredient affects the therapeutic action of the drug.", 0, 1, isActive); 357 case 127377567: /*strength[x]*/ return new Property("strength[x]", "Ratio|CodeableConcept|Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength); 358 case 1791316033: /*strength*/ return new Property("strength[x]", "Ratio|CodeableConcept|Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength); 359 case 2141786186: /*strengthRatio*/ return new Property("strength[x]", "Ratio", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength); 360 case -1455903456: /*strengthCodeableConcept*/ return new Property("strength[x]", "CodeableConcept", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength); 361 case -1793570836: /*strengthQuantity*/ return new Property("strength[x]", "Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength); 362 default: return super.getNamedProperty(_hash, _name, _checkValid); 363 } 364 365 } 366 367 @Override 368 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 369 switch (hash) { 370 case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // CodeableReference 371 case -748916528: /*isActive*/ return this.isActive == null ? new Base[0] : new Base[] {this.isActive}; // BooleanType 372 case 1791316033: /*strength*/ return this.strength == null ? new Base[0] : new Base[] {this.strength}; // DataType 373 default: return super.getProperty(hash, name, checkValid); 374 } 375 376 } 377 378 @Override 379 public Base setProperty(int hash, String name, Base value) throws FHIRException { 380 switch (hash) { 381 case 3242771: // item 382 this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference 383 return value; 384 case -748916528: // isActive 385 this.isActive = TypeConvertor.castToBoolean(value); // BooleanType 386 return value; 387 case 1791316033: // strength 388 this.strength = TypeConvertor.castToType(value); // DataType 389 return value; 390 default: return super.setProperty(hash, name, value); 391 } 392 393 } 394 395 @Override 396 public Base setProperty(String name, Base value) throws FHIRException { 397 if (name.equals("item")) { 398 this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference 399 } else if (name.equals("isActive")) { 400 this.isActive = TypeConvertor.castToBoolean(value); // BooleanType 401 } else if (name.equals("strength[x]")) { 402 this.strength = TypeConvertor.castToType(value); // DataType 403 } else 404 return super.setProperty(name, value); 405 return value; 406 } 407 408 @Override 409 public Base makeProperty(int hash, String name) throws FHIRException { 410 switch (hash) { 411 case 3242771: return getItem(); 412 case -748916528: return getIsActiveElement(); 413 case 127377567: return getStrength(); 414 case 1791316033: return getStrength(); 415 default: return super.makeProperty(hash, name); 416 } 417 418 } 419 420 @Override 421 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 422 switch (hash) { 423 case 3242771: /*item*/ return new String[] {"CodeableReference"}; 424 case -748916528: /*isActive*/ return new String[] {"boolean"}; 425 case 1791316033: /*strength*/ return new String[] {"Ratio", "CodeableConcept", "Quantity"}; 426 default: return super.getTypesForProperty(hash, name); 427 } 428 429 } 430 431 @Override 432 public Base addChild(String name) throws FHIRException { 433 if (name.equals("item")) { 434 this.item = new CodeableReference(); 435 return this.item; 436 } 437 else if (name.equals("isActive")) { 438 throw new FHIRException("Cannot call addChild on a singleton property Medication.ingredient.isActive"); 439 } 440 else if (name.equals("strengthRatio")) { 441 this.strength = new Ratio(); 442 return this.strength; 443 } 444 else if (name.equals("strengthCodeableConcept")) { 445 this.strength = new CodeableConcept(); 446 return this.strength; 447 } 448 else if (name.equals("strengthQuantity")) { 449 this.strength = new Quantity(); 450 return this.strength; 451 } 452 else 453 return super.addChild(name); 454 } 455 456 public MedicationIngredientComponent copy() { 457 MedicationIngredientComponent dst = new MedicationIngredientComponent(); 458 copyValues(dst); 459 return dst; 460 } 461 462 public void copyValues(MedicationIngredientComponent dst) { 463 super.copyValues(dst); 464 dst.item = item == null ? null : item.copy(); 465 dst.isActive = isActive == null ? null : isActive.copy(); 466 dst.strength = strength == null ? null : strength.copy(); 467 } 468 469 @Override 470 public boolean equalsDeep(Base other_) { 471 if (!super.equalsDeep(other_)) 472 return false; 473 if (!(other_ instanceof MedicationIngredientComponent)) 474 return false; 475 MedicationIngredientComponent o = (MedicationIngredientComponent) other_; 476 return compareDeep(item, o.item, true) && compareDeep(isActive, o.isActive, true) && compareDeep(strength, o.strength, true) 477 ; 478 } 479 480 @Override 481 public boolean equalsShallow(Base other_) { 482 if (!super.equalsShallow(other_)) 483 return false; 484 if (!(other_ instanceof MedicationIngredientComponent)) 485 return false; 486 MedicationIngredientComponent o = (MedicationIngredientComponent) other_; 487 return compareValues(isActive, o.isActive, true); 488 } 489 490 public boolean isEmpty() { 491 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(item, isActive, strength 492 ); 493 } 494 495 public String fhirType() { 496 return "Medication.ingredient"; 497 498 } 499 500 } 501 502 @Block() 503 public static class MedicationBatchComponent extends BackboneElement implements IBaseBackboneElement { 504 /** 505 * The assigned lot number of a batch of the specified product. 506 */ 507 @Child(name = "lotNumber", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) 508 @Description(shortDefinition="Identifier assigned to batch", formalDefinition="The assigned lot number of a batch of the specified product." ) 509 protected StringType lotNumber; 510 511 /** 512 * When this specific batch of product will expire. 513 */ 514 @Child(name = "expirationDate", type = {DateTimeType.class}, order=2, min=0, max=1, modifier=false, summary=false) 515 @Description(shortDefinition="When batch will expire", formalDefinition="When this specific batch of product will expire." ) 516 protected DateTimeType expirationDate; 517 518 private static final long serialVersionUID = 1982738755L; 519 520 /** 521 * Constructor 522 */ 523 public MedicationBatchComponent() { 524 super(); 525 } 526 527 /** 528 * @return {@link #lotNumber} (The assigned lot number of a batch of the specified product.). This is the underlying object with id, value and extensions. The accessor "getLotNumber" gives direct access to the value 529 */ 530 public StringType getLotNumberElement() { 531 if (this.lotNumber == null) 532 if (Configuration.errorOnAutoCreate()) 533 throw new Error("Attempt to auto-create MedicationBatchComponent.lotNumber"); 534 else if (Configuration.doAutoCreate()) 535 this.lotNumber = new StringType(); // bb 536 return this.lotNumber; 537 } 538 539 public boolean hasLotNumberElement() { 540 return this.lotNumber != null && !this.lotNumber.isEmpty(); 541 } 542 543 public boolean hasLotNumber() { 544 return this.lotNumber != null && !this.lotNumber.isEmpty(); 545 } 546 547 /** 548 * @param value {@link #lotNumber} (The assigned lot number of a batch of the specified product.). This is the underlying object with id, value and extensions. The accessor "getLotNumber" gives direct access to the value 549 */ 550 public MedicationBatchComponent setLotNumberElement(StringType value) { 551 this.lotNumber = value; 552 return this; 553 } 554 555 /** 556 * @return The assigned lot number of a batch of the specified product. 557 */ 558 public String getLotNumber() { 559 return this.lotNumber == null ? null : this.lotNumber.getValue(); 560 } 561 562 /** 563 * @param value The assigned lot number of a batch of the specified product. 564 */ 565 public MedicationBatchComponent setLotNumber(String value) { 566 if (Utilities.noString(value)) 567 this.lotNumber = null; 568 else { 569 if (this.lotNumber == null) 570 this.lotNumber = new StringType(); 571 this.lotNumber.setValue(value); 572 } 573 return this; 574 } 575 576 /** 577 * @return {@link #expirationDate} (When this specific batch of product will expire.). This is the underlying object with id, value and extensions. The accessor "getExpirationDate" gives direct access to the value 578 */ 579 public DateTimeType getExpirationDateElement() { 580 if (this.expirationDate == null) 581 if (Configuration.errorOnAutoCreate()) 582 throw new Error("Attempt to auto-create MedicationBatchComponent.expirationDate"); 583 else if (Configuration.doAutoCreate()) 584 this.expirationDate = new DateTimeType(); // bb 585 return this.expirationDate; 586 } 587 588 public boolean hasExpirationDateElement() { 589 return this.expirationDate != null && !this.expirationDate.isEmpty(); 590 } 591 592 public boolean hasExpirationDate() { 593 return this.expirationDate != null && !this.expirationDate.isEmpty(); 594 } 595 596 /** 597 * @param value {@link #expirationDate} (When this specific batch of product will expire.). This is the underlying object with id, value and extensions. The accessor "getExpirationDate" gives direct access to the value 598 */ 599 public MedicationBatchComponent setExpirationDateElement(DateTimeType value) { 600 this.expirationDate = value; 601 return this; 602 } 603 604 /** 605 * @return When this specific batch of product will expire. 606 */ 607 public Date getExpirationDate() { 608 return this.expirationDate == null ? null : this.expirationDate.getValue(); 609 } 610 611 /** 612 * @param value When this specific batch of product will expire. 613 */ 614 public MedicationBatchComponent setExpirationDate(Date value) { 615 if (value == null) 616 this.expirationDate = null; 617 else { 618 if (this.expirationDate == null) 619 this.expirationDate = new DateTimeType(); 620 this.expirationDate.setValue(value); 621 } 622 return this; 623 } 624 625 protected void listChildren(List<Property> children) { 626 super.listChildren(children); 627 children.add(new Property("lotNumber", "string", "The assigned lot number of a batch of the specified product.", 0, 1, lotNumber)); 628 children.add(new Property("expirationDate", "dateTime", "When this specific batch of product will expire.", 0, 1, expirationDate)); 629 } 630 631 @Override 632 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 633 switch (_hash) { 634 case 462547450: /*lotNumber*/ return new Property("lotNumber", "string", "The assigned lot number of a batch of the specified product.", 0, 1, lotNumber); 635 case -668811523: /*expirationDate*/ return new Property("expirationDate", "dateTime", "When this specific batch of product will expire.", 0, 1, expirationDate); 636 default: return super.getNamedProperty(_hash, _name, _checkValid); 637 } 638 639 } 640 641 @Override 642 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 643 switch (hash) { 644 case 462547450: /*lotNumber*/ return this.lotNumber == null ? new Base[0] : new Base[] {this.lotNumber}; // StringType 645 case -668811523: /*expirationDate*/ return this.expirationDate == null ? new Base[0] : new Base[] {this.expirationDate}; // DateTimeType 646 default: return super.getProperty(hash, name, checkValid); 647 } 648 649 } 650 651 @Override 652 public Base setProperty(int hash, String name, Base value) throws FHIRException { 653 switch (hash) { 654 case 462547450: // lotNumber 655 this.lotNumber = TypeConvertor.castToString(value); // StringType 656 return value; 657 case -668811523: // expirationDate 658 this.expirationDate = TypeConvertor.castToDateTime(value); // DateTimeType 659 return value; 660 default: return super.setProperty(hash, name, value); 661 } 662 663 } 664 665 @Override 666 public Base setProperty(String name, Base value) throws FHIRException { 667 if (name.equals("lotNumber")) { 668 this.lotNumber = TypeConvertor.castToString(value); // StringType 669 } else if (name.equals("expirationDate")) { 670 this.expirationDate = TypeConvertor.castToDateTime(value); // DateTimeType 671 } else 672 return super.setProperty(name, value); 673 return value; 674 } 675 676 @Override 677 public Base makeProperty(int hash, String name) throws FHIRException { 678 switch (hash) { 679 case 462547450: return getLotNumberElement(); 680 case -668811523: return getExpirationDateElement(); 681 default: return super.makeProperty(hash, name); 682 } 683 684 } 685 686 @Override 687 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 688 switch (hash) { 689 case 462547450: /*lotNumber*/ return new String[] {"string"}; 690 case -668811523: /*expirationDate*/ return new String[] {"dateTime"}; 691 default: return super.getTypesForProperty(hash, name); 692 } 693 694 } 695 696 @Override 697 public Base addChild(String name) throws FHIRException { 698 if (name.equals("lotNumber")) { 699 throw new FHIRException("Cannot call addChild on a singleton property Medication.batch.lotNumber"); 700 } 701 else if (name.equals("expirationDate")) { 702 throw new FHIRException("Cannot call addChild on a singleton property Medication.batch.expirationDate"); 703 } 704 else 705 return super.addChild(name); 706 } 707 708 public MedicationBatchComponent copy() { 709 MedicationBatchComponent dst = new MedicationBatchComponent(); 710 copyValues(dst); 711 return dst; 712 } 713 714 public void copyValues(MedicationBatchComponent dst) { 715 super.copyValues(dst); 716 dst.lotNumber = lotNumber == null ? null : lotNumber.copy(); 717 dst.expirationDate = expirationDate == null ? null : expirationDate.copy(); 718 } 719 720 @Override 721 public boolean equalsDeep(Base other_) { 722 if (!super.equalsDeep(other_)) 723 return false; 724 if (!(other_ instanceof MedicationBatchComponent)) 725 return false; 726 MedicationBatchComponent o = (MedicationBatchComponent) other_; 727 return compareDeep(lotNumber, o.lotNumber, true) && compareDeep(expirationDate, o.expirationDate, true) 728 ; 729 } 730 731 @Override 732 public boolean equalsShallow(Base other_) { 733 if (!super.equalsShallow(other_)) 734 return false; 735 if (!(other_ instanceof MedicationBatchComponent)) 736 return false; 737 MedicationBatchComponent o = (MedicationBatchComponent) other_; 738 return compareValues(lotNumber, o.lotNumber, true) && compareValues(expirationDate, o.expirationDate, true) 739 ; 740 } 741 742 public boolean isEmpty() { 743 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(lotNumber, expirationDate 744 ); 745 } 746 747 public String fhirType() { 748 return "Medication.batch"; 749 750 } 751 752 } 753 754 /** 755 * Business identifier for this medication. 756 */ 757 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 758 @Description(shortDefinition="Business identifier for this medication", formalDefinition="Business identifier for this medication." ) 759 protected List<Identifier> identifier; 760 761 /** 762 * A code (or set of codes) that specify this medication, or a textual description if no code is available. Usage note: This could be a standard medication code such as a code from RxNorm, SNOMED CT, IDMP etc. It could also be a national or local formulary code, optionally with translations to other code systems. 763 */ 764 @Child(name = "code", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) 765 @Description(shortDefinition="Codes that identify this medication", formalDefinition="A code (or set of codes) that specify this medication, or a textual description if no code is available. Usage note: This could be a standard medication code such as a code from RxNorm, SNOMED CT, IDMP etc. It could also be a national or local formulary code, optionally with translations to other code systems." ) 766 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-codes") 767 protected CodeableConcept code; 768 769 /** 770 * A code to indicate if the medication is in active use. 771 */ 772 @Child(name = "status", type = {CodeType.class}, order=2, min=0, max=1, modifier=true, summary=true) 773 @Description(shortDefinition="active | inactive | entered-in-error", formalDefinition="A code to indicate if the medication is in active use." ) 774 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-status") 775 protected Enumeration<MedicationStatusCodes> status; 776 777 /** 778 * The company or other legal entity that has authorization, from the appropriate drug regulatory authority, to market a medicine in one or more jurisdictions. Typically abbreviated MAH.Note: The MAH may manufacture the product and may also contract the manufacturing of the product to one or more companies (organizations). 779 */ 780 @Child(name = "marketingAuthorizationHolder", type = {Organization.class}, order=3, min=0, max=1, modifier=false, summary=true) 781 @Description(shortDefinition="Organization that has authorization to market medication", formalDefinition="The company or other legal entity that has authorization, from the appropriate drug regulatory authority, to market a medicine in one or more jurisdictions. Typically abbreviated MAH.Note: The MAH may manufacture the product and may also contract the manufacturing of the product to one or more companies (organizations)." ) 782 protected Reference marketingAuthorizationHolder; 783 784 /** 785 * Describes the form of the item. Powder; tablets; capsule. 786 */ 787 @Child(name = "doseForm", type = {CodeableConcept.class}, order=4, min=0, max=1, modifier=false, summary=false) 788 @Description(shortDefinition="powder | tablets | capsule +", formalDefinition="Describes the form of the item. Powder; tablets; capsule." ) 789 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-form-codes") 790 protected CodeableConcept doseForm; 791 792 /** 793 * When the specified product code does not infer a package size, this is the specific amount of drug in the product. For example, when specifying a product that has the same strength (For example, Insulin glargine 100 unit per mL solution for injection), this attribute provides additional clarification of the package amount (For example, 3 mL, 10mL, etc.). 794 */ 795 @Child(name = "totalVolume", type = {Quantity.class}, order=5, min=0, max=1, modifier=false, summary=true) 796 @Description(shortDefinition="When the specified product code does not infer a package size, this is the specific amount of drug in the product", formalDefinition="When the specified product code does not infer a package size, this is the specific amount of drug in the product. For example, when specifying a product that has the same strength (For example, Insulin glargine 100 unit per mL solution for injection), this attribute provides additional clarification of the package amount (For example, 3 mL, 10mL, etc.)." ) 797 protected Quantity totalVolume; 798 799 /** 800 * Identifies a particular constituent of interest in the product. 801 */ 802 @Child(name = "ingredient", type = {}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 803 @Description(shortDefinition="Active or inactive ingredient", formalDefinition="Identifies a particular constituent of interest in the product." ) 804 protected List<MedicationIngredientComponent> ingredient; 805 806 /** 807 * Information that only applies to packages (not products). 808 */ 809 @Child(name = "batch", type = {}, order=7, min=0, max=1, modifier=false, summary=false) 810 @Description(shortDefinition="Details about packaged medications", formalDefinition="Information that only applies to packages (not products)." ) 811 protected MedicationBatchComponent batch; 812 813 /** 814 * A reference to a knowledge resource that provides more information about this medication. 815 */ 816 @Child(name = "definition", type = {MedicationKnowledge.class}, order=8, min=0, max=1, modifier=false, summary=false) 817 @Description(shortDefinition="Knowledge about this medication", formalDefinition="A reference to a knowledge resource that provides more information about this medication." ) 818 protected Reference definition; 819 820 private static final long serialVersionUID = 603813239L; 821 822 /** 823 * Constructor 824 */ 825 public Medication() { 826 super(); 827 } 828 829 /** 830 * @return {@link #identifier} (Business identifier for this medication.) 831 */ 832 public List<Identifier> getIdentifier() { 833 if (this.identifier == null) 834 this.identifier = new ArrayList<Identifier>(); 835 return this.identifier; 836 } 837 838 /** 839 * @return Returns a reference to <code>this</code> for easy method chaining 840 */ 841 public Medication setIdentifier(List<Identifier> theIdentifier) { 842 this.identifier = theIdentifier; 843 return this; 844 } 845 846 public boolean hasIdentifier() { 847 if (this.identifier == null) 848 return false; 849 for (Identifier item : this.identifier) 850 if (!item.isEmpty()) 851 return true; 852 return false; 853 } 854 855 public Identifier addIdentifier() { //3 856 Identifier t = new Identifier(); 857 if (this.identifier == null) 858 this.identifier = new ArrayList<Identifier>(); 859 this.identifier.add(t); 860 return t; 861 } 862 863 public Medication addIdentifier(Identifier t) { //3 864 if (t == null) 865 return this; 866 if (this.identifier == null) 867 this.identifier = new ArrayList<Identifier>(); 868 this.identifier.add(t); 869 return this; 870 } 871 872 /** 873 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 874 */ 875 public Identifier getIdentifierFirstRep() { 876 if (getIdentifier().isEmpty()) { 877 addIdentifier(); 878 } 879 return getIdentifier().get(0); 880 } 881 882 /** 883 * @return {@link #code} (A code (or set of codes) that specify this medication, or a textual description if no code is available. Usage note: This could be a standard medication code such as a code from RxNorm, SNOMED CT, IDMP etc. It could also be a national or local formulary code, optionally with translations to other code systems.) 884 */ 885 public CodeableConcept getCode() { 886 if (this.code == null) 887 if (Configuration.errorOnAutoCreate()) 888 throw new Error("Attempt to auto-create Medication.code"); 889 else if (Configuration.doAutoCreate()) 890 this.code = new CodeableConcept(); // cc 891 return this.code; 892 } 893 894 public boolean hasCode() { 895 return this.code != null && !this.code.isEmpty(); 896 } 897 898 /** 899 * @param value {@link #code} (A code (or set of codes) that specify this medication, or a textual description if no code is available. Usage note: This could be a standard medication code such as a code from RxNorm, SNOMED CT, IDMP etc. It could also be a national or local formulary code, optionally with translations to other code systems.) 900 */ 901 public Medication setCode(CodeableConcept value) { 902 this.code = value; 903 return this; 904 } 905 906 /** 907 * @return {@link #status} (A code to indicate if the medication is in active use.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 908 */ 909 public Enumeration<MedicationStatusCodes> getStatusElement() { 910 if (this.status == null) 911 if (Configuration.errorOnAutoCreate()) 912 throw new Error("Attempt to auto-create Medication.status"); 913 else if (Configuration.doAutoCreate()) 914 this.status = new Enumeration<MedicationStatusCodes>(new MedicationStatusCodesEnumFactory()); // bb 915 return this.status; 916 } 917 918 public boolean hasStatusElement() { 919 return this.status != null && !this.status.isEmpty(); 920 } 921 922 public boolean hasStatus() { 923 return this.status != null && !this.status.isEmpty(); 924 } 925 926 /** 927 * @param value {@link #status} (A code to indicate if the medication is in active use.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 928 */ 929 public Medication setStatusElement(Enumeration<MedicationStatusCodes> value) { 930 this.status = value; 931 return this; 932 } 933 934 /** 935 * @return A code to indicate if the medication is in active use. 936 */ 937 public MedicationStatusCodes getStatus() { 938 return this.status == null ? null : this.status.getValue(); 939 } 940 941 /** 942 * @param value A code to indicate if the medication is in active use. 943 */ 944 public Medication setStatus(MedicationStatusCodes value) { 945 if (value == null) 946 this.status = null; 947 else { 948 if (this.status == null) 949 this.status = new Enumeration<MedicationStatusCodes>(new MedicationStatusCodesEnumFactory()); 950 this.status.setValue(value); 951 } 952 return this; 953 } 954 955 /** 956 * @return {@link #marketingAuthorizationHolder} (The company or other legal entity that has authorization, from the appropriate drug regulatory authority, to market a medicine in one or more jurisdictions. Typically abbreviated MAH.Note: The MAH may manufacture the product and may also contract the manufacturing of the product to one or more companies (organizations).) 957 */ 958 public Reference getMarketingAuthorizationHolder() { 959 if (this.marketingAuthorizationHolder == null) 960 if (Configuration.errorOnAutoCreate()) 961 throw new Error("Attempt to auto-create Medication.marketingAuthorizationHolder"); 962 else if (Configuration.doAutoCreate()) 963 this.marketingAuthorizationHolder = new Reference(); // cc 964 return this.marketingAuthorizationHolder; 965 } 966 967 public boolean hasMarketingAuthorizationHolder() { 968 return this.marketingAuthorizationHolder != null && !this.marketingAuthorizationHolder.isEmpty(); 969 } 970 971 /** 972 * @param value {@link #marketingAuthorizationHolder} (The company or other legal entity that has authorization, from the appropriate drug regulatory authority, to market a medicine in one or more jurisdictions. Typically abbreviated MAH.Note: The MAH may manufacture the product and may also contract the manufacturing of the product to one or more companies (organizations).) 973 */ 974 public Medication setMarketingAuthorizationHolder(Reference value) { 975 this.marketingAuthorizationHolder = value; 976 return this; 977 } 978 979 /** 980 * @return {@link #doseForm} (Describes the form of the item. Powder; tablets; capsule.) 981 */ 982 public CodeableConcept getDoseForm() { 983 if (this.doseForm == null) 984 if (Configuration.errorOnAutoCreate()) 985 throw new Error("Attempt to auto-create Medication.doseForm"); 986 else if (Configuration.doAutoCreate()) 987 this.doseForm = new CodeableConcept(); // cc 988 return this.doseForm; 989 } 990 991 public boolean hasDoseForm() { 992 return this.doseForm != null && !this.doseForm.isEmpty(); 993 } 994 995 /** 996 * @param value {@link #doseForm} (Describes the form of the item. Powder; tablets; capsule.) 997 */ 998 public Medication setDoseForm(CodeableConcept value) { 999 this.doseForm = value; 1000 return this; 1001 } 1002 1003 /** 1004 * @return {@link #totalVolume} (When the specified product code does not infer a package size, this is the specific amount of drug in the product. For example, when specifying a product that has the same strength (For example, Insulin glargine 100 unit per mL solution for injection), this attribute provides additional clarification of the package amount (For example, 3 mL, 10mL, etc.).) 1005 */ 1006 public Quantity getTotalVolume() { 1007 if (this.totalVolume == null) 1008 if (Configuration.errorOnAutoCreate()) 1009 throw new Error("Attempt to auto-create Medication.totalVolume"); 1010 else if (Configuration.doAutoCreate()) 1011 this.totalVolume = new Quantity(); // cc 1012 return this.totalVolume; 1013 } 1014 1015 public boolean hasTotalVolume() { 1016 return this.totalVolume != null && !this.totalVolume.isEmpty(); 1017 } 1018 1019 /** 1020 * @param value {@link #totalVolume} (When the specified product code does not infer a package size, this is the specific amount of drug in the product. For example, when specifying a product that has the same strength (For example, Insulin glargine 100 unit per mL solution for injection), this attribute provides additional clarification of the package amount (For example, 3 mL, 10mL, etc.).) 1021 */ 1022 public Medication setTotalVolume(Quantity value) { 1023 this.totalVolume = value; 1024 return this; 1025 } 1026 1027 /** 1028 * @return {@link #ingredient} (Identifies a particular constituent of interest in the product.) 1029 */ 1030 public List<MedicationIngredientComponent> getIngredient() { 1031 if (this.ingredient == null) 1032 this.ingredient = new ArrayList<MedicationIngredientComponent>(); 1033 return this.ingredient; 1034 } 1035 1036 /** 1037 * @return Returns a reference to <code>this</code> for easy method chaining 1038 */ 1039 public Medication setIngredient(List<MedicationIngredientComponent> theIngredient) { 1040 this.ingredient = theIngredient; 1041 return this; 1042 } 1043 1044 public boolean hasIngredient() { 1045 if (this.ingredient == null) 1046 return false; 1047 for (MedicationIngredientComponent item : this.ingredient) 1048 if (!item.isEmpty()) 1049 return true; 1050 return false; 1051 } 1052 1053 public MedicationIngredientComponent addIngredient() { //3 1054 MedicationIngredientComponent t = new MedicationIngredientComponent(); 1055 if (this.ingredient == null) 1056 this.ingredient = new ArrayList<MedicationIngredientComponent>(); 1057 this.ingredient.add(t); 1058 return t; 1059 } 1060 1061 public Medication addIngredient(MedicationIngredientComponent t) { //3 1062 if (t == null) 1063 return this; 1064 if (this.ingredient == null) 1065 this.ingredient = new ArrayList<MedicationIngredientComponent>(); 1066 this.ingredient.add(t); 1067 return this; 1068 } 1069 1070 /** 1071 * @return The first repetition of repeating field {@link #ingredient}, creating it if it does not already exist {3} 1072 */ 1073 public MedicationIngredientComponent getIngredientFirstRep() { 1074 if (getIngredient().isEmpty()) { 1075 addIngredient(); 1076 } 1077 return getIngredient().get(0); 1078 } 1079 1080 /** 1081 * @return {@link #batch} (Information that only applies to packages (not products).) 1082 */ 1083 public MedicationBatchComponent getBatch() { 1084 if (this.batch == null) 1085 if (Configuration.errorOnAutoCreate()) 1086 throw new Error("Attempt to auto-create Medication.batch"); 1087 else if (Configuration.doAutoCreate()) 1088 this.batch = new MedicationBatchComponent(); // cc 1089 return this.batch; 1090 } 1091 1092 public boolean hasBatch() { 1093 return this.batch != null && !this.batch.isEmpty(); 1094 } 1095 1096 /** 1097 * @param value {@link #batch} (Information that only applies to packages (not products).) 1098 */ 1099 public Medication setBatch(MedicationBatchComponent value) { 1100 this.batch = value; 1101 return this; 1102 } 1103 1104 /** 1105 * @return {@link #definition} (A reference to a knowledge resource that provides more information about this medication.) 1106 */ 1107 public Reference getDefinition() { 1108 if (this.definition == null) 1109 if (Configuration.errorOnAutoCreate()) 1110 throw new Error("Attempt to auto-create Medication.definition"); 1111 else if (Configuration.doAutoCreate()) 1112 this.definition = new Reference(); // cc 1113 return this.definition; 1114 } 1115 1116 public boolean hasDefinition() { 1117 return this.definition != null && !this.definition.isEmpty(); 1118 } 1119 1120 /** 1121 * @param value {@link #definition} (A reference to a knowledge resource that provides more information about this medication.) 1122 */ 1123 public Medication setDefinition(Reference value) { 1124 this.definition = value; 1125 return this; 1126 } 1127 1128 protected void listChildren(List<Property> children) { 1129 super.listChildren(children); 1130 children.add(new Property("identifier", "Identifier", "Business identifier for this medication.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1131 children.add(new Property("code", "CodeableConcept", "A code (or set of codes) that specify this medication, or a textual description if no code is available. Usage note: This could be a standard medication code such as a code from RxNorm, SNOMED CT, IDMP etc. It could also be a national or local formulary code, optionally with translations to other code systems.", 0, 1, code)); 1132 children.add(new Property("status", "code", "A code to indicate if the medication is in active use.", 0, 1, status)); 1133 children.add(new Property("marketingAuthorizationHolder", "Reference(Organization)", "The company or other legal entity that has authorization, from the appropriate drug regulatory authority, to market a medicine in one or more jurisdictions. Typically abbreviated MAH.Note: The MAH may manufacture the product and may also contract the manufacturing of the product to one or more companies (organizations).", 0, 1, marketingAuthorizationHolder)); 1134 children.add(new Property("doseForm", "CodeableConcept", "Describes the form of the item. Powder; tablets; capsule.", 0, 1, doseForm)); 1135 children.add(new Property("totalVolume", "Quantity", "When the specified product code does not infer a package size, this is the specific amount of drug in the product. For example, when specifying a product that has the same strength (For example, Insulin glargine 100 unit per mL solution for injection), this attribute provides additional clarification of the package amount (For example, 3 mL, 10mL, etc.).", 0, 1, totalVolume)); 1136 children.add(new Property("ingredient", "", "Identifies a particular constituent of interest in the product.", 0, java.lang.Integer.MAX_VALUE, ingredient)); 1137 children.add(new Property("batch", "", "Information that only applies to packages (not products).", 0, 1, batch)); 1138 children.add(new Property("definition", "Reference(MedicationKnowledge)", "A reference to a knowledge resource that provides more information about this medication.", 0, 1, definition)); 1139 } 1140 1141 @Override 1142 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1143 switch (_hash) { 1144 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifier for this medication.", 0, java.lang.Integer.MAX_VALUE, identifier); 1145 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "A code (or set of codes) that specify this medication, or a textual description if no code is available. Usage note: This could be a standard medication code such as a code from RxNorm, SNOMED CT, IDMP etc. It could also be a national or local formulary code, optionally with translations to other code systems.", 0, 1, code); 1146 case -892481550: /*status*/ return new Property("status", "code", "A code to indicate if the medication is in active use.", 0, 1, status); 1147 case -1565971585: /*marketingAuthorizationHolder*/ return new Property("marketingAuthorizationHolder", "Reference(Organization)", "The company or other legal entity that has authorization, from the appropriate drug regulatory authority, to market a medicine in one or more jurisdictions. Typically abbreviated MAH.Note: The MAH may manufacture the product and may also contract the manufacturing of the product to one or more companies (organizations).", 0, 1, marketingAuthorizationHolder); 1148 case 1303858817: /*doseForm*/ return new Property("doseForm", "CodeableConcept", "Describes the form of the item. Powder; tablets; capsule.", 0, 1, doseForm); 1149 case -654431362: /*totalVolume*/ return new Property("totalVolume", "Quantity", "When the specified product code does not infer a package size, this is the specific amount of drug in the product. For example, when specifying a product that has the same strength (For example, Insulin glargine 100 unit per mL solution for injection), this attribute provides additional clarification of the package amount (For example, 3 mL, 10mL, etc.).", 0, 1, totalVolume); 1150 case -206409263: /*ingredient*/ return new Property("ingredient", "", "Identifies a particular constituent of interest in the product.", 0, java.lang.Integer.MAX_VALUE, ingredient); 1151 case 93509434: /*batch*/ return new Property("batch", "", "Information that only applies to packages (not products).", 0, 1, batch); 1152 case -1014418093: /*definition*/ return new Property("definition", "Reference(MedicationKnowledge)", "A reference to a knowledge resource that provides more information about this medication.", 0, 1, definition); 1153 default: return super.getNamedProperty(_hash, _name, _checkValid); 1154 } 1155 1156 } 1157 1158 @Override 1159 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1160 switch (hash) { 1161 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1162 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 1163 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<MedicationStatusCodes> 1164 case -1565971585: /*marketingAuthorizationHolder*/ return this.marketingAuthorizationHolder == null ? new Base[0] : new Base[] {this.marketingAuthorizationHolder}; // Reference 1165 case 1303858817: /*doseForm*/ return this.doseForm == null ? new Base[0] : new Base[] {this.doseForm}; // CodeableConcept 1166 case -654431362: /*totalVolume*/ return this.totalVolume == null ? new Base[0] : new Base[] {this.totalVolume}; // Quantity 1167 case -206409263: /*ingredient*/ return this.ingredient == null ? new Base[0] : this.ingredient.toArray(new Base[this.ingredient.size()]); // MedicationIngredientComponent 1168 case 93509434: /*batch*/ return this.batch == null ? new Base[0] : new Base[] {this.batch}; // MedicationBatchComponent 1169 case -1014418093: /*definition*/ return this.definition == null ? new Base[0] : new Base[] {this.definition}; // Reference 1170 default: return super.getProperty(hash, name, checkValid); 1171 } 1172 1173 } 1174 1175 @Override 1176 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1177 switch (hash) { 1178 case -1618432855: // identifier 1179 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 1180 return value; 1181 case 3059181: // code 1182 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1183 return value; 1184 case -892481550: // status 1185 value = new MedicationStatusCodesEnumFactory().fromType(TypeConvertor.castToCode(value)); 1186 this.status = (Enumeration) value; // Enumeration<MedicationStatusCodes> 1187 return value; 1188 case -1565971585: // marketingAuthorizationHolder 1189 this.marketingAuthorizationHolder = TypeConvertor.castToReference(value); // Reference 1190 return value; 1191 case 1303858817: // doseForm 1192 this.doseForm = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1193 return value; 1194 case -654431362: // totalVolume 1195 this.totalVolume = TypeConvertor.castToQuantity(value); // Quantity 1196 return value; 1197 case -206409263: // ingredient 1198 this.getIngredient().add((MedicationIngredientComponent) value); // MedicationIngredientComponent 1199 return value; 1200 case 93509434: // batch 1201 this.batch = (MedicationBatchComponent) value; // MedicationBatchComponent 1202 return value; 1203 case -1014418093: // definition 1204 this.definition = TypeConvertor.castToReference(value); // Reference 1205 return value; 1206 default: return super.setProperty(hash, name, value); 1207 } 1208 1209 } 1210 1211 @Override 1212 public Base setProperty(String name, Base value) throws FHIRException { 1213 if (name.equals("identifier")) { 1214 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 1215 } else if (name.equals("code")) { 1216 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1217 } else if (name.equals("status")) { 1218 value = new MedicationStatusCodesEnumFactory().fromType(TypeConvertor.castToCode(value)); 1219 this.status = (Enumeration) value; // Enumeration<MedicationStatusCodes> 1220 } else if (name.equals("marketingAuthorizationHolder")) { 1221 this.marketingAuthorizationHolder = TypeConvertor.castToReference(value); // Reference 1222 } else if (name.equals("doseForm")) { 1223 this.doseForm = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1224 } else if (name.equals("totalVolume")) { 1225 this.totalVolume = TypeConvertor.castToQuantity(value); // Quantity 1226 } else if (name.equals("ingredient")) { 1227 this.getIngredient().add((MedicationIngredientComponent) value); 1228 } else if (name.equals("batch")) { 1229 this.batch = (MedicationBatchComponent) value; // MedicationBatchComponent 1230 } else if (name.equals("definition")) { 1231 this.definition = TypeConvertor.castToReference(value); // Reference 1232 } else 1233 return super.setProperty(name, value); 1234 return value; 1235 } 1236 1237 @Override 1238 public Base makeProperty(int hash, String name) throws FHIRException { 1239 switch (hash) { 1240 case -1618432855: return addIdentifier(); 1241 case 3059181: return getCode(); 1242 case -892481550: return getStatusElement(); 1243 case -1565971585: return getMarketingAuthorizationHolder(); 1244 case 1303858817: return getDoseForm(); 1245 case -654431362: return getTotalVolume(); 1246 case -206409263: return addIngredient(); 1247 case 93509434: return getBatch(); 1248 case -1014418093: return getDefinition(); 1249 default: return super.makeProperty(hash, name); 1250 } 1251 1252 } 1253 1254 @Override 1255 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1256 switch (hash) { 1257 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 1258 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 1259 case -892481550: /*status*/ return new String[] {"code"}; 1260 case -1565971585: /*marketingAuthorizationHolder*/ return new String[] {"Reference"}; 1261 case 1303858817: /*doseForm*/ return new String[] {"CodeableConcept"}; 1262 case -654431362: /*totalVolume*/ return new String[] {"Quantity"}; 1263 case -206409263: /*ingredient*/ return new String[] {}; 1264 case 93509434: /*batch*/ return new String[] {}; 1265 case -1014418093: /*definition*/ return new String[] {"Reference"}; 1266 default: return super.getTypesForProperty(hash, name); 1267 } 1268 1269 } 1270 1271 @Override 1272 public Base addChild(String name) throws FHIRException { 1273 if (name.equals("identifier")) { 1274 return addIdentifier(); 1275 } 1276 else if (name.equals("code")) { 1277 this.code = new CodeableConcept(); 1278 return this.code; 1279 } 1280 else if (name.equals("status")) { 1281 throw new FHIRException("Cannot call addChild on a singleton property Medication.status"); 1282 } 1283 else if (name.equals("marketingAuthorizationHolder")) { 1284 this.marketingAuthorizationHolder = new Reference(); 1285 return this.marketingAuthorizationHolder; 1286 } 1287 else if (name.equals("doseForm")) { 1288 this.doseForm = new CodeableConcept(); 1289 return this.doseForm; 1290 } 1291 else if (name.equals("totalVolume")) { 1292 this.totalVolume = new Quantity(); 1293 return this.totalVolume; 1294 } 1295 else if (name.equals("ingredient")) { 1296 return addIngredient(); 1297 } 1298 else if (name.equals("batch")) { 1299 this.batch = new MedicationBatchComponent(); 1300 return this.batch; 1301 } 1302 else if (name.equals("definition")) { 1303 this.definition = new Reference(); 1304 return this.definition; 1305 } 1306 else 1307 return super.addChild(name); 1308 } 1309 1310 public String fhirType() { 1311 return "Medication"; 1312 1313 } 1314 1315 public Medication copy() { 1316 Medication dst = new Medication(); 1317 copyValues(dst); 1318 return dst; 1319 } 1320 1321 public void copyValues(Medication dst) { 1322 super.copyValues(dst); 1323 if (identifier != null) { 1324 dst.identifier = new ArrayList<Identifier>(); 1325 for (Identifier i : identifier) 1326 dst.identifier.add(i.copy()); 1327 }; 1328 dst.code = code == null ? null : code.copy(); 1329 dst.status = status == null ? null : status.copy(); 1330 dst.marketingAuthorizationHolder = marketingAuthorizationHolder == null ? null : marketingAuthorizationHolder.copy(); 1331 dst.doseForm = doseForm == null ? null : doseForm.copy(); 1332 dst.totalVolume = totalVolume == null ? null : totalVolume.copy(); 1333 if (ingredient != null) { 1334 dst.ingredient = new ArrayList<MedicationIngredientComponent>(); 1335 for (MedicationIngredientComponent i : ingredient) 1336 dst.ingredient.add(i.copy()); 1337 }; 1338 dst.batch = batch == null ? null : batch.copy(); 1339 dst.definition = definition == null ? null : definition.copy(); 1340 } 1341 1342 protected Medication typedCopy() { 1343 return copy(); 1344 } 1345 1346 @Override 1347 public boolean equalsDeep(Base other_) { 1348 if (!super.equalsDeep(other_)) 1349 return false; 1350 if (!(other_ instanceof Medication)) 1351 return false; 1352 Medication o = (Medication) other_; 1353 return compareDeep(identifier, o.identifier, true) && compareDeep(code, o.code, true) && compareDeep(status, o.status, true) 1354 && compareDeep(marketingAuthorizationHolder, o.marketingAuthorizationHolder, true) && compareDeep(doseForm, o.doseForm, true) 1355 && compareDeep(totalVolume, o.totalVolume, true) && compareDeep(ingredient, o.ingredient, true) 1356 && compareDeep(batch, o.batch, true) && compareDeep(definition, o.definition, true); 1357 } 1358 1359 @Override 1360 public boolean equalsShallow(Base other_) { 1361 if (!super.equalsShallow(other_)) 1362 return false; 1363 if (!(other_ instanceof Medication)) 1364 return false; 1365 Medication o = (Medication) other_; 1366 return compareValues(status, o.status, true); 1367 } 1368 1369 public boolean isEmpty() { 1370 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, code, status 1371 , marketingAuthorizationHolder, doseForm, totalVolume, ingredient, batch, definition 1372 ); 1373 } 1374 1375 @Override 1376 public ResourceType getResourceType() { 1377 return ResourceType.Medication; 1378 } 1379 1380 /** 1381 * Search parameter: <b>expiration-date</b> 1382 * <p> 1383 * Description: <b>Returns medications in a batch with this expiration date</b><br> 1384 * Type: <b>date</b><br> 1385 * Path: <b>Medication.batch.expirationDate</b><br> 1386 * </p> 1387 */ 1388 @SearchParamDefinition(name="expiration-date", path="Medication.batch.expirationDate", description="Returns medications in a batch with this expiration date", type="date" ) 1389 public static final String SP_EXPIRATION_DATE = "expiration-date"; 1390 /** 1391 * <b>Fluent Client</b> search parameter constant for <b>expiration-date</b> 1392 * <p> 1393 * Description: <b>Returns medications in a batch with this expiration date</b><br> 1394 * Type: <b>date</b><br> 1395 * Path: <b>Medication.batch.expirationDate</b><br> 1396 * </p> 1397 */ 1398 public static final ca.uhn.fhir.rest.gclient.DateClientParam EXPIRATION_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_EXPIRATION_DATE); 1399 1400 /** 1401 * Search parameter: <b>form</b> 1402 * <p> 1403 * Description: <b>Returns medications for a specific dose form</b><br> 1404 * Type: <b>token</b><br> 1405 * Path: <b>null</b><br> 1406 * </p> 1407 */ 1408 @SearchParamDefinition(name="form", path="", description="Returns medications for a specific dose form", type="token" ) 1409 public static final String SP_FORM = "form"; 1410 /** 1411 * <b>Fluent Client</b> search parameter constant for <b>form</b> 1412 * <p> 1413 * Description: <b>Returns medications for a specific dose form</b><br> 1414 * Type: <b>token</b><br> 1415 * Path: <b>null</b><br> 1416 * </p> 1417 */ 1418 public static final ca.uhn.fhir.rest.gclient.TokenClientParam FORM = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_FORM); 1419 1420 /** 1421 * Search parameter: <b>ingredient-code</b> 1422 * <p> 1423 * Description: <b>Returns medications for this ingredient code</b><br> 1424 * Type: <b>token</b><br> 1425 * Path: <b>Medication.ingredient.item.concept</b><br> 1426 * </p> 1427 */ 1428 @SearchParamDefinition(name="ingredient-code", path="Medication.ingredient.item.concept", description="Returns medications for this ingredient code", type="token" ) 1429 public static final String SP_INGREDIENT_CODE = "ingredient-code"; 1430 /** 1431 * <b>Fluent Client</b> search parameter constant for <b>ingredient-code</b> 1432 * <p> 1433 * Description: <b>Returns medications for this ingredient code</b><br> 1434 * Type: <b>token</b><br> 1435 * Path: <b>Medication.ingredient.item.concept</b><br> 1436 * </p> 1437 */ 1438 public static final ca.uhn.fhir.rest.gclient.TokenClientParam INGREDIENT_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_INGREDIENT_CODE); 1439 1440 /** 1441 * Search parameter: <b>ingredient</b> 1442 * <p> 1443 * Description: <b>Returns medications for this ingredient reference</b><br> 1444 * Type: <b>reference</b><br> 1445 * Path: <b>Medication.ingredient.item.reference</b><br> 1446 * </p> 1447 */ 1448 @SearchParamDefinition(name="ingredient", path="Medication.ingredient.item.reference", description="Returns medications for this ingredient reference", type="reference", target={Medication.class, Substance.class } ) 1449 public static final String SP_INGREDIENT = "ingredient"; 1450 /** 1451 * <b>Fluent Client</b> search parameter constant for <b>ingredient</b> 1452 * <p> 1453 * Description: <b>Returns medications for this ingredient reference</b><br> 1454 * Type: <b>reference</b><br> 1455 * Path: <b>Medication.ingredient.item.reference</b><br> 1456 * </p> 1457 */ 1458 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam INGREDIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_INGREDIENT); 1459 1460/** 1461 * Constant for fluent queries to be used to add include statements. Specifies 1462 * the path value of "<b>Medication:ingredient</b>". 1463 */ 1464 public static final ca.uhn.fhir.model.api.Include INCLUDE_INGREDIENT = new ca.uhn.fhir.model.api.Include("Medication:ingredient").toLocked(); 1465 1466 /** 1467 * Search parameter: <b>lot-number</b> 1468 * <p> 1469 * Description: <b>Returns medications in a batch with this lot number</b><br> 1470 * Type: <b>token</b><br> 1471 * Path: <b>Medication.batch.lotNumber</b><br> 1472 * </p> 1473 */ 1474 @SearchParamDefinition(name="lot-number", path="Medication.batch.lotNumber", description="Returns medications in a batch with this lot number", type="token" ) 1475 public static final String SP_LOT_NUMBER = "lot-number"; 1476 /** 1477 * <b>Fluent Client</b> search parameter constant for <b>lot-number</b> 1478 * <p> 1479 * Description: <b>Returns medications in a batch with this lot number</b><br> 1480 * Type: <b>token</b><br> 1481 * Path: <b>Medication.batch.lotNumber</b><br> 1482 * </p> 1483 */ 1484 public static final ca.uhn.fhir.rest.gclient.TokenClientParam LOT_NUMBER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_LOT_NUMBER); 1485 1486 /** 1487 * Search parameter: <b>marketingauthorizationholder</b> 1488 * <p> 1489 * Description: <b>Returns medications made or sold for this marketing authorization holder</b><br> 1490 * Type: <b>reference</b><br> 1491 * Path: <b>Medication.marketingAuthorizationHolder</b><br> 1492 * </p> 1493 */ 1494 @SearchParamDefinition(name="marketingauthorizationholder", path="Medication.marketingAuthorizationHolder", description="Returns medications made or sold for this marketing authorization holder", type="reference", target={Organization.class } ) 1495 public static final String SP_MARKETINGAUTHORIZATIONHOLDER = "marketingauthorizationholder"; 1496 /** 1497 * <b>Fluent Client</b> search parameter constant for <b>marketingauthorizationholder</b> 1498 * <p> 1499 * Description: <b>Returns medications made or sold for this marketing authorization holder</b><br> 1500 * Type: <b>reference</b><br> 1501 * Path: <b>Medication.marketingAuthorizationHolder</b><br> 1502 * </p> 1503 */ 1504 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam MARKETINGAUTHORIZATIONHOLDER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_MARKETINGAUTHORIZATIONHOLDER); 1505 1506/** 1507 * Constant for fluent queries to be used to add include statements. Specifies 1508 * the path value of "<b>Medication:marketingauthorizationholder</b>". 1509 */ 1510 public static final ca.uhn.fhir.model.api.Include INCLUDE_MARKETINGAUTHORIZATIONHOLDER = new ca.uhn.fhir.model.api.Include("Medication:marketingauthorizationholder").toLocked(); 1511 1512 /** 1513 * Search parameter: <b>serial-number</b> 1514 * <p> 1515 * Description: <b>Returns medications in a batch with this lot number</b><br> 1516 * Type: <b>token</b><br> 1517 * Path: <b>Medication.identifier</b><br> 1518 * </p> 1519 */ 1520 @SearchParamDefinition(name="serial-number", path="Medication.identifier", description="Returns medications in a batch with this lot number", type="token" ) 1521 public static final String SP_SERIAL_NUMBER = "serial-number"; 1522 /** 1523 * <b>Fluent Client</b> search parameter constant for <b>serial-number</b> 1524 * <p> 1525 * Description: <b>Returns medications in a batch with this lot number</b><br> 1526 * Type: <b>token</b><br> 1527 * Path: <b>Medication.identifier</b><br> 1528 * </p> 1529 */ 1530 public static final ca.uhn.fhir.rest.gclient.TokenClientParam SERIAL_NUMBER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_SERIAL_NUMBER); 1531 1532 /** 1533 * Search parameter: <b>status</b> 1534 * <p> 1535 * Description: <b>Returns medications for this status</b><br> 1536 * Type: <b>token</b><br> 1537 * Path: <b>Medication.status</b><br> 1538 * </p> 1539 */ 1540 @SearchParamDefinition(name="status", path="Medication.status", description="Returns medications for this status", type="token" ) 1541 public static final String SP_STATUS = "status"; 1542 /** 1543 * <b>Fluent Client</b> search parameter constant for <b>status</b> 1544 * <p> 1545 * Description: <b>Returns medications for this status</b><br> 1546 * Type: <b>token</b><br> 1547 * Path: <b>Medication.status</b><br> 1548 * </p> 1549 */ 1550 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 1551 1552 /** 1553 * Search parameter: <b>code</b> 1554 * <p> 1555 * Description: <b>Multiple Resources: 1556 1557* [AdverseEvent](adverseevent.html): Event or incident that occurred or was averted 1558* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance 1559* [AuditEvent](auditevent.html): More specific code for the event 1560* [Basic](basic.html): Kind of Resource 1561* [ChargeItem](chargeitem.html): A code that identifies the charge, like a billing code 1562* [Condition](condition.html): Code for the condition 1563* [DetectedIssue](detectedissue.html): Issue Type, e.g. drug-drug, duplicate therapy, etc. 1564* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered 1565* [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 1566* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code 1567* [ImagingSelection](imagingselection.html): The imaging selection status 1568* [List](list.html): What the purpose of this list is 1569* [Medication](medication.html): Returns medications for a specific code 1570* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code 1571* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code 1572* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code 1573* [MedicationStatement](medicationstatement.html): Return statements of this medication code 1574* [NutritionIntake](nutritionintake.html): Returns statements of this code of NutritionIntake 1575* [Observation](observation.html): The code of the observation type 1576* [Procedure](procedure.html): A code to identify a procedure 1577* [RequestOrchestration](requestorchestration.html): The code of the request orchestration 1578* [Task](task.html): Search by task code 1579</b><br> 1580 * Type: <b>token</b><br> 1581 * 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> 1582 * </p> 1583 */ 1584 @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" ) 1585 public static final String SP_CODE = "code"; 1586 /** 1587 * <b>Fluent Client</b> search parameter constant for <b>code</b> 1588 * <p> 1589 * Description: <b>Multiple Resources: 1590 1591* [AdverseEvent](adverseevent.html): Event or incident that occurred or was averted 1592* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance 1593* [AuditEvent](auditevent.html): More specific code for the event 1594* [Basic](basic.html): Kind of Resource 1595* [ChargeItem](chargeitem.html): A code that identifies the charge, like a billing code 1596* [Condition](condition.html): Code for the condition 1597* [DetectedIssue](detectedissue.html): Issue Type, e.g. drug-drug, duplicate therapy, etc. 1598* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered 1599* [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 1600* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code 1601* [ImagingSelection](imagingselection.html): The imaging selection status 1602* [List](list.html): What the purpose of this list is 1603* [Medication](medication.html): Returns medications for a specific code 1604* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code 1605* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code 1606* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code 1607* [MedicationStatement](medicationstatement.html): Return statements of this medication code 1608* [NutritionIntake](nutritionintake.html): Returns statements of this code of NutritionIntake 1609* [Observation](observation.html): The code of the observation type 1610* [Procedure](procedure.html): A code to identify a procedure 1611* [RequestOrchestration](requestorchestration.html): The code of the request orchestration 1612* [Task](task.html): Search by task code 1613</b><br> 1614 * Type: <b>token</b><br> 1615 * 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> 1616 * </p> 1617 */ 1618 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); 1619 1620 /** 1621 * Search parameter: <b>identifier</b> 1622 * <p> 1623 * Description: <b>Multiple Resources: 1624 1625* [Account](account.html): Account number 1626* [AdverseEvent](adverseevent.html): Business identifier for the event 1627* [AllergyIntolerance](allergyintolerance.html): External ids for this item 1628* [Appointment](appointment.html): An Identifier of the Appointment 1629* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 1630* [Basic](basic.html): Business identifier 1631* [BodyStructure](bodystructure.html): Bodystructure identifier 1632* [CarePlan](careplan.html): External Ids for this plan 1633* [CareTeam](careteam.html): External Ids for this team 1634* [ChargeItem](chargeitem.html): Business Identifier for item 1635* [Claim](claim.html): The primary identifier of the financial resource 1636* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 1637* [ClinicalImpression](clinicalimpression.html): Business identifier 1638* [Communication](communication.html): Unique identifier 1639* [CommunicationRequest](communicationrequest.html): Unique identifier 1640* [Composition](composition.html): Version-independent identifier for the Composition 1641* [Condition](condition.html): A unique identifier of the condition record 1642* [Consent](consent.html): Identifier for this record (external references) 1643* [Contract](contract.html): The identity of the contract 1644* [Coverage](coverage.html): The primary identifier of the insured and the coverage 1645* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 1646* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 1647* [DetectedIssue](detectedissue.html): Unique id for the detected issue 1648* [DeviceRequest](devicerequest.html): Business identifier for request/order 1649* [DeviceUsage](deviceusage.html): Search by identifier 1650* [DiagnosticReport](diagnosticreport.html): An identifier for the report 1651* [DocumentReference](documentreference.html): Identifier of the attachment binary 1652* [Encounter](encounter.html): Identifier(s) by which this encounter is known 1653* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 1654* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 1655* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 1656* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 1657* [Flag](flag.html): Business identifier 1658* [Goal](goal.html): External Ids for this goal 1659* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 1660* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 1661* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 1662* [Immunization](immunization.html): Business identifier 1663* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 1664* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 1665* [Invoice](invoice.html): Business Identifier for item 1666* [List](list.html): Business identifier 1667* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 1668* [Medication](medication.html): Returns medications with this external identifier 1669* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 1670* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 1671* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 1672* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 1673* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 1674* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 1675* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 1676* [Observation](observation.html): The unique id for a particular observation 1677* [Person](person.html): A person Identifier 1678* [Procedure](procedure.html): A unique identifier for a procedure 1679* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 1680* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 1681* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 1682* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 1683* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 1684* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 1685* [Specimen](specimen.html): The unique identifier associated with the specimen 1686* [SupplyDelivery](supplydelivery.html): External identifier 1687* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 1688* [Task](task.html): Search for a task instance by its business identifier 1689* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 1690</b><br> 1691 * Type: <b>token</b><br> 1692 * 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> 1693 * </p> 1694 */ 1695 @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" ) 1696 public static final String SP_IDENTIFIER = "identifier"; 1697 /** 1698 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1699 * <p> 1700 * Description: <b>Multiple Resources: 1701 1702* [Account](account.html): Account number 1703* [AdverseEvent](adverseevent.html): Business identifier for the event 1704* [AllergyIntolerance](allergyintolerance.html): External ids for this item 1705* [Appointment](appointment.html): An Identifier of the Appointment 1706* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 1707* [Basic](basic.html): Business identifier 1708* [BodyStructure](bodystructure.html): Bodystructure identifier 1709* [CarePlan](careplan.html): External Ids for this plan 1710* [CareTeam](careteam.html): External Ids for this team 1711* [ChargeItem](chargeitem.html): Business Identifier for item 1712* [Claim](claim.html): The primary identifier of the financial resource 1713* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 1714* [ClinicalImpression](clinicalimpression.html): Business identifier 1715* [Communication](communication.html): Unique identifier 1716* [CommunicationRequest](communicationrequest.html): Unique identifier 1717* [Composition](composition.html): Version-independent identifier for the Composition 1718* [Condition](condition.html): A unique identifier of the condition record 1719* [Consent](consent.html): Identifier for this record (external references) 1720* [Contract](contract.html): The identity of the contract 1721* [Coverage](coverage.html): The primary identifier of the insured and the coverage 1722* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 1723* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 1724* [DetectedIssue](detectedissue.html): Unique id for the detected issue 1725* [DeviceRequest](devicerequest.html): Business identifier for request/order 1726* [DeviceUsage](deviceusage.html): Search by identifier 1727* [DiagnosticReport](diagnosticreport.html): An identifier for the report 1728* [DocumentReference](documentreference.html): Identifier of the attachment binary 1729* [Encounter](encounter.html): Identifier(s) by which this encounter is known 1730* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 1731* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 1732* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 1733* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 1734* [Flag](flag.html): Business identifier 1735* [Goal](goal.html): External Ids for this goal 1736* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 1737* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 1738* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 1739* [Immunization](immunization.html): Business identifier 1740* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 1741* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 1742* [Invoice](invoice.html): Business Identifier for item 1743* [List](list.html): Business identifier 1744* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 1745* [Medication](medication.html): Returns medications with this external identifier 1746* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 1747* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 1748* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 1749* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 1750* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 1751* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 1752* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 1753* [Observation](observation.html): The unique id for a particular observation 1754* [Person](person.html): A person Identifier 1755* [Procedure](procedure.html): A unique identifier for a procedure 1756* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 1757* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 1758* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 1759* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 1760* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 1761* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 1762* [Specimen](specimen.html): The unique identifier associated with the specimen 1763* [SupplyDelivery](supplydelivery.html): External identifier 1764* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 1765* [Task](task.html): Search for a task instance by its business identifier 1766* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 1767</b><br> 1768 * Type: <b>token</b><br> 1769 * 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> 1770 * </p> 1771 */ 1772 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1773 1774 1775} 1776