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