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