001package org.hl7.fhir.dstu2016may.model; 002 003/* 004 Copyright (c) 2011+, HL7, Inc. 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without modification, 008 are permitted provided that the following conditions are met: 009 010 * Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 * Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 * Neither the name of HL7 nor the names of its contributors may be used to 016 endorse or promote products derived from this software without specific 017 prior written permission. 018 019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 020 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 021 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 022 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 023 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 024 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 025 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 026 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 027 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 028 POSSIBILITY OF SUCH DAMAGE. 029 030*/ 031 032// Generated on Sun, May 8, 2016 03:05+1000 for FHIR v1.4.0 033import java.util.ArrayList; 034import java.util.Date; 035import java.util.List; 036 037import org.hl7.fhir.exceptions.FHIRException; 038import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 039import org.hl7.fhir.utilities.Utilities; 040 041import ca.uhn.fhir.model.api.annotation.Block; 042import ca.uhn.fhir.model.api.annotation.Child; 043import ca.uhn.fhir.model.api.annotation.Description; 044import ca.uhn.fhir.model.api.annotation.ResourceDef; 045import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 046/** 047 * 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. 048 */ 049@ResourceDef(name="DetectedIssue", profile="http://hl7.org/fhir/Profile/DetectedIssue") 050public class DetectedIssue extends DomainResource { 051 052 public enum DetectedIssueSeverity { 053 /** 054 * Indicates the issue may be life-threatening or has the potential to cause permanent injury. 055 */ 056 HIGH, 057 /** 058 * Indicates the issue may result in noticeable adverse consequences but is unlikely to be life-threatening or cause permanent injury. 059 */ 060 MODERATE, 061 /** 062 * Indicates the issue may result in some adverse consequences but is unlikely to substantially affect the situation of the subject. 063 */ 064 LOW, 065 /** 066 * added to help the parsers 067 */ 068 NULL; 069 public static DetectedIssueSeverity fromCode(String codeString) throws FHIRException { 070 if (codeString == null || "".equals(codeString)) 071 return null; 072 if ("high".equals(codeString)) 073 return HIGH; 074 if ("moderate".equals(codeString)) 075 return MODERATE; 076 if ("low".equals(codeString)) 077 return LOW; 078 throw new FHIRException("Unknown DetectedIssueSeverity code '"+codeString+"'"); 079 } 080 public String toCode() { 081 switch (this) { 082 case HIGH: return "high"; 083 case MODERATE: return "moderate"; 084 case LOW: return "low"; 085 default: return "?"; 086 } 087 } 088 public String getSystem() { 089 switch (this) { 090 case HIGH: return "http://hl7.org/fhir/detectedissue-severity"; 091 case MODERATE: return "http://hl7.org/fhir/detectedissue-severity"; 092 case LOW: return "http://hl7.org/fhir/detectedissue-severity"; 093 default: return "?"; 094 } 095 } 096 public String getDefinition() { 097 switch (this) { 098 case HIGH: return "Indicates the issue may be life-threatening or has the potential to cause permanent injury."; 099 case MODERATE: return "Indicates the issue may result in noticeable adverse consequences but is unlikely to be life-threatening or cause permanent injury."; 100 case LOW: return "Indicates the issue may result in some adverse consequences but is unlikely to substantially affect the situation of the subject."; 101 default: return "?"; 102 } 103 } 104 public String getDisplay() { 105 switch (this) { 106 case HIGH: return "High"; 107 case MODERATE: return "Moderate"; 108 case LOW: return "Low"; 109 default: return "?"; 110 } 111 } 112 } 113 114 public static class DetectedIssueSeverityEnumFactory implements EnumFactory<DetectedIssueSeverity> { 115 public DetectedIssueSeverity fromCode(String codeString) throws IllegalArgumentException { 116 if (codeString == null || "".equals(codeString)) 117 if (codeString == null || "".equals(codeString)) 118 return null; 119 if ("high".equals(codeString)) 120 return DetectedIssueSeverity.HIGH; 121 if ("moderate".equals(codeString)) 122 return DetectedIssueSeverity.MODERATE; 123 if ("low".equals(codeString)) 124 return DetectedIssueSeverity.LOW; 125 throw new IllegalArgumentException("Unknown DetectedIssueSeverity code '"+codeString+"'"); 126 } 127 public Enumeration<DetectedIssueSeverity> fromType(Base code) throws FHIRException { 128 if (code == null || code.isEmpty()) 129 return null; 130 String codeString = ((PrimitiveType) code).asStringValue(); 131 if (codeString == null || "".equals(codeString)) 132 return null; 133 if ("high".equals(codeString)) 134 return new Enumeration<DetectedIssueSeverity>(this, DetectedIssueSeverity.HIGH); 135 if ("moderate".equals(codeString)) 136 return new Enumeration<DetectedIssueSeverity>(this, DetectedIssueSeverity.MODERATE); 137 if ("low".equals(codeString)) 138 return new Enumeration<DetectedIssueSeverity>(this, DetectedIssueSeverity.LOW); 139 throw new FHIRException("Unknown DetectedIssueSeverity code '"+codeString+"'"); 140 } 141 public String toCode(DetectedIssueSeverity code) { 142 if (code == DetectedIssueSeverity.HIGH) 143 return "high"; 144 if (code == DetectedIssueSeverity.MODERATE) 145 return "moderate"; 146 if (code == DetectedIssueSeverity.LOW) 147 return "low"; 148 return "?"; 149 } 150 public String toSystem(DetectedIssueSeverity code) { 151 return code.getSystem(); 152 } 153 } 154 155 @Block() 156 public static class DetectedIssueMitigationComponent extends BackboneElement implements IBaseBackboneElement { 157 /** 158 * Describes the action that was taken or the observation that was made that reduces/eliminates the risk associated with the identified issue. 159 */ 160 @Child(name = "action", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) 161 @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." ) 162 protected CodeableConcept action; 163 164 /** 165 * Indicates when the mitigating action was documented. 166 */ 167 @Child(name = "date", type = {DateTimeType.class}, order=2, min=0, max=1, modifier=false, summary=false) 168 @Description(shortDefinition="Date committed", formalDefinition="Indicates when the mitigating action was documented." ) 169 protected DateTimeType date; 170 171 /** 172 * Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring. 173 */ 174 @Child(name = "author", type = {Practitioner.class}, order=3, min=0, max=1, modifier=false, summary=false) 175 @Description(shortDefinition="Who is committing?", formalDefinition="Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring." ) 176 protected Reference author; 177 178 /** 179 * The actual object that is the target of the reference (Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.) 180 */ 181 protected Practitioner authorTarget; 182 183 private static final long serialVersionUID = -1994768436L; 184 185 /** 186 * Constructor 187 */ 188 public DetectedIssueMitigationComponent() { 189 super(); 190 } 191 192 /** 193 * Constructor 194 */ 195 public DetectedIssueMitigationComponent(CodeableConcept action) { 196 super(); 197 this.action = action; 198 } 199 200 /** 201 * @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.) 202 */ 203 public CodeableConcept getAction() { 204 if (this.action == null) 205 if (Configuration.errorOnAutoCreate()) 206 throw new Error("Attempt to auto-create DetectedIssueMitigationComponent.action"); 207 else if (Configuration.doAutoCreate()) 208 this.action = new CodeableConcept(); // cc 209 return this.action; 210 } 211 212 public boolean hasAction() { 213 return this.action != null && !this.action.isEmpty(); 214 } 215 216 /** 217 * @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.) 218 */ 219 public DetectedIssueMitigationComponent setAction(CodeableConcept value) { 220 this.action = value; 221 return this; 222 } 223 224 /** 225 * @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 226 */ 227 public DateTimeType getDateElement() { 228 if (this.date == null) 229 if (Configuration.errorOnAutoCreate()) 230 throw new Error("Attempt to auto-create DetectedIssueMitigationComponent.date"); 231 else if (Configuration.doAutoCreate()) 232 this.date = new DateTimeType(); // bb 233 return this.date; 234 } 235 236 public boolean hasDateElement() { 237 return this.date != null && !this.date.isEmpty(); 238 } 239 240 public boolean hasDate() { 241 return this.date != null && !this.date.isEmpty(); 242 } 243 244 /** 245 * @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 246 */ 247 public DetectedIssueMitigationComponent setDateElement(DateTimeType value) { 248 this.date = value; 249 return this; 250 } 251 252 /** 253 * @return Indicates when the mitigating action was documented. 254 */ 255 public Date getDate() { 256 return this.date == null ? null : this.date.getValue(); 257 } 258 259 /** 260 * @param value Indicates when the mitigating action was documented. 261 */ 262 public DetectedIssueMitigationComponent setDate(Date value) { 263 if (value == null) 264 this.date = null; 265 else { 266 if (this.date == null) 267 this.date = new DateTimeType(); 268 this.date.setValue(value); 269 } 270 return this; 271 } 272 273 /** 274 * @return {@link #author} (Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.) 275 */ 276 public Reference getAuthor() { 277 if (this.author == null) 278 if (Configuration.errorOnAutoCreate()) 279 throw new Error("Attempt to auto-create DetectedIssueMitigationComponent.author"); 280 else if (Configuration.doAutoCreate()) 281 this.author = new Reference(); // cc 282 return this.author; 283 } 284 285 public boolean hasAuthor() { 286 return this.author != null && !this.author.isEmpty(); 287 } 288 289 /** 290 * @param value {@link #author} (Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.) 291 */ 292 public DetectedIssueMitigationComponent setAuthor(Reference value) { 293 this.author = value; 294 return this; 295 } 296 297 /** 298 * @return {@link #author} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.) 299 */ 300 public Practitioner getAuthorTarget() { 301 if (this.authorTarget == null) 302 if (Configuration.errorOnAutoCreate()) 303 throw new Error("Attempt to auto-create DetectedIssueMitigationComponent.author"); 304 else if (Configuration.doAutoCreate()) 305 this.authorTarget = new Practitioner(); // aa 306 return this.authorTarget; 307 } 308 309 /** 310 * @param value {@link #author} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.) 311 */ 312 public DetectedIssueMitigationComponent setAuthorTarget(Practitioner value) { 313 this.authorTarget = value; 314 return this; 315 } 316 317 protected void listChildren(List<Property> childrenList) { 318 super.listChildren(childrenList); 319 childrenList.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, java.lang.Integer.MAX_VALUE, action)); 320 childrenList.add(new Property("date", "dateTime", "Indicates when the mitigating action was documented.", 0, java.lang.Integer.MAX_VALUE, date)); 321 childrenList.add(new Property("author", "Reference(Practitioner)", "Identifies the practitioner who determined the mitigation and takes responsibility for the mitigation step occurring.", 0, java.lang.Integer.MAX_VALUE, author)); 322 } 323 324 @Override 325 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 326 switch (hash) { 327 case -1422950858: /*action*/ return this.action == null ? new Base[0] : new Base[] {this.action}; // CodeableConcept 328 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 329 case -1406328437: /*author*/ return this.author == null ? new Base[0] : new Base[] {this.author}; // Reference 330 default: return super.getProperty(hash, name, checkValid); 331 } 332 333 } 334 335 @Override 336 public void setProperty(int hash, String name, Base value) throws FHIRException { 337 switch (hash) { 338 case -1422950858: // action 339 this.action = castToCodeableConcept(value); // CodeableConcept 340 break; 341 case 3076014: // date 342 this.date = castToDateTime(value); // DateTimeType 343 break; 344 case -1406328437: // author 345 this.author = castToReference(value); // Reference 346 break; 347 default: super.setProperty(hash, name, value); 348 } 349 350 } 351 352 @Override 353 public void setProperty(String name, Base value) throws FHIRException { 354 if (name.equals("action")) 355 this.action = castToCodeableConcept(value); // CodeableConcept 356 else if (name.equals("date")) 357 this.date = castToDateTime(value); // DateTimeType 358 else if (name.equals("author")) 359 this.author = castToReference(value); // Reference 360 else 361 super.setProperty(name, value); 362 } 363 364 @Override 365 public Base makeProperty(int hash, String name) throws FHIRException { 366 switch (hash) { 367 case -1422950858: return getAction(); // CodeableConcept 368 case 3076014: throw new FHIRException("Cannot make property date as it is not a complex type"); // DateTimeType 369 case -1406328437: return getAuthor(); // Reference 370 default: return super.makeProperty(hash, name); 371 } 372 373 } 374 375 @Override 376 public Base addChild(String name) throws FHIRException { 377 if (name.equals("action")) { 378 this.action = new CodeableConcept(); 379 return this.action; 380 } 381 else if (name.equals("date")) { 382 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.date"); 383 } 384 else if (name.equals("author")) { 385 this.author = new Reference(); 386 return this.author; 387 } 388 else 389 return super.addChild(name); 390 } 391 392 public DetectedIssueMitigationComponent copy() { 393 DetectedIssueMitigationComponent dst = new DetectedIssueMitigationComponent(); 394 copyValues(dst); 395 dst.action = action == null ? null : action.copy(); 396 dst.date = date == null ? null : date.copy(); 397 dst.author = author == null ? null : author.copy(); 398 return dst; 399 } 400 401 @Override 402 public boolean equalsDeep(Base other) { 403 if (!super.equalsDeep(other)) 404 return false; 405 if (!(other instanceof DetectedIssueMitigationComponent)) 406 return false; 407 DetectedIssueMitigationComponent o = (DetectedIssueMitigationComponent) other; 408 return compareDeep(action, o.action, true) && compareDeep(date, o.date, true) && compareDeep(author, o.author, true) 409 ; 410 } 411 412 @Override 413 public boolean equalsShallow(Base other) { 414 if (!super.equalsShallow(other)) 415 return false; 416 if (!(other instanceof DetectedIssueMitigationComponent)) 417 return false; 418 DetectedIssueMitigationComponent o = (DetectedIssueMitigationComponent) other; 419 return compareValues(date, o.date, true); 420 } 421 422 public boolean isEmpty() { 423 return super.isEmpty() && (action == null || action.isEmpty()) && (date == null || date.isEmpty()) 424 && (author == null || author.isEmpty()); 425 } 426 427 public String fhirType() { 428 return "DetectedIssue.mitigation"; 429 430 } 431 432 } 433 434 /** 435 * Indicates the patient whose record the detected issue is associated with. 436 */ 437 @Child(name = "patient", type = {Patient.class}, order=0, min=0, max=1, modifier=false, summary=true) 438 @Description(shortDefinition="Associated patient", formalDefinition="Indicates the patient whose record the detected issue is associated with." ) 439 protected Reference patient; 440 441 /** 442 * The actual object that is the target of the reference (Indicates the patient whose record the detected issue is associated with.) 443 */ 444 protected Patient patientTarget; 445 446 /** 447 * Identifies the general type of issue identified. 448 */ 449 @Child(name = "category", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) 450 @Description(shortDefinition="Issue Category, e.g. drug-drug, duplicate therapy, etc.", formalDefinition="Identifies the general type of issue identified." ) 451 protected CodeableConcept category; 452 453 /** 454 * Indicates the degree of importance associated with the identified issue based on the potential impact on the patient. 455 */ 456 @Child(name = "severity", type = {CodeType.class}, order=2, min=0, max=1, modifier=false, summary=true) 457 @Description(shortDefinition="high | moderate | low", formalDefinition="Indicates the degree of importance associated with the identified issue based on the potential impact on the patient." ) 458 protected Enumeration<DetectedIssueSeverity> severity; 459 460 /** 461 * Indicates the resource representing the current activity or proposed activity that is potentially problematic. 462 */ 463 @Child(name = "implicated", type = {}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 464 @Description(shortDefinition="Problem resource", formalDefinition="Indicates the resource representing the current activity or proposed activity that is potentially problematic." ) 465 protected List<Reference> implicated; 466 /** 467 * The actual objects that are the target of the reference (Indicates the resource representing the current activity or proposed activity that is potentially problematic.) 468 */ 469 protected List<Resource> implicatedTarget; 470 471 472 /** 473 * A textual explanation of the detected issue. 474 */ 475 @Child(name = "detail", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) 476 @Description(shortDefinition="Description and context", formalDefinition="A textual explanation of the detected issue." ) 477 protected StringType detail; 478 479 /** 480 * The date or date-time when the detected issue was initially identified. 481 */ 482 @Child(name = "date", type = {DateTimeType.class}, order=5, min=0, max=1, modifier=false, summary=true) 483 @Description(shortDefinition="When identified", formalDefinition="The date or date-time when the detected issue was initially identified." ) 484 protected DateTimeType date; 485 486 /** 487 * Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review. 488 */ 489 @Child(name = "author", type = {Practitioner.class, Device.class}, order=6, min=0, max=1, modifier=false, summary=true) 490 @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." ) 491 protected Reference author; 492 493 /** 494 * The actual object that is the target of the reference (Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review.) 495 */ 496 protected Resource authorTarget; 497 498 /** 499 * Business identifier associated with the detected issue record. 500 */ 501 @Child(name = "identifier", type = {Identifier.class}, order=7, min=0, max=1, modifier=false, summary=true) 502 @Description(shortDefinition="Unique id for the detected issue", formalDefinition="Business identifier associated with the detected issue record." ) 503 protected Identifier identifier; 504 505 /** 506 * The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified. 507 */ 508 @Child(name = "reference", type = {UriType.class}, order=8, min=0, max=1, modifier=false, summary=false) 509 @Description(shortDefinition="Authority for issue", formalDefinition="The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified." ) 510 protected UriType reference; 511 512 /** 513 * Indicates an action that has been taken or is committed to 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. 514 */ 515 @Child(name = "mitigation", type = {}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 516 @Description(shortDefinition="Step taken to address", formalDefinition="Indicates an action that has been taken or is committed to 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." ) 517 protected List<DetectedIssueMitigationComponent> mitigation; 518 519 private static final long serialVersionUID = -403732234L; 520 521 /** 522 * Constructor 523 */ 524 public DetectedIssue() { 525 super(); 526 } 527 528 /** 529 * @return {@link #patient} (Indicates the patient whose record the detected issue is associated with.) 530 */ 531 public Reference getPatient() { 532 if (this.patient == null) 533 if (Configuration.errorOnAutoCreate()) 534 throw new Error("Attempt to auto-create DetectedIssue.patient"); 535 else if (Configuration.doAutoCreate()) 536 this.patient = new Reference(); // cc 537 return this.patient; 538 } 539 540 public boolean hasPatient() { 541 return this.patient != null && !this.patient.isEmpty(); 542 } 543 544 /** 545 * @param value {@link #patient} (Indicates the patient whose record the detected issue is associated with.) 546 */ 547 public DetectedIssue setPatient(Reference value) { 548 this.patient = value; 549 return this; 550 } 551 552 /** 553 * @return {@link #patient} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (Indicates the patient whose record the detected issue is associated with.) 554 */ 555 public Patient getPatientTarget() { 556 if (this.patientTarget == null) 557 if (Configuration.errorOnAutoCreate()) 558 throw new Error("Attempt to auto-create DetectedIssue.patient"); 559 else if (Configuration.doAutoCreate()) 560 this.patientTarget = new Patient(); // aa 561 return this.patientTarget; 562 } 563 564 /** 565 * @param value {@link #patient} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (Indicates the patient whose record the detected issue is associated with.) 566 */ 567 public DetectedIssue setPatientTarget(Patient value) { 568 this.patientTarget = value; 569 return this; 570 } 571 572 /** 573 * @return {@link #category} (Identifies the general type of issue identified.) 574 */ 575 public CodeableConcept getCategory() { 576 if (this.category == null) 577 if (Configuration.errorOnAutoCreate()) 578 throw new Error("Attempt to auto-create DetectedIssue.category"); 579 else if (Configuration.doAutoCreate()) 580 this.category = new CodeableConcept(); // cc 581 return this.category; 582 } 583 584 public boolean hasCategory() { 585 return this.category != null && !this.category.isEmpty(); 586 } 587 588 /** 589 * @param value {@link #category} (Identifies the general type of issue identified.) 590 */ 591 public DetectedIssue setCategory(CodeableConcept value) { 592 this.category = value; 593 return this; 594 } 595 596 /** 597 * @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 598 */ 599 public Enumeration<DetectedIssueSeverity> getSeverityElement() { 600 if (this.severity == null) 601 if (Configuration.errorOnAutoCreate()) 602 throw new Error("Attempt to auto-create DetectedIssue.severity"); 603 else if (Configuration.doAutoCreate()) 604 this.severity = new Enumeration<DetectedIssueSeverity>(new DetectedIssueSeverityEnumFactory()); // bb 605 return this.severity; 606 } 607 608 public boolean hasSeverityElement() { 609 return this.severity != null && !this.severity.isEmpty(); 610 } 611 612 public boolean hasSeverity() { 613 return this.severity != null && !this.severity.isEmpty(); 614 } 615 616 /** 617 * @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 618 */ 619 public DetectedIssue setSeverityElement(Enumeration<DetectedIssueSeverity> value) { 620 this.severity = value; 621 return this; 622 } 623 624 /** 625 * @return Indicates the degree of importance associated with the identified issue based on the potential impact on the patient. 626 */ 627 public DetectedIssueSeverity getSeverity() { 628 return this.severity == null ? null : this.severity.getValue(); 629 } 630 631 /** 632 * @param value Indicates the degree of importance associated with the identified issue based on the potential impact on the patient. 633 */ 634 public DetectedIssue setSeverity(DetectedIssueSeverity value) { 635 if (value == null) 636 this.severity = null; 637 else { 638 if (this.severity == null) 639 this.severity = new Enumeration<DetectedIssueSeverity>(new DetectedIssueSeverityEnumFactory()); 640 this.severity.setValue(value); 641 } 642 return this; 643 } 644 645 /** 646 * @return {@link #implicated} (Indicates the resource representing the current activity or proposed activity that is potentially problematic.) 647 */ 648 public List<Reference> getImplicated() { 649 if (this.implicated == null) 650 this.implicated = new ArrayList<Reference>(); 651 return this.implicated; 652 } 653 654 public boolean hasImplicated() { 655 if (this.implicated == null) 656 return false; 657 for (Reference item : this.implicated) 658 if (!item.isEmpty()) 659 return true; 660 return false; 661 } 662 663 /** 664 * @return {@link #implicated} (Indicates the resource representing the current activity or proposed activity that is potentially problematic.) 665 */ 666 // syntactic sugar 667 public Reference addImplicated() { //3 668 Reference t = new Reference(); 669 if (this.implicated == null) 670 this.implicated = new ArrayList<Reference>(); 671 this.implicated.add(t); 672 return t; 673 } 674 675 // syntactic sugar 676 public DetectedIssue addImplicated(Reference t) { //3 677 if (t == null) 678 return this; 679 if (this.implicated == null) 680 this.implicated = new ArrayList<Reference>(); 681 this.implicated.add(t); 682 return this; 683 } 684 685 /** 686 * @return {@link #implicated} (The actual objects that are the target of the reference. The reference library doesn't populate this, but you can use this to hold the resources if you resolvethemt. Indicates the resource representing the current activity or proposed activity that is potentially problematic.) 687 */ 688 public List<Resource> getImplicatedTarget() { 689 if (this.implicatedTarget == null) 690 this.implicatedTarget = new ArrayList<Resource>(); 691 return this.implicatedTarget; 692 } 693 694 /** 695 * @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 696 */ 697 public StringType getDetailElement() { 698 if (this.detail == null) 699 if (Configuration.errorOnAutoCreate()) 700 throw new Error("Attempt to auto-create DetectedIssue.detail"); 701 else if (Configuration.doAutoCreate()) 702 this.detail = new StringType(); // bb 703 return this.detail; 704 } 705 706 public boolean hasDetailElement() { 707 return this.detail != null && !this.detail.isEmpty(); 708 } 709 710 public boolean hasDetail() { 711 return this.detail != null && !this.detail.isEmpty(); 712 } 713 714 /** 715 * @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 716 */ 717 public DetectedIssue setDetailElement(StringType value) { 718 this.detail = value; 719 return this; 720 } 721 722 /** 723 * @return A textual explanation of the detected issue. 724 */ 725 public String getDetail() { 726 return this.detail == null ? null : this.detail.getValue(); 727 } 728 729 /** 730 * @param value A textual explanation of the detected issue. 731 */ 732 public DetectedIssue setDetail(String value) { 733 if (Utilities.noString(value)) 734 this.detail = null; 735 else { 736 if (this.detail == null) 737 this.detail = new StringType(); 738 this.detail.setValue(value); 739 } 740 return this; 741 } 742 743 /** 744 * @return {@link #date} (The date or date-time when the detected issue was initially identified.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 745 */ 746 public DateTimeType getDateElement() { 747 if (this.date == null) 748 if (Configuration.errorOnAutoCreate()) 749 throw new Error("Attempt to auto-create DetectedIssue.date"); 750 else if (Configuration.doAutoCreate()) 751 this.date = new DateTimeType(); // bb 752 return this.date; 753 } 754 755 public boolean hasDateElement() { 756 return this.date != null && !this.date.isEmpty(); 757 } 758 759 public boolean hasDate() { 760 return this.date != null && !this.date.isEmpty(); 761 } 762 763 /** 764 * @param value {@link #date} (The date or date-time when the detected issue was initially identified.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 765 */ 766 public DetectedIssue setDateElement(DateTimeType value) { 767 this.date = value; 768 return this; 769 } 770 771 /** 772 * @return The date or date-time when the detected issue was initially identified. 773 */ 774 public Date getDate() { 775 return this.date == null ? null : this.date.getValue(); 776 } 777 778 /** 779 * @param value The date or date-time when the detected issue was initially identified. 780 */ 781 public DetectedIssue setDate(Date value) { 782 if (value == null) 783 this.date = null; 784 else { 785 if (this.date == null) 786 this.date = new DateTimeType(); 787 this.date.setValue(value); 788 } 789 return this; 790 } 791 792 /** 793 * @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.) 794 */ 795 public Reference getAuthor() { 796 if (this.author == null) 797 if (Configuration.errorOnAutoCreate()) 798 throw new Error("Attempt to auto-create DetectedIssue.author"); 799 else if (Configuration.doAutoCreate()) 800 this.author = new Reference(); // cc 801 return this.author; 802 } 803 804 public boolean hasAuthor() { 805 return this.author != null && !this.author.isEmpty(); 806 } 807 808 /** 809 * @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.) 810 */ 811 public DetectedIssue setAuthor(Reference value) { 812 this.author = value; 813 return this; 814 } 815 816 /** 817 * @return {@link #author} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review.) 818 */ 819 public Resource getAuthorTarget() { 820 return this.authorTarget; 821 } 822 823 /** 824 * @param value {@link #author} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review.) 825 */ 826 public DetectedIssue setAuthorTarget(Resource value) { 827 this.authorTarget = value; 828 return this; 829 } 830 831 /** 832 * @return {@link #identifier} (Business identifier associated with the detected issue record.) 833 */ 834 public Identifier getIdentifier() { 835 if (this.identifier == null) 836 if (Configuration.errorOnAutoCreate()) 837 throw new Error("Attempt to auto-create DetectedIssue.identifier"); 838 else if (Configuration.doAutoCreate()) 839 this.identifier = new Identifier(); // cc 840 return this.identifier; 841 } 842 843 public boolean hasIdentifier() { 844 return this.identifier != null && !this.identifier.isEmpty(); 845 } 846 847 /** 848 * @param value {@link #identifier} (Business identifier associated with the detected issue record.) 849 */ 850 public DetectedIssue setIdentifier(Identifier value) { 851 this.identifier = value; 852 return this; 853 } 854 855 /** 856 * @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 857 */ 858 public UriType getReferenceElement() { 859 if (this.reference == null) 860 if (Configuration.errorOnAutoCreate()) 861 throw new Error("Attempt to auto-create DetectedIssue.reference"); 862 else if (Configuration.doAutoCreate()) 863 this.reference = new UriType(); // bb 864 return this.reference; 865 } 866 867 public boolean hasReferenceElement() { 868 return this.reference != null && !this.reference.isEmpty(); 869 } 870 871 public boolean hasReference() { 872 return this.reference != null && !this.reference.isEmpty(); 873 } 874 875 /** 876 * @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 877 */ 878 public DetectedIssue setReferenceElement(UriType value) { 879 this.reference = value; 880 return this; 881 } 882 883 /** 884 * @return The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified. 885 */ 886 public String getReference() { 887 return this.reference == null ? null : this.reference.getValue(); 888 } 889 890 /** 891 * @param value The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified. 892 */ 893 public DetectedIssue setReference(String value) { 894 if (Utilities.noString(value)) 895 this.reference = null; 896 else { 897 if (this.reference == null) 898 this.reference = new UriType(); 899 this.reference.setValue(value); 900 } 901 return this; 902 } 903 904 /** 905 * @return {@link #mitigation} (Indicates an action that has been taken or is committed to 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.) 906 */ 907 public List<DetectedIssueMitigationComponent> getMitigation() { 908 if (this.mitigation == null) 909 this.mitigation = new ArrayList<DetectedIssueMitigationComponent>(); 910 return this.mitigation; 911 } 912 913 public boolean hasMitigation() { 914 if (this.mitigation == null) 915 return false; 916 for (DetectedIssueMitigationComponent item : this.mitigation) 917 if (!item.isEmpty()) 918 return true; 919 return false; 920 } 921 922 /** 923 * @return {@link #mitigation} (Indicates an action that has been taken or is committed to 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.) 924 */ 925 // syntactic sugar 926 public DetectedIssueMitigationComponent addMitigation() { //3 927 DetectedIssueMitigationComponent t = new DetectedIssueMitigationComponent(); 928 if (this.mitigation == null) 929 this.mitigation = new ArrayList<DetectedIssueMitigationComponent>(); 930 this.mitigation.add(t); 931 return t; 932 } 933 934 // syntactic sugar 935 public DetectedIssue addMitigation(DetectedIssueMitigationComponent t) { //3 936 if (t == null) 937 return this; 938 if (this.mitigation == null) 939 this.mitigation = new ArrayList<DetectedIssueMitigationComponent>(); 940 this.mitigation.add(t); 941 return this; 942 } 943 944 protected void listChildren(List<Property> childrenList) { 945 super.listChildren(childrenList); 946 childrenList.add(new Property("patient", "Reference(Patient)", "Indicates the patient whose record the detected issue is associated with.", 0, java.lang.Integer.MAX_VALUE, patient)); 947 childrenList.add(new Property("category", "CodeableConcept", "Identifies the general type of issue identified.", 0, java.lang.Integer.MAX_VALUE, category)); 948 childrenList.add(new Property("severity", "code", "Indicates the degree of importance associated with the identified issue based on the potential impact on the patient.", 0, java.lang.Integer.MAX_VALUE, severity)); 949 childrenList.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)); 950 childrenList.add(new Property("detail", "string", "A textual explanation of the detected issue.", 0, java.lang.Integer.MAX_VALUE, detail)); 951 childrenList.add(new Property("date", "dateTime", "The date or date-time when the detected issue was initially identified.", 0, java.lang.Integer.MAX_VALUE, date)); 952 childrenList.add(new Property("author", "Reference(Practitioner|Device)", "Individual or device responsible for the issue being raised. For example, a decision support application or a pharmacist conducting a medication review.", 0, java.lang.Integer.MAX_VALUE, author)); 953 childrenList.add(new Property("identifier", "Identifier", "Business identifier associated with the detected issue record.", 0, java.lang.Integer.MAX_VALUE, identifier)); 954 childrenList.add(new Property("reference", "uri", "The literature, knowledge-base or similar reference that describes the propensity for the detected issue identified.", 0, java.lang.Integer.MAX_VALUE, reference)); 955 childrenList.add(new Property("mitigation", "", "Indicates an action that has been taken or is committed to 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)); 956 } 957 958 @Override 959 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 960 switch (hash) { 961 case -791418107: /*patient*/ return this.patient == null ? new Base[0] : new Base[] {this.patient}; // Reference 962 case 50511102: /*category*/ return this.category == null ? new Base[0] : new Base[] {this.category}; // CodeableConcept 963 case 1478300413: /*severity*/ return this.severity == null ? new Base[0] : new Base[] {this.severity}; // Enumeration<DetectedIssueSeverity> 964 case -810216884: /*implicated*/ return this.implicated == null ? new Base[0] : this.implicated.toArray(new Base[this.implicated.size()]); // Reference 965 case -1335224239: /*detail*/ return this.detail == null ? new Base[0] : new Base[] {this.detail}; // StringType 966 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 967 case -1406328437: /*author*/ return this.author == null ? new Base[0] : new Base[] {this.author}; // Reference 968 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : new Base[] {this.identifier}; // Identifier 969 case -925155509: /*reference*/ return this.reference == null ? new Base[0] : new Base[] {this.reference}; // UriType 970 case 1293793087: /*mitigation*/ return this.mitigation == null ? new Base[0] : this.mitigation.toArray(new Base[this.mitigation.size()]); // DetectedIssueMitigationComponent 971 default: return super.getProperty(hash, name, checkValid); 972 } 973 974 } 975 976 @Override 977 public void setProperty(int hash, String name, Base value) throws FHIRException { 978 switch (hash) { 979 case -791418107: // patient 980 this.patient = castToReference(value); // Reference 981 break; 982 case 50511102: // category 983 this.category = castToCodeableConcept(value); // CodeableConcept 984 break; 985 case 1478300413: // severity 986 this.severity = new DetectedIssueSeverityEnumFactory().fromType(value); // Enumeration<DetectedIssueSeverity> 987 break; 988 case -810216884: // implicated 989 this.getImplicated().add(castToReference(value)); // Reference 990 break; 991 case -1335224239: // detail 992 this.detail = castToString(value); // StringType 993 break; 994 case 3076014: // date 995 this.date = castToDateTime(value); // DateTimeType 996 break; 997 case -1406328437: // author 998 this.author = castToReference(value); // Reference 999 break; 1000 case -1618432855: // identifier 1001 this.identifier = castToIdentifier(value); // Identifier 1002 break; 1003 case -925155509: // reference 1004 this.reference = castToUri(value); // UriType 1005 break; 1006 case 1293793087: // mitigation 1007 this.getMitigation().add((DetectedIssueMitigationComponent) value); // DetectedIssueMitigationComponent 1008 break; 1009 default: super.setProperty(hash, name, value); 1010 } 1011 1012 } 1013 1014 @Override 1015 public void setProperty(String name, Base value) throws FHIRException { 1016 if (name.equals("patient")) 1017 this.patient = castToReference(value); // Reference 1018 else if (name.equals("category")) 1019 this.category = castToCodeableConcept(value); // CodeableConcept 1020 else if (name.equals("severity")) 1021 this.severity = new DetectedIssueSeverityEnumFactory().fromType(value); // Enumeration<DetectedIssueSeverity> 1022 else if (name.equals("implicated")) 1023 this.getImplicated().add(castToReference(value)); 1024 else if (name.equals("detail")) 1025 this.detail = castToString(value); // StringType 1026 else if (name.equals("date")) 1027 this.date = castToDateTime(value); // DateTimeType 1028 else if (name.equals("author")) 1029 this.author = castToReference(value); // Reference 1030 else if (name.equals("identifier")) 1031 this.identifier = castToIdentifier(value); // Identifier 1032 else if (name.equals("reference")) 1033 this.reference = castToUri(value); // UriType 1034 else if (name.equals("mitigation")) 1035 this.getMitigation().add((DetectedIssueMitigationComponent) value); 1036 else 1037 super.setProperty(name, value); 1038 } 1039 1040 @Override 1041 public Base makeProperty(int hash, String name) throws FHIRException { 1042 switch (hash) { 1043 case -791418107: return getPatient(); // Reference 1044 case 50511102: return getCategory(); // CodeableConcept 1045 case 1478300413: throw new FHIRException("Cannot make property severity as it is not a complex type"); // Enumeration<DetectedIssueSeverity> 1046 case -810216884: return addImplicated(); // Reference 1047 case -1335224239: throw new FHIRException("Cannot make property detail as it is not a complex type"); // StringType 1048 case 3076014: throw new FHIRException("Cannot make property date as it is not a complex type"); // DateTimeType 1049 case -1406328437: return getAuthor(); // Reference 1050 case -1618432855: return getIdentifier(); // Identifier 1051 case -925155509: throw new FHIRException("Cannot make property reference as it is not a complex type"); // UriType 1052 case 1293793087: return addMitigation(); // DetectedIssueMitigationComponent 1053 default: return super.makeProperty(hash, name); 1054 } 1055 1056 } 1057 1058 @Override 1059 public Base addChild(String name) throws FHIRException { 1060 if (name.equals("patient")) { 1061 this.patient = new Reference(); 1062 return this.patient; 1063 } 1064 else if (name.equals("category")) { 1065 this.category = new CodeableConcept(); 1066 return this.category; 1067 } 1068 else if (name.equals("severity")) { 1069 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.severity"); 1070 } 1071 else if (name.equals("implicated")) { 1072 return addImplicated(); 1073 } 1074 else if (name.equals("detail")) { 1075 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.detail"); 1076 } 1077 else if (name.equals("date")) { 1078 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.date"); 1079 } 1080 else if (name.equals("author")) { 1081 this.author = new Reference(); 1082 return this.author; 1083 } 1084 else if (name.equals("identifier")) { 1085 this.identifier = new Identifier(); 1086 return this.identifier; 1087 } 1088 else if (name.equals("reference")) { 1089 throw new FHIRException("Cannot call addChild on a primitive type DetectedIssue.reference"); 1090 } 1091 else if (name.equals("mitigation")) { 1092 return addMitigation(); 1093 } 1094 else 1095 return super.addChild(name); 1096 } 1097 1098 public String fhirType() { 1099 return "DetectedIssue"; 1100 1101 } 1102 1103 public DetectedIssue copy() { 1104 DetectedIssue dst = new DetectedIssue(); 1105 copyValues(dst); 1106 dst.patient = patient == null ? null : patient.copy(); 1107 dst.category = category == null ? null : category.copy(); 1108 dst.severity = severity == null ? null : severity.copy(); 1109 if (implicated != null) { 1110 dst.implicated = new ArrayList<Reference>(); 1111 for (Reference i : implicated) 1112 dst.implicated.add(i.copy()); 1113 }; 1114 dst.detail = detail == null ? null : detail.copy(); 1115 dst.date = date == null ? null : date.copy(); 1116 dst.author = author == null ? null : author.copy(); 1117 dst.identifier = identifier == null ? null : identifier.copy(); 1118 dst.reference = reference == null ? null : reference.copy(); 1119 if (mitigation != null) { 1120 dst.mitigation = new ArrayList<DetectedIssueMitigationComponent>(); 1121 for (DetectedIssueMitigationComponent i : mitigation) 1122 dst.mitigation.add(i.copy()); 1123 }; 1124 return dst; 1125 } 1126 1127 protected DetectedIssue typedCopy() { 1128 return copy(); 1129 } 1130 1131 @Override 1132 public boolean equalsDeep(Base other) { 1133 if (!super.equalsDeep(other)) 1134 return false; 1135 if (!(other instanceof DetectedIssue)) 1136 return false; 1137 DetectedIssue o = (DetectedIssue) other; 1138 return compareDeep(patient, o.patient, true) && compareDeep(category, o.category, true) && compareDeep(severity, o.severity, true) 1139 && compareDeep(implicated, o.implicated, true) && compareDeep(detail, o.detail, true) && compareDeep(date, o.date, true) 1140 && compareDeep(author, o.author, true) && compareDeep(identifier, o.identifier, true) && compareDeep(reference, o.reference, true) 1141 && compareDeep(mitigation, o.mitigation, true); 1142 } 1143 1144 @Override 1145 public boolean equalsShallow(Base other) { 1146 if (!super.equalsShallow(other)) 1147 return false; 1148 if (!(other instanceof DetectedIssue)) 1149 return false; 1150 DetectedIssue o = (DetectedIssue) other; 1151 return compareValues(severity, o.severity, true) && compareValues(detail, o.detail, true) && compareValues(date, o.date, true) 1152 && compareValues(reference, o.reference, true); 1153 } 1154 1155 public boolean isEmpty() { 1156 return super.isEmpty() && (patient == null || patient.isEmpty()) && (category == null || category.isEmpty()) 1157 && (severity == null || severity.isEmpty()) && (implicated == null || implicated.isEmpty()) 1158 && (detail == null || detail.isEmpty()) && (date == null || date.isEmpty()) && (author == null || author.isEmpty()) 1159 && (identifier == null || identifier.isEmpty()) && (reference == null || reference.isEmpty()) 1160 && (mitigation == null || mitigation.isEmpty()); 1161 } 1162 1163 @Override 1164 public ResourceType getResourceType() { 1165 return ResourceType.DetectedIssue; 1166 } 1167 1168 /** 1169 * Search parameter: <b>author</b> 1170 * <p> 1171 * Description: <b>The provider or device that identified the issue</b><br> 1172 * Type: <b>reference</b><br> 1173 * Path: <b>DetectedIssue.author</b><br> 1174 * </p> 1175 */ 1176 @SearchParamDefinition(name="author", path="DetectedIssue.author", description="The provider or device that identified the issue", type="reference" ) 1177 public static final String SP_AUTHOR = "author"; 1178 /** 1179 * <b>Fluent Client</b> search parameter constant for <b>author</b> 1180 * <p> 1181 * Description: <b>The provider or device that identified the issue</b><br> 1182 * Type: <b>reference</b><br> 1183 * Path: <b>DetectedIssue.author</b><br> 1184 * </p> 1185 */ 1186 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam AUTHOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_AUTHOR); 1187 1188/** 1189 * Constant for fluent queries to be used to add include statements. Specifies 1190 * the path value of "<b>DetectedIssue:author</b>". 1191 */ 1192 public static final ca.uhn.fhir.model.api.Include INCLUDE_AUTHOR = new ca.uhn.fhir.model.api.Include("DetectedIssue:author").toLocked(); 1193 1194 /** 1195 * Search parameter: <b>category</b> 1196 * <p> 1197 * Description: <b>Issue Category, e.g. drug-drug, duplicate therapy, etc.</b><br> 1198 * Type: <b>token</b><br> 1199 * Path: <b>DetectedIssue.category</b><br> 1200 * </p> 1201 */ 1202 @SearchParamDefinition(name="category", path="DetectedIssue.category", description="Issue Category, e.g. drug-drug, duplicate therapy, etc.", type="token" ) 1203 public static final String SP_CATEGORY = "category"; 1204 /** 1205 * <b>Fluent Client</b> search parameter constant for <b>category</b> 1206 * <p> 1207 * Description: <b>Issue Category, e.g. drug-drug, duplicate therapy, etc.</b><br> 1208 * Type: <b>token</b><br> 1209 * Path: <b>DetectedIssue.category</b><br> 1210 * </p> 1211 */ 1212 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CATEGORY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CATEGORY); 1213 1214 /** 1215 * Search parameter: <b>implicated</b> 1216 * <p> 1217 * Description: <b>Problem resource</b><br> 1218 * Type: <b>reference</b><br> 1219 * Path: <b>DetectedIssue.implicated</b><br> 1220 * </p> 1221 */ 1222 @SearchParamDefinition(name="implicated", path="DetectedIssue.implicated", description="Problem resource", type="reference" ) 1223 public static final String SP_IMPLICATED = "implicated"; 1224 /** 1225 * <b>Fluent Client</b> search parameter constant for <b>implicated</b> 1226 * <p> 1227 * Description: <b>Problem resource</b><br> 1228 * Type: <b>reference</b><br> 1229 * Path: <b>DetectedIssue.implicated</b><br> 1230 * </p> 1231 */ 1232 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam IMPLICATED = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_IMPLICATED); 1233 1234/** 1235 * Constant for fluent queries to be used to add include statements. Specifies 1236 * the path value of "<b>DetectedIssue:implicated</b>". 1237 */ 1238 public static final ca.uhn.fhir.model.api.Include INCLUDE_IMPLICATED = new ca.uhn.fhir.model.api.Include("DetectedIssue:implicated").toLocked(); 1239 1240 /** 1241 * Search parameter: <b>patient</b> 1242 * <p> 1243 * Description: <b>Associated patient</b><br> 1244 * Type: <b>reference</b><br> 1245 * Path: <b>DetectedIssue.patient</b><br> 1246 * </p> 1247 */ 1248 @SearchParamDefinition(name="patient", path="DetectedIssue.patient", description="Associated patient", type="reference" ) 1249 public static final String SP_PATIENT = "patient"; 1250 /** 1251 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 1252 * <p> 1253 * Description: <b>Associated patient</b><br> 1254 * Type: <b>reference</b><br> 1255 * Path: <b>DetectedIssue.patient</b><br> 1256 * </p> 1257 */ 1258 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 1259 1260/** 1261 * Constant for fluent queries to be used to add include statements. Specifies 1262 * the path value of "<b>DetectedIssue:patient</b>". 1263 */ 1264 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("DetectedIssue:patient").toLocked(); 1265 1266 /** 1267 * Search parameter: <b>date</b> 1268 * <p> 1269 * Description: <b>When identified</b><br> 1270 * Type: <b>date</b><br> 1271 * Path: <b>DetectedIssue.date</b><br> 1272 * </p> 1273 */ 1274 @SearchParamDefinition(name="date", path="DetectedIssue.date", description="When identified", type="date" ) 1275 public static final String SP_DATE = "date"; 1276 /** 1277 * <b>Fluent Client</b> search parameter constant for <b>date</b> 1278 * <p> 1279 * Description: <b>When identified</b><br> 1280 * Type: <b>date</b><br> 1281 * Path: <b>DetectedIssue.date</b><br> 1282 * </p> 1283 */ 1284 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 1285 1286 /** 1287 * Search parameter: <b>identifier</b> 1288 * <p> 1289 * Description: <b>Unique id for the detected issue</b><br> 1290 * Type: <b>token</b><br> 1291 * Path: <b>DetectedIssue.identifier</b><br> 1292 * </p> 1293 */ 1294 @SearchParamDefinition(name="identifier", path="DetectedIssue.identifier", description="Unique id for the detected issue", type="token" ) 1295 public static final String SP_IDENTIFIER = "identifier"; 1296 /** 1297 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1298 * <p> 1299 * Description: <b>Unique id for the detected issue</b><br> 1300 * Type: <b>token</b><br> 1301 * Path: <b>DetectedIssue.identifier</b><br> 1302 * </p> 1303 */ 1304 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1305 1306 1307} 1308