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 * A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.). 052 */ 053@ResourceDef(name="Composition", profile="http://hl7.org/fhir/StructureDefinition/Composition") 054public class Composition extends DomainResource { 055 056 @Block() 057 public static class CompositionAttesterComponent extends BackboneElement implements IBaseBackboneElement { 058 /** 059 * The type of attestation the authenticator offers. 060 */ 061 @Child(name = "mode", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) 062 @Description(shortDefinition="personal | professional | legal | official", formalDefinition="The type of attestation the authenticator offers." ) 063 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/composition-attestation-mode") 064 protected CodeableConcept mode; 065 066 /** 067 * When the composition was attested by the party. 068 */ 069 @Child(name = "time", type = {DateTimeType.class}, order=2, min=0, max=1, modifier=false, summary=false) 070 @Description(shortDefinition="When the composition was attested", formalDefinition="When the composition was attested by the party." ) 071 protected DateTimeType time; 072 073 /** 074 * Who attested the composition in the specified way. 075 */ 076 @Child(name = "party", type = {Patient.class, RelatedPerson.class, Practitioner.class, PractitionerRole.class, Organization.class}, order=3, min=0, max=1, modifier=false, summary=false) 077 @Description(shortDefinition="Who attested the composition", formalDefinition="Who attested the composition in the specified way." ) 078 protected Reference party; 079 080 private static final long serialVersionUID = 545132751L; 081 082 /** 083 * Constructor 084 */ 085 public CompositionAttesterComponent() { 086 super(); 087 } 088 089 /** 090 * Constructor 091 */ 092 public CompositionAttesterComponent(CodeableConcept mode) { 093 super(); 094 this.setMode(mode); 095 } 096 097 /** 098 * @return {@link #mode} (The type of attestation the authenticator offers.) 099 */ 100 public CodeableConcept getMode() { 101 if (this.mode == null) 102 if (Configuration.errorOnAutoCreate()) 103 throw new Error("Attempt to auto-create CompositionAttesterComponent.mode"); 104 else if (Configuration.doAutoCreate()) 105 this.mode = new CodeableConcept(); // cc 106 return this.mode; 107 } 108 109 public boolean hasMode() { 110 return this.mode != null && !this.mode.isEmpty(); 111 } 112 113 /** 114 * @param value {@link #mode} (The type of attestation the authenticator offers.) 115 */ 116 public CompositionAttesterComponent setMode(CodeableConcept value) { 117 this.mode = value; 118 return this; 119 } 120 121 /** 122 * @return {@link #time} (When the composition was attested by the party.). This is the underlying object with id, value and extensions. The accessor "getTime" gives direct access to the value 123 */ 124 public DateTimeType getTimeElement() { 125 if (this.time == null) 126 if (Configuration.errorOnAutoCreate()) 127 throw new Error("Attempt to auto-create CompositionAttesterComponent.time"); 128 else if (Configuration.doAutoCreate()) 129 this.time = new DateTimeType(); // bb 130 return this.time; 131 } 132 133 public boolean hasTimeElement() { 134 return this.time != null && !this.time.isEmpty(); 135 } 136 137 public boolean hasTime() { 138 return this.time != null && !this.time.isEmpty(); 139 } 140 141 /** 142 * @param value {@link #time} (When the composition was attested by the party.). This is the underlying object with id, value and extensions. The accessor "getTime" gives direct access to the value 143 */ 144 public CompositionAttesterComponent setTimeElement(DateTimeType value) { 145 this.time = value; 146 return this; 147 } 148 149 /** 150 * @return When the composition was attested by the party. 151 */ 152 public Date getTime() { 153 return this.time == null ? null : this.time.getValue(); 154 } 155 156 /** 157 * @param value When the composition was attested by the party. 158 */ 159 public CompositionAttesterComponent setTime(Date value) { 160 if (value == null) 161 this.time = null; 162 else { 163 if (this.time == null) 164 this.time = new DateTimeType(); 165 this.time.setValue(value); 166 } 167 return this; 168 } 169 170 /** 171 * @return {@link #party} (Who attested the composition in the specified way.) 172 */ 173 public Reference getParty() { 174 if (this.party == null) 175 if (Configuration.errorOnAutoCreate()) 176 throw new Error("Attempt to auto-create CompositionAttesterComponent.party"); 177 else if (Configuration.doAutoCreate()) 178 this.party = new Reference(); // cc 179 return this.party; 180 } 181 182 public boolean hasParty() { 183 return this.party != null && !this.party.isEmpty(); 184 } 185 186 /** 187 * @param value {@link #party} (Who attested the composition in the specified way.) 188 */ 189 public CompositionAttesterComponent setParty(Reference value) { 190 this.party = value; 191 return this; 192 } 193 194 protected void listChildren(List<Property> children) { 195 super.listChildren(children); 196 children.add(new Property("mode", "CodeableConcept", "The type of attestation the authenticator offers.", 0, 1, mode)); 197 children.add(new Property("time", "dateTime", "When the composition was attested by the party.", 0, 1, time)); 198 children.add(new Property("party", "Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Who attested the composition in the specified way.", 0, 1, party)); 199 } 200 201 @Override 202 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 203 switch (_hash) { 204 case 3357091: /*mode*/ return new Property("mode", "CodeableConcept", "The type of attestation the authenticator offers.", 0, 1, mode); 205 case 3560141: /*time*/ return new Property("time", "dateTime", "When the composition was attested by the party.", 0, 1, time); 206 case 106437350: /*party*/ return new Property("party", "Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Who attested the composition in the specified way.", 0, 1, party); 207 default: return super.getNamedProperty(_hash, _name, _checkValid); 208 } 209 210 } 211 212 @Override 213 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 214 switch (hash) { 215 case 3357091: /*mode*/ return this.mode == null ? new Base[0] : new Base[] {this.mode}; // CodeableConcept 216 case 3560141: /*time*/ return this.time == null ? new Base[0] : new Base[] {this.time}; // DateTimeType 217 case 106437350: /*party*/ return this.party == null ? new Base[0] : new Base[] {this.party}; // Reference 218 default: return super.getProperty(hash, name, checkValid); 219 } 220 221 } 222 223 @Override 224 public Base setProperty(int hash, String name, Base value) throws FHIRException { 225 switch (hash) { 226 case 3357091: // mode 227 this.mode = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 228 return value; 229 case 3560141: // time 230 this.time = TypeConvertor.castToDateTime(value); // DateTimeType 231 return value; 232 case 106437350: // party 233 this.party = TypeConvertor.castToReference(value); // Reference 234 return value; 235 default: return super.setProperty(hash, name, value); 236 } 237 238 } 239 240 @Override 241 public Base setProperty(String name, Base value) throws FHIRException { 242 if (name.equals("mode")) { 243 this.mode = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 244 } else if (name.equals("time")) { 245 this.time = TypeConvertor.castToDateTime(value); // DateTimeType 246 } else if (name.equals("party")) { 247 this.party = TypeConvertor.castToReference(value); // Reference 248 } else 249 return super.setProperty(name, value); 250 return value; 251 } 252 253 @Override 254 public Base makeProperty(int hash, String name) throws FHIRException { 255 switch (hash) { 256 case 3357091: return getMode(); 257 case 3560141: return getTimeElement(); 258 case 106437350: return getParty(); 259 default: return super.makeProperty(hash, name); 260 } 261 262 } 263 264 @Override 265 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 266 switch (hash) { 267 case 3357091: /*mode*/ return new String[] {"CodeableConcept"}; 268 case 3560141: /*time*/ return new String[] {"dateTime"}; 269 case 106437350: /*party*/ return new String[] {"Reference"}; 270 default: return super.getTypesForProperty(hash, name); 271 } 272 273 } 274 275 @Override 276 public Base addChild(String name) throws FHIRException { 277 if (name.equals("mode")) { 278 this.mode = new CodeableConcept(); 279 return this.mode; 280 } 281 else if (name.equals("time")) { 282 throw new FHIRException("Cannot call addChild on a singleton property Composition.attester.time"); 283 } 284 else if (name.equals("party")) { 285 this.party = new Reference(); 286 return this.party; 287 } 288 else 289 return super.addChild(name); 290 } 291 292 public CompositionAttesterComponent copy() { 293 CompositionAttesterComponent dst = new CompositionAttesterComponent(); 294 copyValues(dst); 295 return dst; 296 } 297 298 public void copyValues(CompositionAttesterComponent dst) { 299 super.copyValues(dst); 300 dst.mode = mode == null ? null : mode.copy(); 301 dst.time = time == null ? null : time.copy(); 302 dst.party = party == null ? null : party.copy(); 303 } 304 305 @Override 306 public boolean equalsDeep(Base other_) { 307 if (!super.equalsDeep(other_)) 308 return false; 309 if (!(other_ instanceof CompositionAttesterComponent)) 310 return false; 311 CompositionAttesterComponent o = (CompositionAttesterComponent) other_; 312 return compareDeep(mode, o.mode, true) && compareDeep(time, o.time, true) && compareDeep(party, o.party, true) 313 ; 314 } 315 316 @Override 317 public boolean equalsShallow(Base other_) { 318 if (!super.equalsShallow(other_)) 319 return false; 320 if (!(other_ instanceof CompositionAttesterComponent)) 321 return false; 322 CompositionAttesterComponent o = (CompositionAttesterComponent) other_; 323 return compareValues(time, o.time, true); 324 } 325 326 public boolean isEmpty() { 327 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(mode, time, party); 328 } 329 330 public String fhirType() { 331 return "Composition.attester"; 332 333 } 334 335 } 336 337 @Block() 338 public static class CompositionEventComponent extends BackboneElement implements IBaseBackboneElement { 339 /** 340 * The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time. 341 */ 342 @Child(name = "period", type = {Period.class}, order=1, min=0, max=1, modifier=false, summary=true) 343 @Description(shortDefinition="The period covered by the documentation", formalDefinition="The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time." ) 344 protected Period period; 345 346 /** 347 * Represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a "History and Physical Report" in which case the procedure being documented is necessarily a "History and Physical" act. The events may be included as a code or as a reference to an other resource. 348 */ 349 @Child(name = "detail", type = {CodeableReference.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 350 @Description(shortDefinition="The event(s) being documented, as code(s), reference(s), or both", formalDefinition="Represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a \"History and Physical Report\" in which case the procedure being documented is necessarily a \"History and Physical\" act. The events may be included as a code or as a reference to an other resource." ) 351 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://terminology.hl7.org/ValueSet/v3-ActCode") 352 protected List<CodeableReference> detail; 353 354 private static final long serialVersionUID = -2108044093L; 355 356 /** 357 * Constructor 358 */ 359 public CompositionEventComponent() { 360 super(); 361 } 362 363 /** 364 * @return {@link #period} (The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time.) 365 */ 366 public Period getPeriod() { 367 if (this.period == null) 368 if (Configuration.errorOnAutoCreate()) 369 throw new Error("Attempt to auto-create CompositionEventComponent.period"); 370 else if (Configuration.doAutoCreate()) 371 this.period = new Period(); // cc 372 return this.period; 373 } 374 375 public boolean hasPeriod() { 376 return this.period != null && !this.period.isEmpty(); 377 } 378 379 /** 380 * @param value {@link #period} (The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time.) 381 */ 382 public CompositionEventComponent setPeriod(Period value) { 383 this.period = value; 384 return this; 385 } 386 387 /** 388 * @return {@link #detail} (Represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a "History and Physical Report" in which case the procedure being documented is necessarily a "History and Physical" act. The events may be included as a code or as a reference to an other resource.) 389 */ 390 public List<CodeableReference> getDetail() { 391 if (this.detail == null) 392 this.detail = new ArrayList<CodeableReference>(); 393 return this.detail; 394 } 395 396 /** 397 * @return Returns a reference to <code>this</code> for easy method chaining 398 */ 399 public CompositionEventComponent setDetail(List<CodeableReference> theDetail) { 400 this.detail = theDetail; 401 return this; 402 } 403 404 public boolean hasDetail() { 405 if (this.detail == null) 406 return false; 407 for (CodeableReference item : this.detail) 408 if (!item.isEmpty()) 409 return true; 410 return false; 411 } 412 413 public CodeableReference addDetail() { //3 414 CodeableReference t = new CodeableReference(); 415 if (this.detail == null) 416 this.detail = new ArrayList<CodeableReference>(); 417 this.detail.add(t); 418 return t; 419 } 420 421 public CompositionEventComponent addDetail(CodeableReference t) { //3 422 if (t == null) 423 return this; 424 if (this.detail == null) 425 this.detail = new ArrayList<CodeableReference>(); 426 this.detail.add(t); 427 return this; 428 } 429 430 /** 431 * @return The first repetition of repeating field {@link #detail}, creating it if it does not already exist {3} 432 */ 433 public CodeableReference getDetailFirstRep() { 434 if (getDetail().isEmpty()) { 435 addDetail(); 436 } 437 return getDetail().get(0); 438 } 439 440 protected void listChildren(List<Property> children) { 441 super.listChildren(children); 442 children.add(new Property("period", "Period", "The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time.", 0, 1, period)); 443 children.add(new Property("detail", "CodeableReference(Any)", "Represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a \"History and Physical Report\" in which case the procedure being documented is necessarily a \"History and Physical\" act. The events may be included as a code or as a reference to an other resource.", 0, java.lang.Integer.MAX_VALUE, detail)); 444 } 445 446 @Override 447 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 448 switch (_hash) { 449 case -991726143: /*period*/ return new Property("period", "Period", "The period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time.", 0, 1, period); 450 case -1335224239: /*detail*/ return new Property("detail", "CodeableReference(Any)", "Represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a \"History and Physical Report\" in which case the procedure being documented is necessarily a \"History and Physical\" act. The events may be included as a code or as a reference to an other resource.", 0, java.lang.Integer.MAX_VALUE, detail); 451 default: return super.getNamedProperty(_hash, _name, _checkValid); 452 } 453 454 } 455 456 @Override 457 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 458 switch (hash) { 459 case -991726143: /*period*/ return this.period == null ? new Base[0] : new Base[] {this.period}; // Period 460 case -1335224239: /*detail*/ return this.detail == null ? new Base[0] : this.detail.toArray(new Base[this.detail.size()]); // CodeableReference 461 default: return super.getProperty(hash, name, checkValid); 462 } 463 464 } 465 466 @Override 467 public Base setProperty(int hash, String name, Base value) throws FHIRException { 468 switch (hash) { 469 case -991726143: // period 470 this.period = TypeConvertor.castToPeriod(value); // Period 471 return value; 472 case -1335224239: // detail 473 this.getDetail().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference 474 return value; 475 default: return super.setProperty(hash, name, value); 476 } 477 478 } 479 480 @Override 481 public Base setProperty(String name, Base value) throws FHIRException { 482 if (name.equals("period")) { 483 this.period = TypeConvertor.castToPeriod(value); // Period 484 } else if (name.equals("detail")) { 485 this.getDetail().add(TypeConvertor.castToCodeableReference(value)); 486 } else 487 return super.setProperty(name, value); 488 return value; 489 } 490 491 @Override 492 public Base makeProperty(int hash, String name) throws FHIRException { 493 switch (hash) { 494 case -991726143: return getPeriod(); 495 case -1335224239: return addDetail(); 496 default: return super.makeProperty(hash, name); 497 } 498 499 } 500 501 @Override 502 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 503 switch (hash) { 504 case -991726143: /*period*/ return new String[] {"Period"}; 505 case -1335224239: /*detail*/ return new String[] {"CodeableReference"}; 506 default: return super.getTypesForProperty(hash, name); 507 } 508 509 } 510 511 @Override 512 public Base addChild(String name) throws FHIRException { 513 if (name.equals("period")) { 514 this.period = new Period(); 515 return this.period; 516 } 517 else if (name.equals("detail")) { 518 return addDetail(); 519 } 520 else 521 return super.addChild(name); 522 } 523 524 public CompositionEventComponent copy() { 525 CompositionEventComponent dst = new CompositionEventComponent(); 526 copyValues(dst); 527 return dst; 528 } 529 530 public void copyValues(CompositionEventComponent dst) { 531 super.copyValues(dst); 532 dst.period = period == null ? null : period.copy(); 533 if (detail != null) { 534 dst.detail = new ArrayList<CodeableReference>(); 535 for (CodeableReference i : detail) 536 dst.detail.add(i.copy()); 537 }; 538 } 539 540 @Override 541 public boolean equalsDeep(Base other_) { 542 if (!super.equalsDeep(other_)) 543 return false; 544 if (!(other_ instanceof CompositionEventComponent)) 545 return false; 546 CompositionEventComponent o = (CompositionEventComponent) other_; 547 return compareDeep(period, o.period, true) && compareDeep(detail, o.detail, true); 548 } 549 550 @Override 551 public boolean equalsShallow(Base other_) { 552 if (!super.equalsShallow(other_)) 553 return false; 554 if (!(other_ instanceof CompositionEventComponent)) 555 return false; 556 CompositionEventComponent o = (CompositionEventComponent) other_; 557 return true; 558 } 559 560 public boolean isEmpty() { 561 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(period, detail); 562 } 563 564 public String fhirType() { 565 return "Composition.event"; 566 567 } 568 569 } 570 571 @Block() 572 public static class SectionComponent extends BackboneElement implements IBaseBackboneElement { 573 /** 574 * The label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents. 575 */ 576 @Child(name = "title", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) 577 @Description(shortDefinition="Label for section (e.g. for ToC)", formalDefinition="The label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents." ) 578 protected StringType title; 579 580 /** 581 * A code identifying the kind of content contained within the section. This must be consistent with the section title. 582 */ 583 @Child(name = "code", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=false) 584 @Description(shortDefinition="Classification of section (recommended)", formalDefinition="A code identifying the kind of content contained within the section. This must be consistent with the section title." ) 585 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/doc-section-codes") 586 protected CodeableConcept code; 587 588 /** 589 * Identifies who is responsible for the information in this section, not necessarily who typed it in. 590 */ 591 @Child(name = "author", type = {Practitioner.class, PractitionerRole.class, Device.class, Patient.class, RelatedPerson.class, Organization.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 592 @Description(shortDefinition="Who and/or what authored the section", formalDefinition="Identifies who is responsible for the information in this section, not necessarily who typed it in." ) 593 protected List<Reference> author; 594 595 /** 596 * The actual focus of the section when it is not the subject of the composition, but instead represents something or someone associated with the subject such as (for a patient subject) a spouse, parent, fetus, or donor. If not focus is specified, the focus is assumed to be focus of the parent section, or, for a section in the Composition itself, the subject of the composition. Sections with a focus SHALL only include resources where the logical subject (patient, subject, focus, etc.) matches the section focus, or the resources have no logical subject (few resources). 597 */ 598 @Child(name = "focus", type = {Reference.class}, order=4, min=0, max=1, modifier=false, summary=false) 599 @Description(shortDefinition="Who/what the section is about, when it is not about the subject of composition", formalDefinition="The actual focus of the section when it is not the subject of the composition, but instead represents something or someone associated with the subject such as (for a patient subject) a spouse, parent, fetus, or donor. If not focus is specified, the focus is assumed to be focus of the parent section, or, for a section in the Composition itself, the subject of the composition. Sections with a focus SHALL only include resources where the logical subject (patient, subject, focus, etc.) matches the section focus, or the resources have no logical subject (few resources)." ) 600 protected Reference focus; 601 602 /** 603 * A human-readable narrative that contains the attested content of the section, used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. 604 */ 605 @Child(name = "text", type = {Narrative.class}, order=5, min=0, max=1, modifier=false, summary=false) 606 @Description(shortDefinition="Text summary of the section, for human interpretation", formalDefinition="A human-readable narrative that contains the attested content of the section, used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative." ) 607 protected Narrative text; 608 609 /** 610 * Specifies the order applied to the items in the section entries. 611 */ 612 @Child(name = "orderedBy", type = {CodeableConcept.class}, order=6, min=0, max=1, modifier=false, summary=false) 613 @Description(shortDefinition="Order of section entries", formalDefinition="Specifies the order applied to the items in the section entries." ) 614 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/list-order") 615 protected CodeableConcept orderedBy; 616 617 /** 618 * A reference to the actual resource from which the narrative in the section is derived. 619 */ 620 @Child(name = "entry", type = {Reference.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 621 @Description(shortDefinition="A reference to data that supports this section", formalDefinition="A reference to the actual resource from which the narrative in the section is derived." ) 622 protected List<Reference> entry; 623 624 /** 625 * If the section is empty, why the list is empty. An empty section typically has some text explaining the empty reason. 626 */ 627 @Child(name = "emptyReason", type = {CodeableConcept.class}, order=8, min=0, max=1, modifier=false, summary=false) 628 @Description(shortDefinition="Why the section is empty", formalDefinition="If the section is empty, why the list is empty. An empty section typically has some text explaining the empty reason." ) 629 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/list-empty-reason") 630 protected CodeableConcept emptyReason; 631 632 /** 633 * A nested sub-section within this section. 634 */ 635 @Child(name = "section", type = {SectionComponent.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 636 @Description(shortDefinition="Nested Section", formalDefinition="A nested sub-section within this section." ) 637 protected List<SectionComponent> section; 638 639 private static final long serialVersionUID = 902802086L; 640 641 /** 642 * Constructor 643 */ 644 public SectionComponent() { 645 super(); 646 } 647 648 /** 649 * @return {@link #title} (The label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 650 */ 651 public StringType getTitleElement() { 652 if (this.title == null) 653 if (Configuration.errorOnAutoCreate()) 654 throw new Error("Attempt to auto-create SectionComponent.title"); 655 else if (Configuration.doAutoCreate()) 656 this.title = new StringType(); // bb 657 return this.title; 658 } 659 660 public boolean hasTitleElement() { 661 return this.title != null && !this.title.isEmpty(); 662 } 663 664 public boolean hasTitle() { 665 return this.title != null && !this.title.isEmpty(); 666 } 667 668 /** 669 * @param value {@link #title} (The label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 670 */ 671 public SectionComponent setTitleElement(StringType value) { 672 this.title = value; 673 return this; 674 } 675 676 /** 677 * @return The label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents. 678 */ 679 public String getTitle() { 680 return this.title == null ? null : this.title.getValue(); 681 } 682 683 /** 684 * @param value The label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents. 685 */ 686 public SectionComponent setTitle(String value) { 687 if (Utilities.noString(value)) 688 this.title = null; 689 else { 690 if (this.title == null) 691 this.title = new StringType(); 692 this.title.setValue(value); 693 } 694 return this; 695 } 696 697 /** 698 * @return {@link #code} (A code identifying the kind of content contained within the section. This must be consistent with the section title.) 699 */ 700 public CodeableConcept getCode() { 701 if (this.code == null) 702 if (Configuration.errorOnAutoCreate()) 703 throw new Error("Attempt to auto-create SectionComponent.code"); 704 else if (Configuration.doAutoCreate()) 705 this.code = new CodeableConcept(); // cc 706 return this.code; 707 } 708 709 public boolean hasCode() { 710 return this.code != null && !this.code.isEmpty(); 711 } 712 713 /** 714 * @param value {@link #code} (A code identifying the kind of content contained within the section. This must be consistent with the section title.) 715 */ 716 public SectionComponent setCode(CodeableConcept value) { 717 this.code = value; 718 return this; 719 } 720 721 /** 722 * @return {@link #author} (Identifies who is responsible for the information in this section, not necessarily who typed it in.) 723 */ 724 public List<Reference> getAuthor() { 725 if (this.author == null) 726 this.author = new ArrayList<Reference>(); 727 return this.author; 728 } 729 730 /** 731 * @return Returns a reference to <code>this</code> for easy method chaining 732 */ 733 public SectionComponent setAuthor(List<Reference> theAuthor) { 734 this.author = theAuthor; 735 return this; 736 } 737 738 public boolean hasAuthor() { 739 if (this.author == null) 740 return false; 741 for (Reference item : this.author) 742 if (!item.isEmpty()) 743 return true; 744 return false; 745 } 746 747 public Reference addAuthor() { //3 748 Reference t = new Reference(); 749 if (this.author == null) 750 this.author = new ArrayList<Reference>(); 751 this.author.add(t); 752 return t; 753 } 754 755 public SectionComponent addAuthor(Reference t) { //3 756 if (t == null) 757 return this; 758 if (this.author == null) 759 this.author = new ArrayList<Reference>(); 760 this.author.add(t); 761 return this; 762 } 763 764 /** 765 * @return The first repetition of repeating field {@link #author}, creating it if it does not already exist {3} 766 */ 767 public Reference getAuthorFirstRep() { 768 if (getAuthor().isEmpty()) { 769 addAuthor(); 770 } 771 return getAuthor().get(0); 772 } 773 774 /** 775 * @return {@link #focus} (The actual focus of the section when it is not the subject of the composition, but instead represents something or someone associated with the subject such as (for a patient subject) a spouse, parent, fetus, or donor. If not focus is specified, the focus is assumed to be focus of the parent section, or, for a section in the Composition itself, the subject of the composition. Sections with a focus SHALL only include resources where the logical subject (patient, subject, focus, etc.) matches the section focus, or the resources have no logical subject (few resources).) 776 */ 777 public Reference getFocus() { 778 if (this.focus == null) 779 if (Configuration.errorOnAutoCreate()) 780 throw new Error("Attempt to auto-create SectionComponent.focus"); 781 else if (Configuration.doAutoCreate()) 782 this.focus = new Reference(); // cc 783 return this.focus; 784 } 785 786 public boolean hasFocus() { 787 return this.focus != null && !this.focus.isEmpty(); 788 } 789 790 /** 791 * @param value {@link #focus} (The actual focus of the section when it is not the subject of the composition, but instead represents something or someone associated with the subject such as (for a patient subject) a spouse, parent, fetus, or donor. If not focus is specified, the focus is assumed to be focus of the parent section, or, for a section in the Composition itself, the subject of the composition. Sections with a focus SHALL only include resources where the logical subject (patient, subject, focus, etc.) matches the section focus, or the resources have no logical subject (few resources).) 792 */ 793 public SectionComponent setFocus(Reference value) { 794 this.focus = value; 795 return this; 796 } 797 798 /** 799 * @return {@link #text} (A human-readable narrative that contains the attested content of the section, used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative.) 800 */ 801 public Narrative getText() { 802 if (this.text == null) 803 if (Configuration.errorOnAutoCreate()) 804 throw new Error("Attempt to auto-create SectionComponent.text"); 805 else if (Configuration.doAutoCreate()) 806 this.text = new Narrative(); // cc 807 return this.text; 808 } 809 810 public boolean hasText() { 811 return this.text != null && !this.text.isEmpty(); 812 } 813 814 /** 815 * @param value {@link #text} (A human-readable narrative that contains the attested content of the section, used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative.) 816 */ 817 public SectionComponent setText(Narrative value) { 818 this.text = value; 819 return this; 820 } 821 822 /** 823 * @return {@link #orderedBy} (Specifies the order applied to the items in the section entries.) 824 */ 825 public CodeableConcept getOrderedBy() { 826 if (this.orderedBy == null) 827 if (Configuration.errorOnAutoCreate()) 828 throw new Error("Attempt to auto-create SectionComponent.orderedBy"); 829 else if (Configuration.doAutoCreate()) 830 this.orderedBy = new CodeableConcept(); // cc 831 return this.orderedBy; 832 } 833 834 public boolean hasOrderedBy() { 835 return this.orderedBy != null && !this.orderedBy.isEmpty(); 836 } 837 838 /** 839 * @param value {@link #orderedBy} (Specifies the order applied to the items in the section entries.) 840 */ 841 public SectionComponent setOrderedBy(CodeableConcept value) { 842 this.orderedBy = value; 843 return this; 844 } 845 846 /** 847 * @return {@link #entry} (A reference to the actual resource from which the narrative in the section is derived.) 848 */ 849 public List<Reference> getEntry() { 850 if (this.entry == null) 851 this.entry = new ArrayList<Reference>(); 852 return this.entry; 853 } 854 855 /** 856 * @return Returns a reference to <code>this</code> for easy method chaining 857 */ 858 public SectionComponent setEntry(List<Reference> theEntry) { 859 this.entry = theEntry; 860 return this; 861 } 862 863 public boolean hasEntry() { 864 if (this.entry == null) 865 return false; 866 for (Reference item : this.entry) 867 if (!item.isEmpty()) 868 return true; 869 return false; 870 } 871 872 public Reference addEntry() { //3 873 Reference t = new Reference(); 874 if (this.entry == null) 875 this.entry = new ArrayList<Reference>(); 876 this.entry.add(t); 877 return t; 878 } 879 880 public SectionComponent addEntry(Reference t) { //3 881 if (t == null) 882 return this; 883 if (this.entry == null) 884 this.entry = new ArrayList<Reference>(); 885 this.entry.add(t); 886 return this; 887 } 888 889 /** 890 * @return The first repetition of repeating field {@link #entry}, creating it if it does not already exist {3} 891 */ 892 public Reference getEntryFirstRep() { 893 if (getEntry().isEmpty()) { 894 addEntry(); 895 } 896 return getEntry().get(0); 897 } 898 899 /** 900 * @return {@link #emptyReason} (If the section is empty, why the list is empty. An empty section typically has some text explaining the empty reason.) 901 */ 902 public CodeableConcept getEmptyReason() { 903 if (this.emptyReason == null) 904 if (Configuration.errorOnAutoCreate()) 905 throw new Error("Attempt to auto-create SectionComponent.emptyReason"); 906 else if (Configuration.doAutoCreate()) 907 this.emptyReason = new CodeableConcept(); // cc 908 return this.emptyReason; 909 } 910 911 public boolean hasEmptyReason() { 912 return this.emptyReason != null && !this.emptyReason.isEmpty(); 913 } 914 915 /** 916 * @param value {@link #emptyReason} (If the section is empty, why the list is empty. An empty section typically has some text explaining the empty reason.) 917 */ 918 public SectionComponent setEmptyReason(CodeableConcept value) { 919 this.emptyReason = value; 920 return this; 921 } 922 923 /** 924 * @return {@link #section} (A nested sub-section within this section.) 925 */ 926 public List<SectionComponent> getSection() { 927 if (this.section == null) 928 this.section = new ArrayList<SectionComponent>(); 929 return this.section; 930 } 931 932 /** 933 * @return Returns a reference to <code>this</code> for easy method chaining 934 */ 935 public SectionComponent setSection(List<SectionComponent> theSection) { 936 this.section = theSection; 937 return this; 938 } 939 940 public boolean hasSection() { 941 if (this.section == null) 942 return false; 943 for (SectionComponent item : this.section) 944 if (!item.isEmpty()) 945 return true; 946 return false; 947 } 948 949 public SectionComponent addSection() { //3 950 SectionComponent t = new SectionComponent(); 951 if (this.section == null) 952 this.section = new ArrayList<SectionComponent>(); 953 this.section.add(t); 954 return t; 955 } 956 957 public SectionComponent addSection(SectionComponent t) { //3 958 if (t == null) 959 return this; 960 if (this.section == null) 961 this.section = new ArrayList<SectionComponent>(); 962 this.section.add(t); 963 return this; 964 } 965 966 /** 967 * @return The first repetition of repeating field {@link #section}, creating it if it does not already exist {3} 968 */ 969 public SectionComponent getSectionFirstRep() { 970 if (getSection().isEmpty()) { 971 addSection(); 972 } 973 return getSection().get(0); 974 } 975 976 protected void listChildren(List<Property> children) { 977 super.listChildren(children); 978 children.add(new Property("title", "string", "The label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents.", 0, 1, title)); 979 children.add(new Property("code", "CodeableConcept", "A code identifying the kind of content contained within the section. This must be consistent with the section title.", 0, 1, code)); 980 children.add(new Property("author", "Reference(Practitioner|PractitionerRole|Device|Patient|RelatedPerson|Organization)", "Identifies who is responsible for the information in this section, not necessarily who typed it in.", 0, java.lang.Integer.MAX_VALUE, author)); 981 children.add(new Property("focus", "Reference(Any)", "The actual focus of the section when it is not the subject of the composition, but instead represents something or someone associated with the subject such as (for a patient subject) a spouse, parent, fetus, or donor. If not focus is specified, the focus is assumed to be focus of the parent section, or, for a section in the Composition itself, the subject of the composition. Sections with a focus SHALL only include resources where the logical subject (patient, subject, focus, etc.) matches the section focus, or the resources have no logical subject (few resources).", 0, 1, focus)); 982 children.add(new Property("text", "Narrative", "A human-readable narrative that contains the attested content of the section, used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative.", 0, 1, text)); 983 children.add(new Property("orderedBy", "CodeableConcept", "Specifies the order applied to the items in the section entries.", 0, 1, orderedBy)); 984 children.add(new Property("entry", "Reference(Any)", "A reference to the actual resource from which the narrative in the section is derived.", 0, java.lang.Integer.MAX_VALUE, entry)); 985 children.add(new Property("emptyReason", "CodeableConcept", "If the section is empty, why the list is empty. An empty section typically has some text explaining the empty reason.", 0, 1, emptyReason)); 986 children.add(new Property("section", "@Composition.section", "A nested sub-section within this section.", 0, java.lang.Integer.MAX_VALUE, section)); 987 } 988 989 @Override 990 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 991 switch (_hash) { 992 case 110371416: /*title*/ return new Property("title", "string", "The label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents.", 0, 1, title); 993 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "A code identifying the kind of content contained within the section. This must be consistent with the section title.", 0, 1, code); 994 case -1406328437: /*author*/ return new Property("author", "Reference(Practitioner|PractitionerRole|Device|Patient|RelatedPerson|Organization)", "Identifies who is responsible for the information in this section, not necessarily who typed it in.", 0, java.lang.Integer.MAX_VALUE, author); 995 case 97604824: /*focus*/ return new Property("focus", "Reference(Any)", "The actual focus of the section when it is not the subject of the composition, but instead represents something or someone associated with the subject such as (for a patient subject) a spouse, parent, fetus, or donor. If not focus is specified, the focus is assumed to be focus of the parent section, or, for a section in the Composition itself, the subject of the composition. Sections with a focus SHALL only include resources where the logical subject (patient, subject, focus, etc.) matches the section focus, or the resources have no logical subject (few resources).", 0, 1, focus); 996 case 3556653: /*text*/ return new Property("text", "Narrative", "A human-readable narrative that contains the attested content of the section, used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative.", 0, 1, text); 997 case -391079516: /*orderedBy*/ return new Property("orderedBy", "CodeableConcept", "Specifies the order applied to the items in the section entries.", 0, 1, orderedBy); 998 case 96667762: /*entry*/ return new Property("entry", "Reference(Any)", "A reference to the actual resource from which the narrative in the section is derived.", 0, java.lang.Integer.MAX_VALUE, entry); 999 case 1140135409: /*emptyReason*/ return new Property("emptyReason", "CodeableConcept", "If the section is empty, why the list is empty. An empty section typically has some text explaining the empty reason.", 0, 1, emptyReason); 1000 case 1970241253: /*section*/ return new Property("section", "@Composition.section", "A nested sub-section within this section.", 0, java.lang.Integer.MAX_VALUE, section); 1001 default: return super.getNamedProperty(_hash, _name, _checkValid); 1002 } 1003 1004 } 1005 1006 @Override 1007 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1008 switch (hash) { 1009 case 110371416: /*title*/ return this.title == null ? new Base[0] : new Base[] {this.title}; // StringType 1010 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 1011 case -1406328437: /*author*/ return this.author == null ? new Base[0] : this.author.toArray(new Base[this.author.size()]); // Reference 1012 case 97604824: /*focus*/ return this.focus == null ? new Base[0] : new Base[] {this.focus}; // Reference 1013 case 3556653: /*text*/ return this.text == null ? new Base[0] : new Base[] {this.text}; // Narrative 1014 case -391079516: /*orderedBy*/ return this.orderedBy == null ? new Base[0] : new Base[] {this.orderedBy}; // CodeableConcept 1015 case 96667762: /*entry*/ return this.entry == null ? new Base[0] : this.entry.toArray(new Base[this.entry.size()]); // Reference 1016 case 1140135409: /*emptyReason*/ return this.emptyReason == null ? new Base[0] : new Base[] {this.emptyReason}; // CodeableConcept 1017 case 1970241253: /*section*/ return this.section == null ? new Base[0] : this.section.toArray(new Base[this.section.size()]); // SectionComponent 1018 default: return super.getProperty(hash, name, checkValid); 1019 } 1020 1021 } 1022 1023 @Override 1024 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1025 switch (hash) { 1026 case 110371416: // title 1027 this.title = TypeConvertor.castToString(value); // StringType 1028 return value; 1029 case 3059181: // code 1030 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1031 return value; 1032 case -1406328437: // author 1033 this.getAuthor().add(TypeConvertor.castToReference(value)); // Reference 1034 return value; 1035 case 97604824: // focus 1036 this.focus = TypeConvertor.castToReference(value); // Reference 1037 return value; 1038 case 3556653: // text 1039 this.text = TypeConvertor.castToNarrative(value); // Narrative 1040 return value; 1041 case -391079516: // orderedBy 1042 this.orderedBy = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1043 return value; 1044 case 96667762: // entry 1045 this.getEntry().add(TypeConvertor.castToReference(value)); // Reference 1046 return value; 1047 case 1140135409: // emptyReason 1048 this.emptyReason = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1049 return value; 1050 case 1970241253: // section 1051 this.getSection().add((SectionComponent) value); // SectionComponent 1052 return value; 1053 default: return super.setProperty(hash, name, value); 1054 } 1055 1056 } 1057 1058 @Override 1059 public Base setProperty(String name, Base value) throws FHIRException { 1060 if (name.equals("title")) { 1061 this.title = TypeConvertor.castToString(value); // StringType 1062 } else if (name.equals("code")) { 1063 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1064 } else if (name.equals("author")) { 1065 this.getAuthor().add(TypeConvertor.castToReference(value)); 1066 } else if (name.equals("focus")) { 1067 this.focus = TypeConvertor.castToReference(value); // Reference 1068 } else if (name.equals("text")) { 1069 this.text = TypeConvertor.castToNarrative(value); // Narrative 1070 } else if (name.equals("orderedBy")) { 1071 this.orderedBy = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1072 } else if (name.equals("entry")) { 1073 this.getEntry().add(TypeConvertor.castToReference(value)); 1074 } else if (name.equals("emptyReason")) { 1075 this.emptyReason = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1076 } else if (name.equals("section")) { 1077 this.getSection().add((SectionComponent) value); 1078 } else 1079 return super.setProperty(name, value); 1080 return value; 1081 } 1082 1083 @Override 1084 public Base makeProperty(int hash, String name) throws FHIRException { 1085 switch (hash) { 1086 case 110371416: return getTitleElement(); 1087 case 3059181: return getCode(); 1088 case -1406328437: return addAuthor(); 1089 case 97604824: return getFocus(); 1090 case 3556653: return getText(); 1091 case -391079516: return getOrderedBy(); 1092 case 96667762: return addEntry(); 1093 case 1140135409: return getEmptyReason(); 1094 case 1970241253: return addSection(); 1095 default: return super.makeProperty(hash, name); 1096 } 1097 1098 } 1099 1100 @Override 1101 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1102 switch (hash) { 1103 case 110371416: /*title*/ return new String[] {"string"}; 1104 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 1105 case -1406328437: /*author*/ return new String[] {"Reference"}; 1106 case 97604824: /*focus*/ return new String[] {"Reference"}; 1107 case 3556653: /*text*/ return new String[] {"Narrative"}; 1108 case -391079516: /*orderedBy*/ return new String[] {"CodeableConcept"}; 1109 case 96667762: /*entry*/ return new String[] {"Reference"}; 1110 case 1140135409: /*emptyReason*/ return new String[] {"CodeableConcept"}; 1111 case 1970241253: /*section*/ return new String[] {"@Composition.section"}; 1112 default: return super.getTypesForProperty(hash, name); 1113 } 1114 1115 } 1116 1117 @Override 1118 public Base addChild(String name) throws FHIRException { 1119 if (name.equals("title")) { 1120 throw new FHIRException("Cannot call addChild on a singleton property Composition.section.title"); 1121 } 1122 else if (name.equals("code")) { 1123 this.code = new CodeableConcept(); 1124 return this.code; 1125 } 1126 else if (name.equals("author")) { 1127 return addAuthor(); 1128 } 1129 else if (name.equals("focus")) { 1130 this.focus = new Reference(); 1131 return this.focus; 1132 } 1133 else if (name.equals("text")) { 1134 this.text = new Narrative(); 1135 return this.text; 1136 } 1137 else if (name.equals("orderedBy")) { 1138 this.orderedBy = new CodeableConcept(); 1139 return this.orderedBy; 1140 } 1141 else if (name.equals("entry")) { 1142 return addEntry(); 1143 } 1144 else if (name.equals("emptyReason")) { 1145 this.emptyReason = new CodeableConcept(); 1146 return this.emptyReason; 1147 } 1148 else if (name.equals("section")) { 1149 return addSection(); 1150 } 1151 else 1152 return super.addChild(name); 1153 } 1154 1155 public SectionComponent copy() { 1156 SectionComponent dst = new SectionComponent(); 1157 copyValues(dst); 1158 return dst; 1159 } 1160 1161 public void copyValues(SectionComponent dst) { 1162 super.copyValues(dst); 1163 dst.title = title == null ? null : title.copy(); 1164 dst.code = code == null ? null : code.copy(); 1165 if (author != null) { 1166 dst.author = new ArrayList<Reference>(); 1167 for (Reference i : author) 1168 dst.author.add(i.copy()); 1169 }; 1170 dst.focus = focus == null ? null : focus.copy(); 1171 dst.text = text == null ? null : text.copy(); 1172 dst.orderedBy = orderedBy == null ? null : orderedBy.copy(); 1173 if (entry != null) { 1174 dst.entry = new ArrayList<Reference>(); 1175 for (Reference i : entry) 1176 dst.entry.add(i.copy()); 1177 }; 1178 dst.emptyReason = emptyReason == null ? null : emptyReason.copy(); 1179 if (section != null) { 1180 dst.section = new ArrayList<SectionComponent>(); 1181 for (SectionComponent i : section) 1182 dst.section.add(i.copy()); 1183 }; 1184 } 1185 1186 @Override 1187 public boolean equalsDeep(Base other_) { 1188 if (!super.equalsDeep(other_)) 1189 return false; 1190 if (!(other_ instanceof SectionComponent)) 1191 return false; 1192 SectionComponent o = (SectionComponent) other_; 1193 return compareDeep(title, o.title, true) && compareDeep(code, o.code, true) && compareDeep(author, o.author, true) 1194 && compareDeep(focus, o.focus, true) && compareDeep(text, o.text, true) && compareDeep(orderedBy, o.orderedBy, true) 1195 && compareDeep(entry, o.entry, true) && compareDeep(emptyReason, o.emptyReason, true) && compareDeep(section, o.section, true) 1196 ; 1197 } 1198 1199 @Override 1200 public boolean equalsShallow(Base other_) { 1201 if (!super.equalsShallow(other_)) 1202 return false; 1203 if (!(other_ instanceof SectionComponent)) 1204 return false; 1205 SectionComponent o = (SectionComponent) other_; 1206 return compareValues(title, o.title, true); 1207 } 1208 1209 public boolean isEmpty() { 1210 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(title, code, author, focus 1211 , text, orderedBy, entry, emptyReason, section); 1212 } 1213 1214 public String fhirType() { 1215 return "Composition.section"; 1216 1217 } 1218 1219 } 1220 1221 /** 1222 * An absolute URI that is used to identify this Composition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Composition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Composition is stored on different servers. 1223 */ 1224 @Child(name = "url", type = {UriType.class}, order=0, min=0, max=1, modifier=false, summary=true) 1225 @Description(shortDefinition="Canonical identifier for this Composition, represented as a URI (globally unique)", formalDefinition="An absolute URI that is used to identify this Composition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Composition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Composition is stored on different servers." ) 1226 protected UriType url; 1227 1228 /** 1229 * A version-independent identifier for the Composition. This identifier stays constant as the composition is changed over time. 1230 */ 1231 @Child(name = "identifier", type = {Identifier.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1232 @Description(shortDefinition="Version-independent identifier for the Composition", formalDefinition="A version-independent identifier for the Composition. This identifier stays constant as the composition is changed over time." ) 1233 protected List<Identifier> identifier; 1234 1235 /** 1236 * An explicitly assigned identifer of a variation of the content in the Composition. 1237 */ 1238 @Child(name = "version", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=true) 1239 @Description(shortDefinition="An explicitly assigned identifer of a variation of the content in the Composition", formalDefinition="An explicitly assigned identifer of a variation of the content in the Composition." ) 1240 protected StringType version; 1241 1242 /** 1243 * The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document. 1244 */ 1245 @Child(name = "status", type = {CodeType.class}, order=3, min=1, max=1, modifier=true, summary=true) 1246 @Description(shortDefinition="registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown", formalDefinition="The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document." ) 1247 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/composition-status") 1248 protected Enumeration<CompositionStatus> status; 1249 1250 /** 1251 * Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition. 1252 */ 1253 @Child(name = "type", type = {CodeableConcept.class}, order=4, min=1, max=1, modifier=false, summary=true) 1254 @Description(shortDefinition="Kind of composition (LOINC if possible)", formalDefinition="Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition." ) 1255 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/doc-typecodes") 1256 protected CodeableConcept type; 1257 1258 /** 1259 * A categorization for the type of the composition - helps for indexing and searching. This may be implied by or derived from the code specified in the Composition Type. 1260 */ 1261 @Child(name = "category", type = {CodeableConcept.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1262 @Description(shortDefinition="Categorization of Composition", formalDefinition="A categorization for the type of the composition - helps for indexing and searching. This may be implied by or derived from the code specified in the Composition Type." ) 1263 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/referenced-item-category") 1264 protected List<CodeableConcept> category; 1265 1266 /** 1267 * Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure). 1268 */ 1269 @Child(name = "subject", type = {Reference.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1270 @Description(shortDefinition="Who and/or what the composition is about", formalDefinition="Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure)." ) 1271 protected List<Reference> subject; 1272 1273 /** 1274 * Describes the clinical encounter or type of care this documentation is associated with. 1275 */ 1276 @Child(name = "encounter", type = {Encounter.class}, order=7, min=0, max=1, modifier=false, summary=true) 1277 @Description(shortDefinition="Context of the Composition", formalDefinition="Describes the clinical encounter or type of care this documentation is associated with." ) 1278 protected Reference encounter; 1279 1280 /** 1281 * The composition editing time, when the composition was last logically changed by the author. 1282 */ 1283 @Child(name = "date", type = {DateTimeType.class}, order=8, min=1, max=1, modifier=false, summary=true) 1284 @Description(shortDefinition="Composition editing time", formalDefinition="The composition editing time, when the composition was last logically changed by the author." ) 1285 protected DateTimeType date; 1286 1287 /** 1288 * The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate Composition instances. 1289 */ 1290 @Child(name = "useContext", type = {UsageContext.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1291 @Description(shortDefinition="The context that the content is intended to support", formalDefinition="The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate Composition instances." ) 1292 protected List<UsageContext> useContext; 1293 1294 /** 1295 * Identifies who is responsible for the information in the composition, not necessarily who typed it in. 1296 */ 1297 @Child(name = "author", type = {Practitioner.class, PractitionerRole.class, Device.class, Patient.class, RelatedPerson.class, Organization.class}, order=10, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1298 @Description(shortDefinition="Who and/or what authored the composition", formalDefinition="Identifies who is responsible for the information in the composition, not necessarily who typed it in." ) 1299 protected List<Reference> author; 1300 1301 /** 1302 * A natural language name identifying the composition. This name should be usable as an identifier for the module by machine processing applications such as code generation. 1303 */ 1304 @Child(name = "name", type = {StringType.class}, order=11, min=0, max=1, modifier=false, summary=true) 1305 @Description(shortDefinition="Name for this Composition (computer friendly)", formalDefinition="A natural language name identifying the composition. This name should be usable as an identifier for the module by machine processing applications such as code generation." ) 1306 protected StringType name; 1307 1308 /** 1309 * Official human-readable label for the composition. 1310 */ 1311 @Child(name = "title", type = {StringType.class}, order=12, min=1, max=1, modifier=false, summary=true) 1312 @Description(shortDefinition="Human Readable name/title", formalDefinition="Official human-readable label for the composition." ) 1313 protected StringType title; 1314 1315 /** 1316 * For any additional notes. 1317 */ 1318 @Child(name = "note", type = {Annotation.class}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1319 @Description(shortDefinition="For any additional notes", formalDefinition="For any additional notes." ) 1320 protected List<Annotation> note; 1321 1322 /** 1323 * A participant who has attested to the accuracy of the composition/document. 1324 */ 1325 @Child(name = "attester", type = {}, order=14, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1326 @Description(shortDefinition="Attests to accuracy of composition", formalDefinition="A participant who has attested to the accuracy of the composition/document." ) 1327 protected List<CompositionAttesterComponent> attester; 1328 1329 /** 1330 * Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information. 1331 */ 1332 @Child(name = "custodian", type = {Organization.class}, order=15, min=0, max=1, modifier=false, summary=true) 1333 @Description(shortDefinition="Organization which maintains the composition", formalDefinition="Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information." ) 1334 protected Reference custodian; 1335 1336 /** 1337 * Relationships that this composition has with other compositions or documents that already exist. 1338 */ 1339 @Child(name = "relatesTo", type = {RelatedArtifact.class}, order=16, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1340 @Description(shortDefinition="Relationships to other compositions/documents", formalDefinition="Relationships that this composition has with other compositions or documents that already exist." ) 1341 protected List<RelatedArtifact> relatesTo; 1342 1343 /** 1344 * The clinical service, such as a colonoscopy or an appendectomy, being documented. 1345 */ 1346 @Child(name = "event", type = {}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1347 @Description(shortDefinition="The clinical service(s) being documented", formalDefinition="The clinical service, such as a colonoscopy or an appendectomy, being documented." ) 1348 protected List<CompositionEventComponent> event; 1349 1350 /** 1351 * The root of the sections that make up the composition. 1352 */ 1353 @Child(name = "section", type = {}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1354 @Description(shortDefinition="Composition is broken into sections", formalDefinition="The root of the sections that make up the composition." ) 1355 protected List<SectionComponent> section; 1356 1357 private static final long serialVersionUID = 2030933035L; 1358 1359 /** 1360 * Constructor 1361 */ 1362 public Composition() { 1363 super(); 1364 } 1365 1366 /** 1367 * Constructor 1368 */ 1369 public Composition(CompositionStatus status, CodeableConcept type, Date date, Reference author, String title) { 1370 super(); 1371 this.setStatus(status); 1372 this.setType(type); 1373 this.setDate(date); 1374 this.addAuthor(author); 1375 this.setTitle(title); 1376 } 1377 1378 /** 1379 * @return {@link #url} (An absolute URI that is used to identify this Composition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Composition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Composition is stored on different servers.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 1380 */ 1381 public UriType getUrlElement() { 1382 if (this.url == null) 1383 if (Configuration.errorOnAutoCreate()) 1384 throw new Error("Attempt to auto-create Composition.url"); 1385 else if (Configuration.doAutoCreate()) 1386 this.url = new UriType(); // bb 1387 return this.url; 1388 } 1389 1390 public boolean hasUrlElement() { 1391 return this.url != null && !this.url.isEmpty(); 1392 } 1393 1394 public boolean hasUrl() { 1395 return this.url != null && !this.url.isEmpty(); 1396 } 1397 1398 /** 1399 * @param value {@link #url} (An absolute URI that is used to identify this Composition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Composition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Composition is stored on different servers.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 1400 */ 1401 public Composition setUrlElement(UriType value) { 1402 this.url = value; 1403 return this; 1404 } 1405 1406 /** 1407 * @return An absolute URI that is used to identify this Composition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Composition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Composition is stored on different servers. 1408 */ 1409 public String getUrl() { 1410 return this.url == null ? null : this.url.getValue(); 1411 } 1412 1413 /** 1414 * @param value An absolute URI that is used to identify this Composition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Composition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Composition is stored on different servers. 1415 */ 1416 public Composition setUrl(String value) { 1417 if (Utilities.noString(value)) 1418 this.url = null; 1419 else { 1420 if (this.url == null) 1421 this.url = new UriType(); 1422 this.url.setValue(value); 1423 } 1424 return this; 1425 } 1426 1427 /** 1428 * @return {@link #identifier} (A version-independent identifier for the Composition. This identifier stays constant as the composition is changed over time.) 1429 */ 1430 public List<Identifier> getIdentifier() { 1431 if (this.identifier == null) 1432 this.identifier = new ArrayList<Identifier>(); 1433 return this.identifier; 1434 } 1435 1436 /** 1437 * @return Returns a reference to <code>this</code> for easy method chaining 1438 */ 1439 public Composition setIdentifier(List<Identifier> theIdentifier) { 1440 this.identifier = theIdentifier; 1441 return this; 1442 } 1443 1444 public boolean hasIdentifier() { 1445 if (this.identifier == null) 1446 return false; 1447 for (Identifier item : this.identifier) 1448 if (!item.isEmpty()) 1449 return true; 1450 return false; 1451 } 1452 1453 public Identifier addIdentifier() { //3 1454 Identifier t = new Identifier(); 1455 if (this.identifier == null) 1456 this.identifier = new ArrayList<Identifier>(); 1457 this.identifier.add(t); 1458 return t; 1459 } 1460 1461 public Composition addIdentifier(Identifier t) { //3 1462 if (t == null) 1463 return this; 1464 if (this.identifier == null) 1465 this.identifier = new ArrayList<Identifier>(); 1466 this.identifier.add(t); 1467 return this; 1468 } 1469 1470 /** 1471 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 1472 */ 1473 public Identifier getIdentifierFirstRep() { 1474 if (getIdentifier().isEmpty()) { 1475 addIdentifier(); 1476 } 1477 return getIdentifier().get(0); 1478 } 1479 1480 /** 1481 * @return {@link #version} (An explicitly assigned identifer of a variation of the content in the Composition.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 1482 */ 1483 public StringType getVersionElement() { 1484 if (this.version == null) 1485 if (Configuration.errorOnAutoCreate()) 1486 throw new Error("Attempt to auto-create Composition.version"); 1487 else if (Configuration.doAutoCreate()) 1488 this.version = new StringType(); // bb 1489 return this.version; 1490 } 1491 1492 public boolean hasVersionElement() { 1493 return this.version != null && !this.version.isEmpty(); 1494 } 1495 1496 public boolean hasVersion() { 1497 return this.version != null && !this.version.isEmpty(); 1498 } 1499 1500 /** 1501 * @param value {@link #version} (An explicitly assigned identifer of a variation of the content in the Composition.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 1502 */ 1503 public Composition setVersionElement(StringType value) { 1504 this.version = value; 1505 return this; 1506 } 1507 1508 /** 1509 * @return An explicitly assigned identifer of a variation of the content in the Composition. 1510 */ 1511 public String getVersion() { 1512 return this.version == null ? null : this.version.getValue(); 1513 } 1514 1515 /** 1516 * @param value An explicitly assigned identifer of a variation of the content in the Composition. 1517 */ 1518 public Composition setVersion(String value) { 1519 if (Utilities.noString(value)) 1520 this.version = null; 1521 else { 1522 if (this.version == null) 1523 this.version = new StringType(); 1524 this.version.setValue(value); 1525 } 1526 return this; 1527 } 1528 1529 /** 1530 * @return {@link #status} (The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1531 */ 1532 public Enumeration<CompositionStatus> getStatusElement() { 1533 if (this.status == null) 1534 if (Configuration.errorOnAutoCreate()) 1535 throw new Error("Attempt to auto-create Composition.status"); 1536 else if (Configuration.doAutoCreate()) 1537 this.status = new Enumeration<CompositionStatus>(new CompositionStatusEnumFactory()); // bb 1538 return this.status; 1539 } 1540 1541 public boolean hasStatusElement() { 1542 return this.status != null && !this.status.isEmpty(); 1543 } 1544 1545 public boolean hasStatus() { 1546 return this.status != null && !this.status.isEmpty(); 1547 } 1548 1549 /** 1550 * @param value {@link #status} (The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1551 */ 1552 public Composition setStatusElement(Enumeration<CompositionStatus> value) { 1553 this.status = value; 1554 return this; 1555 } 1556 1557 /** 1558 * @return The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document. 1559 */ 1560 public CompositionStatus getStatus() { 1561 return this.status == null ? null : this.status.getValue(); 1562 } 1563 1564 /** 1565 * @param value The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document. 1566 */ 1567 public Composition setStatus(CompositionStatus value) { 1568 if (this.status == null) 1569 this.status = new Enumeration<CompositionStatus>(new CompositionStatusEnumFactory()); 1570 this.status.setValue(value); 1571 return this; 1572 } 1573 1574 /** 1575 * @return {@link #type} (Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition.) 1576 */ 1577 public CodeableConcept getType() { 1578 if (this.type == null) 1579 if (Configuration.errorOnAutoCreate()) 1580 throw new Error("Attempt to auto-create Composition.type"); 1581 else if (Configuration.doAutoCreate()) 1582 this.type = new CodeableConcept(); // cc 1583 return this.type; 1584 } 1585 1586 public boolean hasType() { 1587 return this.type != null && !this.type.isEmpty(); 1588 } 1589 1590 /** 1591 * @param value {@link #type} (Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition.) 1592 */ 1593 public Composition setType(CodeableConcept value) { 1594 this.type = value; 1595 return this; 1596 } 1597 1598 /** 1599 * @return {@link #category} (A categorization for the type of the composition - helps for indexing and searching. This may be implied by or derived from the code specified in the Composition Type.) 1600 */ 1601 public List<CodeableConcept> getCategory() { 1602 if (this.category == null) 1603 this.category = new ArrayList<CodeableConcept>(); 1604 return this.category; 1605 } 1606 1607 /** 1608 * @return Returns a reference to <code>this</code> for easy method chaining 1609 */ 1610 public Composition setCategory(List<CodeableConcept> theCategory) { 1611 this.category = theCategory; 1612 return this; 1613 } 1614 1615 public boolean hasCategory() { 1616 if (this.category == null) 1617 return false; 1618 for (CodeableConcept item : this.category) 1619 if (!item.isEmpty()) 1620 return true; 1621 return false; 1622 } 1623 1624 public CodeableConcept addCategory() { //3 1625 CodeableConcept t = new CodeableConcept(); 1626 if (this.category == null) 1627 this.category = new ArrayList<CodeableConcept>(); 1628 this.category.add(t); 1629 return t; 1630 } 1631 1632 public Composition addCategory(CodeableConcept t) { //3 1633 if (t == null) 1634 return this; 1635 if (this.category == null) 1636 this.category = new ArrayList<CodeableConcept>(); 1637 this.category.add(t); 1638 return this; 1639 } 1640 1641 /** 1642 * @return The first repetition of repeating field {@link #category}, creating it if it does not already exist {3} 1643 */ 1644 public CodeableConcept getCategoryFirstRep() { 1645 if (getCategory().isEmpty()) { 1646 addCategory(); 1647 } 1648 return getCategory().get(0); 1649 } 1650 1651 /** 1652 * @return {@link #subject} (Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure).) 1653 */ 1654 public List<Reference> getSubject() { 1655 if (this.subject == null) 1656 this.subject = new ArrayList<Reference>(); 1657 return this.subject; 1658 } 1659 1660 /** 1661 * @return Returns a reference to <code>this</code> for easy method chaining 1662 */ 1663 public Composition setSubject(List<Reference> theSubject) { 1664 this.subject = theSubject; 1665 return this; 1666 } 1667 1668 public boolean hasSubject() { 1669 if (this.subject == null) 1670 return false; 1671 for (Reference item : this.subject) 1672 if (!item.isEmpty()) 1673 return true; 1674 return false; 1675 } 1676 1677 public Reference addSubject() { //3 1678 Reference t = new Reference(); 1679 if (this.subject == null) 1680 this.subject = new ArrayList<Reference>(); 1681 this.subject.add(t); 1682 return t; 1683 } 1684 1685 public Composition addSubject(Reference t) { //3 1686 if (t == null) 1687 return this; 1688 if (this.subject == null) 1689 this.subject = new ArrayList<Reference>(); 1690 this.subject.add(t); 1691 return this; 1692 } 1693 1694 /** 1695 * @return The first repetition of repeating field {@link #subject}, creating it if it does not already exist {3} 1696 */ 1697 public Reference getSubjectFirstRep() { 1698 if (getSubject().isEmpty()) { 1699 addSubject(); 1700 } 1701 return getSubject().get(0); 1702 } 1703 1704 /** 1705 * @return {@link #encounter} (Describes the clinical encounter or type of care this documentation is associated with.) 1706 */ 1707 public Reference getEncounter() { 1708 if (this.encounter == null) 1709 if (Configuration.errorOnAutoCreate()) 1710 throw new Error("Attempt to auto-create Composition.encounter"); 1711 else if (Configuration.doAutoCreate()) 1712 this.encounter = new Reference(); // cc 1713 return this.encounter; 1714 } 1715 1716 public boolean hasEncounter() { 1717 return this.encounter != null && !this.encounter.isEmpty(); 1718 } 1719 1720 /** 1721 * @param value {@link #encounter} (Describes the clinical encounter or type of care this documentation is associated with.) 1722 */ 1723 public Composition setEncounter(Reference value) { 1724 this.encounter = value; 1725 return this; 1726 } 1727 1728 /** 1729 * @return {@link #date} (The composition editing time, when the composition was last logically changed by the author.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 1730 */ 1731 public DateTimeType getDateElement() { 1732 if (this.date == null) 1733 if (Configuration.errorOnAutoCreate()) 1734 throw new Error("Attempt to auto-create Composition.date"); 1735 else if (Configuration.doAutoCreate()) 1736 this.date = new DateTimeType(); // bb 1737 return this.date; 1738 } 1739 1740 public boolean hasDateElement() { 1741 return this.date != null && !this.date.isEmpty(); 1742 } 1743 1744 public boolean hasDate() { 1745 return this.date != null && !this.date.isEmpty(); 1746 } 1747 1748 /** 1749 * @param value {@link #date} (The composition editing time, when the composition was last logically changed by the author.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 1750 */ 1751 public Composition setDateElement(DateTimeType value) { 1752 this.date = value; 1753 return this; 1754 } 1755 1756 /** 1757 * @return The composition editing time, when the composition was last logically changed by the author. 1758 */ 1759 public Date getDate() { 1760 return this.date == null ? null : this.date.getValue(); 1761 } 1762 1763 /** 1764 * @param value The composition editing time, when the composition was last logically changed by the author. 1765 */ 1766 public Composition setDate(Date value) { 1767 if (this.date == null) 1768 this.date = new DateTimeType(); 1769 this.date.setValue(value); 1770 return this; 1771 } 1772 1773 /** 1774 * @return {@link #useContext} (The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate Composition instances.) 1775 */ 1776 public List<UsageContext> getUseContext() { 1777 if (this.useContext == null) 1778 this.useContext = new ArrayList<UsageContext>(); 1779 return this.useContext; 1780 } 1781 1782 /** 1783 * @return Returns a reference to <code>this</code> for easy method chaining 1784 */ 1785 public Composition setUseContext(List<UsageContext> theUseContext) { 1786 this.useContext = theUseContext; 1787 return this; 1788 } 1789 1790 public boolean hasUseContext() { 1791 if (this.useContext == null) 1792 return false; 1793 for (UsageContext item : this.useContext) 1794 if (!item.isEmpty()) 1795 return true; 1796 return false; 1797 } 1798 1799 public UsageContext addUseContext() { //3 1800 UsageContext t = new UsageContext(); 1801 if (this.useContext == null) 1802 this.useContext = new ArrayList<UsageContext>(); 1803 this.useContext.add(t); 1804 return t; 1805 } 1806 1807 public Composition addUseContext(UsageContext t) { //3 1808 if (t == null) 1809 return this; 1810 if (this.useContext == null) 1811 this.useContext = new ArrayList<UsageContext>(); 1812 this.useContext.add(t); 1813 return this; 1814 } 1815 1816 /** 1817 * @return The first repetition of repeating field {@link #useContext}, creating it if it does not already exist {3} 1818 */ 1819 public UsageContext getUseContextFirstRep() { 1820 if (getUseContext().isEmpty()) { 1821 addUseContext(); 1822 } 1823 return getUseContext().get(0); 1824 } 1825 1826 /** 1827 * @return {@link #author} (Identifies who is responsible for the information in the composition, not necessarily who typed it in.) 1828 */ 1829 public List<Reference> getAuthor() { 1830 if (this.author == null) 1831 this.author = new ArrayList<Reference>(); 1832 return this.author; 1833 } 1834 1835 /** 1836 * @return Returns a reference to <code>this</code> for easy method chaining 1837 */ 1838 public Composition setAuthor(List<Reference> theAuthor) { 1839 this.author = theAuthor; 1840 return this; 1841 } 1842 1843 public boolean hasAuthor() { 1844 if (this.author == null) 1845 return false; 1846 for (Reference item : this.author) 1847 if (!item.isEmpty()) 1848 return true; 1849 return false; 1850 } 1851 1852 public Reference addAuthor() { //3 1853 Reference t = new Reference(); 1854 if (this.author == null) 1855 this.author = new ArrayList<Reference>(); 1856 this.author.add(t); 1857 return t; 1858 } 1859 1860 public Composition addAuthor(Reference t) { //3 1861 if (t == null) 1862 return this; 1863 if (this.author == null) 1864 this.author = new ArrayList<Reference>(); 1865 this.author.add(t); 1866 return this; 1867 } 1868 1869 /** 1870 * @return The first repetition of repeating field {@link #author}, creating it if it does not already exist {3} 1871 */ 1872 public Reference getAuthorFirstRep() { 1873 if (getAuthor().isEmpty()) { 1874 addAuthor(); 1875 } 1876 return getAuthor().get(0); 1877 } 1878 1879 /** 1880 * @return {@link #name} (A natural language name identifying the composition. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 1881 */ 1882 public StringType getNameElement() { 1883 if (this.name == null) 1884 if (Configuration.errorOnAutoCreate()) 1885 throw new Error("Attempt to auto-create Composition.name"); 1886 else if (Configuration.doAutoCreate()) 1887 this.name = new StringType(); // bb 1888 return this.name; 1889 } 1890 1891 public boolean hasNameElement() { 1892 return this.name != null && !this.name.isEmpty(); 1893 } 1894 1895 public boolean hasName() { 1896 return this.name != null && !this.name.isEmpty(); 1897 } 1898 1899 /** 1900 * @param value {@link #name} (A natural language name identifying the composition. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 1901 */ 1902 public Composition setNameElement(StringType value) { 1903 this.name = value; 1904 return this; 1905 } 1906 1907 /** 1908 * @return A natural language name identifying the composition. This name should be usable as an identifier for the module by machine processing applications such as code generation. 1909 */ 1910 public String getName() { 1911 return this.name == null ? null : this.name.getValue(); 1912 } 1913 1914 /** 1915 * @param value A natural language name identifying the composition. This name should be usable as an identifier for the module by machine processing applications such as code generation. 1916 */ 1917 public Composition setName(String value) { 1918 if (Utilities.noString(value)) 1919 this.name = null; 1920 else { 1921 if (this.name == null) 1922 this.name = new StringType(); 1923 this.name.setValue(value); 1924 } 1925 return this; 1926 } 1927 1928 /** 1929 * @return {@link #title} (Official human-readable label for the composition.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 1930 */ 1931 public StringType getTitleElement() { 1932 if (this.title == null) 1933 if (Configuration.errorOnAutoCreate()) 1934 throw new Error("Attempt to auto-create Composition.title"); 1935 else if (Configuration.doAutoCreate()) 1936 this.title = new StringType(); // bb 1937 return this.title; 1938 } 1939 1940 public boolean hasTitleElement() { 1941 return this.title != null && !this.title.isEmpty(); 1942 } 1943 1944 public boolean hasTitle() { 1945 return this.title != null && !this.title.isEmpty(); 1946 } 1947 1948 /** 1949 * @param value {@link #title} (Official human-readable label for the composition.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 1950 */ 1951 public Composition setTitleElement(StringType value) { 1952 this.title = value; 1953 return this; 1954 } 1955 1956 /** 1957 * @return Official human-readable label for the composition. 1958 */ 1959 public String getTitle() { 1960 return this.title == null ? null : this.title.getValue(); 1961 } 1962 1963 /** 1964 * @param value Official human-readable label for the composition. 1965 */ 1966 public Composition setTitle(String value) { 1967 if (this.title == null) 1968 this.title = new StringType(); 1969 this.title.setValue(value); 1970 return this; 1971 } 1972 1973 /** 1974 * @return {@link #note} (For any additional notes.) 1975 */ 1976 public List<Annotation> getNote() { 1977 if (this.note == null) 1978 this.note = new ArrayList<Annotation>(); 1979 return this.note; 1980 } 1981 1982 /** 1983 * @return Returns a reference to <code>this</code> for easy method chaining 1984 */ 1985 public Composition setNote(List<Annotation> theNote) { 1986 this.note = theNote; 1987 return this; 1988 } 1989 1990 public boolean hasNote() { 1991 if (this.note == null) 1992 return false; 1993 for (Annotation item : this.note) 1994 if (!item.isEmpty()) 1995 return true; 1996 return false; 1997 } 1998 1999 public Annotation addNote() { //3 2000 Annotation t = new Annotation(); 2001 if (this.note == null) 2002 this.note = new ArrayList<Annotation>(); 2003 this.note.add(t); 2004 return t; 2005 } 2006 2007 public Composition addNote(Annotation t) { //3 2008 if (t == null) 2009 return this; 2010 if (this.note == null) 2011 this.note = new ArrayList<Annotation>(); 2012 this.note.add(t); 2013 return this; 2014 } 2015 2016 /** 2017 * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} 2018 */ 2019 public Annotation getNoteFirstRep() { 2020 if (getNote().isEmpty()) { 2021 addNote(); 2022 } 2023 return getNote().get(0); 2024 } 2025 2026 /** 2027 * @return {@link #attester} (A participant who has attested to the accuracy of the composition/document.) 2028 */ 2029 public List<CompositionAttesterComponent> getAttester() { 2030 if (this.attester == null) 2031 this.attester = new ArrayList<CompositionAttesterComponent>(); 2032 return this.attester; 2033 } 2034 2035 /** 2036 * @return Returns a reference to <code>this</code> for easy method chaining 2037 */ 2038 public Composition setAttester(List<CompositionAttesterComponent> theAttester) { 2039 this.attester = theAttester; 2040 return this; 2041 } 2042 2043 public boolean hasAttester() { 2044 if (this.attester == null) 2045 return false; 2046 for (CompositionAttesterComponent item : this.attester) 2047 if (!item.isEmpty()) 2048 return true; 2049 return false; 2050 } 2051 2052 public CompositionAttesterComponent addAttester() { //3 2053 CompositionAttesterComponent t = new CompositionAttesterComponent(); 2054 if (this.attester == null) 2055 this.attester = new ArrayList<CompositionAttesterComponent>(); 2056 this.attester.add(t); 2057 return t; 2058 } 2059 2060 public Composition addAttester(CompositionAttesterComponent t) { //3 2061 if (t == null) 2062 return this; 2063 if (this.attester == null) 2064 this.attester = new ArrayList<CompositionAttesterComponent>(); 2065 this.attester.add(t); 2066 return this; 2067 } 2068 2069 /** 2070 * @return The first repetition of repeating field {@link #attester}, creating it if it does not already exist {3} 2071 */ 2072 public CompositionAttesterComponent getAttesterFirstRep() { 2073 if (getAttester().isEmpty()) { 2074 addAttester(); 2075 } 2076 return getAttester().get(0); 2077 } 2078 2079 /** 2080 * @return {@link #custodian} (Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information.) 2081 */ 2082 public Reference getCustodian() { 2083 if (this.custodian == null) 2084 if (Configuration.errorOnAutoCreate()) 2085 throw new Error("Attempt to auto-create Composition.custodian"); 2086 else if (Configuration.doAutoCreate()) 2087 this.custodian = new Reference(); // cc 2088 return this.custodian; 2089 } 2090 2091 public boolean hasCustodian() { 2092 return this.custodian != null && !this.custodian.isEmpty(); 2093 } 2094 2095 /** 2096 * @param value {@link #custodian} (Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information.) 2097 */ 2098 public Composition setCustodian(Reference value) { 2099 this.custodian = value; 2100 return this; 2101 } 2102 2103 /** 2104 * @return {@link #relatesTo} (Relationships that this composition has with other compositions or documents that already exist.) 2105 */ 2106 public List<RelatedArtifact> getRelatesTo() { 2107 if (this.relatesTo == null) 2108 this.relatesTo = new ArrayList<RelatedArtifact>(); 2109 return this.relatesTo; 2110 } 2111 2112 /** 2113 * @return Returns a reference to <code>this</code> for easy method chaining 2114 */ 2115 public Composition setRelatesTo(List<RelatedArtifact> theRelatesTo) { 2116 this.relatesTo = theRelatesTo; 2117 return this; 2118 } 2119 2120 public boolean hasRelatesTo() { 2121 if (this.relatesTo == null) 2122 return false; 2123 for (RelatedArtifact item : this.relatesTo) 2124 if (!item.isEmpty()) 2125 return true; 2126 return false; 2127 } 2128 2129 public RelatedArtifact addRelatesTo() { //3 2130 RelatedArtifact t = new RelatedArtifact(); 2131 if (this.relatesTo == null) 2132 this.relatesTo = new ArrayList<RelatedArtifact>(); 2133 this.relatesTo.add(t); 2134 return t; 2135 } 2136 2137 public Composition addRelatesTo(RelatedArtifact t) { //3 2138 if (t == null) 2139 return this; 2140 if (this.relatesTo == null) 2141 this.relatesTo = new ArrayList<RelatedArtifact>(); 2142 this.relatesTo.add(t); 2143 return this; 2144 } 2145 2146 /** 2147 * @return The first repetition of repeating field {@link #relatesTo}, creating it if it does not already exist {3} 2148 */ 2149 public RelatedArtifact getRelatesToFirstRep() { 2150 if (getRelatesTo().isEmpty()) { 2151 addRelatesTo(); 2152 } 2153 return getRelatesTo().get(0); 2154 } 2155 2156 /** 2157 * @return {@link #event} (The clinical service, such as a colonoscopy or an appendectomy, being documented.) 2158 */ 2159 public List<CompositionEventComponent> getEvent() { 2160 if (this.event == null) 2161 this.event = new ArrayList<CompositionEventComponent>(); 2162 return this.event; 2163 } 2164 2165 /** 2166 * @return Returns a reference to <code>this</code> for easy method chaining 2167 */ 2168 public Composition setEvent(List<CompositionEventComponent> theEvent) { 2169 this.event = theEvent; 2170 return this; 2171 } 2172 2173 public boolean hasEvent() { 2174 if (this.event == null) 2175 return false; 2176 for (CompositionEventComponent item : this.event) 2177 if (!item.isEmpty()) 2178 return true; 2179 return false; 2180 } 2181 2182 public CompositionEventComponent addEvent() { //3 2183 CompositionEventComponent t = new CompositionEventComponent(); 2184 if (this.event == null) 2185 this.event = new ArrayList<CompositionEventComponent>(); 2186 this.event.add(t); 2187 return t; 2188 } 2189 2190 public Composition addEvent(CompositionEventComponent t) { //3 2191 if (t == null) 2192 return this; 2193 if (this.event == null) 2194 this.event = new ArrayList<CompositionEventComponent>(); 2195 this.event.add(t); 2196 return this; 2197 } 2198 2199 /** 2200 * @return The first repetition of repeating field {@link #event}, creating it if it does not already exist {3} 2201 */ 2202 public CompositionEventComponent getEventFirstRep() { 2203 if (getEvent().isEmpty()) { 2204 addEvent(); 2205 } 2206 return getEvent().get(0); 2207 } 2208 2209 /** 2210 * @return {@link #section} (The root of the sections that make up the composition.) 2211 */ 2212 public List<SectionComponent> getSection() { 2213 if (this.section == null) 2214 this.section = new ArrayList<SectionComponent>(); 2215 return this.section; 2216 } 2217 2218 /** 2219 * @return Returns a reference to <code>this</code> for easy method chaining 2220 */ 2221 public Composition setSection(List<SectionComponent> theSection) { 2222 this.section = theSection; 2223 return this; 2224 } 2225 2226 public boolean hasSection() { 2227 if (this.section == null) 2228 return false; 2229 for (SectionComponent item : this.section) 2230 if (!item.isEmpty()) 2231 return true; 2232 return false; 2233 } 2234 2235 public SectionComponent addSection() { //3 2236 SectionComponent t = new SectionComponent(); 2237 if (this.section == null) 2238 this.section = new ArrayList<SectionComponent>(); 2239 this.section.add(t); 2240 return t; 2241 } 2242 2243 public Composition addSection(SectionComponent t) { //3 2244 if (t == null) 2245 return this; 2246 if (this.section == null) 2247 this.section = new ArrayList<SectionComponent>(); 2248 this.section.add(t); 2249 return this; 2250 } 2251 2252 /** 2253 * @return The first repetition of repeating field {@link #section}, creating it if it does not already exist {3} 2254 */ 2255 public SectionComponent getSectionFirstRep() { 2256 if (getSection().isEmpty()) { 2257 addSection(); 2258 } 2259 return getSection().get(0); 2260 } 2261 2262 protected void listChildren(List<Property> children) { 2263 super.listChildren(children); 2264 children.add(new Property("url", "uri", "An absolute URI that is used to identify this Composition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Composition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Composition is stored on different servers.", 0, 1, url)); 2265 children.add(new Property("identifier", "Identifier", "A version-independent identifier for the Composition. This identifier stays constant as the composition is changed over time.", 0, java.lang.Integer.MAX_VALUE, identifier)); 2266 children.add(new Property("version", "string", "An explicitly assigned identifer of a variation of the content in the Composition.", 0, 1, version)); 2267 children.add(new Property("status", "code", "The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document.", 0, 1, status)); 2268 children.add(new Property("type", "CodeableConcept", "Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition.", 0, 1, type)); 2269 children.add(new Property("category", "CodeableConcept", "A categorization for the type of the composition - helps for indexing and searching. This may be implied by or derived from the code specified in the Composition Type.", 0, java.lang.Integer.MAX_VALUE, category)); 2270 children.add(new Property("subject", "Reference(Any)", "Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure).", 0, java.lang.Integer.MAX_VALUE, subject)); 2271 children.add(new Property("encounter", "Reference(Encounter)", "Describes the clinical encounter or type of care this documentation is associated with.", 0, 1, encounter)); 2272 children.add(new Property("date", "dateTime", "The composition editing time, when the composition was last logically changed by the author.", 0, 1, date)); 2273 children.add(new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate Composition instances.", 0, java.lang.Integer.MAX_VALUE, useContext)); 2274 children.add(new Property("author", "Reference(Practitioner|PractitionerRole|Device|Patient|RelatedPerson|Organization)", "Identifies who is responsible for the information in the composition, not necessarily who typed it in.", 0, java.lang.Integer.MAX_VALUE, author)); 2275 children.add(new Property("name", "string", "A natural language name identifying the composition. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name)); 2276 children.add(new Property("title", "string", "Official human-readable label for the composition.", 0, 1, title)); 2277 children.add(new Property("note", "Annotation", "For any additional notes.", 0, java.lang.Integer.MAX_VALUE, note)); 2278 children.add(new Property("attester", "", "A participant who has attested to the accuracy of the composition/document.", 0, java.lang.Integer.MAX_VALUE, attester)); 2279 children.add(new Property("custodian", "Reference(Organization)", "Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information.", 0, 1, custodian)); 2280 children.add(new Property("relatesTo", "RelatedArtifact", "Relationships that this composition has with other compositions or documents that already exist.", 0, java.lang.Integer.MAX_VALUE, relatesTo)); 2281 children.add(new Property("event", "", "The clinical service, such as a colonoscopy or an appendectomy, being documented.", 0, java.lang.Integer.MAX_VALUE, event)); 2282 children.add(new Property("section", "", "The root of the sections that make up the composition.", 0, java.lang.Integer.MAX_VALUE, section)); 2283 } 2284 2285 @Override 2286 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 2287 switch (_hash) { 2288 case 116079: /*url*/ return new Property("url", "uri", "An absolute URI that is used to identify this Composition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this Composition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the Composition is stored on different servers.", 0, 1, url); 2289 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "A version-independent identifier for the Composition. This identifier stays constant as the composition is changed over time.", 0, java.lang.Integer.MAX_VALUE, identifier); 2290 case 351608024: /*version*/ return new Property("version", "string", "An explicitly assigned identifer of a variation of the content in the Composition.", 0, 1, version); 2291 case -892481550: /*status*/ return new Property("status", "code", "The workflow/clinical status of this composition. The status is a marker for the clinical standing of the document.", 0, 1, status); 2292 case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Specifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition.", 0, 1, type); 2293 case 50511102: /*category*/ return new Property("category", "CodeableConcept", "A categorization for the type of the composition - helps for indexing and searching. This may be implied by or derived from the code specified in the Composition Type.", 0, java.lang.Integer.MAX_VALUE, category); 2294 case -1867885268: /*subject*/ return new Property("subject", "Reference(Any)", "Who or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure).", 0, java.lang.Integer.MAX_VALUE, subject); 2295 case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "Describes the clinical encounter or type of care this documentation is associated with.", 0, 1, encounter); 2296 case 3076014: /*date*/ return new Property("date", "dateTime", "The composition editing time, when the composition was last logically changed by the author.", 0, 1, date); 2297 case -669707736: /*useContext*/ return new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate Composition instances.", 0, java.lang.Integer.MAX_VALUE, useContext); 2298 case -1406328437: /*author*/ return new Property("author", "Reference(Practitioner|PractitionerRole|Device|Patient|RelatedPerson|Organization)", "Identifies who is responsible for the information in the composition, not necessarily who typed it in.", 0, java.lang.Integer.MAX_VALUE, author); 2299 case 3373707: /*name*/ return new Property("name", "string", "A natural language name identifying the composition. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name); 2300 case 110371416: /*title*/ return new Property("title", "string", "Official human-readable label for the composition.", 0, 1, title); 2301 case 3387378: /*note*/ return new Property("note", "Annotation", "For any additional notes.", 0, java.lang.Integer.MAX_VALUE, note); 2302 case 542920370: /*attester*/ return new Property("attester", "", "A participant who has attested to the accuracy of the composition/document.", 0, java.lang.Integer.MAX_VALUE, attester); 2303 case 1611297262: /*custodian*/ return new Property("custodian", "Reference(Organization)", "Identifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information.", 0, 1, custodian); 2304 case -7765931: /*relatesTo*/ return new Property("relatesTo", "RelatedArtifact", "Relationships that this composition has with other compositions or documents that already exist.", 0, java.lang.Integer.MAX_VALUE, relatesTo); 2305 case 96891546: /*event*/ return new Property("event", "", "The clinical service, such as a colonoscopy or an appendectomy, being documented.", 0, java.lang.Integer.MAX_VALUE, event); 2306 case 1970241253: /*section*/ return new Property("section", "", "The root of the sections that make up the composition.", 0, java.lang.Integer.MAX_VALUE, section); 2307 default: return super.getNamedProperty(_hash, _name, _checkValid); 2308 } 2309 2310 } 2311 2312 @Override 2313 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 2314 switch (hash) { 2315 case 116079: /*url*/ return this.url == null ? new Base[0] : new Base[] {this.url}; // UriType 2316 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 2317 case 351608024: /*version*/ return this.version == null ? new Base[0] : new Base[] {this.version}; // StringType 2318 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<CompositionStatus> 2319 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept 2320 case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept 2321 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : this.subject.toArray(new Base[this.subject.size()]); // Reference 2322 case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference 2323 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 2324 case -669707736: /*useContext*/ return this.useContext == null ? new Base[0] : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 2325 case -1406328437: /*author*/ return this.author == null ? new Base[0] : this.author.toArray(new Base[this.author.size()]); // Reference 2326 case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType 2327 case 110371416: /*title*/ return this.title == null ? new Base[0] : new Base[] {this.title}; // StringType 2328 case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 2329 case 542920370: /*attester*/ return this.attester == null ? new Base[0] : this.attester.toArray(new Base[this.attester.size()]); // CompositionAttesterComponent 2330 case 1611297262: /*custodian*/ return this.custodian == null ? new Base[0] : new Base[] {this.custodian}; // Reference 2331 case -7765931: /*relatesTo*/ return this.relatesTo == null ? new Base[0] : this.relatesTo.toArray(new Base[this.relatesTo.size()]); // RelatedArtifact 2332 case 96891546: /*event*/ return this.event == null ? new Base[0] : this.event.toArray(new Base[this.event.size()]); // CompositionEventComponent 2333 case 1970241253: /*section*/ return this.section == null ? new Base[0] : this.section.toArray(new Base[this.section.size()]); // SectionComponent 2334 default: return super.getProperty(hash, name, checkValid); 2335 } 2336 2337 } 2338 2339 @Override 2340 public Base setProperty(int hash, String name, Base value) throws FHIRException { 2341 switch (hash) { 2342 case 116079: // url 2343 this.url = TypeConvertor.castToUri(value); // UriType 2344 return value; 2345 case -1618432855: // identifier 2346 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 2347 return value; 2348 case 351608024: // version 2349 this.version = TypeConvertor.castToString(value); // StringType 2350 return value; 2351 case -892481550: // status 2352 value = new CompositionStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 2353 this.status = (Enumeration) value; // Enumeration<CompositionStatus> 2354 return value; 2355 case 3575610: // type 2356 this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2357 return value; 2358 case 50511102: // category 2359 this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 2360 return value; 2361 case -1867885268: // subject 2362 this.getSubject().add(TypeConvertor.castToReference(value)); // Reference 2363 return value; 2364 case 1524132147: // encounter 2365 this.encounter = TypeConvertor.castToReference(value); // Reference 2366 return value; 2367 case 3076014: // date 2368 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 2369 return value; 2370 case -669707736: // useContext 2371 this.getUseContext().add(TypeConvertor.castToUsageContext(value)); // UsageContext 2372 return value; 2373 case -1406328437: // author 2374 this.getAuthor().add(TypeConvertor.castToReference(value)); // Reference 2375 return value; 2376 case 3373707: // name 2377 this.name = TypeConvertor.castToString(value); // StringType 2378 return value; 2379 case 110371416: // title 2380 this.title = TypeConvertor.castToString(value); // StringType 2381 return value; 2382 case 3387378: // note 2383 this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation 2384 return value; 2385 case 542920370: // attester 2386 this.getAttester().add((CompositionAttesterComponent) value); // CompositionAttesterComponent 2387 return value; 2388 case 1611297262: // custodian 2389 this.custodian = TypeConvertor.castToReference(value); // Reference 2390 return value; 2391 case -7765931: // relatesTo 2392 this.getRelatesTo().add(TypeConvertor.castToRelatedArtifact(value)); // RelatedArtifact 2393 return value; 2394 case 96891546: // event 2395 this.getEvent().add((CompositionEventComponent) value); // CompositionEventComponent 2396 return value; 2397 case 1970241253: // section 2398 this.getSection().add((SectionComponent) value); // SectionComponent 2399 return value; 2400 default: return super.setProperty(hash, name, value); 2401 } 2402 2403 } 2404 2405 @Override 2406 public Base setProperty(String name, Base value) throws FHIRException { 2407 if (name.equals("url")) { 2408 this.url = TypeConvertor.castToUri(value); // UriType 2409 } else if (name.equals("identifier")) { 2410 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 2411 } else if (name.equals("version")) { 2412 this.version = TypeConvertor.castToString(value); // StringType 2413 } else if (name.equals("status")) { 2414 value = new CompositionStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 2415 this.status = (Enumeration) value; // Enumeration<CompositionStatus> 2416 } else if (name.equals("type")) { 2417 this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2418 } else if (name.equals("category")) { 2419 this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); 2420 } else if (name.equals("subject")) { 2421 this.getSubject().add(TypeConvertor.castToReference(value)); 2422 } else if (name.equals("encounter")) { 2423 this.encounter = TypeConvertor.castToReference(value); // Reference 2424 } else if (name.equals("date")) { 2425 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 2426 } else if (name.equals("useContext")) { 2427 this.getUseContext().add(TypeConvertor.castToUsageContext(value)); 2428 } else if (name.equals("author")) { 2429 this.getAuthor().add(TypeConvertor.castToReference(value)); 2430 } else if (name.equals("name")) { 2431 this.name = TypeConvertor.castToString(value); // StringType 2432 } else if (name.equals("title")) { 2433 this.title = TypeConvertor.castToString(value); // StringType 2434 } else if (name.equals("note")) { 2435 this.getNote().add(TypeConvertor.castToAnnotation(value)); 2436 } else if (name.equals("attester")) { 2437 this.getAttester().add((CompositionAttesterComponent) value); 2438 } else if (name.equals("custodian")) { 2439 this.custodian = TypeConvertor.castToReference(value); // Reference 2440 } else if (name.equals("relatesTo")) { 2441 this.getRelatesTo().add(TypeConvertor.castToRelatedArtifact(value)); 2442 } else if (name.equals("event")) { 2443 this.getEvent().add((CompositionEventComponent) value); 2444 } else if (name.equals("section")) { 2445 this.getSection().add((SectionComponent) value); 2446 } else 2447 return super.setProperty(name, value); 2448 return value; 2449 } 2450 2451 @Override 2452 public Base makeProperty(int hash, String name) throws FHIRException { 2453 switch (hash) { 2454 case 116079: return getUrlElement(); 2455 case -1618432855: return addIdentifier(); 2456 case 351608024: return getVersionElement(); 2457 case -892481550: return getStatusElement(); 2458 case 3575610: return getType(); 2459 case 50511102: return addCategory(); 2460 case -1867885268: return addSubject(); 2461 case 1524132147: return getEncounter(); 2462 case 3076014: return getDateElement(); 2463 case -669707736: return addUseContext(); 2464 case -1406328437: return addAuthor(); 2465 case 3373707: return getNameElement(); 2466 case 110371416: return getTitleElement(); 2467 case 3387378: return addNote(); 2468 case 542920370: return addAttester(); 2469 case 1611297262: return getCustodian(); 2470 case -7765931: return addRelatesTo(); 2471 case 96891546: return addEvent(); 2472 case 1970241253: return addSection(); 2473 default: return super.makeProperty(hash, name); 2474 } 2475 2476 } 2477 2478 @Override 2479 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 2480 switch (hash) { 2481 case 116079: /*url*/ return new String[] {"uri"}; 2482 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 2483 case 351608024: /*version*/ return new String[] {"string"}; 2484 case -892481550: /*status*/ return new String[] {"code"}; 2485 case 3575610: /*type*/ return new String[] {"CodeableConcept"}; 2486 case 50511102: /*category*/ return new String[] {"CodeableConcept"}; 2487 case -1867885268: /*subject*/ return new String[] {"Reference"}; 2488 case 1524132147: /*encounter*/ return new String[] {"Reference"}; 2489 case 3076014: /*date*/ return new String[] {"dateTime"}; 2490 case -669707736: /*useContext*/ return new String[] {"UsageContext"}; 2491 case -1406328437: /*author*/ return new String[] {"Reference"}; 2492 case 3373707: /*name*/ return new String[] {"string"}; 2493 case 110371416: /*title*/ return new String[] {"string"}; 2494 case 3387378: /*note*/ return new String[] {"Annotation"}; 2495 case 542920370: /*attester*/ return new String[] {}; 2496 case 1611297262: /*custodian*/ return new String[] {"Reference"}; 2497 case -7765931: /*relatesTo*/ return new String[] {"RelatedArtifact"}; 2498 case 96891546: /*event*/ return new String[] {}; 2499 case 1970241253: /*section*/ return new String[] {}; 2500 default: return super.getTypesForProperty(hash, name); 2501 } 2502 2503 } 2504 2505 @Override 2506 public Base addChild(String name) throws FHIRException { 2507 if (name.equals("url")) { 2508 throw new FHIRException("Cannot call addChild on a singleton property Composition.url"); 2509 } 2510 else if (name.equals("identifier")) { 2511 return addIdentifier(); 2512 } 2513 else if (name.equals("version")) { 2514 throw new FHIRException("Cannot call addChild on a singleton property Composition.version"); 2515 } 2516 else if (name.equals("status")) { 2517 throw new FHIRException("Cannot call addChild on a singleton property Composition.status"); 2518 } 2519 else if (name.equals("type")) { 2520 this.type = new CodeableConcept(); 2521 return this.type; 2522 } 2523 else if (name.equals("category")) { 2524 return addCategory(); 2525 } 2526 else if (name.equals("subject")) { 2527 return addSubject(); 2528 } 2529 else if (name.equals("encounter")) { 2530 this.encounter = new Reference(); 2531 return this.encounter; 2532 } 2533 else if (name.equals("date")) { 2534 throw new FHIRException("Cannot call addChild on a singleton property Composition.date"); 2535 } 2536 else if (name.equals("useContext")) { 2537 return addUseContext(); 2538 } 2539 else if (name.equals("author")) { 2540 return addAuthor(); 2541 } 2542 else if (name.equals("name")) { 2543 throw new FHIRException("Cannot call addChild on a singleton property Composition.name"); 2544 } 2545 else if (name.equals("title")) { 2546 throw new FHIRException("Cannot call addChild on a singleton property Composition.title"); 2547 } 2548 else if (name.equals("note")) { 2549 return addNote(); 2550 } 2551 else if (name.equals("attester")) { 2552 return addAttester(); 2553 } 2554 else if (name.equals("custodian")) { 2555 this.custodian = new Reference(); 2556 return this.custodian; 2557 } 2558 else if (name.equals("relatesTo")) { 2559 return addRelatesTo(); 2560 } 2561 else if (name.equals("event")) { 2562 return addEvent(); 2563 } 2564 else if (name.equals("section")) { 2565 return addSection(); 2566 } 2567 else 2568 return super.addChild(name); 2569 } 2570 2571 public String fhirType() { 2572 return "Composition"; 2573 2574 } 2575 2576 public Composition copy() { 2577 Composition dst = new Composition(); 2578 copyValues(dst); 2579 return dst; 2580 } 2581 2582 public void copyValues(Composition dst) { 2583 super.copyValues(dst); 2584 dst.url = url == null ? null : url.copy(); 2585 if (identifier != null) { 2586 dst.identifier = new ArrayList<Identifier>(); 2587 for (Identifier i : identifier) 2588 dst.identifier.add(i.copy()); 2589 }; 2590 dst.version = version == null ? null : version.copy(); 2591 dst.status = status == null ? null : status.copy(); 2592 dst.type = type == null ? null : type.copy(); 2593 if (category != null) { 2594 dst.category = new ArrayList<CodeableConcept>(); 2595 for (CodeableConcept i : category) 2596 dst.category.add(i.copy()); 2597 }; 2598 if (subject != null) { 2599 dst.subject = new ArrayList<Reference>(); 2600 for (Reference i : subject) 2601 dst.subject.add(i.copy()); 2602 }; 2603 dst.encounter = encounter == null ? null : encounter.copy(); 2604 dst.date = date == null ? null : date.copy(); 2605 if (useContext != null) { 2606 dst.useContext = new ArrayList<UsageContext>(); 2607 for (UsageContext i : useContext) 2608 dst.useContext.add(i.copy()); 2609 }; 2610 if (author != null) { 2611 dst.author = new ArrayList<Reference>(); 2612 for (Reference i : author) 2613 dst.author.add(i.copy()); 2614 }; 2615 dst.name = name == null ? null : name.copy(); 2616 dst.title = title == null ? null : title.copy(); 2617 if (note != null) { 2618 dst.note = new ArrayList<Annotation>(); 2619 for (Annotation i : note) 2620 dst.note.add(i.copy()); 2621 }; 2622 if (attester != null) { 2623 dst.attester = new ArrayList<CompositionAttesterComponent>(); 2624 for (CompositionAttesterComponent i : attester) 2625 dst.attester.add(i.copy()); 2626 }; 2627 dst.custodian = custodian == null ? null : custodian.copy(); 2628 if (relatesTo != null) { 2629 dst.relatesTo = new ArrayList<RelatedArtifact>(); 2630 for (RelatedArtifact i : relatesTo) 2631 dst.relatesTo.add(i.copy()); 2632 }; 2633 if (event != null) { 2634 dst.event = new ArrayList<CompositionEventComponent>(); 2635 for (CompositionEventComponent i : event) 2636 dst.event.add(i.copy()); 2637 }; 2638 if (section != null) { 2639 dst.section = new ArrayList<SectionComponent>(); 2640 for (SectionComponent i : section) 2641 dst.section.add(i.copy()); 2642 }; 2643 } 2644 2645 protected Composition typedCopy() { 2646 return copy(); 2647 } 2648 2649 @Override 2650 public boolean equalsDeep(Base other_) { 2651 if (!super.equalsDeep(other_)) 2652 return false; 2653 if (!(other_ instanceof Composition)) 2654 return false; 2655 Composition o = (Composition) other_; 2656 return compareDeep(url, o.url, true) && compareDeep(identifier, o.identifier, true) && compareDeep(version, o.version, true) 2657 && compareDeep(status, o.status, true) && compareDeep(type, o.type, true) && compareDeep(category, o.category, true) 2658 && compareDeep(subject, o.subject, true) && compareDeep(encounter, o.encounter, true) && compareDeep(date, o.date, true) 2659 && compareDeep(useContext, o.useContext, true) && compareDeep(author, o.author, true) && compareDeep(name, o.name, true) 2660 && compareDeep(title, o.title, true) && compareDeep(note, o.note, true) && compareDeep(attester, o.attester, true) 2661 && compareDeep(custodian, o.custodian, true) && compareDeep(relatesTo, o.relatesTo, true) && compareDeep(event, o.event, true) 2662 && compareDeep(section, o.section, true); 2663 } 2664 2665 @Override 2666 public boolean equalsShallow(Base other_) { 2667 if (!super.equalsShallow(other_)) 2668 return false; 2669 if (!(other_ instanceof Composition)) 2670 return false; 2671 Composition o = (Composition) other_; 2672 return compareValues(url, o.url, true) && compareValues(version, o.version, true) && compareValues(status, o.status, true) 2673 && compareValues(date, o.date, true) && compareValues(name, o.name, true) && compareValues(title, o.title, true) 2674 ; 2675 } 2676 2677 public boolean isEmpty() { 2678 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(url, identifier, version 2679 , status, type, category, subject, encounter, date, useContext, author, name 2680 , title, note, attester, custodian, relatesTo, event, section); 2681 } 2682 2683 @Override 2684 public ResourceType getResourceType() { 2685 return ResourceType.Composition; 2686 } 2687 2688 /** 2689 * Search parameter: <b>attester</b> 2690 * <p> 2691 * Description: <b>Who attested the composition</b><br> 2692 * Type: <b>reference</b><br> 2693 * Path: <b>Composition.attester.party</b><br> 2694 * </p> 2695 */ 2696 @SearchParamDefinition(name="attester", path="Composition.attester.party", description="Who attested the composition", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 2697 public static final String SP_ATTESTER = "attester"; 2698 /** 2699 * <b>Fluent Client</b> search parameter constant for <b>attester</b> 2700 * <p> 2701 * Description: <b>Who attested the composition</b><br> 2702 * Type: <b>reference</b><br> 2703 * Path: <b>Composition.attester.party</b><br> 2704 * </p> 2705 */ 2706 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ATTESTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ATTESTER); 2707 2708/** 2709 * Constant for fluent queries to be used to add include statements. Specifies 2710 * the path value of "<b>Composition:attester</b>". 2711 */ 2712 public static final ca.uhn.fhir.model.api.Include INCLUDE_ATTESTER = new ca.uhn.fhir.model.api.Include("Composition:attester").toLocked(); 2713 2714 /** 2715 * Search parameter: <b>author</b> 2716 * <p> 2717 * Description: <b>Who and/or what authored the composition</b><br> 2718 * Type: <b>reference</b><br> 2719 * Path: <b>Composition.author</b><br> 2720 * </p> 2721 */ 2722 @SearchParamDefinition(name="author", path="Composition.author", description="Who and/or what authored the composition", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Device"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for RelatedPerson") }, target={Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 2723 public static final String SP_AUTHOR = "author"; 2724 /** 2725 * <b>Fluent Client</b> search parameter constant for <b>author</b> 2726 * <p> 2727 * Description: <b>Who and/or what authored the composition</b><br> 2728 * Type: <b>reference</b><br> 2729 * Path: <b>Composition.author</b><br> 2730 * </p> 2731 */ 2732 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam AUTHOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_AUTHOR); 2733 2734/** 2735 * Constant for fluent queries to be used to add include statements. Specifies 2736 * the path value of "<b>Composition:author</b>". 2737 */ 2738 public static final ca.uhn.fhir.model.api.Include INCLUDE_AUTHOR = new ca.uhn.fhir.model.api.Include("Composition:author").toLocked(); 2739 2740 /** 2741 * Search parameter: <b>category</b> 2742 * <p> 2743 * Description: <b>Categorization of Composition</b><br> 2744 * Type: <b>token</b><br> 2745 * Path: <b>Composition.category</b><br> 2746 * </p> 2747 */ 2748 @SearchParamDefinition(name="category", path="Composition.category", description="Categorization of Composition", type="token" ) 2749 public static final String SP_CATEGORY = "category"; 2750 /** 2751 * <b>Fluent Client</b> search parameter constant for <b>category</b> 2752 * <p> 2753 * Description: <b>Categorization of Composition</b><br> 2754 * Type: <b>token</b><br> 2755 * Path: <b>Composition.category</b><br> 2756 * </p> 2757 */ 2758 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CATEGORY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CATEGORY); 2759 2760 /** 2761 * Search parameter: <b>entry</b> 2762 * <p> 2763 * Description: <b>A reference to data that supports this section</b><br> 2764 * Type: <b>reference</b><br> 2765 * Path: <b>Composition.section.entry</b><br> 2766 * </p> 2767 */ 2768 @SearchParamDefinition(name="entry", path="Composition.section.entry", description="A reference to data that supports this section", type="reference", target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BiologicallyDerivedProductDispense.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceAssociation.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentReference.class, Encounter.class, EncounterHistory.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryItem.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationStatement.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Parameters.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestPlan.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 2769 public static final String SP_ENTRY = "entry"; 2770 /** 2771 * <b>Fluent Client</b> search parameter constant for <b>entry</b> 2772 * <p> 2773 * Description: <b>A reference to data that supports this section</b><br> 2774 * Type: <b>reference</b><br> 2775 * Path: <b>Composition.section.entry</b><br> 2776 * </p> 2777 */ 2778 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ENTRY = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ENTRY); 2779 2780/** 2781 * Constant for fluent queries to be used to add include statements. Specifies 2782 * the path value of "<b>Composition:entry</b>". 2783 */ 2784 public static final ca.uhn.fhir.model.api.Include INCLUDE_ENTRY = new ca.uhn.fhir.model.api.Include("Composition:entry").toLocked(); 2785 2786 /** 2787 * Search parameter: <b>event-code</b> 2788 * <p> 2789 * Description: <b>Main clinical acts documented as codes</b><br> 2790 * Type: <b>token</b><br> 2791 * Path: <b>Composition.event.detail.concept</b><br> 2792 * </p> 2793 */ 2794 @SearchParamDefinition(name="event-code", path="Composition.event.detail.concept", description="Main clinical acts documented as codes", type="token" ) 2795 public static final String SP_EVENT_CODE = "event-code"; 2796 /** 2797 * <b>Fluent Client</b> search parameter constant for <b>event-code</b> 2798 * <p> 2799 * Description: <b>Main clinical acts documented as codes</b><br> 2800 * Type: <b>token</b><br> 2801 * Path: <b>Composition.event.detail.concept</b><br> 2802 * </p> 2803 */ 2804 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EVENT_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EVENT_CODE); 2805 2806 /** 2807 * Search parameter: <b>event-reference</b> 2808 * <p> 2809 * Description: <b>Main clinical acts documented as references</b><br> 2810 * Type: <b>reference</b><br> 2811 * Path: <b>Composition.event.detail.reference</b><br> 2812 * </p> 2813 */ 2814 @SearchParamDefinition(name="event-reference", path="Composition.event.detail.reference", description="Main clinical acts documented as references", type="reference", target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BiologicallyDerivedProductDispense.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceAssociation.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentReference.class, Encounter.class, EncounterHistory.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryItem.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationStatement.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Parameters.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestPlan.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 2815 public static final String SP_EVENT_REFERENCE = "event-reference"; 2816 /** 2817 * <b>Fluent Client</b> search parameter constant for <b>event-reference</b> 2818 * <p> 2819 * Description: <b>Main clinical acts documented as references</b><br> 2820 * Type: <b>reference</b><br> 2821 * Path: <b>Composition.event.detail.reference</b><br> 2822 * </p> 2823 */ 2824 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam EVENT_REFERENCE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_EVENT_REFERENCE); 2825 2826/** 2827 * Constant for fluent queries to be used to add include statements. Specifies 2828 * the path value of "<b>Composition:event-reference</b>". 2829 */ 2830 public static final ca.uhn.fhir.model.api.Include INCLUDE_EVENT_REFERENCE = new ca.uhn.fhir.model.api.Include("Composition:event-reference").toLocked(); 2831 2832 /** 2833 * Search parameter: <b>period</b> 2834 * <p> 2835 * Description: <b>The period covered by the documentation</b><br> 2836 * Type: <b>date</b><br> 2837 * Path: <b>Composition.event.period</b><br> 2838 * </p> 2839 */ 2840 @SearchParamDefinition(name="period", path="Composition.event.period", description="The period covered by the documentation", type="date" ) 2841 public static final String SP_PERIOD = "period"; 2842 /** 2843 * <b>Fluent Client</b> search parameter constant for <b>period</b> 2844 * <p> 2845 * Description: <b>The period covered by the documentation</b><br> 2846 * Type: <b>date</b><br> 2847 * Path: <b>Composition.event.period</b><br> 2848 * </p> 2849 */ 2850 public static final ca.uhn.fhir.rest.gclient.DateClientParam PERIOD = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_PERIOD); 2851 2852 /** 2853 * Search parameter: <b>related</b> 2854 * <p> 2855 * Description: <b>Target of the relationship</b><br> 2856 * Type: <b>reference</b><br> 2857 * Path: <b>Composition.relatesTo.resourceReference</b><br> 2858 * </p> 2859 */ 2860 @SearchParamDefinition(name="related", path="Composition.relatesTo.resourceReference", description="Target of the relationship", type="reference", target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BiologicallyDerivedProductDispense.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceAssociation.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentReference.class, Encounter.class, EncounterHistory.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryItem.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationStatement.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Parameters.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestPlan.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 2861 public static final String SP_RELATED = "related"; 2862 /** 2863 * <b>Fluent Client</b> search parameter constant for <b>related</b> 2864 * <p> 2865 * Description: <b>Target of the relationship</b><br> 2866 * Type: <b>reference</b><br> 2867 * Path: <b>Composition.relatesTo.resourceReference</b><br> 2868 * </p> 2869 */ 2870 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam RELATED = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_RELATED); 2871 2872/** 2873 * Constant for fluent queries to be used to add include statements. Specifies 2874 * the path value of "<b>Composition:related</b>". 2875 */ 2876 public static final ca.uhn.fhir.model.api.Include INCLUDE_RELATED = new ca.uhn.fhir.model.api.Include("Composition:related").toLocked(); 2877 2878 /** 2879 * Search parameter: <b>section-code-text</b> 2880 * <p> 2881 * Description: <b>Search on the section narrative of the resource</b><br> 2882 * Type: <b>composite</b><br> 2883 * Path: <b>Composition.section</b><br> 2884 * </p> 2885 */ 2886 @SearchParamDefinition(name="section-code-text", path="Composition.section", description="Search on the section narrative of the resource", type="composite", compositeOf={"section", "section-text"} ) 2887 public static final String SP_SECTION_CODE_TEXT = "section-code-text"; 2888 /** 2889 * <b>Fluent Client</b> search parameter constant for <b>section-code-text</b> 2890 * <p> 2891 * Description: <b>Search on the section narrative of the resource</b><br> 2892 * Type: <b>composite</b><br> 2893 * Path: <b>Composition.section</b><br> 2894 * </p> 2895 */ 2896 public static final ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.SpecialClientParam> SECTION_CODE_TEXT = new ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.SpecialClientParam>(SP_SECTION_CODE_TEXT); 2897 2898 /** 2899 * Search parameter: <b>section-text</b> 2900 * <p> 2901 * Description: <b>Search on the section narrative of the resource</b><br> 2902 * Type: <b>special</b><br> 2903 * Path: <b>Composition.section.text | Composition.section.section.text</b><br> 2904 * </p> 2905 */ 2906 @SearchParamDefinition(name="section-text", path="Composition.section.text | Composition.section.section.text", description="Search on the section narrative of the resource", type="special" ) 2907 public static final String SP_SECTION_TEXT = "section-text"; 2908 /** 2909 * <b>Fluent Client</b> search parameter constant for <b>section-text</b> 2910 * <p> 2911 * Description: <b>Search on the section narrative of the resource</b><br> 2912 * Type: <b>special</b><br> 2913 * Path: <b>Composition.section.text | Composition.section.section.text</b><br> 2914 * </p> 2915 */ 2916 public static final ca.uhn.fhir.rest.gclient.SpecialClientParam SECTION_TEXT = new ca.uhn.fhir.rest.gclient.SpecialClientParam(SP_SECTION_TEXT); 2917 2918 /** 2919 * Search parameter: <b>section</b> 2920 * <p> 2921 * Description: <b>Classification of section (recommended)</b><br> 2922 * Type: <b>token</b><br> 2923 * Path: <b>Composition.section.code</b><br> 2924 * </p> 2925 */ 2926 @SearchParamDefinition(name="section", path="Composition.section.code", description="Classification of section (recommended)", type="token" ) 2927 public static final String SP_SECTION = "section"; 2928 /** 2929 * <b>Fluent Client</b> search parameter constant for <b>section</b> 2930 * <p> 2931 * Description: <b>Classification of section (recommended)</b><br> 2932 * Type: <b>token</b><br> 2933 * Path: <b>Composition.section.code</b><br> 2934 * </p> 2935 */ 2936 public static final ca.uhn.fhir.rest.gclient.TokenClientParam SECTION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_SECTION); 2937 2938 /** 2939 * Search parameter: <b>status</b> 2940 * <p> 2941 * Description: <b>preliminary | final | amended | entered-in-error</b><br> 2942 * Type: <b>token</b><br> 2943 * Path: <b>Composition.status</b><br> 2944 * </p> 2945 */ 2946 @SearchParamDefinition(name="status", path="Composition.status", description="preliminary | final | amended | entered-in-error", type="token" ) 2947 public static final String SP_STATUS = "status"; 2948 /** 2949 * <b>Fluent Client</b> search parameter constant for <b>status</b> 2950 * <p> 2951 * Description: <b>preliminary | final | amended | entered-in-error</b><br> 2952 * Type: <b>token</b><br> 2953 * Path: <b>Composition.status</b><br> 2954 * </p> 2955 */ 2956 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 2957 2958 /** 2959 * Search parameter: <b>subject</b> 2960 * <p> 2961 * Description: <b>Who and/or what the composition is about</b><br> 2962 * Type: <b>reference</b><br> 2963 * Path: <b>Composition.subject</b><br> 2964 * </p> 2965 */ 2966 @SearchParamDefinition(name="subject", path="Composition.subject", description="Who and/or what the composition is about", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BiologicallyDerivedProductDispense.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceAssociation.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentReference.class, Encounter.class, EncounterHistory.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryItem.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationStatement.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Parameters.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestPlan.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 2967 public static final String SP_SUBJECT = "subject"; 2968 /** 2969 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 2970 * <p> 2971 * Description: <b>Who and/or what the composition is about</b><br> 2972 * Type: <b>reference</b><br> 2973 * Path: <b>Composition.subject</b><br> 2974 * </p> 2975 */ 2976 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 2977 2978/** 2979 * Constant for fluent queries to be used to add include statements. Specifies 2980 * the path value of "<b>Composition:subject</b>". 2981 */ 2982 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("Composition:subject").toLocked(); 2983 2984 /** 2985 * Search parameter: <b>title</b> 2986 * <p> 2987 * Description: <b>Human Readable name/title</b><br> 2988 * Type: <b>string</b><br> 2989 * Path: <b>Composition.title</b><br> 2990 * </p> 2991 */ 2992 @SearchParamDefinition(name="title", path="Composition.title", description="Human Readable name/title", type="string" ) 2993 public static final String SP_TITLE = "title"; 2994 /** 2995 * <b>Fluent Client</b> search parameter constant for <b>title</b> 2996 * <p> 2997 * Description: <b>Human Readable name/title</b><br> 2998 * Type: <b>string</b><br> 2999 * Path: <b>Composition.title</b><br> 3000 * </p> 3001 */ 3002 public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_TITLE); 3003 3004 /** 3005 * Search parameter: <b>url</b> 3006 * <p> 3007 * Description: <b>The uri that identifies the activity definition</b><br> 3008 * Type: <b>uri</b><br> 3009 * Path: <b>Composition.url</b><br> 3010 * </p> 3011 */ 3012 @SearchParamDefinition(name="url", path="Composition.url", description="The uri that identifies the activity definition", type="uri" ) 3013 public static final String SP_URL = "url"; 3014 /** 3015 * <b>Fluent Client</b> search parameter constant for <b>url</b> 3016 * <p> 3017 * Description: <b>The uri that identifies the activity definition</b><br> 3018 * Type: <b>uri</b><br> 3019 * Path: <b>Composition.url</b><br> 3020 * </p> 3021 */ 3022 public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); 3023 3024 /** 3025 * Search parameter: <b>version</b> 3026 * <p> 3027 * Description: <b>The business version of the activity definition</b><br> 3028 * Type: <b>token</b><br> 3029 * Path: <b>Composition.version</b><br> 3030 * </p> 3031 */ 3032 @SearchParamDefinition(name="version", path="Composition.version", description="The business version of the activity definition", type="token" ) 3033 public static final String SP_VERSION = "version"; 3034 /** 3035 * <b>Fluent Client</b> search parameter constant for <b>version</b> 3036 * <p> 3037 * Description: <b>The business version of the activity definition</b><br> 3038 * Type: <b>token</b><br> 3039 * Path: <b>Composition.version</b><br> 3040 * </p> 3041 */ 3042 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VERSION); 3043 3044 /** 3045 * Search parameter: <b>date</b> 3046 * <p> 3047 * Description: <b>Multiple Resources: 3048 3049* [AdverseEvent](adverseevent.html): When the event occurred 3050* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded 3051* [Appointment](appointment.html): Appointment date/time. 3052* [AuditEvent](auditevent.html): Time when the event was recorded 3053* [CarePlan](careplan.html): Time period plan covers 3054* [CareTeam](careteam.html): A date within the coverage time period. 3055* [ClinicalImpression](clinicalimpression.html): When the assessment was documented 3056* [Composition](composition.html): Composition editing time 3057* [Consent](consent.html): When consent was agreed to 3058* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report 3059* [DocumentReference](documentreference.html): When this document reference was created 3060* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted 3061* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period 3062* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated 3063* [Flag](flag.html): Time period when flag is active 3064* [Immunization](immunization.html): Vaccination (non)-Administration Date 3065* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated 3066* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created 3067* [Invoice](invoice.html): Invoice date / posting date 3068* [List](list.html): When the list was prepared 3069* [MeasureReport](measurereport.html): The date of the measure report 3070* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication 3071* [Observation](observation.html): Clinically relevant time/time-period for observation 3072* [Procedure](procedure.html): When the procedure occurred or is occurring 3073* [ResearchSubject](researchsubject.html): Start and end of participation 3074* [RiskAssessment](riskassessment.html): When was assessment made? 3075* [SupplyRequest](supplyrequest.html): When the request was made 3076</b><br> 3077 * Type: <b>date</b><br> 3078 * Path: <b>AdverseEvent.occurrence.ofType(dateTime) | AdverseEvent.occurrence.ofType(Period) | AdverseEvent.occurrence.ofType(Timing) | AllergyIntolerance.recordedDate | (start | requestedPeriod.start).first() | AuditEvent.recorded | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.date | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | DocumentReference.date | Encounter.actualPeriod | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence.ofType(dateTime)) | ImmunizationEvaluation.date | ImmunizationRecommendation.date | Invoice.date | List.date | MeasureReport.date | NutritionIntake.occurrence.ofType(dateTime) | NutritionIntake.occurrence.ofType(Period) | Observation.effective.ofType(dateTime) | Observation.effective.ofType(Period) | Observation.effective.ofType(Timing) | Observation.effective.ofType(instant) | Procedure.occurrence.ofType(dateTime) | Procedure.occurrence.ofType(Period) | Procedure.occurrence.ofType(Timing) | ResearchSubject.period | (RiskAssessment.occurrence.ofType(dateTime)) | SupplyRequest.authoredOn</b><br> 3079 * </p> 3080 */ 3081 @SearchParamDefinition(name="date", path="AdverseEvent.occurrence.ofType(dateTime) | AdverseEvent.occurrence.ofType(Period) | AdverseEvent.occurrence.ofType(Timing) | AllergyIntolerance.recordedDate | (start | requestedPeriod.start).first() | AuditEvent.recorded | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.date | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | DocumentReference.date | Encounter.actualPeriod | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence.ofType(dateTime)) | ImmunizationEvaluation.date | ImmunizationRecommendation.date | Invoice.date | List.date | MeasureReport.date | NutritionIntake.occurrence.ofType(dateTime) | NutritionIntake.occurrence.ofType(Period) | Observation.effective.ofType(dateTime) | Observation.effective.ofType(Period) | Observation.effective.ofType(Timing) | Observation.effective.ofType(instant) | Procedure.occurrence.ofType(dateTime) | Procedure.occurrence.ofType(Period) | Procedure.occurrence.ofType(Timing) | ResearchSubject.period | (RiskAssessment.occurrence.ofType(dateTime)) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AdverseEvent](adverseevent.html): When the event occurred\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [Appointment](appointment.html): Appointment date/time.\r\n* [AuditEvent](auditevent.html): Time when the event was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [DocumentReference](documentreference.html): When this document reference was created\r\n* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated\r\n* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created\r\n* [Invoice](invoice.html): Invoice date / posting date\r\n* [List](list.html): When the list was prepared\r\n* [MeasureReport](measurereport.html): The date of the measure report\r\n* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication\r\n* [Observation](observation.html): Clinically relevant time/time-period for observation\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [ResearchSubject](researchsubject.html): Start and end of participation\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) 3082 public static final String SP_DATE = "date"; 3083 /** 3084 * <b>Fluent Client</b> search parameter constant for <b>date</b> 3085 * <p> 3086 * Description: <b>Multiple Resources: 3087 3088* [AdverseEvent](adverseevent.html): When the event occurred 3089* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded 3090* [Appointment](appointment.html): Appointment date/time. 3091* [AuditEvent](auditevent.html): Time when the event was recorded 3092* [CarePlan](careplan.html): Time period plan covers 3093* [CareTeam](careteam.html): A date within the coverage time period. 3094* [ClinicalImpression](clinicalimpression.html): When the assessment was documented 3095* [Composition](composition.html): Composition editing time 3096* [Consent](consent.html): When consent was agreed to 3097* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report 3098* [DocumentReference](documentreference.html): When this document reference was created 3099* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted 3100* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period 3101* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated 3102* [Flag](flag.html): Time period when flag is active 3103* [Immunization](immunization.html): Vaccination (non)-Administration Date 3104* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated 3105* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created 3106* [Invoice](invoice.html): Invoice date / posting date 3107* [List](list.html): When the list was prepared 3108* [MeasureReport](measurereport.html): The date of the measure report 3109* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication 3110* [Observation](observation.html): Clinically relevant time/time-period for observation 3111* [Procedure](procedure.html): When the procedure occurred or is occurring 3112* [ResearchSubject](researchsubject.html): Start and end of participation 3113* [RiskAssessment](riskassessment.html): When was assessment made? 3114* [SupplyRequest](supplyrequest.html): When the request was made 3115</b><br> 3116 * Type: <b>date</b><br> 3117 * Path: <b>AdverseEvent.occurrence.ofType(dateTime) | AdverseEvent.occurrence.ofType(Period) | AdverseEvent.occurrence.ofType(Timing) | AllergyIntolerance.recordedDate | (start | requestedPeriod.start).first() | AuditEvent.recorded | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.date | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | DocumentReference.date | Encounter.actualPeriod | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence.ofType(dateTime)) | ImmunizationEvaluation.date | ImmunizationRecommendation.date | Invoice.date | List.date | MeasureReport.date | NutritionIntake.occurrence.ofType(dateTime) | NutritionIntake.occurrence.ofType(Period) | Observation.effective.ofType(dateTime) | Observation.effective.ofType(Period) | Observation.effective.ofType(Timing) | Observation.effective.ofType(instant) | Procedure.occurrence.ofType(dateTime) | Procedure.occurrence.ofType(Period) | Procedure.occurrence.ofType(Timing) | ResearchSubject.period | (RiskAssessment.occurrence.ofType(dateTime)) | SupplyRequest.authoredOn</b><br> 3118 * </p> 3119 */ 3120 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 3121 3122 /** 3123 * Search parameter: <b>encounter</b> 3124 * <p> 3125 * Description: <b>Multiple Resources: 3126 3127* [AuditEvent](auditevent.html): Encounter related to the activity recorded in the AuditEvent 3128* [CarePlan](careplan.html): The Encounter during which this CarePlan was created 3129* [ChargeItem](chargeitem.html): Encounter associated with event 3130* [Claim](claim.html): Encounters associated with a billed line item 3131* [ClinicalImpression](clinicalimpression.html): The Encounter during which this ClinicalImpression was created 3132* [Communication](communication.html): The Encounter during which this Communication was created 3133* [CommunicationRequest](communicationrequest.html): The Encounter during which this CommunicationRequest was created 3134* [Composition](composition.html): Context of the Composition 3135* [Condition](condition.html): The Encounter during which this Condition was created 3136* [DeviceRequest](devicerequest.html): Encounter during which request was created 3137* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made 3138* [EncounterHistory](encounterhistory.html): The Encounter associated with this set of history values 3139* [ExplanationOfBenefit](explanationofbenefit.html): Encounters associated with a billed line item 3140* [Flag](flag.html): Alert relevant during encounter 3141* [ImagingStudy](imagingstudy.html): The context of the study 3142* [List](list.html): Context in which list created 3143* [MedicationDispense](medicationdispense.html): Returns dispenses with a specific encounter 3144* [MedicationStatement](medicationstatement.html): Returns statements for a specific encounter 3145* [NutritionIntake](nutritionintake.html): Returns statements for a specific encounter 3146* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier 3147* [Observation](observation.html): Encounter related to the observation 3148* [Procedure](procedure.html): The Encounter during which this Procedure was created 3149* [Provenance](provenance.html): Encounter related to the Provenance 3150* [QuestionnaireResponse](questionnaireresponse.html): Encounter associated with the questionnaire response 3151* [RequestOrchestration](requestorchestration.html): The encounter the request orchestration applies to 3152* [RiskAssessment](riskassessment.html): Where was assessment performed? 3153* [ServiceRequest](servicerequest.html): An encounter in which this request is made 3154* [Task](task.html): Search by encounter 3155* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier 3156</b><br> 3157 * Type: <b>reference</b><br> 3158 * 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> 3159 * </p> 3160 */ 3161 @SearchParamDefinition(name="encounter", path="AuditEvent.encounter | CarePlan.encounter | ChargeItem.encounter | Claim.item.encounter | ClinicalImpression.encounter | Communication.encounter | CommunicationRequest.encounter | Composition.encounter | Condition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | EncounterHistory.encounter | ExplanationOfBenefit.item.encounter | Flag.encounter | ImagingStudy.encounter | List.encounter | MedicationDispense.encounter | MedicationStatement.encounter | NutritionIntake.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | Provenance.encounter | QuestionnaireResponse.encounter | RequestOrchestration.encounter | RiskAssessment.encounter | ServiceRequest.encounter | Task.encounter | VisionPrescription.encounter", description="Multiple Resources: \r\n\r\n* [AuditEvent](auditevent.html): Encounter related to the activity recorded in the AuditEvent\r\n* [CarePlan](careplan.html): The Encounter during which this CarePlan was created\r\n* [ChargeItem](chargeitem.html): Encounter associated with event\r\n* [Claim](claim.html): Encounters associated with a billed line item\r\n* [ClinicalImpression](clinicalimpression.html): The Encounter during which this ClinicalImpression was created\r\n* [Communication](communication.html): The Encounter during which this Communication was created\r\n* [CommunicationRequest](communicationrequest.html): The Encounter during which this CommunicationRequest was created\r\n* [Composition](composition.html): Context of the Composition\r\n* [Condition](condition.html): The Encounter during which this Condition was created\r\n* [DeviceRequest](devicerequest.html): Encounter during which request was created\r\n* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made\r\n* [EncounterHistory](encounterhistory.html): The Encounter associated with this set of history values\r\n* [ExplanationOfBenefit](explanationofbenefit.html): Encounters associated with a billed line item\r\n* [Flag](flag.html): Alert relevant during encounter\r\n* [ImagingStudy](imagingstudy.html): The context of the study\r\n* [List](list.html): Context in which list created\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses with a specific encounter\r\n* [MedicationStatement](medicationstatement.html): Returns statements for a specific encounter\r\n* [NutritionIntake](nutritionintake.html): Returns statements for a specific encounter\r\n* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier\r\n* [Observation](observation.html): Encounter related to the observation\r\n* [Procedure](procedure.html): The Encounter during which this Procedure was created\r\n* [Provenance](provenance.html): Encounter related to the Provenance\r\n* [QuestionnaireResponse](questionnaireresponse.html): Encounter associated with the questionnaire response\r\n* [RequestOrchestration](requestorchestration.html): The encounter the request orchestration applies to\r\n* [RiskAssessment](riskassessment.html): Where was assessment performed?\r\n* [ServiceRequest](servicerequest.html): An encounter in which this request is made\r\n* [Task](task.html): Search by encounter\r\n* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Encounter") }, target={Encounter.class } ) 3162 public static final String SP_ENCOUNTER = "encounter"; 3163 /** 3164 * <b>Fluent Client</b> search parameter constant for <b>encounter</b> 3165 * <p> 3166 * Description: <b>Multiple Resources: 3167 3168* [AuditEvent](auditevent.html): Encounter related to the activity recorded in the AuditEvent 3169* [CarePlan](careplan.html): The Encounter during which this CarePlan was created 3170* [ChargeItem](chargeitem.html): Encounter associated with event 3171* [Claim](claim.html): Encounters associated with a billed line item 3172* [ClinicalImpression](clinicalimpression.html): The Encounter during which this ClinicalImpression was created 3173* [Communication](communication.html): The Encounter during which this Communication was created 3174* [CommunicationRequest](communicationrequest.html): The Encounter during which this CommunicationRequest was created 3175* [Composition](composition.html): Context of the Composition 3176* [Condition](condition.html): The Encounter during which this Condition was created 3177* [DeviceRequest](devicerequest.html): Encounter during which request was created 3178* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made 3179* [EncounterHistory](encounterhistory.html): The Encounter associated with this set of history values 3180* [ExplanationOfBenefit](explanationofbenefit.html): Encounters associated with a billed line item 3181* [Flag](flag.html): Alert relevant during encounter 3182* [ImagingStudy](imagingstudy.html): The context of the study 3183* [List](list.html): Context in which list created 3184* [MedicationDispense](medicationdispense.html): Returns dispenses with a specific encounter 3185* [MedicationStatement](medicationstatement.html): Returns statements for a specific encounter 3186* [NutritionIntake](nutritionintake.html): Returns statements for a specific encounter 3187* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier 3188* [Observation](observation.html): Encounter related to the observation 3189* [Procedure](procedure.html): The Encounter during which this Procedure was created 3190* [Provenance](provenance.html): Encounter related to the Provenance 3191* [QuestionnaireResponse](questionnaireresponse.html): Encounter associated with the questionnaire response 3192* [RequestOrchestration](requestorchestration.html): The encounter the request orchestration applies to 3193* [RiskAssessment](riskassessment.html): Where was assessment performed? 3194* [ServiceRequest](servicerequest.html): An encounter in which this request is made 3195* [Task](task.html): Search by encounter 3196* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier 3197</b><br> 3198 * Type: <b>reference</b><br> 3199 * 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> 3200 * </p> 3201 */ 3202 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ENCOUNTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ENCOUNTER); 3203 3204/** 3205 * Constant for fluent queries to be used to add include statements. Specifies 3206 * the path value of "<b>Composition:encounter</b>". 3207 */ 3208 public static final ca.uhn.fhir.model.api.Include INCLUDE_ENCOUNTER = new ca.uhn.fhir.model.api.Include("Composition:encounter").toLocked(); 3209 3210 /** 3211 * Search parameter: <b>identifier</b> 3212 * <p> 3213 * Description: <b>Multiple Resources: 3214 3215* [Account](account.html): Account number 3216* [AdverseEvent](adverseevent.html): Business identifier for the event 3217* [AllergyIntolerance](allergyintolerance.html): External ids for this item 3218* [Appointment](appointment.html): An Identifier of the Appointment 3219* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 3220* [Basic](basic.html): Business identifier 3221* [BodyStructure](bodystructure.html): Bodystructure identifier 3222* [CarePlan](careplan.html): External Ids for this plan 3223* [CareTeam](careteam.html): External Ids for this team 3224* [ChargeItem](chargeitem.html): Business Identifier for item 3225* [Claim](claim.html): The primary identifier of the financial resource 3226* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 3227* [ClinicalImpression](clinicalimpression.html): Business identifier 3228* [Communication](communication.html): Unique identifier 3229* [CommunicationRequest](communicationrequest.html): Unique identifier 3230* [Composition](composition.html): Version-independent identifier for the Composition 3231* [Condition](condition.html): A unique identifier of the condition record 3232* [Consent](consent.html): Identifier for this record (external references) 3233* [Contract](contract.html): The identity of the contract 3234* [Coverage](coverage.html): The primary identifier of the insured and the coverage 3235* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 3236* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 3237* [DetectedIssue](detectedissue.html): Unique id for the detected issue 3238* [DeviceRequest](devicerequest.html): Business identifier for request/order 3239* [DeviceUsage](deviceusage.html): Search by identifier 3240* [DiagnosticReport](diagnosticreport.html): An identifier for the report 3241* [DocumentReference](documentreference.html): Identifier of the attachment binary 3242* [Encounter](encounter.html): Identifier(s) by which this encounter is known 3243* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 3244* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 3245* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 3246* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 3247* [Flag](flag.html): Business identifier 3248* [Goal](goal.html): External Ids for this goal 3249* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 3250* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 3251* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 3252* [Immunization](immunization.html): Business identifier 3253* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 3254* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 3255* [Invoice](invoice.html): Business Identifier for item 3256* [List](list.html): Business identifier 3257* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 3258* [Medication](medication.html): Returns medications with this external identifier 3259* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 3260* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 3261* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 3262* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 3263* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 3264* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 3265* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 3266* [Observation](observation.html): The unique id for a particular observation 3267* [Person](person.html): A person Identifier 3268* [Procedure](procedure.html): A unique identifier for a procedure 3269* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 3270* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 3271* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 3272* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 3273* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 3274* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 3275* [Specimen](specimen.html): The unique identifier associated with the specimen 3276* [SupplyDelivery](supplydelivery.html): External identifier 3277* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 3278* [Task](task.html): Search for a task instance by its business identifier 3279* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 3280</b><br> 3281 * Type: <b>token</b><br> 3282 * 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> 3283 * </p> 3284 */ 3285 @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" ) 3286 public static final String SP_IDENTIFIER = "identifier"; 3287 /** 3288 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 3289 * <p> 3290 * Description: <b>Multiple Resources: 3291 3292* [Account](account.html): Account number 3293* [AdverseEvent](adverseevent.html): Business identifier for the event 3294* [AllergyIntolerance](allergyintolerance.html): External ids for this item 3295* [Appointment](appointment.html): An Identifier of the Appointment 3296* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 3297* [Basic](basic.html): Business identifier 3298* [BodyStructure](bodystructure.html): Bodystructure identifier 3299* [CarePlan](careplan.html): External Ids for this plan 3300* [CareTeam](careteam.html): External Ids for this team 3301* [ChargeItem](chargeitem.html): Business Identifier for item 3302* [Claim](claim.html): The primary identifier of the financial resource 3303* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 3304* [ClinicalImpression](clinicalimpression.html): Business identifier 3305* [Communication](communication.html): Unique identifier 3306* [CommunicationRequest](communicationrequest.html): Unique identifier 3307* [Composition](composition.html): Version-independent identifier for the Composition 3308* [Condition](condition.html): A unique identifier of the condition record 3309* [Consent](consent.html): Identifier for this record (external references) 3310* [Contract](contract.html): The identity of the contract 3311* [Coverage](coverage.html): The primary identifier of the insured and the coverage 3312* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 3313* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 3314* [DetectedIssue](detectedissue.html): Unique id for the detected issue 3315* [DeviceRequest](devicerequest.html): Business identifier for request/order 3316* [DeviceUsage](deviceusage.html): Search by identifier 3317* [DiagnosticReport](diagnosticreport.html): An identifier for the report 3318* [DocumentReference](documentreference.html): Identifier of the attachment binary 3319* [Encounter](encounter.html): Identifier(s) by which this encounter is known 3320* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 3321* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 3322* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 3323* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 3324* [Flag](flag.html): Business identifier 3325* [Goal](goal.html): External Ids for this goal 3326* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 3327* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 3328* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 3329* [Immunization](immunization.html): Business identifier 3330* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 3331* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 3332* [Invoice](invoice.html): Business Identifier for item 3333* [List](list.html): Business identifier 3334* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 3335* [Medication](medication.html): Returns medications with this external identifier 3336* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 3337* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 3338* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 3339* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 3340* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 3341* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 3342* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 3343* [Observation](observation.html): The unique id for a particular observation 3344* [Person](person.html): A person Identifier 3345* [Procedure](procedure.html): A unique identifier for a procedure 3346* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 3347* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 3348* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 3349* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 3350* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 3351* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 3352* [Specimen](specimen.html): The unique identifier associated with the specimen 3353* [SupplyDelivery](supplydelivery.html): External identifier 3354* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 3355* [Task](task.html): Search for a task instance by its business identifier 3356* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 3357</b><br> 3358 * Type: <b>token</b><br> 3359 * 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> 3360 * </p> 3361 */ 3362 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 3363 3364 /** 3365 * Search parameter: <b>patient</b> 3366 * <p> 3367 * Description: <b>Multiple Resources: 3368 3369* [Account](account.html): The entity that caused the expenses 3370* [AdverseEvent](adverseevent.html): Subject impacted by event 3371* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 3372* [Appointment](appointment.html): One of the individuals of the appointment is this patient 3373* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 3374* [AuditEvent](auditevent.html): Where the activity involved patient data 3375* [Basic](basic.html): Identifies the focus of this resource 3376* [BodyStructure](bodystructure.html): Who this is about 3377* [CarePlan](careplan.html): Who the care plan is for 3378* [CareTeam](careteam.html): Who care team is for 3379* [ChargeItem](chargeitem.html): Individual service was done for/to 3380* [Claim](claim.html): Patient receiving the products or services 3381* [ClaimResponse](claimresponse.html): The subject of care 3382* [ClinicalImpression](clinicalimpression.html): Patient assessed 3383* [Communication](communication.html): Focus of message 3384* [CommunicationRequest](communicationrequest.html): Focus of message 3385* [Composition](composition.html): Who and/or what the composition is about 3386* [Condition](condition.html): Who has the condition? 3387* [Consent](consent.html): Who the consent applies to 3388* [Contract](contract.html): The identity of the subject of the contract (if a patient) 3389* [Coverage](coverage.html): Retrieve coverages for a patient 3390* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 3391* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 3392* [DetectedIssue](detectedissue.html): Associated patient 3393* [DeviceRequest](devicerequest.html): Individual the service is ordered for 3394* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 3395* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 3396* [DocumentReference](documentreference.html): Who/what is the subject of the document 3397* [Encounter](encounter.html): The patient present at the encounter 3398* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 3399* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 3400* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 3401* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 3402* [Flag](flag.html): The identity of a subject to list flags for 3403* [Goal](goal.html): Who this goal is intended for 3404* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 3405* [ImagingSelection](imagingselection.html): Who the study is about 3406* [ImagingStudy](imagingstudy.html): Who the study is about 3407* [Immunization](immunization.html): The patient for the vaccination record 3408* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 3409* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 3410* [Invoice](invoice.html): Recipient(s) of goods and services 3411* [List](list.html): If all resources have the same subject 3412* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 3413* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 3414* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 3415* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 3416* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 3417* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 3418* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 3419* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 3420* [Observation](observation.html): The subject that the observation is about (if patient) 3421* [Person](person.html): The Person links to this Patient 3422* [Procedure](procedure.html): Search by subject - a patient 3423* [Provenance](provenance.html): Where the activity involved patient data 3424* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 3425* [RelatedPerson](relatedperson.html): The patient this related person is related to 3426* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 3427* [ResearchSubject](researchsubject.html): Who or what is part of study 3428* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 3429* [ServiceRequest](servicerequest.html): Search by subject - a patient 3430* [Specimen](specimen.html): The patient the specimen comes from 3431* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 3432* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 3433* [Task](task.html): Search by patient 3434* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 3435</b><br> 3436 * Type: <b>reference</b><br> 3437 * 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> 3438 * </p> 3439 */ 3440 @SearchParamDefinition(name="patient", path="Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [Account](account.html): The entity that caused the expenses\r\n* [AdverseEvent](adverseevent.html): Subject impacted by event\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [Appointment](appointment.html): One of the individuals of the appointment is this patient\r\n* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient\r\n* [AuditEvent](auditevent.html): Where the activity involved patient data\r\n* [Basic](basic.html): Identifies the focus of this resource\r\n* [BodyStructure](bodystructure.html): Who this is about\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ChargeItem](chargeitem.html): Individual service was done for/to\r\n* [Claim](claim.html): Patient receiving the products or services\r\n* [ClaimResponse](claimresponse.html): The subject of care\r\n* [ClinicalImpression](clinicalimpression.html): Patient assessed\r\n* [Communication](communication.html): Focus of message\r\n* [CommunicationRequest](communicationrequest.html): Focus of message\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [Contract](contract.html): The identity of the subject of the contract (if a patient)\r\n* [Coverage](coverage.html): Retrieve coverages for a patient\r\n* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient\r\n* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient present at the encounter\r\n* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results\r\n* [ImagingSelection](imagingselection.html): Who the study is about\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated\r\n* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for\r\n* [Invoice](invoice.html): Recipient(s) of goods and services\r\n* [List](list.html): If all resources have the same subject\r\n* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient.\r\n* [MolecularSequence](molecularsequence.html): The subject that the sequence is about\r\n* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Person](person.html): The Person links to this Patient\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [Provenance](provenance.html): Where the activity involved patient data\r\n* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response\r\n* [RelatedPerson](relatedperson.html): The patient this related person is related to\r\n* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations\r\n* [ResearchSubject](researchsubject.html): Who or what is part of study\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [Specimen](specimen.html): The patient the specimen comes from\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined\r\n* [Task](task.html): Search by patient\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Patient.class } ) 3441 public static final String SP_PATIENT = "patient"; 3442 /** 3443 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 3444 * <p> 3445 * Description: <b>Multiple Resources: 3446 3447* [Account](account.html): The entity that caused the expenses 3448* [AdverseEvent](adverseevent.html): Subject impacted by event 3449* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 3450* [Appointment](appointment.html): One of the individuals of the appointment is this patient 3451* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 3452* [AuditEvent](auditevent.html): Where the activity involved patient data 3453* [Basic](basic.html): Identifies the focus of this resource 3454* [BodyStructure](bodystructure.html): Who this is about 3455* [CarePlan](careplan.html): Who the care plan is for 3456* [CareTeam](careteam.html): Who care team is for 3457* [ChargeItem](chargeitem.html): Individual service was done for/to 3458* [Claim](claim.html): Patient receiving the products or services 3459* [ClaimResponse](claimresponse.html): The subject of care 3460* [ClinicalImpression](clinicalimpression.html): Patient assessed 3461* [Communication](communication.html): Focus of message 3462* [CommunicationRequest](communicationrequest.html): Focus of message 3463* [Composition](composition.html): Who and/or what the composition is about 3464* [Condition](condition.html): Who has the condition? 3465* [Consent](consent.html): Who the consent applies to 3466* [Contract](contract.html): The identity of the subject of the contract (if a patient) 3467* [Coverage](coverage.html): Retrieve coverages for a patient 3468* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 3469* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 3470* [DetectedIssue](detectedissue.html): Associated patient 3471* [DeviceRequest](devicerequest.html): Individual the service is ordered for 3472* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 3473* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 3474* [DocumentReference](documentreference.html): Who/what is the subject of the document 3475* [Encounter](encounter.html): The patient present at the encounter 3476* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 3477* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 3478* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 3479* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 3480* [Flag](flag.html): The identity of a subject to list flags for 3481* [Goal](goal.html): Who this goal is intended for 3482* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 3483* [ImagingSelection](imagingselection.html): Who the study is about 3484* [ImagingStudy](imagingstudy.html): Who the study is about 3485* [Immunization](immunization.html): The patient for the vaccination record 3486* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 3487* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 3488* [Invoice](invoice.html): Recipient(s) of goods and services 3489* [List](list.html): If all resources have the same subject 3490* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 3491* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 3492* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 3493* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 3494* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 3495* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 3496* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 3497* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 3498* [Observation](observation.html): The subject that the observation is about (if patient) 3499* [Person](person.html): The Person links to this Patient 3500* [Procedure](procedure.html): Search by subject - a patient 3501* [Provenance](provenance.html): Where the activity involved patient data 3502* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 3503* [RelatedPerson](relatedperson.html): The patient this related person is related to 3504* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 3505* [ResearchSubject](researchsubject.html): Who or what is part of study 3506* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 3507* [ServiceRequest](servicerequest.html): Search by subject - a patient 3508* [Specimen](specimen.html): The patient the specimen comes from 3509* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 3510* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 3511* [Task](task.html): Search by patient 3512* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 3513</b><br> 3514 * Type: <b>reference</b><br> 3515 * 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> 3516 * </p> 3517 */ 3518 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 3519 3520/** 3521 * Constant for fluent queries to be used to add include statements. Specifies 3522 * the path value of "<b>Composition:patient</b>". 3523 */ 3524 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("Composition:patient").toLocked(); 3525 3526 /** 3527 * Search parameter: <b>type</b> 3528 * <p> 3529 * Description: <b>Multiple Resources: 3530 3531* [Account](account.html): E.g. patient, expense, depreciation 3532* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known) 3533* [Composition](composition.html): Kind of composition (LOINC if possible) 3534* [Coverage](coverage.html): The kind of coverage (health plan, auto, Workers Compensation) 3535* [DocumentReference](documentreference.html): Kind of document (LOINC if possible) 3536* [Encounter](encounter.html): Specific type of encounter 3537* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management 3538* [Invoice](invoice.html): Type of Invoice 3539* [MedicationDispense](medicationdispense.html): Returns dispenses of a specific type 3540* [MolecularSequence](molecularsequence.html): Amino Acid Sequence/ DNA Sequence / RNA Sequence 3541* [Specimen](specimen.html): The specimen type 3542</b><br> 3543 * Type: <b>token</b><br> 3544 * Path: <b>Account.type | AllergyIntolerance.type | Composition.type | Coverage.type | DocumentReference.type | Encounter.type | EpisodeOfCare.type | Invoice.type | MedicationDispense.type | MolecularSequence.type | Specimen.type</b><br> 3545 * </p> 3546 */ 3547 @SearchParamDefinition(name="type", path="Account.type | AllergyIntolerance.type | Composition.type | Coverage.type | DocumentReference.type | Encounter.type | EpisodeOfCare.type | Invoice.type | MedicationDispense.type | MolecularSequence.type | Specimen.type", description="Multiple Resources: \r\n\r\n* [Account](account.html): E.g. patient, expense, depreciation\r\n* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known)\r\n* [Composition](composition.html): Kind of composition (LOINC if possible)\r\n* [Coverage](coverage.html): The kind of coverage (health plan, auto, Workers Compensation)\r\n* [DocumentReference](documentreference.html): Kind of document (LOINC if possible)\r\n* [Encounter](encounter.html): Specific type of encounter\r\n* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management\r\n* [Invoice](invoice.html): Type of Invoice\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of a specific type\r\n* [MolecularSequence](molecularsequence.html): Amino Acid Sequence/ DNA Sequence / RNA Sequence\r\n* [Specimen](specimen.html): The specimen type\r\n", type="token" ) 3548 public static final String SP_TYPE = "type"; 3549 /** 3550 * <b>Fluent Client</b> search parameter constant for <b>type</b> 3551 * <p> 3552 * Description: <b>Multiple Resources: 3553 3554* [Account](account.html): E.g. patient, expense, depreciation 3555* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known) 3556* [Composition](composition.html): Kind of composition (LOINC if possible) 3557* [Coverage](coverage.html): The kind of coverage (health plan, auto, Workers Compensation) 3558* [DocumentReference](documentreference.html): Kind of document (LOINC if possible) 3559* [Encounter](encounter.html): Specific type of encounter 3560* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management 3561* [Invoice](invoice.html): Type of Invoice 3562* [MedicationDispense](medicationdispense.html): Returns dispenses of a specific type 3563* [MolecularSequence](molecularsequence.html): Amino Acid Sequence/ DNA Sequence / RNA Sequence 3564* [Specimen](specimen.html): The specimen type 3565</b><br> 3566 * Type: <b>token</b><br> 3567 * Path: <b>Account.type | AllergyIntolerance.type | Composition.type | Coverage.type | DocumentReference.type | Encounter.type | EpisodeOfCare.type | Invoice.type | MedicationDispense.type | MolecularSequence.type | Specimen.type</b><br> 3568 * </p> 3569 */ 3570 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TYPE); 3571 3572 3573} 3574