001package org.hl7.fhir.dstu3.model; 002 003 004 005/* 006 Copyright (c) 2011+, HL7, Inc. 007 All rights reserved. 008 009 Redistribution and use in source and binary forms, with or without modification, 010 are permitted provided that the following conditions are met: 011 012 * Redistributions of source code must retain the above copyright notice, this 013 list of conditions and the following disclaimer. 014 * Redistributions in binary form must reproduce the above copyright notice, 015 this list of conditions and the following disclaimer in the documentation 016 and/or other materials provided with the distribution. 017 * Neither the name of HL7 nor the names of its contributors may be used to 018 endorse or promote products derived from this software without specific 019 prior written permission. 020 021 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 022 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 023 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 024 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 025 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 026 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 027 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 028 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 029 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 030 POSSIBILITY OF SUCH DAMAGE. 031 032*/ 033 034// Generated on Fri, Mar 16, 2018 15:21+1100 for FHIR v3.0.x 035import java.util.ArrayList; 036import java.util.Date; 037import java.util.List; 038 039import org.hl7.fhir.exceptions.FHIRException; 040import org.hl7.fhir.exceptions.FHIRFormatError; 041import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 042 043import ca.uhn.fhir.model.api.annotation.Block; 044import ca.uhn.fhir.model.api.annotation.Child; 045import ca.uhn.fhir.model.api.annotation.Description; 046import ca.uhn.fhir.model.api.annotation.ResourceDef; 047import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 048/** 049 * A clinical condition, problem, diagnosis, or other event, situation, issue, or clinical concept that has risen to a level of concern. 050 */ 051@ResourceDef(name="Condition", profile="http://hl7.org/fhir/Profile/Condition") 052public class Condition extends DomainResource { 053 054 public enum ConditionClinicalStatus { 055 /** 056 * The subject is currently experiencing the symptoms of the condition or there is evidence of the condition. 057 */ 058 ACTIVE, 059 /** 060 * The subject is having a relapse or re-experiencing the condition after a period of remission or presumed resolution. 061 */ 062 RECURRENCE, 063 /** 064 * The subject is no longer experiencing the symptoms of the condition or there is no longer evidence of the condition. 065 */ 066 INACTIVE, 067 /** 068 * The subject is no longer experiencing the symptoms of the condition, but there is a risk of the symptoms returning. 069 */ 070 REMISSION, 071 /** 072 * The subject is no longer experiencing the symptoms of the condition and there is a negligible perceived risk of the symptoms returning. 073 */ 074 RESOLVED, 075 /** 076 * added to help the parsers with the generic types 077 */ 078 NULL; 079 public static ConditionClinicalStatus fromCode(String codeString) throws FHIRException { 080 if (codeString == null || "".equals(codeString)) 081 return null; 082 if ("active".equals(codeString)) 083 return ACTIVE; 084 if ("recurrence".equals(codeString)) 085 return RECURRENCE; 086 if ("inactive".equals(codeString)) 087 return INACTIVE; 088 if ("remission".equals(codeString)) 089 return REMISSION; 090 if ("resolved".equals(codeString)) 091 return RESOLVED; 092 if (Configuration.isAcceptInvalidEnums()) 093 return null; 094 else 095 throw new FHIRException("Unknown ConditionClinicalStatus code '"+codeString+"'"); 096 } 097 public String toCode() { 098 switch (this) { 099 case ACTIVE: return "active"; 100 case RECURRENCE: return "recurrence"; 101 case INACTIVE: return "inactive"; 102 case REMISSION: return "remission"; 103 case RESOLVED: return "resolved"; 104 case NULL: return null; 105 default: return "?"; 106 } 107 } 108 public String getSystem() { 109 switch (this) { 110 case ACTIVE: return "http://hl7.org/fhir/condition-clinical"; 111 case RECURRENCE: return "http://hl7.org/fhir/condition-clinical"; 112 case INACTIVE: return "http://hl7.org/fhir/condition-clinical"; 113 case REMISSION: return "http://hl7.org/fhir/condition-clinical"; 114 case RESOLVED: return "http://hl7.org/fhir/condition-clinical"; 115 case NULL: return null; 116 default: return "?"; 117 } 118 } 119 public String getDefinition() { 120 switch (this) { 121 case ACTIVE: return "The subject is currently experiencing the symptoms of the condition or there is evidence of the condition."; 122 case RECURRENCE: return "The subject is having a relapse or re-experiencing the condition after a period of remission or presumed resolution."; 123 case INACTIVE: return "The subject is no longer experiencing the symptoms of the condition or there is no longer evidence of the condition."; 124 case REMISSION: return "The subject is no longer experiencing the symptoms of the condition, but there is a risk of the symptoms returning."; 125 case RESOLVED: return "The subject is no longer experiencing the symptoms of the condition and there is a negligible perceived risk of the symptoms returning."; 126 case NULL: return null; 127 default: return "?"; 128 } 129 } 130 public String getDisplay() { 131 switch (this) { 132 case ACTIVE: return "Active"; 133 case RECURRENCE: return "Recurrence"; 134 case INACTIVE: return "Inactive"; 135 case REMISSION: return "Remission"; 136 case RESOLVED: return "Resolved"; 137 case NULL: return null; 138 default: return "?"; 139 } 140 } 141 } 142 143 public static class ConditionClinicalStatusEnumFactory implements EnumFactory<ConditionClinicalStatus> { 144 public ConditionClinicalStatus fromCode(String codeString) throws IllegalArgumentException { 145 if (codeString == null || "".equals(codeString)) 146 if (codeString == null || "".equals(codeString)) 147 return null; 148 if ("active".equals(codeString)) 149 return ConditionClinicalStatus.ACTIVE; 150 if ("recurrence".equals(codeString)) 151 return ConditionClinicalStatus.RECURRENCE; 152 if ("inactive".equals(codeString)) 153 return ConditionClinicalStatus.INACTIVE; 154 if ("remission".equals(codeString)) 155 return ConditionClinicalStatus.REMISSION; 156 if ("resolved".equals(codeString)) 157 return ConditionClinicalStatus.RESOLVED; 158 throw new IllegalArgumentException("Unknown ConditionClinicalStatus code '"+codeString+"'"); 159 } 160 public Enumeration<ConditionClinicalStatus> fromType(PrimitiveType<?> code) throws FHIRException { 161 if (code == null) 162 return null; 163 if (code.isEmpty()) 164 return new Enumeration<ConditionClinicalStatus>(this); 165 String codeString = code.asStringValue(); 166 if (codeString == null || "".equals(codeString)) 167 return null; 168 if ("active".equals(codeString)) 169 return new Enumeration<ConditionClinicalStatus>(this, ConditionClinicalStatus.ACTIVE); 170 if ("recurrence".equals(codeString)) 171 return new Enumeration<ConditionClinicalStatus>(this, ConditionClinicalStatus.RECURRENCE); 172 if ("inactive".equals(codeString)) 173 return new Enumeration<ConditionClinicalStatus>(this, ConditionClinicalStatus.INACTIVE); 174 if ("remission".equals(codeString)) 175 return new Enumeration<ConditionClinicalStatus>(this, ConditionClinicalStatus.REMISSION); 176 if ("resolved".equals(codeString)) 177 return new Enumeration<ConditionClinicalStatus>(this, ConditionClinicalStatus.RESOLVED); 178 throw new FHIRException("Unknown ConditionClinicalStatus code '"+codeString+"'"); 179 } 180 public String toCode(ConditionClinicalStatus code) { 181 if (code == ConditionClinicalStatus.ACTIVE) 182 return "active"; 183 if (code == ConditionClinicalStatus.RECURRENCE) 184 return "recurrence"; 185 if (code == ConditionClinicalStatus.INACTIVE) 186 return "inactive"; 187 if (code == ConditionClinicalStatus.REMISSION) 188 return "remission"; 189 if (code == ConditionClinicalStatus.RESOLVED) 190 return "resolved"; 191 return "?"; 192 } 193 public String toSystem(ConditionClinicalStatus code) { 194 return code.getSystem(); 195 } 196 } 197 198 public enum ConditionVerificationStatus { 199 /** 200 * This is a tentative diagnosis - still a candidate that is under consideration. 201 */ 202 PROVISIONAL, 203 /** 204 * One of a set of potential (and typically mutually exclusive) diagnoses asserted to further guide the diagnostic process and preliminary treatment. 205 */ 206 DIFFERENTIAL, 207 /** 208 * There is sufficient diagnostic and/or clinical evidence to treat this as a confirmed condition. 209 */ 210 CONFIRMED, 211 /** 212 * This condition has been ruled out by diagnostic and clinical evidence. 213 */ 214 REFUTED, 215 /** 216 * The statement was entered in error and is not valid. 217 */ 218 ENTEREDINERROR, 219 /** 220 * The condition status is unknown. Note that "unknown" is a value of last resort and every attempt should be made to provide a meaningful value other than "unknown". 221 */ 222 UNKNOWN, 223 /** 224 * added to help the parsers with the generic types 225 */ 226 NULL; 227 public static ConditionVerificationStatus fromCode(String codeString) throws FHIRException { 228 if (codeString == null || "".equals(codeString)) 229 return null; 230 if ("provisional".equals(codeString)) 231 return PROVISIONAL; 232 if ("differential".equals(codeString)) 233 return DIFFERENTIAL; 234 if ("confirmed".equals(codeString)) 235 return CONFIRMED; 236 if ("refuted".equals(codeString)) 237 return REFUTED; 238 if ("entered-in-error".equals(codeString)) 239 return ENTEREDINERROR; 240 if ("unknown".equals(codeString)) 241 return UNKNOWN; 242 if (Configuration.isAcceptInvalidEnums()) 243 return null; 244 else 245 throw new FHIRException("Unknown ConditionVerificationStatus code '"+codeString+"'"); 246 } 247 public String toCode() { 248 switch (this) { 249 case PROVISIONAL: return "provisional"; 250 case DIFFERENTIAL: return "differential"; 251 case CONFIRMED: return "confirmed"; 252 case REFUTED: return "refuted"; 253 case ENTEREDINERROR: return "entered-in-error"; 254 case UNKNOWN: return "unknown"; 255 case NULL: return null; 256 default: return "?"; 257 } 258 } 259 public String getSystem() { 260 switch (this) { 261 case PROVISIONAL: return "http://hl7.org/fhir/condition-ver-status"; 262 case DIFFERENTIAL: return "http://hl7.org/fhir/condition-ver-status"; 263 case CONFIRMED: return "http://hl7.org/fhir/condition-ver-status"; 264 case REFUTED: return "http://hl7.org/fhir/condition-ver-status"; 265 case ENTEREDINERROR: return "http://hl7.org/fhir/condition-ver-status"; 266 case UNKNOWN: return "http://hl7.org/fhir/condition-ver-status"; 267 case NULL: return null; 268 default: return "?"; 269 } 270 } 271 public String getDefinition() { 272 switch (this) { 273 case PROVISIONAL: return "This is a tentative diagnosis - still a candidate that is under consideration."; 274 case DIFFERENTIAL: return "One of a set of potential (and typically mutually exclusive) diagnoses asserted to further guide the diagnostic process and preliminary treatment."; 275 case CONFIRMED: return "There is sufficient diagnostic and/or clinical evidence to treat this as a confirmed condition."; 276 case REFUTED: return "This condition has been ruled out by diagnostic and clinical evidence."; 277 case ENTEREDINERROR: return "The statement was entered in error and is not valid."; 278 case UNKNOWN: return "The condition status is unknown. Note that \"unknown\" is a value of last resort and every attempt should be made to provide a meaningful value other than \"unknown\"."; 279 case NULL: return null; 280 default: return "?"; 281 } 282 } 283 public String getDisplay() { 284 switch (this) { 285 case PROVISIONAL: return "Provisional"; 286 case DIFFERENTIAL: return "Differential"; 287 case CONFIRMED: return "Confirmed"; 288 case REFUTED: return "Refuted"; 289 case ENTEREDINERROR: return "Entered In Error"; 290 case UNKNOWN: return "Unknown"; 291 case NULL: return null; 292 default: return "?"; 293 } 294 } 295 } 296 297 public static class ConditionVerificationStatusEnumFactory implements EnumFactory<ConditionVerificationStatus> { 298 public ConditionVerificationStatus fromCode(String codeString) throws IllegalArgumentException { 299 if (codeString == null || "".equals(codeString)) 300 if (codeString == null || "".equals(codeString)) 301 return null; 302 if ("provisional".equals(codeString)) 303 return ConditionVerificationStatus.PROVISIONAL; 304 if ("differential".equals(codeString)) 305 return ConditionVerificationStatus.DIFFERENTIAL; 306 if ("confirmed".equals(codeString)) 307 return ConditionVerificationStatus.CONFIRMED; 308 if ("refuted".equals(codeString)) 309 return ConditionVerificationStatus.REFUTED; 310 if ("entered-in-error".equals(codeString)) 311 return ConditionVerificationStatus.ENTEREDINERROR; 312 if ("unknown".equals(codeString)) 313 return ConditionVerificationStatus.UNKNOWN; 314 throw new IllegalArgumentException("Unknown ConditionVerificationStatus code '"+codeString+"'"); 315 } 316 public Enumeration<ConditionVerificationStatus> fromType(PrimitiveType<?> code) throws FHIRException { 317 if (code == null) 318 return null; 319 if (code.isEmpty()) 320 return new Enumeration<ConditionVerificationStatus>(this); 321 String codeString = code.asStringValue(); 322 if (codeString == null || "".equals(codeString)) 323 return null; 324 if ("provisional".equals(codeString)) 325 return new Enumeration<ConditionVerificationStatus>(this, ConditionVerificationStatus.PROVISIONAL); 326 if ("differential".equals(codeString)) 327 return new Enumeration<ConditionVerificationStatus>(this, ConditionVerificationStatus.DIFFERENTIAL); 328 if ("confirmed".equals(codeString)) 329 return new Enumeration<ConditionVerificationStatus>(this, ConditionVerificationStatus.CONFIRMED); 330 if ("refuted".equals(codeString)) 331 return new Enumeration<ConditionVerificationStatus>(this, ConditionVerificationStatus.REFUTED); 332 if ("entered-in-error".equals(codeString)) 333 return new Enumeration<ConditionVerificationStatus>(this, ConditionVerificationStatus.ENTEREDINERROR); 334 if ("unknown".equals(codeString)) 335 return new Enumeration<ConditionVerificationStatus>(this, ConditionVerificationStatus.UNKNOWN); 336 throw new FHIRException("Unknown ConditionVerificationStatus code '"+codeString+"'"); 337 } 338 public String toCode(ConditionVerificationStatus code) { 339 if (code == ConditionVerificationStatus.PROVISIONAL) 340 return "provisional"; 341 if (code == ConditionVerificationStatus.DIFFERENTIAL) 342 return "differential"; 343 if (code == ConditionVerificationStatus.CONFIRMED) 344 return "confirmed"; 345 if (code == ConditionVerificationStatus.REFUTED) 346 return "refuted"; 347 if (code == ConditionVerificationStatus.ENTEREDINERROR) 348 return "entered-in-error"; 349 if (code == ConditionVerificationStatus.UNKNOWN) 350 return "unknown"; 351 return "?"; 352 } 353 public String toSystem(ConditionVerificationStatus code) { 354 return code.getSystem(); 355 } 356 } 357 358 @Block() 359 public static class ConditionStageComponent extends BackboneElement implements IBaseBackboneElement { 360 /** 361 * A simple summary of the stage such as "Stage 3". The determination of the stage is disease-specific. 362 */ 363 @Child(name = "summary", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) 364 @Description(shortDefinition="Simple summary (disease specific)", formalDefinition="A simple summary of the stage such as \"Stage 3\". The determination of the stage is disease-specific." ) 365 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/condition-stage") 366 protected CodeableConcept summary; 367 368 /** 369 * Reference to a formal record of the evidence on which the staging assessment is based. 370 */ 371 @Child(name = "assessment", type = {ClinicalImpression.class, DiagnosticReport.class, Observation.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 372 @Description(shortDefinition="Formal record of assessment", formalDefinition="Reference to a formal record of the evidence on which the staging assessment is based." ) 373 protected List<Reference> assessment; 374 /** 375 * The actual objects that are the target of the reference (Reference to a formal record of the evidence on which the staging assessment is based.) 376 */ 377 protected List<Resource> assessmentTarget; 378 379 380 private static final long serialVersionUID = -1961530405L; 381 382 /** 383 * Constructor 384 */ 385 public ConditionStageComponent() { 386 super(); 387 } 388 389 /** 390 * @return {@link #summary} (A simple summary of the stage such as "Stage 3". The determination of the stage is disease-specific.) 391 */ 392 public CodeableConcept getSummary() { 393 if (this.summary == null) 394 if (Configuration.errorOnAutoCreate()) 395 throw new Error("Attempt to auto-create ConditionStageComponent.summary"); 396 else if (Configuration.doAutoCreate()) 397 this.summary = new CodeableConcept(); // cc 398 return this.summary; 399 } 400 401 public boolean hasSummary() { 402 return this.summary != null && !this.summary.isEmpty(); 403 } 404 405 /** 406 * @param value {@link #summary} (A simple summary of the stage such as "Stage 3". The determination of the stage is disease-specific.) 407 */ 408 public ConditionStageComponent setSummary(CodeableConcept value) { 409 this.summary = value; 410 return this; 411 } 412 413 /** 414 * @return {@link #assessment} (Reference to a formal record of the evidence on which the staging assessment is based.) 415 */ 416 public List<Reference> getAssessment() { 417 if (this.assessment == null) 418 this.assessment = new ArrayList<Reference>(); 419 return this.assessment; 420 } 421 422 /** 423 * @return Returns a reference to <code>this</code> for easy method chaining 424 */ 425 public ConditionStageComponent setAssessment(List<Reference> theAssessment) { 426 this.assessment = theAssessment; 427 return this; 428 } 429 430 public boolean hasAssessment() { 431 if (this.assessment == null) 432 return false; 433 for (Reference item : this.assessment) 434 if (!item.isEmpty()) 435 return true; 436 return false; 437 } 438 439 public Reference addAssessment() { //3 440 Reference t = new Reference(); 441 if (this.assessment == null) 442 this.assessment = new ArrayList<Reference>(); 443 this.assessment.add(t); 444 return t; 445 } 446 447 public ConditionStageComponent addAssessment(Reference t) { //3 448 if (t == null) 449 return this; 450 if (this.assessment == null) 451 this.assessment = new ArrayList<Reference>(); 452 this.assessment.add(t); 453 return this; 454 } 455 456 /** 457 * @return The first repetition of repeating field {@link #assessment}, creating it if it does not already exist 458 */ 459 public Reference getAssessmentFirstRep() { 460 if (getAssessment().isEmpty()) { 461 addAssessment(); 462 } 463 return getAssessment().get(0); 464 } 465 466 /** 467 * @deprecated Use Reference#setResource(IBaseResource) instead 468 */ 469 @Deprecated 470 public List<Resource> getAssessmentTarget() { 471 if (this.assessmentTarget == null) 472 this.assessmentTarget = new ArrayList<Resource>(); 473 return this.assessmentTarget; 474 } 475 476 protected void listChildren(List<Property> children) { 477 super.listChildren(children); 478 children.add(new Property("summary", "CodeableConcept", "A simple summary of the stage such as \"Stage 3\". The determination of the stage is disease-specific.", 0, 1, summary)); 479 children.add(new Property("assessment", "Reference(ClinicalImpression|DiagnosticReport|Observation)", "Reference to a formal record of the evidence on which the staging assessment is based.", 0, java.lang.Integer.MAX_VALUE, assessment)); 480 } 481 482 @Override 483 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 484 switch (_hash) { 485 case -1857640538: /*summary*/ return new Property("summary", "CodeableConcept", "A simple summary of the stage such as \"Stage 3\". The determination of the stage is disease-specific.", 0, 1, summary); 486 case 2119382722: /*assessment*/ return new Property("assessment", "Reference(ClinicalImpression|DiagnosticReport|Observation)", "Reference to a formal record of the evidence on which the staging assessment is based.", 0, java.lang.Integer.MAX_VALUE, assessment); 487 default: return super.getNamedProperty(_hash, _name, _checkValid); 488 } 489 490 } 491 492 @Override 493 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 494 switch (hash) { 495 case -1857640538: /*summary*/ return this.summary == null ? new Base[0] : new Base[] {this.summary}; // CodeableConcept 496 case 2119382722: /*assessment*/ return this.assessment == null ? new Base[0] : this.assessment.toArray(new Base[this.assessment.size()]); // Reference 497 default: return super.getProperty(hash, name, checkValid); 498 } 499 500 } 501 502 @Override 503 public Base setProperty(int hash, String name, Base value) throws FHIRException { 504 switch (hash) { 505 case -1857640538: // summary 506 this.summary = castToCodeableConcept(value); // CodeableConcept 507 return value; 508 case 2119382722: // assessment 509 this.getAssessment().add(castToReference(value)); // Reference 510 return value; 511 default: return super.setProperty(hash, name, value); 512 } 513 514 } 515 516 @Override 517 public Base setProperty(String name, Base value) throws FHIRException { 518 if (name.equals("summary")) { 519 this.summary = castToCodeableConcept(value); // CodeableConcept 520 } else if (name.equals("assessment")) { 521 this.getAssessment().add(castToReference(value)); 522 } else 523 return super.setProperty(name, value); 524 return value; 525 } 526 527 @Override 528 public Base makeProperty(int hash, String name) throws FHIRException { 529 switch (hash) { 530 case -1857640538: return getSummary(); 531 case 2119382722: return addAssessment(); 532 default: return super.makeProperty(hash, name); 533 } 534 535 } 536 537 @Override 538 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 539 switch (hash) { 540 case -1857640538: /*summary*/ return new String[] {"CodeableConcept"}; 541 case 2119382722: /*assessment*/ return new String[] {"Reference"}; 542 default: return super.getTypesForProperty(hash, name); 543 } 544 545 } 546 547 @Override 548 public Base addChild(String name) throws FHIRException { 549 if (name.equals("summary")) { 550 this.summary = new CodeableConcept(); 551 return this.summary; 552 } 553 else if (name.equals("assessment")) { 554 return addAssessment(); 555 } 556 else 557 return super.addChild(name); 558 } 559 560 public ConditionStageComponent copy() { 561 ConditionStageComponent dst = new ConditionStageComponent(); 562 copyValues(dst); 563 dst.summary = summary == null ? null : summary.copy(); 564 if (assessment != null) { 565 dst.assessment = new ArrayList<Reference>(); 566 for (Reference i : assessment) 567 dst.assessment.add(i.copy()); 568 }; 569 return dst; 570 } 571 572 @Override 573 public boolean equalsDeep(Base other_) { 574 if (!super.equalsDeep(other_)) 575 return false; 576 if (!(other_ instanceof ConditionStageComponent)) 577 return false; 578 ConditionStageComponent o = (ConditionStageComponent) other_; 579 return compareDeep(summary, o.summary, true) && compareDeep(assessment, o.assessment, true); 580 } 581 582 @Override 583 public boolean equalsShallow(Base other_) { 584 if (!super.equalsShallow(other_)) 585 return false; 586 if (!(other_ instanceof ConditionStageComponent)) 587 return false; 588 ConditionStageComponent o = (ConditionStageComponent) other_; 589 return true; 590 } 591 592 public boolean isEmpty() { 593 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(summary, assessment); 594 } 595 596 public String fhirType() { 597 return "Condition.stage"; 598 599 } 600 601 } 602 603 @Block() 604 public static class ConditionEvidenceComponent extends BackboneElement implements IBaseBackboneElement { 605 /** 606 * A manifestation or symptom that led to the recording of this condition. 607 */ 608 @Child(name = "code", type = {CodeableConcept.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 609 @Description(shortDefinition="Manifestation/symptom", formalDefinition="A manifestation or symptom that led to the recording of this condition." ) 610 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/manifestation-or-symptom") 611 protected List<CodeableConcept> code; 612 613 /** 614 * Links to other relevant information, including pathology reports. 615 */ 616 @Child(name = "detail", type = {Reference.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 617 @Description(shortDefinition="Supporting information found elsewhere", formalDefinition="Links to other relevant information, including pathology reports." ) 618 protected List<Reference> detail; 619 /** 620 * The actual objects that are the target of the reference (Links to other relevant information, including pathology reports.) 621 */ 622 protected List<Resource> detailTarget; 623 624 625 private static final long serialVersionUID = 1135831276L; 626 627 /** 628 * Constructor 629 */ 630 public ConditionEvidenceComponent() { 631 super(); 632 } 633 634 /** 635 * @return {@link #code} (A manifestation or symptom that led to the recording of this condition.) 636 */ 637 public List<CodeableConcept> getCode() { 638 if (this.code == null) 639 this.code = new ArrayList<CodeableConcept>(); 640 return this.code; 641 } 642 643 /** 644 * @return Returns a reference to <code>this</code> for easy method chaining 645 */ 646 public ConditionEvidenceComponent setCode(List<CodeableConcept> theCode) { 647 this.code = theCode; 648 return this; 649 } 650 651 public boolean hasCode() { 652 if (this.code == null) 653 return false; 654 for (CodeableConcept item : this.code) 655 if (!item.isEmpty()) 656 return true; 657 return false; 658 } 659 660 public CodeableConcept addCode() { //3 661 CodeableConcept t = new CodeableConcept(); 662 if (this.code == null) 663 this.code = new ArrayList<CodeableConcept>(); 664 this.code.add(t); 665 return t; 666 } 667 668 public ConditionEvidenceComponent addCode(CodeableConcept t) { //3 669 if (t == null) 670 return this; 671 if (this.code == null) 672 this.code = new ArrayList<CodeableConcept>(); 673 this.code.add(t); 674 return this; 675 } 676 677 /** 678 * @return The first repetition of repeating field {@link #code}, creating it if it does not already exist 679 */ 680 public CodeableConcept getCodeFirstRep() { 681 if (getCode().isEmpty()) { 682 addCode(); 683 } 684 return getCode().get(0); 685 } 686 687 /** 688 * @return {@link #detail} (Links to other relevant information, including pathology reports.) 689 */ 690 public List<Reference> getDetail() { 691 if (this.detail == null) 692 this.detail = new ArrayList<Reference>(); 693 return this.detail; 694 } 695 696 /** 697 * @return Returns a reference to <code>this</code> for easy method chaining 698 */ 699 public ConditionEvidenceComponent setDetail(List<Reference> theDetail) { 700 this.detail = theDetail; 701 return this; 702 } 703 704 public boolean hasDetail() { 705 if (this.detail == null) 706 return false; 707 for (Reference item : this.detail) 708 if (!item.isEmpty()) 709 return true; 710 return false; 711 } 712 713 public Reference addDetail() { //3 714 Reference t = new Reference(); 715 if (this.detail == null) 716 this.detail = new ArrayList<Reference>(); 717 this.detail.add(t); 718 return t; 719 } 720 721 public ConditionEvidenceComponent addDetail(Reference t) { //3 722 if (t == null) 723 return this; 724 if (this.detail == null) 725 this.detail = new ArrayList<Reference>(); 726 this.detail.add(t); 727 return this; 728 } 729 730 /** 731 * @return The first repetition of repeating field {@link #detail}, creating it if it does not already exist 732 */ 733 public Reference getDetailFirstRep() { 734 if (getDetail().isEmpty()) { 735 addDetail(); 736 } 737 return getDetail().get(0); 738 } 739 740 /** 741 * @deprecated Use Reference#setResource(IBaseResource) instead 742 */ 743 @Deprecated 744 public List<Resource> getDetailTarget() { 745 if (this.detailTarget == null) 746 this.detailTarget = new ArrayList<Resource>(); 747 return this.detailTarget; 748 } 749 750 protected void listChildren(List<Property> children) { 751 super.listChildren(children); 752 children.add(new Property("code", "CodeableConcept", "A manifestation or symptom that led to the recording of this condition.", 0, java.lang.Integer.MAX_VALUE, code)); 753 children.add(new Property("detail", "Reference(Any)", "Links to other relevant information, including pathology reports.", 0, java.lang.Integer.MAX_VALUE, detail)); 754 } 755 756 @Override 757 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 758 switch (_hash) { 759 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "A manifestation or symptom that led to the recording of this condition.", 0, java.lang.Integer.MAX_VALUE, code); 760 case -1335224239: /*detail*/ return new Property("detail", "Reference(Any)", "Links to other relevant information, including pathology reports.", 0, java.lang.Integer.MAX_VALUE, detail); 761 default: return super.getNamedProperty(_hash, _name, _checkValid); 762 } 763 764 } 765 766 @Override 767 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 768 switch (hash) { 769 case 3059181: /*code*/ return this.code == null ? new Base[0] : this.code.toArray(new Base[this.code.size()]); // CodeableConcept 770 case -1335224239: /*detail*/ return this.detail == null ? new Base[0] : this.detail.toArray(new Base[this.detail.size()]); // Reference 771 default: return super.getProperty(hash, name, checkValid); 772 } 773 774 } 775 776 @Override 777 public Base setProperty(int hash, String name, Base value) throws FHIRException { 778 switch (hash) { 779 case 3059181: // code 780 this.getCode().add(castToCodeableConcept(value)); // CodeableConcept 781 return value; 782 case -1335224239: // detail 783 this.getDetail().add(castToReference(value)); // Reference 784 return value; 785 default: return super.setProperty(hash, name, value); 786 } 787 788 } 789 790 @Override 791 public Base setProperty(String name, Base value) throws FHIRException { 792 if (name.equals("code")) { 793 this.getCode().add(castToCodeableConcept(value)); 794 } else if (name.equals("detail")) { 795 this.getDetail().add(castToReference(value)); 796 } else 797 return super.setProperty(name, value); 798 return value; 799 } 800 801 @Override 802 public Base makeProperty(int hash, String name) throws FHIRException { 803 switch (hash) { 804 case 3059181: return addCode(); 805 case -1335224239: return addDetail(); 806 default: return super.makeProperty(hash, name); 807 } 808 809 } 810 811 @Override 812 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 813 switch (hash) { 814 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 815 case -1335224239: /*detail*/ return new String[] {"Reference"}; 816 default: return super.getTypesForProperty(hash, name); 817 } 818 819 } 820 821 @Override 822 public Base addChild(String name) throws FHIRException { 823 if (name.equals("code")) { 824 return addCode(); 825 } 826 else if (name.equals("detail")) { 827 return addDetail(); 828 } 829 else 830 return super.addChild(name); 831 } 832 833 public ConditionEvidenceComponent copy() { 834 ConditionEvidenceComponent dst = new ConditionEvidenceComponent(); 835 copyValues(dst); 836 if (code != null) { 837 dst.code = new ArrayList<CodeableConcept>(); 838 for (CodeableConcept i : code) 839 dst.code.add(i.copy()); 840 }; 841 if (detail != null) { 842 dst.detail = new ArrayList<Reference>(); 843 for (Reference i : detail) 844 dst.detail.add(i.copy()); 845 }; 846 return dst; 847 } 848 849 @Override 850 public boolean equalsDeep(Base other_) { 851 if (!super.equalsDeep(other_)) 852 return false; 853 if (!(other_ instanceof ConditionEvidenceComponent)) 854 return false; 855 ConditionEvidenceComponent o = (ConditionEvidenceComponent) other_; 856 return compareDeep(code, o.code, true) && compareDeep(detail, o.detail, true); 857 } 858 859 @Override 860 public boolean equalsShallow(Base other_) { 861 if (!super.equalsShallow(other_)) 862 return false; 863 if (!(other_ instanceof ConditionEvidenceComponent)) 864 return false; 865 ConditionEvidenceComponent o = (ConditionEvidenceComponent) other_; 866 return true; 867 } 868 869 public boolean isEmpty() { 870 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, detail); 871 } 872 873 public String fhirType() { 874 return "Condition.evidence"; 875 876 } 877 878 } 879 880 /** 881 * This records identifiers associated with this condition that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation). 882 */ 883 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 884 @Description(shortDefinition="External Ids for this condition", formalDefinition="This records identifiers associated with this condition that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation)." ) 885 protected List<Identifier> identifier; 886 887 /** 888 * The clinical status of the condition. 889 */ 890 @Child(name = "clinicalStatus", type = {CodeType.class}, order=1, min=0, max=1, modifier=true, summary=true) 891 @Description(shortDefinition="active | recurrence | inactive | remission | resolved", formalDefinition="The clinical status of the condition." ) 892 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/condition-clinical") 893 protected Enumeration<ConditionClinicalStatus> clinicalStatus; 894 895 /** 896 * The verification status to support the clinical status of the condition. 897 */ 898 @Child(name = "verificationStatus", type = {CodeType.class}, order=2, min=0, max=1, modifier=true, summary=true) 899 @Description(shortDefinition="provisional | differential | confirmed | refuted | entered-in-error | unknown", formalDefinition="The verification status to support the clinical status of the condition." ) 900 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/condition-ver-status") 901 protected Enumeration<ConditionVerificationStatus> verificationStatus; 902 903 /** 904 * A category assigned to the condition. 905 */ 906 @Child(name = "category", type = {CodeableConcept.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 907 @Description(shortDefinition="problem-list-item | encounter-diagnosis", formalDefinition="A category assigned to the condition." ) 908 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/condition-category") 909 protected List<CodeableConcept> category; 910 911 /** 912 * A subjective assessment of the severity of the condition as evaluated by the clinician. 913 */ 914 @Child(name = "severity", type = {CodeableConcept.class}, order=4, min=0, max=1, modifier=false, summary=false) 915 @Description(shortDefinition="Subjective severity of condition", formalDefinition="A subjective assessment of the severity of the condition as evaluated by the clinician." ) 916 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/condition-severity") 917 protected CodeableConcept severity; 918 919 /** 920 * Identification of the condition, problem or diagnosis. 921 */ 922 @Child(name = "code", type = {CodeableConcept.class}, order=5, min=0, max=1, modifier=false, summary=true) 923 @Description(shortDefinition="Identification of the condition, problem or diagnosis", formalDefinition="Identification of the condition, problem or diagnosis." ) 924 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/condition-code") 925 protected CodeableConcept code; 926 927 /** 928 * The anatomical location where this condition manifests itself. 929 */ 930 @Child(name = "bodySite", type = {CodeableConcept.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 931 @Description(shortDefinition="Anatomical location, if relevant", formalDefinition="The anatomical location where this condition manifests itself." ) 932 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/body-site") 933 protected List<CodeableConcept> bodySite; 934 935 /** 936 * Indicates the patient or group who the condition record is associated with. 937 */ 938 @Child(name = "subject", type = {Patient.class, Group.class}, order=7, min=1, max=1, modifier=false, summary=true) 939 @Description(shortDefinition="Who has the condition?", formalDefinition="Indicates the patient or group who the condition record is associated with." ) 940 protected Reference subject; 941 942 /** 943 * The actual object that is the target of the reference (Indicates the patient or group who the condition record is associated with.) 944 */ 945 protected Resource subjectTarget; 946 947 /** 948 * Encounter during which the condition was first asserted. 949 */ 950 @Child(name = "context", type = {Encounter.class, EpisodeOfCare.class}, order=8, min=0, max=1, modifier=false, summary=true) 951 @Description(shortDefinition="Encounter or episode when condition first asserted", formalDefinition="Encounter during which the condition was first asserted." ) 952 protected Reference context; 953 954 /** 955 * The actual object that is the target of the reference (Encounter during which the condition was first asserted.) 956 */ 957 protected Resource contextTarget; 958 959 /** 960 * Estimated or actual date or date-time the condition began, in the opinion of the clinician. 961 */ 962 @Child(name = "onset", type = {DateTimeType.class, Age.class, Period.class, Range.class, StringType.class}, order=9, min=0, max=1, modifier=false, summary=true) 963 @Description(shortDefinition="Estimated or actual date, date-time, or age", formalDefinition="Estimated or actual date or date-time the condition began, in the opinion of the clinician." ) 964 protected Type onset; 965 966 /** 967 * The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate. 968 */ 969 @Child(name = "abatement", type = {DateTimeType.class, Age.class, BooleanType.class, Period.class, Range.class, StringType.class}, order=10, min=0, max=1, modifier=false, summary=false) 970 @Description(shortDefinition="If/when in resolution/remission", formalDefinition="The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate." ) 971 protected Type abatement; 972 973 /** 974 * The date on which the existance of the Condition was first asserted or acknowledged. 975 */ 976 @Child(name = "assertedDate", type = {DateTimeType.class}, order=11, min=0, max=1, modifier=false, summary=true) 977 @Description(shortDefinition="Date record was believed accurate", formalDefinition="The date on which the existance of the Condition was first asserted or acknowledged." ) 978 protected DateTimeType assertedDate; 979 980 /** 981 * Individual who is making the condition statement. 982 */ 983 @Child(name = "asserter", type = {Practitioner.class, Patient.class, RelatedPerson.class}, order=12, min=0, max=1, modifier=false, summary=true) 984 @Description(shortDefinition="Person who asserts this condition", formalDefinition="Individual who is making the condition statement." ) 985 protected Reference asserter; 986 987 /** 988 * The actual object that is the target of the reference (Individual who is making the condition statement.) 989 */ 990 protected Resource asserterTarget; 991 992 /** 993 * Clinical stage or grade of a condition. May include formal severity assessments. 994 */ 995 @Child(name = "stage", type = {}, order=13, min=0, max=1, modifier=false, summary=false) 996 @Description(shortDefinition="Stage/grade, usually assessed formally", formalDefinition="Clinical stage or grade of a condition. May include formal severity assessments." ) 997 protected ConditionStageComponent stage; 998 999 /** 1000 * Supporting Evidence / manifestations that are the basis on which this condition is suspected or confirmed. 1001 */ 1002 @Child(name = "evidence", type = {}, order=14, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1003 @Description(shortDefinition="Supporting evidence", formalDefinition="Supporting Evidence / manifestations that are the basis on which this condition is suspected or confirmed." ) 1004 protected List<ConditionEvidenceComponent> evidence; 1005 1006 /** 1007 * Additional information about the Condition. This is a general notes/comments entry for description of the Condition, its diagnosis and prognosis. 1008 */ 1009 @Child(name = "note", type = {Annotation.class}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1010 @Description(shortDefinition="Additional information about the Condition", formalDefinition="Additional information about the Condition. This is a general notes/comments entry for description of the Condition, its diagnosis and prognosis." ) 1011 protected List<Annotation> note; 1012 1013 private static final long serialVersionUID = -585250376L; 1014 1015 /** 1016 * Constructor 1017 */ 1018 public Condition() { 1019 super(); 1020 } 1021 1022 /** 1023 * Constructor 1024 */ 1025 public Condition(Reference subject) { 1026 super(); 1027 this.subject = subject; 1028 } 1029 1030 /** 1031 * @return {@link #identifier} (This records identifiers associated with this condition that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation).) 1032 */ 1033 public List<Identifier> getIdentifier() { 1034 if (this.identifier == null) 1035 this.identifier = new ArrayList<Identifier>(); 1036 return this.identifier; 1037 } 1038 1039 /** 1040 * @return Returns a reference to <code>this</code> for easy method chaining 1041 */ 1042 public Condition setIdentifier(List<Identifier> theIdentifier) { 1043 this.identifier = theIdentifier; 1044 return this; 1045 } 1046 1047 public boolean hasIdentifier() { 1048 if (this.identifier == null) 1049 return false; 1050 for (Identifier item : this.identifier) 1051 if (!item.isEmpty()) 1052 return true; 1053 return false; 1054 } 1055 1056 public Identifier addIdentifier() { //3 1057 Identifier t = new Identifier(); 1058 if (this.identifier == null) 1059 this.identifier = new ArrayList<Identifier>(); 1060 this.identifier.add(t); 1061 return t; 1062 } 1063 1064 public Condition addIdentifier(Identifier t) { //3 1065 if (t == null) 1066 return this; 1067 if (this.identifier == null) 1068 this.identifier = new ArrayList<Identifier>(); 1069 this.identifier.add(t); 1070 return this; 1071 } 1072 1073 /** 1074 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist 1075 */ 1076 public Identifier getIdentifierFirstRep() { 1077 if (getIdentifier().isEmpty()) { 1078 addIdentifier(); 1079 } 1080 return getIdentifier().get(0); 1081 } 1082 1083 /** 1084 * @return {@link #clinicalStatus} (The clinical status of the condition.). This is the underlying object with id, value and extensions. The accessor "getClinicalStatus" gives direct access to the value 1085 */ 1086 public Enumeration<ConditionClinicalStatus> getClinicalStatusElement() { 1087 if (this.clinicalStatus == null) 1088 if (Configuration.errorOnAutoCreate()) 1089 throw new Error("Attempt to auto-create Condition.clinicalStatus"); 1090 else if (Configuration.doAutoCreate()) 1091 this.clinicalStatus = new Enumeration<ConditionClinicalStatus>(new ConditionClinicalStatusEnumFactory()); // bb 1092 return this.clinicalStatus; 1093 } 1094 1095 public boolean hasClinicalStatusElement() { 1096 return this.clinicalStatus != null && !this.clinicalStatus.isEmpty(); 1097 } 1098 1099 public boolean hasClinicalStatus() { 1100 return this.clinicalStatus != null && !this.clinicalStatus.isEmpty(); 1101 } 1102 1103 /** 1104 * @param value {@link #clinicalStatus} (The clinical status of the condition.). This is the underlying object with id, value and extensions. The accessor "getClinicalStatus" gives direct access to the value 1105 */ 1106 public Condition setClinicalStatusElement(Enumeration<ConditionClinicalStatus> value) { 1107 this.clinicalStatus = value; 1108 return this; 1109 } 1110 1111 /** 1112 * @return The clinical status of the condition. 1113 */ 1114 public ConditionClinicalStatus getClinicalStatus() { 1115 return this.clinicalStatus == null ? null : this.clinicalStatus.getValue(); 1116 } 1117 1118 /** 1119 * @param value The clinical status of the condition. 1120 */ 1121 public Condition setClinicalStatus(ConditionClinicalStatus value) { 1122 if (value == null) 1123 this.clinicalStatus = null; 1124 else { 1125 if (this.clinicalStatus == null) 1126 this.clinicalStatus = new Enumeration<ConditionClinicalStatus>(new ConditionClinicalStatusEnumFactory()); 1127 this.clinicalStatus.setValue(value); 1128 } 1129 return this; 1130 } 1131 1132 /** 1133 * @return {@link #verificationStatus} (The verification status to support the clinical status of the condition.). This is the underlying object with id, value and extensions. The accessor "getVerificationStatus" gives direct access to the value 1134 */ 1135 public Enumeration<ConditionVerificationStatus> getVerificationStatusElement() { 1136 if (this.verificationStatus == null) 1137 if (Configuration.errorOnAutoCreate()) 1138 throw new Error("Attempt to auto-create Condition.verificationStatus"); 1139 else if (Configuration.doAutoCreate()) 1140 this.verificationStatus = new Enumeration<ConditionVerificationStatus>(new ConditionVerificationStatusEnumFactory()); // bb 1141 return this.verificationStatus; 1142 } 1143 1144 public boolean hasVerificationStatusElement() { 1145 return this.verificationStatus != null && !this.verificationStatus.isEmpty(); 1146 } 1147 1148 public boolean hasVerificationStatus() { 1149 return this.verificationStatus != null && !this.verificationStatus.isEmpty(); 1150 } 1151 1152 /** 1153 * @param value {@link #verificationStatus} (The verification status to support the clinical status of the condition.). This is the underlying object with id, value and extensions. The accessor "getVerificationStatus" gives direct access to the value 1154 */ 1155 public Condition setVerificationStatusElement(Enumeration<ConditionVerificationStatus> value) { 1156 this.verificationStatus = value; 1157 return this; 1158 } 1159 1160 /** 1161 * @return The verification status to support the clinical status of the condition. 1162 */ 1163 public ConditionVerificationStatus getVerificationStatus() { 1164 return this.verificationStatus == null ? null : this.verificationStatus.getValue(); 1165 } 1166 1167 /** 1168 * @param value The verification status to support the clinical status of the condition. 1169 */ 1170 public Condition setVerificationStatus(ConditionVerificationStatus value) { 1171 if (value == null) 1172 this.verificationStatus = null; 1173 else { 1174 if (this.verificationStatus == null) 1175 this.verificationStatus = new Enumeration<ConditionVerificationStatus>(new ConditionVerificationStatusEnumFactory()); 1176 this.verificationStatus.setValue(value); 1177 } 1178 return this; 1179 } 1180 1181 /** 1182 * @return {@link #category} (A category assigned to the condition.) 1183 */ 1184 public List<CodeableConcept> getCategory() { 1185 if (this.category == null) 1186 this.category = new ArrayList<CodeableConcept>(); 1187 return this.category; 1188 } 1189 1190 /** 1191 * @return Returns a reference to <code>this</code> for easy method chaining 1192 */ 1193 public Condition setCategory(List<CodeableConcept> theCategory) { 1194 this.category = theCategory; 1195 return this; 1196 } 1197 1198 public boolean hasCategory() { 1199 if (this.category == null) 1200 return false; 1201 for (CodeableConcept item : this.category) 1202 if (!item.isEmpty()) 1203 return true; 1204 return false; 1205 } 1206 1207 public CodeableConcept addCategory() { //3 1208 CodeableConcept t = new CodeableConcept(); 1209 if (this.category == null) 1210 this.category = new ArrayList<CodeableConcept>(); 1211 this.category.add(t); 1212 return t; 1213 } 1214 1215 public Condition addCategory(CodeableConcept t) { //3 1216 if (t == null) 1217 return this; 1218 if (this.category == null) 1219 this.category = new ArrayList<CodeableConcept>(); 1220 this.category.add(t); 1221 return this; 1222 } 1223 1224 /** 1225 * @return The first repetition of repeating field {@link #category}, creating it if it does not already exist 1226 */ 1227 public CodeableConcept getCategoryFirstRep() { 1228 if (getCategory().isEmpty()) { 1229 addCategory(); 1230 } 1231 return getCategory().get(0); 1232 } 1233 1234 /** 1235 * @return {@link #severity} (A subjective assessment of the severity of the condition as evaluated by the clinician.) 1236 */ 1237 public CodeableConcept getSeverity() { 1238 if (this.severity == null) 1239 if (Configuration.errorOnAutoCreate()) 1240 throw new Error("Attempt to auto-create Condition.severity"); 1241 else if (Configuration.doAutoCreate()) 1242 this.severity = new CodeableConcept(); // cc 1243 return this.severity; 1244 } 1245 1246 public boolean hasSeverity() { 1247 return this.severity != null && !this.severity.isEmpty(); 1248 } 1249 1250 /** 1251 * @param value {@link #severity} (A subjective assessment of the severity of the condition as evaluated by the clinician.) 1252 */ 1253 public Condition setSeverity(CodeableConcept value) { 1254 this.severity = value; 1255 return this; 1256 } 1257 1258 /** 1259 * @return {@link #code} (Identification of the condition, problem or diagnosis.) 1260 */ 1261 public CodeableConcept getCode() { 1262 if (this.code == null) 1263 if (Configuration.errorOnAutoCreate()) 1264 throw new Error("Attempt to auto-create Condition.code"); 1265 else if (Configuration.doAutoCreate()) 1266 this.code = new CodeableConcept(); // cc 1267 return this.code; 1268 } 1269 1270 public boolean hasCode() { 1271 return this.code != null && !this.code.isEmpty(); 1272 } 1273 1274 /** 1275 * @param value {@link #code} (Identification of the condition, problem or diagnosis.) 1276 */ 1277 public Condition setCode(CodeableConcept value) { 1278 this.code = value; 1279 return this; 1280 } 1281 1282 /** 1283 * @return {@link #bodySite} (The anatomical location where this condition manifests itself.) 1284 */ 1285 public List<CodeableConcept> getBodySite() { 1286 if (this.bodySite == null) 1287 this.bodySite = new ArrayList<CodeableConcept>(); 1288 return this.bodySite; 1289 } 1290 1291 /** 1292 * @return Returns a reference to <code>this</code> for easy method chaining 1293 */ 1294 public Condition setBodySite(List<CodeableConcept> theBodySite) { 1295 this.bodySite = theBodySite; 1296 return this; 1297 } 1298 1299 public boolean hasBodySite() { 1300 if (this.bodySite == null) 1301 return false; 1302 for (CodeableConcept item : this.bodySite) 1303 if (!item.isEmpty()) 1304 return true; 1305 return false; 1306 } 1307 1308 public CodeableConcept addBodySite() { //3 1309 CodeableConcept t = new CodeableConcept(); 1310 if (this.bodySite == null) 1311 this.bodySite = new ArrayList<CodeableConcept>(); 1312 this.bodySite.add(t); 1313 return t; 1314 } 1315 1316 public Condition addBodySite(CodeableConcept t) { //3 1317 if (t == null) 1318 return this; 1319 if (this.bodySite == null) 1320 this.bodySite = new ArrayList<CodeableConcept>(); 1321 this.bodySite.add(t); 1322 return this; 1323 } 1324 1325 /** 1326 * @return The first repetition of repeating field {@link #bodySite}, creating it if it does not already exist 1327 */ 1328 public CodeableConcept getBodySiteFirstRep() { 1329 if (getBodySite().isEmpty()) { 1330 addBodySite(); 1331 } 1332 return getBodySite().get(0); 1333 } 1334 1335 /** 1336 * @return {@link #subject} (Indicates the patient or group who the condition record is associated with.) 1337 */ 1338 public Reference getSubject() { 1339 if (this.subject == null) 1340 if (Configuration.errorOnAutoCreate()) 1341 throw new Error("Attempt to auto-create Condition.subject"); 1342 else if (Configuration.doAutoCreate()) 1343 this.subject = new Reference(); // cc 1344 return this.subject; 1345 } 1346 1347 public boolean hasSubject() { 1348 return this.subject != null && !this.subject.isEmpty(); 1349 } 1350 1351 /** 1352 * @param value {@link #subject} (Indicates the patient or group who the condition record is associated with.) 1353 */ 1354 public Condition setSubject(Reference value) { 1355 this.subject = value; 1356 return this; 1357 } 1358 1359 /** 1360 * @return {@link #subject} 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 or group who the condition record is associated with.) 1361 */ 1362 public Resource getSubjectTarget() { 1363 return this.subjectTarget; 1364 } 1365 1366 /** 1367 * @param value {@link #subject} 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 or group who the condition record is associated with.) 1368 */ 1369 public Condition setSubjectTarget(Resource value) { 1370 this.subjectTarget = value; 1371 return this; 1372 } 1373 1374 /** 1375 * @return {@link #context} (Encounter during which the condition was first asserted.) 1376 */ 1377 public Reference getContext() { 1378 if (this.context == null) 1379 if (Configuration.errorOnAutoCreate()) 1380 throw new Error("Attempt to auto-create Condition.context"); 1381 else if (Configuration.doAutoCreate()) 1382 this.context = new Reference(); // cc 1383 return this.context; 1384 } 1385 1386 public boolean hasContext() { 1387 return this.context != null && !this.context.isEmpty(); 1388 } 1389 1390 /** 1391 * @param value {@link #context} (Encounter during which the condition was first asserted.) 1392 */ 1393 public Condition setContext(Reference value) { 1394 this.context = value; 1395 return this; 1396 } 1397 1398 /** 1399 * @return {@link #context} 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. (Encounter during which the condition was first asserted.) 1400 */ 1401 public Resource getContextTarget() { 1402 return this.contextTarget; 1403 } 1404 1405 /** 1406 * @param value {@link #context} 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. (Encounter during which the condition was first asserted.) 1407 */ 1408 public Condition setContextTarget(Resource value) { 1409 this.contextTarget = value; 1410 return this; 1411 } 1412 1413 /** 1414 * @return {@link #onset} (Estimated or actual date or date-time the condition began, in the opinion of the clinician.) 1415 */ 1416 public Type getOnset() { 1417 return this.onset; 1418 } 1419 1420 /** 1421 * @return {@link #onset} (Estimated or actual date or date-time the condition began, in the opinion of the clinician.) 1422 */ 1423 public DateTimeType getOnsetDateTimeType() throws FHIRException { 1424 if (this.onset == null) 1425 return null; 1426 if (!(this.onset instanceof DateTimeType)) 1427 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.onset.getClass().getName()+" was encountered"); 1428 return (DateTimeType) this.onset; 1429 } 1430 1431 public boolean hasOnsetDateTimeType() { 1432 return this != null && this.onset instanceof DateTimeType; 1433 } 1434 1435 /** 1436 * @return {@link #onset} (Estimated or actual date or date-time the condition began, in the opinion of the clinician.) 1437 */ 1438 public Age getOnsetAge() throws FHIRException { 1439 if (this.onset == null) 1440 return null; 1441 if (!(this.onset instanceof Age)) 1442 throw new FHIRException("Type mismatch: the type Age was expected, but "+this.onset.getClass().getName()+" was encountered"); 1443 return (Age) this.onset; 1444 } 1445 1446 public boolean hasOnsetAge() { 1447 return this != null && this.onset instanceof Age; 1448 } 1449 1450 /** 1451 * @return {@link #onset} (Estimated or actual date or date-time the condition began, in the opinion of the clinician.) 1452 */ 1453 public Period getOnsetPeriod() throws FHIRException { 1454 if (this.onset == null) 1455 return null; 1456 if (!(this.onset instanceof Period)) 1457 throw new FHIRException("Type mismatch: the type Period was expected, but "+this.onset.getClass().getName()+" was encountered"); 1458 return (Period) this.onset; 1459 } 1460 1461 public boolean hasOnsetPeriod() { 1462 return this != null && this.onset instanceof Period; 1463 } 1464 1465 /** 1466 * @return {@link #onset} (Estimated or actual date or date-time the condition began, in the opinion of the clinician.) 1467 */ 1468 public Range getOnsetRange() throws FHIRException { 1469 if (this.onset == null) 1470 return null; 1471 if (!(this.onset instanceof Range)) 1472 throw new FHIRException("Type mismatch: the type Range was expected, but "+this.onset.getClass().getName()+" was encountered"); 1473 return (Range) this.onset; 1474 } 1475 1476 public boolean hasOnsetRange() { 1477 return this != null && this.onset instanceof Range; 1478 } 1479 1480 /** 1481 * @return {@link #onset} (Estimated or actual date or date-time the condition began, in the opinion of the clinician.) 1482 */ 1483 public StringType getOnsetStringType() throws FHIRException { 1484 if (this.onset == null) 1485 return null; 1486 if (!(this.onset instanceof StringType)) 1487 throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.onset.getClass().getName()+" was encountered"); 1488 return (StringType) this.onset; 1489 } 1490 1491 public boolean hasOnsetStringType() { 1492 return this != null && this.onset instanceof StringType; 1493 } 1494 1495 public boolean hasOnset() { 1496 return this.onset != null && !this.onset.isEmpty(); 1497 } 1498 1499 /** 1500 * @param value {@link #onset} (Estimated or actual date or date-time the condition began, in the opinion of the clinician.) 1501 */ 1502 public Condition setOnset(Type value) throws FHIRFormatError { 1503 if (value != null && !(value instanceof DateTimeType || value instanceof Age || value instanceof Period || value instanceof Range || value instanceof StringType)) 1504 throw new FHIRFormatError("Not the right type for Condition.onset[x]: "+value.fhirType()); 1505 this.onset = value; 1506 return this; 1507 } 1508 1509 /** 1510 * @return {@link #abatement} (The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.) 1511 */ 1512 public Type getAbatement() { 1513 return this.abatement; 1514 } 1515 1516 /** 1517 * @return {@link #abatement} (The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.) 1518 */ 1519 public DateTimeType getAbatementDateTimeType() throws FHIRException { 1520 if (this.abatement == null) 1521 return null; 1522 if (!(this.abatement instanceof DateTimeType)) 1523 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.abatement.getClass().getName()+" was encountered"); 1524 return (DateTimeType) this.abatement; 1525 } 1526 1527 public boolean hasAbatementDateTimeType() { 1528 return this != null && this.abatement instanceof DateTimeType; 1529 } 1530 1531 /** 1532 * @return {@link #abatement} (The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.) 1533 */ 1534 public Age getAbatementAge() throws FHIRException { 1535 if (this.abatement == null) 1536 return null; 1537 if (!(this.abatement instanceof Age)) 1538 throw new FHIRException("Type mismatch: the type Age was expected, but "+this.abatement.getClass().getName()+" was encountered"); 1539 return (Age) this.abatement; 1540 } 1541 1542 public boolean hasAbatementAge() { 1543 return this != null && this.abatement instanceof Age; 1544 } 1545 1546 /** 1547 * @return {@link #abatement} (The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.) 1548 */ 1549 public BooleanType getAbatementBooleanType() throws FHIRException { 1550 if (this.abatement == null) 1551 return null; 1552 if (!(this.abatement instanceof BooleanType)) 1553 throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.abatement.getClass().getName()+" was encountered"); 1554 return (BooleanType) this.abatement; 1555 } 1556 1557 public boolean hasAbatementBooleanType() { 1558 return this != null && this.abatement instanceof BooleanType; 1559 } 1560 1561 /** 1562 * @return {@link #abatement} (The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.) 1563 */ 1564 public Period getAbatementPeriod() throws FHIRException { 1565 if (this.abatement == null) 1566 return null; 1567 if (!(this.abatement instanceof Period)) 1568 throw new FHIRException("Type mismatch: the type Period was expected, but "+this.abatement.getClass().getName()+" was encountered"); 1569 return (Period) this.abatement; 1570 } 1571 1572 public boolean hasAbatementPeriod() { 1573 return this != null && this.abatement instanceof Period; 1574 } 1575 1576 /** 1577 * @return {@link #abatement} (The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.) 1578 */ 1579 public Range getAbatementRange() throws FHIRException { 1580 if (this.abatement == null) 1581 return null; 1582 if (!(this.abatement instanceof Range)) 1583 throw new FHIRException("Type mismatch: the type Range was expected, but "+this.abatement.getClass().getName()+" was encountered"); 1584 return (Range) this.abatement; 1585 } 1586 1587 public boolean hasAbatementRange() { 1588 return this != null && this.abatement instanceof Range; 1589 } 1590 1591 /** 1592 * @return {@link #abatement} (The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.) 1593 */ 1594 public StringType getAbatementStringType() throws FHIRException { 1595 if (this.abatement == null) 1596 return null; 1597 if (!(this.abatement instanceof StringType)) 1598 throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.abatement.getClass().getName()+" was encountered"); 1599 return (StringType) this.abatement; 1600 } 1601 1602 public boolean hasAbatementStringType() { 1603 return this != null && this.abatement instanceof StringType; 1604 } 1605 1606 public boolean hasAbatement() { 1607 return this.abatement != null && !this.abatement.isEmpty(); 1608 } 1609 1610 /** 1611 * @param value {@link #abatement} (The date or estimated date that the condition resolved or went into remission. This is called "abatement" because of the many overloaded connotations associated with "remission" or "resolution" - Conditions are never really resolved, but they can abate.) 1612 */ 1613 public Condition setAbatement(Type value) throws FHIRFormatError { 1614 if (value != null && !(value instanceof DateTimeType || value instanceof Age || value instanceof BooleanType || value instanceof Period || value instanceof Range || value instanceof StringType)) 1615 throw new FHIRFormatError("Not the right type for Condition.abatement[x]: "+value.fhirType()); 1616 this.abatement = value; 1617 return this; 1618 } 1619 1620 /** 1621 * @return {@link #assertedDate} (The date on which the existance of the Condition was first asserted or acknowledged.). This is the underlying object with id, value and extensions. The accessor "getAssertedDate" gives direct access to the value 1622 */ 1623 public DateTimeType getAssertedDateElement() { 1624 if (this.assertedDate == null) 1625 if (Configuration.errorOnAutoCreate()) 1626 throw new Error("Attempt to auto-create Condition.assertedDate"); 1627 else if (Configuration.doAutoCreate()) 1628 this.assertedDate = new DateTimeType(); // bb 1629 return this.assertedDate; 1630 } 1631 1632 public boolean hasAssertedDateElement() { 1633 return this.assertedDate != null && !this.assertedDate.isEmpty(); 1634 } 1635 1636 public boolean hasAssertedDate() { 1637 return this.assertedDate != null && !this.assertedDate.isEmpty(); 1638 } 1639 1640 /** 1641 * @param value {@link #assertedDate} (The date on which the existance of the Condition was first asserted or acknowledged.). This is the underlying object with id, value and extensions. The accessor "getAssertedDate" gives direct access to the value 1642 */ 1643 public Condition setAssertedDateElement(DateTimeType value) { 1644 this.assertedDate = value; 1645 return this; 1646 } 1647 1648 /** 1649 * @return The date on which the existance of the Condition was first asserted or acknowledged. 1650 */ 1651 public Date getAssertedDate() { 1652 return this.assertedDate == null ? null : this.assertedDate.getValue(); 1653 } 1654 1655 /** 1656 * @param value The date on which the existance of the Condition was first asserted or acknowledged. 1657 */ 1658 public Condition setAssertedDate(Date value) { 1659 if (value == null) 1660 this.assertedDate = null; 1661 else { 1662 if (this.assertedDate == null) 1663 this.assertedDate = new DateTimeType(); 1664 this.assertedDate.setValue(value); 1665 } 1666 return this; 1667 } 1668 1669 /** 1670 * @return {@link #asserter} (Individual who is making the condition statement.) 1671 */ 1672 public Reference getAsserter() { 1673 if (this.asserter == null) 1674 if (Configuration.errorOnAutoCreate()) 1675 throw new Error("Attempt to auto-create Condition.asserter"); 1676 else if (Configuration.doAutoCreate()) 1677 this.asserter = new Reference(); // cc 1678 return this.asserter; 1679 } 1680 1681 public boolean hasAsserter() { 1682 return this.asserter != null && !this.asserter.isEmpty(); 1683 } 1684 1685 /** 1686 * @param value {@link #asserter} (Individual who is making the condition statement.) 1687 */ 1688 public Condition setAsserter(Reference value) { 1689 this.asserter = value; 1690 return this; 1691 } 1692 1693 /** 1694 * @return {@link #asserter} 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 who is making the condition statement.) 1695 */ 1696 public Resource getAsserterTarget() { 1697 return this.asserterTarget; 1698 } 1699 1700 /** 1701 * @param value {@link #asserter} 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 who is making the condition statement.) 1702 */ 1703 public Condition setAsserterTarget(Resource value) { 1704 this.asserterTarget = value; 1705 return this; 1706 } 1707 1708 /** 1709 * @return {@link #stage} (Clinical stage or grade of a condition. May include formal severity assessments.) 1710 */ 1711 public ConditionStageComponent getStage() { 1712 if (this.stage == null) 1713 if (Configuration.errorOnAutoCreate()) 1714 throw new Error("Attempt to auto-create Condition.stage"); 1715 else if (Configuration.doAutoCreate()) 1716 this.stage = new ConditionStageComponent(); // cc 1717 return this.stage; 1718 } 1719 1720 public boolean hasStage() { 1721 return this.stage != null && !this.stage.isEmpty(); 1722 } 1723 1724 /** 1725 * @param value {@link #stage} (Clinical stage or grade of a condition. May include formal severity assessments.) 1726 */ 1727 public Condition setStage(ConditionStageComponent value) { 1728 this.stage = value; 1729 return this; 1730 } 1731 1732 /** 1733 * @return {@link #evidence} (Supporting Evidence / manifestations that are the basis on which this condition is suspected or confirmed.) 1734 */ 1735 public List<ConditionEvidenceComponent> getEvidence() { 1736 if (this.evidence == null) 1737 this.evidence = new ArrayList<ConditionEvidenceComponent>(); 1738 return this.evidence; 1739 } 1740 1741 /** 1742 * @return Returns a reference to <code>this</code> for easy method chaining 1743 */ 1744 public Condition setEvidence(List<ConditionEvidenceComponent> theEvidence) { 1745 this.evidence = theEvidence; 1746 return this; 1747 } 1748 1749 public boolean hasEvidence() { 1750 if (this.evidence == null) 1751 return false; 1752 for (ConditionEvidenceComponent item : this.evidence) 1753 if (!item.isEmpty()) 1754 return true; 1755 return false; 1756 } 1757 1758 public ConditionEvidenceComponent addEvidence() { //3 1759 ConditionEvidenceComponent t = new ConditionEvidenceComponent(); 1760 if (this.evidence == null) 1761 this.evidence = new ArrayList<ConditionEvidenceComponent>(); 1762 this.evidence.add(t); 1763 return t; 1764 } 1765 1766 public Condition addEvidence(ConditionEvidenceComponent t) { //3 1767 if (t == null) 1768 return this; 1769 if (this.evidence == null) 1770 this.evidence = new ArrayList<ConditionEvidenceComponent>(); 1771 this.evidence.add(t); 1772 return this; 1773 } 1774 1775 /** 1776 * @return The first repetition of repeating field {@link #evidence}, creating it if it does not already exist 1777 */ 1778 public ConditionEvidenceComponent getEvidenceFirstRep() { 1779 if (getEvidence().isEmpty()) { 1780 addEvidence(); 1781 } 1782 return getEvidence().get(0); 1783 } 1784 1785 /** 1786 * @return {@link #note} (Additional information about the Condition. This is a general notes/comments entry for description of the Condition, its diagnosis and prognosis.) 1787 */ 1788 public List<Annotation> getNote() { 1789 if (this.note == null) 1790 this.note = new ArrayList<Annotation>(); 1791 return this.note; 1792 } 1793 1794 /** 1795 * @return Returns a reference to <code>this</code> for easy method chaining 1796 */ 1797 public Condition setNote(List<Annotation> theNote) { 1798 this.note = theNote; 1799 return this; 1800 } 1801 1802 public boolean hasNote() { 1803 if (this.note == null) 1804 return false; 1805 for (Annotation item : this.note) 1806 if (!item.isEmpty()) 1807 return true; 1808 return false; 1809 } 1810 1811 public Annotation addNote() { //3 1812 Annotation t = new Annotation(); 1813 if (this.note == null) 1814 this.note = new ArrayList<Annotation>(); 1815 this.note.add(t); 1816 return t; 1817 } 1818 1819 public Condition addNote(Annotation t) { //3 1820 if (t == null) 1821 return this; 1822 if (this.note == null) 1823 this.note = new ArrayList<Annotation>(); 1824 this.note.add(t); 1825 return this; 1826 } 1827 1828 /** 1829 * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist 1830 */ 1831 public Annotation getNoteFirstRep() { 1832 if (getNote().isEmpty()) { 1833 addNote(); 1834 } 1835 return getNote().get(0); 1836 } 1837 1838 protected void listChildren(List<Property> children) { 1839 super.listChildren(children); 1840 children.add(new Property("identifier", "Identifier", "This records identifiers associated with this condition that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation).", 0, java.lang.Integer.MAX_VALUE, identifier)); 1841 children.add(new Property("clinicalStatus", "code", "The clinical status of the condition.", 0, 1, clinicalStatus)); 1842 children.add(new Property("verificationStatus", "code", "The verification status to support the clinical status of the condition.", 0, 1, verificationStatus)); 1843 children.add(new Property("category", "CodeableConcept", "A category assigned to the condition.", 0, java.lang.Integer.MAX_VALUE, category)); 1844 children.add(new Property("severity", "CodeableConcept", "A subjective assessment of the severity of the condition as evaluated by the clinician.", 0, 1, severity)); 1845 children.add(new Property("code", "CodeableConcept", "Identification of the condition, problem or diagnosis.", 0, 1, code)); 1846 children.add(new Property("bodySite", "CodeableConcept", "The anatomical location where this condition manifests itself.", 0, java.lang.Integer.MAX_VALUE, bodySite)); 1847 children.add(new Property("subject", "Reference(Patient|Group)", "Indicates the patient or group who the condition record is associated with.", 0, 1, subject)); 1848 children.add(new Property("context", "Reference(Encounter|EpisodeOfCare)", "Encounter during which the condition was first asserted.", 0, 1, context)); 1849 children.add(new Property("onset[x]", "dateTime|Age|Period|Range|string", "Estimated or actual date or date-time the condition began, in the opinion of the clinician.", 0, 1, onset)); 1850 children.add(new Property("abatement[x]", "dateTime|Age|boolean|Period|Range|string", "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.", 0, 1, abatement)); 1851 children.add(new Property("assertedDate", "dateTime", "The date on which the existance of the Condition was first asserted or acknowledged.", 0, 1, assertedDate)); 1852 children.add(new Property("asserter", "Reference(Practitioner|Patient|RelatedPerson)", "Individual who is making the condition statement.", 0, 1, asserter)); 1853 children.add(new Property("stage", "", "Clinical stage or grade of a condition. May include formal severity assessments.", 0, 1, stage)); 1854 children.add(new Property("evidence", "", "Supporting Evidence / manifestations that are the basis on which this condition is suspected or confirmed.", 0, java.lang.Integer.MAX_VALUE, evidence)); 1855 children.add(new Property("note", "Annotation", "Additional information about the Condition. This is a general notes/comments entry for description of the Condition, its diagnosis and prognosis.", 0, java.lang.Integer.MAX_VALUE, note)); 1856 } 1857 1858 @Override 1859 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1860 switch (_hash) { 1861 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "This records identifiers associated with this condition that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation).", 0, java.lang.Integer.MAX_VALUE, identifier); 1862 case -462853915: /*clinicalStatus*/ return new Property("clinicalStatus", "code", "The clinical status of the condition.", 0, 1, clinicalStatus); 1863 case -842509843: /*verificationStatus*/ return new Property("verificationStatus", "code", "The verification status to support the clinical status of the condition.", 0, 1, verificationStatus); 1864 case 50511102: /*category*/ return new Property("category", "CodeableConcept", "A category assigned to the condition.", 0, java.lang.Integer.MAX_VALUE, category); 1865 case 1478300413: /*severity*/ return new Property("severity", "CodeableConcept", "A subjective assessment of the severity of the condition as evaluated by the clinician.", 0, 1, severity); 1866 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "Identification of the condition, problem or diagnosis.", 0, 1, code); 1867 case 1702620169: /*bodySite*/ return new Property("bodySite", "CodeableConcept", "The anatomical location where this condition manifests itself.", 0, java.lang.Integer.MAX_VALUE, bodySite); 1868 case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group)", "Indicates the patient or group who the condition record is associated with.", 0, 1, subject); 1869 case 951530927: /*context*/ return new Property("context", "Reference(Encounter|EpisodeOfCare)", "Encounter during which the condition was first asserted.", 0, 1, context); 1870 case -1886216323: /*onset[x]*/ return new Property("onset[x]", "dateTime|Age|Period|Range|string", "Estimated or actual date or date-time the condition began, in the opinion of the clinician.", 0, 1, onset); 1871 case 105901603: /*onset*/ return new Property("onset[x]", "dateTime|Age|Period|Range|string", "Estimated or actual date or date-time the condition began, in the opinion of the clinician.", 0, 1, onset); 1872 case -1701663010: /*onsetDateTime*/ return new Property("onset[x]", "dateTime|Age|Period|Range|string", "Estimated or actual date or date-time the condition began, in the opinion of the clinician.", 0, 1, onset); 1873 case -1886241828: /*onsetAge*/ return new Property("onset[x]", "dateTime|Age|Period|Range|string", "Estimated or actual date or date-time the condition began, in the opinion of the clinician.", 0, 1, onset); 1874 case -1545082428: /*onsetPeriod*/ return new Property("onset[x]", "dateTime|Age|Period|Range|string", "Estimated or actual date or date-time the condition began, in the opinion of the clinician.", 0, 1, onset); 1875 case -186664742: /*onsetRange*/ return new Property("onset[x]", "dateTime|Age|Period|Range|string", "Estimated or actual date or date-time the condition began, in the opinion of the clinician.", 0, 1, onset); 1876 case -1445342188: /*onsetString*/ return new Property("onset[x]", "dateTime|Age|Period|Range|string", "Estimated or actual date or date-time the condition began, in the opinion of the clinician.", 0, 1, onset); 1877 case -584196495: /*abatement[x]*/ return new Property("abatement[x]", "dateTime|Age|boolean|Period|Range|string", "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.", 0, 1, abatement); 1878 case -921554001: /*abatement*/ return new Property("abatement[x]", "dateTime|Age|boolean|Period|Range|string", "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.", 0, 1, abatement); 1879 case 44869738: /*abatementDateTime*/ return new Property("abatement[x]", "dateTime|Age|boolean|Period|Range|string", "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.", 0, 1, abatement); 1880 case -584222000: /*abatementAge*/ return new Property("abatement[x]", "dateTime|Age|boolean|Period|Range|string", "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.", 0, 1, abatement); 1881 case -2069881479: /*abatementBoolean*/ return new Property("abatement[x]", "dateTime|Age|boolean|Period|Range|string", "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.", 0, 1, abatement); 1882 case -922036656: /*abatementPeriod*/ return new Property("abatement[x]", "dateTime|Age|boolean|Period|Range|string", "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.", 0, 1, abatement); 1883 case 1218906830: /*abatementRange*/ return new Property("abatement[x]", "dateTime|Age|boolean|Period|Range|string", "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.", 0, 1, abatement); 1884 case -822296416: /*abatementString*/ return new Property("abatement[x]", "dateTime|Age|boolean|Period|Range|string", "The date or estimated date that the condition resolved or went into remission. This is called \"abatement\" because of the many overloaded connotations associated with \"remission\" or \"resolution\" - Conditions are never really resolved, but they can abate.", 0, 1, abatement); 1885 case -174231629: /*assertedDate*/ return new Property("assertedDate", "dateTime", "The date on which the existance of the Condition was first asserted or acknowledged.", 0, 1, assertedDate); 1886 case -373242253: /*asserter*/ return new Property("asserter", "Reference(Practitioner|Patient|RelatedPerson)", "Individual who is making the condition statement.", 0, 1, asserter); 1887 case 109757182: /*stage*/ return new Property("stage", "", "Clinical stage or grade of a condition. May include formal severity assessments.", 0, 1, stage); 1888 case 382967383: /*evidence*/ return new Property("evidence", "", "Supporting Evidence / manifestations that are the basis on which this condition is suspected or confirmed.", 0, java.lang.Integer.MAX_VALUE, evidence); 1889 case 3387378: /*note*/ return new Property("note", "Annotation", "Additional information about the Condition. This is a general notes/comments entry for description of the Condition, its diagnosis and prognosis.", 0, java.lang.Integer.MAX_VALUE, note); 1890 default: return super.getNamedProperty(_hash, _name, _checkValid); 1891 } 1892 1893 } 1894 1895 @Override 1896 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1897 switch (hash) { 1898 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1899 case -462853915: /*clinicalStatus*/ return this.clinicalStatus == null ? new Base[0] : new Base[] {this.clinicalStatus}; // Enumeration<ConditionClinicalStatus> 1900 case -842509843: /*verificationStatus*/ return this.verificationStatus == null ? new Base[0] : new Base[] {this.verificationStatus}; // Enumeration<ConditionVerificationStatus> 1901 case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept 1902 case 1478300413: /*severity*/ return this.severity == null ? new Base[0] : new Base[] {this.severity}; // CodeableConcept 1903 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 1904 case 1702620169: /*bodySite*/ return this.bodySite == null ? new Base[0] : this.bodySite.toArray(new Base[this.bodySite.size()]); // CodeableConcept 1905 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference 1906 case 951530927: /*context*/ return this.context == null ? new Base[0] : new Base[] {this.context}; // Reference 1907 case 105901603: /*onset*/ return this.onset == null ? new Base[0] : new Base[] {this.onset}; // Type 1908 case -921554001: /*abatement*/ return this.abatement == null ? new Base[0] : new Base[] {this.abatement}; // Type 1909 case -174231629: /*assertedDate*/ return this.assertedDate == null ? new Base[0] : new Base[] {this.assertedDate}; // DateTimeType 1910 case -373242253: /*asserter*/ return this.asserter == null ? new Base[0] : new Base[] {this.asserter}; // Reference 1911 case 109757182: /*stage*/ return this.stage == null ? new Base[0] : new Base[] {this.stage}; // ConditionStageComponent 1912 case 382967383: /*evidence*/ return this.evidence == null ? new Base[0] : this.evidence.toArray(new Base[this.evidence.size()]); // ConditionEvidenceComponent 1913 case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 1914 default: return super.getProperty(hash, name, checkValid); 1915 } 1916 1917 } 1918 1919 @Override 1920 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1921 switch (hash) { 1922 case -1618432855: // identifier 1923 this.getIdentifier().add(castToIdentifier(value)); // Identifier 1924 return value; 1925 case -462853915: // clinicalStatus 1926 value = new ConditionClinicalStatusEnumFactory().fromType(castToCode(value)); 1927 this.clinicalStatus = (Enumeration) value; // Enumeration<ConditionClinicalStatus> 1928 return value; 1929 case -842509843: // verificationStatus 1930 value = new ConditionVerificationStatusEnumFactory().fromType(castToCode(value)); 1931 this.verificationStatus = (Enumeration) value; // Enumeration<ConditionVerificationStatus> 1932 return value; 1933 case 50511102: // category 1934 this.getCategory().add(castToCodeableConcept(value)); // CodeableConcept 1935 return value; 1936 case 1478300413: // severity 1937 this.severity = castToCodeableConcept(value); // CodeableConcept 1938 return value; 1939 case 3059181: // code 1940 this.code = castToCodeableConcept(value); // CodeableConcept 1941 return value; 1942 case 1702620169: // bodySite 1943 this.getBodySite().add(castToCodeableConcept(value)); // CodeableConcept 1944 return value; 1945 case -1867885268: // subject 1946 this.subject = castToReference(value); // Reference 1947 return value; 1948 case 951530927: // context 1949 this.context = castToReference(value); // Reference 1950 return value; 1951 case 105901603: // onset 1952 this.onset = castToType(value); // Type 1953 return value; 1954 case -921554001: // abatement 1955 this.abatement = castToType(value); // Type 1956 return value; 1957 case -174231629: // assertedDate 1958 this.assertedDate = castToDateTime(value); // DateTimeType 1959 return value; 1960 case -373242253: // asserter 1961 this.asserter = castToReference(value); // Reference 1962 return value; 1963 case 109757182: // stage 1964 this.stage = (ConditionStageComponent) value; // ConditionStageComponent 1965 return value; 1966 case 382967383: // evidence 1967 this.getEvidence().add((ConditionEvidenceComponent) value); // ConditionEvidenceComponent 1968 return value; 1969 case 3387378: // note 1970 this.getNote().add(castToAnnotation(value)); // Annotation 1971 return value; 1972 default: return super.setProperty(hash, name, value); 1973 } 1974 1975 } 1976 1977 @Override 1978 public Base setProperty(String name, Base value) throws FHIRException { 1979 if (name.equals("identifier")) { 1980 this.getIdentifier().add(castToIdentifier(value)); 1981 } else if (name.equals("clinicalStatus")) { 1982 value = new ConditionClinicalStatusEnumFactory().fromType(castToCode(value)); 1983 this.clinicalStatus = (Enumeration) value; // Enumeration<ConditionClinicalStatus> 1984 } else if (name.equals("verificationStatus")) { 1985 value = new ConditionVerificationStatusEnumFactory().fromType(castToCode(value)); 1986 this.verificationStatus = (Enumeration) value; // Enumeration<ConditionVerificationStatus> 1987 } else if (name.equals("category")) { 1988 this.getCategory().add(castToCodeableConcept(value)); 1989 } else if (name.equals("severity")) { 1990 this.severity = castToCodeableConcept(value); // CodeableConcept 1991 } else if (name.equals("code")) { 1992 this.code = castToCodeableConcept(value); // CodeableConcept 1993 } else if (name.equals("bodySite")) { 1994 this.getBodySite().add(castToCodeableConcept(value)); 1995 } else if (name.equals("subject")) { 1996 this.subject = castToReference(value); // Reference 1997 } else if (name.equals("context")) { 1998 this.context = castToReference(value); // Reference 1999 } else if (name.equals("onset[x]")) { 2000 this.onset = castToType(value); // Type 2001 } else if (name.equals("abatement[x]")) { 2002 this.abatement = castToType(value); // Type 2003 } else if (name.equals("assertedDate")) { 2004 this.assertedDate = castToDateTime(value); // DateTimeType 2005 } else if (name.equals("asserter")) { 2006 this.asserter = castToReference(value); // Reference 2007 } else if (name.equals("stage")) { 2008 this.stage = (ConditionStageComponent) value; // ConditionStageComponent 2009 } else if (name.equals("evidence")) { 2010 this.getEvidence().add((ConditionEvidenceComponent) value); 2011 } else if (name.equals("note")) { 2012 this.getNote().add(castToAnnotation(value)); 2013 } else 2014 return super.setProperty(name, value); 2015 return value; 2016 } 2017 2018 @Override 2019 public Base makeProperty(int hash, String name) throws FHIRException { 2020 switch (hash) { 2021 case -1618432855: return addIdentifier(); 2022 case -462853915: return getClinicalStatusElement(); 2023 case -842509843: return getVerificationStatusElement(); 2024 case 50511102: return addCategory(); 2025 case 1478300413: return getSeverity(); 2026 case 3059181: return getCode(); 2027 case 1702620169: return addBodySite(); 2028 case -1867885268: return getSubject(); 2029 case 951530927: return getContext(); 2030 case -1886216323: return getOnset(); 2031 case 105901603: return getOnset(); 2032 case -584196495: return getAbatement(); 2033 case -921554001: return getAbatement(); 2034 case -174231629: return getAssertedDateElement(); 2035 case -373242253: return getAsserter(); 2036 case 109757182: return getStage(); 2037 case 382967383: return addEvidence(); 2038 case 3387378: return addNote(); 2039 default: return super.makeProperty(hash, name); 2040 } 2041 2042 } 2043 2044 @Override 2045 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 2046 switch (hash) { 2047 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 2048 case -462853915: /*clinicalStatus*/ return new String[] {"code"}; 2049 case -842509843: /*verificationStatus*/ return new String[] {"code"}; 2050 case 50511102: /*category*/ return new String[] {"CodeableConcept"}; 2051 case 1478300413: /*severity*/ return new String[] {"CodeableConcept"}; 2052 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 2053 case 1702620169: /*bodySite*/ return new String[] {"CodeableConcept"}; 2054 case -1867885268: /*subject*/ return new String[] {"Reference"}; 2055 case 951530927: /*context*/ return new String[] {"Reference"}; 2056 case 105901603: /*onset*/ return new String[] {"dateTime", "Age", "Period", "Range", "string"}; 2057 case -921554001: /*abatement*/ return new String[] {"dateTime", "Age", "boolean", "Period", "Range", "string"}; 2058 case -174231629: /*assertedDate*/ return new String[] {"dateTime"}; 2059 case -373242253: /*asserter*/ return new String[] {"Reference"}; 2060 case 109757182: /*stage*/ return new String[] {}; 2061 case 382967383: /*evidence*/ return new String[] {}; 2062 case 3387378: /*note*/ return new String[] {"Annotation"}; 2063 default: return super.getTypesForProperty(hash, name); 2064 } 2065 2066 } 2067 2068 @Override 2069 public Base addChild(String name) throws FHIRException { 2070 if (name.equals("identifier")) { 2071 return addIdentifier(); 2072 } 2073 else if (name.equals("clinicalStatus")) { 2074 throw new FHIRException("Cannot call addChild on a singleton property Condition.clinicalStatus"); 2075 } 2076 else if (name.equals("verificationStatus")) { 2077 throw new FHIRException("Cannot call addChild on a singleton property Condition.verificationStatus"); 2078 } 2079 else if (name.equals("category")) { 2080 return addCategory(); 2081 } 2082 else if (name.equals("severity")) { 2083 this.severity = new CodeableConcept(); 2084 return this.severity; 2085 } 2086 else if (name.equals("code")) { 2087 this.code = new CodeableConcept(); 2088 return this.code; 2089 } 2090 else if (name.equals("bodySite")) { 2091 return addBodySite(); 2092 } 2093 else if (name.equals("subject")) { 2094 this.subject = new Reference(); 2095 return this.subject; 2096 } 2097 else if (name.equals("context")) { 2098 this.context = new Reference(); 2099 return this.context; 2100 } 2101 else if (name.equals("onsetDateTime")) { 2102 this.onset = new DateTimeType(); 2103 return this.onset; 2104 } 2105 else if (name.equals("onsetAge")) { 2106 this.onset = new Age(); 2107 return this.onset; 2108 } 2109 else if (name.equals("onsetPeriod")) { 2110 this.onset = new Period(); 2111 return this.onset; 2112 } 2113 else if (name.equals("onsetRange")) { 2114 this.onset = new Range(); 2115 return this.onset; 2116 } 2117 else if (name.equals("onsetString")) { 2118 this.onset = new StringType(); 2119 return this.onset; 2120 } 2121 else if (name.equals("abatementDateTime")) { 2122 this.abatement = new DateTimeType(); 2123 return this.abatement; 2124 } 2125 else if (name.equals("abatementAge")) { 2126 this.abatement = new Age(); 2127 return this.abatement; 2128 } 2129 else if (name.equals("abatementBoolean")) { 2130 this.abatement = new BooleanType(); 2131 return this.abatement; 2132 } 2133 else if (name.equals("abatementPeriod")) { 2134 this.abatement = new Period(); 2135 return this.abatement; 2136 } 2137 else if (name.equals("abatementRange")) { 2138 this.abatement = new Range(); 2139 return this.abatement; 2140 } 2141 else if (name.equals("abatementString")) { 2142 this.abatement = new StringType(); 2143 return this.abatement; 2144 } 2145 else if (name.equals("assertedDate")) { 2146 throw new FHIRException("Cannot call addChild on a singleton property Condition.assertedDate"); 2147 } 2148 else if (name.equals("asserter")) { 2149 this.asserter = new Reference(); 2150 return this.asserter; 2151 } 2152 else if (name.equals("stage")) { 2153 this.stage = new ConditionStageComponent(); 2154 return this.stage; 2155 } 2156 else if (name.equals("evidence")) { 2157 return addEvidence(); 2158 } 2159 else if (name.equals("note")) { 2160 return addNote(); 2161 } 2162 else 2163 return super.addChild(name); 2164 } 2165 2166 public String fhirType() { 2167 return "Condition"; 2168 2169 } 2170 2171 public Condition copy() { 2172 Condition dst = new Condition(); 2173 copyValues(dst); 2174 if (identifier != null) { 2175 dst.identifier = new ArrayList<Identifier>(); 2176 for (Identifier i : identifier) 2177 dst.identifier.add(i.copy()); 2178 }; 2179 dst.clinicalStatus = clinicalStatus == null ? null : clinicalStatus.copy(); 2180 dst.verificationStatus = verificationStatus == null ? null : verificationStatus.copy(); 2181 if (category != null) { 2182 dst.category = new ArrayList<CodeableConcept>(); 2183 for (CodeableConcept i : category) 2184 dst.category.add(i.copy()); 2185 }; 2186 dst.severity = severity == null ? null : severity.copy(); 2187 dst.code = code == null ? null : code.copy(); 2188 if (bodySite != null) { 2189 dst.bodySite = new ArrayList<CodeableConcept>(); 2190 for (CodeableConcept i : bodySite) 2191 dst.bodySite.add(i.copy()); 2192 }; 2193 dst.subject = subject == null ? null : subject.copy(); 2194 dst.context = context == null ? null : context.copy(); 2195 dst.onset = onset == null ? null : onset.copy(); 2196 dst.abatement = abatement == null ? null : abatement.copy(); 2197 dst.assertedDate = assertedDate == null ? null : assertedDate.copy(); 2198 dst.asserter = asserter == null ? null : asserter.copy(); 2199 dst.stage = stage == null ? null : stage.copy(); 2200 if (evidence != null) { 2201 dst.evidence = new ArrayList<ConditionEvidenceComponent>(); 2202 for (ConditionEvidenceComponent i : evidence) 2203 dst.evidence.add(i.copy()); 2204 }; 2205 if (note != null) { 2206 dst.note = new ArrayList<Annotation>(); 2207 for (Annotation i : note) 2208 dst.note.add(i.copy()); 2209 }; 2210 return dst; 2211 } 2212 2213 protected Condition typedCopy() { 2214 return copy(); 2215 } 2216 2217 @Override 2218 public boolean equalsDeep(Base other_) { 2219 if (!super.equalsDeep(other_)) 2220 return false; 2221 if (!(other_ instanceof Condition)) 2222 return false; 2223 Condition o = (Condition) other_; 2224 return compareDeep(identifier, o.identifier, true) && compareDeep(clinicalStatus, o.clinicalStatus, true) 2225 && compareDeep(verificationStatus, o.verificationStatus, true) && compareDeep(category, o.category, true) 2226 && compareDeep(severity, o.severity, true) && compareDeep(code, o.code, true) && compareDeep(bodySite, o.bodySite, true) 2227 && compareDeep(subject, o.subject, true) && compareDeep(context, o.context, true) && compareDeep(onset, o.onset, true) 2228 && compareDeep(abatement, o.abatement, true) && compareDeep(assertedDate, o.assertedDate, true) 2229 && compareDeep(asserter, o.asserter, true) && compareDeep(stage, o.stage, true) && compareDeep(evidence, o.evidence, true) 2230 && compareDeep(note, o.note, true); 2231 } 2232 2233 @Override 2234 public boolean equalsShallow(Base other_) { 2235 if (!super.equalsShallow(other_)) 2236 return false; 2237 if (!(other_ instanceof Condition)) 2238 return false; 2239 Condition o = (Condition) other_; 2240 return compareValues(clinicalStatus, o.clinicalStatus, true) && compareValues(verificationStatus, o.verificationStatus, true) 2241 && compareValues(assertedDate, o.assertedDate, true); 2242 } 2243 2244 public boolean isEmpty() { 2245 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, clinicalStatus 2246 , verificationStatus, category, severity, code, bodySite, subject, context, onset 2247 , abatement, assertedDate, asserter, stage, evidence, note); 2248 } 2249 2250 @Override 2251 public ResourceType getResourceType() { 2252 return ResourceType.Condition; 2253 } 2254 2255 /** 2256 * Search parameter: <b>severity</b> 2257 * <p> 2258 * Description: <b>The severity of the condition</b><br> 2259 * Type: <b>token</b><br> 2260 * Path: <b>Condition.severity</b><br> 2261 * </p> 2262 */ 2263 @SearchParamDefinition(name="severity", path="Condition.severity", description="The severity of the condition", type="token" ) 2264 public static final String SP_SEVERITY = "severity"; 2265 /** 2266 * <b>Fluent Client</b> search parameter constant for <b>severity</b> 2267 * <p> 2268 * Description: <b>The severity of the condition</b><br> 2269 * Type: <b>token</b><br> 2270 * Path: <b>Condition.severity</b><br> 2271 * </p> 2272 */ 2273 public static final ca.uhn.fhir.rest.gclient.TokenClientParam SEVERITY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_SEVERITY); 2274 2275 /** 2276 * Search parameter: <b>evidence-detail</b> 2277 * <p> 2278 * Description: <b>Supporting information found elsewhere</b><br> 2279 * Type: <b>reference</b><br> 2280 * Path: <b>Condition.evidence.detail</b><br> 2281 * </p> 2282 */ 2283 @SearchParamDefinition(name="evidence-detail", path="Condition.evidence.detail", description="Supporting information found elsewhere", type="reference" ) 2284 public static final String SP_EVIDENCE_DETAIL = "evidence-detail"; 2285 /** 2286 * <b>Fluent Client</b> search parameter constant for <b>evidence-detail</b> 2287 * <p> 2288 * Description: <b>Supporting information found elsewhere</b><br> 2289 * Type: <b>reference</b><br> 2290 * Path: <b>Condition.evidence.detail</b><br> 2291 * </p> 2292 */ 2293 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam EVIDENCE_DETAIL = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_EVIDENCE_DETAIL); 2294 2295/** 2296 * Constant for fluent queries to be used to add include statements. Specifies 2297 * the path value of "<b>Condition:evidence-detail</b>". 2298 */ 2299 public static final ca.uhn.fhir.model.api.Include INCLUDE_EVIDENCE_DETAIL = new ca.uhn.fhir.model.api.Include("Condition:evidence-detail").toLocked(); 2300 2301 /** 2302 * Search parameter: <b>identifier</b> 2303 * <p> 2304 * Description: <b>A unique identifier of the condition record</b><br> 2305 * Type: <b>token</b><br> 2306 * Path: <b>Condition.identifier</b><br> 2307 * </p> 2308 */ 2309 @SearchParamDefinition(name="identifier", path="Condition.identifier", description="A unique identifier of the condition record", type="token" ) 2310 public static final String SP_IDENTIFIER = "identifier"; 2311 /** 2312 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 2313 * <p> 2314 * Description: <b>A unique identifier of the condition record</b><br> 2315 * Type: <b>token</b><br> 2316 * Path: <b>Condition.identifier</b><br> 2317 * </p> 2318 */ 2319 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 2320 2321 /** 2322 * Search parameter: <b>onset-info</b> 2323 * <p> 2324 * Description: <b>Onsets as a string</b><br> 2325 * Type: <b>string</b><br> 2326 * Path: <b>Condition.onset[x]</b><br> 2327 * </p> 2328 */ 2329 @SearchParamDefinition(name="onset-info", path="Condition.onset.as(string)", description="Onsets as a string", type="string" ) 2330 public static final String SP_ONSET_INFO = "onset-info"; 2331 /** 2332 * <b>Fluent Client</b> search parameter constant for <b>onset-info</b> 2333 * <p> 2334 * Description: <b>Onsets as a string</b><br> 2335 * Type: <b>string</b><br> 2336 * Path: <b>Condition.onset[x]</b><br> 2337 * </p> 2338 */ 2339 public static final ca.uhn.fhir.rest.gclient.StringClientParam ONSET_INFO = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ONSET_INFO); 2340 2341 /** 2342 * Search parameter: <b>code</b> 2343 * <p> 2344 * Description: <b>Code for the condition</b><br> 2345 * Type: <b>token</b><br> 2346 * Path: <b>Condition.code</b><br> 2347 * </p> 2348 */ 2349 @SearchParamDefinition(name="code", path="Condition.code", description="Code for the condition", type="token" ) 2350 public static final String SP_CODE = "code"; 2351 /** 2352 * <b>Fluent Client</b> search parameter constant for <b>code</b> 2353 * <p> 2354 * Description: <b>Code for the condition</b><br> 2355 * Type: <b>token</b><br> 2356 * Path: <b>Condition.code</b><br> 2357 * </p> 2358 */ 2359 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); 2360 2361 /** 2362 * Search parameter: <b>evidence</b> 2363 * <p> 2364 * Description: <b>Manifestation/symptom</b><br> 2365 * Type: <b>token</b><br> 2366 * Path: <b>Condition.evidence.code</b><br> 2367 * </p> 2368 */ 2369 @SearchParamDefinition(name="evidence", path="Condition.evidence.code", description="Manifestation/symptom", type="token" ) 2370 public static final String SP_EVIDENCE = "evidence"; 2371 /** 2372 * <b>Fluent Client</b> search parameter constant for <b>evidence</b> 2373 * <p> 2374 * Description: <b>Manifestation/symptom</b><br> 2375 * Type: <b>token</b><br> 2376 * Path: <b>Condition.evidence.code</b><br> 2377 * </p> 2378 */ 2379 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EVIDENCE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EVIDENCE); 2380 2381 /** 2382 * Search parameter: <b>subject</b> 2383 * <p> 2384 * Description: <b>Who has the condition?</b><br> 2385 * Type: <b>reference</b><br> 2386 * Path: <b>Condition.subject</b><br> 2387 * </p> 2388 */ 2389 @SearchParamDefinition(name="subject", path="Condition.subject", description="Who has the condition?", type="reference", target={Group.class, Patient.class } ) 2390 public static final String SP_SUBJECT = "subject"; 2391 /** 2392 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 2393 * <p> 2394 * Description: <b>Who has the condition?</b><br> 2395 * Type: <b>reference</b><br> 2396 * Path: <b>Condition.subject</b><br> 2397 * </p> 2398 */ 2399 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 2400 2401/** 2402 * Constant for fluent queries to be used to add include statements. Specifies 2403 * the path value of "<b>Condition:subject</b>". 2404 */ 2405 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("Condition:subject").toLocked(); 2406 2407 /** 2408 * Search parameter: <b>verification-status</b> 2409 * <p> 2410 * Description: <b>provisional | differential | confirmed | refuted | entered-in-error | unknown</b><br> 2411 * Type: <b>token</b><br> 2412 * Path: <b>Condition.verificationStatus</b><br> 2413 * </p> 2414 */ 2415 @SearchParamDefinition(name="verification-status", path="Condition.verificationStatus", description="provisional | differential | confirmed | refuted | entered-in-error | unknown", type="token" ) 2416 public static final String SP_VERIFICATION_STATUS = "verification-status"; 2417 /** 2418 * <b>Fluent Client</b> search parameter constant for <b>verification-status</b> 2419 * <p> 2420 * Description: <b>provisional | differential | confirmed | refuted | entered-in-error | unknown</b><br> 2421 * Type: <b>token</b><br> 2422 * Path: <b>Condition.verificationStatus</b><br> 2423 * </p> 2424 */ 2425 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERIFICATION_STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VERIFICATION_STATUS); 2426 2427 /** 2428 * Search parameter: <b>clinical-status</b> 2429 * <p> 2430 * Description: <b>The clinical status of the condition</b><br> 2431 * Type: <b>token</b><br> 2432 * Path: <b>Condition.clinicalStatus</b><br> 2433 * </p> 2434 */ 2435 @SearchParamDefinition(name="clinical-status", path="Condition.clinicalStatus", description="The clinical status of the condition", type="token" ) 2436 public static final String SP_CLINICAL_STATUS = "clinical-status"; 2437 /** 2438 * <b>Fluent Client</b> search parameter constant for <b>clinical-status</b> 2439 * <p> 2440 * Description: <b>The clinical status of the condition</b><br> 2441 * Type: <b>token</b><br> 2442 * Path: <b>Condition.clinicalStatus</b><br> 2443 * </p> 2444 */ 2445 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CLINICAL_STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CLINICAL_STATUS); 2446 2447 /** 2448 * Search parameter: <b>encounter</b> 2449 * <p> 2450 * Description: <b>Encounter when condition first asserted</b><br> 2451 * Type: <b>reference</b><br> 2452 * Path: <b>Condition.context</b><br> 2453 * </p> 2454 */ 2455 @SearchParamDefinition(name="encounter", path="Condition.context", description="Encounter when condition first asserted", type="reference", target={Encounter.class } ) 2456 public static final String SP_ENCOUNTER = "encounter"; 2457 /** 2458 * <b>Fluent Client</b> search parameter constant for <b>encounter</b> 2459 * <p> 2460 * Description: <b>Encounter when condition first asserted</b><br> 2461 * Type: <b>reference</b><br> 2462 * Path: <b>Condition.context</b><br> 2463 * </p> 2464 */ 2465 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ENCOUNTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ENCOUNTER); 2466 2467/** 2468 * Constant for fluent queries to be used to add include statements. Specifies 2469 * the path value of "<b>Condition:encounter</b>". 2470 */ 2471 public static final ca.uhn.fhir.model.api.Include INCLUDE_ENCOUNTER = new ca.uhn.fhir.model.api.Include("Condition:encounter").toLocked(); 2472 2473 /** 2474 * Search parameter: <b>abatement-boolean</b> 2475 * <p> 2476 * Description: <b>Abatement boolean (boolean is true or non-boolean values are present)</b><br> 2477 * Type: <b>token</b><br> 2478 * Path: <b>Condition.abatement[x]</b><br> 2479 * </p> 2480 */ 2481 @SearchParamDefinition(name="abatement-boolean", path="Condition.abatement.as(boolean) | Condition.abatement.is(dateTime) | Condition.abatement.is(Age) | Condition.abatement.is(Period) | Condition.abatement.is(Range) | Condition.abatement.is(string)", description="Abatement boolean (boolean is true or non-boolean values are present)", type="token" ) 2482 public static final String SP_ABATEMENT_BOOLEAN = "abatement-boolean"; 2483 /** 2484 * <b>Fluent Client</b> search parameter constant for <b>abatement-boolean</b> 2485 * <p> 2486 * Description: <b>Abatement boolean (boolean is true or non-boolean values are present)</b><br> 2487 * Type: <b>token</b><br> 2488 * Path: <b>Condition.abatement[x]</b><br> 2489 * </p> 2490 */ 2491 public static final ca.uhn.fhir.rest.gclient.TokenClientParam ABATEMENT_BOOLEAN = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_ABATEMENT_BOOLEAN); 2492 2493 /** 2494 * Search parameter: <b>onset-date</b> 2495 * <p> 2496 * Description: <b>Date related onsets (dateTime and Period)</b><br> 2497 * Type: <b>date</b><br> 2498 * Path: <b>Condition.onset[x]</b><br> 2499 * </p> 2500 */ 2501 @SearchParamDefinition(name="onset-date", path="Condition.onset.as(dateTime) | Condition.onset.as(Period)", description="Date related onsets (dateTime and Period)", type="date" ) 2502 public static final String SP_ONSET_DATE = "onset-date"; 2503 /** 2504 * <b>Fluent Client</b> search parameter constant for <b>onset-date</b> 2505 * <p> 2506 * Description: <b>Date related onsets (dateTime and Period)</b><br> 2507 * Type: <b>date</b><br> 2508 * Path: <b>Condition.onset[x]</b><br> 2509 * </p> 2510 */ 2511 public static final ca.uhn.fhir.rest.gclient.DateClientParam ONSET_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_ONSET_DATE); 2512 2513 /** 2514 * Search parameter: <b>abatement-date</b> 2515 * <p> 2516 * Description: <b>Date-related abatements (dateTime and period)</b><br> 2517 * Type: <b>date</b><br> 2518 * Path: <b>Condition.abatement[x]</b><br> 2519 * </p> 2520 */ 2521 @SearchParamDefinition(name="abatement-date", path="Condition.abatement.as(dateTime) | Condition.abatement.as(Period)", description="Date-related abatements (dateTime and period)", type="date" ) 2522 public static final String SP_ABATEMENT_DATE = "abatement-date"; 2523 /** 2524 * <b>Fluent Client</b> search parameter constant for <b>abatement-date</b> 2525 * <p> 2526 * Description: <b>Date-related abatements (dateTime and period)</b><br> 2527 * Type: <b>date</b><br> 2528 * Path: <b>Condition.abatement[x]</b><br> 2529 * </p> 2530 */ 2531 public static final ca.uhn.fhir.rest.gclient.DateClientParam ABATEMENT_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_ABATEMENT_DATE); 2532 2533 /** 2534 * Search parameter: <b>asserter</b> 2535 * <p> 2536 * Description: <b>Person who asserts this condition</b><br> 2537 * Type: <b>reference</b><br> 2538 * Path: <b>Condition.asserter</b><br> 2539 * </p> 2540 */ 2541 @SearchParamDefinition(name="asserter", path="Condition.asserter", description="Person who asserts this condition", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Practitioner"), @ca.uhn.fhir.model.api.annotation.Compartment(name="RelatedPerson") }, target={Patient.class, Practitioner.class, RelatedPerson.class } ) 2542 public static final String SP_ASSERTER = "asserter"; 2543 /** 2544 * <b>Fluent Client</b> search parameter constant for <b>asserter</b> 2545 * <p> 2546 * Description: <b>Person who asserts this condition</b><br> 2547 * Type: <b>reference</b><br> 2548 * Path: <b>Condition.asserter</b><br> 2549 * </p> 2550 */ 2551 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ASSERTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ASSERTER); 2552 2553/** 2554 * Constant for fluent queries to be used to add include statements. Specifies 2555 * the path value of "<b>Condition:asserter</b>". 2556 */ 2557 public static final ca.uhn.fhir.model.api.Include INCLUDE_ASSERTER = new ca.uhn.fhir.model.api.Include("Condition:asserter").toLocked(); 2558 2559 /** 2560 * Search parameter: <b>stage</b> 2561 * <p> 2562 * Description: <b>Simple summary (disease specific)</b><br> 2563 * Type: <b>token</b><br> 2564 * Path: <b>Condition.stage.summary</b><br> 2565 * </p> 2566 */ 2567 @SearchParamDefinition(name="stage", path="Condition.stage.summary", description="Simple summary (disease specific)", type="token" ) 2568 public static final String SP_STAGE = "stage"; 2569 /** 2570 * <b>Fluent Client</b> search parameter constant for <b>stage</b> 2571 * <p> 2572 * Description: <b>Simple summary (disease specific)</b><br> 2573 * Type: <b>token</b><br> 2574 * Path: <b>Condition.stage.summary</b><br> 2575 * </p> 2576 */ 2577 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STAGE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STAGE); 2578 2579 /** 2580 * Search parameter: <b>abatement-string</b> 2581 * <p> 2582 * Description: <b>Abatement as a string</b><br> 2583 * Type: <b>string</b><br> 2584 * Path: <b>Condition.abatement[x]</b><br> 2585 * </p> 2586 */ 2587 @SearchParamDefinition(name="abatement-string", path="Condition.abatement.as(string)", description="Abatement as a string", type="string" ) 2588 public static final String SP_ABATEMENT_STRING = "abatement-string"; 2589 /** 2590 * <b>Fluent Client</b> search parameter constant for <b>abatement-string</b> 2591 * <p> 2592 * Description: <b>Abatement as a string</b><br> 2593 * Type: <b>string</b><br> 2594 * Path: <b>Condition.abatement[x]</b><br> 2595 * </p> 2596 */ 2597 public static final ca.uhn.fhir.rest.gclient.StringClientParam ABATEMENT_STRING = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ABATEMENT_STRING); 2598 2599 /** 2600 * Search parameter: <b>patient</b> 2601 * <p> 2602 * Description: <b>Who has the condition?</b><br> 2603 * Type: <b>reference</b><br> 2604 * Path: <b>Condition.subject</b><br> 2605 * </p> 2606 */ 2607 @SearchParamDefinition(name="patient", path="Condition.subject", description="Who has the condition?", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Patient") }, target={Patient.class } ) 2608 public static final String SP_PATIENT = "patient"; 2609 /** 2610 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 2611 * <p> 2612 * Description: <b>Who has the condition?</b><br> 2613 * Type: <b>reference</b><br> 2614 * Path: <b>Condition.subject</b><br> 2615 * </p> 2616 */ 2617 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 2618 2619/** 2620 * Constant for fluent queries to be used to add include statements. Specifies 2621 * the path value of "<b>Condition:patient</b>". 2622 */ 2623 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("Condition:patient").toLocked(); 2624 2625 /** 2626 * Search parameter: <b>context</b> 2627 * <p> 2628 * Description: <b>Encounter or episode when condition first asserted</b><br> 2629 * Type: <b>reference</b><br> 2630 * Path: <b>Condition.context</b><br> 2631 * </p> 2632 */ 2633 @SearchParamDefinition(name="context", path="Condition.context", description="Encounter or episode when condition first asserted", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Encounter") }, target={Encounter.class, EpisodeOfCare.class } ) 2634 public static final String SP_CONTEXT = "context"; 2635 /** 2636 * <b>Fluent Client</b> search parameter constant for <b>context</b> 2637 * <p> 2638 * Description: <b>Encounter or episode when condition first asserted</b><br> 2639 * Type: <b>reference</b><br> 2640 * Path: <b>Condition.context</b><br> 2641 * </p> 2642 */ 2643 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_CONTEXT); 2644 2645/** 2646 * Constant for fluent queries to be used to add include statements. Specifies 2647 * the path value of "<b>Condition:context</b>". 2648 */ 2649 public static final ca.uhn.fhir.model.api.Include INCLUDE_CONTEXT = new ca.uhn.fhir.model.api.Include("Condition:context").toLocked(); 2650 2651 /** 2652 * Search parameter: <b>onset-age</b> 2653 * <p> 2654 * Description: <b>Onsets as age or age range</b><br> 2655 * Type: <b>quantity</b><br> 2656 * Path: <b>Condition.onset[x]</b><br> 2657 * </p> 2658 */ 2659 @SearchParamDefinition(name="onset-age", path="Condition.onset.as(Age) | Condition.onset.as(Range)", description="Onsets as age or age range", type="quantity" ) 2660 public static final String SP_ONSET_AGE = "onset-age"; 2661 /** 2662 * <b>Fluent Client</b> search parameter constant for <b>onset-age</b> 2663 * <p> 2664 * Description: <b>Onsets as age or age range</b><br> 2665 * Type: <b>quantity</b><br> 2666 * Path: <b>Condition.onset[x]</b><br> 2667 * </p> 2668 */ 2669 public static final ca.uhn.fhir.rest.gclient.QuantityClientParam ONSET_AGE = new ca.uhn.fhir.rest.gclient.QuantityClientParam(SP_ONSET_AGE); 2670 2671 /** 2672 * Search parameter: <b>abatement-age</b> 2673 * <p> 2674 * Description: <b>Abatement as age or age range</b><br> 2675 * Type: <b>quantity</b><br> 2676 * Path: <b>Condition.abatement[x]</b><br> 2677 * </p> 2678 */ 2679 @SearchParamDefinition(name="abatement-age", path="Condition.abatement.as(Age) | Condition.abatement.as(Range) | Condition.abatement.as(Age)", description="Abatement as age or age range", type="quantity" ) 2680 public static final String SP_ABATEMENT_AGE = "abatement-age"; 2681 /** 2682 * <b>Fluent Client</b> search parameter constant for <b>abatement-age</b> 2683 * <p> 2684 * Description: <b>Abatement as age or age range</b><br> 2685 * Type: <b>quantity</b><br> 2686 * Path: <b>Condition.abatement[x]</b><br> 2687 * </p> 2688 */ 2689 public static final ca.uhn.fhir.rest.gclient.QuantityClientParam ABATEMENT_AGE = new ca.uhn.fhir.rest.gclient.QuantityClientParam(SP_ABATEMENT_AGE); 2690 2691 /** 2692 * Search parameter: <b>asserted-date</b> 2693 * <p> 2694 * Description: <b>Date record was believed accurate</b><br> 2695 * Type: <b>date</b><br> 2696 * Path: <b>Condition.assertedDate</b><br> 2697 * </p> 2698 */ 2699 @SearchParamDefinition(name="asserted-date", path="Condition.assertedDate", description="Date record was believed accurate", type="date" ) 2700 public static final String SP_ASSERTED_DATE = "asserted-date"; 2701 /** 2702 * <b>Fluent Client</b> search parameter constant for <b>asserted-date</b> 2703 * <p> 2704 * Description: <b>Date record was believed accurate</b><br> 2705 * Type: <b>date</b><br> 2706 * Path: <b>Condition.assertedDate</b><br> 2707 * </p> 2708 */ 2709 public static final ca.uhn.fhir.rest.gclient.DateClientParam ASSERTED_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_ASSERTED_DATE); 2710 2711 /** 2712 * Search parameter: <b>category</b> 2713 * <p> 2714 * Description: <b>The category of the condition</b><br> 2715 * Type: <b>token</b><br> 2716 * Path: <b>Condition.category</b><br> 2717 * </p> 2718 */ 2719 @SearchParamDefinition(name="category", path="Condition.category", description="The category of the condition", type="token" ) 2720 public static final String SP_CATEGORY = "category"; 2721 /** 2722 * <b>Fluent Client</b> search parameter constant for <b>category</b> 2723 * <p> 2724 * Description: <b>The category of the condition</b><br> 2725 * Type: <b>token</b><br> 2726 * Path: <b>Condition.category</b><br> 2727 * </p> 2728 */ 2729 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CATEGORY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CATEGORY); 2730 2731 /** 2732 * Search parameter: <b>body-site</b> 2733 * <p> 2734 * Description: <b>Anatomical location, if relevant</b><br> 2735 * Type: <b>token</b><br> 2736 * Path: <b>Condition.bodySite</b><br> 2737 * </p> 2738 */ 2739 @SearchParamDefinition(name="body-site", path="Condition.bodySite", description="Anatomical location, if relevant", type="token" ) 2740 public static final String SP_BODY_SITE = "body-site"; 2741 /** 2742 * <b>Fluent Client</b> search parameter constant for <b>body-site</b> 2743 * <p> 2744 * Description: <b>Anatomical location, if relevant</b><br> 2745 * Type: <b>token</b><br> 2746 * Path: <b>Condition.bodySite</b><br> 2747 * </p> 2748 */ 2749 public static final ca.uhn.fhir.rest.gclient.TokenClientParam BODY_SITE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_BODY_SITE); 2750 2751 2752}