001package org.hl7.fhir.r4b.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 Fri, Dec 31, 2021 05:58+1100 for FHIR v4.3.0-snapshot1 033 034import java.util.ArrayList; 035import java.util.Date; 036import java.util.List; 037import org.hl7.fhir.utilities.Utilities; 038import org.hl7.fhir.r4b.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 * Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc. 052 */ 053@ResourceDef(name="DetectedIssue", profile="http://hl7.org/fhir/StructureDefinition/DetectedIssue") 054public class DetectedIssue extends DomainResource { 055 056 public enum DetectedIssueSeverity { 057 /** 058 * Indicates the issue may be life-threatening or has the potential to cause permanent injury. 059 */ 060 HIGH, 061 /** 062 * Indicates the issue may result in noticeable adverse consequences but is unlikely to be life-threatening or cause permanent injury. 063 */ 064 MODERATE, 065 /** 066 * Indicates the issue may result in some adverse consequences but is unlikely to substantially affect the situation of the subject. 067 */ 068 LOW, 069 /** 070 * added to help the parsers with the generic types 071 */ 072 NULL; 073 public static DetectedIssueSeverity fromCode(String codeString) throws FHIRException { 074 if (codeString == null || "".equals(codeString)) 075 return null; 076 if ("high".equals(codeString)) 077 return HIGH; 078 if ("moderate".equals(codeString)) 079 return MODERATE; 080 if ("low".equals(codeString)) 081 return LOW; 082 if (Configuration.isAcceptInvalidEnums()) 083 return null; 084 else 085 throw new FHIRException("Unknown DetectedIssueSeverity code '"+codeString+"'"); 086 } 087 public String toCode() { 088 switch (this) { 089 case HIGH: return "high"; 090 case MODERATE: return "moderate"; 091 case LOW: return "low"; 092 case NULL: return null; 093 default: return "?"; 094 } 095 } 096 public String getSystem() { 097 switch (this) { 098 case HIGH: return "http://hl7.org/fhir/detectedissue-severity"; 099 case MODERATE: return "http://hl7.org/fhir/detectedissue-severity"; 100 case LOW: return "http://hl7.org/fhir/detectedissue-severity"; 101 case NULL: return null; 102 default: return "?"; 103 } 104 } 105 public String getDefinition() { 106 switch (this) { 107 case HIGH: return "Indicates the issue may be life-threatening or has the potential to cause permanent injury."; 108 case MODERATE: return "Indicates the issue may result in noticeable adverse consequences but is unlikely to be life-threatening or cause permanent injury."; 109 case LOW: return "Indicates the issue may result in some adverse consequences but is unlikely to substantially affect the situation of the subject."; 110 case NULL: return null; 111 default: return "?"; 112 } 113 } 114 public String getDisplay() { 115 switch (this) { 116 case HIGH: return "High"; 117 case MODERATE: return "Moderate"; 118 case LOW: return "Low"; 119 case NULL: return null; 120 default: return "?"; 121 } 122 } 123 } 124 125 public static class DetectedIssueSeverityEnumFactory implements EnumFactory<DetectedIssueSeverity> { 126 public DetectedIssueSeverity fromCode(String codeString) throws IllegalArgumentException { 127 if (codeString == null || "".equals(codeString)) 128 if (codeString == null || "".equals(codeString)) 129 return null; 130 if ("high".equals(codeString)) 131 return DetectedIssueSeverity.HIGH; 132 if ("moderate".equals(codeString)) 133 return DetectedIssueSeverity.MODERATE; 134 if ("low".equals(codeString)) 135 return DetectedIssueSeverity.LOW; 136 throw new IllegalArgumentException("Unknown DetectedIssueSeverity code '"+codeString+"'"); 137 } 138 public Enumeration<DetectedIssueSeverity> fromType(Base code) throws FHIRException { 139 if (code == null) 140 return null; 141 if (code.isEmpty()) 142 return new Enumeration<DetectedIssueSeverity>(this); 143 String codeString = ((PrimitiveType) code).asStringValue(); 144 if (codeString == null || "".equals(codeString)) 145 return null; 146 if ("high".equals(codeString)) 147 return new Enumeration<DetectedIssueSeverity>(this, DetectedIssueSeverity.HIGH); 148 if ("moderate".equals(codeString)) 149 return new Enumeration<DetectedIssueSeverity>(this, DetectedIssueSeverity.MODERATE); 150 if ("low".equals(codeString)) 151 return new Enumeration<DetectedIssueSeverity>(this, DetectedIssueSeverity.LOW); 152 throw new FHIRException("Unknown DetectedIssueSeverity code '"+codeString+"'"); 153 } 154 public String toCode(DetectedIssueSeverity code) { 155 if (code == DetectedIssueSeverity.HIGH) 156 return "high"; 157 if (code == DetectedIssueSeverity.MODERATE) 158 return "moderate"; 159 if (code == DetectedIssueSeverity.LOW) 160 return "low"; 161 return "?"; 162 } 163 public String toSystem(DetectedIssueSeverity code) { 164 return code.getSystem(); 165 } 166 } 167 168 @Block() 169 public static class DetectedIssueEvidenceComponent extends BackboneElement implements IBaseBackboneElement { 170 /** 171 * A manifestation that led to the recording of this detected issue. 172 */ 173 @Child(name = "code", type = {CodeableConcept.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 174 @Description(shortDefinition="Manifestation", formalDefinition="A manifestation that led to the recording of this detected issue." ) 175 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/manifestation-or-symptom") 176 protected List<CodeableConcept> code; 177 178 /** 179 * Links to resources that constitute evidence for the detected issue such as a GuidanceResponse or MeasureReport. 180 */ 181 @Child(name = "detail", type = {Reference.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 182 @Description(shortDefinition="Supporting information", formalDefinition="Links to resources that constitute evidence for the detected issue such as a GuidanceResponse or MeasureReport." ) 183 protected List<Reference> detail; 184 185 private static final long serialVersionUID = -672691342L; 186 187 /** 188 * Constructor 189 */ 190 public DetectedIssueEvidenceComponent() { 191 super(); 192 } 193 194 /** 195 * @return {@link #code} (A manifestation that led to the recording of this detected issue.) 196 */ 197 public List<CodeableConcept> getCode() { 198 if (this.code == null) 199 this.code = new ArrayList<CodeableConcept>(); 200 return this.code; 201 } 202 203 /** 204 * @return Returns a reference to <code>this</code> for easy method chaining 205 */ 206 public DetectedIssueEvidenceComponent setCode(List<CodeableConcept> theCode) { 207 this.code = theCode; 208 return this; 209 } 210 211 public boolean hasCode() { 212 if (this.code == null) 213 return false; 214 for (CodeableConcept item : this.code) 215 if (!item.isEmpty()) 216 return true; 217 return false; 218 } 219 220 public CodeableConcept addCode() { //3 221 CodeableConcept t = new CodeableConcept(); 222 if (this.code == null) 223 this.code = new ArrayList<CodeableConcept>(); 224 this.code.add(t); 225 return t; 226 } 227 228 public DetectedIssueEvidenceComponent addCode(CodeableConcept t) { //3 229 if (t == null) 230 return this; 231 if (this.code == null) 232 this.code = new ArrayList<CodeableConcept>(); 233 this.code.add(t); 234 return this; 235 } 236 237 /** 238 * @return The first repetition of repeating field {@link #code}, creating it if it does not already exist {3} 239 */ 240 public CodeableConcept getCodeFirstRep() { 241 if (getCode().isEmpty()) { 242 addCode(); 243 } 244 return getCode().get(0); 245 } 246 247 /** 248 * @return {@link #detail} (Links to resources that constitute evidence for the detected issue such as a GuidanceResponse or MeasureReport.) 249 */ 250 public List<Reference> getDetail() { 251 if (this.detail == null) 252 this.detail = new ArrayList<Reference>(); 253 return this.detail; 254 } 255 256 /** 257 * @return Returns a reference to <code>this</code> for easy method chaining 258 */ 259 public DetectedIssueEvidenceComponent setDetail(List<Reference> theDetail) { 260 this.detail = theDetail; 261 return this; 262 } 263 264 public boolean hasDetail() { 265 if (this.detail == null) 266 return false; 267 for (Reference item : this.detail) 268 if (!item.isEmpty()) 269 return true; 270 return false; 271 } 272 273 public Reference addDetail() { //3 274 Reference t = new Reference(); 275 if (this.detail == null) 276 this.detail = new ArrayList<Reference>(); 277 this.detail.add(t); 278 return t; 279 } 280 281 public DetectedIssueEvidenceComponent addDetail(Reference t) { //3 282 if (t == null) 283 return this; 284 if (this.detail == null) 285 this.detail = new ArrayList<Reference>(); 286 this.detail.add(t); 287 return this; 288 } 289 290 /** 291 * @return The first repetition of repeating field {@link #detail}, creating it if it does not already exist {3} 292 */ 293 public Reference getDetailFirstRep() { 294 if (getDetail().isEmpty()) { 295 addDetail(); 296 } 297 return getDetail().get(0); 298 } 299 300 protected void listChildren(List<Property> children) { 301 super.listChildren(children); 302 children.add(new Property("code", "CodeableConcept", "A manifestation that led to the recording of this detected issue.", 0, java.lang.Integer.MAX_VALUE, code)); 303 children.add(new Property("detail", "Reference(Any)", "Links to resources that constitute evidence for the detected issue such as a GuidanceResponse or MeasureReport.", 0, java.lang.Integer.MAX_VALUE, detail)); 304 } 305 306 @Override 307 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 308 switch (_hash) { 309 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "A manifestation that led to the recording of this detected issue.", 0, java.lang.Integer.MAX_VALUE, code); 310 case -1335224239: /*detail*/ return new Property("detail", "Reference(Any)", "Links to resources that constitute evidence for the detected issue such as a GuidanceResponse or MeasureReport.", 0, java.lang.Integer.MAX_VALUE, detail); 311 default: return super.getNamedProperty(_hash, _name, _checkValid); 312 } 313 314 } 315 316 @Override 317 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 318 switch (hash) { 319 case 3059181: /*code*/ return this.code == null ? new Base[0] : this.code.toArray(new Base[this.code.size()]); // CodeableConcept 320 case -1335224239: /*detail*/ return this.detail == null ? new Base[0] : this.detail.toArray(new Base[this.detail.size()]); // Reference 321 default: return super.getProperty(hash, name, checkValid); 322 } 323 324 } 325 326 @Override 327 public Base setProperty(int hash, String name, Base value) throws FHIRException { 328 switch (hash) { 329 case 3059181: // code 330 this.getCode().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 331 return value; 332 case -1335224239: // detail 333 this.getDetail().add(TypeConvertor.castToReference(value)); // Reference 334 return value; 335 default: return super.setProperty(hash, name, value); 336 } 337 338 } 339 340 @Override 341 public Base setProperty(String name, Base value) throws FHIRException { 342 if (name.equals("code")) { 343 this.getCode().add(TypeConvertor.castToCodeableConcept(value)); 344 } else if (name.equals("detail")) { 345 this.getDetail().add(TypeConvertor.castToReference(value)); 346 } else 347 return super.setProperty(name, value); 348 return value; 349 } 350 351 @Override 352 public Base makeProperty(int hash, String name) throws FHIRException { 353 switch (hash) { 354 case 3059181: return addCode(); 355 case -1335224239: return addDetail(); 356 default: return super.makeProperty(hash, name); 357 } 358 359 } 360 361 @Override 362 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 363 switch (hash) { 364 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 365 case -1335224239: /*detail*/ return new String[] {"Reference"}; 366 default: return super.getTypesForProperty(hash, name); 367 } 368 369 } 370 371 @Override 372 public Base addChild(String name) throws FHIRException { 373 if (name.equals("code")) { 374 return addCode(); 375 } 376 else if (name.equals("detail")) { 377 return addDetail(); 378 } 379 else 380 return super.addChild(name); 381 } 382 383 public DetectedIssueEvidenceComponent copy() { 384 DetectedIssueEvidenceComponent dst = new DetectedIssueEvidenceComponent(); 385 copyValues(dst); 386 return dst; 387 } 388 389 public void copyValues(DetectedIssueEvidenceComponent dst) { 390 super.copyValues(dst); 391 if (code != null) { 392 dst.code = new ArrayList<CodeableConcept>(); 393 for (CodeableConcept i : code) 394 dst.code.add(i.copy()); 395 }; 396 if (detail != null) { 397 dst.detail = new ArrayList<Reference>(); 398 for (Reference i : detail) 399 dst.detail.add(i.copy()); 400 }; 401 } 402 403 @Override 404 public boolean equalsDeep(Base other_) { 405 if (!super.equalsDeep(other_)) 406 return false; 407 if (!(other_ instanceof DetectedIssueEvidenceComponent)) 408 return false; 409 DetectedIssueEvidenceComponent o = (DetectedIssueEvidenceComponent) other_; 410 return compareDeep(code, o.code, true) && compareDeep(detail, o.detail, true); 411 } 412 413 @Override 414 public boolean equalsShallow(Base other_) { 415 if (!super.equalsShallow(other_)) 416 return false; 417 if (!(other_ instanceof DetectedIssueEvidenceComponent)) 418 return false; 419 DetectedIssueEvidenceComponent o = (DetectedIssueEvidenceComponent) other_; 420 return true; 421 } 422 423 public boolean isEmpty() { 424 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, detail); 425 } 426 427 public String fhirType() { 428 return "DetectedIssue.evidence"; 429 430 } 431 432 } 433 434 @Block() 435 public static class DetectedIssueMitigationComponent extends BackboneElement implements IBaseBackboneElement { 436 /** 437 * Describes the action that was taken or the observation that was made that reduces/eliminates the risk associated with the identified issue. 438 */ 439 @Child(name = "action", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) 440 @Description(shortDefinition="What mitigation?", formalDefinition="Describes the action that was taken or the observation that was made that reduces/eliminates the risk associated with the identified issue." ) 441 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/detectedissue-mitigation-action") 442 protected CodeableConcept action; 443 444 /** 445 * Indicates when the mitigating action was documented. 446 */ 447 @Child(name = "date", type = {DateTimeType.class}, order=2, min=0, max=1, modifier=false, summary=false) 448 @Description(shortDefinition="Date committed", formalDefinition="Indicates when the mitigating action was documented." ) 449 protected DateTimeType date; 450 451 /** 452 * Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring. 453 */ 454 @Child(name = "author", type = {Practitioner.class, PractitionerRole.class}, order=3, min=0, max=1, modifier=false, summary=false) 455 @Description(shortDefinition="Who is committing?", formalDefinition="Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring." ) 456 protected Reference author; 457 458 private static final long serialVersionUID = -1797436956L; 459 460 /** 461 * Constructor 462 */ 463 public DetectedIssueMitigationComponent() { 464 super(); 465 } 466 467 /** 468 * Constructor 469 */ 470 public DetectedIssueMitigationComponent(CodeableConcept action) { 471 super(); 472 this.setAction(action); 473 } 474 475 /** 476 * @return {@link #action} (Describes the action that was taken or the observation that was made that reduces/eliminates the risk associated with the identified issue.) 477 */ 478 public CodeableConcept getAction() { 479 if (this.action == null) 480 if (Configuration.errorOnAutoCreate()) 481 throw new Error("Attempt to auto-create DetectedIssueMitigationComponent.action"); 482 else if (Configuration.doAutoCreate()) 483 this.action = new CodeableConcept(); // cc 484 return this.action; 485 } 486 487 public boolean hasAction() { 488 return this.action != null && !this.action.isEmpty(); 489 } 490 491 /** 492 * @param value {@link #action} (Describes the action that was taken or the observation that was made that reduces/eliminates the risk associated with the identified issue.) 493 */ 494 public DetectedIssueMitigationComponent setAction(CodeableConcept value) { 495 this.action = value; 496 return this; 497 } 498 499 /** 500 * @return {@link #date} (Indicates when the mitigating action was documented.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 501 */ 502 public DateTimeType getDateElement() { 503 if (this.date == null) 504 if (Configuration.errorOnAutoCreate()) 505 throw new Error("Attempt to auto-create DetectedIssueMitigationComponent.date"); 506 else if (Configuration.doAutoCreate()) 507 this.date = new DateTimeType(); // bb 508 return this.date; 509 } 510 511 public boolean hasDateElement() { 512 return this.date != null && !this.date.isEmpty(); 513 } 514 515 public boolean hasDate() { 516 return this.date != null && !this.date.isEmpty(); 517 } 518 519 /** 520 * @param value {@link #date} (Indicates when the mitigating action was documented.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 521 */ 522 public DetectedIssueMitigationComponent setDateElement(DateTimeType value) { 523 this.date = value; 524 return this; 525 } 526 527 /** 528 * @return Indicates when the mitigating action was documented. 529 */ 530 public Date getDate() { 531 return this.date == null ? null : this.date.getValue(); 532 } 533 534 /** 535 * @param value Indicates when the mitigating action was documented. 536 */ 537 public DetectedIssueMitigationComponent setDate(Date value) { 538 if (value == null) 539 this.date = null; 540 else { 541 if (this.date == null) 542 this.date = new DateTimeType(); 543 this.date.setValue(value); 544 } 545 return this; 546 } 547 548 /** 549 * @return {@link #author} (Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.) 550 */ 551 public Reference getAuthor() { 552 if (this.author == null) 553 if (Configuration.errorOnAutoCreate()) 554 throw new Error("Attempt to auto-create DetectedIssueMitigationComponent.author"); 555 else if (Configuration.doAutoCreate()) 556 this.author = new Reference(); // cc 557 return this.author; 558 } 559 560 public boolean hasAuthor() { 561 return this.author != null && !this.author.isEmpty(); 562 } 563 564 /** 565 * @param value {@link #author} (Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.) 566 */ 567 public DetectedIssueMitigationComponent setAuthor(Reference value) { 568 this.author = value; 569 return this; 570 } 571 572 protected void listChildren(List<Property> children) { 573 super.listChildren(children); 574 children.add(new Property("action", "CodeableConcept", "Describes the action that was taken or the observation that was made that reduces/eliminates the risk associated with the identified issue.", 0, 1, action)); 575 children.add(new Property("date", "dateTime", "Indicates when the mitigating action was documented.", 0, 1, date)); 576 children.add(new Property("author", "Reference(Practitioner|PractitionerRole)", "Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.", 0, 1, author)); 577 } 578 579 @Override 580 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 581 switch (_hash) { 582 case -1422950858: /*action*/ return new Property("action", "CodeableConcept", "Describes the action that was taken or the observation that was made that reduces/eliminates the risk associated with the identified issue.", 0, 1, action); 583 case 3076014: /*date*/ return new Property("date", "dateTime", "Indicates when the mitigating action was documented.", 0, 1, date); 584 case -1406328437: /*author*/ return new Property("author", "Reference(Practitioner|PractitionerRole)", "Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.", 0, 1, author); 585 default: return super.getNamedProperty(_hash, _name, _checkValid); 586 } 587 588 } 589 590 @Override 591 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 592 switch (hash) { 593 case -1422950858: /*action*/ return this.action == null ? new Base[0] : new Base[] {this.action}; // CodeableConcept 594 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 595 case -1406328437: /*author*/ return this.author == null ? new Base[0] : new Base[] {this.author}; // Reference 596 default: return super.getProperty(hash, name, checkValid); 597 } 598 599 } 600 601 @Override 602 public Base setProperty(int hash, String name, Base value) throws FHIRException { 603 switch (hash) { 604 case -1422950858: // action 605 this.action = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 606 return value; 607 case 3076014: // date 608 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 609 return value; 610 case -1406328437: // author 611 this.author = TypeConvertor.castToReference(value); // Reference 612 return value; 613 default: return super.setProperty(hash, name, value); 614 } 615 616 } 617 618 @Override 619 public Base setProperty(String name, Base value) throws FHIRException { 620 if (name.equals("action")) { 621 this.action = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 622 } else if (name.equals("date")) { 623 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 624 } else if (name.equals("author")) { 625 this.author = TypeConvertor.castToReference(value); // Reference 626 } else 627 return super.setProperty(name, value); 628 return value; 629 } 630 631 @Override 632 public Base makeProperty(int hash, String name) throws FHIRException { 633 switch (hash) { 634 case -1422950858: return getAction(); 635 case 3076014: return getDateElement(); 636 case -1406328437: return getAuthor(); 637 default: return super.makeProperty(hash, name); 638 } 639 640 } 641 642 @Override 643 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 644 switch (hash) { 645 case -1422950858: /*action*/ return new String[] {"CodeableConcept"}; 646 case 3076014: /*date*/ return new String[] {"dateTime"}; 647 case -1406328437: /*author*/ return new String[] {"Reference"}; 648 default: return super.getTypesForProperty(hash, name); 649 } 650 651 } 652 653 @Override 654 public Base addChild(String name) throws FHIRException { 655 if (name.equals("action")) { 656 this.action = new CodeableConcept(); 657 return this.action; 658 } 659 else if (name.equals("date")) { 660 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.mitigation.date"); 661 } 662 else if (name.equals("author")) { 663 this.author = new Reference(); 664 return this.author; 665 } 666 else 667 return super.addChild(name); 668 } 669 670 public DetectedIssueMitigationComponent copy() { 671 DetectedIssueMitigationComponent dst = new DetectedIssueMitigationComponent(); 672 copyValues(dst); 673 return dst; 674 } 675 676 public void copyValues(DetectedIssueMitigationComponent dst) { 677 super.copyValues(dst); 678 dst.action = action == null ? null : action.copy(); 679 dst.date = date == null ? null : date.copy(); 680 dst.author = author == null ? null : author.copy(); 681 } 682 683 @Override 684 public boolean equalsDeep(Base other_) { 685 if (!super.equalsDeep(other_)) 686 return false; 687 if (!(other_ instanceof DetectedIssueMitigationComponent)) 688 return false; 689 DetectedIssueMitigationComponent o = (DetectedIssueMitigationComponent) other_; 690 return compareDeep(action, o.action, true) && compareDeep(date, o.date, true) && compareDeep(author, o.author, true) 691 ; 692 } 693 694 @Override 695 public boolean equalsShallow(Base other_) { 696 if (!super.equalsShallow(other_)) 697 return false; 698 if (!(other_ instanceof DetectedIssueMitigationComponent)) 699 return false; 700 DetectedIssueMitigationComponent o = (DetectedIssueMitigationComponent) other_; 701 return compareValues(date, o.date, true); 702 } 703 704 public boolean isEmpty() { 705 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(action, date, author); 706 } 707 708 public String fhirType() { 709 return "DetectedIssue.mitigation"; 710 711 } 712 713 } 714 715 /** 716 * Business identifier associated with the detected issue record. 717 */ 718 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 719 @Description(shortDefinition="Unique id for the detected issue", formalDefinition="Business identifier associated with the detected issue record." ) 720 protected List<Identifier> identifier; 721 722 /** 723 * Indicates the status of the detected issue. 724 */ 725 @Child(name = "status", type = {CodeType.class}, order=1, min=1, max=1, modifier=true, summary=true) 726 @Description(shortDefinition="registered | preliminary | final | amended +", formalDefinition="Indicates the status of the detected issue." ) 727 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/observation-status") 728 protected Enumeration<ObservationStatus> status; 729 730 /** 731 * Identifies the general type of issue identified. 732 */ 733 @Child(name = "code", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) 734 @Description(shortDefinition="Issue Category, e.g. drug-drug, duplicate therapy, etc.", formalDefinition="Identifies the general type of issue identified." ) 735 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/detectedissue-category") 736 protected CodeableConcept code; 737 738 /** 739 * Indicates the degree of importance associated with the identified issue based on the potential impact on the patient. 740 */ 741 @Child(name = "severity", type = {CodeType.class}, order=3, min=0, max=1, modifier=false, summary=true) 742 @Description(shortDefinition="high | moderate | low", formalDefinition="Indicates the degree of importance associated with the identified issue based on the potential impact on the patient." ) 743 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/detectedissue-severity") 744 protected Enumeration<DetectedIssueSeverity> severity; 745 746 /** 747 * Indicates the patient whose record the detected issue is associated with. 748 */ 749 @Child(name = "patient", type = {Patient.class}, order=4, min=0, max=1, modifier=false, summary=true) 750 @Description(shortDefinition="Associated patient", formalDefinition="Indicates the patient whose record the detected issue is associated with." ) 751 protected Reference patient; 752 753 /** 754 * The date or period when the detected issue was initially identified. 755 */ 756 @Child(name = "identified", type = {DateTimeType.class, Period.class}, order=5, min=0, max=1, modifier=false, summary=true) 757 @Description(shortDefinition="When identified", formalDefinition="The date or period when the detected issue was initially identified." ) 758 protected DataType identified; 759 760 /** 761 * Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review. 762 */ 763 @Child(name = "author", type = {Practitioner.class, PractitionerRole.class, Device.class}, order=6, min=0, max=1, modifier=false, summary=true) 764 @Description(shortDefinition="The provider or device that identified the issue", formalDefinition="Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review." ) 765 protected Reference author; 766 767 /** 768 * Indicates the resource representing the current activity or proposed activity that is potentially problematic. 769 */ 770 @Child(name = "implicated", type = {Reference.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 771 @Description(shortDefinition="Problem resource", formalDefinition="Indicates the resource representing the current activity or proposed activity that is potentially problematic." ) 772 protected List<Reference> implicated; 773 774 /** 775 * Supporting evidence or manifestations that provide the basis for identifying the detected issue such as a GuidanceResponse or MeasureReport. 776 */ 777 @Child(name = "evidence", type = {}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 778 @Description(shortDefinition="Supporting evidence", formalDefinition="Supporting evidence or manifestations that provide the basis for identifying the detected issue such as a GuidanceResponse or MeasureReport." ) 779 protected List<DetectedIssueEvidenceComponent> evidence; 780 781 /** 782 * A textual explanation of the detected issue. 783 */ 784 @Child(name = "detail", type = {StringType.class}, order=9, min=0, max=1, modifier=false, summary=false) 785 @Description(shortDefinition="Description and context", formalDefinition="A textual explanation of the detected issue." ) 786 protected StringType detail; 787 788 /** 789 * The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified. 790 */ 791 @Child(name = "reference", type = {UriType.class}, order=10, min=0, max=1, modifier=false, summary=false) 792 @Description(shortDefinition="Authority for issue", formalDefinition="The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified." ) 793 protected UriType reference; 794 795 /** 796 * Indicates an action that has been taken or is committed to reduce or eliminate the likelihood of the risk identified by the detected issue from manifesting. Can also reflect an observation of known mitigating factors that may reduce/eliminate the need for any action. 797 */ 798 @Child(name = "mitigation", type = {}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 799 @Description(shortDefinition="Step taken to address", formalDefinition="Indicates an action that has been taken or is committed to reduce or eliminate the likelihood of the risk identified by the detected issue from manifesting. Can also reflect an observation of known mitigating factors that may reduce/eliminate the need for any action." ) 800 protected List<DetectedIssueMitigationComponent> mitigation; 801 802 private static final long serialVersionUID = -781032584L; 803 804 /** 805 * Constructor 806 */ 807 public DetectedIssue() { 808 super(); 809 } 810 811 /** 812 * Constructor 813 */ 814 public DetectedIssue(ObservationStatus status) { 815 super(); 816 this.setStatus(status); 817 } 818 819 /** 820 * @return {@link #identifier} (Business identifier associated with the detected issue record.) 821 */ 822 public List<Identifier> getIdentifier() { 823 if (this.identifier == null) 824 this.identifier = new ArrayList<Identifier>(); 825 return this.identifier; 826 } 827 828 /** 829 * @return Returns a reference to <code>this</code> for easy method chaining 830 */ 831 public DetectedIssue setIdentifier(List<Identifier> theIdentifier) { 832 this.identifier = theIdentifier; 833 return this; 834 } 835 836 public boolean hasIdentifier() { 837 if (this.identifier == null) 838 return false; 839 for (Identifier item : this.identifier) 840 if (!item.isEmpty()) 841 return true; 842 return false; 843 } 844 845 public Identifier addIdentifier() { //3 846 Identifier t = new Identifier(); 847 if (this.identifier == null) 848 this.identifier = new ArrayList<Identifier>(); 849 this.identifier.add(t); 850 return t; 851 } 852 853 public DetectedIssue addIdentifier(Identifier t) { //3 854 if (t == null) 855 return this; 856 if (this.identifier == null) 857 this.identifier = new ArrayList<Identifier>(); 858 this.identifier.add(t); 859 return this; 860 } 861 862 /** 863 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 864 */ 865 public Identifier getIdentifierFirstRep() { 866 if (getIdentifier().isEmpty()) { 867 addIdentifier(); 868 } 869 return getIdentifier().get(0); 870 } 871 872 /** 873 * @return {@link #status} (Indicates the status of the detected issue.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 874 */ 875 public Enumeration<ObservationStatus> getStatusElement() { 876 if (this.status == null) 877 if (Configuration.errorOnAutoCreate()) 878 throw new Error("Attempt to auto-create DetectedIssue.status"); 879 else if (Configuration.doAutoCreate()) 880 this.status = new Enumeration<ObservationStatus>(new ObservationStatusEnumFactory()); // bb 881 return this.status; 882 } 883 884 public boolean hasStatusElement() { 885 return this.status != null && !this.status.isEmpty(); 886 } 887 888 public boolean hasStatus() { 889 return this.status != null && !this.status.isEmpty(); 890 } 891 892 /** 893 * @param value {@link #status} (Indicates the status of the detected issue.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 894 */ 895 public DetectedIssue setStatusElement(Enumeration<ObservationStatus> value) { 896 this.status = value; 897 return this; 898 } 899 900 /** 901 * @return Indicates the status of the detected issue. 902 */ 903 public ObservationStatus getStatus() { 904 return this.status == null ? null : this.status.getValue(); 905 } 906 907 /** 908 * @param value Indicates the status of the detected issue. 909 */ 910 public DetectedIssue setStatus(ObservationStatus value) { 911 if (this.status == null) 912 this.status = new Enumeration<ObservationStatus>(new ObservationStatusEnumFactory()); 913 this.status.setValue(value); 914 return this; 915 } 916 917 /** 918 * @return {@link #code} (Identifies the general type of issue identified.) 919 */ 920 public CodeableConcept getCode() { 921 if (this.code == null) 922 if (Configuration.errorOnAutoCreate()) 923 throw new Error("Attempt to auto-create DetectedIssue.code"); 924 else if (Configuration.doAutoCreate()) 925 this.code = new CodeableConcept(); // cc 926 return this.code; 927 } 928 929 public boolean hasCode() { 930 return this.code != null && !this.code.isEmpty(); 931 } 932 933 /** 934 * @param value {@link #code} (Identifies the general type of issue identified.) 935 */ 936 public DetectedIssue setCode(CodeableConcept value) { 937 this.code = value; 938 return this; 939 } 940 941 /** 942 * @return {@link #severity} (Indicates the degree of importance associated with the identified issue based on the potential impact on the patient.). This is the underlying object with id, value and extensions. The accessor "getSeverity" gives direct access to the value 943 */ 944 public Enumeration<DetectedIssueSeverity> getSeverityElement() { 945 if (this.severity == null) 946 if (Configuration.errorOnAutoCreate()) 947 throw new Error("Attempt to auto-create DetectedIssue.severity"); 948 else if (Configuration.doAutoCreate()) 949 this.severity = new Enumeration<DetectedIssueSeverity>(new DetectedIssueSeverityEnumFactory()); // bb 950 return this.severity; 951 } 952 953 public boolean hasSeverityElement() { 954 return this.severity != null && !this.severity.isEmpty(); 955 } 956 957 public boolean hasSeverity() { 958 return this.severity != null && !this.severity.isEmpty(); 959 } 960 961 /** 962 * @param value {@link #severity} (Indicates the degree of importance associated with the identified issue based on the potential impact on the patient.). This is the underlying object with id, value and extensions. The accessor "getSeverity" gives direct access to the value 963 */ 964 public DetectedIssue setSeverityElement(Enumeration<DetectedIssueSeverity> value) { 965 this.severity = value; 966 return this; 967 } 968 969 /** 970 * @return Indicates the degree of importance associated with the identified issue based on the potential impact on the patient. 971 */ 972 public DetectedIssueSeverity getSeverity() { 973 return this.severity == null ? null : this.severity.getValue(); 974 } 975 976 /** 977 * @param value Indicates the degree of importance associated with the identified issue based on the potential impact on the patient. 978 */ 979 public DetectedIssue setSeverity(DetectedIssueSeverity value) { 980 if (value == null) 981 this.severity = null; 982 else { 983 if (this.severity == null) 984 this.severity = new Enumeration<DetectedIssueSeverity>(new DetectedIssueSeverityEnumFactory()); 985 this.severity.setValue(value); 986 } 987 return this; 988 } 989 990 /** 991 * @return {@link #patient} (Indicates the patient whose record the detected issue is associated with.) 992 */ 993 public Reference getPatient() { 994 if (this.patient == null) 995 if (Configuration.errorOnAutoCreate()) 996 throw new Error("Attempt to auto-create DetectedIssue.patient"); 997 else if (Configuration.doAutoCreate()) 998 this.patient = new Reference(); // cc 999 return this.patient; 1000 } 1001 1002 public boolean hasPatient() { 1003 return this.patient != null && !this.patient.isEmpty(); 1004 } 1005 1006 /** 1007 * @param value {@link #patient} (Indicates the patient whose record the detected issue is associated with.) 1008 */ 1009 public DetectedIssue setPatient(Reference value) { 1010 this.patient = value; 1011 return this; 1012 } 1013 1014 /** 1015 * @return {@link #identified} (The date or period when the detected issue was initially identified.) 1016 */ 1017 public DataType getIdentified() { 1018 return this.identified; 1019 } 1020 1021 /** 1022 * @return {@link #identified} (The date or period when the detected issue was initially identified.) 1023 */ 1024 public DateTimeType getIdentifiedDateTimeType() throws FHIRException { 1025 if (this.identified == null) 1026 this.identified = new DateTimeType(); 1027 if (!(this.identified instanceof DateTimeType)) 1028 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.identified.getClass().getName()+" was encountered"); 1029 return (DateTimeType) this.identified; 1030 } 1031 1032 public boolean hasIdentifiedDateTimeType() { 1033 return this != null && this.identified instanceof DateTimeType; 1034 } 1035 1036 /** 1037 * @return {@link #identified} (The date or period when the detected issue was initially identified.) 1038 */ 1039 public Period getIdentifiedPeriod() throws FHIRException { 1040 if (this.identified == null) 1041 this.identified = new Period(); 1042 if (!(this.identified instanceof Period)) 1043 throw new FHIRException("Type mismatch: the type Period was expected, but "+this.identified.getClass().getName()+" was encountered"); 1044 return (Period) this.identified; 1045 } 1046 1047 public boolean hasIdentifiedPeriod() { 1048 return this != null && this.identified instanceof Period; 1049 } 1050 1051 public boolean hasIdentified() { 1052 return this.identified != null && !this.identified.isEmpty(); 1053 } 1054 1055 /** 1056 * @param value {@link #identified} (The date or period when the detected issue was initially identified.) 1057 */ 1058 public DetectedIssue setIdentified(DataType value) { 1059 if (value != null && !(value instanceof DateTimeType || value instanceof Period)) 1060 throw new Error("Not the right type for DetectedIssue.identified[x]: "+value.fhirType()); 1061 this.identified = value; 1062 return this; 1063 } 1064 1065 /** 1066 * @return {@link #author} (Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review.) 1067 */ 1068 public Reference getAuthor() { 1069 if (this.author == null) 1070 if (Configuration.errorOnAutoCreate()) 1071 throw new Error("Attempt to auto-create DetectedIssue.author"); 1072 else if (Configuration.doAutoCreate()) 1073 this.author = new Reference(); // cc 1074 return this.author; 1075 } 1076 1077 public boolean hasAuthor() { 1078 return this.author != null && !this.author.isEmpty(); 1079 } 1080 1081 /** 1082 * @param value {@link #author} (Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review.) 1083 */ 1084 public DetectedIssue setAuthor(Reference value) { 1085 this.author = value; 1086 return this; 1087 } 1088 1089 /** 1090 * @return {@link #implicated} (Indicates the resource representing the current activity or proposed activity that is potentially problematic.) 1091 */ 1092 public List<Reference> getImplicated() { 1093 if (this.implicated == null) 1094 this.implicated = new ArrayList<Reference>(); 1095 return this.implicated; 1096 } 1097 1098 /** 1099 * @return Returns a reference to <code>this</code> for easy method chaining 1100 */ 1101 public DetectedIssue setImplicated(List<Reference> theImplicated) { 1102 this.implicated = theImplicated; 1103 return this; 1104 } 1105 1106 public boolean hasImplicated() { 1107 if (this.implicated == null) 1108 return false; 1109 for (Reference item : this.implicated) 1110 if (!item.isEmpty()) 1111 return true; 1112 return false; 1113 } 1114 1115 public Reference addImplicated() { //3 1116 Reference t = new Reference(); 1117 if (this.implicated == null) 1118 this.implicated = new ArrayList<Reference>(); 1119 this.implicated.add(t); 1120 return t; 1121 } 1122 1123 public DetectedIssue addImplicated(Reference t) { //3 1124 if (t == null) 1125 return this; 1126 if (this.implicated == null) 1127 this.implicated = new ArrayList<Reference>(); 1128 this.implicated.add(t); 1129 return this; 1130 } 1131 1132 /** 1133 * @return The first repetition of repeating field {@link #implicated}, creating it if it does not already exist {3} 1134 */ 1135 public Reference getImplicatedFirstRep() { 1136 if (getImplicated().isEmpty()) { 1137 addImplicated(); 1138 } 1139 return getImplicated().get(0); 1140 } 1141 1142 /** 1143 * @return {@link #evidence} (Supporting evidence or manifestations that provide the basis for identifying the detected issue such as a GuidanceResponse or MeasureReport.) 1144 */ 1145 public List<DetectedIssueEvidenceComponent> getEvidence() { 1146 if (this.evidence == null) 1147 this.evidence = new ArrayList<DetectedIssueEvidenceComponent>(); 1148 return this.evidence; 1149 } 1150 1151 /** 1152 * @return Returns a reference to <code>this</code> for easy method chaining 1153 */ 1154 public DetectedIssue setEvidence(List<DetectedIssueEvidenceComponent> theEvidence) { 1155 this.evidence = theEvidence; 1156 return this; 1157 } 1158 1159 public boolean hasEvidence() { 1160 if (this.evidence == null) 1161 return false; 1162 for (DetectedIssueEvidenceComponent item : this.evidence) 1163 if (!item.isEmpty()) 1164 return true; 1165 return false; 1166 } 1167 1168 public DetectedIssueEvidenceComponent addEvidence() { //3 1169 DetectedIssueEvidenceComponent t = new DetectedIssueEvidenceComponent(); 1170 if (this.evidence == null) 1171 this.evidence = new ArrayList<DetectedIssueEvidenceComponent>(); 1172 this.evidence.add(t); 1173 return t; 1174 } 1175 1176 public DetectedIssue addEvidence(DetectedIssueEvidenceComponent t) { //3 1177 if (t == null) 1178 return this; 1179 if (this.evidence == null) 1180 this.evidence = new ArrayList<DetectedIssueEvidenceComponent>(); 1181 this.evidence.add(t); 1182 return this; 1183 } 1184 1185 /** 1186 * @return The first repetition of repeating field {@link #evidence}, creating it if it does not already exist {3} 1187 */ 1188 public DetectedIssueEvidenceComponent getEvidenceFirstRep() { 1189 if (getEvidence().isEmpty()) { 1190 addEvidence(); 1191 } 1192 return getEvidence().get(0); 1193 } 1194 1195 /** 1196 * @return {@link #detail} (A textual explanation of the detected issue.). This is the underlying object with id, value and extensions. The accessor "getDetail" gives direct access to the value 1197 */ 1198 public StringType getDetailElement() { 1199 if (this.detail == null) 1200 if (Configuration.errorOnAutoCreate()) 1201 throw new Error("Attempt to auto-create DetectedIssue.detail"); 1202 else if (Configuration.doAutoCreate()) 1203 this.detail = new StringType(); // bb 1204 return this.detail; 1205 } 1206 1207 public boolean hasDetailElement() { 1208 return this.detail != null && !this.detail.isEmpty(); 1209 } 1210 1211 public boolean hasDetail() { 1212 return this.detail != null && !this.detail.isEmpty(); 1213 } 1214 1215 /** 1216 * @param value {@link #detail} (A textual explanation of the detected issue.). This is the underlying object with id, value and extensions. The accessor "getDetail" gives direct access to the value 1217 */ 1218 public DetectedIssue setDetailElement(StringType value) { 1219 this.detail = value; 1220 return this; 1221 } 1222 1223 /** 1224 * @return A textual explanation of the detected issue. 1225 */ 1226 public String getDetail() { 1227 return this.detail == null ? null : this.detail.getValue(); 1228 } 1229 1230 /** 1231 * @param value A textual explanation of the detected issue. 1232 */ 1233 public DetectedIssue setDetail(String value) { 1234 if (Utilities.noString(value)) 1235 this.detail = null; 1236 else { 1237 if (this.detail == null) 1238 this.detail = new StringType(); 1239 this.detail.setValue(value); 1240 } 1241 return this; 1242 } 1243 1244 /** 1245 * @return {@link #reference} (The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified.). This is the underlying object with id, value and extensions. The accessor "getReference" gives direct access to the value 1246 */ 1247 public UriType getReferenceElement() { 1248 if (this.reference == null) 1249 if (Configuration.errorOnAutoCreate()) 1250 throw new Error("Attempt to auto-create DetectedIssue.reference"); 1251 else if (Configuration.doAutoCreate()) 1252 this.reference = new UriType(); // bb 1253 return this.reference; 1254 } 1255 1256 public boolean hasReferenceElement() { 1257 return this.reference != null && !this.reference.isEmpty(); 1258 } 1259 1260 public boolean hasReference() { 1261 return this.reference != null && !this.reference.isEmpty(); 1262 } 1263 1264 /** 1265 * @param value {@link #reference} (The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified.). This is the underlying object with id, value and extensions. The accessor "getReference" gives direct access to the value 1266 */ 1267 public DetectedIssue setReferenceElement(UriType value) { 1268 this.reference = value; 1269 return this; 1270 } 1271 1272 /** 1273 * @return The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified. 1274 */ 1275 public String getReference() { 1276 return this.reference == null ? null : this.reference.getValue(); 1277 } 1278 1279 /** 1280 * @param value The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified. 1281 */ 1282 public DetectedIssue setReference(String value) { 1283 if (Utilities.noString(value)) 1284 this.reference = null; 1285 else { 1286 if (this.reference == null) 1287 this.reference = new UriType(); 1288 this.reference.setValue(value); 1289 } 1290 return this; 1291 } 1292 1293 /** 1294 * @return {@link #mitigation} (Indicates an action that has been taken or is committed to reduce or eliminate the likelihood of the risk identified by the detected issue from manifesting. Can also reflect an observation of known mitigating factors that may reduce/eliminate the need for any action.) 1295 */ 1296 public List<DetectedIssueMitigationComponent> getMitigation() { 1297 if (this.mitigation == null) 1298 this.mitigation = new ArrayList<DetectedIssueMitigationComponent>(); 1299 return this.mitigation; 1300 } 1301 1302 /** 1303 * @return Returns a reference to <code>this</code> for easy method chaining 1304 */ 1305 public DetectedIssue setMitigation(List<DetectedIssueMitigationComponent> theMitigation) { 1306 this.mitigation = theMitigation; 1307 return this; 1308 } 1309 1310 public boolean hasMitigation() { 1311 if (this.mitigation == null) 1312 return false; 1313 for (DetectedIssueMitigationComponent item : this.mitigation) 1314 if (!item.isEmpty()) 1315 return true; 1316 return false; 1317 } 1318 1319 public DetectedIssueMitigationComponent addMitigation() { //3 1320 DetectedIssueMitigationComponent t = new DetectedIssueMitigationComponent(); 1321 if (this.mitigation == null) 1322 this.mitigation = new ArrayList<DetectedIssueMitigationComponent>(); 1323 this.mitigation.add(t); 1324 return t; 1325 } 1326 1327 public DetectedIssue addMitigation(DetectedIssueMitigationComponent t) { //3 1328 if (t == null) 1329 return this; 1330 if (this.mitigation == null) 1331 this.mitigation = new ArrayList<DetectedIssueMitigationComponent>(); 1332 this.mitigation.add(t); 1333 return this; 1334 } 1335 1336 /** 1337 * @return The first repetition of repeating field {@link #mitigation}, creating it if it does not already exist {3} 1338 */ 1339 public DetectedIssueMitigationComponent getMitigationFirstRep() { 1340 if (getMitigation().isEmpty()) { 1341 addMitigation(); 1342 } 1343 return getMitigation().get(0); 1344 } 1345 1346 protected void listChildren(List<Property> children) { 1347 super.listChildren(children); 1348 children.add(new Property("identifier", "Identifier", "Business identifier associated with the detected issue record.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1349 children.add(new Property("status", "code", "Indicates the status of the detected issue.", 0, 1, status)); 1350 children.add(new Property("code", "CodeableConcept", "Identifies the general type of issue identified.", 0, 1, code)); 1351 children.add(new Property("severity", "code", "Indicates the degree of importance associated with the identified issue based on the potential impact on the patient.", 0, 1, severity)); 1352 children.add(new Property("patient", "Reference(Patient)", "Indicates the patient whose record the detected issue is associated with.", 0, 1, patient)); 1353 children.add(new Property("identified[x]", "dateTime|Period", "The date or period when the detected issue was initially identified.", 0, 1, identified)); 1354 children.add(new Property("author", "Reference(Practitioner|PractitionerRole|Device)", "Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review.", 0, 1, author)); 1355 children.add(new Property("implicated", "Reference(Any)", "Indicates the resource representing the current activity or proposed activity that is potentially problematic.", 0, java.lang.Integer.MAX_VALUE, implicated)); 1356 children.add(new Property("evidence", "", "Supporting evidence or manifestations that provide the basis for identifying the detected issue such as a GuidanceResponse or MeasureReport.", 0, java.lang.Integer.MAX_VALUE, evidence)); 1357 children.add(new Property("detail", "string", "A textual explanation of the detected issue.", 0, 1, detail)); 1358 children.add(new Property("reference", "uri", "The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified.", 0, 1, reference)); 1359 children.add(new Property("mitigation", "", "Indicates an action that has been taken or is committed to reduce or eliminate the likelihood of the risk identified by the detected issue from manifesting. Can also reflect an observation of known mitigating factors that may reduce/eliminate the need for any action.", 0, java.lang.Integer.MAX_VALUE, mitigation)); 1360 } 1361 1362 @Override 1363 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1364 switch (_hash) { 1365 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifier associated with the detected issue record.", 0, java.lang.Integer.MAX_VALUE, identifier); 1366 case -892481550: /*status*/ return new Property("status", "code", "Indicates the status of the detected issue.", 0, 1, status); 1367 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "Identifies the general type of issue identified.", 0, 1, code); 1368 case 1478300413: /*severity*/ return new Property("severity", "code", "Indicates the degree of importance associated with the identified issue based on the potential impact on the patient.", 0, 1, severity); 1369 case -791418107: /*patient*/ return new Property("patient", "Reference(Patient)", "Indicates the patient whose record the detected issue is associated with.", 0, 1, patient); 1370 case 569355781: /*identified[x]*/ return new Property("identified[x]", "dateTime|Period", "The date or period when the detected issue was initially identified.", 0, 1, identified); 1371 case -1618432869: /*identified*/ return new Property("identified[x]", "dateTime|Period", "The date or period when the detected issue was initially identified.", 0, 1, identified); 1372 case -968788650: /*identifiedDateTime*/ return new Property("identified[x]", "dateTime", "The date or period when the detected issue was initially identified.", 0, 1, identified); 1373 case 520482364: /*identifiedPeriod*/ return new Property("identified[x]", "Period", "The date or period when the detected issue was initially identified.", 0, 1, identified); 1374 case -1406328437: /*author*/ return new Property("author", "Reference(Practitioner|PractitionerRole|Device)", "Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review.", 0, 1, author); 1375 case -810216884: /*implicated*/ return new Property("implicated", "Reference(Any)", "Indicates the resource representing the current activity or proposed activity that is potentially problematic.", 0, java.lang.Integer.MAX_VALUE, implicated); 1376 case 382967383: /*evidence*/ return new Property("evidence", "", "Supporting evidence or manifestations that provide the basis for identifying the detected issue such as a GuidanceResponse or MeasureReport.", 0, java.lang.Integer.MAX_VALUE, evidence); 1377 case -1335224239: /*detail*/ return new Property("detail", "string", "A textual explanation of the detected issue.", 0, 1, detail); 1378 case -925155509: /*reference*/ return new Property("reference", "uri", "The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified.", 0, 1, reference); 1379 case 1293793087: /*mitigation*/ return new Property("mitigation", "", "Indicates an action that has been taken or is committed to reduce or eliminate the likelihood of the risk identified by the detected issue from manifesting. Can also reflect an observation of known mitigating factors that may reduce/eliminate the need for any action.", 0, java.lang.Integer.MAX_VALUE, mitigation); 1380 default: return super.getNamedProperty(_hash, _name, _checkValid); 1381 } 1382 1383 } 1384 1385 @Override 1386 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1387 switch (hash) { 1388 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1389 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<ObservationStatus> 1390 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 1391 case 1478300413: /*severity*/ return this.severity == null ? new Base[0] : new Base[] {this.severity}; // Enumeration<DetectedIssueSeverity> 1392 case -791418107: /*patient*/ return this.patient == null ? new Base[0] : new Base[] {this.patient}; // Reference 1393 case -1618432869: /*identified*/ return this.identified == null ? new Base[0] : new Base[] {this.identified}; // DataType 1394 case -1406328437: /*author*/ return this.author == null ? new Base[0] : new Base[] {this.author}; // Reference 1395 case -810216884: /*implicated*/ return this.implicated == null ? new Base[0] : this.implicated.toArray(new Base[this.implicated.size()]); // Reference 1396 case 382967383: /*evidence*/ return this.evidence == null ? new Base[0] : this.evidence.toArray(new Base[this.evidence.size()]); // DetectedIssueEvidenceComponent 1397 case -1335224239: /*detail*/ return this.detail == null ? new Base[0] : new Base[] {this.detail}; // StringType 1398 case -925155509: /*reference*/ return this.reference == null ? new Base[0] : new Base[] {this.reference}; // UriType 1399 case 1293793087: /*mitigation*/ return this.mitigation == null ? new Base[0] : this.mitigation.toArray(new Base[this.mitigation.size()]); // DetectedIssueMitigationComponent 1400 default: return super.getProperty(hash, name, checkValid); 1401 } 1402 1403 } 1404 1405 @Override 1406 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1407 switch (hash) { 1408 case -1618432855: // identifier 1409 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 1410 return value; 1411 case -892481550: // status 1412 value = new ObservationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 1413 this.status = (Enumeration) value; // Enumeration<ObservationStatus> 1414 return value; 1415 case 3059181: // code 1416 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1417 return value; 1418 case 1478300413: // severity 1419 value = new DetectedIssueSeverityEnumFactory().fromType(TypeConvertor.castToCode(value)); 1420 this.severity = (Enumeration) value; // Enumeration<DetectedIssueSeverity> 1421 return value; 1422 case -791418107: // patient 1423 this.patient = TypeConvertor.castToReference(value); // Reference 1424 return value; 1425 case -1618432869: // identified 1426 this.identified = TypeConvertor.castToType(value); // DataType 1427 return value; 1428 case -1406328437: // author 1429 this.author = TypeConvertor.castToReference(value); // Reference 1430 return value; 1431 case -810216884: // implicated 1432 this.getImplicated().add(TypeConvertor.castToReference(value)); // Reference 1433 return value; 1434 case 382967383: // evidence 1435 this.getEvidence().add((DetectedIssueEvidenceComponent) value); // DetectedIssueEvidenceComponent 1436 return value; 1437 case -1335224239: // detail 1438 this.detail = TypeConvertor.castToString(value); // StringType 1439 return value; 1440 case -925155509: // reference 1441 this.reference = TypeConvertor.castToUri(value); // UriType 1442 return value; 1443 case 1293793087: // mitigation 1444 this.getMitigation().add((DetectedIssueMitigationComponent) value); // DetectedIssueMitigationComponent 1445 return value; 1446 default: return super.setProperty(hash, name, value); 1447 } 1448 1449 } 1450 1451 @Override 1452 public Base setProperty(String name, Base value) throws FHIRException { 1453 if (name.equals("identifier")) { 1454 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 1455 } else if (name.equals("status")) { 1456 value = new ObservationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 1457 this.status = (Enumeration) value; // Enumeration<ObservationStatus> 1458 } else if (name.equals("code")) { 1459 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1460 } else if (name.equals("severity")) { 1461 value = new DetectedIssueSeverityEnumFactory().fromType(TypeConvertor.castToCode(value)); 1462 this.severity = (Enumeration) value; // Enumeration<DetectedIssueSeverity> 1463 } else if (name.equals("patient")) { 1464 this.patient = TypeConvertor.castToReference(value); // Reference 1465 } else if (name.equals("identified[x]")) { 1466 this.identified = TypeConvertor.castToType(value); // DataType 1467 } else if (name.equals("author")) { 1468 this.author = TypeConvertor.castToReference(value); // Reference 1469 } else if (name.equals("implicated")) { 1470 this.getImplicated().add(TypeConvertor.castToReference(value)); 1471 } else if (name.equals("evidence")) { 1472 this.getEvidence().add((DetectedIssueEvidenceComponent) value); 1473 } else if (name.equals("detail")) { 1474 this.detail = TypeConvertor.castToString(value); // StringType 1475 } else if (name.equals("reference")) { 1476 this.reference = TypeConvertor.castToUri(value); // UriType 1477 } else if (name.equals("mitigation")) { 1478 this.getMitigation().add((DetectedIssueMitigationComponent) value); 1479 } else 1480 return super.setProperty(name, value); 1481 return value; 1482 } 1483 1484 @Override 1485 public Base makeProperty(int hash, String name) throws FHIRException { 1486 switch (hash) { 1487 case -1618432855: return addIdentifier(); 1488 case -892481550: return getStatusElement(); 1489 case 3059181: return getCode(); 1490 case 1478300413: return getSeverityElement(); 1491 case -791418107: return getPatient(); 1492 case 569355781: return getIdentified(); 1493 case -1618432869: return getIdentified(); 1494 case -1406328437: return getAuthor(); 1495 case -810216884: return addImplicated(); 1496 case 382967383: return addEvidence(); 1497 case -1335224239: return getDetailElement(); 1498 case -925155509: return getReferenceElement(); 1499 case 1293793087: return addMitigation(); 1500 default: return super.makeProperty(hash, name); 1501 } 1502 1503 } 1504 1505 @Override 1506 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1507 switch (hash) { 1508 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 1509 case -892481550: /*status*/ return new String[] {"code"}; 1510 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 1511 case 1478300413: /*severity*/ return new String[] {"code"}; 1512 case -791418107: /*patient*/ return new String[] {"Reference"}; 1513 case -1618432869: /*identified*/ return new String[] {"dateTime", "Period"}; 1514 case -1406328437: /*author*/ return new String[] {"Reference"}; 1515 case -810216884: /*implicated*/ return new String[] {"Reference"}; 1516 case 382967383: /*evidence*/ return new String[] {}; 1517 case -1335224239: /*detail*/ return new String[] {"string"}; 1518 case -925155509: /*reference*/ return new String[] {"uri"}; 1519 case 1293793087: /*mitigation*/ return new String[] {}; 1520 default: return super.getTypesForProperty(hash, name); 1521 } 1522 1523 } 1524 1525 @Override 1526 public Base addChild(String name) throws FHIRException { 1527 if (name.equals("identifier")) { 1528 return addIdentifier(); 1529 } 1530 else if (name.equals("status")) { 1531 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.status"); 1532 } 1533 else if (name.equals("code")) { 1534 this.code = new CodeableConcept(); 1535 return this.code; 1536 } 1537 else if (name.equals("severity")) { 1538 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.severity"); 1539 } 1540 else if (name.equals("patient")) { 1541 this.patient = new Reference(); 1542 return this.patient; 1543 } 1544 else if (name.equals("identifiedDateTime")) { 1545 this.identified = new DateTimeType(); 1546 return this.identified; 1547 } 1548 else if (name.equals("identifiedPeriod")) { 1549 this.identified = new Period(); 1550 return this.identified; 1551 } 1552 else if (name.equals("author")) { 1553 this.author = new Reference(); 1554 return this.author; 1555 } 1556 else if (name.equals("implicated")) { 1557 return addImplicated(); 1558 } 1559 else if (name.equals("evidence")) { 1560 return addEvidence(); 1561 } 1562 else if (name.equals("detail")) { 1563 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.detail"); 1564 } 1565 else if (name.equals("reference")) { 1566 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.reference"); 1567 } 1568 else if (name.equals("mitigation")) { 1569 return addMitigation(); 1570 } 1571 else 1572 return super.addChild(name); 1573 } 1574 1575 public String fhirType() { 1576 return "DetectedIssue"; 1577 1578 } 1579 1580 public DetectedIssue copy() { 1581 DetectedIssue dst = new DetectedIssue(); 1582 copyValues(dst); 1583 return dst; 1584 } 1585 1586 public void copyValues(DetectedIssue dst) { 1587 super.copyValues(dst); 1588 if (identifier != null) { 1589 dst.identifier = new ArrayList<Identifier>(); 1590 for (Identifier i : identifier) 1591 dst.identifier.add(i.copy()); 1592 }; 1593 dst.status = status == null ? null : status.copy(); 1594 dst.code = code == null ? null : code.copy(); 1595 dst.severity = severity == null ? null : severity.copy(); 1596 dst.patient = patient == null ? null : patient.copy(); 1597 dst.identified = identified == null ? null : identified.copy(); 1598 dst.author = author == null ? null : author.copy(); 1599 if (implicated != null) { 1600 dst.implicated = new ArrayList<Reference>(); 1601 for (Reference i : implicated) 1602 dst.implicated.add(i.copy()); 1603 }; 1604 if (evidence != null) { 1605 dst.evidence = new ArrayList<DetectedIssueEvidenceComponent>(); 1606 for (DetectedIssueEvidenceComponent i : evidence) 1607 dst.evidence.add(i.copy()); 1608 }; 1609 dst.detail = detail == null ? null : detail.copy(); 1610 dst.reference = reference == null ? null : reference.copy(); 1611 if (mitigation != null) { 1612 dst.mitigation = new ArrayList<DetectedIssueMitigationComponent>(); 1613 for (DetectedIssueMitigationComponent i : mitigation) 1614 dst.mitigation.add(i.copy()); 1615 }; 1616 } 1617 1618 protected DetectedIssue typedCopy() { 1619 return copy(); 1620 } 1621 1622 @Override 1623 public boolean equalsDeep(Base other_) { 1624 if (!super.equalsDeep(other_)) 1625 return false; 1626 if (!(other_ instanceof DetectedIssue)) 1627 return false; 1628 DetectedIssue o = (DetectedIssue) other_; 1629 return compareDeep(identifier, o.identifier, true) && compareDeep(status, o.status, true) && compareDeep(code, o.code, true) 1630 && compareDeep(severity, o.severity, true) && compareDeep(patient, o.patient, true) && compareDeep(identified, o.identified, true) 1631 && compareDeep(author, o.author, true) && compareDeep(implicated, o.implicated, true) && compareDeep(evidence, o.evidence, true) 1632 && compareDeep(detail, o.detail, true) && compareDeep(reference, o.reference, true) && compareDeep(mitigation, o.mitigation, true) 1633 ; 1634 } 1635 1636 @Override 1637 public boolean equalsShallow(Base other_) { 1638 if (!super.equalsShallow(other_)) 1639 return false; 1640 if (!(other_ instanceof DetectedIssue)) 1641 return false; 1642 DetectedIssue o = (DetectedIssue) other_; 1643 return compareValues(status, o.status, true) && compareValues(severity, o.severity, true) && compareValues(detail, o.detail, true) 1644 && compareValues(reference, o.reference, true); 1645 } 1646 1647 public boolean isEmpty() { 1648 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, status, code 1649 , severity, patient, identified, author, implicated, evidence, detail, reference 1650 , mitigation); 1651 } 1652 1653 @Override 1654 public ResourceType getResourceType() { 1655 return ResourceType.DetectedIssue; 1656 } 1657 1658 /** 1659 * Search parameter: <b>author</b> 1660 * <p> 1661 * Description: <b>The provider or device that identified the issue</b><br> 1662 * Type: <b>reference</b><br> 1663 * Path: <b>DetectedIssue.author</b><br> 1664 * </p> 1665 */ 1666 @SearchParamDefinition(name="author", path="DetectedIssue.author", description="The provider or device that identified the issue", 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 Practitioner") }, target={Device.class, Practitioner.class, PractitionerRole.class } ) 1667 public static final String SP_AUTHOR = "author"; 1668 /** 1669 * <b>Fluent Client</b> search parameter constant for <b>author</b> 1670 * <p> 1671 * Description: <b>The provider or device that identified the issue</b><br> 1672 * Type: <b>reference</b><br> 1673 * Path: <b>DetectedIssue.author</b><br> 1674 * </p> 1675 */ 1676 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam AUTHOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_AUTHOR); 1677 1678/** 1679 * Constant for fluent queries to be used to add include statements. Specifies 1680 * the path value of "<b>DetectedIssue:author</b>". 1681 */ 1682 public static final ca.uhn.fhir.model.api.Include INCLUDE_AUTHOR = new ca.uhn.fhir.model.api.Include("DetectedIssue:author").toLocked(); 1683 1684 /** 1685 * Search parameter: <b>code</b> 1686 * <p> 1687 * Description: <b>Issue Category, e.g. drug-drug, duplicate therapy, etc.</b><br> 1688 * Type: <b>token</b><br> 1689 * Path: <b>DetectedIssue.code</b><br> 1690 * </p> 1691 */ 1692 @SearchParamDefinition(name="code", path="DetectedIssue.code", description="Issue Category, e.g. drug-drug, duplicate therapy, etc.", type="token" ) 1693 public static final String SP_CODE = "code"; 1694 /** 1695 * <b>Fluent Client</b> search parameter constant for <b>code</b> 1696 * <p> 1697 * Description: <b>Issue Category, e.g. drug-drug, duplicate therapy, etc.</b><br> 1698 * Type: <b>token</b><br> 1699 * Path: <b>DetectedIssue.code</b><br> 1700 * </p> 1701 */ 1702 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); 1703 1704 /** 1705 * Search parameter: <b>identified</b> 1706 * <p> 1707 * Description: <b>When identified</b><br> 1708 * Type: <b>date</b><br> 1709 * Path: <b>DetectedIssue.identified</b><br> 1710 * </p> 1711 */ 1712 @SearchParamDefinition(name="identified", path="DetectedIssue.identified", description="When identified", type="date" ) 1713 public static final String SP_IDENTIFIED = "identified"; 1714 /** 1715 * <b>Fluent Client</b> search parameter constant for <b>identified</b> 1716 * <p> 1717 * Description: <b>When identified</b><br> 1718 * Type: <b>date</b><br> 1719 * Path: <b>DetectedIssue.identified</b><br> 1720 * </p> 1721 */ 1722 public static final ca.uhn.fhir.rest.gclient.DateClientParam IDENTIFIED = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_IDENTIFIED); 1723 1724 /** 1725 * Search parameter: <b>implicated</b> 1726 * <p> 1727 * Description: <b>Problem resource</b><br> 1728 * Type: <b>reference</b><br> 1729 * Path: <b>DetectedIssue.implicated</b><br> 1730 * </p> 1731 */ 1732 @SearchParamDefinition(name="implicated", path="DetectedIssue.implicated", description="Problem resource", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, CatalogEntry.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, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.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, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Media.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationStatement.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchDefinition.class, ResearchElementDefinition.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, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 1733 public static final String SP_IMPLICATED = "implicated"; 1734 /** 1735 * <b>Fluent Client</b> search parameter constant for <b>implicated</b> 1736 * <p> 1737 * Description: <b>Problem resource</b><br> 1738 * Type: <b>reference</b><br> 1739 * Path: <b>DetectedIssue.implicated</b><br> 1740 * </p> 1741 */ 1742 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam IMPLICATED = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_IMPLICATED); 1743 1744/** 1745 * Constant for fluent queries to be used to add include statements. Specifies 1746 * the path value of "<b>DetectedIssue:implicated</b>". 1747 */ 1748 public static final ca.uhn.fhir.model.api.Include INCLUDE_IMPLICATED = new ca.uhn.fhir.model.api.Include("DetectedIssue:implicated").toLocked(); 1749 1750 /** 1751 * Search parameter: <b>identifier</b> 1752 * <p> 1753 * Description: <b>Multiple Resources: 1754 1755* [AllergyIntolerance](allergyintolerance.html): External ids for this item 1756* [CarePlan](careplan.html): External Ids for this plan 1757* [CareTeam](careteam.html): External Ids for this team 1758* [Composition](composition.html): Version-independent identifier for the Composition 1759* [Condition](condition.html): A unique identifier of the condition record 1760* [Consent](consent.html): Identifier for this record (external references) 1761* [DetectedIssue](detectedissue.html): Unique id for the detected issue 1762* [DeviceRequest](devicerequest.html): Business identifier for request/order 1763* [DiagnosticReport](diagnosticreport.html): An identifier for the report 1764* [DocumentManifest](documentmanifest.html): Unique Identifier for the set of documents 1765* [DocumentReference](documentreference.html): Master Version Specific Identifier 1766* [Encounter](encounter.html): Identifier(s) by which this encounter is known 1767* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 1768* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 1769* [Goal](goal.html): External Ids for this goal 1770* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID and Accession number 1771* [Immunization](immunization.html): Business identifier 1772* [List](list.html): Business identifier 1773* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 1774* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 1775* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 1776* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 1777* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 1778* [Observation](observation.html): The unique id for a particular observation 1779* [Procedure](procedure.html): A unique identifier for a procedure 1780* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 1781* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 1782* [SupplyDelivery](supplydelivery.html): External identifier 1783* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 1784* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 1785</b><br> 1786 * Type: <b>token</b><br> 1787 * Path: <b>AllergyIntolerance.identifier | CarePlan.identifier | CareTeam.identifier | Composition.identifier | Condition.identifier | Consent.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DiagnosticReport.identifier | DocumentManifest.masterIdentifier | DocumentManifest.identifier | DocumentReference.masterIdentifier | DocumentReference.identifier | Encounter.identifier | EpisodeOfCare.identifier | FamilyMemberHistory.identifier | Goal.identifier | ImagingStudy.identifier | Immunization.identifier | List.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationStatement.identifier | NutritionOrder.identifier | Observation.identifier | Procedure.identifier | RiskAssessment.identifier | ServiceRequest.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | VisionPrescription.identifier</b><br> 1788 * </p> 1789 */ 1790 @SearchParamDefinition(name="identifier", path="AllergyIntolerance.identifier | CarePlan.identifier | CareTeam.identifier | Composition.identifier | Condition.identifier | Consent.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DiagnosticReport.identifier | DocumentManifest.masterIdentifier | DocumentManifest.identifier | DocumentReference.masterIdentifier | DocumentReference.identifier | Encounter.identifier | EpisodeOfCare.identifier | FamilyMemberHistory.identifier | Goal.identifier | ImagingStudy.identifier | Immunization.identifier | List.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationStatement.identifier | NutritionOrder.identifier | Observation.identifier | Procedure.identifier | RiskAssessment.identifier | ServiceRequest.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | VisionPrescription.identifier", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): External ids for this item\r\n* [CarePlan](careplan.html): External Ids for this plan\r\n* [CareTeam](careteam.html): External Ids for this team\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* [DetectedIssue](detectedissue.html): Unique id for the detected issue\r\n* [DeviceRequest](devicerequest.html): Business identifier for request/order\r\n* [DiagnosticReport](diagnosticreport.html): An identifier for the report\r\n* [DocumentManifest](documentmanifest.html): Unique Identifier for the set of documents\r\n* [DocumentReference](documentreference.html): Master Version Specific Identifier\r\n* [Encounter](encounter.html): Identifier(s) by which this encounter is known\r\n* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier\r\n* [Goal](goal.html): External Ids for this goal\r\n* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID and Accession number\r\n* [Immunization](immunization.html): Business identifier\r\n* [List](list.html): Business 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* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier\r\n* [Observation](observation.html): The unique id for a particular observation\r\n* [Procedure](procedure.html): A unique identifier for a procedure\r\n* [RiskAssessment](riskassessment.html): Unique identifier for the assessment\r\n* [ServiceRequest](servicerequest.html): Identifiers assigned to this order\r\n* [SupplyDelivery](supplydelivery.html): External identifier\r\n* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest\r\n* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier\r\n", type="token" ) 1791 public static final String SP_IDENTIFIER = "identifier"; 1792 /** 1793 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1794 * <p> 1795 * Description: <b>Multiple Resources: 1796 1797* [AllergyIntolerance](allergyintolerance.html): External ids for this item 1798* [CarePlan](careplan.html): External Ids for this plan 1799* [CareTeam](careteam.html): External Ids for this team 1800* [Composition](composition.html): Version-independent identifier for the Composition 1801* [Condition](condition.html): A unique identifier of the condition record 1802* [Consent](consent.html): Identifier for this record (external references) 1803* [DetectedIssue](detectedissue.html): Unique id for the detected issue 1804* [DeviceRequest](devicerequest.html): Business identifier for request/order 1805* [DiagnosticReport](diagnosticreport.html): An identifier for the report 1806* [DocumentManifest](documentmanifest.html): Unique Identifier for the set of documents 1807* [DocumentReference](documentreference.html): Master Version Specific Identifier 1808* [Encounter](encounter.html): Identifier(s) by which this encounter is known 1809* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 1810* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 1811* [Goal](goal.html): External Ids for this goal 1812* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID and Accession number 1813* [Immunization](immunization.html): Business identifier 1814* [List](list.html): Business identifier 1815* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 1816* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 1817* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 1818* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 1819* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 1820* [Observation](observation.html): The unique id for a particular observation 1821* [Procedure](procedure.html): A unique identifier for a procedure 1822* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 1823* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 1824* [SupplyDelivery](supplydelivery.html): External identifier 1825* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 1826* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 1827</b><br> 1828 * Type: <b>token</b><br> 1829 * Path: <b>AllergyIntolerance.identifier | CarePlan.identifier | CareTeam.identifier | Composition.identifier | Condition.identifier | Consent.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DiagnosticReport.identifier | DocumentManifest.masterIdentifier | DocumentManifest.identifier | DocumentReference.masterIdentifier | DocumentReference.identifier | Encounter.identifier | EpisodeOfCare.identifier | FamilyMemberHistory.identifier | Goal.identifier | ImagingStudy.identifier | Immunization.identifier | List.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationStatement.identifier | NutritionOrder.identifier | Observation.identifier | Procedure.identifier | RiskAssessment.identifier | ServiceRequest.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | VisionPrescription.identifier</b><br> 1830 * </p> 1831 */ 1832 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1833 1834 /** 1835 * Search parameter: <b>patient</b> 1836 * <p> 1837 * Description: <b>Multiple Resources: 1838 1839* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 1840* [CarePlan](careplan.html): Who the care plan is for 1841* [CareTeam](careteam.html): Who care team is for 1842* [ClinicalImpression](clinicalimpression.html): Patient or group assessed 1843* [Composition](composition.html): Who and/or what the composition is about 1844* [Condition](condition.html): Who has the condition? 1845* [Consent](consent.html): Who the consent applies to 1846* [DetectedIssue](detectedissue.html): Associated patient 1847* [DeviceRequest](devicerequest.html): Individual the service is ordered for 1848* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient 1849* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 1850* [DocumentManifest](documentmanifest.html): The subject of the set of documents 1851* [DocumentReference](documentreference.html): Who/what is the subject of the document 1852* [Encounter](encounter.html): The patient or group present at the encounter 1853* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 1854* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 1855* [Flag](flag.html): The identity of a subject to list flags for 1856* [Goal](goal.html): Who this goal is intended for 1857* [ImagingStudy](imagingstudy.html): Who the study is about 1858* [Immunization](immunization.html): The patient for the vaccination record 1859* [List](list.html): If all resources have the same subject 1860* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 1861* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 1862* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 1863* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 1864* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement 1865* [Observation](observation.html): The subject that the observation is about (if patient) 1866* [Procedure](procedure.html): Search by subject - a patient 1867* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 1868* [ServiceRequest](servicerequest.html): Search by subject - a patient 1869* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 1870* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 1871</b><br> 1872 * Type: <b>reference</b><br> 1873 * Path: <b>AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject.where(resolve() is Patient) | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.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) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient</b><br> 1874 * </p> 1875 */ 1876 @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject.where(resolve() is Patient) | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.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) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\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* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\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* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\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* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, CatalogEntry.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, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.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, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Media.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationStatement.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchDefinition.class, ResearchElementDefinition.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, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 1877 public static final String SP_PATIENT = "patient"; 1878 /** 1879 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 1880 * <p> 1881 * Description: <b>Multiple Resources: 1882 1883* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 1884* [CarePlan](careplan.html): Who the care plan is for 1885* [CareTeam](careteam.html): Who care team is for 1886* [ClinicalImpression](clinicalimpression.html): Patient or group assessed 1887* [Composition](composition.html): Who and/or what the composition is about 1888* [Condition](condition.html): Who has the condition? 1889* [Consent](consent.html): Who the consent applies to 1890* [DetectedIssue](detectedissue.html): Associated patient 1891* [DeviceRequest](devicerequest.html): Individual the service is ordered for 1892* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient 1893* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 1894* [DocumentManifest](documentmanifest.html): The subject of the set of documents 1895* [DocumentReference](documentreference.html): Who/what is the subject of the document 1896* [Encounter](encounter.html): The patient or group present at the encounter 1897* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 1898* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 1899* [Flag](flag.html): The identity of a subject to list flags for 1900* [Goal](goal.html): Who this goal is intended for 1901* [ImagingStudy](imagingstudy.html): Who the study is about 1902* [Immunization](immunization.html): The patient for the vaccination record 1903* [List](list.html): If all resources have the same subject 1904* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 1905* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 1906* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 1907* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 1908* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement 1909* [Observation](observation.html): The subject that the observation is about (if patient) 1910* [Procedure](procedure.html): Search by subject - a patient 1911* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 1912* [ServiceRequest](servicerequest.html): Search by subject - a patient 1913* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 1914* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 1915</b><br> 1916 * Type: <b>reference</b><br> 1917 * Path: <b>AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject.where(resolve() is Patient) | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.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) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient</b><br> 1918 * </p> 1919 */ 1920 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 1921 1922/** 1923 * Constant for fluent queries to be used to add include statements. Specifies 1924 * the path value of "<b>DetectedIssue:patient</b>". 1925 */ 1926 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("DetectedIssue:patient").toLocked(); 1927 1928 1929} 1930