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.r5.model.Enumerations.*; 038import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 039import org.hl7.fhir.exceptions.FHIRException; 040import org.hl7.fhir.instance.model.api.ICompositeType; 041import ca.uhn.fhir.model.api.annotation.ResourceDef; 042import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 043import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 044import ca.uhn.fhir.model.api.annotation.Child; 045import ca.uhn.fhir.model.api.annotation.ChildOrder; 046import ca.uhn.fhir.model.api.annotation.Description; 047import ca.uhn.fhir.model.api.annotation.Block; 048 049import org.hl7.fhir.utilities.Utilities; 050/** 051 * Record details about an anatomical structure. This resource may be used when a coded concept does not provide the necessary detail needed for the use case. 052 */ 053@ResourceDef(name="BodyStructure", profile="http://hl7.org/fhir/StructureDefinition/BodyStructure") 054public class BodyStructure extends DomainResource { 055 056 @Block() 057 public static class BodyStructureIncludedStructureComponent extends BackboneElement implements IBaseBackboneElement { 058 /** 059 * Code that represents the included structure. 060 */ 061 @Child(name = "structure", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) 062 @Description(shortDefinition="Code that represents the included structure", formalDefinition="Code that represents the included structure." ) 063 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/body-site") 064 protected CodeableConcept structure; 065 066 /** 067 * Code that represents the included structure laterality. 068 */ 069 @Child(name = "laterality", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=false) 070 @Description(shortDefinition="Code that represents the included structure laterality", formalDefinition="Code that represents the included structure laterality." ) 071 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/bodystructure-relative-location") 072 protected CodeableConcept laterality; 073 074 /** 075 * Body locations in relation to a specific body landmark (tatoo, scar, other body structure). 076 */ 077 @Child(name = "bodyLandmarkOrientation", type = {}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 078 @Description(shortDefinition="Landmark relative location", formalDefinition="Body locations in relation to a specific body landmark (tatoo, scar, other body structure)." ) 079 protected List<BodyStructureIncludedStructureBodyLandmarkOrientationComponent> bodyLandmarkOrientation; 080 081 /** 082 * XY or XYZ-coordinate orientation for structure. 083 */ 084 @Child(name = "spatialReference", type = {ImagingSelection.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 085 @Description(shortDefinition="Cartesian reference for structure", formalDefinition="XY or XYZ-coordinate orientation for structure." ) 086 protected List<Reference> spatialReference; 087 088 /** 089 * Code that represents the included structure qualifier. 090 */ 091 @Child(name = "qualifier", type = {CodeableConcept.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 092 @Description(shortDefinition="Code that represents the included structure qualifier", formalDefinition="Code that represents the included structure qualifier." ) 093 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/bodystructure-relative-location") 094 protected List<CodeableConcept> qualifier; 095 096 private static final long serialVersionUID = -1341852782L; 097 098 /** 099 * Constructor 100 */ 101 public BodyStructureIncludedStructureComponent() { 102 super(); 103 } 104 105 /** 106 * Constructor 107 */ 108 public BodyStructureIncludedStructureComponent(CodeableConcept structure) { 109 super(); 110 this.setStructure(structure); 111 } 112 113 /** 114 * @return {@link #structure} (Code that represents the included structure.) 115 */ 116 public CodeableConcept getStructure() { 117 if (this.structure == null) 118 if (Configuration.errorOnAutoCreate()) 119 throw new Error("Attempt to auto-create BodyStructureIncludedStructureComponent.structure"); 120 else if (Configuration.doAutoCreate()) 121 this.structure = new CodeableConcept(); // cc 122 return this.structure; 123 } 124 125 public boolean hasStructure() { 126 return this.structure != null && !this.structure.isEmpty(); 127 } 128 129 /** 130 * @param value {@link #structure} (Code that represents the included structure.) 131 */ 132 public BodyStructureIncludedStructureComponent setStructure(CodeableConcept value) { 133 this.structure = value; 134 return this; 135 } 136 137 /** 138 * @return {@link #laterality} (Code that represents the included structure laterality.) 139 */ 140 public CodeableConcept getLaterality() { 141 if (this.laterality == null) 142 if (Configuration.errorOnAutoCreate()) 143 throw new Error("Attempt to auto-create BodyStructureIncludedStructureComponent.laterality"); 144 else if (Configuration.doAutoCreate()) 145 this.laterality = new CodeableConcept(); // cc 146 return this.laterality; 147 } 148 149 public boolean hasLaterality() { 150 return this.laterality != null && !this.laterality.isEmpty(); 151 } 152 153 /** 154 * @param value {@link #laterality} (Code that represents the included structure laterality.) 155 */ 156 public BodyStructureIncludedStructureComponent setLaterality(CodeableConcept value) { 157 this.laterality = value; 158 return this; 159 } 160 161 /** 162 * @return {@link #bodyLandmarkOrientation} (Body locations in relation to a specific body landmark (tatoo, scar, other body structure).) 163 */ 164 public List<BodyStructureIncludedStructureBodyLandmarkOrientationComponent> getBodyLandmarkOrientation() { 165 if (this.bodyLandmarkOrientation == null) 166 this.bodyLandmarkOrientation = new ArrayList<BodyStructureIncludedStructureBodyLandmarkOrientationComponent>(); 167 return this.bodyLandmarkOrientation; 168 } 169 170 /** 171 * @return Returns a reference to <code>this</code> for easy method chaining 172 */ 173 public BodyStructureIncludedStructureComponent setBodyLandmarkOrientation(List<BodyStructureIncludedStructureBodyLandmarkOrientationComponent> theBodyLandmarkOrientation) { 174 this.bodyLandmarkOrientation = theBodyLandmarkOrientation; 175 return this; 176 } 177 178 public boolean hasBodyLandmarkOrientation() { 179 if (this.bodyLandmarkOrientation == null) 180 return false; 181 for (BodyStructureIncludedStructureBodyLandmarkOrientationComponent item : this.bodyLandmarkOrientation) 182 if (!item.isEmpty()) 183 return true; 184 return false; 185 } 186 187 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent addBodyLandmarkOrientation() { //3 188 BodyStructureIncludedStructureBodyLandmarkOrientationComponent t = new BodyStructureIncludedStructureBodyLandmarkOrientationComponent(); 189 if (this.bodyLandmarkOrientation == null) 190 this.bodyLandmarkOrientation = new ArrayList<BodyStructureIncludedStructureBodyLandmarkOrientationComponent>(); 191 this.bodyLandmarkOrientation.add(t); 192 return t; 193 } 194 195 public BodyStructureIncludedStructureComponent addBodyLandmarkOrientation(BodyStructureIncludedStructureBodyLandmarkOrientationComponent t) { //3 196 if (t == null) 197 return this; 198 if (this.bodyLandmarkOrientation == null) 199 this.bodyLandmarkOrientation = new ArrayList<BodyStructureIncludedStructureBodyLandmarkOrientationComponent>(); 200 this.bodyLandmarkOrientation.add(t); 201 return this; 202 } 203 204 /** 205 * @return The first repetition of repeating field {@link #bodyLandmarkOrientation}, creating it if it does not already exist {3} 206 */ 207 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent getBodyLandmarkOrientationFirstRep() { 208 if (getBodyLandmarkOrientation().isEmpty()) { 209 addBodyLandmarkOrientation(); 210 } 211 return getBodyLandmarkOrientation().get(0); 212 } 213 214 /** 215 * @return {@link #spatialReference} (XY or XYZ-coordinate orientation for structure.) 216 */ 217 public List<Reference> getSpatialReference() { 218 if (this.spatialReference == null) 219 this.spatialReference = new ArrayList<Reference>(); 220 return this.spatialReference; 221 } 222 223 /** 224 * @return Returns a reference to <code>this</code> for easy method chaining 225 */ 226 public BodyStructureIncludedStructureComponent setSpatialReference(List<Reference> theSpatialReference) { 227 this.spatialReference = theSpatialReference; 228 return this; 229 } 230 231 public boolean hasSpatialReference() { 232 if (this.spatialReference == null) 233 return false; 234 for (Reference item : this.spatialReference) 235 if (!item.isEmpty()) 236 return true; 237 return false; 238 } 239 240 public Reference addSpatialReference() { //3 241 Reference t = new Reference(); 242 if (this.spatialReference == null) 243 this.spatialReference = new ArrayList<Reference>(); 244 this.spatialReference.add(t); 245 return t; 246 } 247 248 public BodyStructureIncludedStructureComponent addSpatialReference(Reference t) { //3 249 if (t == null) 250 return this; 251 if (this.spatialReference == null) 252 this.spatialReference = new ArrayList<Reference>(); 253 this.spatialReference.add(t); 254 return this; 255 } 256 257 /** 258 * @return The first repetition of repeating field {@link #spatialReference}, creating it if it does not already exist {3} 259 */ 260 public Reference getSpatialReferenceFirstRep() { 261 if (getSpatialReference().isEmpty()) { 262 addSpatialReference(); 263 } 264 return getSpatialReference().get(0); 265 } 266 267 /** 268 * @return {@link #qualifier} (Code that represents the included structure qualifier.) 269 */ 270 public List<CodeableConcept> getQualifier() { 271 if (this.qualifier == null) 272 this.qualifier = new ArrayList<CodeableConcept>(); 273 return this.qualifier; 274 } 275 276 /** 277 * @return Returns a reference to <code>this</code> for easy method chaining 278 */ 279 public BodyStructureIncludedStructureComponent setQualifier(List<CodeableConcept> theQualifier) { 280 this.qualifier = theQualifier; 281 return this; 282 } 283 284 public boolean hasQualifier() { 285 if (this.qualifier == null) 286 return false; 287 for (CodeableConcept item : this.qualifier) 288 if (!item.isEmpty()) 289 return true; 290 return false; 291 } 292 293 public CodeableConcept addQualifier() { //3 294 CodeableConcept t = new CodeableConcept(); 295 if (this.qualifier == null) 296 this.qualifier = new ArrayList<CodeableConcept>(); 297 this.qualifier.add(t); 298 return t; 299 } 300 301 public BodyStructureIncludedStructureComponent addQualifier(CodeableConcept t) { //3 302 if (t == null) 303 return this; 304 if (this.qualifier == null) 305 this.qualifier = new ArrayList<CodeableConcept>(); 306 this.qualifier.add(t); 307 return this; 308 } 309 310 /** 311 * @return The first repetition of repeating field {@link #qualifier}, creating it if it does not already exist {3} 312 */ 313 public CodeableConcept getQualifierFirstRep() { 314 if (getQualifier().isEmpty()) { 315 addQualifier(); 316 } 317 return getQualifier().get(0); 318 } 319 320 protected void listChildren(List<Property> children) { 321 super.listChildren(children); 322 children.add(new Property("structure", "CodeableConcept", "Code that represents the included structure.", 0, 1, structure)); 323 children.add(new Property("laterality", "CodeableConcept", "Code that represents the included structure laterality.", 0, 1, laterality)); 324 children.add(new Property("bodyLandmarkOrientation", "", "Body locations in relation to a specific body landmark (tatoo, scar, other body structure).", 0, java.lang.Integer.MAX_VALUE, bodyLandmarkOrientation)); 325 children.add(new Property("spatialReference", "Reference(ImagingSelection)", "XY or XYZ-coordinate orientation for structure.", 0, java.lang.Integer.MAX_VALUE, spatialReference)); 326 children.add(new Property("qualifier", "CodeableConcept", "Code that represents the included structure qualifier.", 0, java.lang.Integer.MAX_VALUE, qualifier)); 327 } 328 329 @Override 330 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 331 switch (_hash) { 332 case 144518515: /*structure*/ return new Property("structure", "CodeableConcept", "Code that represents the included structure.", 0, 1, structure); 333 case -170291817: /*laterality*/ return new Property("laterality", "CodeableConcept", "Code that represents the included structure laterality.", 0, 1, laterality); 334 case -994716042: /*bodyLandmarkOrientation*/ return new Property("bodyLandmarkOrientation", "", "Body locations in relation to a specific body landmark (tatoo, scar, other body structure).", 0, java.lang.Integer.MAX_VALUE, bodyLandmarkOrientation); 335 case 784017063: /*spatialReference*/ return new Property("spatialReference", "Reference(ImagingSelection)", "XY or XYZ-coordinate orientation for structure.", 0, java.lang.Integer.MAX_VALUE, spatialReference); 336 case -1247940438: /*qualifier*/ return new Property("qualifier", "CodeableConcept", "Code that represents the included structure qualifier.", 0, java.lang.Integer.MAX_VALUE, qualifier); 337 default: return super.getNamedProperty(_hash, _name, _checkValid); 338 } 339 340 } 341 342 @Override 343 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 344 switch (hash) { 345 case 144518515: /*structure*/ return this.structure == null ? new Base[0] : new Base[] {this.structure}; // CodeableConcept 346 case -170291817: /*laterality*/ return this.laterality == null ? new Base[0] : new Base[] {this.laterality}; // CodeableConcept 347 case -994716042: /*bodyLandmarkOrientation*/ return this.bodyLandmarkOrientation == null ? new Base[0] : this.bodyLandmarkOrientation.toArray(new Base[this.bodyLandmarkOrientation.size()]); // BodyStructureIncludedStructureBodyLandmarkOrientationComponent 348 case 784017063: /*spatialReference*/ return this.spatialReference == null ? new Base[0] : this.spatialReference.toArray(new Base[this.spatialReference.size()]); // Reference 349 case -1247940438: /*qualifier*/ return this.qualifier == null ? new Base[0] : this.qualifier.toArray(new Base[this.qualifier.size()]); // CodeableConcept 350 default: return super.getProperty(hash, name, checkValid); 351 } 352 353 } 354 355 @Override 356 public Base setProperty(int hash, String name, Base value) throws FHIRException { 357 switch (hash) { 358 case 144518515: // structure 359 this.structure = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 360 return value; 361 case -170291817: // laterality 362 this.laterality = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 363 return value; 364 case -994716042: // bodyLandmarkOrientation 365 this.getBodyLandmarkOrientation().add((BodyStructureIncludedStructureBodyLandmarkOrientationComponent) value); // BodyStructureIncludedStructureBodyLandmarkOrientationComponent 366 return value; 367 case 784017063: // spatialReference 368 this.getSpatialReference().add(TypeConvertor.castToReference(value)); // Reference 369 return value; 370 case -1247940438: // qualifier 371 this.getQualifier().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 372 return value; 373 default: return super.setProperty(hash, name, value); 374 } 375 376 } 377 378 @Override 379 public Base setProperty(String name, Base value) throws FHIRException { 380 if (name.equals("structure")) { 381 this.structure = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 382 } else if (name.equals("laterality")) { 383 this.laterality = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 384 } else if (name.equals("bodyLandmarkOrientation")) { 385 this.getBodyLandmarkOrientation().add((BodyStructureIncludedStructureBodyLandmarkOrientationComponent) value); 386 } else if (name.equals("spatialReference")) { 387 this.getSpatialReference().add(TypeConvertor.castToReference(value)); 388 } else if (name.equals("qualifier")) { 389 this.getQualifier().add(TypeConvertor.castToCodeableConcept(value)); 390 } else 391 return super.setProperty(name, value); 392 return value; 393 } 394 395 @Override 396 public void removeChild(String name, Base value) throws FHIRException { 397 if (name.equals("structure")) { 398 this.structure = null; 399 } else if (name.equals("laterality")) { 400 this.laterality = null; 401 } else if (name.equals("bodyLandmarkOrientation")) { 402 this.getBodyLandmarkOrientation().remove((BodyStructureIncludedStructureBodyLandmarkOrientationComponent) value); 403 } else if (name.equals("spatialReference")) { 404 this.getSpatialReference().remove(value); 405 } else if (name.equals("qualifier")) { 406 this.getQualifier().remove(value); 407 } else 408 super.removeChild(name, value); 409 410 } 411 412 @Override 413 public Base makeProperty(int hash, String name) throws FHIRException { 414 switch (hash) { 415 case 144518515: return getStructure(); 416 case -170291817: return getLaterality(); 417 case -994716042: return addBodyLandmarkOrientation(); 418 case 784017063: return addSpatialReference(); 419 case -1247940438: return addQualifier(); 420 default: return super.makeProperty(hash, name); 421 } 422 423 } 424 425 @Override 426 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 427 switch (hash) { 428 case 144518515: /*structure*/ return new String[] {"CodeableConcept"}; 429 case -170291817: /*laterality*/ return new String[] {"CodeableConcept"}; 430 case -994716042: /*bodyLandmarkOrientation*/ return new String[] {}; 431 case 784017063: /*spatialReference*/ return new String[] {"Reference"}; 432 case -1247940438: /*qualifier*/ return new String[] {"CodeableConcept"}; 433 default: return super.getTypesForProperty(hash, name); 434 } 435 436 } 437 438 @Override 439 public Base addChild(String name) throws FHIRException { 440 if (name.equals("structure")) { 441 this.structure = new CodeableConcept(); 442 return this.structure; 443 } 444 else if (name.equals("laterality")) { 445 this.laterality = new CodeableConcept(); 446 return this.laterality; 447 } 448 else if (name.equals("bodyLandmarkOrientation")) { 449 return addBodyLandmarkOrientation(); 450 } 451 else if (name.equals("spatialReference")) { 452 return addSpatialReference(); 453 } 454 else if (name.equals("qualifier")) { 455 return addQualifier(); 456 } 457 else 458 return super.addChild(name); 459 } 460 461 public BodyStructureIncludedStructureComponent copy() { 462 BodyStructureIncludedStructureComponent dst = new BodyStructureIncludedStructureComponent(); 463 copyValues(dst); 464 return dst; 465 } 466 467 public void copyValues(BodyStructureIncludedStructureComponent dst) { 468 super.copyValues(dst); 469 dst.structure = structure == null ? null : structure.copy(); 470 dst.laterality = laterality == null ? null : laterality.copy(); 471 if (bodyLandmarkOrientation != null) { 472 dst.bodyLandmarkOrientation = new ArrayList<BodyStructureIncludedStructureBodyLandmarkOrientationComponent>(); 473 for (BodyStructureIncludedStructureBodyLandmarkOrientationComponent i : bodyLandmarkOrientation) 474 dst.bodyLandmarkOrientation.add(i.copy()); 475 }; 476 if (spatialReference != null) { 477 dst.spatialReference = new ArrayList<Reference>(); 478 for (Reference i : spatialReference) 479 dst.spatialReference.add(i.copy()); 480 }; 481 if (qualifier != null) { 482 dst.qualifier = new ArrayList<CodeableConcept>(); 483 for (CodeableConcept i : qualifier) 484 dst.qualifier.add(i.copy()); 485 }; 486 } 487 488 @Override 489 public boolean equalsDeep(Base other_) { 490 if (!super.equalsDeep(other_)) 491 return false; 492 if (!(other_ instanceof BodyStructureIncludedStructureComponent)) 493 return false; 494 BodyStructureIncludedStructureComponent o = (BodyStructureIncludedStructureComponent) other_; 495 return compareDeep(structure, o.structure, true) && compareDeep(laterality, o.laterality, true) 496 && compareDeep(bodyLandmarkOrientation, o.bodyLandmarkOrientation, true) && compareDeep(spatialReference, o.spatialReference, true) 497 && compareDeep(qualifier, o.qualifier, true); 498 } 499 500 @Override 501 public boolean equalsShallow(Base other_) { 502 if (!super.equalsShallow(other_)) 503 return false; 504 if (!(other_ instanceof BodyStructureIncludedStructureComponent)) 505 return false; 506 BodyStructureIncludedStructureComponent o = (BodyStructureIncludedStructureComponent) other_; 507 return true; 508 } 509 510 public boolean isEmpty() { 511 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(structure, laterality, bodyLandmarkOrientation 512 , spatialReference, qualifier); 513 } 514 515 public String fhirType() { 516 return "BodyStructure.includedStructure"; 517 518 } 519 520 } 521 522 @Block() 523 public static class BodyStructureIncludedStructureBodyLandmarkOrientationComponent extends BackboneElement implements IBaseBackboneElement { 524 /** 525 * A description of a landmark on the body used as a reference to locate something else. 526 */ 527 @Child(name = "landmarkDescription", type = {CodeableConcept.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 528 @Description(shortDefinition="Body ]andmark description", formalDefinition="A description of a landmark on the body used as a reference to locate something else." ) 529 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/body-site") 530 protected List<CodeableConcept> landmarkDescription; 531 532 /** 533 * An description of the direction away from a landmark something is located based on a radial clock dial. 534 */ 535 @Child(name = "clockFacePosition", type = {CodeableConcept.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 536 @Description(shortDefinition="Clockface orientation", formalDefinition="An description of the direction away from a landmark something is located based on a radial clock dial." ) 537 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/bodystructure-bodylandmarkorientation-clockface-position") 538 protected List<CodeableConcept> clockFacePosition; 539 540 /** 541 * The distance in centimeters a certain observation is made from a body landmark. 542 */ 543 @Child(name = "distanceFromLandmark", type = {}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 544 @Description(shortDefinition="Landmark relative location", formalDefinition="The distance in centimeters a certain observation is made from a body landmark." ) 545 protected List<BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent> distanceFromLandmark; 546 547 /** 548 * The surface area a body location is in relation to a landmark. 549 */ 550 @Child(name = "surfaceOrientation", type = {CodeableConcept.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 551 @Description(shortDefinition="Relative landmark surface orientation", formalDefinition="The surface area a body location is in relation to a landmark." ) 552 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/bodystructure-relative-location") 553 protected List<CodeableConcept> surfaceOrientation; 554 555 private static final long serialVersionUID = -365770277L; 556 557 /** 558 * Constructor 559 */ 560 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent() { 561 super(); 562 } 563 564 /** 565 * @return {@link #landmarkDescription} (A description of a landmark on the body used as a reference to locate something else.) 566 */ 567 public List<CodeableConcept> getLandmarkDescription() { 568 if (this.landmarkDescription == null) 569 this.landmarkDescription = new ArrayList<CodeableConcept>(); 570 return this.landmarkDescription; 571 } 572 573 /** 574 * @return Returns a reference to <code>this</code> for easy method chaining 575 */ 576 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent setLandmarkDescription(List<CodeableConcept> theLandmarkDescription) { 577 this.landmarkDescription = theLandmarkDescription; 578 return this; 579 } 580 581 public boolean hasLandmarkDescription() { 582 if (this.landmarkDescription == null) 583 return false; 584 for (CodeableConcept item : this.landmarkDescription) 585 if (!item.isEmpty()) 586 return true; 587 return false; 588 } 589 590 public CodeableConcept addLandmarkDescription() { //3 591 CodeableConcept t = new CodeableConcept(); 592 if (this.landmarkDescription == null) 593 this.landmarkDescription = new ArrayList<CodeableConcept>(); 594 this.landmarkDescription.add(t); 595 return t; 596 } 597 598 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent addLandmarkDescription(CodeableConcept t) { //3 599 if (t == null) 600 return this; 601 if (this.landmarkDescription == null) 602 this.landmarkDescription = new ArrayList<CodeableConcept>(); 603 this.landmarkDescription.add(t); 604 return this; 605 } 606 607 /** 608 * @return The first repetition of repeating field {@link #landmarkDescription}, creating it if it does not already exist {3} 609 */ 610 public CodeableConcept getLandmarkDescriptionFirstRep() { 611 if (getLandmarkDescription().isEmpty()) { 612 addLandmarkDescription(); 613 } 614 return getLandmarkDescription().get(0); 615 } 616 617 /** 618 * @return {@link #clockFacePosition} (An description of the direction away from a landmark something is located based on a radial clock dial.) 619 */ 620 public List<CodeableConcept> getClockFacePosition() { 621 if (this.clockFacePosition == null) 622 this.clockFacePosition = new ArrayList<CodeableConcept>(); 623 return this.clockFacePosition; 624 } 625 626 /** 627 * @return Returns a reference to <code>this</code> for easy method chaining 628 */ 629 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent setClockFacePosition(List<CodeableConcept> theClockFacePosition) { 630 this.clockFacePosition = theClockFacePosition; 631 return this; 632 } 633 634 public boolean hasClockFacePosition() { 635 if (this.clockFacePosition == null) 636 return false; 637 for (CodeableConcept item : this.clockFacePosition) 638 if (!item.isEmpty()) 639 return true; 640 return false; 641 } 642 643 public CodeableConcept addClockFacePosition() { //3 644 CodeableConcept t = new CodeableConcept(); 645 if (this.clockFacePosition == null) 646 this.clockFacePosition = new ArrayList<CodeableConcept>(); 647 this.clockFacePosition.add(t); 648 return t; 649 } 650 651 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent addClockFacePosition(CodeableConcept t) { //3 652 if (t == null) 653 return this; 654 if (this.clockFacePosition == null) 655 this.clockFacePosition = new ArrayList<CodeableConcept>(); 656 this.clockFacePosition.add(t); 657 return this; 658 } 659 660 /** 661 * @return The first repetition of repeating field {@link #clockFacePosition}, creating it if it does not already exist {3} 662 */ 663 public CodeableConcept getClockFacePositionFirstRep() { 664 if (getClockFacePosition().isEmpty()) { 665 addClockFacePosition(); 666 } 667 return getClockFacePosition().get(0); 668 } 669 670 /** 671 * @return {@link #distanceFromLandmark} (The distance in centimeters a certain observation is made from a body landmark.) 672 */ 673 public List<BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent> getDistanceFromLandmark() { 674 if (this.distanceFromLandmark == null) 675 this.distanceFromLandmark = new ArrayList<BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent>(); 676 return this.distanceFromLandmark; 677 } 678 679 /** 680 * @return Returns a reference to <code>this</code> for easy method chaining 681 */ 682 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent setDistanceFromLandmark(List<BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent> theDistanceFromLandmark) { 683 this.distanceFromLandmark = theDistanceFromLandmark; 684 return this; 685 } 686 687 public boolean hasDistanceFromLandmark() { 688 if (this.distanceFromLandmark == null) 689 return false; 690 for (BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent item : this.distanceFromLandmark) 691 if (!item.isEmpty()) 692 return true; 693 return false; 694 } 695 696 public BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent addDistanceFromLandmark() { //3 697 BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent t = new BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent(); 698 if (this.distanceFromLandmark == null) 699 this.distanceFromLandmark = new ArrayList<BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent>(); 700 this.distanceFromLandmark.add(t); 701 return t; 702 } 703 704 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent addDistanceFromLandmark(BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent t) { //3 705 if (t == null) 706 return this; 707 if (this.distanceFromLandmark == null) 708 this.distanceFromLandmark = new ArrayList<BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent>(); 709 this.distanceFromLandmark.add(t); 710 return this; 711 } 712 713 /** 714 * @return The first repetition of repeating field {@link #distanceFromLandmark}, creating it if it does not already exist {3} 715 */ 716 public BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent getDistanceFromLandmarkFirstRep() { 717 if (getDistanceFromLandmark().isEmpty()) { 718 addDistanceFromLandmark(); 719 } 720 return getDistanceFromLandmark().get(0); 721 } 722 723 /** 724 * @return {@link #surfaceOrientation} (The surface area a body location is in relation to a landmark.) 725 */ 726 public List<CodeableConcept> getSurfaceOrientation() { 727 if (this.surfaceOrientation == null) 728 this.surfaceOrientation = new ArrayList<CodeableConcept>(); 729 return this.surfaceOrientation; 730 } 731 732 /** 733 * @return Returns a reference to <code>this</code> for easy method chaining 734 */ 735 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent setSurfaceOrientation(List<CodeableConcept> theSurfaceOrientation) { 736 this.surfaceOrientation = theSurfaceOrientation; 737 return this; 738 } 739 740 public boolean hasSurfaceOrientation() { 741 if (this.surfaceOrientation == null) 742 return false; 743 for (CodeableConcept item : this.surfaceOrientation) 744 if (!item.isEmpty()) 745 return true; 746 return false; 747 } 748 749 public CodeableConcept addSurfaceOrientation() { //3 750 CodeableConcept t = new CodeableConcept(); 751 if (this.surfaceOrientation == null) 752 this.surfaceOrientation = new ArrayList<CodeableConcept>(); 753 this.surfaceOrientation.add(t); 754 return t; 755 } 756 757 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent addSurfaceOrientation(CodeableConcept t) { //3 758 if (t == null) 759 return this; 760 if (this.surfaceOrientation == null) 761 this.surfaceOrientation = new ArrayList<CodeableConcept>(); 762 this.surfaceOrientation.add(t); 763 return this; 764 } 765 766 /** 767 * @return The first repetition of repeating field {@link #surfaceOrientation}, creating it if it does not already exist {3} 768 */ 769 public CodeableConcept getSurfaceOrientationFirstRep() { 770 if (getSurfaceOrientation().isEmpty()) { 771 addSurfaceOrientation(); 772 } 773 return getSurfaceOrientation().get(0); 774 } 775 776 protected void listChildren(List<Property> children) { 777 super.listChildren(children); 778 children.add(new Property("landmarkDescription", "CodeableConcept", "A description of a landmark on the body used as a reference to locate something else.", 0, java.lang.Integer.MAX_VALUE, landmarkDescription)); 779 children.add(new Property("clockFacePosition", "CodeableConcept", "An description of the direction away from a landmark something is located based on a radial clock dial.", 0, java.lang.Integer.MAX_VALUE, clockFacePosition)); 780 children.add(new Property("distanceFromLandmark", "", "The distance in centimeters a certain observation is made from a body landmark.", 0, java.lang.Integer.MAX_VALUE, distanceFromLandmark)); 781 children.add(new Property("surfaceOrientation", "CodeableConcept", "The surface area a body location is in relation to a landmark.", 0, java.lang.Integer.MAX_VALUE, surfaceOrientation)); 782 } 783 784 @Override 785 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 786 switch (_hash) { 787 case 1187892644: /*landmarkDescription*/ return new Property("landmarkDescription", "CodeableConcept", "A description of a landmark on the body used as a reference to locate something else.", 0, java.lang.Integer.MAX_VALUE, landmarkDescription); 788 case 133476820: /*clockFacePosition*/ return new Property("clockFacePosition", "CodeableConcept", "An description of the direction away from a landmark something is located based on a radial clock dial.", 0, java.lang.Integer.MAX_VALUE, clockFacePosition); 789 case 1350792599: /*distanceFromLandmark*/ return new Property("distanceFromLandmark", "", "The distance in centimeters a certain observation is made from a body landmark.", 0, java.lang.Integer.MAX_VALUE, distanceFromLandmark); 790 case 1408496355: /*surfaceOrientation*/ return new Property("surfaceOrientation", "CodeableConcept", "The surface area a body location is in relation to a landmark.", 0, java.lang.Integer.MAX_VALUE, surfaceOrientation); 791 default: return super.getNamedProperty(_hash, _name, _checkValid); 792 } 793 794 } 795 796 @Override 797 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 798 switch (hash) { 799 case 1187892644: /*landmarkDescription*/ return this.landmarkDescription == null ? new Base[0] : this.landmarkDescription.toArray(new Base[this.landmarkDescription.size()]); // CodeableConcept 800 case 133476820: /*clockFacePosition*/ return this.clockFacePosition == null ? new Base[0] : this.clockFacePosition.toArray(new Base[this.clockFacePosition.size()]); // CodeableConcept 801 case 1350792599: /*distanceFromLandmark*/ return this.distanceFromLandmark == null ? new Base[0] : this.distanceFromLandmark.toArray(new Base[this.distanceFromLandmark.size()]); // BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent 802 case 1408496355: /*surfaceOrientation*/ return this.surfaceOrientation == null ? new Base[0] : this.surfaceOrientation.toArray(new Base[this.surfaceOrientation.size()]); // CodeableConcept 803 default: return super.getProperty(hash, name, checkValid); 804 } 805 806 } 807 808 @Override 809 public Base setProperty(int hash, String name, Base value) throws FHIRException { 810 switch (hash) { 811 case 1187892644: // landmarkDescription 812 this.getLandmarkDescription().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 813 return value; 814 case 133476820: // clockFacePosition 815 this.getClockFacePosition().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 816 return value; 817 case 1350792599: // distanceFromLandmark 818 this.getDistanceFromLandmark().add((BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent) value); // BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent 819 return value; 820 case 1408496355: // surfaceOrientation 821 this.getSurfaceOrientation().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 822 return value; 823 default: return super.setProperty(hash, name, value); 824 } 825 826 } 827 828 @Override 829 public Base setProperty(String name, Base value) throws FHIRException { 830 if (name.equals("landmarkDescription")) { 831 this.getLandmarkDescription().add(TypeConvertor.castToCodeableConcept(value)); 832 } else if (name.equals("clockFacePosition")) { 833 this.getClockFacePosition().add(TypeConvertor.castToCodeableConcept(value)); 834 } else if (name.equals("distanceFromLandmark")) { 835 this.getDistanceFromLandmark().add((BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent) value); 836 } else if (name.equals("surfaceOrientation")) { 837 this.getSurfaceOrientation().add(TypeConvertor.castToCodeableConcept(value)); 838 } else 839 return super.setProperty(name, value); 840 return value; 841 } 842 843 @Override 844 public void removeChild(String name, Base value) throws FHIRException { 845 if (name.equals("landmarkDescription")) { 846 this.getLandmarkDescription().remove(value); 847 } else if (name.equals("clockFacePosition")) { 848 this.getClockFacePosition().remove(value); 849 } else if (name.equals("distanceFromLandmark")) { 850 this.getDistanceFromLandmark().remove((BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent) value); 851 } else if (name.equals("surfaceOrientation")) { 852 this.getSurfaceOrientation().remove(value); 853 } else 854 super.removeChild(name, value); 855 856 } 857 858 @Override 859 public Base makeProperty(int hash, String name) throws FHIRException { 860 switch (hash) { 861 case 1187892644: return addLandmarkDescription(); 862 case 133476820: return addClockFacePosition(); 863 case 1350792599: return addDistanceFromLandmark(); 864 case 1408496355: return addSurfaceOrientation(); 865 default: return super.makeProperty(hash, name); 866 } 867 868 } 869 870 @Override 871 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 872 switch (hash) { 873 case 1187892644: /*landmarkDescription*/ return new String[] {"CodeableConcept"}; 874 case 133476820: /*clockFacePosition*/ return new String[] {"CodeableConcept"}; 875 case 1350792599: /*distanceFromLandmark*/ return new String[] {}; 876 case 1408496355: /*surfaceOrientation*/ return new String[] {"CodeableConcept"}; 877 default: return super.getTypesForProperty(hash, name); 878 } 879 880 } 881 882 @Override 883 public Base addChild(String name) throws FHIRException { 884 if (name.equals("landmarkDescription")) { 885 return addLandmarkDescription(); 886 } 887 else if (name.equals("clockFacePosition")) { 888 return addClockFacePosition(); 889 } 890 else if (name.equals("distanceFromLandmark")) { 891 return addDistanceFromLandmark(); 892 } 893 else if (name.equals("surfaceOrientation")) { 894 return addSurfaceOrientation(); 895 } 896 else 897 return super.addChild(name); 898 } 899 900 public BodyStructureIncludedStructureBodyLandmarkOrientationComponent copy() { 901 BodyStructureIncludedStructureBodyLandmarkOrientationComponent dst = new BodyStructureIncludedStructureBodyLandmarkOrientationComponent(); 902 copyValues(dst); 903 return dst; 904 } 905 906 public void copyValues(BodyStructureIncludedStructureBodyLandmarkOrientationComponent dst) { 907 super.copyValues(dst); 908 if (landmarkDescription != null) { 909 dst.landmarkDescription = new ArrayList<CodeableConcept>(); 910 for (CodeableConcept i : landmarkDescription) 911 dst.landmarkDescription.add(i.copy()); 912 }; 913 if (clockFacePosition != null) { 914 dst.clockFacePosition = new ArrayList<CodeableConcept>(); 915 for (CodeableConcept i : clockFacePosition) 916 dst.clockFacePosition.add(i.copy()); 917 }; 918 if (distanceFromLandmark != null) { 919 dst.distanceFromLandmark = new ArrayList<BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent>(); 920 for (BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent i : distanceFromLandmark) 921 dst.distanceFromLandmark.add(i.copy()); 922 }; 923 if (surfaceOrientation != null) { 924 dst.surfaceOrientation = new ArrayList<CodeableConcept>(); 925 for (CodeableConcept i : surfaceOrientation) 926 dst.surfaceOrientation.add(i.copy()); 927 }; 928 } 929 930 @Override 931 public boolean equalsDeep(Base other_) { 932 if (!super.equalsDeep(other_)) 933 return false; 934 if (!(other_ instanceof BodyStructureIncludedStructureBodyLandmarkOrientationComponent)) 935 return false; 936 BodyStructureIncludedStructureBodyLandmarkOrientationComponent o = (BodyStructureIncludedStructureBodyLandmarkOrientationComponent) other_; 937 return compareDeep(landmarkDescription, o.landmarkDescription, true) && compareDeep(clockFacePosition, o.clockFacePosition, true) 938 && compareDeep(distanceFromLandmark, o.distanceFromLandmark, true) && compareDeep(surfaceOrientation, o.surfaceOrientation, true) 939 ; 940 } 941 942 @Override 943 public boolean equalsShallow(Base other_) { 944 if (!super.equalsShallow(other_)) 945 return false; 946 if (!(other_ instanceof BodyStructureIncludedStructureBodyLandmarkOrientationComponent)) 947 return false; 948 BodyStructureIncludedStructureBodyLandmarkOrientationComponent o = (BodyStructureIncludedStructureBodyLandmarkOrientationComponent) other_; 949 return true; 950 } 951 952 public boolean isEmpty() { 953 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(landmarkDescription, clockFacePosition 954 , distanceFromLandmark, surfaceOrientation); 955 } 956 957 public String fhirType() { 958 return "BodyStructure.includedStructure.bodyLandmarkOrientation"; 959 960 } 961 962 } 963 964 @Block() 965 public static class BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent extends BackboneElement implements IBaseBackboneElement { 966 /** 967 * An instrument, tool, analyzer, etc. used in the measurement. 968 */ 969 @Child(name = "device", type = {CodeableReference.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 970 @Description(shortDefinition="Measurement device", formalDefinition="An instrument, tool, analyzer, etc. used in the measurement." ) 971 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/device-type") 972 protected List<CodeableReference> device; 973 974 /** 975 * The measured distance (e.g., in cm) from a body landmark. 976 */ 977 @Child(name = "value", type = {Quantity.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 978 @Description(shortDefinition="Measured distance from body landmark", formalDefinition="The measured distance (e.g., in cm) from a body landmark." ) 979 protected List<Quantity> value; 980 981 private static final long serialVersionUID = 1883586968L; 982 983 /** 984 * Constructor 985 */ 986 public BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent() { 987 super(); 988 } 989 990 /** 991 * @return {@link #device} (An instrument, tool, analyzer, etc. used in the measurement.) 992 */ 993 public List<CodeableReference> getDevice() { 994 if (this.device == null) 995 this.device = new ArrayList<CodeableReference>(); 996 return this.device; 997 } 998 999 /** 1000 * @return Returns a reference to <code>this</code> for easy method chaining 1001 */ 1002 public BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent setDevice(List<CodeableReference> theDevice) { 1003 this.device = theDevice; 1004 return this; 1005 } 1006 1007 public boolean hasDevice() { 1008 if (this.device == null) 1009 return false; 1010 for (CodeableReference item : this.device) 1011 if (!item.isEmpty()) 1012 return true; 1013 return false; 1014 } 1015 1016 public CodeableReference addDevice() { //3 1017 CodeableReference t = new CodeableReference(); 1018 if (this.device == null) 1019 this.device = new ArrayList<CodeableReference>(); 1020 this.device.add(t); 1021 return t; 1022 } 1023 1024 public BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent addDevice(CodeableReference t) { //3 1025 if (t == null) 1026 return this; 1027 if (this.device == null) 1028 this.device = new ArrayList<CodeableReference>(); 1029 this.device.add(t); 1030 return this; 1031 } 1032 1033 /** 1034 * @return The first repetition of repeating field {@link #device}, creating it if it does not already exist {3} 1035 */ 1036 public CodeableReference getDeviceFirstRep() { 1037 if (getDevice().isEmpty()) { 1038 addDevice(); 1039 } 1040 return getDevice().get(0); 1041 } 1042 1043 /** 1044 * @return {@link #value} (The measured distance (e.g., in cm) from a body landmark.) 1045 */ 1046 public List<Quantity> getValue() { 1047 if (this.value == null) 1048 this.value = new ArrayList<Quantity>(); 1049 return this.value; 1050 } 1051 1052 /** 1053 * @return Returns a reference to <code>this</code> for easy method chaining 1054 */ 1055 public BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent setValue(List<Quantity> theValue) { 1056 this.value = theValue; 1057 return this; 1058 } 1059 1060 public boolean hasValue() { 1061 if (this.value == null) 1062 return false; 1063 for (Quantity item : this.value) 1064 if (!item.isEmpty()) 1065 return true; 1066 return false; 1067 } 1068 1069 public Quantity addValue() { //3 1070 Quantity t = new Quantity(); 1071 if (this.value == null) 1072 this.value = new ArrayList<Quantity>(); 1073 this.value.add(t); 1074 return t; 1075 } 1076 1077 public BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent addValue(Quantity t) { //3 1078 if (t == null) 1079 return this; 1080 if (this.value == null) 1081 this.value = new ArrayList<Quantity>(); 1082 this.value.add(t); 1083 return this; 1084 } 1085 1086 /** 1087 * @return The first repetition of repeating field {@link #value}, creating it if it does not already exist {3} 1088 */ 1089 public Quantity getValueFirstRep() { 1090 if (getValue().isEmpty()) { 1091 addValue(); 1092 } 1093 return getValue().get(0); 1094 } 1095 1096 protected void listChildren(List<Property> children) { 1097 super.listChildren(children); 1098 children.add(new Property("device", "CodeableReference(Device)", "An instrument, tool, analyzer, etc. used in the measurement.", 0, java.lang.Integer.MAX_VALUE, device)); 1099 children.add(new Property("value", "Quantity", "The measured distance (e.g., in cm) from a body landmark.", 0, java.lang.Integer.MAX_VALUE, value)); 1100 } 1101 1102 @Override 1103 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1104 switch (_hash) { 1105 case -1335157162: /*device*/ return new Property("device", "CodeableReference(Device)", "An instrument, tool, analyzer, etc. used in the measurement.", 0, java.lang.Integer.MAX_VALUE, device); 1106 case 111972721: /*value*/ return new Property("value", "Quantity", "The measured distance (e.g., in cm) from a body landmark.", 0, java.lang.Integer.MAX_VALUE, value); 1107 default: return super.getNamedProperty(_hash, _name, _checkValid); 1108 } 1109 1110 } 1111 1112 @Override 1113 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1114 switch (hash) { 1115 case -1335157162: /*device*/ return this.device == null ? new Base[0] : this.device.toArray(new Base[this.device.size()]); // CodeableReference 1116 case 111972721: /*value*/ return this.value == null ? new Base[0] : this.value.toArray(new Base[this.value.size()]); // Quantity 1117 default: return super.getProperty(hash, name, checkValid); 1118 } 1119 1120 } 1121 1122 @Override 1123 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1124 switch (hash) { 1125 case -1335157162: // device 1126 this.getDevice().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference 1127 return value; 1128 case 111972721: // value 1129 this.getValue().add(TypeConvertor.castToQuantity(value)); // Quantity 1130 return value; 1131 default: return super.setProperty(hash, name, value); 1132 } 1133 1134 } 1135 1136 @Override 1137 public Base setProperty(String name, Base value) throws FHIRException { 1138 if (name.equals("device")) { 1139 this.getDevice().add(TypeConvertor.castToCodeableReference(value)); 1140 } else if (name.equals("value")) { 1141 this.getValue().add(TypeConvertor.castToQuantity(value)); 1142 } else 1143 return super.setProperty(name, value); 1144 return value; 1145 } 1146 1147 @Override 1148 public void removeChild(String name, Base value) throws FHIRException { 1149 if (name.equals("device")) { 1150 this.getDevice().remove(value); 1151 } else if (name.equals("value")) { 1152 this.getValue().remove(value); 1153 } else 1154 super.removeChild(name, value); 1155 1156 } 1157 1158 @Override 1159 public Base makeProperty(int hash, String name) throws FHIRException { 1160 switch (hash) { 1161 case -1335157162: return addDevice(); 1162 case 111972721: return addValue(); 1163 default: return super.makeProperty(hash, name); 1164 } 1165 1166 } 1167 1168 @Override 1169 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1170 switch (hash) { 1171 case -1335157162: /*device*/ return new String[] {"CodeableReference"}; 1172 case 111972721: /*value*/ return new String[] {"Quantity"}; 1173 default: return super.getTypesForProperty(hash, name); 1174 } 1175 1176 } 1177 1178 @Override 1179 public Base addChild(String name) throws FHIRException { 1180 if (name.equals("device")) { 1181 return addDevice(); 1182 } 1183 else if (name.equals("value")) { 1184 return addValue(); 1185 } 1186 else 1187 return super.addChild(name); 1188 } 1189 1190 public BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent copy() { 1191 BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent dst = new BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent(); 1192 copyValues(dst); 1193 return dst; 1194 } 1195 1196 public void copyValues(BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent dst) { 1197 super.copyValues(dst); 1198 if (device != null) { 1199 dst.device = new ArrayList<CodeableReference>(); 1200 for (CodeableReference i : device) 1201 dst.device.add(i.copy()); 1202 }; 1203 if (value != null) { 1204 dst.value = new ArrayList<Quantity>(); 1205 for (Quantity i : value) 1206 dst.value.add(i.copy()); 1207 }; 1208 } 1209 1210 @Override 1211 public boolean equalsDeep(Base other_) { 1212 if (!super.equalsDeep(other_)) 1213 return false; 1214 if (!(other_ instanceof BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent)) 1215 return false; 1216 BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent o = (BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent) other_; 1217 return compareDeep(device, o.device, true) && compareDeep(value, o.value, true); 1218 } 1219 1220 @Override 1221 public boolean equalsShallow(Base other_) { 1222 if (!super.equalsShallow(other_)) 1223 return false; 1224 if (!(other_ instanceof BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent)) 1225 return false; 1226 BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent o = (BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent) other_; 1227 return true; 1228 } 1229 1230 public boolean isEmpty() { 1231 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(device, value); 1232 } 1233 1234 public String fhirType() { 1235 return "BodyStructure.includedStructure.bodyLandmarkOrientation.distanceFromLandmark"; 1236 1237 } 1238 1239 } 1240 1241 /** 1242 * Identifier for this instance of the anatomical structure. 1243 */ 1244 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1245 @Description(shortDefinition="Bodystructure identifier", formalDefinition="Identifier for this instance of the anatomical structure." ) 1246 protected List<Identifier> identifier; 1247 1248 /** 1249 * Whether this body site is in active use. 1250 */ 1251 @Child(name = "active", type = {BooleanType.class}, order=1, min=0, max=1, modifier=true, summary=true) 1252 @Description(shortDefinition="Whether this record is in active use", formalDefinition="Whether this body site is in active use." ) 1253 protected BooleanType active; 1254 1255 /** 1256 * The kind of structure being represented by the body structure at `BodyStructure.location`. This can define both normal and abnormal morphologies. 1257 */ 1258 @Child(name = "morphology", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) 1259 @Description(shortDefinition="Kind of Structure", formalDefinition="The kind of structure being represented by the body structure at `BodyStructure.location`. This can define both normal and abnormal morphologies." ) 1260 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/bodystructure-code") 1261 protected CodeableConcept morphology; 1262 1263 /** 1264 * The anatomical location(s) or region(s) of the specimen, lesion, or body structure. 1265 */ 1266 @Child(name = "includedStructure", type = {}, order=3, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1267 @Description(shortDefinition="Included anatomic location(s)", formalDefinition="The anatomical location(s) or region(s) of the specimen, lesion, or body structure." ) 1268 protected List<BodyStructureIncludedStructureComponent> includedStructure; 1269 1270 /** 1271 * The anatomical location(s) or region(s) not occupied or represented by the specimen, lesion, or body structure. 1272 */ 1273 @Child(name = "excludedStructure", type = {BodyStructureIncludedStructureComponent.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1274 @Description(shortDefinition="Excluded anatomic locations(s)", formalDefinition="The anatomical location(s) or region(s) not occupied or represented by the specimen, lesion, or body structure." ) 1275 protected List<BodyStructureIncludedStructureComponent> excludedStructure; 1276 1277 /** 1278 * A summary, characterization or explanation of the body structure. 1279 */ 1280 @Child(name = "description", type = {MarkdownType.class}, order=5, min=0, max=1, modifier=false, summary=true) 1281 @Description(shortDefinition="Text description", formalDefinition="A summary, characterization or explanation of the body structure." ) 1282 protected MarkdownType description; 1283 1284 /** 1285 * Image or images used to identify a location. 1286 */ 1287 @Child(name = "image", type = {Attachment.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1288 @Description(shortDefinition="Attached images", formalDefinition="Image or images used to identify a location." ) 1289 protected List<Attachment> image; 1290 1291 /** 1292 * The person to which the body site belongs. 1293 */ 1294 @Child(name = "patient", type = {Patient.class}, order=7, min=1, max=1, modifier=false, summary=true) 1295 @Description(shortDefinition="Who this is about", formalDefinition="The person to which the body site belongs." ) 1296 protected Reference patient; 1297 1298 private static final long serialVersionUID = -1014863022L; 1299 1300 /** 1301 * Constructor 1302 */ 1303 public BodyStructure() { 1304 super(); 1305 } 1306 1307 /** 1308 * Constructor 1309 */ 1310 public BodyStructure(BodyStructureIncludedStructureComponent includedStructure, Reference patient) { 1311 super(); 1312 this.addIncludedStructure(includedStructure); 1313 this.setPatient(patient); 1314 } 1315 1316 /** 1317 * @return {@link #identifier} (Identifier for this instance of the anatomical structure.) 1318 */ 1319 public List<Identifier> getIdentifier() { 1320 if (this.identifier == null) 1321 this.identifier = new ArrayList<Identifier>(); 1322 return this.identifier; 1323 } 1324 1325 /** 1326 * @return Returns a reference to <code>this</code> for easy method chaining 1327 */ 1328 public BodyStructure setIdentifier(List<Identifier> theIdentifier) { 1329 this.identifier = theIdentifier; 1330 return this; 1331 } 1332 1333 public boolean hasIdentifier() { 1334 if (this.identifier == null) 1335 return false; 1336 for (Identifier item : this.identifier) 1337 if (!item.isEmpty()) 1338 return true; 1339 return false; 1340 } 1341 1342 public Identifier addIdentifier() { //3 1343 Identifier t = new Identifier(); 1344 if (this.identifier == null) 1345 this.identifier = new ArrayList<Identifier>(); 1346 this.identifier.add(t); 1347 return t; 1348 } 1349 1350 public BodyStructure addIdentifier(Identifier t) { //3 1351 if (t == null) 1352 return this; 1353 if (this.identifier == null) 1354 this.identifier = new ArrayList<Identifier>(); 1355 this.identifier.add(t); 1356 return this; 1357 } 1358 1359 /** 1360 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 1361 */ 1362 public Identifier getIdentifierFirstRep() { 1363 if (getIdentifier().isEmpty()) { 1364 addIdentifier(); 1365 } 1366 return getIdentifier().get(0); 1367 } 1368 1369 /** 1370 * @return {@link #active} (Whether this body site is in active use.). This is the underlying object with id, value and extensions. The accessor "getActive" gives direct access to the value 1371 */ 1372 public BooleanType getActiveElement() { 1373 if (this.active == null) 1374 if (Configuration.errorOnAutoCreate()) 1375 throw new Error("Attempt to auto-create BodyStructure.active"); 1376 else if (Configuration.doAutoCreate()) 1377 this.active = new BooleanType(); // bb 1378 return this.active; 1379 } 1380 1381 public boolean hasActiveElement() { 1382 return this.active != null && !this.active.isEmpty(); 1383 } 1384 1385 public boolean hasActive() { 1386 return this.active != null && !this.active.isEmpty(); 1387 } 1388 1389 /** 1390 * @param value {@link #active} (Whether this body site is in active use.). This is the underlying object with id, value and extensions. The accessor "getActive" gives direct access to the value 1391 */ 1392 public BodyStructure setActiveElement(BooleanType value) { 1393 this.active = value; 1394 return this; 1395 } 1396 1397 /** 1398 * @return Whether this body site is in active use. 1399 */ 1400 public boolean getActive() { 1401 return this.active == null || this.active.isEmpty() ? false : this.active.getValue(); 1402 } 1403 1404 /** 1405 * @param value Whether this body site is in active use. 1406 */ 1407 public BodyStructure setActive(boolean value) { 1408 if (this.active == null) 1409 this.active = new BooleanType(); 1410 this.active.setValue(value); 1411 return this; 1412 } 1413 1414 /** 1415 * @return {@link #morphology} (The kind of structure being represented by the body structure at `BodyStructure.location`. This can define both normal and abnormal morphologies.) 1416 */ 1417 public CodeableConcept getMorphology() { 1418 if (this.morphology == null) 1419 if (Configuration.errorOnAutoCreate()) 1420 throw new Error("Attempt to auto-create BodyStructure.morphology"); 1421 else if (Configuration.doAutoCreate()) 1422 this.morphology = new CodeableConcept(); // cc 1423 return this.morphology; 1424 } 1425 1426 public boolean hasMorphology() { 1427 return this.morphology != null && !this.morphology.isEmpty(); 1428 } 1429 1430 /** 1431 * @param value {@link #morphology} (The kind of structure being represented by the body structure at `BodyStructure.location`. This can define both normal and abnormal morphologies.) 1432 */ 1433 public BodyStructure setMorphology(CodeableConcept value) { 1434 this.morphology = value; 1435 return this; 1436 } 1437 1438 /** 1439 * @return {@link #includedStructure} (The anatomical location(s) or region(s) of the specimen, lesion, or body structure.) 1440 */ 1441 public List<BodyStructureIncludedStructureComponent> getIncludedStructure() { 1442 if (this.includedStructure == null) 1443 this.includedStructure = new ArrayList<BodyStructureIncludedStructureComponent>(); 1444 return this.includedStructure; 1445 } 1446 1447 /** 1448 * @return Returns a reference to <code>this</code> for easy method chaining 1449 */ 1450 public BodyStructure setIncludedStructure(List<BodyStructureIncludedStructureComponent> theIncludedStructure) { 1451 this.includedStructure = theIncludedStructure; 1452 return this; 1453 } 1454 1455 public boolean hasIncludedStructure() { 1456 if (this.includedStructure == null) 1457 return false; 1458 for (BodyStructureIncludedStructureComponent item : this.includedStructure) 1459 if (!item.isEmpty()) 1460 return true; 1461 return false; 1462 } 1463 1464 public BodyStructureIncludedStructureComponent addIncludedStructure() { //3 1465 BodyStructureIncludedStructureComponent t = new BodyStructureIncludedStructureComponent(); 1466 if (this.includedStructure == null) 1467 this.includedStructure = new ArrayList<BodyStructureIncludedStructureComponent>(); 1468 this.includedStructure.add(t); 1469 return t; 1470 } 1471 1472 public BodyStructure addIncludedStructure(BodyStructureIncludedStructureComponent t) { //3 1473 if (t == null) 1474 return this; 1475 if (this.includedStructure == null) 1476 this.includedStructure = new ArrayList<BodyStructureIncludedStructureComponent>(); 1477 this.includedStructure.add(t); 1478 return this; 1479 } 1480 1481 /** 1482 * @return The first repetition of repeating field {@link #includedStructure}, creating it if it does not already exist {3} 1483 */ 1484 public BodyStructureIncludedStructureComponent getIncludedStructureFirstRep() { 1485 if (getIncludedStructure().isEmpty()) { 1486 addIncludedStructure(); 1487 } 1488 return getIncludedStructure().get(0); 1489 } 1490 1491 /** 1492 * @return {@link #excludedStructure} (The anatomical location(s) or region(s) not occupied or represented by the specimen, lesion, or body structure.) 1493 */ 1494 public List<BodyStructureIncludedStructureComponent> getExcludedStructure() { 1495 if (this.excludedStructure == null) 1496 this.excludedStructure = new ArrayList<BodyStructureIncludedStructureComponent>(); 1497 return this.excludedStructure; 1498 } 1499 1500 /** 1501 * @return Returns a reference to <code>this</code> for easy method chaining 1502 */ 1503 public BodyStructure setExcludedStructure(List<BodyStructureIncludedStructureComponent> theExcludedStructure) { 1504 this.excludedStructure = theExcludedStructure; 1505 return this; 1506 } 1507 1508 public boolean hasExcludedStructure() { 1509 if (this.excludedStructure == null) 1510 return false; 1511 for (BodyStructureIncludedStructureComponent item : this.excludedStructure) 1512 if (!item.isEmpty()) 1513 return true; 1514 return false; 1515 } 1516 1517 public BodyStructureIncludedStructureComponent addExcludedStructure() { //3 1518 BodyStructureIncludedStructureComponent t = new BodyStructureIncludedStructureComponent(); 1519 if (this.excludedStructure == null) 1520 this.excludedStructure = new ArrayList<BodyStructureIncludedStructureComponent>(); 1521 this.excludedStructure.add(t); 1522 return t; 1523 } 1524 1525 public BodyStructure addExcludedStructure(BodyStructureIncludedStructureComponent t) { //3 1526 if (t == null) 1527 return this; 1528 if (this.excludedStructure == null) 1529 this.excludedStructure = new ArrayList<BodyStructureIncludedStructureComponent>(); 1530 this.excludedStructure.add(t); 1531 return this; 1532 } 1533 1534 /** 1535 * @return The first repetition of repeating field {@link #excludedStructure}, creating it if it does not already exist {3} 1536 */ 1537 public BodyStructureIncludedStructureComponent getExcludedStructureFirstRep() { 1538 if (getExcludedStructure().isEmpty()) { 1539 addExcludedStructure(); 1540 } 1541 return getExcludedStructure().get(0); 1542 } 1543 1544 /** 1545 * @return {@link #description} (A summary, characterization or explanation of the body structure.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 1546 */ 1547 public MarkdownType getDescriptionElement() { 1548 if (this.description == null) 1549 if (Configuration.errorOnAutoCreate()) 1550 throw new Error("Attempt to auto-create BodyStructure.description"); 1551 else if (Configuration.doAutoCreate()) 1552 this.description = new MarkdownType(); // bb 1553 return this.description; 1554 } 1555 1556 public boolean hasDescriptionElement() { 1557 return this.description != null && !this.description.isEmpty(); 1558 } 1559 1560 public boolean hasDescription() { 1561 return this.description != null && !this.description.isEmpty(); 1562 } 1563 1564 /** 1565 * @param value {@link #description} (A summary, characterization or explanation of the body structure.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 1566 */ 1567 public BodyStructure setDescriptionElement(MarkdownType value) { 1568 this.description = value; 1569 return this; 1570 } 1571 1572 /** 1573 * @return A summary, characterization or explanation of the body structure. 1574 */ 1575 public String getDescription() { 1576 return this.description == null ? null : this.description.getValue(); 1577 } 1578 1579 /** 1580 * @param value A summary, characterization or explanation of the body structure. 1581 */ 1582 public BodyStructure setDescription(String value) { 1583 if (Utilities.noString(value)) 1584 this.description = null; 1585 else { 1586 if (this.description == null) 1587 this.description = new MarkdownType(); 1588 this.description.setValue(value); 1589 } 1590 return this; 1591 } 1592 1593 /** 1594 * @return {@link #image} (Image or images used to identify a location.) 1595 */ 1596 public List<Attachment> getImage() { 1597 if (this.image == null) 1598 this.image = new ArrayList<Attachment>(); 1599 return this.image; 1600 } 1601 1602 /** 1603 * @return Returns a reference to <code>this</code> for easy method chaining 1604 */ 1605 public BodyStructure setImage(List<Attachment> theImage) { 1606 this.image = theImage; 1607 return this; 1608 } 1609 1610 public boolean hasImage() { 1611 if (this.image == null) 1612 return false; 1613 for (Attachment item : this.image) 1614 if (!item.isEmpty()) 1615 return true; 1616 return false; 1617 } 1618 1619 public Attachment addImage() { //3 1620 Attachment t = new Attachment(); 1621 if (this.image == null) 1622 this.image = new ArrayList<Attachment>(); 1623 this.image.add(t); 1624 return t; 1625 } 1626 1627 public BodyStructure addImage(Attachment t) { //3 1628 if (t == null) 1629 return this; 1630 if (this.image == null) 1631 this.image = new ArrayList<Attachment>(); 1632 this.image.add(t); 1633 return this; 1634 } 1635 1636 /** 1637 * @return The first repetition of repeating field {@link #image}, creating it if it does not already exist {3} 1638 */ 1639 public Attachment getImageFirstRep() { 1640 if (getImage().isEmpty()) { 1641 addImage(); 1642 } 1643 return getImage().get(0); 1644 } 1645 1646 /** 1647 * @return {@link #patient} (The person to which the body site belongs.) 1648 */ 1649 public Reference getPatient() { 1650 if (this.patient == null) 1651 if (Configuration.errorOnAutoCreate()) 1652 throw new Error("Attempt to auto-create BodyStructure.patient"); 1653 else if (Configuration.doAutoCreate()) 1654 this.patient = new Reference(); // cc 1655 return this.patient; 1656 } 1657 1658 public boolean hasPatient() { 1659 return this.patient != null && !this.patient.isEmpty(); 1660 } 1661 1662 /** 1663 * @param value {@link #patient} (The person to which the body site belongs.) 1664 */ 1665 public BodyStructure setPatient(Reference value) { 1666 this.patient = value; 1667 return this; 1668 } 1669 1670 protected void listChildren(List<Property> children) { 1671 super.listChildren(children); 1672 children.add(new Property("identifier", "Identifier", "Identifier for this instance of the anatomical structure.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1673 children.add(new Property("active", "boolean", "Whether this body site is in active use.", 0, 1, active)); 1674 children.add(new Property("morphology", "CodeableConcept", "The kind of structure being represented by the body structure at `BodyStructure.location`. This can define both normal and abnormal morphologies.", 0, 1, morphology)); 1675 children.add(new Property("includedStructure", "", "The anatomical location(s) or region(s) of the specimen, lesion, or body structure.", 0, java.lang.Integer.MAX_VALUE, includedStructure)); 1676 children.add(new Property("excludedStructure", "@BodyStructure.includedStructure", "The anatomical location(s) or region(s) not occupied or represented by the specimen, lesion, or body structure.", 0, java.lang.Integer.MAX_VALUE, excludedStructure)); 1677 children.add(new Property("description", "markdown", "A summary, characterization or explanation of the body structure.", 0, 1, description)); 1678 children.add(new Property("image", "Attachment", "Image or images used to identify a location.", 0, java.lang.Integer.MAX_VALUE, image)); 1679 children.add(new Property("patient", "Reference(Patient)", "The person to which the body site belongs.", 0, 1, patient)); 1680 } 1681 1682 @Override 1683 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1684 switch (_hash) { 1685 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifier for this instance of the anatomical structure.", 0, java.lang.Integer.MAX_VALUE, identifier); 1686 case -1422950650: /*active*/ return new Property("active", "boolean", "Whether this body site is in active use.", 0, 1, active); 1687 case 1807231644: /*morphology*/ return new Property("morphology", "CodeableConcept", "The kind of structure being represented by the body structure at `BodyStructure.location`. This can define both normal and abnormal morphologies.", 0, 1, morphology); 1688 case -1174069225: /*includedStructure*/ return new Property("includedStructure", "", "The anatomical location(s) or region(s) of the specimen, lesion, or body structure.", 0, java.lang.Integer.MAX_VALUE, includedStructure); 1689 case 1192252105: /*excludedStructure*/ return new Property("excludedStructure", "@BodyStructure.includedStructure", "The anatomical location(s) or region(s) not occupied or represented by the specimen, lesion, or body structure.", 0, java.lang.Integer.MAX_VALUE, excludedStructure); 1690 case -1724546052: /*description*/ return new Property("description", "markdown", "A summary, characterization or explanation of the body structure.", 0, 1, description); 1691 case 100313435: /*image*/ return new Property("image", "Attachment", "Image or images used to identify a location.", 0, java.lang.Integer.MAX_VALUE, image); 1692 case -791418107: /*patient*/ return new Property("patient", "Reference(Patient)", "The person to which the body site belongs.", 0, 1, patient); 1693 default: return super.getNamedProperty(_hash, _name, _checkValid); 1694 } 1695 1696 } 1697 1698 @Override 1699 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1700 switch (hash) { 1701 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1702 case -1422950650: /*active*/ return this.active == null ? new Base[0] : new Base[] {this.active}; // BooleanType 1703 case 1807231644: /*morphology*/ return this.morphology == null ? new Base[0] : new Base[] {this.morphology}; // CodeableConcept 1704 case -1174069225: /*includedStructure*/ return this.includedStructure == null ? new Base[0] : this.includedStructure.toArray(new Base[this.includedStructure.size()]); // BodyStructureIncludedStructureComponent 1705 case 1192252105: /*excludedStructure*/ return this.excludedStructure == null ? new Base[0] : this.excludedStructure.toArray(new Base[this.excludedStructure.size()]); // BodyStructureIncludedStructureComponent 1706 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType 1707 case 100313435: /*image*/ return this.image == null ? new Base[0] : this.image.toArray(new Base[this.image.size()]); // Attachment 1708 case -791418107: /*patient*/ return this.patient == null ? new Base[0] : new Base[] {this.patient}; // Reference 1709 default: return super.getProperty(hash, name, checkValid); 1710 } 1711 1712 } 1713 1714 @Override 1715 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1716 switch (hash) { 1717 case -1618432855: // identifier 1718 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 1719 return value; 1720 case -1422950650: // active 1721 this.active = TypeConvertor.castToBoolean(value); // BooleanType 1722 return value; 1723 case 1807231644: // morphology 1724 this.morphology = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1725 return value; 1726 case -1174069225: // includedStructure 1727 this.getIncludedStructure().add((BodyStructureIncludedStructureComponent) value); // BodyStructureIncludedStructureComponent 1728 return value; 1729 case 1192252105: // excludedStructure 1730 this.getExcludedStructure().add((BodyStructureIncludedStructureComponent) value); // BodyStructureIncludedStructureComponent 1731 return value; 1732 case -1724546052: // description 1733 this.description = TypeConvertor.castToMarkdown(value); // MarkdownType 1734 return value; 1735 case 100313435: // image 1736 this.getImage().add(TypeConvertor.castToAttachment(value)); // Attachment 1737 return value; 1738 case -791418107: // patient 1739 this.patient = TypeConvertor.castToReference(value); // Reference 1740 return value; 1741 default: return super.setProperty(hash, name, value); 1742 } 1743 1744 } 1745 1746 @Override 1747 public Base setProperty(String name, Base value) throws FHIRException { 1748 if (name.equals("identifier")) { 1749 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 1750 } else if (name.equals("active")) { 1751 this.active = TypeConvertor.castToBoolean(value); // BooleanType 1752 } else if (name.equals("morphology")) { 1753 this.morphology = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1754 } else if (name.equals("includedStructure")) { 1755 this.getIncludedStructure().add((BodyStructureIncludedStructureComponent) value); 1756 } else if (name.equals("excludedStructure")) { 1757 this.getExcludedStructure().add((BodyStructureIncludedStructureComponent) value); 1758 } else if (name.equals("description")) { 1759 this.description = TypeConvertor.castToMarkdown(value); // MarkdownType 1760 } else if (name.equals("image")) { 1761 this.getImage().add(TypeConvertor.castToAttachment(value)); 1762 } else if (name.equals("patient")) { 1763 this.patient = TypeConvertor.castToReference(value); // Reference 1764 } else 1765 return super.setProperty(name, value); 1766 return value; 1767 } 1768 1769 @Override 1770 public void removeChild(String name, Base value) throws FHIRException { 1771 if (name.equals("identifier")) { 1772 this.getIdentifier().remove(value); 1773 } else if (name.equals("active")) { 1774 this.active = null; 1775 } else if (name.equals("morphology")) { 1776 this.morphology = null; 1777 } else if (name.equals("includedStructure")) { 1778 this.getIncludedStructure().remove((BodyStructureIncludedStructureComponent) value); 1779 } else if (name.equals("excludedStructure")) { 1780 this.getExcludedStructure().remove((BodyStructureIncludedStructureComponent) value); 1781 } else if (name.equals("description")) { 1782 this.description = null; 1783 } else if (name.equals("image")) { 1784 this.getImage().remove(value); 1785 } else if (name.equals("patient")) { 1786 this.patient = null; 1787 } else 1788 super.removeChild(name, value); 1789 1790 } 1791 1792 @Override 1793 public Base makeProperty(int hash, String name) throws FHIRException { 1794 switch (hash) { 1795 case -1618432855: return addIdentifier(); 1796 case -1422950650: return getActiveElement(); 1797 case 1807231644: return getMorphology(); 1798 case -1174069225: return addIncludedStructure(); 1799 case 1192252105: return addExcludedStructure(); 1800 case -1724546052: return getDescriptionElement(); 1801 case 100313435: return addImage(); 1802 case -791418107: return getPatient(); 1803 default: return super.makeProperty(hash, name); 1804 } 1805 1806 } 1807 1808 @Override 1809 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1810 switch (hash) { 1811 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 1812 case -1422950650: /*active*/ return new String[] {"boolean"}; 1813 case 1807231644: /*morphology*/ return new String[] {"CodeableConcept"}; 1814 case -1174069225: /*includedStructure*/ return new String[] {}; 1815 case 1192252105: /*excludedStructure*/ return new String[] {"@BodyStructure.includedStructure"}; 1816 case -1724546052: /*description*/ return new String[] {"markdown"}; 1817 case 100313435: /*image*/ return new String[] {"Attachment"}; 1818 case -791418107: /*patient*/ return new String[] {"Reference"}; 1819 default: return super.getTypesForProperty(hash, name); 1820 } 1821 1822 } 1823 1824 @Override 1825 public Base addChild(String name) throws FHIRException { 1826 if (name.equals("identifier")) { 1827 return addIdentifier(); 1828 } 1829 else if (name.equals("active")) { 1830 throw new FHIRException("Cannot call addChild on a singleton property BodyStructure.active"); 1831 } 1832 else if (name.equals("morphology")) { 1833 this.morphology = new CodeableConcept(); 1834 return this.morphology; 1835 } 1836 else if (name.equals("includedStructure")) { 1837 return addIncludedStructure(); 1838 } 1839 else if (name.equals("excludedStructure")) { 1840 return addExcludedStructure(); 1841 } 1842 else if (name.equals("description")) { 1843 throw new FHIRException("Cannot call addChild on a singleton property BodyStructure.description"); 1844 } 1845 else if (name.equals("image")) { 1846 return addImage(); 1847 } 1848 else if (name.equals("patient")) { 1849 this.patient = new Reference(); 1850 return this.patient; 1851 } 1852 else 1853 return super.addChild(name); 1854 } 1855 1856 public String fhirType() { 1857 return "BodyStructure"; 1858 1859 } 1860 1861 public BodyStructure copy() { 1862 BodyStructure dst = new BodyStructure(); 1863 copyValues(dst); 1864 return dst; 1865 } 1866 1867 public void copyValues(BodyStructure dst) { 1868 super.copyValues(dst); 1869 if (identifier != null) { 1870 dst.identifier = new ArrayList<Identifier>(); 1871 for (Identifier i : identifier) 1872 dst.identifier.add(i.copy()); 1873 }; 1874 dst.active = active == null ? null : active.copy(); 1875 dst.morphology = morphology == null ? null : morphology.copy(); 1876 if (includedStructure != null) { 1877 dst.includedStructure = new ArrayList<BodyStructureIncludedStructureComponent>(); 1878 for (BodyStructureIncludedStructureComponent i : includedStructure) 1879 dst.includedStructure.add(i.copy()); 1880 }; 1881 if (excludedStructure != null) { 1882 dst.excludedStructure = new ArrayList<BodyStructureIncludedStructureComponent>(); 1883 for (BodyStructureIncludedStructureComponent i : excludedStructure) 1884 dst.excludedStructure.add(i.copy()); 1885 }; 1886 dst.description = description == null ? null : description.copy(); 1887 if (image != null) { 1888 dst.image = new ArrayList<Attachment>(); 1889 for (Attachment i : image) 1890 dst.image.add(i.copy()); 1891 }; 1892 dst.patient = patient == null ? null : patient.copy(); 1893 } 1894 1895 protected BodyStructure typedCopy() { 1896 return copy(); 1897 } 1898 1899 @Override 1900 public boolean equalsDeep(Base other_) { 1901 if (!super.equalsDeep(other_)) 1902 return false; 1903 if (!(other_ instanceof BodyStructure)) 1904 return false; 1905 BodyStructure o = (BodyStructure) other_; 1906 return compareDeep(identifier, o.identifier, true) && compareDeep(active, o.active, true) && compareDeep(morphology, o.morphology, true) 1907 && compareDeep(includedStructure, o.includedStructure, true) && compareDeep(excludedStructure, o.excludedStructure, true) 1908 && compareDeep(description, o.description, true) && compareDeep(image, o.image, true) && compareDeep(patient, o.patient, true) 1909 ; 1910 } 1911 1912 @Override 1913 public boolean equalsShallow(Base other_) { 1914 if (!super.equalsShallow(other_)) 1915 return false; 1916 if (!(other_ instanceof BodyStructure)) 1917 return false; 1918 BodyStructure o = (BodyStructure) other_; 1919 return compareValues(active, o.active, true) && compareValues(description, o.description, true); 1920 } 1921 1922 public boolean isEmpty() { 1923 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, active, morphology 1924 , includedStructure, excludedStructure, description, image, patient); 1925 } 1926 1927 @Override 1928 public ResourceType getResourceType() { 1929 return ResourceType.BodyStructure; 1930 } 1931 1932 /** 1933 * Search parameter: <b>excluded_structure</b> 1934 * <p> 1935 * Description: <b>Body site excludedStructure structure</b><br> 1936 * Type: <b>token</b><br> 1937 * Path: <b>BodyStructure.excludedStructure.structure</b><br> 1938 * </p> 1939 */ 1940 @SearchParamDefinition(name="excluded_structure", path="BodyStructure.excludedStructure.structure", description="Body site excludedStructure structure", type="token" ) 1941 public static final String SP_EXCLUDEDSTRUCTURE = "excluded_structure"; 1942 /** 1943 * <b>Fluent Client</b> search parameter constant for <b>excluded_structure</b> 1944 * <p> 1945 * Description: <b>Body site excludedStructure structure</b><br> 1946 * Type: <b>token</b><br> 1947 * Path: <b>BodyStructure.excludedStructure.structure</b><br> 1948 * </p> 1949 */ 1950 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EXCLUDEDSTRUCTURE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EXCLUDEDSTRUCTURE); 1951 1952 /** 1953 * Search parameter: <b>included_structure</b> 1954 * <p> 1955 * Description: <b>Body site includedStructure structure</b><br> 1956 * Type: <b>token</b><br> 1957 * Path: <b>BodyStructure.includedStructure.structure</b><br> 1958 * </p> 1959 */ 1960 @SearchParamDefinition(name="included_structure", path="BodyStructure.includedStructure.structure", description="Body site includedStructure structure", type="token" ) 1961 public static final String SP_INCLUDEDSTRUCTURE = "included_structure"; 1962 /** 1963 * <b>Fluent Client</b> search parameter constant for <b>included_structure</b> 1964 * <p> 1965 * Description: <b>Body site includedStructure structure</b><br> 1966 * Type: <b>token</b><br> 1967 * Path: <b>BodyStructure.includedStructure.structure</b><br> 1968 * </p> 1969 */ 1970 public static final ca.uhn.fhir.rest.gclient.TokenClientParam INCLUDEDSTRUCTURE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_INCLUDEDSTRUCTURE); 1971 1972 /** 1973 * Search parameter: <b>morphology</b> 1974 * <p> 1975 * Description: <b>Kind of Structure</b><br> 1976 * Type: <b>token</b><br> 1977 * Path: <b>BodyStructure.morphology</b><br> 1978 * </p> 1979 */ 1980 @SearchParamDefinition(name="morphology", path="BodyStructure.morphology", description="Kind of Structure", type="token" ) 1981 public static final String SP_MORPHOLOGY = "morphology"; 1982 /** 1983 * <b>Fluent Client</b> search parameter constant for <b>morphology</b> 1984 * <p> 1985 * Description: <b>Kind of Structure</b><br> 1986 * Type: <b>token</b><br> 1987 * Path: <b>BodyStructure.morphology</b><br> 1988 * </p> 1989 */ 1990 public static final ca.uhn.fhir.rest.gclient.TokenClientParam MORPHOLOGY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_MORPHOLOGY); 1991 1992 /** 1993 * Search parameter: <b>identifier</b> 1994 * <p> 1995 * Description: <b>Multiple Resources: 1996 1997* [Account](account.html): Account number 1998* [AdverseEvent](adverseevent.html): Business identifier for the event 1999* [AllergyIntolerance](allergyintolerance.html): External ids for this item 2000* [Appointment](appointment.html): An Identifier of the Appointment 2001* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 2002* [Basic](basic.html): Business identifier 2003* [BodyStructure](bodystructure.html): Bodystructure identifier 2004* [CarePlan](careplan.html): External Ids for this plan 2005* [CareTeam](careteam.html): External Ids for this team 2006* [ChargeItem](chargeitem.html): Business Identifier for item 2007* [Claim](claim.html): The primary identifier of the financial resource 2008* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 2009* [ClinicalImpression](clinicalimpression.html): Business identifier 2010* [Communication](communication.html): Unique identifier 2011* [CommunicationRequest](communicationrequest.html): Unique identifier 2012* [Composition](composition.html): Version-independent identifier for the Composition 2013* [Condition](condition.html): A unique identifier of the condition record 2014* [Consent](consent.html): Identifier for this record (external references) 2015* [Contract](contract.html): The identity of the contract 2016* [Coverage](coverage.html): The primary identifier of the insured and the coverage 2017* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 2018* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 2019* [DetectedIssue](detectedissue.html): Unique id for the detected issue 2020* [DeviceRequest](devicerequest.html): Business identifier for request/order 2021* [DeviceUsage](deviceusage.html): Search by identifier 2022* [DiagnosticReport](diagnosticreport.html): An identifier for the report 2023* [DocumentReference](documentreference.html): Identifier of the attachment binary 2024* [Encounter](encounter.html): Identifier(s) by which this encounter is known 2025* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 2026* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 2027* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 2028* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 2029* [Flag](flag.html): Business identifier 2030* [Goal](goal.html): External Ids for this goal 2031* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 2032* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 2033* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 2034* [Immunization](immunization.html): Business identifier 2035* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 2036* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 2037* [Invoice](invoice.html): Business Identifier for item 2038* [List](list.html): Business identifier 2039* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 2040* [Medication](medication.html): Returns medications with this external identifier 2041* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 2042* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 2043* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 2044* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 2045* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 2046* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 2047* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 2048* [Observation](observation.html): The unique id for a particular observation 2049* [Person](person.html): A person Identifier 2050* [Procedure](procedure.html): A unique identifier for a procedure 2051* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 2052* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 2053* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 2054* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 2055* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 2056* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 2057* [Specimen](specimen.html): The unique identifier associated with the specimen 2058* [SupplyDelivery](supplydelivery.html): External identifier 2059* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 2060* [Task](task.html): Search for a task instance by its business identifier 2061* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 2062</b><br> 2063 * Type: <b>token</b><br> 2064 * 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> 2065 * </p> 2066 */ 2067 @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" ) 2068 public static final String SP_IDENTIFIER = "identifier"; 2069 /** 2070 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 2071 * <p> 2072 * Description: <b>Multiple Resources: 2073 2074* [Account](account.html): Account number 2075* [AdverseEvent](adverseevent.html): Business identifier for the event 2076* [AllergyIntolerance](allergyintolerance.html): External ids for this item 2077* [Appointment](appointment.html): An Identifier of the Appointment 2078* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 2079* [Basic](basic.html): Business identifier 2080* [BodyStructure](bodystructure.html): Bodystructure identifier 2081* [CarePlan](careplan.html): External Ids for this plan 2082* [CareTeam](careteam.html): External Ids for this team 2083* [ChargeItem](chargeitem.html): Business Identifier for item 2084* [Claim](claim.html): The primary identifier of the financial resource 2085* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 2086* [ClinicalImpression](clinicalimpression.html): Business identifier 2087* [Communication](communication.html): Unique identifier 2088* [CommunicationRequest](communicationrequest.html): Unique identifier 2089* [Composition](composition.html): Version-independent identifier for the Composition 2090* [Condition](condition.html): A unique identifier of the condition record 2091* [Consent](consent.html): Identifier for this record (external references) 2092* [Contract](contract.html): The identity of the contract 2093* [Coverage](coverage.html): The primary identifier of the insured and the coverage 2094* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 2095* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 2096* [DetectedIssue](detectedissue.html): Unique id for the detected issue 2097* [DeviceRequest](devicerequest.html): Business identifier for request/order 2098* [DeviceUsage](deviceusage.html): Search by identifier 2099* [DiagnosticReport](diagnosticreport.html): An identifier for the report 2100* [DocumentReference](documentreference.html): Identifier of the attachment binary 2101* [Encounter](encounter.html): Identifier(s) by which this encounter is known 2102* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 2103* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 2104* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 2105* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 2106* [Flag](flag.html): Business identifier 2107* [Goal](goal.html): External Ids for this goal 2108* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 2109* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 2110* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 2111* [Immunization](immunization.html): Business identifier 2112* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 2113* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 2114* [Invoice](invoice.html): Business Identifier for item 2115* [List](list.html): Business identifier 2116* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 2117* [Medication](medication.html): Returns medications with this external identifier 2118* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 2119* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 2120* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 2121* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 2122* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 2123* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 2124* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 2125* [Observation](observation.html): The unique id for a particular observation 2126* [Person](person.html): A person Identifier 2127* [Procedure](procedure.html): A unique identifier for a procedure 2128* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 2129* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 2130* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 2131* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 2132* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 2133* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 2134* [Specimen](specimen.html): The unique identifier associated with the specimen 2135* [SupplyDelivery](supplydelivery.html): External identifier 2136* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 2137* [Task](task.html): Search for a task instance by its business identifier 2138* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 2139</b><br> 2140 * Type: <b>token</b><br> 2141 * 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> 2142 * </p> 2143 */ 2144 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 2145 2146 /** 2147 * Search parameter: <b>patient</b> 2148 * <p> 2149 * Description: <b>Multiple Resources: 2150 2151* [Account](account.html): The entity that caused the expenses 2152* [AdverseEvent](adverseevent.html): Subject impacted by event 2153* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 2154* [Appointment](appointment.html): One of the individuals of the appointment is this patient 2155* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 2156* [AuditEvent](auditevent.html): Where the activity involved patient data 2157* [Basic](basic.html): Identifies the focus of this resource 2158* [BodyStructure](bodystructure.html): Who this is about 2159* [CarePlan](careplan.html): Who the care plan is for 2160* [CareTeam](careteam.html): Who care team is for 2161* [ChargeItem](chargeitem.html): Individual service was done for/to 2162* [Claim](claim.html): Patient receiving the products or services 2163* [ClaimResponse](claimresponse.html): The subject of care 2164* [ClinicalImpression](clinicalimpression.html): Patient assessed 2165* [Communication](communication.html): Focus of message 2166* [CommunicationRequest](communicationrequest.html): Focus of message 2167* [Composition](composition.html): Who and/or what the composition is about 2168* [Condition](condition.html): Who has the condition? 2169* [Consent](consent.html): Who the consent applies to 2170* [Contract](contract.html): The identity of the subject of the contract (if a patient) 2171* [Coverage](coverage.html): Retrieve coverages for a patient 2172* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 2173* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 2174* [DetectedIssue](detectedissue.html): Associated patient 2175* [DeviceRequest](devicerequest.html): Individual the service is ordered for 2176* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 2177* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 2178* [DocumentReference](documentreference.html): Who/what is the subject of the document 2179* [Encounter](encounter.html): The patient present at the encounter 2180* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 2181* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 2182* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 2183* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 2184* [Flag](flag.html): The identity of a subject to list flags for 2185* [Goal](goal.html): Who this goal is intended for 2186* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 2187* [ImagingSelection](imagingselection.html): Who the study is about 2188* [ImagingStudy](imagingstudy.html): Who the study is about 2189* [Immunization](immunization.html): The patient for the vaccination record 2190* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 2191* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 2192* [Invoice](invoice.html): Recipient(s) of goods and services 2193* [List](list.html): If all resources have the same subject 2194* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 2195* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 2196* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 2197* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 2198* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 2199* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 2200* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 2201* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 2202* [Observation](observation.html): The subject that the observation is about (if patient) 2203* [Person](person.html): The Person links to this Patient 2204* [Procedure](procedure.html): Search by subject - a patient 2205* [Provenance](provenance.html): Where the activity involved patient data 2206* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 2207* [RelatedPerson](relatedperson.html): The patient this related person is related to 2208* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 2209* [ResearchSubject](researchsubject.html): Who or what is part of study 2210* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 2211* [ServiceRequest](servicerequest.html): Search by subject - a patient 2212* [Specimen](specimen.html): The patient the specimen comes from 2213* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 2214* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 2215* [Task](task.html): Search by patient 2216* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 2217</b><br> 2218 * Type: <b>reference</b><br> 2219 * Path: <b>Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient</b><br> 2220 * </p> 2221 */ 2222 @SearchParamDefinition(name="patient", path="Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [Account](account.html): The entity that caused the expenses\r\n* [AdverseEvent](adverseevent.html): Subject impacted by event\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [Appointment](appointment.html): One of the individuals of the appointment is this patient\r\n* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient\r\n* [AuditEvent](auditevent.html): Where the activity involved patient data\r\n* [Basic](basic.html): Identifies the focus of this resource\r\n* [BodyStructure](bodystructure.html): Who this is about\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ChargeItem](chargeitem.html): Individual service was done for/to\r\n* [Claim](claim.html): Patient receiving the products or services\r\n* [ClaimResponse](claimresponse.html): The subject of care\r\n* [ClinicalImpression](clinicalimpression.html): Patient assessed\r\n* [Communication](communication.html): Focus of message\r\n* [CommunicationRequest](communicationrequest.html): Focus of message\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [Contract](contract.html): The identity of the subject of the contract (if a patient)\r\n* [Coverage](coverage.html): Retrieve coverages for a patient\r\n* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient\r\n* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient present at the encounter\r\n* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results\r\n* [ImagingSelection](imagingselection.html): Who the study is about\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated\r\n* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for\r\n* [Invoice](invoice.html): Recipient(s) of goods and services\r\n* [List](list.html): If all resources have the same subject\r\n* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient.\r\n* [MolecularSequence](molecularsequence.html): The subject that the sequence is about\r\n* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Person](person.html): The Person links to this Patient\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [Provenance](provenance.html): Where the activity involved patient data\r\n* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response\r\n* [RelatedPerson](relatedperson.html): The patient this related person is related to\r\n* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations\r\n* [ResearchSubject](researchsubject.html): Who or what is part of study\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [Specimen](specimen.html): The patient the specimen comes from\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined\r\n* [Task](task.html): Search by patient\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Patient.class } ) 2223 public static final String SP_PATIENT = "patient"; 2224 /** 2225 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 2226 * <p> 2227 * Description: <b>Multiple Resources: 2228 2229* [Account](account.html): The entity that caused the expenses 2230* [AdverseEvent](adverseevent.html): Subject impacted by event 2231* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 2232* [Appointment](appointment.html): One of the individuals of the appointment is this patient 2233* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 2234* [AuditEvent](auditevent.html): Where the activity involved patient data 2235* [Basic](basic.html): Identifies the focus of this resource 2236* [BodyStructure](bodystructure.html): Who this is about 2237* [CarePlan](careplan.html): Who the care plan is for 2238* [CareTeam](careteam.html): Who care team is for 2239* [ChargeItem](chargeitem.html): Individual service was done for/to 2240* [Claim](claim.html): Patient receiving the products or services 2241* [ClaimResponse](claimresponse.html): The subject of care 2242* [ClinicalImpression](clinicalimpression.html): Patient assessed 2243* [Communication](communication.html): Focus of message 2244* [CommunicationRequest](communicationrequest.html): Focus of message 2245* [Composition](composition.html): Who and/or what the composition is about 2246* [Condition](condition.html): Who has the condition? 2247* [Consent](consent.html): Who the consent applies to 2248* [Contract](contract.html): The identity of the subject of the contract (if a patient) 2249* [Coverage](coverage.html): Retrieve coverages for a patient 2250* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 2251* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 2252* [DetectedIssue](detectedissue.html): Associated patient 2253* [DeviceRequest](devicerequest.html): Individual the service is ordered for 2254* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 2255* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 2256* [DocumentReference](documentreference.html): Who/what is the subject of the document 2257* [Encounter](encounter.html): The patient present at the encounter 2258* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 2259* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 2260* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 2261* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 2262* [Flag](flag.html): The identity of a subject to list flags for 2263* [Goal](goal.html): Who this goal is intended for 2264* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 2265* [ImagingSelection](imagingselection.html): Who the study is about 2266* [ImagingStudy](imagingstudy.html): Who the study is about 2267* [Immunization](immunization.html): The patient for the vaccination record 2268* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 2269* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 2270* [Invoice](invoice.html): Recipient(s) of goods and services 2271* [List](list.html): If all resources have the same subject 2272* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 2273* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 2274* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 2275* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 2276* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 2277* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 2278* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 2279* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 2280* [Observation](observation.html): The subject that the observation is about (if patient) 2281* [Person](person.html): The Person links to this Patient 2282* [Procedure](procedure.html): Search by subject - a patient 2283* [Provenance](provenance.html): Where the activity involved patient data 2284* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 2285* [RelatedPerson](relatedperson.html): The patient this related person is related to 2286* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 2287* [ResearchSubject](researchsubject.html): Who or what is part of study 2288* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 2289* [ServiceRequest](servicerequest.html): Search by subject - a patient 2290* [Specimen](specimen.html): The patient the specimen comes from 2291* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 2292* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 2293* [Task](task.html): Search by patient 2294* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 2295</b><br> 2296 * Type: <b>reference</b><br> 2297 * Path: <b>Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient</b><br> 2298 * </p> 2299 */ 2300 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 2301 2302/** 2303 * Constant for fluent queries to be used to add include statements. Specifies 2304 * the path value of "<b>BodyStructure:patient</b>". 2305 */ 2306 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("BodyStructure:patient").toLocked(); 2307 2308 2309} 2310