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