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