![](/hapi-fhir/images/logos/raccoon-forwards.png)
001package org.hl7.fhir.r5.model; 002 003 004/* 005 Copyright (c) 2011+, HL7, Inc. 006 All rights reserved. 007 008 Redistribution and use in source and binary forms, with or without modification, \ 009 are permitted provided that the following conditions are met: 010 011 * Redistributions of source code must retain the above copyright notice, this \ 012 list of conditions and the following disclaimer. 013 * Redistributions in binary form must reproduce the above copyright notice, \ 014 this list of conditions and the following disclaimer in the documentation \ 015 and/or other materials provided with the distribution. 016 * Neither the name of HL7 nor the names of its contributors may be used to 017 endorse or promote products derived from this software without specific 018 prior written permission. 019 020 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ 021 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ 022 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ 023 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ 024 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ 025 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ 026 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ 027 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ 028 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ 029 POSSIBILITY OF SUCH DAMAGE. 030 */ 031 032// Generated on Thu, Mar 23, 2023 19:59+1100 for FHIR v5.0.0 033 034import java.util.ArrayList; 035import java.util.Date; 036import java.util.List; 037import org.hl7.fhir.utilities.Utilities; 038import org.hl7.fhir.r5.model.Enumerations.*; 039import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 040import org.hl7.fhir.exceptions.FHIRException; 041import org.hl7.fhir.instance.model.api.ICompositeType; 042import ca.uhn.fhir.model.api.annotation.ResourceDef; 043import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 044import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 045import ca.uhn.fhir.model.api.annotation.Child; 046import ca.uhn.fhir.model.api.annotation.ChildOrder; 047import ca.uhn.fhir.model.api.annotation.Description; 048import ca.uhn.fhir.model.api.annotation.Block; 049 050/** 051 * A reference to a document of any kind for any purpose. While the term ?document? implies a more narrow focus, for this resource this ?document? encompasses *any* serialized object with a mime-type, it includes formal patient-centric documents (CDA), clinical notes, scanned paper, non-patient specific documents like policy text, as well as a photo, video, or audio recording acquired or used in healthcare. The DocumentReference resource provides metadata about the document so that the document can be discovered and managed. The actual content may be inline base64 encoded data or provided by direct reference. 052 */ 053@ResourceDef(name="DocumentReference", profile="http://hl7.org/fhir/StructureDefinition/DocumentReference") 054public class DocumentReference extends DomainResource { 055 056 public enum DocumentReferenceStatus { 057 /** 058 * This is the current reference for this document. 059 */ 060 CURRENT, 061 /** 062 * This reference has been superseded by another reference. 063 */ 064 SUPERSEDED, 065 /** 066 * This reference was created in error. 067 */ 068 ENTEREDINERROR, 069 /** 070 * added to help the parsers with the generic types 071 */ 072 NULL; 073 public static DocumentReferenceStatus fromCode(String codeString) throws FHIRException { 074 if (codeString == null || "".equals(codeString)) 075 return null; 076 if ("current".equals(codeString)) 077 return CURRENT; 078 if ("superseded".equals(codeString)) 079 return SUPERSEDED; 080 if ("entered-in-error".equals(codeString)) 081 return ENTEREDINERROR; 082 if (Configuration.isAcceptInvalidEnums()) 083 return null; 084 else 085 throw new FHIRException("Unknown DocumentReferenceStatus code '"+codeString+"'"); 086 } 087 public String toCode() { 088 switch (this) { 089 case CURRENT: return "current"; 090 case SUPERSEDED: return "superseded"; 091 case ENTEREDINERROR: return "entered-in-error"; 092 case NULL: return null; 093 default: return "?"; 094 } 095 } 096 public String getSystem() { 097 switch (this) { 098 case CURRENT: return "http://hl7.org/fhir/document-reference-status"; 099 case SUPERSEDED: return "http://hl7.org/fhir/document-reference-status"; 100 case ENTEREDINERROR: return "http://hl7.org/fhir/document-reference-status"; 101 case NULL: return null; 102 default: return "?"; 103 } 104 } 105 public String getDefinition() { 106 switch (this) { 107 case CURRENT: return "This is the current reference for this document."; 108 case SUPERSEDED: return "This reference has been superseded by another reference."; 109 case ENTEREDINERROR: return "This reference was created in error."; 110 case NULL: return null; 111 default: return "?"; 112 } 113 } 114 public String getDisplay() { 115 switch (this) { 116 case CURRENT: return "Current"; 117 case SUPERSEDED: return "Superseded"; 118 case ENTEREDINERROR: return "Entered in Error"; 119 case NULL: return null; 120 default: return "?"; 121 } 122 } 123 } 124 125 public static class DocumentReferenceStatusEnumFactory implements EnumFactory<DocumentReferenceStatus> { 126 public DocumentReferenceStatus fromCode(String codeString) throws IllegalArgumentException { 127 if (codeString == null || "".equals(codeString)) 128 if (codeString == null || "".equals(codeString)) 129 return null; 130 if ("current".equals(codeString)) 131 return DocumentReferenceStatus.CURRENT; 132 if ("superseded".equals(codeString)) 133 return DocumentReferenceStatus.SUPERSEDED; 134 if ("entered-in-error".equals(codeString)) 135 return DocumentReferenceStatus.ENTEREDINERROR; 136 throw new IllegalArgumentException("Unknown DocumentReferenceStatus code '"+codeString+"'"); 137 } 138 public Enumeration<DocumentReferenceStatus> fromType(PrimitiveType<?> code) throws FHIRException { 139 if (code == null) 140 return null; 141 if (code.isEmpty()) 142 return new Enumeration<DocumentReferenceStatus>(this, DocumentReferenceStatus.NULL, code); 143 String codeString = ((PrimitiveType) code).asStringValue(); 144 if (codeString == null || "".equals(codeString)) 145 return new Enumeration<DocumentReferenceStatus>(this, DocumentReferenceStatus.NULL, code); 146 if ("current".equals(codeString)) 147 return new Enumeration<DocumentReferenceStatus>(this, DocumentReferenceStatus.CURRENT, code); 148 if ("superseded".equals(codeString)) 149 return new Enumeration<DocumentReferenceStatus>(this, DocumentReferenceStatus.SUPERSEDED, code); 150 if ("entered-in-error".equals(codeString)) 151 return new Enumeration<DocumentReferenceStatus>(this, DocumentReferenceStatus.ENTEREDINERROR, code); 152 throw new FHIRException("Unknown DocumentReferenceStatus code '"+codeString+"'"); 153 } 154 public String toCode(DocumentReferenceStatus code) { 155 if (code == DocumentReferenceStatus.CURRENT) 156 return "current"; 157 if (code == DocumentReferenceStatus.SUPERSEDED) 158 return "superseded"; 159 if (code == DocumentReferenceStatus.ENTEREDINERROR) 160 return "entered-in-error"; 161 return "?"; 162 } 163 public String toSystem(DocumentReferenceStatus code) { 164 return code.getSystem(); 165 } 166 } 167 168 @Block() 169 public static class DocumentReferenceAttesterComponent extends BackboneElement implements IBaseBackboneElement { 170 /** 171 * The type of attestation the authenticator offers. 172 */ 173 @Child(name = "mode", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) 174 @Description(shortDefinition="personal | professional | legal | official", formalDefinition="The type of attestation the authenticator offers." ) 175 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/composition-attestation-mode") 176 protected CodeableConcept mode; 177 178 /** 179 * When the document was attested by the party. 180 */ 181 @Child(name = "time", type = {DateTimeType.class}, order=2, min=0, max=1, modifier=false, summary=false) 182 @Description(shortDefinition="When the document was attested", formalDefinition="When the document was attested by the party." ) 183 protected DateTimeType time; 184 185 /** 186 * Who attested the document in the specified way. 187 */ 188 @Child(name = "party", type = {Patient.class, RelatedPerson.class, Practitioner.class, PractitionerRole.class, Organization.class}, order=3, min=0, max=1, modifier=false, summary=false) 189 @Description(shortDefinition="Who attested the document", formalDefinition="Who attested the document in the specified way." ) 190 protected Reference party; 191 192 private static final long serialVersionUID = 545132751L; 193 194 /** 195 * Constructor 196 */ 197 public DocumentReferenceAttesterComponent() { 198 super(); 199 } 200 201 /** 202 * Constructor 203 */ 204 public DocumentReferenceAttesterComponent(CodeableConcept mode) { 205 super(); 206 this.setMode(mode); 207 } 208 209 /** 210 * @return {@link #mode} (The type of attestation the authenticator offers.) 211 */ 212 public CodeableConcept getMode() { 213 if (this.mode == null) 214 if (Configuration.errorOnAutoCreate()) 215 throw new Error("Attempt to auto-create DocumentReferenceAttesterComponent.mode"); 216 else if (Configuration.doAutoCreate()) 217 this.mode = new CodeableConcept(); // cc 218 return this.mode; 219 } 220 221 public boolean hasMode() { 222 return this.mode != null && !this.mode.isEmpty(); 223 } 224 225 /** 226 * @param value {@link #mode} (The type of attestation the authenticator offers.) 227 */ 228 public DocumentReferenceAttesterComponent setMode(CodeableConcept value) { 229 this.mode = value; 230 return this; 231 } 232 233 /** 234 * @return {@link #time} (When the document was attested by the party.). This is the underlying object with id, value and extensions. The accessor "getTime" gives direct access to the value 235 */ 236 public DateTimeType getTimeElement() { 237 if (this.time == null) 238 if (Configuration.errorOnAutoCreate()) 239 throw new Error("Attempt to auto-create DocumentReferenceAttesterComponent.time"); 240 else if (Configuration.doAutoCreate()) 241 this.time = new DateTimeType(); // bb 242 return this.time; 243 } 244 245 public boolean hasTimeElement() { 246 return this.time != null && !this.time.isEmpty(); 247 } 248 249 public boolean hasTime() { 250 return this.time != null && !this.time.isEmpty(); 251 } 252 253 /** 254 * @param value {@link #time} (When the document was attested by the party.). This is the underlying object with id, value and extensions. The accessor "getTime" gives direct access to the value 255 */ 256 public DocumentReferenceAttesterComponent setTimeElement(DateTimeType value) { 257 this.time = value; 258 return this; 259 } 260 261 /** 262 * @return When the document was attested by the party. 263 */ 264 public Date getTime() { 265 return this.time == null ? null : this.time.getValue(); 266 } 267 268 /** 269 * @param value When the document was attested by the party. 270 */ 271 public DocumentReferenceAttesterComponent setTime(Date value) { 272 if (value == null) 273 this.time = null; 274 else { 275 if (this.time == null) 276 this.time = new DateTimeType(); 277 this.time.setValue(value); 278 } 279 return this; 280 } 281 282 /** 283 * @return {@link #party} (Who attested the document in the specified way.) 284 */ 285 public Reference getParty() { 286 if (this.party == null) 287 if (Configuration.errorOnAutoCreate()) 288 throw new Error("Attempt to auto-create DocumentReferenceAttesterComponent.party"); 289 else if (Configuration.doAutoCreate()) 290 this.party = new Reference(); // cc 291 return this.party; 292 } 293 294 public boolean hasParty() { 295 return this.party != null && !this.party.isEmpty(); 296 } 297 298 /** 299 * @param value {@link #party} (Who attested the document in the specified way.) 300 */ 301 public DocumentReferenceAttesterComponent setParty(Reference value) { 302 this.party = value; 303 return this; 304 } 305 306 protected void listChildren(List<Property> children) { 307 super.listChildren(children); 308 children.add(new Property("mode", "CodeableConcept", "The type of attestation the authenticator offers.", 0, 1, mode)); 309 children.add(new Property("time", "dateTime", "When the document was attested by the party.", 0, 1, time)); 310 children.add(new Property("party", "Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Who attested the document in the specified way.", 0, 1, party)); 311 } 312 313 @Override 314 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 315 switch (_hash) { 316 case 3357091: /*mode*/ return new Property("mode", "CodeableConcept", "The type of attestation the authenticator offers.", 0, 1, mode); 317 case 3560141: /*time*/ return new Property("time", "dateTime", "When the document was attested by the party.", 0, 1, time); 318 case 106437350: /*party*/ return new Property("party", "Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Who attested the document in the specified way.", 0, 1, party); 319 default: return super.getNamedProperty(_hash, _name, _checkValid); 320 } 321 322 } 323 324 @Override 325 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 326 switch (hash) { 327 case 3357091: /*mode*/ return this.mode == null ? new Base[0] : new Base[] {this.mode}; // CodeableConcept 328 case 3560141: /*time*/ return this.time == null ? new Base[0] : new Base[] {this.time}; // DateTimeType 329 case 106437350: /*party*/ return this.party == null ? new Base[0] : new Base[] {this.party}; // Reference 330 default: return super.getProperty(hash, name, checkValid); 331 } 332 333 } 334 335 @Override 336 public Base setProperty(int hash, String name, Base value) throws FHIRException { 337 switch (hash) { 338 case 3357091: // mode 339 this.mode = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 340 return value; 341 case 3560141: // time 342 this.time = TypeConvertor.castToDateTime(value); // DateTimeType 343 return value; 344 case 106437350: // party 345 this.party = TypeConvertor.castToReference(value); // Reference 346 return value; 347 default: return super.setProperty(hash, name, value); 348 } 349 350 } 351 352 @Override 353 public Base setProperty(String name, Base value) throws FHIRException { 354 if (name.equals("mode")) { 355 this.mode = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 356 } else if (name.equals("time")) { 357 this.time = TypeConvertor.castToDateTime(value); // DateTimeType 358 } else if (name.equals("party")) { 359 this.party = TypeConvertor.castToReference(value); // Reference 360 } else 361 return super.setProperty(name, value); 362 return value; 363 } 364 365 @Override 366 public void removeChild(String name, Base value) throws FHIRException { 367 if (name.equals("mode")) { 368 this.mode = null; 369 } else if (name.equals("time")) { 370 this.time = null; 371 } else if (name.equals("party")) { 372 this.party = null; 373 } else 374 super.removeChild(name, value); 375 376 } 377 378 @Override 379 public Base makeProperty(int hash, String name) throws FHIRException { 380 switch (hash) { 381 case 3357091: return getMode(); 382 case 3560141: return getTimeElement(); 383 case 106437350: return getParty(); 384 default: return super.makeProperty(hash, name); 385 } 386 387 } 388 389 @Override 390 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 391 switch (hash) { 392 case 3357091: /*mode*/ return new String[] {"CodeableConcept"}; 393 case 3560141: /*time*/ return new String[] {"dateTime"}; 394 case 106437350: /*party*/ return new String[] {"Reference"}; 395 default: return super.getTypesForProperty(hash, name); 396 } 397 398 } 399 400 @Override 401 public Base addChild(String name) throws FHIRException { 402 if (name.equals("mode")) { 403 this.mode = new CodeableConcept(); 404 return this.mode; 405 } 406 else if (name.equals("time")) { 407 throw new FHIRException("Cannot call addChild on a singleton property DocumentReference.attester.time"); 408 } 409 else if (name.equals("party")) { 410 this.party = new Reference(); 411 return this.party; 412 } 413 else 414 return super.addChild(name); 415 } 416 417 public DocumentReferenceAttesterComponent copy() { 418 DocumentReferenceAttesterComponent dst = new DocumentReferenceAttesterComponent(); 419 copyValues(dst); 420 return dst; 421 } 422 423 public void copyValues(DocumentReferenceAttesterComponent dst) { 424 super.copyValues(dst); 425 dst.mode = mode == null ? null : mode.copy(); 426 dst.time = time == null ? null : time.copy(); 427 dst.party = party == null ? null : party.copy(); 428 } 429 430 @Override 431 public boolean equalsDeep(Base other_) { 432 if (!super.equalsDeep(other_)) 433 return false; 434 if (!(other_ instanceof DocumentReferenceAttesterComponent)) 435 return false; 436 DocumentReferenceAttesterComponent o = (DocumentReferenceAttesterComponent) other_; 437 return compareDeep(mode, o.mode, true) && compareDeep(time, o.time, true) && compareDeep(party, o.party, true) 438 ; 439 } 440 441 @Override 442 public boolean equalsShallow(Base other_) { 443 if (!super.equalsShallow(other_)) 444 return false; 445 if (!(other_ instanceof DocumentReferenceAttesterComponent)) 446 return false; 447 DocumentReferenceAttesterComponent o = (DocumentReferenceAttesterComponent) other_; 448 return compareValues(time, o.time, true); 449 } 450 451 public boolean isEmpty() { 452 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(mode, time, party); 453 } 454 455 public String fhirType() { 456 return "DocumentReference.attester"; 457 458 } 459 460 } 461 462 @Block() 463 public static class DocumentReferenceRelatesToComponent extends BackboneElement implements IBaseBackboneElement { 464 /** 465 * The type of relationship that this document has with anther document. 466 */ 467 @Child(name = "code", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) 468 @Description(shortDefinition="The relationship type with another document", formalDefinition="The type of relationship that this document has with anther document." ) 469 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/document-relationship-type") 470 protected CodeableConcept code; 471 472 /** 473 * The target document of this relationship. 474 */ 475 @Child(name = "target", type = {DocumentReference.class}, order=2, min=1, max=1, modifier=false, summary=true) 476 @Description(shortDefinition="Target of the relationship", formalDefinition="The target document of this relationship." ) 477 protected Reference target; 478 479 private static final long serialVersionUID = -372012026L; 480 481 /** 482 * Constructor 483 */ 484 public DocumentReferenceRelatesToComponent() { 485 super(); 486 } 487 488 /** 489 * Constructor 490 */ 491 public DocumentReferenceRelatesToComponent(CodeableConcept code, Reference target) { 492 super(); 493 this.setCode(code); 494 this.setTarget(target); 495 } 496 497 /** 498 * @return {@link #code} (The type of relationship that this document has with anther document.) 499 */ 500 public CodeableConcept getCode() { 501 if (this.code == null) 502 if (Configuration.errorOnAutoCreate()) 503 throw new Error("Attempt to auto-create DocumentReferenceRelatesToComponent.code"); 504 else if (Configuration.doAutoCreate()) 505 this.code = new CodeableConcept(); // cc 506 return this.code; 507 } 508 509 public boolean hasCode() { 510 return this.code != null && !this.code.isEmpty(); 511 } 512 513 /** 514 * @param value {@link #code} (The type of relationship that this document has with anther document.) 515 */ 516 public DocumentReferenceRelatesToComponent setCode(CodeableConcept value) { 517 this.code = value; 518 return this; 519 } 520 521 /** 522 * @return {@link #target} (The target document of this relationship.) 523 */ 524 public Reference getTarget() { 525 if (this.target == null) 526 if (Configuration.errorOnAutoCreate()) 527 throw new Error("Attempt to auto-create DocumentReferenceRelatesToComponent.target"); 528 else if (Configuration.doAutoCreate()) 529 this.target = new Reference(); // cc 530 return this.target; 531 } 532 533 public boolean hasTarget() { 534 return this.target != null && !this.target.isEmpty(); 535 } 536 537 /** 538 * @param value {@link #target} (The target document of this relationship.) 539 */ 540 public DocumentReferenceRelatesToComponent setTarget(Reference value) { 541 this.target = value; 542 return this; 543 } 544 545 protected void listChildren(List<Property> children) { 546 super.listChildren(children); 547 children.add(new Property("code", "CodeableConcept", "The type of relationship that this document has with anther document.", 0, 1, code)); 548 children.add(new Property("target", "Reference(DocumentReference)", "The target document of this relationship.", 0, 1, target)); 549 } 550 551 @Override 552 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 553 switch (_hash) { 554 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "The type of relationship that this document has with anther document.", 0, 1, code); 555 case -880905839: /*target*/ return new Property("target", "Reference(DocumentReference)", "The target document of this relationship.", 0, 1, target); 556 default: return super.getNamedProperty(_hash, _name, _checkValid); 557 } 558 559 } 560 561 @Override 562 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 563 switch (hash) { 564 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 565 case -880905839: /*target*/ return this.target == null ? new Base[0] : new Base[] {this.target}; // Reference 566 default: return super.getProperty(hash, name, checkValid); 567 } 568 569 } 570 571 @Override 572 public Base setProperty(int hash, String name, Base value) throws FHIRException { 573 switch (hash) { 574 case 3059181: // code 575 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 576 return value; 577 case -880905839: // target 578 this.target = TypeConvertor.castToReference(value); // Reference 579 return value; 580 default: return super.setProperty(hash, name, value); 581 } 582 583 } 584 585 @Override 586 public Base setProperty(String name, Base value) throws FHIRException { 587 if (name.equals("code")) { 588 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 589 } else if (name.equals("target")) { 590 this.target = TypeConvertor.castToReference(value); // Reference 591 } else 592 return super.setProperty(name, value); 593 return value; 594 } 595 596 @Override 597 public void removeChild(String name, Base value) throws FHIRException { 598 if (name.equals("code")) { 599 this.code = null; 600 } else if (name.equals("target")) { 601 this.target = null; 602 } else 603 super.removeChild(name, value); 604 605 } 606 607 @Override 608 public Base makeProperty(int hash, String name) throws FHIRException { 609 switch (hash) { 610 case 3059181: return getCode(); 611 case -880905839: return getTarget(); 612 default: return super.makeProperty(hash, name); 613 } 614 615 } 616 617 @Override 618 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 619 switch (hash) { 620 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 621 case -880905839: /*target*/ return new String[] {"Reference"}; 622 default: return super.getTypesForProperty(hash, name); 623 } 624 625 } 626 627 @Override 628 public Base addChild(String name) throws FHIRException { 629 if (name.equals("code")) { 630 this.code = new CodeableConcept(); 631 return this.code; 632 } 633 else if (name.equals("target")) { 634 this.target = new Reference(); 635 return this.target; 636 } 637 else 638 return super.addChild(name); 639 } 640 641 public DocumentReferenceRelatesToComponent copy() { 642 DocumentReferenceRelatesToComponent dst = new DocumentReferenceRelatesToComponent(); 643 copyValues(dst); 644 return dst; 645 } 646 647 public void copyValues(DocumentReferenceRelatesToComponent dst) { 648 super.copyValues(dst); 649 dst.code = code == null ? null : code.copy(); 650 dst.target = target == null ? null : target.copy(); 651 } 652 653 @Override 654 public boolean equalsDeep(Base other_) { 655 if (!super.equalsDeep(other_)) 656 return false; 657 if (!(other_ instanceof DocumentReferenceRelatesToComponent)) 658 return false; 659 DocumentReferenceRelatesToComponent o = (DocumentReferenceRelatesToComponent) other_; 660 return compareDeep(code, o.code, true) && compareDeep(target, o.target, true); 661 } 662 663 @Override 664 public boolean equalsShallow(Base other_) { 665 if (!super.equalsShallow(other_)) 666 return false; 667 if (!(other_ instanceof DocumentReferenceRelatesToComponent)) 668 return false; 669 DocumentReferenceRelatesToComponent o = (DocumentReferenceRelatesToComponent) other_; 670 return true; 671 } 672 673 public boolean isEmpty() { 674 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, target); 675 } 676 677 public String fhirType() { 678 return "DocumentReference.relatesTo"; 679 680 } 681 682 } 683 684 @Block() 685 public static class DocumentReferenceContentComponent extends BackboneElement implements IBaseBackboneElement { 686 /** 687 * The document or URL of the document along with critical metadata to prove content has integrity. 688 */ 689 @Child(name = "attachment", type = {Attachment.class}, order=1, min=1, max=1, modifier=false, summary=true) 690 @Description(shortDefinition="Where to access the document", formalDefinition="The document or URL of the document along with critical metadata to prove content has integrity." ) 691 protected Attachment attachment; 692 693 /** 694 * An identifier of the document constraints, encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeType. 695 */ 696 @Child(name = "profile", type = {}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 697 @Description(shortDefinition="Content profile rules for the document", formalDefinition="An identifier of the document constraints, encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeType." ) 698 protected List<DocumentReferenceContentProfileComponent> profile; 699 700 private static final long serialVersionUID = 174089424L; 701 702 /** 703 * Constructor 704 */ 705 public DocumentReferenceContentComponent() { 706 super(); 707 } 708 709 /** 710 * Constructor 711 */ 712 public DocumentReferenceContentComponent(Attachment attachment) { 713 super(); 714 this.setAttachment(attachment); 715 } 716 717 /** 718 * @return {@link #attachment} (The document or URL of the document along with critical metadata to prove content has integrity.) 719 */ 720 public Attachment getAttachment() { 721 if (this.attachment == null) 722 if (Configuration.errorOnAutoCreate()) 723 throw new Error("Attempt to auto-create DocumentReferenceContentComponent.attachment"); 724 else if (Configuration.doAutoCreate()) 725 this.attachment = new Attachment(); // cc 726 return this.attachment; 727 } 728 729 public boolean hasAttachment() { 730 return this.attachment != null && !this.attachment.isEmpty(); 731 } 732 733 /** 734 * @param value {@link #attachment} (The document or URL of the document along with critical metadata to prove content has integrity.) 735 */ 736 public DocumentReferenceContentComponent setAttachment(Attachment value) { 737 this.attachment = value; 738 return this; 739 } 740 741 /** 742 * @return {@link #profile} (An identifier of the document constraints, encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeType.) 743 */ 744 public List<DocumentReferenceContentProfileComponent> getProfile() { 745 if (this.profile == null) 746 this.profile = new ArrayList<DocumentReferenceContentProfileComponent>(); 747 return this.profile; 748 } 749 750 /** 751 * @return Returns a reference to <code>this</code> for easy method chaining 752 */ 753 public DocumentReferenceContentComponent setProfile(List<DocumentReferenceContentProfileComponent> theProfile) { 754 this.profile = theProfile; 755 return this; 756 } 757 758 public boolean hasProfile() { 759 if (this.profile == null) 760 return false; 761 for (DocumentReferenceContentProfileComponent item : this.profile) 762 if (!item.isEmpty()) 763 return true; 764 return false; 765 } 766 767 public DocumentReferenceContentProfileComponent addProfile() { //3 768 DocumentReferenceContentProfileComponent t = new DocumentReferenceContentProfileComponent(); 769 if (this.profile == null) 770 this.profile = new ArrayList<DocumentReferenceContentProfileComponent>(); 771 this.profile.add(t); 772 return t; 773 } 774 775 public DocumentReferenceContentComponent addProfile(DocumentReferenceContentProfileComponent t) { //3 776 if (t == null) 777 return this; 778 if (this.profile == null) 779 this.profile = new ArrayList<DocumentReferenceContentProfileComponent>(); 780 this.profile.add(t); 781 return this; 782 } 783 784 /** 785 * @return The first repetition of repeating field {@link #profile}, creating it if it does not already exist {3} 786 */ 787 public DocumentReferenceContentProfileComponent getProfileFirstRep() { 788 if (getProfile().isEmpty()) { 789 addProfile(); 790 } 791 return getProfile().get(0); 792 } 793 794 protected void listChildren(List<Property> children) { 795 super.listChildren(children); 796 children.add(new Property("attachment", "Attachment", "The document or URL of the document along with critical metadata to prove content has integrity.", 0, 1, attachment)); 797 children.add(new Property("profile", "", "An identifier of the document constraints, encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeType.", 0, java.lang.Integer.MAX_VALUE, profile)); 798 } 799 800 @Override 801 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 802 switch (_hash) { 803 case -1963501277: /*attachment*/ return new Property("attachment", "Attachment", "The document or URL of the document along with critical metadata to prove content has integrity.", 0, 1, attachment); 804 case -309425751: /*profile*/ return new Property("profile", "", "An identifier of the document constraints, encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeType.", 0, java.lang.Integer.MAX_VALUE, profile); 805 default: return super.getNamedProperty(_hash, _name, _checkValid); 806 } 807 808 } 809 810 @Override 811 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 812 switch (hash) { 813 case -1963501277: /*attachment*/ return this.attachment == null ? new Base[0] : new Base[] {this.attachment}; // Attachment 814 case -309425751: /*profile*/ return this.profile == null ? new Base[0] : this.profile.toArray(new Base[this.profile.size()]); // DocumentReferenceContentProfileComponent 815 default: return super.getProperty(hash, name, checkValid); 816 } 817 818 } 819 820 @Override 821 public Base setProperty(int hash, String name, Base value) throws FHIRException { 822 switch (hash) { 823 case -1963501277: // attachment 824 this.attachment = TypeConvertor.castToAttachment(value); // Attachment 825 return value; 826 case -309425751: // profile 827 this.getProfile().add((DocumentReferenceContentProfileComponent) value); // DocumentReferenceContentProfileComponent 828 return value; 829 default: return super.setProperty(hash, name, value); 830 } 831 832 } 833 834 @Override 835 public Base setProperty(String name, Base value) throws FHIRException { 836 if (name.equals("attachment")) { 837 this.attachment = TypeConvertor.castToAttachment(value); // Attachment 838 } else if (name.equals("profile")) { 839 this.getProfile().add((DocumentReferenceContentProfileComponent) value); 840 } else 841 return super.setProperty(name, value); 842 return value; 843 } 844 845 @Override 846 public void removeChild(String name, Base value) throws FHIRException { 847 if (name.equals("attachment")) { 848 this.attachment = null; 849 } else if (name.equals("profile")) { 850 this.getProfile().remove((DocumentReferenceContentProfileComponent) value); 851 } else 852 super.removeChild(name, value); 853 854 } 855 856 @Override 857 public Base makeProperty(int hash, String name) throws FHIRException { 858 switch (hash) { 859 case -1963501277: return getAttachment(); 860 case -309425751: return addProfile(); 861 default: return super.makeProperty(hash, name); 862 } 863 864 } 865 866 @Override 867 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 868 switch (hash) { 869 case -1963501277: /*attachment*/ return new String[] {"Attachment"}; 870 case -309425751: /*profile*/ return new String[] {}; 871 default: return super.getTypesForProperty(hash, name); 872 } 873 874 } 875 876 @Override 877 public Base addChild(String name) throws FHIRException { 878 if (name.equals("attachment")) { 879 this.attachment = new Attachment(); 880 return this.attachment; 881 } 882 else if (name.equals("profile")) { 883 return addProfile(); 884 } 885 else 886 return super.addChild(name); 887 } 888 889 public DocumentReferenceContentComponent copy() { 890 DocumentReferenceContentComponent dst = new DocumentReferenceContentComponent(); 891 copyValues(dst); 892 return dst; 893 } 894 895 public void copyValues(DocumentReferenceContentComponent dst) { 896 super.copyValues(dst); 897 dst.attachment = attachment == null ? null : attachment.copy(); 898 if (profile != null) { 899 dst.profile = new ArrayList<DocumentReferenceContentProfileComponent>(); 900 for (DocumentReferenceContentProfileComponent i : profile) 901 dst.profile.add(i.copy()); 902 }; 903 } 904 905 @Override 906 public boolean equalsDeep(Base other_) { 907 if (!super.equalsDeep(other_)) 908 return false; 909 if (!(other_ instanceof DocumentReferenceContentComponent)) 910 return false; 911 DocumentReferenceContentComponent o = (DocumentReferenceContentComponent) other_; 912 return compareDeep(attachment, o.attachment, true) && compareDeep(profile, o.profile, true); 913 } 914 915 @Override 916 public boolean equalsShallow(Base other_) { 917 if (!super.equalsShallow(other_)) 918 return false; 919 if (!(other_ instanceof DocumentReferenceContentComponent)) 920 return false; 921 DocumentReferenceContentComponent o = (DocumentReferenceContentComponent) other_; 922 return true; 923 } 924 925 public boolean isEmpty() { 926 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(attachment, profile); 927 } 928 929 public String fhirType() { 930 return "DocumentReference.content"; 931 932 } 933 934 } 935 936 @Block() 937 public static class DocumentReferenceContentProfileComponent extends BackboneElement implements IBaseBackboneElement { 938 /** 939 * Code|uri|canonical. 940 */ 941 @Child(name = "value", type = {Coding.class, UriType.class, CanonicalType.class}, order=1, min=1, max=1, modifier=false, summary=true) 942 @Description(shortDefinition="Code|uri|canonical", formalDefinition="Code|uri|canonical." ) 943 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://terminology.hl7.org/ValueSet/v3-HL7FormatCodes") 944 protected DataType value; 945 946 private static final long serialVersionUID = -1135414639L; 947 948 /** 949 * Constructor 950 */ 951 public DocumentReferenceContentProfileComponent() { 952 super(); 953 } 954 955 /** 956 * Constructor 957 */ 958 public DocumentReferenceContentProfileComponent(DataType value) { 959 super(); 960 this.setValue(value); 961 } 962 963 /** 964 * @return {@link #value} (Code|uri|canonical.) 965 */ 966 public DataType getValue() { 967 return this.value; 968 } 969 970 /** 971 * @return {@link #value} (Code|uri|canonical.) 972 */ 973 public Coding getValueCoding() throws FHIRException { 974 if (this.value == null) 975 this.value = new Coding(); 976 if (!(this.value instanceof Coding)) 977 throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.value.getClass().getName()+" was encountered"); 978 return (Coding) this.value; 979 } 980 981 public boolean hasValueCoding() { 982 return this != null && this.value instanceof Coding; 983 } 984 985 /** 986 * @return {@link #value} (Code|uri|canonical.) 987 */ 988 public UriType getValueUriType() throws FHIRException { 989 if (this.value == null) 990 this.value = new UriType(); 991 if (!(this.value instanceof UriType)) 992 throw new FHIRException("Type mismatch: the type UriType was expected, but "+this.value.getClass().getName()+" was encountered"); 993 return (UriType) this.value; 994 } 995 996 public boolean hasValueUriType() { 997 return this != null && this.value instanceof UriType; 998 } 999 1000 /** 1001 * @return {@link #value} (Code|uri|canonical.) 1002 */ 1003 public CanonicalType getValueCanonicalType() throws FHIRException { 1004 if (this.value == null) 1005 this.value = new CanonicalType(); 1006 if (!(this.value instanceof CanonicalType)) 1007 throw new FHIRException("Type mismatch: the type CanonicalType was expected, but "+this.value.getClass().getName()+" was encountered"); 1008 return (CanonicalType) this.value; 1009 } 1010 1011 public boolean hasValueCanonicalType() { 1012 return this != null && this.value instanceof CanonicalType; 1013 } 1014 1015 public boolean hasValue() { 1016 return this.value != null && !this.value.isEmpty(); 1017 } 1018 1019 /** 1020 * @param value {@link #value} (Code|uri|canonical.) 1021 */ 1022 public DocumentReferenceContentProfileComponent setValue(DataType value) { 1023 if (value != null && !(value instanceof Coding || value instanceof UriType || value instanceof CanonicalType)) 1024 throw new FHIRException("Not the right type for DocumentReference.content.profile.value[x]: "+value.fhirType()); 1025 this.value = value; 1026 return this; 1027 } 1028 1029 protected void listChildren(List<Property> children) { 1030 super.listChildren(children); 1031 children.add(new Property("value[x]", "Coding|uri|canonical", "Code|uri|canonical.", 0, 1, value)); 1032 } 1033 1034 @Override 1035 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1036 switch (_hash) { 1037 case -1410166417: /*value[x]*/ return new Property("value[x]", "Coding|uri|canonical", "Code|uri|canonical.", 0, 1, value); 1038 case 111972721: /*value*/ return new Property("value[x]", "Coding|uri|canonical", "Code|uri|canonical.", 0, 1, value); 1039 case -1887705029: /*valueCoding*/ return new Property("value[x]", "Coding", "Code|uri|canonical.", 0, 1, value); 1040 case -1410172357: /*valueUri*/ return new Property("value[x]", "uri", "Code|uri|canonical.", 0, 1, value); 1041 case -786218365: /*valueCanonical*/ return new Property("value[x]", "canonical", "Code|uri|canonical.", 0, 1, value); 1042 default: return super.getNamedProperty(_hash, _name, _checkValid); 1043 } 1044 1045 } 1046 1047 @Override 1048 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1049 switch (hash) { 1050 case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType 1051 default: return super.getProperty(hash, name, checkValid); 1052 } 1053 1054 } 1055 1056 @Override 1057 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1058 switch (hash) { 1059 case 111972721: // value 1060 this.value = TypeConvertor.castToType(value); // DataType 1061 return value; 1062 default: return super.setProperty(hash, name, value); 1063 } 1064 1065 } 1066 1067 @Override 1068 public Base setProperty(String name, Base value) throws FHIRException { 1069 if (name.equals("value[x]")) { 1070 this.value = TypeConvertor.castToType(value); // DataType 1071 } else 1072 return super.setProperty(name, value); 1073 return value; 1074 } 1075 1076 @Override 1077 public void removeChild(String name, Base value) throws FHIRException { 1078 if (name.equals("value[x]")) { 1079 this.value = null; 1080 } else 1081 super.removeChild(name, value); 1082 1083 } 1084 1085 @Override 1086 public Base makeProperty(int hash, String name) throws FHIRException { 1087 switch (hash) { 1088 case -1410166417: return getValue(); 1089 case 111972721: return getValue(); 1090 default: return super.makeProperty(hash, name); 1091 } 1092 1093 } 1094 1095 @Override 1096 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1097 switch (hash) { 1098 case 111972721: /*value*/ return new String[] {"Coding", "uri", "canonical"}; 1099 default: return super.getTypesForProperty(hash, name); 1100 } 1101 1102 } 1103 1104 @Override 1105 public Base addChild(String name) throws FHIRException { 1106 if (name.equals("valueCoding")) { 1107 this.value = new Coding(); 1108 return this.value; 1109 } 1110 else if (name.equals("valueUri")) { 1111 this.value = new UriType(); 1112 return this.value; 1113 } 1114 else if (name.equals("valueCanonical")) { 1115 this.value = new CanonicalType(); 1116 return this.value; 1117 } 1118 else 1119 return super.addChild(name); 1120 } 1121 1122 public DocumentReferenceContentProfileComponent copy() { 1123 DocumentReferenceContentProfileComponent dst = new DocumentReferenceContentProfileComponent(); 1124 copyValues(dst); 1125 return dst; 1126 } 1127 1128 public void copyValues(DocumentReferenceContentProfileComponent dst) { 1129 super.copyValues(dst); 1130 dst.value = value == null ? null : value.copy(); 1131 } 1132 1133 @Override 1134 public boolean equalsDeep(Base other_) { 1135 if (!super.equalsDeep(other_)) 1136 return false; 1137 if (!(other_ instanceof DocumentReferenceContentProfileComponent)) 1138 return false; 1139 DocumentReferenceContentProfileComponent o = (DocumentReferenceContentProfileComponent) other_; 1140 return compareDeep(value, o.value, true); 1141 } 1142 1143 @Override 1144 public boolean equalsShallow(Base other_) { 1145 if (!super.equalsShallow(other_)) 1146 return false; 1147 if (!(other_ instanceof DocumentReferenceContentProfileComponent)) 1148 return false; 1149 DocumentReferenceContentProfileComponent o = (DocumentReferenceContentProfileComponent) other_; 1150 return true; 1151 } 1152 1153 public boolean isEmpty() { 1154 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(value); 1155 } 1156 1157 public String fhirType() { 1158 return "DocumentReference.content.profile"; 1159 1160 } 1161 1162 } 1163 1164 /** 1165 * Other business identifiers associated with the document, including version independent identifiers. 1166 */ 1167 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1168 @Description(shortDefinition="Business identifiers for the document", formalDefinition="Other business identifiers associated with the document, including version independent identifiers." ) 1169 protected List<Identifier> identifier; 1170 1171 /** 1172 * An explicitly assigned identifer of a variation of the content in the DocumentReference. 1173 */ 1174 @Child(name = "version", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=true) 1175 @Description(shortDefinition="An explicitly assigned identifer of a variation of the content in the DocumentReference", formalDefinition="An explicitly assigned identifer of a variation of the content in the DocumentReference." ) 1176 protected StringType version; 1177 1178 /** 1179 * A procedure that is fulfilled in whole or in part by the creation of this media. 1180 */ 1181 @Child(name = "basedOn", type = {Appointment.class, AppointmentResponse.class, CarePlan.class, Claim.class, CommunicationRequest.class, Contract.class, CoverageEligibilityRequest.class, DeviceRequest.class, EnrollmentRequest.class, ImmunizationRecommendation.class, MedicationRequest.class, NutritionOrder.class, RequestOrchestration.class, ServiceRequest.class, SupplyRequest.class, VisionPrescription.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1182 @Description(shortDefinition="Procedure that caused this media to be created", formalDefinition="A procedure that is fulfilled in whole or in part by the creation of this media." ) 1183 protected List<Reference> basedOn; 1184 1185 /** 1186 * The status of this document reference. 1187 */ 1188 @Child(name = "status", type = {CodeType.class}, order=3, min=1, max=1, modifier=true, summary=true) 1189 @Description(shortDefinition="current | superseded | entered-in-error", formalDefinition="The status of this document reference." ) 1190 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/document-reference-status") 1191 protected Enumeration<DocumentReferenceStatus> status; 1192 1193 /** 1194 * The status of the underlying document. 1195 */ 1196 @Child(name = "docStatus", type = {CodeType.class}, order=4, min=0, max=1, modifier=false, summary=true) 1197 @Description(shortDefinition="registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown", formalDefinition="The status of the underlying document." ) 1198 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/composition-status") 1199 protected Enumeration<CompositionStatus> docStatus; 1200 1201 /** 1202 * Imaging modality used. This may include both acquisition and non-acquisition modalities. 1203 */ 1204 @Child(name = "modality", type = {CodeableConcept.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1205 @Description(shortDefinition="Imaging modality used", formalDefinition="Imaging modality used. This may include both acquisition and non-acquisition modalities." ) 1206 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://dicom.nema.org/medical/dicom/current/output/chtml/part16/sect_CID_33.html") 1207 protected List<CodeableConcept> modality; 1208 1209 /** 1210 * Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referenced. 1211 */ 1212 @Child(name = "type", type = {CodeableConcept.class}, order=6, min=0, max=1, modifier=false, summary=true) 1213 @Description(shortDefinition="Kind of document (LOINC if possible)", formalDefinition="Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referenced." ) 1214 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/doc-typecodes") 1215 protected CodeableConcept type; 1216 1217 /** 1218 * A categorization for the type of document referenced - helps for indexing and searching. This may be implied by or derived from the code specified in the DocumentReference.type. 1219 */ 1220 @Child(name = "category", type = {CodeableConcept.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1221 @Description(shortDefinition="Categorization of document", formalDefinition="A categorization for the type of document referenced - helps for indexing and searching. This may be implied by or derived from the code specified in the DocumentReference.type." ) 1222 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/referenced-item-category") 1223 protected List<CodeableConcept> category; 1224 1225 /** 1226 * Who or what the document is about. The document 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 farm animals, or a set of patients that share a common exposure). 1227 */ 1228 @Child(name = "subject", type = {Reference.class}, order=8, min=0, max=1, modifier=false, summary=true) 1229 @Description(shortDefinition="Who/what is the subject of the document", formalDefinition="Who or what the document is about. The document 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 farm animals, or a set of patients that share a common exposure)." ) 1230 protected Reference subject; 1231 1232 /** 1233 * Describes the clinical encounter or type of care that the document content is associated with. 1234 */ 1235 @Child(name = "context", type = {Appointment.class, Encounter.class, EpisodeOfCare.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1236 @Description(shortDefinition="Context of the document content", formalDefinition="Describes the clinical encounter or type of care that the document content is associated with." ) 1237 protected List<Reference> context; 1238 1239 /** 1240 * This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the type Code, such as a "History and Physical Report" in which the procedure being documented is necessarily a "History and Physical" act. 1241 */ 1242 @Child(name = "event", type = {CodeableReference.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1243 @Description(shortDefinition="Main clinical acts documented", formalDefinition="This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the type Code, such as a \"History and Physical Report\" in which the procedure being documented is necessarily a \"History and Physical\" act." ) 1244 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://terminology.hl7.org/ValueSet/v3-ActCode") 1245 protected List<CodeableReference> event; 1246 1247 /** 1248 * The anatomic structures included in the document. 1249 */ 1250 @Child(name = "bodySite", type = {CodeableReference.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1251 @Description(shortDefinition="Body part included", formalDefinition="The anatomic structures included in the document." ) 1252 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/body-site") 1253 protected List<CodeableReference> bodySite; 1254 1255 /** 1256 * The kind of facility where the patient was seen. 1257 */ 1258 @Child(name = "facilityType", type = {CodeableConcept.class}, order=12, min=0, max=1, modifier=false, summary=false) 1259 @Description(shortDefinition="Kind of facility where patient was seen", formalDefinition="The kind of facility where the patient was seen." ) 1260 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/c80-facilitycodes") 1261 protected CodeableConcept facilityType; 1262 1263 /** 1264 * This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty. 1265 */ 1266 @Child(name = "practiceSetting", type = {CodeableConcept.class}, order=13, min=0, max=1, modifier=false, summary=false) 1267 @Description(shortDefinition="Additional details about where the content was created (e.g. clinical specialty)", formalDefinition="This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty." ) 1268 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/c80-practice-codes") 1269 protected CodeableConcept practiceSetting; 1270 1271 /** 1272 * The time period over which the service that is described by the document was provided. 1273 */ 1274 @Child(name = "period", type = {Period.class}, order=14, min=0, max=1, modifier=false, summary=true) 1275 @Description(shortDefinition="Time of service that is being documented", formalDefinition="The time period over which the service that is described by the document was provided." ) 1276 protected Period period; 1277 1278 /** 1279 * When the document reference was created. 1280 */ 1281 @Child(name = "date", type = {InstantType.class}, order=15, min=0, max=1, modifier=false, summary=true) 1282 @Description(shortDefinition="When this document reference was created", formalDefinition="When the document reference was created." ) 1283 protected InstantType date; 1284 1285 /** 1286 * Identifies who is responsible for adding the information to the document. 1287 */ 1288 @Child(name = "author", type = {Practitioner.class, PractitionerRole.class, Organization.class, Device.class, Patient.class, RelatedPerson.class, CareTeam.class}, order=16, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1289 @Description(shortDefinition="Who and/or what authored the document", formalDefinition="Identifies who is responsible for adding the information to the document." ) 1290 protected List<Reference> author; 1291 1292 /** 1293 * A participant who has authenticated the accuracy of the document. 1294 */ 1295 @Child(name = "attester", type = {}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1296 @Description(shortDefinition="Attests to accuracy of the document", formalDefinition="A participant who has authenticated the accuracy of the document." ) 1297 protected List<DocumentReferenceAttesterComponent> attester; 1298 1299 /** 1300 * Identifies the organization or group who is responsible for ongoing maintenance of and access to the document. 1301 */ 1302 @Child(name = "custodian", type = {Organization.class}, order=18, min=0, max=1, modifier=false, summary=false) 1303 @Description(shortDefinition="Organization which maintains the document", formalDefinition="Identifies the organization or group who is responsible for ongoing maintenance of and access to the document." ) 1304 protected Reference custodian; 1305 1306 /** 1307 * Relationships that this document has with other document references that already exist. 1308 */ 1309 @Child(name = "relatesTo", type = {}, order=19, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1310 @Description(shortDefinition="Relationships to other documents", formalDefinition="Relationships that this document has with other document references that already exist." ) 1311 protected List<DocumentReferenceRelatesToComponent> relatesTo; 1312 1313 /** 1314 * Human-readable description of the source document. 1315 */ 1316 @Child(name = "description", type = {MarkdownType.class}, order=20, min=0, max=1, modifier=false, summary=true) 1317 @Description(shortDefinition="Human-readable description", formalDefinition="Human-readable description of the source document." ) 1318 protected MarkdownType description; 1319 1320 /** 1321 * A set of Security-Tag codes specifying the level of privacy/security of the Document found at DocumentReference.content.attachment.url. Note that DocumentReference.meta.security contains the security labels of the data elements in DocumentReference, while DocumentReference.securityLabel contains the security labels for the document the reference refers to. The distinction recognizes that the document may contain sensitive information, while the DocumentReference is metadata about the document and thus might not be as sensitive as the document. For example: a psychotherapy episode may contain highly sensitive information, while the metadata may simply indicate that some episode happened. 1322 */ 1323 @Child(name = "securityLabel", type = {CodeableConcept.class}, order=21, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1324 @Description(shortDefinition="Document security-tags", formalDefinition="A set of Security-Tag codes specifying the level of privacy/security of the Document found at DocumentReference.content.attachment.url. Note that DocumentReference.meta.security contains the security labels of the data elements in DocumentReference, while DocumentReference.securityLabel contains the security labels for the document the reference refers to. The distinction recognizes that the document may contain sensitive information, while the DocumentReference is metadata about the document and thus might not be as sensitive as the document. For example: a psychotherapy episode may contain highly sensitive information, while the metadata may simply indicate that some episode happened." ) 1325 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/security-label-examples") 1326 protected List<CodeableConcept> securityLabel; 1327 1328 /** 1329 * The document and format referenced. If there are multiple content element repetitions, these must all represent the same document in different format, or attachment metadata. 1330 */ 1331 @Child(name = "content", type = {}, order=22, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1332 @Description(shortDefinition="Document referenced", formalDefinition="The document and format referenced. If there are multiple content element repetitions, these must all represent the same document in different format, or attachment metadata." ) 1333 protected List<DocumentReferenceContentComponent> content; 1334 1335 private static final long serialVersionUID = -981268007L; 1336 1337 /** 1338 * Constructor 1339 */ 1340 public DocumentReference() { 1341 super(); 1342 } 1343 1344 /** 1345 * Constructor 1346 */ 1347 public DocumentReference(DocumentReferenceStatus status, DocumentReferenceContentComponent content) { 1348 super(); 1349 this.setStatus(status); 1350 this.addContent(content); 1351 } 1352 1353 /** 1354 * @return {@link #identifier} (Other business identifiers associated with the document, including version independent identifiers.) 1355 */ 1356 public List<Identifier> getIdentifier() { 1357 if (this.identifier == null) 1358 this.identifier = new ArrayList<Identifier>(); 1359 return this.identifier; 1360 } 1361 1362 /** 1363 * @return Returns a reference to <code>this</code> for easy method chaining 1364 */ 1365 public DocumentReference setIdentifier(List<Identifier> theIdentifier) { 1366 this.identifier = theIdentifier; 1367 return this; 1368 } 1369 1370 public boolean hasIdentifier() { 1371 if (this.identifier == null) 1372 return false; 1373 for (Identifier item : this.identifier) 1374 if (!item.isEmpty()) 1375 return true; 1376 return false; 1377 } 1378 1379 public Identifier addIdentifier() { //3 1380 Identifier t = new Identifier(); 1381 if (this.identifier == null) 1382 this.identifier = new ArrayList<Identifier>(); 1383 this.identifier.add(t); 1384 return t; 1385 } 1386 1387 public DocumentReference addIdentifier(Identifier t) { //3 1388 if (t == null) 1389 return this; 1390 if (this.identifier == null) 1391 this.identifier = new ArrayList<Identifier>(); 1392 this.identifier.add(t); 1393 return this; 1394 } 1395 1396 /** 1397 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 1398 */ 1399 public Identifier getIdentifierFirstRep() { 1400 if (getIdentifier().isEmpty()) { 1401 addIdentifier(); 1402 } 1403 return getIdentifier().get(0); 1404 } 1405 1406 /** 1407 * @return {@link #version} (An explicitly assigned identifer of a variation of the content in the DocumentReference.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 1408 */ 1409 public StringType getVersionElement() { 1410 if (this.version == null) 1411 if (Configuration.errorOnAutoCreate()) 1412 throw new Error("Attempt to auto-create DocumentReference.version"); 1413 else if (Configuration.doAutoCreate()) 1414 this.version = new StringType(); // bb 1415 return this.version; 1416 } 1417 1418 public boolean hasVersionElement() { 1419 return this.version != null && !this.version.isEmpty(); 1420 } 1421 1422 public boolean hasVersion() { 1423 return this.version != null && !this.version.isEmpty(); 1424 } 1425 1426 /** 1427 * @param value {@link #version} (An explicitly assigned identifer of a variation of the content in the DocumentReference.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 1428 */ 1429 public DocumentReference setVersionElement(StringType value) { 1430 this.version = value; 1431 return this; 1432 } 1433 1434 /** 1435 * @return An explicitly assigned identifer of a variation of the content in the DocumentReference. 1436 */ 1437 public String getVersion() { 1438 return this.version == null ? null : this.version.getValue(); 1439 } 1440 1441 /** 1442 * @param value An explicitly assigned identifer of a variation of the content in the DocumentReference. 1443 */ 1444 public DocumentReference setVersion(String value) { 1445 if (Utilities.noString(value)) 1446 this.version = null; 1447 else { 1448 if (this.version == null) 1449 this.version = new StringType(); 1450 this.version.setValue(value); 1451 } 1452 return this; 1453 } 1454 1455 /** 1456 * @return {@link #basedOn} (A procedure that is fulfilled in whole or in part by the creation of this media.) 1457 */ 1458 public List<Reference> getBasedOn() { 1459 if (this.basedOn == null) 1460 this.basedOn = new ArrayList<Reference>(); 1461 return this.basedOn; 1462 } 1463 1464 /** 1465 * @return Returns a reference to <code>this</code> for easy method chaining 1466 */ 1467 public DocumentReference setBasedOn(List<Reference> theBasedOn) { 1468 this.basedOn = theBasedOn; 1469 return this; 1470 } 1471 1472 public boolean hasBasedOn() { 1473 if (this.basedOn == null) 1474 return false; 1475 for (Reference item : this.basedOn) 1476 if (!item.isEmpty()) 1477 return true; 1478 return false; 1479 } 1480 1481 public Reference addBasedOn() { //3 1482 Reference t = new Reference(); 1483 if (this.basedOn == null) 1484 this.basedOn = new ArrayList<Reference>(); 1485 this.basedOn.add(t); 1486 return t; 1487 } 1488 1489 public DocumentReference addBasedOn(Reference t) { //3 1490 if (t == null) 1491 return this; 1492 if (this.basedOn == null) 1493 this.basedOn = new ArrayList<Reference>(); 1494 this.basedOn.add(t); 1495 return this; 1496 } 1497 1498 /** 1499 * @return The first repetition of repeating field {@link #basedOn}, creating it if it does not already exist {3} 1500 */ 1501 public Reference getBasedOnFirstRep() { 1502 if (getBasedOn().isEmpty()) { 1503 addBasedOn(); 1504 } 1505 return getBasedOn().get(0); 1506 } 1507 1508 /** 1509 * @return {@link #status} (The status of this document reference.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1510 */ 1511 public Enumeration<DocumentReferenceStatus> getStatusElement() { 1512 if (this.status == null) 1513 if (Configuration.errorOnAutoCreate()) 1514 throw new Error("Attempt to auto-create DocumentReference.status"); 1515 else if (Configuration.doAutoCreate()) 1516 this.status = new Enumeration<DocumentReferenceStatus>(new DocumentReferenceStatusEnumFactory()); // bb 1517 return this.status; 1518 } 1519 1520 public boolean hasStatusElement() { 1521 return this.status != null && !this.status.isEmpty(); 1522 } 1523 1524 public boolean hasStatus() { 1525 return this.status != null && !this.status.isEmpty(); 1526 } 1527 1528 /** 1529 * @param value {@link #status} (The status of this document reference.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1530 */ 1531 public DocumentReference setStatusElement(Enumeration<DocumentReferenceStatus> value) { 1532 this.status = value; 1533 return this; 1534 } 1535 1536 /** 1537 * @return The status of this document reference. 1538 */ 1539 public DocumentReferenceStatus getStatus() { 1540 return this.status == null ? null : this.status.getValue(); 1541 } 1542 1543 /** 1544 * @param value The status of this document reference. 1545 */ 1546 public DocumentReference setStatus(DocumentReferenceStatus value) { 1547 if (this.status == null) 1548 this.status = new Enumeration<DocumentReferenceStatus>(new DocumentReferenceStatusEnumFactory()); 1549 this.status.setValue(value); 1550 return this; 1551 } 1552 1553 /** 1554 * @return {@link #docStatus} (The status of the underlying document.). This is the underlying object with id, value and extensions. The accessor "getDocStatus" gives direct access to the value 1555 */ 1556 public Enumeration<CompositionStatus> getDocStatusElement() { 1557 if (this.docStatus == null) 1558 if (Configuration.errorOnAutoCreate()) 1559 throw new Error("Attempt to auto-create DocumentReference.docStatus"); 1560 else if (Configuration.doAutoCreate()) 1561 this.docStatus = new Enumeration<CompositionStatus>(new CompositionStatusEnumFactory()); // bb 1562 return this.docStatus; 1563 } 1564 1565 public boolean hasDocStatusElement() { 1566 return this.docStatus != null && !this.docStatus.isEmpty(); 1567 } 1568 1569 public boolean hasDocStatus() { 1570 return this.docStatus != null && !this.docStatus.isEmpty(); 1571 } 1572 1573 /** 1574 * @param value {@link #docStatus} (The status of the underlying document.). This is the underlying object with id, value and extensions. The accessor "getDocStatus" gives direct access to the value 1575 */ 1576 public DocumentReference setDocStatusElement(Enumeration<CompositionStatus> value) { 1577 this.docStatus = value; 1578 return this; 1579 } 1580 1581 /** 1582 * @return The status of the underlying document. 1583 */ 1584 public CompositionStatus getDocStatus() { 1585 return this.docStatus == null ? null : this.docStatus.getValue(); 1586 } 1587 1588 /** 1589 * @param value The status of the underlying document. 1590 */ 1591 public DocumentReference setDocStatus(CompositionStatus value) { 1592 if (value == null) 1593 this.docStatus = null; 1594 else { 1595 if (this.docStatus == null) 1596 this.docStatus = new Enumeration<CompositionStatus>(new CompositionStatusEnumFactory()); 1597 this.docStatus.setValue(value); 1598 } 1599 return this; 1600 } 1601 1602 /** 1603 * @return {@link #modality} (Imaging modality used. This may include both acquisition and non-acquisition modalities.) 1604 */ 1605 public List<CodeableConcept> getModality() { 1606 if (this.modality == null) 1607 this.modality = new ArrayList<CodeableConcept>(); 1608 return this.modality; 1609 } 1610 1611 /** 1612 * @return Returns a reference to <code>this</code> for easy method chaining 1613 */ 1614 public DocumentReference setModality(List<CodeableConcept> theModality) { 1615 this.modality = theModality; 1616 return this; 1617 } 1618 1619 public boolean hasModality() { 1620 if (this.modality == null) 1621 return false; 1622 for (CodeableConcept item : this.modality) 1623 if (!item.isEmpty()) 1624 return true; 1625 return false; 1626 } 1627 1628 public CodeableConcept addModality() { //3 1629 CodeableConcept t = new CodeableConcept(); 1630 if (this.modality == null) 1631 this.modality = new ArrayList<CodeableConcept>(); 1632 this.modality.add(t); 1633 return t; 1634 } 1635 1636 public DocumentReference addModality(CodeableConcept t) { //3 1637 if (t == null) 1638 return this; 1639 if (this.modality == null) 1640 this.modality = new ArrayList<CodeableConcept>(); 1641 this.modality.add(t); 1642 return this; 1643 } 1644 1645 /** 1646 * @return The first repetition of repeating field {@link #modality}, creating it if it does not already exist {3} 1647 */ 1648 public CodeableConcept getModalityFirstRep() { 1649 if (getModality().isEmpty()) { 1650 addModality(); 1651 } 1652 return getModality().get(0); 1653 } 1654 1655 /** 1656 * @return {@link #type} (Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referenced.) 1657 */ 1658 public CodeableConcept getType() { 1659 if (this.type == null) 1660 if (Configuration.errorOnAutoCreate()) 1661 throw new Error("Attempt to auto-create DocumentReference.type"); 1662 else if (Configuration.doAutoCreate()) 1663 this.type = new CodeableConcept(); // cc 1664 return this.type; 1665 } 1666 1667 public boolean hasType() { 1668 return this.type != null && !this.type.isEmpty(); 1669 } 1670 1671 /** 1672 * @param value {@link #type} (Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referenced.) 1673 */ 1674 public DocumentReference setType(CodeableConcept value) { 1675 this.type = value; 1676 return this; 1677 } 1678 1679 /** 1680 * @return {@link #category} (A categorization for the type of document referenced - helps for indexing and searching. This may be implied by or derived from the code specified in the DocumentReference.type.) 1681 */ 1682 public List<CodeableConcept> getCategory() { 1683 if (this.category == null) 1684 this.category = new ArrayList<CodeableConcept>(); 1685 return this.category; 1686 } 1687 1688 /** 1689 * @return Returns a reference to <code>this</code> for easy method chaining 1690 */ 1691 public DocumentReference setCategory(List<CodeableConcept> theCategory) { 1692 this.category = theCategory; 1693 return this; 1694 } 1695 1696 public boolean hasCategory() { 1697 if (this.category == null) 1698 return false; 1699 for (CodeableConcept item : this.category) 1700 if (!item.isEmpty()) 1701 return true; 1702 return false; 1703 } 1704 1705 public CodeableConcept addCategory() { //3 1706 CodeableConcept t = new CodeableConcept(); 1707 if (this.category == null) 1708 this.category = new ArrayList<CodeableConcept>(); 1709 this.category.add(t); 1710 return t; 1711 } 1712 1713 public DocumentReference addCategory(CodeableConcept t) { //3 1714 if (t == null) 1715 return this; 1716 if (this.category == null) 1717 this.category = new ArrayList<CodeableConcept>(); 1718 this.category.add(t); 1719 return this; 1720 } 1721 1722 /** 1723 * @return The first repetition of repeating field {@link #category}, creating it if it does not already exist {3} 1724 */ 1725 public CodeableConcept getCategoryFirstRep() { 1726 if (getCategory().isEmpty()) { 1727 addCategory(); 1728 } 1729 return getCategory().get(0); 1730 } 1731 1732 /** 1733 * @return {@link #subject} (Who or what the document is about. The document 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 farm animals, or a set of patients that share a common exposure).) 1734 */ 1735 public Reference getSubject() { 1736 if (this.subject == null) 1737 if (Configuration.errorOnAutoCreate()) 1738 throw new Error("Attempt to auto-create DocumentReference.subject"); 1739 else if (Configuration.doAutoCreate()) 1740 this.subject = new Reference(); // cc 1741 return this.subject; 1742 } 1743 1744 public boolean hasSubject() { 1745 return this.subject != null && !this.subject.isEmpty(); 1746 } 1747 1748 /** 1749 * @param value {@link #subject} (Who or what the document is about. The document 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 farm animals, or a set of patients that share a common exposure).) 1750 */ 1751 public DocumentReference setSubject(Reference value) { 1752 this.subject = value; 1753 return this; 1754 } 1755 1756 /** 1757 * @return {@link #context} (Describes the clinical encounter or type of care that the document content is associated with.) 1758 */ 1759 public List<Reference> getContext() { 1760 if (this.context == null) 1761 this.context = new ArrayList<Reference>(); 1762 return this.context; 1763 } 1764 1765 /** 1766 * @return Returns a reference to <code>this</code> for easy method chaining 1767 */ 1768 public DocumentReference setContext(List<Reference> theContext) { 1769 this.context = theContext; 1770 return this; 1771 } 1772 1773 public boolean hasContext() { 1774 if (this.context == null) 1775 return false; 1776 for (Reference item : this.context) 1777 if (!item.isEmpty()) 1778 return true; 1779 return false; 1780 } 1781 1782 public Reference addContext() { //3 1783 Reference t = new Reference(); 1784 if (this.context == null) 1785 this.context = new ArrayList<Reference>(); 1786 this.context.add(t); 1787 return t; 1788 } 1789 1790 public DocumentReference addContext(Reference t) { //3 1791 if (t == null) 1792 return this; 1793 if (this.context == null) 1794 this.context = new ArrayList<Reference>(); 1795 this.context.add(t); 1796 return this; 1797 } 1798 1799 /** 1800 * @return The first repetition of repeating field {@link #context}, creating it if it does not already exist {3} 1801 */ 1802 public Reference getContextFirstRep() { 1803 if (getContext().isEmpty()) { 1804 addContext(); 1805 } 1806 return getContext().get(0); 1807 } 1808 1809 /** 1810 * @return {@link #event} (This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the type Code, such as a "History and Physical Report" in which the procedure being documented is necessarily a "History and Physical" act.) 1811 */ 1812 public List<CodeableReference> getEvent() { 1813 if (this.event == null) 1814 this.event = new ArrayList<CodeableReference>(); 1815 return this.event; 1816 } 1817 1818 /** 1819 * @return Returns a reference to <code>this</code> for easy method chaining 1820 */ 1821 public DocumentReference setEvent(List<CodeableReference> theEvent) { 1822 this.event = theEvent; 1823 return this; 1824 } 1825 1826 public boolean hasEvent() { 1827 if (this.event == null) 1828 return false; 1829 for (CodeableReference item : this.event) 1830 if (!item.isEmpty()) 1831 return true; 1832 return false; 1833 } 1834 1835 public CodeableReference addEvent() { //3 1836 CodeableReference t = new CodeableReference(); 1837 if (this.event == null) 1838 this.event = new ArrayList<CodeableReference>(); 1839 this.event.add(t); 1840 return t; 1841 } 1842 1843 public DocumentReference addEvent(CodeableReference t) { //3 1844 if (t == null) 1845 return this; 1846 if (this.event == null) 1847 this.event = new ArrayList<CodeableReference>(); 1848 this.event.add(t); 1849 return this; 1850 } 1851 1852 /** 1853 * @return The first repetition of repeating field {@link #event}, creating it if it does not already exist {3} 1854 */ 1855 public CodeableReference getEventFirstRep() { 1856 if (getEvent().isEmpty()) { 1857 addEvent(); 1858 } 1859 return getEvent().get(0); 1860 } 1861 1862 /** 1863 * @return {@link #bodySite} (The anatomic structures included in the document.) 1864 */ 1865 public List<CodeableReference> getBodySite() { 1866 if (this.bodySite == null) 1867 this.bodySite = new ArrayList<CodeableReference>(); 1868 return this.bodySite; 1869 } 1870 1871 /** 1872 * @return Returns a reference to <code>this</code> for easy method chaining 1873 */ 1874 public DocumentReference setBodySite(List<CodeableReference> theBodySite) { 1875 this.bodySite = theBodySite; 1876 return this; 1877 } 1878 1879 public boolean hasBodySite() { 1880 if (this.bodySite == null) 1881 return false; 1882 for (CodeableReference item : this.bodySite) 1883 if (!item.isEmpty()) 1884 return true; 1885 return false; 1886 } 1887 1888 public CodeableReference addBodySite() { //3 1889 CodeableReference t = new CodeableReference(); 1890 if (this.bodySite == null) 1891 this.bodySite = new ArrayList<CodeableReference>(); 1892 this.bodySite.add(t); 1893 return t; 1894 } 1895 1896 public DocumentReference addBodySite(CodeableReference t) { //3 1897 if (t == null) 1898 return this; 1899 if (this.bodySite == null) 1900 this.bodySite = new ArrayList<CodeableReference>(); 1901 this.bodySite.add(t); 1902 return this; 1903 } 1904 1905 /** 1906 * @return The first repetition of repeating field {@link #bodySite}, creating it if it does not already exist {3} 1907 */ 1908 public CodeableReference getBodySiteFirstRep() { 1909 if (getBodySite().isEmpty()) { 1910 addBodySite(); 1911 } 1912 return getBodySite().get(0); 1913 } 1914 1915 /** 1916 * @return {@link #facilityType} (The kind of facility where the patient was seen.) 1917 */ 1918 public CodeableConcept getFacilityType() { 1919 if (this.facilityType == null) 1920 if (Configuration.errorOnAutoCreate()) 1921 throw new Error("Attempt to auto-create DocumentReference.facilityType"); 1922 else if (Configuration.doAutoCreate()) 1923 this.facilityType = new CodeableConcept(); // cc 1924 return this.facilityType; 1925 } 1926 1927 public boolean hasFacilityType() { 1928 return this.facilityType != null && !this.facilityType.isEmpty(); 1929 } 1930 1931 /** 1932 * @param value {@link #facilityType} (The kind of facility where the patient was seen.) 1933 */ 1934 public DocumentReference setFacilityType(CodeableConcept value) { 1935 this.facilityType = value; 1936 return this; 1937 } 1938 1939 /** 1940 * @return {@link #practiceSetting} (This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty.) 1941 */ 1942 public CodeableConcept getPracticeSetting() { 1943 if (this.practiceSetting == null) 1944 if (Configuration.errorOnAutoCreate()) 1945 throw new Error("Attempt to auto-create DocumentReference.practiceSetting"); 1946 else if (Configuration.doAutoCreate()) 1947 this.practiceSetting = new CodeableConcept(); // cc 1948 return this.practiceSetting; 1949 } 1950 1951 public boolean hasPracticeSetting() { 1952 return this.practiceSetting != null && !this.practiceSetting.isEmpty(); 1953 } 1954 1955 /** 1956 * @param value {@link #practiceSetting} (This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty.) 1957 */ 1958 public DocumentReference setPracticeSetting(CodeableConcept value) { 1959 this.practiceSetting = value; 1960 return this; 1961 } 1962 1963 /** 1964 * @return {@link #period} (The time period over which the service that is described by the document was provided.) 1965 */ 1966 public Period getPeriod() { 1967 if (this.period == null) 1968 if (Configuration.errorOnAutoCreate()) 1969 throw new Error("Attempt to auto-create DocumentReference.period"); 1970 else if (Configuration.doAutoCreate()) 1971 this.period = new Period(); // cc 1972 return this.period; 1973 } 1974 1975 public boolean hasPeriod() { 1976 return this.period != null && !this.period.isEmpty(); 1977 } 1978 1979 /** 1980 * @param value {@link #period} (The time period over which the service that is described by the document was provided.) 1981 */ 1982 public DocumentReference setPeriod(Period value) { 1983 this.period = value; 1984 return this; 1985 } 1986 1987 /** 1988 * @return {@link #date} (When the document reference was created.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 1989 */ 1990 public InstantType getDateElement() { 1991 if (this.date == null) 1992 if (Configuration.errorOnAutoCreate()) 1993 throw new Error("Attempt to auto-create DocumentReference.date"); 1994 else if (Configuration.doAutoCreate()) 1995 this.date = new InstantType(); // bb 1996 return this.date; 1997 } 1998 1999 public boolean hasDateElement() { 2000 return this.date != null && !this.date.isEmpty(); 2001 } 2002 2003 public boolean hasDate() { 2004 return this.date != null && !this.date.isEmpty(); 2005 } 2006 2007 /** 2008 * @param value {@link #date} (When the document reference was created.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 2009 */ 2010 public DocumentReference setDateElement(InstantType value) { 2011 this.date = value; 2012 return this; 2013 } 2014 2015 /** 2016 * @return When the document reference was created. 2017 */ 2018 public Date getDate() { 2019 return this.date == null ? null : this.date.getValue(); 2020 } 2021 2022 /** 2023 * @param value When the document reference was created. 2024 */ 2025 public DocumentReference setDate(Date value) { 2026 if (value == null) 2027 this.date = null; 2028 else { 2029 if (this.date == null) 2030 this.date = new InstantType(); 2031 this.date.setValue(value); 2032 } 2033 return this; 2034 } 2035 2036 /** 2037 * @return {@link #author} (Identifies who is responsible for adding the information to the document.) 2038 */ 2039 public List<Reference> getAuthor() { 2040 if (this.author == null) 2041 this.author = new ArrayList<Reference>(); 2042 return this.author; 2043 } 2044 2045 /** 2046 * @return Returns a reference to <code>this</code> for easy method chaining 2047 */ 2048 public DocumentReference setAuthor(List<Reference> theAuthor) { 2049 this.author = theAuthor; 2050 return this; 2051 } 2052 2053 public boolean hasAuthor() { 2054 if (this.author == null) 2055 return false; 2056 for (Reference item : this.author) 2057 if (!item.isEmpty()) 2058 return true; 2059 return false; 2060 } 2061 2062 public Reference addAuthor() { //3 2063 Reference t = new Reference(); 2064 if (this.author == null) 2065 this.author = new ArrayList<Reference>(); 2066 this.author.add(t); 2067 return t; 2068 } 2069 2070 public DocumentReference addAuthor(Reference t) { //3 2071 if (t == null) 2072 return this; 2073 if (this.author == null) 2074 this.author = new ArrayList<Reference>(); 2075 this.author.add(t); 2076 return this; 2077 } 2078 2079 /** 2080 * @return The first repetition of repeating field {@link #author}, creating it if it does not already exist {3} 2081 */ 2082 public Reference getAuthorFirstRep() { 2083 if (getAuthor().isEmpty()) { 2084 addAuthor(); 2085 } 2086 return getAuthor().get(0); 2087 } 2088 2089 /** 2090 * @return {@link #attester} (A participant who has authenticated the accuracy of the document.) 2091 */ 2092 public List<DocumentReferenceAttesterComponent> getAttester() { 2093 if (this.attester == null) 2094 this.attester = new ArrayList<DocumentReferenceAttesterComponent>(); 2095 return this.attester; 2096 } 2097 2098 /** 2099 * @return Returns a reference to <code>this</code> for easy method chaining 2100 */ 2101 public DocumentReference setAttester(List<DocumentReferenceAttesterComponent> theAttester) { 2102 this.attester = theAttester; 2103 return this; 2104 } 2105 2106 public boolean hasAttester() { 2107 if (this.attester == null) 2108 return false; 2109 for (DocumentReferenceAttesterComponent item : this.attester) 2110 if (!item.isEmpty()) 2111 return true; 2112 return false; 2113 } 2114 2115 public DocumentReferenceAttesterComponent addAttester() { //3 2116 DocumentReferenceAttesterComponent t = new DocumentReferenceAttesterComponent(); 2117 if (this.attester == null) 2118 this.attester = new ArrayList<DocumentReferenceAttesterComponent>(); 2119 this.attester.add(t); 2120 return t; 2121 } 2122 2123 public DocumentReference addAttester(DocumentReferenceAttesterComponent t) { //3 2124 if (t == null) 2125 return this; 2126 if (this.attester == null) 2127 this.attester = new ArrayList<DocumentReferenceAttesterComponent>(); 2128 this.attester.add(t); 2129 return this; 2130 } 2131 2132 /** 2133 * @return The first repetition of repeating field {@link #attester}, creating it if it does not already exist {3} 2134 */ 2135 public DocumentReferenceAttesterComponent getAttesterFirstRep() { 2136 if (getAttester().isEmpty()) { 2137 addAttester(); 2138 } 2139 return getAttester().get(0); 2140 } 2141 2142 /** 2143 * @return {@link #custodian} (Identifies the organization or group who is responsible for ongoing maintenance of and access to the document.) 2144 */ 2145 public Reference getCustodian() { 2146 if (this.custodian == null) 2147 if (Configuration.errorOnAutoCreate()) 2148 throw new Error("Attempt to auto-create DocumentReference.custodian"); 2149 else if (Configuration.doAutoCreate()) 2150 this.custodian = new Reference(); // cc 2151 return this.custodian; 2152 } 2153 2154 public boolean hasCustodian() { 2155 return this.custodian != null && !this.custodian.isEmpty(); 2156 } 2157 2158 /** 2159 * @param value {@link #custodian} (Identifies the organization or group who is responsible for ongoing maintenance of and access to the document.) 2160 */ 2161 public DocumentReference setCustodian(Reference value) { 2162 this.custodian = value; 2163 return this; 2164 } 2165 2166 /** 2167 * @return {@link #relatesTo} (Relationships that this document has with other document references that already exist.) 2168 */ 2169 public List<DocumentReferenceRelatesToComponent> getRelatesTo() { 2170 if (this.relatesTo == null) 2171 this.relatesTo = new ArrayList<DocumentReferenceRelatesToComponent>(); 2172 return this.relatesTo; 2173 } 2174 2175 /** 2176 * @return Returns a reference to <code>this</code> for easy method chaining 2177 */ 2178 public DocumentReference setRelatesTo(List<DocumentReferenceRelatesToComponent> theRelatesTo) { 2179 this.relatesTo = theRelatesTo; 2180 return this; 2181 } 2182 2183 public boolean hasRelatesTo() { 2184 if (this.relatesTo == null) 2185 return false; 2186 for (DocumentReferenceRelatesToComponent item : this.relatesTo) 2187 if (!item.isEmpty()) 2188 return true; 2189 return false; 2190 } 2191 2192 public DocumentReferenceRelatesToComponent addRelatesTo() { //3 2193 DocumentReferenceRelatesToComponent t = new DocumentReferenceRelatesToComponent(); 2194 if (this.relatesTo == null) 2195 this.relatesTo = new ArrayList<DocumentReferenceRelatesToComponent>(); 2196 this.relatesTo.add(t); 2197 return t; 2198 } 2199 2200 public DocumentReference addRelatesTo(DocumentReferenceRelatesToComponent t) { //3 2201 if (t == null) 2202 return this; 2203 if (this.relatesTo == null) 2204 this.relatesTo = new ArrayList<DocumentReferenceRelatesToComponent>(); 2205 this.relatesTo.add(t); 2206 return this; 2207 } 2208 2209 /** 2210 * @return The first repetition of repeating field {@link #relatesTo}, creating it if it does not already exist {3} 2211 */ 2212 public DocumentReferenceRelatesToComponent getRelatesToFirstRep() { 2213 if (getRelatesTo().isEmpty()) { 2214 addRelatesTo(); 2215 } 2216 return getRelatesTo().get(0); 2217 } 2218 2219 /** 2220 * @return {@link #description} (Human-readable description of the source document.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 2221 */ 2222 public MarkdownType getDescriptionElement() { 2223 if (this.description == null) 2224 if (Configuration.errorOnAutoCreate()) 2225 throw new Error("Attempt to auto-create DocumentReference.description"); 2226 else if (Configuration.doAutoCreate()) 2227 this.description = new MarkdownType(); // bb 2228 return this.description; 2229 } 2230 2231 public boolean hasDescriptionElement() { 2232 return this.description != null && !this.description.isEmpty(); 2233 } 2234 2235 public boolean hasDescription() { 2236 return this.description != null && !this.description.isEmpty(); 2237 } 2238 2239 /** 2240 * @param value {@link #description} (Human-readable description of the source document.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 2241 */ 2242 public DocumentReference setDescriptionElement(MarkdownType value) { 2243 this.description = value; 2244 return this; 2245 } 2246 2247 /** 2248 * @return Human-readable description of the source document. 2249 */ 2250 public String getDescription() { 2251 return this.description == null ? null : this.description.getValue(); 2252 } 2253 2254 /** 2255 * @param value Human-readable description of the source document. 2256 */ 2257 public DocumentReference setDescription(String value) { 2258 if (Utilities.noString(value)) 2259 this.description = null; 2260 else { 2261 if (this.description == null) 2262 this.description = new MarkdownType(); 2263 this.description.setValue(value); 2264 } 2265 return this; 2266 } 2267 2268 /** 2269 * @return {@link #securityLabel} (A set of Security-Tag codes specifying the level of privacy/security of the Document found at DocumentReference.content.attachment.url. Note that DocumentReference.meta.security contains the security labels of the data elements in DocumentReference, while DocumentReference.securityLabel contains the security labels for the document the reference refers to. The distinction recognizes that the document may contain sensitive information, while the DocumentReference is metadata about the document and thus might not be as sensitive as the document. For example: a psychotherapy episode may contain highly sensitive information, while the metadata may simply indicate that some episode happened.) 2270 */ 2271 public List<CodeableConcept> getSecurityLabel() { 2272 if (this.securityLabel == null) 2273 this.securityLabel = new ArrayList<CodeableConcept>(); 2274 return this.securityLabel; 2275 } 2276 2277 /** 2278 * @return Returns a reference to <code>this</code> for easy method chaining 2279 */ 2280 public DocumentReference setSecurityLabel(List<CodeableConcept> theSecurityLabel) { 2281 this.securityLabel = theSecurityLabel; 2282 return this; 2283 } 2284 2285 public boolean hasSecurityLabel() { 2286 if (this.securityLabel == null) 2287 return false; 2288 for (CodeableConcept item : this.securityLabel) 2289 if (!item.isEmpty()) 2290 return true; 2291 return false; 2292 } 2293 2294 public CodeableConcept addSecurityLabel() { //3 2295 CodeableConcept t = new CodeableConcept(); 2296 if (this.securityLabel == null) 2297 this.securityLabel = new ArrayList<CodeableConcept>(); 2298 this.securityLabel.add(t); 2299 return t; 2300 } 2301 2302 public DocumentReference addSecurityLabel(CodeableConcept t) { //3 2303 if (t == null) 2304 return this; 2305 if (this.securityLabel == null) 2306 this.securityLabel = new ArrayList<CodeableConcept>(); 2307 this.securityLabel.add(t); 2308 return this; 2309 } 2310 2311 /** 2312 * @return The first repetition of repeating field {@link #securityLabel}, creating it if it does not already exist {3} 2313 */ 2314 public CodeableConcept getSecurityLabelFirstRep() { 2315 if (getSecurityLabel().isEmpty()) { 2316 addSecurityLabel(); 2317 } 2318 return getSecurityLabel().get(0); 2319 } 2320 2321 /** 2322 * @return {@link #content} (The document and format referenced. If there are multiple content element repetitions, these must all represent the same document in different format, or attachment metadata.) 2323 */ 2324 public List<DocumentReferenceContentComponent> getContent() { 2325 if (this.content == null) 2326 this.content = new ArrayList<DocumentReferenceContentComponent>(); 2327 return this.content; 2328 } 2329 2330 /** 2331 * @return Returns a reference to <code>this</code> for easy method chaining 2332 */ 2333 public DocumentReference setContent(List<DocumentReferenceContentComponent> theContent) { 2334 this.content = theContent; 2335 return this; 2336 } 2337 2338 public boolean hasContent() { 2339 if (this.content == null) 2340 return false; 2341 for (DocumentReferenceContentComponent item : this.content) 2342 if (!item.isEmpty()) 2343 return true; 2344 return false; 2345 } 2346 2347 public DocumentReferenceContentComponent addContent() { //3 2348 DocumentReferenceContentComponent t = new DocumentReferenceContentComponent(); 2349 if (this.content == null) 2350 this.content = new ArrayList<DocumentReferenceContentComponent>(); 2351 this.content.add(t); 2352 return t; 2353 } 2354 2355 public DocumentReference addContent(DocumentReferenceContentComponent t) { //3 2356 if (t == null) 2357 return this; 2358 if (this.content == null) 2359 this.content = new ArrayList<DocumentReferenceContentComponent>(); 2360 this.content.add(t); 2361 return this; 2362 } 2363 2364 /** 2365 * @return The first repetition of repeating field {@link #content}, creating it if it does not already exist {3} 2366 */ 2367 public DocumentReferenceContentComponent getContentFirstRep() { 2368 if (getContent().isEmpty()) { 2369 addContent(); 2370 } 2371 return getContent().get(0); 2372 } 2373 2374 protected void listChildren(List<Property> children) { 2375 super.listChildren(children); 2376 children.add(new Property("identifier", "Identifier", "Other business identifiers associated with the document, including version independent identifiers.", 0, java.lang.Integer.MAX_VALUE, identifier)); 2377 children.add(new Property("version", "string", "An explicitly assigned identifer of a variation of the content in the DocumentReference.", 0, 1, version)); 2378 children.add(new Property("basedOn", "Reference(Appointment|AppointmentResponse|CarePlan|Claim|CommunicationRequest|Contract|CoverageEligibilityRequest|DeviceRequest|EnrollmentRequest|ImmunizationRecommendation|MedicationRequest|NutritionOrder|RequestOrchestration|ServiceRequest|SupplyRequest|VisionPrescription)", "A procedure that is fulfilled in whole or in part by the creation of this media.", 0, java.lang.Integer.MAX_VALUE, basedOn)); 2379 children.add(new Property("status", "code", "The status of this document reference.", 0, 1, status)); 2380 children.add(new Property("docStatus", "code", "The status of the underlying document.", 0, 1, docStatus)); 2381 children.add(new Property("modality", "CodeableConcept", "Imaging modality used. This may include both acquisition and non-acquisition modalities.", 0, java.lang.Integer.MAX_VALUE, modality)); 2382 children.add(new Property("type", "CodeableConcept", "Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referenced.", 0, 1, type)); 2383 children.add(new Property("category", "CodeableConcept", "A categorization for the type of document referenced - helps for indexing and searching. This may be implied by or derived from the code specified in the DocumentReference.type.", 0, java.lang.Integer.MAX_VALUE, category)); 2384 children.add(new Property("subject", "Reference(Any)", "Who or what the document is about. The document 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 farm animals, or a set of patients that share a common exposure).", 0, 1, subject)); 2385 children.add(new Property("context", "Reference(Appointment|Encounter|EpisodeOfCare)", "Describes the clinical encounter or type of care that the document content is associated with.", 0, java.lang.Integer.MAX_VALUE, context)); 2386 children.add(new Property("event", "CodeableReference", "This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the type Code, such as a \"History and Physical Report\" in which the procedure being documented is necessarily a \"History and Physical\" act.", 0, java.lang.Integer.MAX_VALUE, event)); 2387 children.add(new Property("bodySite", "CodeableReference(BodyStructure)", "The anatomic structures included in the document.", 0, java.lang.Integer.MAX_VALUE, bodySite)); 2388 children.add(new Property("facilityType", "CodeableConcept", "The kind of facility where the patient was seen.", 0, 1, facilityType)); 2389 children.add(new Property("practiceSetting", "CodeableConcept", "This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty.", 0, 1, practiceSetting)); 2390 children.add(new Property("period", "Period", "The time period over which the service that is described by the document was provided.", 0, 1, period)); 2391 children.add(new Property("date", "instant", "When the document reference was created.", 0, 1, date)); 2392 children.add(new Property("author", "Reference(Practitioner|PractitionerRole|Organization|Device|Patient|RelatedPerson|CareTeam)", "Identifies who is responsible for adding the information to the document.", 0, java.lang.Integer.MAX_VALUE, author)); 2393 children.add(new Property("attester", "", "A participant who has authenticated the accuracy of the document.", 0, java.lang.Integer.MAX_VALUE, attester)); 2394 children.add(new Property("custodian", "Reference(Organization)", "Identifies the organization or group who is responsible for ongoing maintenance of and access to the document.", 0, 1, custodian)); 2395 children.add(new Property("relatesTo", "", "Relationships that this document has with other document references that already exist.", 0, java.lang.Integer.MAX_VALUE, relatesTo)); 2396 children.add(new Property("description", "markdown", "Human-readable description of the source document.", 0, 1, description)); 2397 children.add(new Property("securityLabel", "CodeableConcept", "A set of Security-Tag codes specifying the level of privacy/security of the Document found at DocumentReference.content.attachment.url. Note that DocumentReference.meta.security contains the security labels of the data elements in DocumentReference, while DocumentReference.securityLabel contains the security labels for the document the reference refers to. The distinction recognizes that the document may contain sensitive information, while the DocumentReference is metadata about the document and thus might not be as sensitive as the document. For example: a psychotherapy episode may contain highly sensitive information, while the metadata may simply indicate that some episode happened.", 0, java.lang.Integer.MAX_VALUE, securityLabel)); 2398 children.add(new Property("content", "", "The document and format referenced. If there are multiple content element repetitions, these must all represent the same document in different format, or attachment metadata.", 0, java.lang.Integer.MAX_VALUE, content)); 2399 } 2400 2401 @Override 2402 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 2403 switch (_hash) { 2404 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Other business identifiers associated with the document, including version independent identifiers.", 0, java.lang.Integer.MAX_VALUE, identifier); 2405 case 351608024: /*version*/ return new Property("version", "string", "An explicitly assigned identifer of a variation of the content in the DocumentReference.", 0, 1, version); 2406 case -332612366: /*basedOn*/ return new Property("basedOn", "Reference(Appointment|AppointmentResponse|CarePlan|Claim|CommunicationRequest|Contract|CoverageEligibilityRequest|DeviceRequest|EnrollmentRequest|ImmunizationRecommendation|MedicationRequest|NutritionOrder|RequestOrchestration|ServiceRequest|SupplyRequest|VisionPrescription)", "A procedure that is fulfilled in whole or in part by the creation of this media.", 0, java.lang.Integer.MAX_VALUE, basedOn); 2407 case -892481550: /*status*/ return new Property("status", "code", "The status of this document reference.", 0, 1, status); 2408 case -23496886: /*docStatus*/ return new Property("docStatus", "code", "The status of the underlying document.", 0, 1, docStatus); 2409 case -622722335: /*modality*/ return new Property("modality", "CodeableConcept", "Imaging modality used. This may include both acquisition and non-acquisition modalities.", 0, java.lang.Integer.MAX_VALUE, modality); 2410 case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referenced.", 0, 1, type); 2411 case 50511102: /*category*/ return new Property("category", "CodeableConcept", "A categorization for the type of document referenced - helps for indexing and searching. This may be implied by or derived from the code specified in the DocumentReference.type.", 0, java.lang.Integer.MAX_VALUE, category); 2412 case -1867885268: /*subject*/ return new Property("subject", "Reference(Any)", "Who or what the document is about. The document 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 farm animals, or a set of patients that share a common exposure).", 0, 1, subject); 2413 case 951530927: /*context*/ return new Property("context", "Reference(Appointment|Encounter|EpisodeOfCare)", "Describes the clinical encounter or type of care that the document content is associated with.", 0, java.lang.Integer.MAX_VALUE, context); 2414 case 96891546: /*event*/ return new Property("event", "CodeableReference", "This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the type Code, such as a \"History and Physical Report\" in which the procedure being documented is necessarily a \"History and Physical\" act.", 0, java.lang.Integer.MAX_VALUE, event); 2415 case 1702620169: /*bodySite*/ return new Property("bodySite", "CodeableReference(BodyStructure)", "The anatomic structures included in the document.", 0, java.lang.Integer.MAX_VALUE, bodySite); 2416 case 370698365: /*facilityType*/ return new Property("facilityType", "CodeableConcept", "The kind of facility where the patient was seen.", 0, 1, facilityType); 2417 case 331373717: /*practiceSetting*/ return new Property("practiceSetting", "CodeableConcept", "This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty.", 0, 1, practiceSetting); 2418 case -991726143: /*period*/ return new Property("period", "Period", "The time period over which the service that is described by the document was provided.", 0, 1, period); 2419 case 3076014: /*date*/ return new Property("date", "instant", "When the document reference was created.", 0, 1, date); 2420 case -1406328437: /*author*/ return new Property("author", "Reference(Practitioner|PractitionerRole|Organization|Device|Patient|RelatedPerson|CareTeam)", "Identifies who is responsible for adding the information to the document.", 0, java.lang.Integer.MAX_VALUE, author); 2421 case 542920370: /*attester*/ return new Property("attester", "", "A participant who has authenticated the accuracy of the document.", 0, java.lang.Integer.MAX_VALUE, attester); 2422 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 document.", 0, 1, custodian); 2423 case -7765931: /*relatesTo*/ return new Property("relatesTo", "", "Relationships that this document has with other document references that already exist.", 0, java.lang.Integer.MAX_VALUE, relatesTo); 2424 case -1724546052: /*description*/ return new Property("description", "markdown", "Human-readable description of the source document.", 0, 1, description); 2425 case -722296940: /*securityLabel*/ return new Property("securityLabel", "CodeableConcept", "A set of Security-Tag codes specifying the level of privacy/security of the Document found at DocumentReference.content.attachment.url. Note that DocumentReference.meta.security contains the security labels of the data elements in DocumentReference, while DocumentReference.securityLabel contains the security labels for the document the reference refers to. The distinction recognizes that the document may contain sensitive information, while the DocumentReference is metadata about the document and thus might not be as sensitive as the document. For example: a psychotherapy episode may contain highly sensitive information, while the metadata may simply indicate that some episode happened.", 0, java.lang.Integer.MAX_VALUE, securityLabel); 2426 case 951530617: /*content*/ return new Property("content", "", "The document and format referenced. If there are multiple content element repetitions, these must all represent the same document in different format, or attachment metadata.", 0, java.lang.Integer.MAX_VALUE, content); 2427 default: return super.getNamedProperty(_hash, _name, _checkValid); 2428 } 2429 2430 } 2431 2432 @Override 2433 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 2434 switch (hash) { 2435 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 2436 case 351608024: /*version*/ return this.version == null ? new Base[0] : new Base[] {this.version}; // StringType 2437 case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : this.basedOn.toArray(new Base[this.basedOn.size()]); // Reference 2438 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<DocumentReferenceStatus> 2439 case -23496886: /*docStatus*/ return this.docStatus == null ? new Base[0] : new Base[] {this.docStatus}; // Enumeration<CompositionStatus> 2440 case -622722335: /*modality*/ return this.modality == null ? new Base[0] : this.modality.toArray(new Base[this.modality.size()]); // CodeableConcept 2441 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept 2442 case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept 2443 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference 2444 case 951530927: /*context*/ return this.context == null ? new Base[0] : this.context.toArray(new Base[this.context.size()]); // Reference 2445 case 96891546: /*event*/ return this.event == null ? new Base[0] : this.event.toArray(new Base[this.event.size()]); // CodeableReference 2446 case 1702620169: /*bodySite*/ return this.bodySite == null ? new Base[0] : this.bodySite.toArray(new Base[this.bodySite.size()]); // CodeableReference 2447 case 370698365: /*facilityType*/ return this.facilityType == null ? new Base[0] : new Base[] {this.facilityType}; // CodeableConcept 2448 case 331373717: /*practiceSetting*/ return this.practiceSetting == null ? new Base[0] : new Base[] {this.practiceSetting}; // CodeableConcept 2449 case -991726143: /*period*/ return this.period == null ? new Base[0] : new Base[] {this.period}; // Period 2450 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // InstantType 2451 case -1406328437: /*author*/ return this.author == null ? new Base[0] : this.author.toArray(new Base[this.author.size()]); // Reference 2452 case 542920370: /*attester*/ return this.attester == null ? new Base[0] : this.attester.toArray(new Base[this.attester.size()]); // DocumentReferenceAttesterComponent 2453 case 1611297262: /*custodian*/ return this.custodian == null ? new Base[0] : new Base[] {this.custodian}; // Reference 2454 case -7765931: /*relatesTo*/ return this.relatesTo == null ? new Base[0] : this.relatesTo.toArray(new Base[this.relatesTo.size()]); // DocumentReferenceRelatesToComponent 2455 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType 2456 case -722296940: /*securityLabel*/ return this.securityLabel == null ? new Base[0] : this.securityLabel.toArray(new Base[this.securityLabel.size()]); // CodeableConcept 2457 case 951530617: /*content*/ return this.content == null ? new Base[0] : this.content.toArray(new Base[this.content.size()]); // DocumentReferenceContentComponent 2458 default: return super.getProperty(hash, name, checkValid); 2459 } 2460 2461 } 2462 2463 @Override 2464 public Base setProperty(int hash, String name, Base value) throws FHIRException { 2465 switch (hash) { 2466 case -1618432855: // identifier 2467 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 2468 return value; 2469 case 351608024: // version 2470 this.version = TypeConvertor.castToString(value); // StringType 2471 return value; 2472 case -332612366: // basedOn 2473 this.getBasedOn().add(TypeConvertor.castToReference(value)); // Reference 2474 return value; 2475 case -892481550: // status 2476 value = new DocumentReferenceStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 2477 this.status = (Enumeration) value; // Enumeration<DocumentReferenceStatus> 2478 return value; 2479 case -23496886: // docStatus 2480 value = new CompositionStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 2481 this.docStatus = (Enumeration) value; // Enumeration<CompositionStatus> 2482 return value; 2483 case -622722335: // modality 2484 this.getModality().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 2485 return value; 2486 case 3575610: // type 2487 this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2488 return value; 2489 case 50511102: // category 2490 this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 2491 return value; 2492 case -1867885268: // subject 2493 this.subject = TypeConvertor.castToReference(value); // Reference 2494 return value; 2495 case 951530927: // context 2496 this.getContext().add(TypeConvertor.castToReference(value)); // Reference 2497 return value; 2498 case 96891546: // event 2499 this.getEvent().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference 2500 return value; 2501 case 1702620169: // bodySite 2502 this.getBodySite().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference 2503 return value; 2504 case 370698365: // facilityType 2505 this.facilityType = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2506 return value; 2507 case 331373717: // practiceSetting 2508 this.practiceSetting = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2509 return value; 2510 case -991726143: // period 2511 this.period = TypeConvertor.castToPeriod(value); // Period 2512 return value; 2513 case 3076014: // date 2514 this.date = TypeConvertor.castToInstant(value); // InstantType 2515 return value; 2516 case -1406328437: // author 2517 this.getAuthor().add(TypeConvertor.castToReference(value)); // Reference 2518 return value; 2519 case 542920370: // attester 2520 this.getAttester().add((DocumentReferenceAttesterComponent) value); // DocumentReferenceAttesterComponent 2521 return value; 2522 case 1611297262: // custodian 2523 this.custodian = TypeConvertor.castToReference(value); // Reference 2524 return value; 2525 case -7765931: // relatesTo 2526 this.getRelatesTo().add((DocumentReferenceRelatesToComponent) value); // DocumentReferenceRelatesToComponent 2527 return value; 2528 case -1724546052: // description 2529 this.description = TypeConvertor.castToMarkdown(value); // MarkdownType 2530 return value; 2531 case -722296940: // securityLabel 2532 this.getSecurityLabel().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 2533 return value; 2534 case 951530617: // content 2535 this.getContent().add((DocumentReferenceContentComponent) value); // DocumentReferenceContentComponent 2536 return value; 2537 default: return super.setProperty(hash, name, value); 2538 } 2539 2540 } 2541 2542 @Override 2543 public Base setProperty(String name, Base value) throws FHIRException { 2544 if (name.equals("identifier")) { 2545 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 2546 } else if (name.equals("version")) { 2547 this.version = TypeConvertor.castToString(value); // StringType 2548 } else if (name.equals("basedOn")) { 2549 this.getBasedOn().add(TypeConvertor.castToReference(value)); 2550 } else if (name.equals("status")) { 2551 value = new DocumentReferenceStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 2552 this.status = (Enumeration) value; // Enumeration<DocumentReferenceStatus> 2553 } else if (name.equals("docStatus")) { 2554 value = new CompositionStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 2555 this.docStatus = (Enumeration) value; // Enumeration<CompositionStatus> 2556 } else if (name.equals("modality")) { 2557 this.getModality().add(TypeConvertor.castToCodeableConcept(value)); 2558 } else if (name.equals("type")) { 2559 this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2560 } else if (name.equals("category")) { 2561 this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); 2562 } else if (name.equals("subject")) { 2563 this.subject = TypeConvertor.castToReference(value); // Reference 2564 } else if (name.equals("context")) { 2565 this.getContext().add(TypeConvertor.castToReference(value)); 2566 } else if (name.equals("event")) { 2567 this.getEvent().add(TypeConvertor.castToCodeableReference(value)); 2568 } else if (name.equals("bodySite")) { 2569 this.getBodySite().add(TypeConvertor.castToCodeableReference(value)); 2570 } else if (name.equals("facilityType")) { 2571 this.facilityType = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2572 } else if (name.equals("practiceSetting")) { 2573 this.practiceSetting = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 2574 } else if (name.equals("period")) { 2575 this.period = TypeConvertor.castToPeriod(value); // Period 2576 } else if (name.equals("date")) { 2577 this.date = TypeConvertor.castToInstant(value); // InstantType 2578 } else if (name.equals("author")) { 2579 this.getAuthor().add(TypeConvertor.castToReference(value)); 2580 } else if (name.equals("attester")) { 2581 this.getAttester().add((DocumentReferenceAttesterComponent) value); 2582 } else if (name.equals("custodian")) { 2583 this.custodian = TypeConvertor.castToReference(value); // Reference 2584 } else if (name.equals("relatesTo")) { 2585 this.getRelatesTo().add((DocumentReferenceRelatesToComponent) value); 2586 } else if (name.equals("description")) { 2587 this.description = TypeConvertor.castToMarkdown(value); // MarkdownType 2588 } else if (name.equals("securityLabel")) { 2589 this.getSecurityLabel().add(TypeConvertor.castToCodeableConcept(value)); 2590 } else if (name.equals("content")) { 2591 this.getContent().add((DocumentReferenceContentComponent) value); 2592 } else 2593 return super.setProperty(name, value); 2594 return value; 2595 } 2596 2597 @Override 2598 public void removeChild(String name, Base value) throws FHIRException { 2599 if (name.equals("identifier")) { 2600 this.getIdentifier().remove(value); 2601 } else if (name.equals("version")) { 2602 this.version = null; 2603 } else if (name.equals("basedOn")) { 2604 this.getBasedOn().remove(value); 2605 } else if (name.equals("status")) { 2606 value = new DocumentReferenceStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 2607 this.status = (Enumeration) value; // Enumeration<DocumentReferenceStatus> 2608 } else if (name.equals("docStatus")) { 2609 value = new CompositionStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 2610 this.docStatus = (Enumeration) value; // Enumeration<CompositionStatus> 2611 } else if (name.equals("modality")) { 2612 this.getModality().remove(value); 2613 } else if (name.equals("type")) { 2614 this.type = null; 2615 } else if (name.equals("category")) { 2616 this.getCategory().remove(value); 2617 } else if (name.equals("subject")) { 2618 this.subject = null; 2619 } else if (name.equals("context")) { 2620 this.getContext().remove(value); 2621 } else if (name.equals("event")) { 2622 this.getEvent().remove(value); 2623 } else if (name.equals("bodySite")) { 2624 this.getBodySite().remove(value); 2625 } else if (name.equals("facilityType")) { 2626 this.facilityType = null; 2627 } else if (name.equals("practiceSetting")) { 2628 this.practiceSetting = null; 2629 } else if (name.equals("period")) { 2630 this.period = null; 2631 } else if (name.equals("date")) { 2632 this.date = null; 2633 } else if (name.equals("author")) { 2634 this.getAuthor().remove(value); 2635 } else if (name.equals("attester")) { 2636 this.getAttester().remove((DocumentReferenceAttesterComponent) value); 2637 } else if (name.equals("custodian")) { 2638 this.custodian = null; 2639 } else if (name.equals("relatesTo")) { 2640 this.getRelatesTo().remove((DocumentReferenceRelatesToComponent) value); 2641 } else if (name.equals("description")) { 2642 this.description = null; 2643 } else if (name.equals("securityLabel")) { 2644 this.getSecurityLabel().remove(value); 2645 } else if (name.equals("content")) { 2646 this.getContent().remove((DocumentReferenceContentComponent) value); 2647 } else 2648 super.removeChild(name, value); 2649 2650 } 2651 2652 @Override 2653 public Base makeProperty(int hash, String name) throws FHIRException { 2654 switch (hash) { 2655 case -1618432855: return addIdentifier(); 2656 case 351608024: return getVersionElement(); 2657 case -332612366: return addBasedOn(); 2658 case -892481550: return getStatusElement(); 2659 case -23496886: return getDocStatusElement(); 2660 case -622722335: return addModality(); 2661 case 3575610: return getType(); 2662 case 50511102: return addCategory(); 2663 case -1867885268: return getSubject(); 2664 case 951530927: return addContext(); 2665 case 96891546: return addEvent(); 2666 case 1702620169: return addBodySite(); 2667 case 370698365: return getFacilityType(); 2668 case 331373717: return getPracticeSetting(); 2669 case -991726143: return getPeriod(); 2670 case 3076014: return getDateElement(); 2671 case -1406328437: return addAuthor(); 2672 case 542920370: return addAttester(); 2673 case 1611297262: return getCustodian(); 2674 case -7765931: return addRelatesTo(); 2675 case -1724546052: return getDescriptionElement(); 2676 case -722296940: return addSecurityLabel(); 2677 case 951530617: return addContent(); 2678 default: return super.makeProperty(hash, name); 2679 } 2680 2681 } 2682 2683 @Override 2684 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 2685 switch (hash) { 2686 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 2687 case 351608024: /*version*/ return new String[] {"string"}; 2688 case -332612366: /*basedOn*/ return new String[] {"Reference"}; 2689 case -892481550: /*status*/ return new String[] {"code"}; 2690 case -23496886: /*docStatus*/ return new String[] {"code"}; 2691 case -622722335: /*modality*/ return new String[] {"CodeableConcept"}; 2692 case 3575610: /*type*/ return new String[] {"CodeableConcept"}; 2693 case 50511102: /*category*/ return new String[] {"CodeableConcept"}; 2694 case -1867885268: /*subject*/ return new String[] {"Reference"}; 2695 case 951530927: /*context*/ return new String[] {"Reference"}; 2696 case 96891546: /*event*/ return new String[] {"CodeableReference"}; 2697 case 1702620169: /*bodySite*/ return new String[] {"CodeableReference"}; 2698 case 370698365: /*facilityType*/ return new String[] {"CodeableConcept"}; 2699 case 331373717: /*practiceSetting*/ return new String[] {"CodeableConcept"}; 2700 case -991726143: /*period*/ return new String[] {"Period"}; 2701 case 3076014: /*date*/ return new String[] {"instant"}; 2702 case -1406328437: /*author*/ return new String[] {"Reference"}; 2703 case 542920370: /*attester*/ return new String[] {}; 2704 case 1611297262: /*custodian*/ return new String[] {"Reference"}; 2705 case -7765931: /*relatesTo*/ return new String[] {}; 2706 case -1724546052: /*description*/ return new String[] {"markdown"}; 2707 case -722296940: /*securityLabel*/ return new String[] {"CodeableConcept"}; 2708 case 951530617: /*content*/ return new String[] {}; 2709 default: return super.getTypesForProperty(hash, name); 2710 } 2711 2712 } 2713 2714 @Override 2715 public Base addChild(String name) throws FHIRException { 2716 if (name.equals("identifier")) { 2717 return addIdentifier(); 2718 } 2719 else if (name.equals("version")) { 2720 throw new FHIRException("Cannot call addChild on a singleton property DocumentReference.version"); 2721 } 2722 else if (name.equals("basedOn")) { 2723 return addBasedOn(); 2724 } 2725 else if (name.equals("status")) { 2726 throw new FHIRException("Cannot call addChild on a singleton property DocumentReference.status"); 2727 } 2728 else if (name.equals("docStatus")) { 2729 throw new FHIRException("Cannot call addChild on a singleton property DocumentReference.docStatus"); 2730 } 2731 else if (name.equals("modality")) { 2732 return addModality(); 2733 } 2734 else if (name.equals("type")) { 2735 this.type = new CodeableConcept(); 2736 return this.type; 2737 } 2738 else if (name.equals("category")) { 2739 return addCategory(); 2740 } 2741 else if (name.equals("subject")) { 2742 this.subject = new Reference(); 2743 return this.subject; 2744 } 2745 else if (name.equals("context")) { 2746 return addContext(); 2747 } 2748 else if (name.equals("event")) { 2749 return addEvent(); 2750 } 2751 else if (name.equals("bodySite")) { 2752 return addBodySite(); 2753 } 2754 else if (name.equals("facilityType")) { 2755 this.facilityType = new CodeableConcept(); 2756 return this.facilityType; 2757 } 2758 else if (name.equals("practiceSetting")) { 2759 this.practiceSetting = new CodeableConcept(); 2760 return this.practiceSetting; 2761 } 2762 else if (name.equals("period")) { 2763 this.period = new Period(); 2764 return this.period; 2765 } 2766 else if (name.equals("date")) { 2767 throw new FHIRException("Cannot call addChild on a singleton property DocumentReference.date"); 2768 } 2769 else if (name.equals("author")) { 2770 return addAuthor(); 2771 } 2772 else if (name.equals("attester")) { 2773 return addAttester(); 2774 } 2775 else if (name.equals("custodian")) { 2776 this.custodian = new Reference(); 2777 return this.custodian; 2778 } 2779 else if (name.equals("relatesTo")) { 2780 return addRelatesTo(); 2781 } 2782 else if (name.equals("description")) { 2783 throw new FHIRException("Cannot call addChild on a singleton property DocumentReference.description"); 2784 } 2785 else if (name.equals("securityLabel")) { 2786 return addSecurityLabel(); 2787 } 2788 else if (name.equals("content")) { 2789 return addContent(); 2790 } 2791 else 2792 return super.addChild(name); 2793 } 2794 2795 public String fhirType() { 2796 return "DocumentReference"; 2797 2798 } 2799 2800 public DocumentReference copy() { 2801 DocumentReference dst = new DocumentReference(); 2802 copyValues(dst); 2803 return dst; 2804 } 2805 2806 public void copyValues(DocumentReference dst) { 2807 super.copyValues(dst); 2808 if (identifier != null) { 2809 dst.identifier = new ArrayList<Identifier>(); 2810 for (Identifier i : identifier) 2811 dst.identifier.add(i.copy()); 2812 }; 2813 dst.version = version == null ? null : version.copy(); 2814 if (basedOn != null) { 2815 dst.basedOn = new ArrayList<Reference>(); 2816 for (Reference i : basedOn) 2817 dst.basedOn.add(i.copy()); 2818 }; 2819 dst.status = status == null ? null : status.copy(); 2820 dst.docStatus = docStatus == null ? null : docStatus.copy(); 2821 if (modality != null) { 2822 dst.modality = new ArrayList<CodeableConcept>(); 2823 for (CodeableConcept i : modality) 2824 dst.modality.add(i.copy()); 2825 }; 2826 dst.type = type == null ? null : type.copy(); 2827 if (category != null) { 2828 dst.category = new ArrayList<CodeableConcept>(); 2829 for (CodeableConcept i : category) 2830 dst.category.add(i.copy()); 2831 }; 2832 dst.subject = subject == null ? null : subject.copy(); 2833 if (context != null) { 2834 dst.context = new ArrayList<Reference>(); 2835 for (Reference i : context) 2836 dst.context.add(i.copy()); 2837 }; 2838 if (event != null) { 2839 dst.event = new ArrayList<CodeableReference>(); 2840 for (CodeableReference i : event) 2841 dst.event.add(i.copy()); 2842 }; 2843 if (bodySite != null) { 2844 dst.bodySite = new ArrayList<CodeableReference>(); 2845 for (CodeableReference i : bodySite) 2846 dst.bodySite.add(i.copy()); 2847 }; 2848 dst.facilityType = facilityType == null ? null : facilityType.copy(); 2849 dst.practiceSetting = practiceSetting == null ? null : practiceSetting.copy(); 2850 dst.period = period == null ? null : period.copy(); 2851 dst.date = date == null ? null : date.copy(); 2852 if (author != null) { 2853 dst.author = new ArrayList<Reference>(); 2854 for (Reference i : author) 2855 dst.author.add(i.copy()); 2856 }; 2857 if (attester != null) { 2858 dst.attester = new ArrayList<DocumentReferenceAttesterComponent>(); 2859 for (DocumentReferenceAttesterComponent i : attester) 2860 dst.attester.add(i.copy()); 2861 }; 2862 dst.custodian = custodian == null ? null : custodian.copy(); 2863 if (relatesTo != null) { 2864 dst.relatesTo = new ArrayList<DocumentReferenceRelatesToComponent>(); 2865 for (DocumentReferenceRelatesToComponent i : relatesTo) 2866 dst.relatesTo.add(i.copy()); 2867 }; 2868 dst.description = description == null ? null : description.copy(); 2869 if (securityLabel != null) { 2870 dst.securityLabel = new ArrayList<CodeableConcept>(); 2871 for (CodeableConcept i : securityLabel) 2872 dst.securityLabel.add(i.copy()); 2873 }; 2874 if (content != null) { 2875 dst.content = new ArrayList<DocumentReferenceContentComponent>(); 2876 for (DocumentReferenceContentComponent i : content) 2877 dst.content.add(i.copy()); 2878 }; 2879 } 2880 2881 protected DocumentReference typedCopy() { 2882 return copy(); 2883 } 2884 2885 @Override 2886 public boolean equalsDeep(Base other_) { 2887 if (!super.equalsDeep(other_)) 2888 return false; 2889 if (!(other_ instanceof DocumentReference)) 2890 return false; 2891 DocumentReference o = (DocumentReference) other_; 2892 return compareDeep(identifier, o.identifier, true) && compareDeep(version, o.version, true) && compareDeep(basedOn, o.basedOn, true) 2893 && compareDeep(status, o.status, true) && compareDeep(docStatus, o.docStatus, true) && compareDeep(modality, o.modality, true) 2894 && compareDeep(type, o.type, true) && compareDeep(category, o.category, true) && compareDeep(subject, o.subject, true) 2895 && compareDeep(context, o.context, true) && compareDeep(event, o.event, true) && compareDeep(bodySite, o.bodySite, true) 2896 && compareDeep(facilityType, o.facilityType, true) && compareDeep(practiceSetting, o.practiceSetting, true) 2897 && compareDeep(period, o.period, true) && compareDeep(date, o.date, true) && compareDeep(author, o.author, true) 2898 && compareDeep(attester, o.attester, true) && compareDeep(custodian, o.custodian, true) && compareDeep(relatesTo, o.relatesTo, true) 2899 && compareDeep(description, o.description, true) && compareDeep(securityLabel, o.securityLabel, true) 2900 && compareDeep(content, o.content, true); 2901 } 2902 2903 @Override 2904 public boolean equalsShallow(Base other_) { 2905 if (!super.equalsShallow(other_)) 2906 return false; 2907 if (!(other_ instanceof DocumentReference)) 2908 return false; 2909 DocumentReference o = (DocumentReference) other_; 2910 return compareValues(version, o.version, true) && compareValues(status, o.status, true) && compareValues(docStatus, o.docStatus, true) 2911 && compareValues(date, o.date, true) && compareValues(description, o.description, true); 2912 } 2913 2914 public boolean isEmpty() { 2915 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, version, basedOn 2916 , status, docStatus, modality, type, category, subject, context, event, bodySite 2917 , facilityType, practiceSetting, period, date, author, attester, custodian, relatesTo 2918 , description, securityLabel, content); 2919 } 2920 2921 @Override 2922 public ResourceType getResourceType() { 2923 return ResourceType.DocumentReference; 2924 } 2925 2926 /** 2927 * Search parameter: <b>attester</b> 2928 * <p> 2929 * Description: <b>Who attested the document</b><br> 2930 * Type: <b>reference</b><br> 2931 * Path: <b>DocumentReference.attester.party</b><br> 2932 * </p> 2933 */ 2934 @SearchParamDefinition(name="attester", path="DocumentReference.attester.party", description="Who attested the document", type="reference", providesMembershipIn={ @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 } ) 2935 public static final String SP_ATTESTER = "attester"; 2936 /** 2937 * <b>Fluent Client</b> search parameter constant for <b>attester</b> 2938 * <p> 2939 * Description: <b>Who attested the document</b><br> 2940 * Type: <b>reference</b><br> 2941 * Path: <b>DocumentReference.attester.party</b><br> 2942 * </p> 2943 */ 2944 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ATTESTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ATTESTER); 2945 2946/** 2947 * Constant for fluent queries to be used to add include statements. Specifies 2948 * the path value of "<b>DocumentReference:attester</b>". 2949 */ 2950 public static final ca.uhn.fhir.model.api.Include INCLUDE_ATTESTER = new ca.uhn.fhir.model.api.Include("DocumentReference:attester").toLocked(); 2951 2952 /** 2953 * Search parameter: <b>author</b> 2954 * <p> 2955 * Description: <b>Who and/or what authored the document</b><br> 2956 * Type: <b>reference</b><br> 2957 * Path: <b>DocumentReference.author</b><br> 2958 * </p> 2959 */ 2960 @SearchParamDefinition(name="author", path="DocumentReference.author", description="Who and/or what authored the document", 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={CareTeam.class, Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 2961 public static final String SP_AUTHOR = "author"; 2962 /** 2963 * <b>Fluent Client</b> search parameter constant for <b>author</b> 2964 * <p> 2965 * Description: <b>Who and/or what authored the document</b><br> 2966 * Type: <b>reference</b><br> 2967 * Path: <b>DocumentReference.author</b><br> 2968 * </p> 2969 */ 2970 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam AUTHOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_AUTHOR); 2971 2972/** 2973 * Constant for fluent queries to be used to add include statements. Specifies 2974 * the path value of "<b>DocumentReference:author</b>". 2975 */ 2976 public static final ca.uhn.fhir.model.api.Include INCLUDE_AUTHOR = new ca.uhn.fhir.model.api.Include("DocumentReference:author").toLocked(); 2977 2978 /** 2979 * Search parameter: <b>based-on</b> 2980 * <p> 2981 * Description: <b>Procedure that caused this media to be created</b><br> 2982 * Type: <b>reference</b><br> 2983 * Path: <b>DocumentReference.basedOn</b><br> 2984 * </p> 2985 */ 2986 @SearchParamDefinition(name="based-on", path="DocumentReference.basedOn", description="Procedure that caused this media to be created", type="reference", target={Appointment.class, AppointmentResponse.class, CarePlan.class, Claim.class, CommunicationRequest.class, Contract.class, CoverageEligibilityRequest.class, DeviceRequest.class, EnrollmentRequest.class, ImmunizationRecommendation.class, MedicationRequest.class, NutritionOrder.class, RequestOrchestration.class, ServiceRequest.class, SupplyRequest.class, VisionPrescription.class } ) 2987 public static final String SP_BASED_ON = "based-on"; 2988 /** 2989 * <b>Fluent Client</b> search parameter constant for <b>based-on</b> 2990 * <p> 2991 * Description: <b>Procedure that caused this media to be created</b><br> 2992 * Type: <b>reference</b><br> 2993 * Path: <b>DocumentReference.basedOn</b><br> 2994 * </p> 2995 */ 2996 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam BASED_ON = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_BASED_ON); 2997 2998/** 2999 * Constant for fluent queries to be used to add include statements. Specifies 3000 * the path value of "<b>DocumentReference:based-on</b>". 3001 */ 3002 public static final ca.uhn.fhir.model.api.Include INCLUDE_BASED_ON = new ca.uhn.fhir.model.api.Include("DocumentReference:based-on").toLocked(); 3003 3004 /** 3005 * Search parameter: <b>bodysite-reference</b> 3006 * <p> 3007 * Description: <b>The body site studied</b><br> 3008 * Type: <b>reference</b><br> 3009 * Path: <b>DocumentReference.bodySite.reference</b><br> 3010 * </p> 3011 */ 3012 @SearchParamDefinition(name="bodysite-reference", path="DocumentReference.bodySite.reference", description="The body site studied", type="reference", target={BodyStructure.class } ) 3013 public static final String SP_BODYSITE_REFERENCE = "bodysite-reference"; 3014 /** 3015 * <b>Fluent Client</b> search parameter constant for <b>bodysite-reference</b> 3016 * <p> 3017 * Description: <b>The body site studied</b><br> 3018 * Type: <b>reference</b><br> 3019 * Path: <b>DocumentReference.bodySite.reference</b><br> 3020 * </p> 3021 */ 3022 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam BODYSITE_REFERENCE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_BODYSITE_REFERENCE); 3023 3024/** 3025 * Constant for fluent queries to be used to add include statements. Specifies 3026 * the path value of "<b>DocumentReference:bodysite-reference</b>". 3027 */ 3028 public static final ca.uhn.fhir.model.api.Include INCLUDE_BODYSITE_REFERENCE = new ca.uhn.fhir.model.api.Include("DocumentReference:bodysite-reference").toLocked(); 3029 3030 /** 3031 * Search parameter: <b>bodysite</b> 3032 * <p> 3033 * Description: <b>The body site studied</b><br> 3034 * Type: <b>token</b><br> 3035 * Path: <b>DocumentReference.bodySite.concept</b><br> 3036 * </p> 3037 */ 3038 @SearchParamDefinition(name="bodysite", path="DocumentReference.bodySite.concept", description="The body site studied", type="token" ) 3039 public static final String SP_BODYSITE = "bodysite"; 3040 /** 3041 * <b>Fluent Client</b> search parameter constant for <b>bodysite</b> 3042 * <p> 3043 * Description: <b>The body site studied</b><br> 3044 * Type: <b>token</b><br> 3045 * Path: <b>DocumentReference.bodySite.concept</b><br> 3046 * </p> 3047 */ 3048 public static final ca.uhn.fhir.rest.gclient.TokenClientParam BODYSITE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_BODYSITE); 3049 3050 /** 3051 * Search parameter: <b>category</b> 3052 * <p> 3053 * Description: <b>Categorization of document</b><br> 3054 * Type: <b>token</b><br> 3055 * Path: <b>DocumentReference.category</b><br> 3056 * </p> 3057 */ 3058 @SearchParamDefinition(name="category", path="DocumentReference.category", description="Categorization of document", type="token" ) 3059 public static final String SP_CATEGORY = "category"; 3060 /** 3061 * <b>Fluent Client</b> search parameter constant for <b>category</b> 3062 * <p> 3063 * Description: <b>Categorization of document</b><br> 3064 * Type: <b>token</b><br> 3065 * Path: <b>DocumentReference.category</b><br> 3066 * </p> 3067 */ 3068 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CATEGORY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CATEGORY); 3069 3070 /** 3071 * Search parameter: <b>contenttype</b> 3072 * <p> 3073 * Description: <b>Mime type of the content, with charset etc.</b><br> 3074 * Type: <b>token</b><br> 3075 * Path: <b>DocumentReference.content.attachment.contentType</b><br> 3076 * </p> 3077 */ 3078 @SearchParamDefinition(name="contenttype", path="DocumentReference.content.attachment.contentType", description="Mime type of the content, with charset etc.", type="token" ) 3079 public static final String SP_CONTENTTYPE = "contenttype"; 3080 /** 3081 * <b>Fluent Client</b> search parameter constant for <b>contenttype</b> 3082 * <p> 3083 * Description: <b>Mime type of the content, with charset etc.</b><br> 3084 * Type: <b>token</b><br> 3085 * Path: <b>DocumentReference.content.attachment.contentType</b><br> 3086 * </p> 3087 */ 3088 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTENTTYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTENTTYPE); 3089 3090 /** 3091 * Search parameter: <b>context</b> 3092 * <p> 3093 * Description: <b>Context of the document content</b><br> 3094 * Type: <b>reference</b><br> 3095 * Path: <b>DocumentReference.context</b><br> 3096 * </p> 3097 */ 3098 @SearchParamDefinition(name="context", path="DocumentReference.context", description="Context of the document content", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Encounter") }, target={Appointment.class, Encounter.class, EpisodeOfCare.class } ) 3099 public static final String SP_CONTEXT = "context"; 3100 /** 3101 * <b>Fluent Client</b> search parameter constant for <b>context</b> 3102 * <p> 3103 * Description: <b>Context of the document content</b><br> 3104 * Type: <b>reference</b><br> 3105 * Path: <b>DocumentReference.context</b><br> 3106 * </p> 3107 */ 3108 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_CONTEXT); 3109 3110/** 3111 * Constant for fluent queries to be used to add include statements. Specifies 3112 * the path value of "<b>DocumentReference:context</b>". 3113 */ 3114 public static final ca.uhn.fhir.model.api.Include INCLUDE_CONTEXT = new ca.uhn.fhir.model.api.Include("DocumentReference:context").toLocked(); 3115 3116 /** 3117 * Search parameter: <b>creation</b> 3118 * <p> 3119 * Description: <b>Date attachment was first created</b><br> 3120 * Type: <b>date</b><br> 3121 * Path: <b>DocumentReference.content.attachment.creation</b><br> 3122 * </p> 3123 */ 3124 @SearchParamDefinition(name="creation", path="DocumentReference.content.attachment.creation", description="Date attachment was first created", type="date" ) 3125 public static final String SP_CREATION = "creation"; 3126 /** 3127 * <b>Fluent Client</b> search parameter constant for <b>creation</b> 3128 * <p> 3129 * Description: <b>Date attachment was first created</b><br> 3130 * Type: <b>date</b><br> 3131 * Path: <b>DocumentReference.content.attachment.creation</b><br> 3132 * </p> 3133 */ 3134 public static final ca.uhn.fhir.rest.gclient.DateClientParam CREATION = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_CREATION); 3135 3136 /** 3137 * Search parameter: <b>custodian</b> 3138 * <p> 3139 * Description: <b>Organization which maintains the document</b><br> 3140 * Type: <b>reference</b><br> 3141 * Path: <b>DocumentReference.custodian</b><br> 3142 * </p> 3143 */ 3144 @SearchParamDefinition(name="custodian", path="DocumentReference.custodian", description="Organization which maintains the document", type="reference", target={Organization.class } ) 3145 public static final String SP_CUSTODIAN = "custodian"; 3146 /** 3147 * <b>Fluent Client</b> search parameter constant for <b>custodian</b> 3148 * <p> 3149 * Description: <b>Organization which maintains the document</b><br> 3150 * Type: <b>reference</b><br> 3151 * Path: <b>DocumentReference.custodian</b><br> 3152 * </p> 3153 */ 3154 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam CUSTODIAN = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_CUSTODIAN); 3155 3156/** 3157 * Constant for fluent queries to be used to add include statements. Specifies 3158 * the path value of "<b>DocumentReference:custodian</b>". 3159 */ 3160 public static final ca.uhn.fhir.model.api.Include INCLUDE_CUSTODIAN = new ca.uhn.fhir.model.api.Include("DocumentReference:custodian").toLocked(); 3161 3162 /** 3163 * Search parameter: <b>description</b> 3164 * <p> 3165 * Description: <b>Human-readable description</b><br> 3166 * Type: <b>string</b><br> 3167 * Path: <b>DocumentReference.description</b><br> 3168 * </p> 3169 */ 3170 @SearchParamDefinition(name="description", path="DocumentReference.description", description="Human-readable description", type="string" ) 3171 public static final String SP_DESCRIPTION = "description"; 3172 /** 3173 * <b>Fluent Client</b> search parameter constant for <b>description</b> 3174 * <p> 3175 * Description: <b>Human-readable description</b><br> 3176 * Type: <b>string</b><br> 3177 * Path: <b>DocumentReference.description</b><br> 3178 * </p> 3179 */ 3180 public static final ca.uhn.fhir.rest.gclient.StringClientParam DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_DESCRIPTION); 3181 3182 /** 3183 * Search parameter: <b>doc-status</b> 3184 * <p> 3185 * Description: <b>preliminary | final | amended | entered-in-error</b><br> 3186 * Type: <b>token</b><br> 3187 * Path: <b>DocumentReference.docStatus</b><br> 3188 * </p> 3189 */ 3190 @SearchParamDefinition(name="doc-status", path="DocumentReference.docStatus", description="preliminary | final | amended | entered-in-error", type="token" ) 3191 public static final String SP_DOC_STATUS = "doc-status"; 3192 /** 3193 * <b>Fluent Client</b> search parameter constant for <b>doc-status</b> 3194 * <p> 3195 * Description: <b>preliminary | final | amended | entered-in-error</b><br> 3196 * Type: <b>token</b><br> 3197 * Path: <b>DocumentReference.docStatus</b><br> 3198 * </p> 3199 */ 3200 public static final ca.uhn.fhir.rest.gclient.TokenClientParam DOC_STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_DOC_STATUS); 3201 3202 /** 3203 * Search parameter: <b>event-code</b> 3204 * <p> 3205 * Description: <b>Main clinical acts documented</b><br> 3206 * Type: <b>token</b><br> 3207 * Path: <b>DocumentReference.event.concept</b><br> 3208 * </p> 3209 */ 3210 @SearchParamDefinition(name="event-code", path="DocumentReference.event.concept", description="Main clinical acts documented", type="token" ) 3211 public static final String SP_EVENT_CODE = "event-code"; 3212 /** 3213 * <b>Fluent Client</b> search parameter constant for <b>event-code</b> 3214 * <p> 3215 * Description: <b>Main clinical acts documented</b><br> 3216 * Type: <b>token</b><br> 3217 * Path: <b>DocumentReference.event.concept</b><br> 3218 * </p> 3219 */ 3220 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EVENT_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EVENT_CODE); 3221 3222 /** 3223 * Search parameter: <b>event-reference</b> 3224 * <p> 3225 * Description: <b>Main clinical acts documented</b><br> 3226 * Type: <b>reference</b><br> 3227 * Path: <b>DocumentReference.event.reference</b><br> 3228 * </p> 3229 */ 3230 @SearchParamDefinition(name="event-reference", path="DocumentReference.event.reference", description="Main clinical acts documented", 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 } ) 3231 public static final String SP_EVENT_REFERENCE = "event-reference"; 3232 /** 3233 * <b>Fluent Client</b> search parameter constant for <b>event-reference</b> 3234 * <p> 3235 * Description: <b>Main clinical acts documented</b><br> 3236 * Type: <b>reference</b><br> 3237 * Path: <b>DocumentReference.event.reference</b><br> 3238 * </p> 3239 */ 3240 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam EVENT_REFERENCE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_EVENT_REFERENCE); 3241 3242/** 3243 * Constant for fluent queries to be used to add include statements. Specifies 3244 * the path value of "<b>DocumentReference:event-reference</b>". 3245 */ 3246 public static final ca.uhn.fhir.model.api.Include INCLUDE_EVENT_REFERENCE = new ca.uhn.fhir.model.api.Include("DocumentReference:event-reference").toLocked(); 3247 3248 /** 3249 * Search parameter: <b>facility</b> 3250 * <p> 3251 * Description: <b>Kind of facility where patient was seen</b><br> 3252 * Type: <b>token</b><br> 3253 * Path: <b>DocumentReference.facilityType</b><br> 3254 * </p> 3255 */ 3256 @SearchParamDefinition(name="facility", path="DocumentReference.facilityType", description="Kind of facility where patient was seen", type="token" ) 3257 public static final String SP_FACILITY = "facility"; 3258 /** 3259 * <b>Fluent Client</b> search parameter constant for <b>facility</b> 3260 * <p> 3261 * Description: <b>Kind of facility where patient was seen</b><br> 3262 * Type: <b>token</b><br> 3263 * Path: <b>DocumentReference.facilityType</b><br> 3264 * </p> 3265 */ 3266 public static final ca.uhn.fhir.rest.gclient.TokenClientParam FACILITY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_FACILITY); 3267 3268 /** 3269 * Search parameter: <b>format-canonical</b> 3270 * <p> 3271 * Description: <b>Profile canonical content rules for the document</b><br> 3272 * Type: <b>reference</b><br> 3273 * Path: <b>(DocumentReference.content.profile.value.ofType(canonical))</b><br> 3274 * </p> 3275 */ 3276 @SearchParamDefinition(name="format-canonical", path="(DocumentReference.content.profile.value.ofType(canonical))", description="Profile canonical content rules for the document", type="reference", target={ActivityDefinition.class, ActorDefinition.class, CapabilityStatement.class, ChargeItemDefinition.class, Citation.class, CodeSystem.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, ConditionDefinition.class, Contract.class, Device.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, GraphDefinition.class, ImplementationGuide.class, Library.class, Measure.class, MessageDefinition.class, NamingSystem.class, ObservationDefinition.class, OperationDefinition.class, PlanDefinition.class, Questionnaire.class, Requirements.class, ResearchStudy.class, SearchParameter.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, SubscriptionTopic.class, TerminologyCapabilities.class, TestPlan.class, TestScript.class, ValueSet.class } ) 3277 public static final String SP_FORMAT_CANONICAL = "format-canonical"; 3278 /** 3279 * <b>Fluent Client</b> search parameter constant for <b>format-canonical</b> 3280 * <p> 3281 * Description: <b>Profile canonical content rules for the document</b><br> 3282 * Type: <b>reference</b><br> 3283 * Path: <b>(DocumentReference.content.profile.value.ofType(canonical))</b><br> 3284 * </p> 3285 */ 3286 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam FORMAT_CANONICAL = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_FORMAT_CANONICAL); 3287 3288/** 3289 * Constant for fluent queries to be used to add include statements. Specifies 3290 * the path value of "<b>DocumentReference:format-canonical</b>". 3291 */ 3292 public static final ca.uhn.fhir.model.api.Include INCLUDE_FORMAT_CANONICAL = new ca.uhn.fhir.model.api.Include("DocumentReference:format-canonical").toLocked(); 3293 3294 /** 3295 * Search parameter: <b>format-code</b> 3296 * <p> 3297 * Description: <b>Format code content rules for the document</b><br> 3298 * Type: <b>token</b><br> 3299 * Path: <b>(DocumentReference.content.profile.value.ofType(Coding))</b><br> 3300 * </p> 3301 */ 3302 @SearchParamDefinition(name="format-code", path="(DocumentReference.content.profile.value.ofType(Coding))", description="Format code content rules for the document", type="token" ) 3303 public static final String SP_FORMAT_CODE = "format-code"; 3304 /** 3305 * <b>Fluent Client</b> search parameter constant for <b>format-code</b> 3306 * <p> 3307 * Description: <b>Format code content rules for the document</b><br> 3308 * Type: <b>token</b><br> 3309 * Path: <b>(DocumentReference.content.profile.value.ofType(Coding))</b><br> 3310 * </p> 3311 */ 3312 public static final ca.uhn.fhir.rest.gclient.TokenClientParam FORMAT_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_FORMAT_CODE); 3313 3314 /** 3315 * Search parameter: <b>format-uri</b> 3316 * <p> 3317 * Description: <b>Profile URI content rules for the document</b><br> 3318 * Type: <b>uri</b><br> 3319 * Path: <b>(DocumentReference.content.profile.value.ofType(uri))</b><br> 3320 * </p> 3321 */ 3322 @SearchParamDefinition(name="format-uri", path="(DocumentReference.content.profile.value.ofType(uri))", description="Profile URI content rules for the document", type="uri" ) 3323 public static final String SP_FORMAT_URI = "format-uri"; 3324 /** 3325 * <b>Fluent Client</b> search parameter constant for <b>format-uri</b> 3326 * <p> 3327 * Description: <b>Profile URI content rules for the document</b><br> 3328 * Type: <b>uri</b><br> 3329 * Path: <b>(DocumentReference.content.profile.value.ofType(uri))</b><br> 3330 * </p> 3331 */ 3332 public static final ca.uhn.fhir.rest.gclient.UriClientParam FORMAT_URI = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_FORMAT_URI); 3333 3334 /** 3335 * Search parameter: <b>language</b> 3336 * <p> 3337 * Description: <b>Human language of the content (BCP-47)</b><br> 3338 * Type: <b>token</b><br> 3339 * Path: <b>DocumentReference.content.attachment.language</b><br> 3340 * </p> 3341 */ 3342 @SearchParamDefinition(name="language", path="DocumentReference.content.attachment.language", description="Human language of the content (BCP-47)", type="token" ) 3343 public static final String SP_LANGUAGE = "language"; 3344 /** 3345 * <b>Fluent Client</b> search parameter constant for <b>language</b> 3346 * <p> 3347 * Description: <b>Human language of the content (BCP-47)</b><br> 3348 * Type: <b>token</b><br> 3349 * Path: <b>DocumentReference.content.attachment.language</b><br> 3350 * </p> 3351 */ 3352 public static final ca.uhn.fhir.rest.gclient.TokenClientParam LANGUAGE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_LANGUAGE); 3353 3354 /** 3355 * Search parameter: <b>location</b> 3356 * <p> 3357 * Description: <b>Uri where the data can be found</b><br> 3358 * Type: <b>uri</b><br> 3359 * Path: <b>DocumentReference.content.attachment.url</b><br> 3360 * </p> 3361 */ 3362 @SearchParamDefinition(name="location", path="DocumentReference.content.attachment.url", description="Uri where the data can be found", type="uri" ) 3363 public static final String SP_LOCATION = "location"; 3364 /** 3365 * <b>Fluent Client</b> search parameter constant for <b>location</b> 3366 * <p> 3367 * Description: <b>Uri where the data can be found</b><br> 3368 * Type: <b>uri</b><br> 3369 * Path: <b>DocumentReference.content.attachment.url</b><br> 3370 * </p> 3371 */ 3372 public static final ca.uhn.fhir.rest.gclient.UriClientParam LOCATION = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_LOCATION); 3373 3374 /** 3375 * Search parameter: <b>modality</b> 3376 * <p> 3377 * Description: <b>The modality used</b><br> 3378 * Type: <b>token</b><br> 3379 * Path: <b>DocumentReference.modality</b><br> 3380 * </p> 3381 */ 3382 @SearchParamDefinition(name="modality", path="DocumentReference.modality", description="The modality used", type="token" ) 3383 public static final String SP_MODALITY = "modality"; 3384 /** 3385 * <b>Fluent Client</b> search parameter constant for <b>modality</b> 3386 * <p> 3387 * Description: <b>The modality used</b><br> 3388 * Type: <b>token</b><br> 3389 * Path: <b>DocumentReference.modality</b><br> 3390 * </p> 3391 */ 3392 public static final ca.uhn.fhir.rest.gclient.TokenClientParam MODALITY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_MODALITY); 3393 3394 /** 3395 * Search parameter: <b>period</b> 3396 * <p> 3397 * Description: <b>Time of service that is being documented</b><br> 3398 * Type: <b>date</b><br> 3399 * Path: <b>DocumentReference.period</b><br> 3400 * </p> 3401 */ 3402 @SearchParamDefinition(name="period", path="DocumentReference.period", description="Time of service that is being documented", type="date" ) 3403 public static final String SP_PERIOD = "period"; 3404 /** 3405 * <b>Fluent Client</b> search parameter constant for <b>period</b> 3406 * <p> 3407 * Description: <b>Time of service that is being documented</b><br> 3408 * Type: <b>date</b><br> 3409 * Path: <b>DocumentReference.period</b><br> 3410 * </p> 3411 */ 3412 public static final ca.uhn.fhir.rest.gclient.DateClientParam PERIOD = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_PERIOD); 3413 3414 /** 3415 * Search parameter: <b>relatesto</b> 3416 * <p> 3417 * Description: <b>Target of the relationship</b><br> 3418 * Type: <b>reference</b><br> 3419 * Path: <b>DocumentReference.relatesTo.target</b><br> 3420 * </p> 3421 */ 3422 @SearchParamDefinition(name="relatesto", path="DocumentReference.relatesTo.target", description="Target of the relationship", type="reference", target={DocumentReference.class } ) 3423 public static final String SP_RELATESTO = "relatesto"; 3424 /** 3425 * <b>Fluent Client</b> search parameter constant for <b>relatesto</b> 3426 * <p> 3427 * Description: <b>Target of the relationship</b><br> 3428 * Type: <b>reference</b><br> 3429 * Path: <b>DocumentReference.relatesTo.target</b><br> 3430 * </p> 3431 */ 3432 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam RELATESTO = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_RELATESTO); 3433 3434/** 3435 * Constant for fluent queries to be used to add include statements. Specifies 3436 * the path value of "<b>DocumentReference:relatesto</b>". 3437 */ 3438 public static final ca.uhn.fhir.model.api.Include INCLUDE_RELATESTO = new ca.uhn.fhir.model.api.Include("DocumentReference:relatesto").toLocked(); 3439 3440 /** 3441 * Search parameter: <b>relation</b> 3442 * <p> 3443 * Description: <b>replaces | transforms | signs | appends</b><br> 3444 * Type: <b>token</b><br> 3445 * Path: <b>DocumentReference.relatesTo.code</b><br> 3446 * </p> 3447 */ 3448 @SearchParamDefinition(name="relation", path="DocumentReference.relatesTo.code", description="replaces | transforms | signs | appends", type="token" ) 3449 public static final String SP_RELATION = "relation"; 3450 /** 3451 * <b>Fluent Client</b> search parameter constant for <b>relation</b> 3452 * <p> 3453 * Description: <b>replaces | transforms | signs | appends</b><br> 3454 * Type: <b>token</b><br> 3455 * Path: <b>DocumentReference.relatesTo.code</b><br> 3456 * </p> 3457 */ 3458 public static final ca.uhn.fhir.rest.gclient.TokenClientParam RELATION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_RELATION); 3459 3460 /** 3461 * Search parameter: <b>relationship</b> 3462 * <p> 3463 * Description: <b>Combination of relation and relatesTo</b><br> 3464 * Type: <b>composite</b><br> 3465 * Path: <b>DocumentReference.relatesTo</b><br> 3466 * </p> 3467 */ 3468 @SearchParamDefinition(name="relationship", path="DocumentReference.relatesTo", description="Combination of relation and relatesTo", type="composite", compositeOf={"relatesto", "relation"} ) 3469 public static final String SP_RELATIONSHIP = "relationship"; 3470 /** 3471 * <b>Fluent Client</b> search parameter constant for <b>relationship</b> 3472 * <p> 3473 * Description: <b>Combination of relation and relatesTo</b><br> 3474 * Type: <b>composite</b><br> 3475 * Path: <b>DocumentReference.relatesTo</b><br> 3476 * </p> 3477 */ 3478 public static final ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.ReferenceClientParam, ca.uhn.fhir.rest.gclient.TokenClientParam> RELATIONSHIP = new ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.ReferenceClientParam, ca.uhn.fhir.rest.gclient.TokenClientParam>(SP_RELATIONSHIP); 3479 3480 /** 3481 * Search parameter: <b>security-label</b> 3482 * <p> 3483 * Description: <b>Document security-tags</b><br> 3484 * Type: <b>token</b><br> 3485 * Path: <b>DocumentReference.securityLabel</b><br> 3486 * </p> 3487 */ 3488 @SearchParamDefinition(name="security-label", path="DocumentReference.securityLabel", description="Document security-tags", type="token" ) 3489 public static final String SP_SECURITY_LABEL = "security-label"; 3490 /** 3491 * <b>Fluent Client</b> search parameter constant for <b>security-label</b> 3492 * <p> 3493 * Description: <b>Document security-tags</b><br> 3494 * Type: <b>token</b><br> 3495 * Path: <b>DocumentReference.securityLabel</b><br> 3496 * </p> 3497 */ 3498 public static final ca.uhn.fhir.rest.gclient.TokenClientParam SECURITY_LABEL = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_SECURITY_LABEL); 3499 3500 /** 3501 * Search parameter: <b>setting</b> 3502 * <p> 3503 * Description: <b>Additional details about where the content was created (e.g. clinical specialty)</b><br> 3504 * Type: <b>token</b><br> 3505 * Path: <b>DocumentReference.practiceSetting</b><br> 3506 * </p> 3507 */ 3508 @SearchParamDefinition(name="setting", path="DocumentReference.practiceSetting", description="Additional details about where the content was created (e.g. clinical specialty)", type="token" ) 3509 public static final String SP_SETTING = "setting"; 3510 /** 3511 * <b>Fluent Client</b> search parameter constant for <b>setting</b> 3512 * <p> 3513 * Description: <b>Additional details about where the content was created (e.g. clinical specialty)</b><br> 3514 * Type: <b>token</b><br> 3515 * Path: <b>DocumentReference.practiceSetting</b><br> 3516 * </p> 3517 */ 3518 public static final ca.uhn.fhir.rest.gclient.TokenClientParam SETTING = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_SETTING); 3519 3520 /** 3521 * Search parameter: <b>status</b> 3522 * <p> 3523 * Description: <b>current | superseded | entered-in-error</b><br> 3524 * Type: <b>token</b><br> 3525 * Path: <b>DocumentReference.status</b><br> 3526 * </p> 3527 */ 3528 @SearchParamDefinition(name="status", path="DocumentReference.status", description="current | superseded | entered-in-error", type="token" ) 3529 public static final String SP_STATUS = "status"; 3530 /** 3531 * <b>Fluent Client</b> search parameter constant for <b>status</b> 3532 * <p> 3533 * Description: <b>current | superseded | entered-in-error</b><br> 3534 * Type: <b>token</b><br> 3535 * Path: <b>DocumentReference.status</b><br> 3536 * </p> 3537 */ 3538 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 3539 3540 /** 3541 * Search parameter: <b>subject</b> 3542 * <p> 3543 * Description: <b>Who/what is the subject of the document</b><br> 3544 * Type: <b>reference</b><br> 3545 * Path: <b>DocumentReference.subject</b><br> 3546 * </p> 3547 */ 3548 @SearchParamDefinition(name="subject", path="DocumentReference.subject", description="Who/what is the subject of the document", 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") }, 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 } ) 3549 public static final String SP_SUBJECT = "subject"; 3550 /** 3551 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 3552 * <p> 3553 * Description: <b>Who/what is the subject of the document</b><br> 3554 * Type: <b>reference</b><br> 3555 * Path: <b>DocumentReference.subject</b><br> 3556 * </p> 3557 */ 3558 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 3559 3560/** 3561 * Constant for fluent queries to be used to add include statements. Specifies 3562 * the path value of "<b>DocumentReference:subject</b>". 3563 */ 3564 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("DocumentReference:subject").toLocked(); 3565 3566 /** 3567 * Search parameter: <b>version</b> 3568 * <p> 3569 * Description: <b>The business version identifier</b><br> 3570 * Type: <b>string</b><br> 3571 * Path: <b>DocumentReference.version</b><br> 3572 * </p> 3573 */ 3574 @SearchParamDefinition(name="version", path="DocumentReference.version", description="The business version identifier", type="string" ) 3575 public static final String SP_VERSION = "version"; 3576 /** 3577 * <b>Fluent Client</b> search parameter constant for <b>version</b> 3578 * <p> 3579 * Description: <b>The business version identifier</b><br> 3580 * Type: <b>string</b><br> 3581 * Path: <b>DocumentReference.version</b><br> 3582 * </p> 3583 */ 3584 public static final ca.uhn.fhir.rest.gclient.StringClientParam VERSION = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_VERSION); 3585 3586 /** 3587 * Search parameter: <b>date</b> 3588 * <p> 3589 * Description: <b>Multiple Resources: 3590 3591* [AdverseEvent](adverseevent.html): When the event occurred 3592* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded 3593* [Appointment](appointment.html): Appointment date/time. 3594* [AuditEvent](auditevent.html): Time when the event was recorded 3595* [CarePlan](careplan.html): Time period plan covers 3596* [CareTeam](careteam.html): A date within the coverage time period. 3597* [ClinicalImpression](clinicalimpression.html): When the assessment was documented 3598* [Composition](composition.html): Composition editing time 3599* [Consent](consent.html): When consent was agreed to 3600* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report 3601* [DocumentReference](documentreference.html): When this document reference was created 3602* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted 3603* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period 3604* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated 3605* [Flag](flag.html): Time period when flag is active 3606* [Immunization](immunization.html): Vaccination (non)-Administration Date 3607* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated 3608* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created 3609* [Invoice](invoice.html): Invoice date / posting date 3610* [List](list.html): When the list was prepared 3611* [MeasureReport](measurereport.html): The date of the measure report 3612* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication 3613* [Observation](observation.html): Clinically relevant time/time-period for observation 3614* [Procedure](procedure.html): When the procedure occurred or is occurring 3615* [ResearchSubject](researchsubject.html): Start and end of participation 3616* [RiskAssessment](riskassessment.html): When was assessment made? 3617* [SupplyRequest](supplyrequest.html): When the request was made 3618</b><br> 3619 * Type: <b>date</b><br> 3620 * 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> 3621 * </p> 3622 */ 3623 @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" ) 3624 public static final String SP_DATE = "date"; 3625 /** 3626 * <b>Fluent Client</b> search parameter constant for <b>date</b> 3627 * <p> 3628 * Description: <b>Multiple Resources: 3629 3630* [AdverseEvent](adverseevent.html): When the event occurred 3631* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded 3632* [Appointment](appointment.html): Appointment date/time. 3633* [AuditEvent](auditevent.html): Time when the event was recorded 3634* [CarePlan](careplan.html): Time period plan covers 3635* [CareTeam](careteam.html): A date within the coverage time period. 3636* [ClinicalImpression](clinicalimpression.html): When the assessment was documented 3637* [Composition](composition.html): Composition editing time 3638* [Consent](consent.html): When consent was agreed to 3639* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report 3640* [DocumentReference](documentreference.html): When this document reference was created 3641* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted 3642* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period 3643* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated 3644* [Flag](flag.html): Time period when flag is active 3645* [Immunization](immunization.html): Vaccination (non)-Administration Date 3646* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated 3647* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created 3648* [Invoice](invoice.html): Invoice date / posting date 3649* [List](list.html): When the list was prepared 3650* [MeasureReport](measurereport.html): The date of the measure report 3651* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication 3652* [Observation](observation.html): Clinically relevant time/time-period for observation 3653* [Procedure](procedure.html): When the procedure occurred or is occurring 3654* [ResearchSubject](researchsubject.html): Start and end of participation 3655* [RiskAssessment](riskassessment.html): When was assessment made? 3656* [SupplyRequest](supplyrequest.html): When the request was made 3657</b><br> 3658 * Type: <b>date</b><br> 3659 * 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> 3660 * </p> 3661 */ 3662 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 3663 3664 /** 3665 * Search parameter: <b>identifier</b> 3666 * <p> 3667 * Description: <b>Multiple Resources: 3668 3669* [Account](account.html): Account number 3670* [AdverseEvent](adverseevent.html): Business identifier for the event 3671* [AllergyIntolerance](allergyintolerance.html): External ids for this item 3672* [Appointment](appointment.html): An Identifier of the Appointment 3673* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 3674* [Basic](basic.html): Business identifier 3675* [BodyStructure](bodystructure.html): Bodystructure identifier 3676* [CarePlan](careplan.html): External Ids for this plan 3677* [CareTeam](careteam.html): External Ids for this team 3678* [ChargeItem](chargeitem.html): Business Identifier for item 3679* [Claim](claim.html): The primary identifier of the financial resource 3680* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 3681* [ClinicalImpression](clinicalimpression.html): Business identifier 3682* [Communication](communication.html): Unique identifier 3683* [CommunicationRequest](communicationrequest.html): Unique identifier 3684* [Composition](composition.html): Version-independent identifier for the Composition 3685* [Condition](condition.html): A unique identifier of the condition record 3686* [Consent](consent.html): Identifier for this record (external references) 3687* [Contract](contract.html): The identity of the contract 3688* [Coverage](coverage.html): The primary identifier of the insured and the coverage 3689* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 3690* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 3691* [DetectedIssue](detectedissue.html): Unique id for the detected issue 3692* [DeviceRequest](devicerequest.html): Business identifier for request/order 3693* [DeviceUsage](deviceusage.html): Search by identifier 3694* [DiagnosticReport](diagnosticreport.html): An identifier for the report 3695* [DocumentReference](documentreference.html): Identifier of the attachment binary 3696* [Encounter](encounter.html): Identifier(s) by which this encounter is known 3697* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 3698* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 3699* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 3700* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 3701* [Flag](flag.html): Business identifier 3702* [Goal](goal.html): External Ids for this goal 3703* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 3704* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 3705* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 3706* [Immunization](immunization.html): Business identifier 3707* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 3708* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 3709* [Invoice](invoice.html): Business Identifier for item 3710* [List](list.html): Business identifier 3711* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 3712* [Medication](medication.html): Returns medications with this external identifier 3713* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 3714* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 3715* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 3716* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 3717* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 3718* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 3719* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 3720* [Observation](observation.html): The unique id for a particular observation 3721* [Person](person.html): A person Identifier 3722* [Procedure](procedure.html): A unique identifier for a procedure 3723* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 3724* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 3725* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 3726* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 3727* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 3728* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 3729* [Specimen](specimen.html): The unique identifier associated with the specimen 3730* [SupplyDelivery](supplydelivery.html): External identifier 3731* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 3732* [Task](task.html): Search for a task instance by its business identifier 3733* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 3734</b><br> 3735 * Type: <b>token</b><br> 3736 * 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> 3737 * </p> 3738 */ 3739 @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" ) 3740 public static final String SP_IDENTIFIER = "identifier"; 3741 /** 3742 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 3743 * <p> 3744 * Description: <b>Multiple Resources: 3745 3746* [Account](account.html): Account number 3747* [AdverseEvent](adverseevent.html): Business identifier for the event 3748* [AllergyIntolerance](allergyintolerance.html): External ids for this item 3749* [Appointment](appointment.html): An Identifier of the Appointment 3750* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 3751* [Basic](basic.html): Business identifier 3752* [BodyStructure](bodystructure.html): Bodystructure identifier 3753* [CarePlan](careplan.html): External Ids for this plan 3754* [CareTeam](careteam.html): External Ids for this team 3755* [ChargeItem](chargeitem.html): Business Identifier for item 3756* [Claim](claim.html): The primary identifier of the financial resource 3757* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 3758* [ClinicalImpression](clinicalimpression.html): Business identifier 3759* [Communication](communication.html): Unique identifier 3760* [CommunicationRequest](communicationrequest.html): Unique identifier 3761* [Composition](composition.html): Version-independent identifier for the Composition 3762* [Condition](condition.html): A unique identifier of the condition record 3763* [Consent](consent.html): Identifier for this record (external references) 3764* [Contract](contract.html): The identity of the contract 3765* [Coverage](coverage.html): The primary identifier of the insured and the coverage 3766* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 3767* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 3768* [DetectedIssue](detectedissue.html): Unique id for the detected issue 3769* [DeviceRequest](devicerequest.html): Business identifier for request/order 3770* [DeviceUsage](deviceusage.html): Search by identifier 3771* [DiagnosticReport](diagnosticreport.html): An identifier for the report 3772* [DocumentReference](documentreference.html): Identifier of the attachment binary 3773* [Encounter](encounter.html): Identifier(s) by which this encounter is known 3774* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 3775* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 3776* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 3777* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 3778* [Flag](flag.html): Business identifier 3779* [Goal](goal.html): External Ids for this goal 3780* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 3781* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 3782* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 3783* [Immunization](immunization.html): Business identifier 3784* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 3785* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 3786* [Invoice](invoice.html): Business Identifier for item 3787* [List](list.html): Business identifier 3788* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 3789* [Medication](medication.html): Returns medications with this external identifier 3790* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 3791* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 3792* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 3793* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 3794* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 3795* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 3796* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 3797* [Observation](observation.html): The unique id for a particular observation 3798* [Person](person.html): A person Identifier 3799* [Procedure](procedure.html): A unique identifier for a procedure 3800* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 3801* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 3802* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 3803* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 3804* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 3805* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 3806* [Specimen](specimen.html): The unique identifier associated with the specimen 3807* [SupplyDelivery](supplydelivery.html): External identifier 3808* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 3809* [Task](task.html): Search for a task instance by its business identifier 3810* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 3811</b><br> 3812 * Type: <b>token</b><br> 3813 * 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> 3814 * </p> 3815 */ 3816 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 3817 3818 /** 3819 * Search parameter: <b>patient</b> 3820 * <p> 3821 * Description: <b>Multiple Resources: 3822 3823* [Account](account.html): The entity that caused the expenses 3824* [AdverseEvent](adverseevent.html): Subject impacted by event 3825* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 3826* [Appointment](appointment.html): One of the individuals of the appointment is this patient 3827* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 3828* [AuditEvent](auditevent.html): Where the activity involved patient data 3829* [Basic](basic.html): Identifies the focus of this resource 3830* [BodyStructure](bodystructure.html): Who this is about 3831* [CarePlan](careplan.html): Who the care plan is for 3832* [CareTeam](careteam.html): Who care team is for 3833* [ChargeItem](chargeitem.html): Individual service was done for/to 3834* [Claim](claim.html): Patient receiving the products or services 3835* [ClaimResponse](claimresponse.html): The subject of care 3836* [ClinicalImpression](clinicalimpression.html): Patient assessed 3837* [Communication](communication.html): Focus of message 3838* [CommunicationRequest](communicationrequest.html): Focus of message 3839* [Composition](composition.html): Who and/or what the composition is about 3840* [Condition](condition.html): Who has the condition? 3841* [Consent](consent.html): Who the consent applies to 3842* [Contract](contract.html): The identity of the subject of the contract (if a patient) 3843* [Coverage](coverage.html): Retrieve coverages for a patient 3844* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 3845* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 3846* [DetectedIssue](detectedissue.html): Associated patient 3847* [DeviceRequest](devicerequest.html): Individual the service is ordered for 3848* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 3849* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 3850* [DocumentReference](documentreference.html): Who/what is the subject of the document 3851* [Encounter](encounter.html): The patient present at the encounter 3852* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 3853* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 3854* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 3855* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 3856* [Flag](flag.html): The identity of a subject to list flags for 3857* [Goal](goal.html): Who this goal is intended for 3858* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 3859* [ImagingSelection](imagingselection.html): Who the study is about 3860* [ImagingStudy](imagingstudy.html): Who the study is about 3861* [Immunization](immunization.html): The patient for the vaccination record 3862* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 3863* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 3864* [Invoice](invoice.html): Recipient(s) of goods and services 3865* [List](list.html): If all resources have the same subject 3866* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 3867* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 3868* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 3869* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 3870* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 3871* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 3872* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 3873* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 3874* [Observation](observation.html): The subject that the observation is about (if patient) 3875* [Person](person.html): The Person links to this Patient 3876* [Procedure](procedure.html): Search by subject - a patient 3877* [Provenance](provenance.html): Where the activity involved patient data 3878* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 3879* [RelatedPerson](relatedperson.html): The patient this related person is related to 3880* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 3881* [ResearchSubject](researchsubject.html): Who or what is part of study 3882* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 3883* [ServiceRequest](servicerequest.html): Search by subject - a patient 3884* [Specimen](specimen.html): The patient the specimen comes from 3885* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 3886* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 3887* [Task](task.html): Search by patient 3888* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 3889</b><br> 3890 * Type: <b>reference</b><br> 3891 * 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> 3892 * </p> 3893 */ 3894 @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 } ) 3895 public static final String SP_PATIENT = "patient"; 3896 /** 3897 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 3898 * <p> 3899 * Description: <b>Multiple Resources: 3900 3901* [Account](account.html): The entity that caused the expenses 3902* [AdverseEvent](adverseevent.html): Subject impacted by event 3903* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 3904* [Appointment](appointment.html): One of the individuals of the appointment is this patient 3905* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 3906* [AuditEvent](auditevent.html): Where the activity involved patient data 3907* [Basic](basic.html): Identifies the focus of this resource 3908* [BodyStructure](bodystructure.html): Who this is about 3909* [CarePlan](careplan.html): Who the care plan is for 3910* [CareTeam](careteam.html): Who care team is for 3911* [ChargeItem](chargeitem.html): Individual service was done for/to 3912* [Claim](claim.html): Patient receiving the products or services 3913* [ClaimResponse](claimresponse.html): The subject of care 3914* [ClinicalImpression](clinicalimpression.html): Patient assessed 3915* [Communication](communication.html): Focus of message 3916* [CommunicationRequest](communicationrequest.html): Focus of message 3917* [Composition](composition.html): Who and/or what the composition is about 3918* [Condition](condition.html): Who has the condition? 3919* [Consent](consent.html): Who the consent applies to 3920* [Contract](contract.html): The identity of the subject of the contract (if a patient) 3921* [Coverage](coverage.html): Retrieve coverages for a patient 3922* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 3923* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 3924* [DetectedIssue](detectedissue.html): Associated patient 3925* [DeviceRequest](devicerequest.html): Individual the service is ordered for 3926* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 3927* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 3928* [DocumentReference](documentreference.html): Who/what is the subject of the document 3929* [Encounter](encounter.html): The patient present at the encounter 3930* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 3931* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 3932* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 3933* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 3934* [Flag](flag.html): The identity of a subject to list flags for 3935* [Goal](goal.html): Who this goal is intended for 3936* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 3937* [ImagingSelection](imagingselection.html): Who the study is about 3938* [ImagingStudy](imagingstudy.html): Who the study is about 3939* [Immunization](immunization.html): The patient for the vaccination record 3940* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 3941* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 3942* [Invoice](invoice.html): Recipient(s) of goods and services 3943* [List](list.html): If all resources have the same subject 3944* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 3945* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 3946* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 3947* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 3948* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 3949* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 3950* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 3951* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 3952* [Observation](observation.html): The subject that the observation is about (if patient) 3953* [Person](person.html): The Person links to this Patient 3954* [Procedure](procedure.html): Search by subject - a patient 3955* [Provenance](provenance.html): Where the activity involved patient data 3956* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 3957* [RelatedPerson](relatedperson.html): The patient this related person is related to 3958* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 3959* [ResearchSubject](researchsubject.html): Who or what is part of study 3960* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 3961* [ServiceRequest](servicerequest.html): Search by subject - a patient 3962* [Specimen](specimen.html): The patient the specimen comes from 3963* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 3964* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 3965* [Task](task.html): Search by patient 3966* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 3967</b><br> 3968 * Type: <b>reference</b><br> 3969 * 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> 3970 * </p> 3971 */ 3972 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 3973 3974/** 3975 * Constant for fluent queries to be used to add include statements. Specifies 3976 * the path value of "<b>DocumentReference:patient</b>". 3977 */ 3978 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("DocumentReference:patient").toLocked(); 3979 3980 /** 3981 * Search parameter: <b>type</b> 3982 * <p> 3983 * Description: <b>Multiple Resources: 3984 3985* [Account](account.html): E.g. patient, expense, depreciation 3986* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known) 3987* [Composition](composition.html): Kind of composition (LOINC if possible) 3988* [Coverage](coverage.html): The kind of coverage (health plan, auto, Workers Compensation) 3989* [DocumentReference](documentreference.html): Kind of document (LOINC if possible) 3990* [Encounter](encounter.html): Specific type of encounter 3991* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management 3992* [Invoice](invoice.html): Type of Invoice 3993* [MedicationDispense](medicationdispense.html): Returns dispenses of a specific type 3994* [MolecularSequence](molecularsequence.html): Amino Acid Sequence/ DNA Sequence / RNA Sequence 3995* [Specimen](specimen.html): The specimen type 3996</b><br> 3997 * Type: <b>token</b><br> 3998 * 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> 3999 * </p> 4000 */ 4001 @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" ) 4002 public static final String SP_TYPE = "type"; 4003 /** 4004 * <b>Fluent Client</b> search parameter constant for <b>type</b> 4005 * <p> 4006 * Description: <b>Multiple Resources: 4007 4008* [Account](account.html): E.g. patient, expense, depreciation 4009* [AllergyIntolerance](allergyintolerance.html): allergy | intolerance - Underlying mechanism (if known) 4010* [Composition](composition.html): Kind of composition (LOINC if possible) 4011* [Coverage](coverage.html): The kind of coverage (health plan, auto, Workers Compensation) 4012* [DocumentReference](documentreference.html): Kind of document (LOINC if possible) 4013* [Encounter](encounter.html): Specific type of encounter 4014* [EpisodeOfCare](episodeofcare.html): Type/class - e.g. specialist referral, disease management 4015* [Invoice](invoice.html): Type of Invoice 4016* [MedicationDispense](medicationdispense.html): Returns dispenses of a specific type 4017* [MolecularSequence](molecularsequence.html): Amino Acid Sequence/ DNA Sequence / RNA Sequence 4018* [Specimen](specimen.html): The specimen type 4019</b><br> 4020 * Type: <b>token</b><br> 4021 * 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> 4022 * </p> 4023 */ 4024 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TYPE); 4025 4026 4027} 4028