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 Thu, Mar 23, 2023 19:59+1100 for FHIR v5.0.0 033 034import java.util.ArrayList; 035import java.util.Date; 036import java.util.List; 037import org.hl7.fhir.utilities.Utilities; 038import org.hl7.fhir.r5.model.Enumerations.*; 039import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 040import org.hl7.fhir.exceptions.FHIRException; 041import org.hl7.fhir.instance.model.api.ICompositeType; 042import ca.uhn.fhir.model.api.annotation.ResourceDef; 043import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 044import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 045import ca.uhn.fhir.model.api.annotation.Child; 046import ca.uhn.fhir.model.api.annotation.ChildOrder; 047import ca.uhn.fhir.model.api.annotation.Description; 048import ca.uhn.fhir.model.api.annotation.Block; 049 050/** 051 * A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the questionnaire being responded to. 052 */ 053@ResourceDef(name="QuestionnaireResponse", profile="http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse") 054public class QuestionnaireResponse extends DomainResource { 055 056 public enum QuestionnaireResponseStatus { 057 /** 058 * This QuestionnaireResponse has been partially filled out with answers but changes or additions are still expected to be made to it. 059 */ 060 INPROGRESS, 061 /** 062 * This QuestionnaireResponse has been filled out with answers and the current content is regarded as definitive. 063 */ 064 COMPLETED, 065 /** 066 * This QuestionnaireResponse has been filled out with answers, then marked as complete, yet changes or additions have been made to it afterwards. 067 */ 068 AMENDED, 069 /** 070 * This QuestionnaireResponse was entered in error and voided. 071 */ 072 ENTEREDINERROR, 073 /** 074 * This QuestionnaireResponse has been partially filled out with answers but has been abandoned. No subsequent changes can be made. 075 */ 076 STOPPED, 077 /** 078 * added to help the parsers with the generic types 079 */ 080 NULL; 081 public static QuestionnaireResponseStatus fromCode(String codeString) throws FHIRException { 082 if (codeString == null || "".equals(codeString)) 083 return null; 084 if ("in-progress".equals(codeString)) 085 return INPROGRESS; 086 if ("completed".equals(codeString)) 087 return COMPLETED; 088 if ("amended".equals(codeString)) 089 return AMENDED; 090 if ("entered-in-error".equals(codeString)) 091 return ENTEREDINERROR; 092 if ("stopped".equals(codeString)) 093 return STOPPED; 094 if (Configuration.isAcceptInvalidEnums()) 095 return null; 096 else 097 throw new FHIRException("Unknown QuestionnaireResponseStatus code '"+codeString+"'"); 098 } 099 public String toCode() { 100 switch (this) { 101 case INPROGRESS: return "in-progress"; 102 case COMPLETED: return "completed"; 103 case AMENDED: return "amended"; 104 case ENTEREDINERROR: return "entered-in-error"; 105 case STOPPED: return "stopped"; 106 case NULL: return null; 107 default: return "?"; 108 } 109 } 110 public String getSystem() { 111 switch (this) { 112 case INPROGRESS: return "http://hl7.org/fhir/questionnaire-answers-status"; 113 case COMPLETED: return "http://hl7.org/fhir/questionnaire-answers-status"; 114 case AMENDED: return "http://hl7.org/fhir/questionnaire-answers-status"; 115 case ENTEREDINERROR: return "http://hl7.org/fhir/questionnaire-answers-status"; 116 case STOPPED: return "http://hl7.org/fhir/questionnaire-answers-status"; 117 case NULL: return null; 118 default: return "?"; 119 } 120 } 121 public String getDefinition() { 122 switch (this) { 123 case INPROGRESS: return "This QuestionnaireResponse has been partially filled out with answers but changes or additions are still expected to be made to it."; 124 case COMPLETED: return "This QuestionnaireResponse has been filled out with answers and the current content is regarded as definitive."; 125 case AMENDED: return "This QuestionnaireResponse has been filled out with answers, then marked as complete, yet changes or additions have been made to it afterwards."; 126 case ENTEREDINERROR: return "This QuestionnaireResponse was entered in error and voided."; 127 case STOPPED: return "This QuestionnaireResponse has been partially filled out with answers but has been abandoned. No subsequent changes can be made."; 128 case NULL: return null; 129 default: return "?"; 130 } 131 } 132 public String getDisplay() { 133 switch (this) { 134 case INPROGRESS: return "In Progress"; 135 case COMPLETED: return "Completed"; 136 case AMENDED: return "Amended"; 137 case ENTEREDINERROR: return "Entered in Error"; 138 case STOPPED: return "Stopped"; 139 case NULL: return null; 140 default: return "?"; 141 } 142 } 143 } 144 145 public static class QuestionnaireResponseStatusEnumFactory implements EnumFactory<QuestionnaireResponseStatus> { 146 public QuestionnaireResponseStatus fromCode(String codeString) throws IllegalArgumentException { 147 if (codeString == null || "".equals(codeString)) 148 if (codeString == null || "".equals(codeString)) 149 return null; 150 if ("in-progress".equals(codeString)) 151 return QuestionnaireResponseStatus.INPROGRESS; 152 if ("completed".equals(codeString)) 153 return QuestionnaireResponseStatus.COMPLETED; 154 if ("amended".equals(codeString)) 155 return QuestionnaireResponseStatus.AMENDED; 156 if ("entered-in-error".equals(codeString)) 157 return QuestionnaireResponseStatus.ENTEREDINERROR; 158 if ("stopped".equals(codeString)) 159 return QuestionnaireResponseStatus.STOPPED; 160 throw new IllegalArgumentException("Unknown QuestionnaireResponseStatus code '"+codeString+"'"); 161 } 162 public Enumeration<QuestionnaireResponseStatus> fromType(PrimitiveType<?> code) throws FHIRException { 163 if (code == null) 164 return null; 165 if (code.isEmpty()) 166 return new Enumeration<QuestionnaireResponseStatus>(this, QuestionnaireResponseStatus.NULL, code); 167 String codeString = ((PrimitiveType) code).asStringValue(); 168 if (codeString == null || "".equals(codeString)) 169 return new Enumeration<QuestionnaireResponseStatus>(this, QuestionnaireResponseStatus.NULL, code); 170 if ("in-progress".equals(codeString)) 171 return new Enumeration<QuestionnaireResponseStatus>(this, QuestionnaireResponseStatus.INPROGRESS, code); 172 if ("completed".equals(codeString)) 173 return new Enumeration<QuestionnaireResponseStatus>(this, QuestionnaireResponseStatus.COMPLETED, code); 174 if ("amended".equals(codeString)) 175 return new Enumeration<QuestionnaireResponseStatus>(this, QuestionnaireResponseStatus.AMENDED, code); 176 if ("entered-in-error".equals(codeString)) 177 return new Enumeration<QuestionnaireResponseStatus>(this, QuestionnaireResponseStatus.ENTEREDINERROR, code); 178 if ("stopped".equals(codeString)) 179 return new Enumeration<QuestionnaireResponseStatus>(this, QuestionnaireResponseStatus.STOPPED, code); 180 throw new FHIRException("Unknown QuestionnaireResponseStatus code '"+codeString+"'"); 181 } 182 public String toCode(QuestionnaireResponseStatus code) { 183 if (code == QuestionnaireResponseStatus.NULL) 184 return null; 185 if (code == QuestionnaireResponseStatus.INPROGRESS) 186 return "in-progress"; 187 if (code == QuestionnaireResponseStatus.COMPLETED) 188 return "completed"; 189 if (code == QuestionnaireResponseStatus.AMENDED) 190 return "amended"; 191 if (code == QuestionnaireResponseStatus.ENTEREDINERROR) 192 return "entered-in-error"; 193 if (code == QuestionnaireResponseStatus.STOPPED) 194 return "stopped"; 195 return "?"; 196 } 197 public String toSystem(QuestionnaireResponseStatus code) { 198 return code.getSystem(); 199 } 200 } 201 202 @Block() 203 public static class QuestionnaireResponseItemComponent extends BackboneElement implements IBaseBackboneElement { 204 /** 205 * The item from the Questionnaire that corresponds to this item in the QuestionnaireResponse resource. 206 */ 207 @Child(name = "linkId", type = {StringType.class}, order=1, min=1, max=1, modifier=false, summary=false) 208 @Description(shortDefinition="Pointer to specific item from Questionnaire", formalDefinition="The item from the Questionnaire that corresponds to this item in the QuestionnaireResponse resource." ) 209 protected StringType linkId; 210 211 /** 212 * A reference to an [ElementDefinition](elementdefinition.html) that provides the details for the item. 213 */ 214 @Child(name = "definition", type = {UriType.class}, order=2, min=0, max=1, modifier=false, summary=false) 215 @Description(shortDefinition="ElementDefinition - details for the item", formalDefinition="A reference to an [ElementDefinition](elementdefinition.html) that provides the details for the item." ) 216 protected UriType definition; 217 218 /** 219 * Text that is displayed above the contents of the group or as the text of the question being answered. 220 */ 221 @Child(name = "text", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) 222 @Description(shortDefinition="Name for group or question text", formalDefinition="Text that is displayed above the contents of the group or as the text of the question being answered." ) 223 protected StringType text; 224 225 /** 226 * The respondent's answer(s) to the question. 227 */ 228 @Child(name = "answer", type = {}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 229 @Description(shortDefinition="The response(s) to the question", formalDefinition="The respondent's answer(s) to the question." ) 230 protected List<QuestionnaireResponseItemAnswerComponent> answer; 231 232 /** 233 * Sub-questions, sub-groups or display items nested beneath a group. 234 */ 235 @Child(name = "item", type = {QuestionnaireResponseItemComponent.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 236 @Description(shortDefinition="Child items of group item", formalDefinition="Sub-questions, sub-groups or display items nested beneath a group." ) 237 protected List<QuestionnaireResponseItemComponent> item; 238 239 private static final long serialVersionUID = -1395483402L; 240 241 /** 242 * Constructor 243 */ 244 public QuestionnaireResponseItemComponent() { 245 super(); 246 } 247 248 /** 249 * Constructor 250 */ 251 public QuestionnaireResponseItemComponent(String linkId) { 252 super(); 253 this.setLinkId(linkId); 254 } 255 256 /** 257 * @return {@link #linkId} (The item from the Questionnaire that corresponds to this item in the QuestionnaireResponse resource.). This is the underlying object with id, value and extensions. The accessor "getLinkId" gives direct access to the value 258 */ 259 public StringType getLinkIdElement() { 260 if (this.linkId == null) 261 if (Configuration.errorOnAutoCreate()) 262 throw new Error("Attempt to auto-create QuestionnaireResponseItemComponent.linkId"); 263 else if (Configuration.doAutoCreate()) 264 this.linkId = new StringType(); // bb 265 return this.linkId; 266 } 267 268 public boolean hasLinkIdElement() { 269 return this.linkId != null && !this.linkId.isEmpty(); 270 } 271 272 public boolean hasLinkId() { 273 return this.linkId != null && !this.linkId.isEmpty(); 274 } 275 276 /** 277 * @param value {@link #linkId} (The item from the Questionnaire that corresponds to this item in the QuestionnaireResponse resource.). This is the underlying object with id, value and extensions. The accessor "getLinkId" gives direct access to the value 278 */ 279 public QuestionnaireResponseItemComponent setLinkIdElement(StringType value) { 280 this.linkId = value; 281 return this; 282 } 283 284 /** 285 * @return The item from the Questionnaire that corresponds to this item in the QuestionnaireResponse resource. 286 */ 287 public String getLinkId() { 288 return this.linkId == null ? null : this.linkId.getValue(); 289 } 290 291 /** 292 * @param value The item from the Questionnaire that corresponds to this item in the QuestionnaireResponse resource. 293 */ 294 public QuestionnaireResponseItemComponent setLinkId(String value) { 295 if (this.linkId == null) 296 this.linkId = new StringType(); 297 this.linkId.setValue(value); 298 return this; 299 } 300 301 /** 302 * @return {@link #definition} (A reference to an [ElementDefinition](elementdefinition.html) that provides the details for the item.). This is the underlying object with id, value and extensions. The accessor "getDefinition" gives direct access to the value 303 */ 304 public UriType getDefinitionElement() { 305 if (this.definition == null) 306 if (Configuration.errorOnAutoCreate()) 307 throw new Error("Attempt to auto-create QuestionnaireResponseItemComponent.definition"); 308 else if (Configuration.doAutoCreate()) 309 this.definition = new UriType(); // bb 310 return this.definition; 311 } 312 313 public boolean hasDefinitionElement() { 314 return this.definition != null && !this.definition.isEmpty(); 315 } 316 317 public boolean hasDefinition() { 318 return this.definition != null && !this.definition.isEmpty(); 319 } 320 321 /** 322 * @param value {@link #definition} (A reference to an [ElementDefinition](elementdefinition.html) that provides the details for the item.). This is the underlying object with id, value and extensions. The accessor "getDefinition" gives direct access to the value 323 */ 324 public QuestionnaireResponseItemComponent setDefinitionElement(UriType value) { 325 this.definition = value; 326 return this; 327 } 328 329 /** 330 * @return A reference to an [ElementDefinition](elementdefinition.html) that provides the details for the item. 331 */ 332 public String getDefinition() { 333 return this.definition == null ? null : this.definition.getValue(); 334 } 335 336 /** 337 * @param value A reference to an [ElementDefinition](elementdefinition.html) that provides the details for the item. 338 */ 339 public QuestionnaireResponseItemComponent setDefinition(String value) { 340 if (Utilities.noString(value)) 341 this.definition = null; 342 else { 343 if (this.definition == null) 344 this.definition = new UriType(); 345 this.definition.setValue(value); 346 } 347 return this; 348 } 349 350 /** 351 * @return {@link #text} (Text that is displayed above the contents of the group or as the text of the question being answered.). This is the underlying object with id, value and extensions. The accessor "getText" gives direct access to the value 352 */ 353 public StringType getTextElement() { 354 if (this.text == null) 355 if (Configuration.errorOnAutoCreate()) 356 throw new Error("Attempt to auto-create QuestionnaireResponseItemComponent.text"); 357 else if (Configuration.doAutoCreate()) 358 this.text = new StringType(); // bb 359 return this.text; 360 } 361 362 public boolean hasTextElement() { 363 return this.text != null && !this.text.isEmpty(); 364 } 365 366 public boolean hasText() { 367 return this.text != null && !this.text.isEmpty(); 368 } 369 370 /** 371 * @param value {@link #text} (Text that is displayed above the contents of the group or as the text of the question being answered.). This is the underlying object with id, value and extensions. The accessor "getText" gives direct access to the value 372 */ 373 public QuestionnaireResponseItemComponent setTextElement(StringType value) { 374 this.text = value; 375 return this; 376 } 377 378 /** 379 * @return Text that is displayed above the contents of the group or as the text of the question being answered. 380 */ 381 public String getText() { 382 return this.text == null ? null : this.text.getValue(); 383 } 384 385 /** 386 * @param value Text that is displayed above the contents of the group or as the text of the question being answered. 387 */ 388 public QuestionnaireResponseItemComponent setText(String value) { 389 if (Utilities.noString(value)) 390 this.text = null; 391 else { 392 if (this.text == null) 393 this.text = new StringType(); 394 this.text.setValue(value); 395 } 396 return this; 397 } 398 399 /** 400 * @return {@link #answer} (The respondent's answer(s) to the question.) 401 */ 402 public List<QuestionnaireResponseItemAnswerComponent> getAnswer() { 403 if (this.answer == null) 404 this.answer = new ArrayList<QuestionnaireResponseItemAnswerComponent>(); 405 return this.answer; 406 } 407 408 /** 409 * @return Returns a reference to <code>this</code> for easy method chaining 410 */ 411 public QuestionnaireResponseItemComponent setAnswer(List<QuestionnaireResponseItemAnswerComponent> theAnswer) { 412 this.answer = theAnswer; 413 return this; 414 } 415 416 public boolean hasAnswer() { 417 if (this.answer == null) 418 return false; 419 for (QuestionnaireResponseItemAnswerComponent item : this.answer) 420 if (!item.isEmpty()) 421 return true; 422 return false; 423 } 424 425 public QuestionnaireResponseItemAnswerComponent addAnswer() { //3 426 QuestionnaireResponseItemAnswerComponent t = new QuestionnaireResponseItemAnswerComponent(); 427 if (this.answer == null) 428 this.answer = new ArrayList<QuestionnaireResponseItemAnswerComponent>(); 429 this.answer.add(t); 430 return t; 431 } 432 433 public QuestionnaireResponseItemComponent addAnswer(QuestionnaireResponseItemAnswerComponent t) { //3 434 if (t == null) 435 return this; 436 if (this.answer == null) 437 this.answer = new ArrayList<QuestionnaireResponseItemAnswerComponent>(); 438 this.answer.add(t); 439 return this; 440 } 441 442 /** 443 * @return The first repetition of repeating field {@link #answer}, creating it if it does not already exist {3} 444 */ 445 public QuestionnaireResponseItemAnswerComponent getAnswerFirstRep() { 446 if (getAnswer().isEmpty()) { 447 addAnswer(); 448 } 449 return getAnswer().get(0); 450 } 451 452 /** 453 * @return {@link #item} (Sub-questions, sub-groups or display items nested beneath a group.) 454 */ 455 public List<QuestionnaireResponseItemComponent> getItem() { 456 if (this.item == null) 457 this.item = new ArrayList<QuestionnaireResponseItemComponent>(); 458 return this.item; 459 } 460 461 /** 462 * @return Returns a reference to <code>this</code> for easy method chaining 463 */ 464 public QuestionnaireResponseItemComponent setItem(List<QuestionnaireResponseItemComponent> theItem) { 465 this.item = theItem; 466 return this; 467 } 468 469 public boolean hasItem() { 470 if (this.item == null) 471 return false; 472 for (QuestionnaireResponseItemComponent item : this.item) 473 if (!item.isEmpty()) 474 return true; 475 return false; 476 } 477 478 public QuestionnaireResponseItemComponent addItem() { //3 479 QuestionnaireResponseItemComponent t = new QuestionnaireResponseItemComponent(); 480 if (this.item == null) 481 this.item = new ArrayList<QuestionnaireResponseItemComponent>(); 482 this.item.add(t); 483 return t; 484 } 485 486 public QuestionnaireResponseItemComponent addItem(QuestionnaireResponseItemComponent t) { //3 487 if (t == null) 488 return this; 489 if (this.item == null) 490 this.item = new ArrayList<QuestionnaireResponseItemComponent>(); 491 this.item.add(t); 492 return this; 493 } 494 495 /** 496 * @return The first repetition of repeating field {@link #item}, creating it if it does not already exist {3} 497 */ 498 public QuestionnaireResponseItemComponent getItemFirstRep() { 499 if (getItem().isEmpty()) { 500 addItem(); 501 } 502 return getItem().get(0); 503 } 504 505 protected void listChildren(List<Property> children) { 506 super.listChildren(children); 507 children.add(new Property("linkId", "string", "The item from the Questionnaire that corresponds to this item in the QuestionnaireResponse resource.", 0, 1, linkId)); 508 children.add(new Property("definition", "uri", "A reference to an [ElementDefinition](elementdefinition.html) that provides the details for the item.", 0, 1, definition)); 509 children.add(new Property("text", "string", "Text that is displayed above the contents of the group or as the text of the question being answered.", 0, 1, text)); 510 children.add(new Property("answer", "", "The respondent's answer(s) to the question.", 0, java.lang.Integer.MAX_VALUE, answer)); 511 children.add(new Property("item", "@QuestionnaireResponse.item", "Sub-questions, sub-groups or display items nested beneath a group.", 0, java.lang.Integer.MAX_VALUE, item)); 512 } 513 514 @Override 515 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 516 switch (_hash) { 517 case -1102667083: /*linkId*/ return new Property("linkId", "string", "The item from the Questionnaire that corresponds to this item in the QuestionnaireResponse resource.", 0, 1, linkId); 518 case -1014418093: /*definition*/ return new Property("definition", "uri", "A reference to an [ElementDefinition](elementdefinition.html) that provides the details for the item.", 0, 1, definition); 519 case 3556653: /*text*/ return new Property("text", "string", "Text that is displayed above the contents of the group or as the text of the question being answered.", 0, 1, text); 520 case -1412808770: /*answer*/ return new Property("answer", "", "The respondent's answer(s) to the question.", 0, java.lang.Integer.MAX_VALUE, answer); 521 case 3242771: /*item*/ return new Property("item", "@QuestionnaireResponse.item", "Sub-questions, sub-groups or display items nested beneath a group.", 0, java.lang.Integer.MAX_VALUE, item); 522 default: return super.getNamedProperty(_hash, _name, _checkValid); 523 } 524 525 } 526 527 @Override 528 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 529 switch (hash) { 530 case -1102667083: /*linkId*/ return this.linkId == null ? new Base[0] : new Base[] {this.linkId}; // StringType 531 case -1014418093: /*definition*/ return this.definition == null ? new Base[0] : new Base[] {this.definition}; // UriType 532 case 3556653: /*text*/ return this.text == null ? new Base[0] : new Base[] {this.text}; // StringType 533 case -1412808770: /*answer*/ return this.answer == null ? new Base[0] : this.answer.toArray(new Base[this.answer.size()]); // QuestionnaireResponseItemAnswerComponent 534 case 3242771: /*item*/ return this.item == null ? new Base[0] : this.item.toArray(new Base[this.item.size()]); // QuestionnaireResponseItemComponent 535 default: return super.getProperty(hash, name, checkValid); 536 } 537 538 } 539 540 @Override 541 public Base setProperty(int hash, String name, Base value) throws FHIRException { 542 switch (hash) { 543 case -1102667083: // linkId 544 this.linkId = TypeConvertor.castToString(value); // StringType 545 return value; 546 case -1014418093: // definition 547 this.definition = TypeConvertor.castToUri(value); // UriType 548 return value; 549 case 3556653: // text 550 this.text = TypeConvertor.castToString(value); // StringType 551 return value; 552 case -1412808770: // answer 553 this.getAnswer().add((QuestionnaireResponseItemAnswerComponent) value); // QuestionnaireResponseItemAnswerComponent 554 return value; 555 case 3242771: // item 556 this.getItem().add((QuestionnaireResponseItemComponent) value); // QuestionnaireResponseItemComponent 557 return value; 558 default: return super.setProperty(hash, name, value); 559 } 560 561 } 562 563 @Override 564 public Base setProperty(String name, Base value) throws FHIRException { 565 if (name.equals("linkId")) { 566 this.linkId = TypeConvertor.castToString(value); // StringType 567 } else if (name.equals("definition")) { 568 this.definition = TypeConvertor.castToUri(value); // UriType 569 } else if (name.equals("text")) { 570 this.text = TypeConvertor.castToString(value); // StringType 571 } else if (name.equals("answer")) { 572 this.getAnswer().add((QuestionnaireResponseItemAnswerComponent) value); 573 } else if (name.equals("item")) { 574 this.getItem().add((QuestionnaireResponseItemComponent) value); 575 } else 576 return super.setProperty(name, value); 577 return value; 578 } 579 580 @Override 581 public void removeChild(String name, Base value) throws FHIRException { 582 if (name.equals("linkId")) { 583 this.linkId = null; 584 } else if (name.equals("definition")) { 585 this.definition = null; 586 } else if (name.equals("text")) { 587 this.text = null; 588 } else if (name.equals("answer")) { 589 this.getAnswer().remove((QuestionnaireResponseItemAnswerComponent) value); 590 } else if (name.equals("item")) { 591 this.getItem().remove((QuestionnaireResponseItemComponent) value); 592 } else 593 super.removeChild(name, value); 594 595 } 596 597 @Override 598 public Base makeProperty(int hash, String name) throws FHIRException { 599 switch (hash) { 600 case -1102667083: return getLinkIdElement(); 601 case -1014418093: return getDefinitionElement(); 602 case 3556653: return getTextElement(); 603 case -1412808770: return addAnswer(); 604 case 3242771: return addItem(); 605 default: return super.makeProperty(hash, name); 606 } 607 608 } 609 610 @Override 611 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 612 switch (hash) { 613 case -1102667083: /*linkId*/ return new String[] {"string"}; 614 case -1014418093: /*definition*/ return new String[] {"uri"}; 615 case 3556653: /*text*/ return new String[] {"string"}; 616 case -1412808770: /*answer*/ return new String[] {}; 617 case 3242771: /*item*/ return new String[] {"@QuestionnaireResponse.item"}; 618 default: return super.getTypesForProperty(hash, name); 619 } 620 621 } 622 623 @Override 624 public Base addChild(String name) throws FHIRException { 625 if (name.equals("linkId")) { 626 throw new FHIRException("Cannot call addChild on a singleton property QuestionnaireResponse.item.linkId"); 627 } 628 else if (name.equals("definition")) { 629 throw new FHIRException("Cannot call addChild on a singleton property QuestionnaireResponse.item.definition"); 630 } 631 else if (name.equals("text")) { 632 throw new FHIRException("Cannot call addChild on a singleton property QuestionnaireResponse.item.text"); 633 } 634 else if (name.equals("answer")) { 635 return addAnswer(); 636 } 637 else if (name.equals("item")) { 638 return addItem(); 639 } 640 else 641 return super.addChild(name); 642 } 643 644 public QuestionnaireResponseItemComponent copy() { 645 QuestionnaireResponseItemComponent dst = new QuestionnaireResponseItemComponent(); 646 copyValues(dst); 647 return dst; 648 } 649 650 public void copyValues(QuestionnaireResponseItemComponent dst) { 651 super.copyValues(dst); 652 dst.linkId = linkId == null ? null : linkId.copy(); 653 dst.definition = definition == null ? null : definition.copy(); 654 dst.text = text == null ? null : text.copy(); 655 if (answer != null) { 656 dst.answer = new ArrayList<QuestionnaireResponseItemAnswerComponent>(); 657 for (QuestionnaireResponseItemAnswerComponent i : answer) 658 dst.answer.add(i.copy()); 659 }; 660 if (item != null) { 661 dst.item = new ArrayList<QuestionnaireResponseItemComponent>(); 662 for (QuestionnaireResponseItemComponent i : item) 663 dst.item.add(i.copy()); 664 }; 665 } 666 667 @Override 668 public boolean equalsDeep(Base other_) { 669 if (!super.equalsDeep(other_)) 670 return false; 671 if (!(other_ instanceof QuestionnaireResponseItemComponent)) 672 return false; 673 QuestionnaireResponseItemComponent o = (QuestionnaireResponseItemComponent) other_; 674 return compareDeep(linkId, o.linkId, true) && compareDeep(definition, o.definition, true) && compareDeep(text, o.text, true) 675 && compareDeep(answer, o.answer, true) && compareDeep(item, o.item, true); 676 } 677 678 @Override 679 public boolean equalsShallow(Base other_) { 680 if (!super.equalsShallow(other_)) 681 return false; 682 if (!(other_ instanceof QuestionnaireResponseItemComponent)) 683 return false; 684 QuestionnaireResponseItemComponent o = (QuestionnaireResponseItemComponent) other_; 685 return compareValues(linkId, o.linkId, true) && compareValues(definition, o.definition, true) && compareValues(text, o.text, true) 686 ; 687 } 688 689 public boolean isEmpty() { 690 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(linkId, definition, text 691 , answer, item); 692 } 693 694 public String fhirType() { 695 return "QuestionnaireResponse.item"; 696 697 } 698 699 } 700 701 @Block() 702 public static class QuestionnaireResponseItemAnswerComponent extends BackboneElement implements IBaseBackboneElement { 703 /** 704 * The answer (or one of the answers) provided by the respondent to the question. 705 */ 706 @Child(name = "value", type = {BooleanType.class, DecimalType.class, IntegerType.class, DateType.class, DateTimeType.class, TimeType.class, StringType.class, UriType.class, Attachment.class, Coding.class, Quantity.class, Reference.class}, order=1, min=1, max=1, modifier=false, summary=false) 707 @Description(shortDefinition="Single-valued answer to the question", formalDefinition="The answer (or one of the answers) provided by the respondent to the question." ) 708 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/questionnaire-answers") 709 protected DataType value; 710 711 /** 712 * Nested groups and/or questions found within this particular answer. 713 */ 714 @Child(name = "item", type = {QuestionnaireResponseItemComponent.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 715 @Description(shortDefinition="Child items of question", formalDefinition="Nested groups and/or questions found within this particular answer." ) 716 protected List<QuestionnaireResponseItemComponent> item; 717 718 private static final long serialVersionUID = 1790747618L; 719 720 /** 721 * Constructor 722 */ 723 public QuestionnaireResponseItemAnswerComponent() { 724 super(); 725 } 726 727 /** 728 * Constructor 729 */ 730 public QuestionnaireResponseItemAnswerComponent(DataType value) { 731 super(); 732 this.setValue(value); 733 } 734 735 /** 736 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 737 */ 738 public DataType getValue() { 739 return this.value; 740 } 741 742 /** 743 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 744 */ 745 public BooleanType getValueBooleanType() throws FHIRException { 746 if (this.value == null) 747 this.value = new BooleanType(); 748 if (!(this.value instanceof BooleanType)) 749 throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.value.getClass().getName()+" was encountered"); 750 return (BooleanType) this.value; 751 } 752 753 public boolean hasValueBooleanType() { 754 return this != null && this.value instanceof BooleanType; 755 } 756 757 /** 758 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 759 */ 760 public DecimalType getValueDecimalType() throws FHIRException { 761 if (this.value == null) 762 this.value = new DecimalType(); 763 if (!(this.value instanceof DecimalType)) 764 throw new FHIRException("Type mismatch: the type DecimalType was expected, but "+this.value.getClass().getName()+" was encountered"); 765 return (DecimalType) this.value; 766 } 767 768 public boolean hasValueDecimalType() { 769 return this != null && this.value instanceof DecimalType; 770 } 771 772 /** 773 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 774 */ 775 public IntegerType getValueIntegerType() throws FHIRException { 776 if (this.value == null) 777 this.value = new IntegerType(); 778 if (!(this.value instanceof IntegerType)) 779 throw new FHIRException("Type mismatch: the type IntegerType was expected, but "+this.value.getClass().getName()+" was encountered"); 780 return (IntegerType) this.value; 781 } 782 783 public boolean hasValueIntegerType() { 784 return this != null && this.value instanceof IntegerType; 785 } 786 787 /** 788 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 789 */ 790 public DateType getValueDateType() throws FHIRException { 791 if (this.value == null) 792 this.value = new DateType(); 793 if (!(this.value instanceof DateType)) 794 throw new FHIRException("Type mismatch: the type DateType was expected, but "+this.value.getClass().getName()+" was encountered"); 795 return (DateType) this.value; 796 } 797 798 public boolean hasValueDateType() { 799 return this != null && this.value instanceof DateType; 800 } 801 802 /** 803 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 804 */ 805 public DateTimeType getValueDateTimeType() throws FHIRException { 806 if (this.value == null) 807 this.value = new DateTimeType(); 808 if (!(this.value instanceof DateTimeType)) 809 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.value.getClass().getName()+" was encountered"); 810 return (DateTimeType) this.value; 811 } 812 813 public boolean hasValueDateTimeType() { 814 return this != null && this.value instanceof DateTimeType; 815 } 816 817 /** 818 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 819 */ 820 public TimeType getValueTimeType() throws FHIRException { 821 if (this.value == null) 822 this.value = new TimeType(); 823 if (!(this.value instanceof TimeType)) 824 throw new FHIRException("Type mismatch: the type TimeType was expected, but "+this.value.getClass().getName()+" was encountered"); 825 return (TimeType) this.value; 826 } 827 828 public boolean hasValueTimeType() { 829 return this != null && this.value instanceof TimeType; 830 } 831 832 /** 833 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 834 */ 835 public StringType getValueStringType() throws FHIRException { 836 if (this.value == null) 837 this.value = new StringType(); 838 if (!(this.value instanceof StringType)) 839 throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.value.getClass().getName()+" was encountered"); 840 return (StringType) this.value; 841 } 842 843 public boolean hasValueStringType() { 844 return this != null && this.value instanceof StringType; 845 } 846 847 /** 848 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 849 */ 850 public UriType getValueUriType() throws FHIRException { 851 if (this.value == null) 852 this.value = new UriType(); 853 if (!(this.value instanceof UriType)) 854 throw new FHIRException("Type mismatch: the type UriType was expected, but "+this.value.getClass().getName()+" was encountered"); 855 return (UriType) this.value; 856 } 857 858 public boolean hasValueUriType() { 859 return this != null && this.value instanceof UriType; 860 } 861 862 /** 863 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 864 */ 865 public Attachment getValueAttachment() throws FHIRException { 866 if (this.value == null) 867 this.value = new Attachment(); 868 if (!(this.value instanceof Attachment)) 869 throw new FHIRException("Type mismatch: the type Attachment was expected, but "+this.value.getClass().getName()+" was encountered"); 870 return (Attachment) this.value; 871 } 872 873 public boolean hasValueAttachment() { 874 return this != null && this.value instanceof Attachment; 875 } 876 877 /** 878 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 879 */ 880 public Coding getValueCoding() throws FHIRException { 881 if (this.value == null) 882 this.value = new Coding(); 883 if (!(this.value instanceof Coding)) 884 throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.value.getClass().getName()+" was encountered"); 885 return (Coding) this.value; 886 } 887 888 public boolean hasValueCoding() { 889 return this != null && this.value instanceof Coding; 890 } 891 892 /** 893 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 894 */ 895 public Quantity getValueQuantity() throws FHIRException { 896 if (this.value == null) 897 this.value = new Quantity(); 898 if (!(this.value instanceof Quantity)) 899 throw new FHIRException("Type mismatch: the type Quantity was expected, but "+this.value.getClass().getName()+" was encountered"); 900 return (Quantity) this.value; 901 } 902 903 public boolean hasValueQuantity() { 904 return this != null && this.value instanceof Quantity; 905 } 906 907 /** 908 * @return {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 909 */ 910 public Reference getValueReference() throws FHIRException { 911 if (this.value == null) 912 this.value = new Reference(); 913 if (!(this.value instanceof Reference)) 914 throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.value.getClass().getName()+" was encountered"); 915 return (Reference) this.value; 916 } 917 918 public boolean hasValueReference() { 919 return this != null && this.value instanceof Reference; 920 } 921 922 public boolean hasValue() { 923 return this.value != null && !this.value.isEmpty(); 924 } 925 926 /** 927 * @param value {@link #value} (The answer (or one of the answers) provided by the respondent to the question.) 928 */ 929 public QuestionnaireResponseItemAnswerComponent setValue(DataType value) { 930 if (value != null && !(value instanceof BooleanType || value instanceof DecimalType || value instanceof IntegerType || value instanceof DateType || value instanceof DateTimeType || value instanceof TimeType || value instanceof StringType || value instanceof UriType || value instanceof Attachment || value instanceof Coding || value instanceof Quantity || value instanceof Reference)) 931 throw new FHIRException("Not the right type for QuestionnaireResponse.item.answer.value[x]: "+value.fhirType()); 932 this.value = value; 933 return this; 934 } 935 936 /** 937 * @return {@link #item} (Nested groups and/or questions found within this particular answer.) 938 */ 939 public List<QuestionnaireResponseItemComponent> getItem() { 940 if (this.item == null) 941 this.item = new ArrayList<QuestionnaireResponseItemComponent>(); 942 return this.item; 943 } 944 945 /** 946 * @return Returns a reference to <code>this</code> for easy method chaining 947 */ 948 public QuestionnaireResponseItemAnswerComponent setItem(List<QuestionnaireResponseItemComponent> theItem) { 949 this.item = theItem; 950 return this; 951 } 952 953 public boolean hasItem() { 954 if (this.item == null) 955 return false; 956 for (QuestionnaireResponseItemComponent item : this.item) 957 if (!item.isEmpty()) 958 return true; 959 return false; 960 } 961 962 public QuestionnaireResponseItemComponent addItem() { //3 963 QuestionnaireResponseItemComponent t = new QuestionnaireResponseItemComponent(); 964 if (this.item == null) 965 this.item = new ArrayList<QuestionnaireResponseItemComponent>(); 966 this.item.add(t); 967 return t; 968 } 969 970 public QuestionnaireResponseItemAnswerComponent addItem(QuestionnaireResponseItemComponent t) { //3 971 if (t == null) 972 return this; 973 if (this.item == null) 974 this.item = new ArrayList<QuestionnaireResponseItemComponent>(); 975 this.item.add(t); 976 return this; 977 } 978 979 /** 980 * @return The first repetition of repeating field {@link #item}, creating it if it does not already exist {3} 981 */ 982 public QuestionnaireResponseItemComponent getItemFirstRep() { 983 if (getItem().isEmpty()) { 984 addItem(); 985 } 986 return getItem().get(0); 987 } 988 989 protected void listChildren(List<Property> children) { 990 super.listChildren(children); 991 children.add(new Property("value[x]", "boolean|decimal|integer|date|dateTime|time|string|uri|Attachment|Coding|Quantity|Reference(Any)", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value)); 992 children.add(new Property("item", "@QuestionnaireResponse.item", "Nested groups and/or questions found within this particular answer.", 0, java.lang.Integer.MAX_VALUE, item)); 993 } 994 995 @Override 996 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 997 switch (_hash) { 998 case -1410166417: /*value[x]*/ return new Property("value[x]", "boolean|decimal|integer|date|dateTime|time|string|uri|Attachment|Coding|Quantity|Reference(Any)", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 999 case 111972721: /*value*/ return new Property("value[x]", "boolean|decimal|integer|date|dateTime|time|string|uri|Attachment|Coding|Quantity|Reference(Any)", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1000 case 733421943: /*valueBoolean*/ return new Property("value[x]", "boolean", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1001 case -2083993440: /*valueDecimal*/ return new Property("value[x]", "decimal", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1002 case -1668204915: /*valueInteger*/ return new Property("value[x]", "integer", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1003 case -766192449: /*valueDate*/ return new Property("value[x]", "date", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1004 case 1047929900: /*valueDateTime*/ return new Property("value[x]", "dateTime", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1005 case -765708322: /*valueTime*/ return new Property("value[x]", "time", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1006 case -1424603934: /*valueString*/ return new Property("value[x]", "string", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1007 case -1410172357: /*valueUri*/ return new Property("value[x]", "uri", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1008 case -475566732: /*valueAttachment*/ return new Property("value[x]", "Attachment", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1009 case -1887705029: /*valueCoding*/ return new Property("value[x]", "Coding", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1010 case -2029823716: /*valueQuantity*/ return new Property("value[x]", "Quantity", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1011 case 1755241690: /*valueReference*/ return new Property("value[x]", "Reference(Any)", "The answer (or one of the answers) provided by the respondent to the question.", 0, 1, value); 1012 case 3242771: /*item*/ return new Property("item", "@QuestionnaireResponse.item", "Nested groups and/or questions found within this particular answer.", 0, java.lang.Integer.MAX_VALUE, item); 1013 default: return super.getNamedProperty(_hash, _name, _checkValid); 1014 } 1015 1016 } 1017 1018 @Override 1019 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1020 switch (hash) { 1021 case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType 1022 case 3242771: /*item*/ return this.item == null ? new Base[0] : this.item.toArray(new Base[this.item.size()]); // QuestionnaireResponseItemComponent 1023 default: return super.getProperty(hash, name, checkValid); 1024 } 1025 1026 } 1027 1028 @Override 1029 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1030 switch (hash) { 1031 case 111972721: // value 1032 this.value = TypeConvertor.castToType(value); // DataType 1033 return value; 1034 case 3242771: // item 1035 this.getItem().add((QuestionnaireResponseItemComponent) value); // QuestionnaireResponseItemComponent 1036 return value; 1037 default: return super.setProperty(hash, name, value); 1038 } 1039 1040 } 1041 1042 @Override 1043 public Base setProperty(String name, Base value) throws FHIRException { 1044 if (name.equals("value[x]")) { 1045 this.value = TypeConvertor.castToType(value); // DataType 1046 } else if (name.equals("item")) { 1047 this.getItem().add((QuestionnaireResponseItemComponent) value); 1048 } else 1049 return super.setProperty(name, value); 1050 return value; 1051 } 1052 1053 @Override 1054 public void removeChild(String name, Base value) throws FHIRException { 1055 if (name.equals("value[x]")) { 1056 this.value = null; 1057 } else if (name.equals("item")) { 1058 this.getItem().remove((QuestionnaireResponseItemComponent) value); 1059 } else 1060 super.removeChild(name, value); 1061 1062 } 1063 1064 @Override 1065 public Base makeProperty(int hash, String name) throws FHIRException { 1066 switch (hash) { 1067 case -1410166417: return getValue(); 1068 case 111972721: return getValue(); 1069 case 3242771: return addItem(); 1070 default: return super.makeProperty(hash, name); 1071 } 1072 1073 } 1074 1075 @Override 1076 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1077 switch (hash) { 1078 case 111972721: /*value*/ return new String[] {"boolean", "decimal", "integer", "date", "dateTime", "time", "string", "uri", "Attachment", "Coding", "Quantity", "Reference"}; 1079 case 3242771: /*item*/ return new String[] {"@QuestionnaireResponse.item"}; 1080 default: return super.getTypesForProperty(hash, name); 1081 } 1082 1083 } 1084 1085 @Override 1086 public Base addChild(String name) throws FHIRException { 1087 if (name.equals("valueBoolean")) { 1088 this.value = new BooleanType(); 1089 return this.value; 1090 } 1091 else if (name.equals("valueDecimal")) { 1092 this.value = new DecimalType(); 1093 return this.value; 1094 } 1095 else if (name.equals("valueInteger")) { 1096 this.value = new IntegerType(); 1097 return this.value; 1098 } 1099 else if (name.equals("valueDate")) { 1100 this.value = new DateType(); 1101 return this.value; 1102 } 1103 else if (name.equals("valueDateTime")) { 1104 this.value = new DateTimeType(); 1105 return this.value; 1106 } 1107 else if (name.equals("valueTime")) { 1108 this.value = new TimeType(); 1109 return this.value; 1110 } 1111 else if (name.equals("valueString")) { 1112 this.value = new StringType(); 1113 return this.value; 1114 } 1115 else if (name.equals("valueUri")) { 1116 this.value = new UriType(); 1117 return this.value; 1118 } 1119 else if (name.equals("valueAttachment")) { 1120 this.value = new Attachment(); 1121 return this.value; 1122 } 1123 else if (name.equals("valueCoding")) { 1124 this.value = new Coding(); 1125 return this.value; 1126 } 1127 else if (name.equals("valueQuantity")) { 1128 this.value = new Quantity(); 1129 return this.value; 1130 } 1131 else if (name.equals("valueReference")) { 1132 this.value = new Reference(); 1133 return this.value; 1134 } 1135 else if (name.equals("item")) { 1136 return addItem(); 1137 } 1138 else 1139 return super.addChild(name); 1140 } 1141 1142 public QuestionnaireResponseItemAnswerComponent copy() { 1143 QuestionnaireResponseItemAnswerComponent dst = new QuestionnaireResponseItemAnswerComponent(); 1144 copyValues(dst); 1145 return dst; 1146 } 1147 1148 public void copyValues(QuestionnaireResponseItemAnswerComponent dst) { 1149 super.copyValues(dst); 1150 dst.value = value == null ? null : value.copy(); 1151 if (item != null) { 1152 dst.item = new ArrayList<QuestionnaireResponseItemComponent>(); 1153 for (QuestionnaireResponseItemComponent i : item) 1154 dst.item.add(i.copy()); 1155 }; 1156 } 1157 1158 @Override 1159 public boolean equalsDeep(Base other_) { 1160 if (!super.equalsDeep(other_)) 1161 return false; 1162 if (!(other_ instanceof QuestionnaireResponseItemAnswerComponent)) 1163 return false; 1164 QuestionnaireResponseItemAnswerComponent o = (QuestionnaireResponseItemAnswerComponent) other_; 1165 return compareDeep(value, o.value, true) && compareDeep(item, o.item, true); 1166 } 1167 1168 @Override 1169 public boolean equalsShallow(Base other_) { 1170 if (!super.equalsShallow(other_)) 1171 return false; 1172 if (!(other_ instanceof QuestionnaireResponseItemAnswerComponent)) 1173 return false; 1174 QuestionnaireResponseItemAnswerComponent o = (QuestionnaireResponseItemAnswerComponent) other_; 1175 return true; 1176 } 1177 1178 public boolean isEmpty() { 1179 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(value, item); 1180 } 1181 1182 public String fhirType() { 1183 return "QuestionnaireResponse.item.answer"; 1184 1185 } 1186 1187 } 1188 1189 /** 1190 * Business identifiers assigned to this questionnaire response by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server. 1191 */ 1192 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1193 @Description(shortDefinition="Business identifier for this set of answers", formalDefinition="Business identifiers assigned to this questionnaire response by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server." ) 1194 protected List<Identifier> identifier; 1195 1196 /** 1197 * A plan, proposal or order that is fulfilled in whole or in part by this questionnaire response. For example, a ServiceRequest seeking an intake assessment or a decision support recommendation to assess for post-partum depression. 1198 */ 1199 @Child(name = "basedOn", type = {CarePlan.class, ServiceRequest.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1200 @Description(shortDefinition="Request fulfilled by this QuestionnaireResponse", formalDefinition="A plan, proposal or order that is fulfilled in whole or in part by this questionnaire response. For example, a ServiceRequest seeking an intake assessment or a decision support recommendation to assess for post-partum depression." ) 1201 protected List<Reference> basedOn; 1202 1203 /** 1204 * A procedure or observation that this questionnaire was performed as part of the execution of. For example, the surgery a checklist was executed as part of. 1205 */ 1206 @Child(name = "partOf", type = {Observation.class, Procedure.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1207 @Description(shortDefinition="Part of referenced event", formalDefinition="A procedure or observation that this questionnaire was performed as part of the execution of. For example, the surgery a checklist was executed as part of." ) 1208 protected List<Reference> partOf; 1209 1210 /** 1211 * The Questionnaire that defines and organizes the questions for which answers are being provided. 1212 */ 1213 @Child(name = "questionnaire", type = {CanonicalType.class}, order=3, min=1, max=1, modifier=false, summary=true) 1214 @Description(shortDefinition="Canonical URL of Questionnaire being answered", formalDefinition="The Questionnaire that defines and organizes the questions for which answers are being provided." ) 1215 protected CanonicalType questionnaire; 1216 1217 /** 1218 * The current state of the questionnaire response. 1219 */ 1220 @Child(name = "status", type = {CodeType.class}, order=4, min=1, max=1, modifier=true, summary=true) 1221 @Description(shortDefinition="in-progress | completed | amended | entered-in-error | stopped", formalDefinition="The current state of the questionnaire response." ) 1222 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/questionnaire-answers-status") 1223 protected Enumeration<QuestionnaireResponseStatus> status; 1224 1225 /** 1226 * The subject of the questionnaire response. This could be a patient, organization, practitioner, device, etc. This is who/what the answers apply to, but is not necessarily the source of information. 1227 */ 1228 @Child(name = "subject", type = {Reference.class}, order=5, min=0, max=1, modifier=false, summary=true) 1229 @Description(shortDefinition="The subject of the questions", formalDefinition="The subject of the questionnaire response. This could be a patient, organization, practitioner, device, etc. This is who/what the answers apply to, but is not necessarily the source of information." ) 1230 protected Reference subject; 1231 1232 /** 1233 * The Encounter during which this questionnaire response was created or to which the creation of this record is tightly associated. 1234 */ 1235 @Child(name = "encounter", type = {Encounter.class}, order=6, min=0, max=1, modifier=false, summary=true) 1236 @Description(shortDefinition="Encounter the questionnaire response is part of", formalDefinition="The Encounter during which this questionnaire response was created or to which the creation of this record is tightly associated." ) 1237 protected Reference encounter; 1238 1239 /** 1240 * The date and/or time that this questionnaire response was last modified by the user - e.g. changing answers or revising status. 1241 */ 1242 @Child(name = "authored", type = {DateTimeType.class}, order=7, min=0, max=1, modifier=false, summary=true) 1243 @Description(shortDefinition="Date the answers were gathered", formalDefinition="The date and/or time that this questionnaire response was last modified by the user - e.g. changing answers or revising status." ) 1244 protected DateTimeType authored; 1245 1246 /** 1247 * The individual or device that received the answers to the questions in the QuestionnaireResponse and recorded them in the system. 1248 */ 1249 @Child(name = "author", type = {Device.class, Practitioner.class, PractitionerRole.class, Patient.class, RelatedPerson.class, Organization.class}, order=8, min=0, max=1, modifier=false, summary=true) 1250 @Description(shortDefinition="The individual or device that received and recorded the answers", formalDefinition="The individual or device that received the answers to the questions in the QuestionnaireResponse and recorded them in the system." ) 1251 protected Reference author; 1252 1253 /** 1254 * The individual or device that answered the questions about the subject. 1255 */ 1256 @Child(name = "source", type = {Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class}, order=9, min=0, max=1, modifier=false, summary=true) 1257 @Description(shortDefinition="The individual or device that answered the questions", formalDefinition="The individual or device that answered the questions about the subject." ) 1258 protected Reference source; 1259 1260 /** 1261 * A group or question item from the original questionnaire for which answers are provided. 1262 */ 1263 @Child(name = "item", type = {}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1264 @Description(shortDefinition="Groups and questions", formalDefinition="A group or question item from the original questionnaire for which answers are provided." ) 1265 protected List<QuestionnaireResponseItemComponent> item; 1266 1267 private static final long serialVersionUID = 1660467089L; 1268 1269 /** 1270 * Constructor 1271 */ 1272 public QuestionnaireResponse() { 1273 super(); 1274 } 1275 1276 /** 1277 * Constructor 1278 */ 1279 public QuestionnaireResponse(String questionnaire, QuestionnaireResponseStatus status) { 1280 super(); 1281 this.setQuestionnaire(questionnaire); 1282 this.setStatus(status); 1283 } 1284 1285 /** 1286 * @return {@link #identifier} (Business identifiers assigned to this questionnaire response by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.) 1287 */ 1288 public List<Identifier> getIdentifier() { 1289 if (this.identifier == null) 1290 this.identifier = new ArrayList<Identifier>(); 1291 return this.identifier; 1292 } 1293 1294 /** 1295 * @return Returns a reference to <code>this</code> for easy method chaining 1296 */ 1297 public QuestionnaireResponse setIdentifier(List<Identifier> theIdentifier) { 1298 this.identifier = theIdentifier; 1299 return this; 1300 } 1301 1302 public boolean hasIdentifier() { 1303 if (this.identifier == null) 1304 return false; 1305 for (Identifier item : this.identifier) 1306 if (!item.isEmpty()) 1307 return true; 1308 return false; 1309 } 1310 1311 public Identifier addIdentifier() { //3 1312 Identifier t = new Identifier(); 1313 if (this.identifier == null) 1314 this.identifier = new ArrayList<Identifier>(); 1315 this.identifier.add(t); 1316 return t; 1317 } 1318 1319 public QuestionnaireResponse addIdentifier(Identifier t) { //3 1320 if (t == null) 1321 return this; 1322 if (this.identifier == null) 1323 this.identifier = new ArrayList<Identifier>(); 1324 this.identifier.add(t); 1325 return this; 1326 } 1327 1328 /** 1329 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 1330 */ 1331 public Identifier getIdentifierFirstRep() { 1332 if (getIdentifier().isEmpty()) { 1333 addIdentifier(); 1334 } 1335 return getIdentifier().get(0); 1336 } 1337 1338 /** 1339 * @return {@link #basedOn} (A plan, proposal or order that is fulfilled in whole or in part by this questionnaire response. For example, a ServiceRequest seeking an intake assessment or a decision support recommendation to assess for post-partum depression.) 1340 */ 1341 public List<Reference> getBasedOn() { 1342 if (this.basedOn == null) 1343 this.basedOn = new ArrayList<Reference>(); 1344 return this.basedOn; 1345 } 1346 1347 /** 1348 * @return Returns a reference to <code>this</code> for easy method chaining 1349 */ 1350 public QuestionnaireResponse setBasedOn(List<Reference> theBasedOn) { 1351 this.basedOn = theBasedOn; 1352 return this; 1353 } 1354 1355 public boolean hasBasedOn() { 1356 if (this.basedOn == null) 1357 return false; 1358 for (Reference item : this.basedOn) 1359 if (!item.isEmpty()) 1360 return true; 1361 return false; 1362 } 1363 1364 public Reference addBasedOn() { //3 1365 Reference t = new Reference(); 1366 if (this.basedOn == null) 1367 this.basedOn = new ArrayList<Reference>(); 1368 this.basedOn.add(t); 1369 return t; 1370 } 1371 1372 public QuestionnaireResponse addBasedOn(Reference t) { //3 1373 if (t == null) 1374 return this; 1375 if (this.basedOn == null) 1376 this.basedOn = new ArrayList<Reference>(); 1377 this.basedOn.add(t); 1378 return this; 1379 } 1380 1381 /** 1382 * @return The first repetition of repeating field {@link #basedOn}, creating it if it does not already exist {3} 1383 */ 1384 public Reference getBasedOnFirstRep() { 1385 if (getBasedOn().isEmpty()) { 1386 addBasedOn(); 1387 } 1388 return getBasedOn().get(0); 1389 } 1390 1391 /** 1392 * @return {@link #partOf} (A procedure or observation that this questionnaire was performed as part of the execution of. For example, the surgery a checklist was executed as part of.) 1393 */ 1394 public List<Reference> getPartOf() { 1395 if (this.partOf == null) 1396 this.partOf = new ArrayList<Reference>(); 1397 return this.partOf; 1398 } 1399 1400 /** 1401 * @return Returns a reference to <code>this</code> for easy method chaining 1402 */ 1403 public QuestionnaireResponse setPartOf(List<Reference> thePartOf) { 1404 this.partOf = thePartOf; 1405 return this; 1406 } 1407 1408 public boolean hasPartOf() { 1409 if (this.partOf == null) 1410 return false; 1411 for (Reference item : this.partOf) 1412 if (!item.isEmpty()) 1413 return true; 1414 return false; 1415 } 1416 1417 public Reference addPartOf() { //3 1418 Reference t = new Reference(); 1419 if (this.partOf == null) 1420 this.partOf = new ArrayList<Reference>(); 1421 this.partOf.add(t); 1422 return t; 1423 } 1424 1425 public QuestionnaireResponse addPartOf(Reference t) { //3 1426 if (t == null) 1427 return this; 1428 if (this.partOf == null) 1429 this.partOf = new ArrayList<Reference>(); 1430 this.partOf.add(t); 1431 return this; 1432 } 1433 1434 /** 1435 * @return The first repetition of repeating field {@link #partOf}, creating it if it does not already exist {3} 1436 */ 1437 public Reference getPartOfFirstRep() { 1438 if (getPartOf().isEmpty()) { 1439 addPartOf(); 1440 } 1441 return getPartOf().get(0); 1442 } 1443 1444 /** 1445 * @return {@link #questionnaire} (The Questionnaire that defines and organizes the questions for which answers are being provided.). This is the underlying object with id, value and extensions. The accessor "getQuestionnaire" gives direct access to the value 1446 */ 1447 public CanonicalType getQuestionnaireElement() { 1448 if (this.questionnaire == null) 1449 if (Configuration.errorOnAutoCreate()) 1450 throw new Error("Attempt to auto-create QuestionnaireResponse.questionnaire"); 1451 else if (Configuration.doAutoCreate()) 1452 this.questionnaire = new CanonicalType(); // bb 1453 return this.questionnaire; 1454 } 1455 1456 public boolean hasQuestionnaireElement() { 1457 return this.questionnaire != null && !this.questionnaire.isEmpty(); 1458 } 1459 1460 public boolean hasQuestionnaire() { 1461 return this.questionnaire != null && !this.questionnaire.isEmpty(); 1462 } 1463 1464 /** 1465 * @param value {@link #questionnaire} (The Questionnaire that defines and organizes the questions for which answers are being provided.). This is the underlying object with id, value and extensions. The accessor "getQuestionnaire" gives direct access to the value 1466 */ 1467 public QuestionnaireResponse setQuestionnaireElement(CanonicalType value) { 1468 this.questionnaire = value; 1469 return this; 1470 } 1471 1472 /** 1473 * @return The Questionnaire that defines and organizes the questions for which answers are being provided. 1474 */ 1475 public String getQuestionnaire() { 1476 return this.questionnaire == null ? null : this.questionnaire.getValue(); 1477 } 1478 1479 /** 1480 * @param value The Questionnaire that defines and organizes the questions for which answers are being provided. 1481 */ 1482 public QuestionnaireResponse setQuestionnaire(String value) { 1483 if (this.questionnaire == null) 1484 this.questionnaire = new CanonicalType(); 1485 this.questionnaire.setValue(value); 1486 return this; 1487 } 1488 1489 /** 1490 * @return {@link #status} (The current state of the questionnaire response.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1491 */ 1492 public Enumeration<QuestionnaireResponseStatus> getStatusElement() { 1493 if (this.status == null) 1494 if (Configuration.errorOnAutoCreate()) 1495 throw new Error("Attempt to auto-create QuestionnaireResponse.status"); 1496 else if (Configuration.doAutoCreate()) 1497 this.status = new Enumeration<QuestionnaireResponseStatus>(new QuestionnaireResponseStatusEnumFactory()); // bb 1498 return this.status; 1499 } 1500 1501 public boolean hasStatusElement() { 1502 return this.status != null && !this.status.isEmpty(); 1503 } 1504 1505 public boolean hasStatus() { 1506 return this.status != null && !this.status.isEmpty(); 1507 } 1508 1509 /** 1510 * @param value {@link #status} (The current state of the questionnaire response.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1511 */ 1512 public QuestionnaireResponse setStatusElement(Enumeration<QuestionnaireResponseStatus> value) { 1513 this.status = value; 1514 return this; 1515 } 1516 1517 /** 1518 * @return The current state of the questionnaire response. 1519 */ 1520 public QuestionnaireResponseStatus getStatus() { 1521 return this.status == null ? null : this.status.getValue(); 1522 } 1523 1524 /** 1525 * @param value The current state of the questionnaire response. 1526 */ 1527 public QuestionnaireResponse setStatus(QuestionnaireResponseStatus value) { 1528 if (this.status == null) 1529 this.status = new Enumeration<QuestionnaireResponseStatus>(new QuestionnaireResponseStatusEnumFactory()); 1530 this.status.setValue(value); 1531 return this; 1532 } 1533 1534 /** 1535 * @return {@link #subject} (The subject of the questionnaire response. This could be a patient, organization, practitioner, device, etc. This is who/what the answers apply to, but is not necessarily the source of information.) 1536 */ 1537 public Reference getSubject() { 1538 if (this.subject == null) 1539 if (Configuration.errorOnAutoCreate()) 1540 throw new Error("Attempt to auto-create QuestionnaireResponse.subject"); 1541 else if (Configuration.doAutoCreate()) 1542 this.subject = new Reference(); // cc 1543 return this.subject; 1544 } 1545 1546 public boolean hasSubject() { 1547 return this.subject != null && !this.subject.isEmpty(); 1548 } 1549 1550 /** 1551 * @param value {@link #subject} (The subject of the questionnaire response. This could be a patient, organization, practitioner, device, etc. This is who/what the answers apply to, but is not necessarily the source of information.) 1552 */ 1553 public QuestionnaireResponse setSubject(Reference value) { 1554 this.subject = value; 1555 return this; 1556 } 1557 1558 /** 1559 * @return {@link #encounter} (The Encounter during which this questionnaire response was created or to which the creation of this record is tightly associated.) 1560 */ 1561 public Reference getEncounter() { 1562 if (this.encounter == null) 1563 if (Configuration.errorOnAutoCreate()) 1564 throw new Error("Attempt to auto-create QuestionnaireResponse.encounter"); 1565 else if (Configuration.doAutoCreate()) 1566 this.encounter = new Reference(); // cc 1567 return this.encounter; 1568 } 1569 1570 public boolean hasEncounter() { 1571 return this.encounter != null && !this.encounter.isEmpty(); 1572 } 1573 1574 /** 1575 * @param value {@link #encounter} (The Encounter during which this questionnaire response was created or to which the creation of this record is tightly associated.) 1576 */ 1577 public QuestionnaireResponse setEncounter(Reference value) { 1578 this.encounter = value; 1579 return this; 1580 } 1581 1582 /** 1583 * @return {@link #authored} (The date and/or time that this questionnaire response was last modified by the user - e.g. changing answers or revising status.). This is the underlying object with id, value and extensions. The accessor "getAuthored" gives direct access to the value 1584 */ 1585 public DateTimeType getAuthoredElement() { 1586 if (this.authored == null) 1587 if (Configuration.errorOnAutoCreate()) 1588 throw new Error("Attempt to auto-create QuestionnaireResponse.authored"); 1589 else if (Configuration.doAutoCreate()) 1590 this.authored = new DateTimeType(); // bb 1591 return this.authored; 1592 } 1593 1594 public boolean hasAuthoredElement() { 1595 return this.authored != null && !this.authored.isEmpty(); 1596 } 1597 1598 public boolean hasAuthored() { 1599 return this.authored != null && !this.authored.isEmpty(); 1600 } 1601 1602 /** 1603 * @param value {@link #authored} (The date and/or time that this questionnaire response was last modified by the user - e.g. changing answers or revising status.). This is the underlying object with id, value and extensions. The accessor "getAuthored" gives direct access to the value 1604 */ 1605 public QuestionnaireResponse setAuthoredElement(DateTimeType value) { 1606 this.authored = value; 1607 return this; 1608 } 1609 1610 /** 1611 * @return The date and/or time that this questionnaire response was last modified by the user - e.g. changing answers or revising status. 1612 */ 1613 public Date getAuthored() { 1614 return this.authored == null ? null : this.authored.getValue(); 1615 } 1616 1617 /** 1618 * @param value The date and/or time that this questionnaire response was last modified by the user - e.g. changing answers or revising status. 1619 */ 1620 public QuestionnaireResponse setAuthored(Date value) { 1621 if (value == null) 1622 this.authored = null; 1623 else { 1624 if (this.authored == null) 1625 this.authored = new DateTimeType(); 1626 this.authored.setValue(value); 1627 } 1628 return this; 1629 } 1630 1631 /** 1632 * @return {@link #author} (The individual or device that received the answers to the questions in the QuestionnaireResponse and recorded them in the system.) 1633 */ 1634 public Reference getAuthor() { 1635 if (this.author == null) 1636 if (Configuration.errorOnAutoCreate()) 1637 throw new Error("Attempt to auto-create QuestionnaireResponse.author"); 1638 else if (Configuration.doAutoCreate()) 1639 this.author = new Reference(); // cc 1640 return this.author; 1641 } 1642 1643 public boolean hasAuthor() { 1644 return this.author != null && !this.author.isEmpty(); 1645 } 1646 1647 /** 1648 * @param value {@link #author} (The individual or device that received the answers to the questions in the QuestionnaireResponse and recorded them in the system.) 1649 */ 1650 public QuestionnaireResponse setAuthor(Reference value) { 1651 this.author = value; 1652 return this; 1653 } 1654 1655 /** 1656 * @return {@link #source} (The individual or device that answered the questions about the subject.) 1657 */ 1658 public Reference getSource() { 1659 if (this.source == null) 1660 if (Configuration.errorOnAutoCreate()) 1661 throw new Error("Attempt to auto-create QuestionnaireResponse.source"); 1662 else if (Configuration.doAutoCreate()) 1663 this.source = new Reference(); // cc 1664 return this.source; 1665 } 1666 1667 public boolean hasSource() { 1668 return this.source != null && !this.source.isEmpty(); 1669 } 1670 1671 /** 1672 * @param value {@link #source} (The individual or device that answered the questions about the subject.) 1673 */ 1674 public QuestionnaireResponse setSource(Reference value) { 1675 this.source = value; 1676 return this; 1677 } 1678 1679 /** 1680 * @return {@link #item} (A group or question item from the original questionnaire for which answers are provided.) 1681 */ 1682 public List<QuestionnaireResponseItemComponent> getItem() { 1683 if (this.item == null) 1684 this.item = new ArrayList<QuestionnaireResponseItemComponent>(); 1685 return this.item; 1686 } 1687 1688 /** 1689 * @return Returns a reference to <code>this</code> for easy method chaining 1690 */ 1691 public QuestionnaireResponse setItem(List<QuestionnaireResponseItemComponent> theItem) { 1692 this.item = theItem; 1693 return this; 1694 } 1695 1696 public boolean hasItem() { 1697 if (this.item == null) 1698 return false; 1699 for (QuestionnaireResponseItemComponent item : this.item) 1700 if (!item.isEmpty()) 1701 return true; 1702 return false; 1703 } 1704 1705 public QuestionnaireResponseItemComponent addItem() { //3 1706 QuestionnaireResponseItemComponent t = new QuestionnaireResponseItemComponent(); 1707 if (this.item == null) 1708 this.item = new ArrayList<QuestionnaireResponseItemComponent>(); 1709 this.item.add(t); 1710 return t; 1711 } 1712 1713 public QuestionnaireResponse addItem(QuestionnaireResponseItemComponent t) { //3 1714 if (t == null) 1715 return this; 1716 if (this.item == null) 1717 this.item = new ArrayList<QuestionnaireResponseItemComponent>(); 1718 this.item.add(t); 1719 return this; 1720 } 1721 1722 /** 1723 * @return The first repetition of repeating field {@link #item}, creating it if it does not already exist {3} 1724 */ 1725 public QuestionnaireResponseItemComponent getItemFirstRep() { 1726 if (getItem().isEmpty()) { 1727 addItem(); 1728 } 1729 return getItem().get(0); 1730 } 1731 1732 protected void listChildren(List<Property> children) { 1733 super.listChildren(children); 1734 children.add(new Property("identifier", "Identifier", "Business identifiers assigned to this questionnaire response by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1735 children.add(new Property("basedOn", "Reference(CarePlan|ServiceRequest)", "A plan, proposal or order that is fulfilled in whole or in part by this questionnaire response. For example, a ServiceRequest seeking an intake assessment or a decision support recommendation to assess for post-partum depression.", 0, java.lang.Integer.MAX_VALUE, basedOn)); 1736 children.add(new Property("partOf", "Reference(Observation|Procedure)", "A procedure or observation that this questionnaire was performed as part of the execution of. For example, the surgery a checklist was executed as part of.", 0, java.lang.Integer.MAX_VALUE, partOf)); 1737 children.add(new Property("questionnaire", "canonical(Questionnaire)", "The Questionnaire that defines and organizes the questions for which answers are being provided.", 0, 1, questionnaire)); 1738 children.add(new Property("status", "code", "The current state of the questionnaire response.", 0, 1, status)); 1739 children.add(new Property("subject", "Reference(Any)", "The subject of the questionnaire response. This could be a patient, organization, practitioner, device, etc. This is who/what the answers apply to, but is not necessarily the source of information.", 0, 1, subject)); 1740 children.add(new Property("encounter", "Reference(Encounter)", "The Encounter during which this questionnaire response was created or to which the creation of this record is tightly associated.", 0, 1, encounter)); 1741 children.add(new Property("authored", "dateTime", "The date and/or time that this questionnaire response was last modified by the user - e.g. changing answers or revising status.", 0, 1, authored)); 1742 children.add(new Property("author", "Reference(Device|Practitioner|PractitionerRole|Patient|RelatedPerson|Organization)", "The individual or device that received the answers to the questions in the QuestionnaireResponse and recorded them in the system.", 0, 1, author)); 1743 children.add(new Property("source", "Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson)", "The individual or device that answered the questions about the subject.", 0, 1, source)); 1744 children.add(new Property("item", "", "A group or question item from the original questionnaire for which answers are provided.", 0, java.lang.Integer.MAX_VALUE, item)); 1745 } 1746 1747 @Override 1748 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1749 switch (_hash) { 1750 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifiers assigned to this questionnaire response by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier); 1751 case -332612366: /*basedOn*/ return new Property("basedOn", "Reference(CarePlan|ServiceRequest)", "A plan, proposal or order that is fulfilled in whole or in part by this questionnaire response. For example, a ServiceRequest seeking an intake assessment or a decision support recommendation to assess for post-partum depression.", 0, java.lang.Integer.MAX_VALUE, basedOn); 1752 case -995410646: /*partOf*/ return new Property("partOf", "Reference(Observation|Procedure)", "A procedure or observation that this questionnaire was performed as part of the execution of. For example, the surgery a checklist was executed as part of.", 0, java.lang.Integer.MAX_VALUE, partOf); 1753 case -1017049693: /*questionnaire*/ return new Property("questionnaire", "canonical(Questionnaire)", "The Questionnaire that defines and organizes the questions for which answers are being provided.", 0, 1, questionnaire); 1754 case -892481550: /*status*/ return new Property("status", "code", "The current state of the questionnaire response.", 0, 1, status); 1755 case -1867885268: /*subject*/ return new Property("subject", "Reference(Any)", "The subject of the questionnaire response. This could be a patient, organization, practitioner, device, etc. This is who/what the answers apply to, but is not necessarily the source of information.", 0, 1, subject); 1756 case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The Encounter during which this questionnaire response was created or to which the creation of this record is tightly associated.", 0, 1, encounter); 1757 case 1433073514: /*authored*/ return new Property("authored", "dateTime", "The date and/or time that this questionnaire response was last modified by the user - e.g. changing answers or revising status.", 0, 1, authored); 1758 case -1406328437: /*author*/ return new Property("author", "Reference(Device|Practitioner|PractitionerRole|Patient|RelatedPerson|Organization)", "The individual or device that received the answers to the questions in the QuestionnaireResponse and recorded them in the system.", 0, 1, author); 1759 case -896505829: /*source*/ return new Property("source", "Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson)", "The individual or device that answered the questions about the subject.", 0, 1, source); 1760 case 3242771: /*item*/ return new Property("item", "", "A group or question item from the original questionnaire for which answers are provided.", 0, java.lang.Integer.MAX_VALUE, item); 1761 default: return super.getNamedProperty(_hash, _name, _checkValid); 1762 } 1763 1764 } 1765 1766 @Override 1767 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1768 switch (hash) { 1769 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1770 case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : this.basedOn.toArray(new Base[this.basedOn.size()]); // Reference 1771 case -995410646: /*partOf*/ return this.partOf == null ? new Base[0] : this.partOf.toArray(new Base[this.partOf.size()]); // Reference 1772 case -1017049693: /*questionnaire*/ return this.questionnaire == null ? new Base[0] : new Base[] {this.questionnaire}; // CanonicalType 1773 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<QuestionnaireResponseStatus> 1774 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference 1775 case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference 1776 case 1433073514: /*authored*/ return this.authored == null ? new Base[0] : new Base[] {this.authored}; // DateTimeType 1777 case -1406328437: /*author*/ return this.author == null ? new Base[0] : new Base[] {this.author}; // Reference 1778 case -896505829: /*source*/ return this.source == null ? new Base[0] : new Base[] {this.source}; // Reference 1779 case 3242771: /*item*/ return this.item == null ? new Base[0] : this.item.toArray(new Base[this.item.size()]); // QuestionnaireResponseItemComponent 1780 default: return super.getProperty(hash, name, checkValid); 1781 } 1782 1783 } 1784 1785 @Override 1786 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1787 switch (hash) { 1788 case -1618432855: // identifier 1789 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 1790 return value; 1791 case -332612366: // basedOn 1792 this.getBasedOn().add(TypeConvertor.castToReference(value)); // Reference 1793 return value; 1794 case -995410646: // partOf 1795 this.getPartOf().add(TypeConvertor.castToReference(value)); // Reference 1796 return value; 1797 case -1017049693: // questionnaire 1798 this.questionnaire = TypeConvertor.castToCanonical(value); // CanonicalType 1799 return value; 1800 case -892481550: // status 1801 value = new QuestionnaireResponseStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 1802 this.status = (Enumeration) value; // Enumeration<QuestionnaireResponseStatus> 1803 return value; 1804 case -1867885268: // subject 1805 this.subject = TypeConvertor.castToReference(value); // Reference 1806 return value; 1807 case 1524132147: // encounter 1808 this.encounter = TypeConvertor.castToReference(value); // Reference 1809 return value; 1810 case 1433073514: // authored 1811 this.authored = TypeConvertor.castToDateTime(value); // DateTimeType 1812 return value; 1813 case -1406328437: // author 1814 this.author = TypeConvertor.castToReference(value); // Reference 1815 return value; 1816 case -896505829: // source 1817 this.source = TypeConvertor.castToReference(value); // Reference 1818 return value; 1819 case 3242771: // item 1820 this.getItem().add((QuestionnaireResponseItemComponent) value); // QuestionnaireResponseItemComponent 1821 return value; 1822 default: return super.setProperty(hash, name, value); 1823 } 1824 1825 } 1826 1827 @Override 1828 public Base setProperty(String name, Base value) throws FHIRException { 1829 if (name.equals("identifier")) { 1830 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 1831 } else if (name.equals("basedOn")) { 1832 this.getBasedOn().add(TypeConvertor.castToReference(value)); 1833 } else if (name.equals("partOf")) { 1834 this.getPartOf().add(TypeConvertor.castToReference(value)); 1835 } else if (name.equals("questionnaire")) { 1836 this.questionnaire = TypeConvertor.castToCanonical(value); // CanonicalType 1837 } else if (name.equals("status")) { 1838 value = new QuestionnaireResponseStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 1839 this.status = (Enumeration) value; // Enumeration<QuestionnaireResponseStatus> 1840 } else if (name.equals("subject")) { 1841 this.subject = TypeConvertor.castToReference(value); // Reference 1842 } else if (name.equals("encounter")) { 1843 this.encounter = TypeConvertor.castToReference(value); // Reference 1844 } else if (name.equals("authored")) { 1845 this.authored = TypeConvertor.castToDateTime(value); // DateTimeType 1846 } else if (name.equals("author")) { 1847 this.author = TypeConvertor.castToReference(value); // Reference 1848 } else if (name.equals("source")) { 1849 this.source = TypeConvertor.castToReference(value); // Reference 1850 } else if (name.equals("item")) { 1851 this.getItem().add((QuestionnaireResponseItemComponent) value); 1852 } else 1853 return super.setProperty(name, value); 1854 return value; 1855 } 1856 1857 @Override 1858 public void removeChild(String name, Base value) throws FHIRException { 1859 if (name.equals("identifier")) { 1860 this.getIdentifier().remove(value); 1861 } else if (name.equals("basedOn")) { 1862 this.getBasedOn().remove(value); 1863 } else if (name.equals("partOf")) { 1864 this.getPartOf().remove(value); 1865 } else if (name.equals("questionnaire")) { 1866 this.questionnaire = null; 1867 } else if (name.equals("status")) { 1868 value = new QuestionnaireResponseStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 1869 this.status = (Enumeration) value; // Enumeration<QuestionnaireResponseStatus> 1870 } else if (name.equals("subject")) { 1871 this.subject = null; 1872 } else if (name.equals("encounter")) { 1873 this.encounter = null; 1874 } else if (name.equals("authored")) { 1875 this.authored = null; 1876 } else if (name.equals("author")) { 1877 this.author = null; 1878 } else if (name.equals("source")) { 1879 this.source = null; 1880 } else if (name.equals("item")) { 1881 this.getItem().remove((QuestionnaireResponseItemComponent) value); 1882 } else 1883 super.removeChild(name, value); 1884 1885 } 1886 1887 @Override 1888 public Base makeProperty(int hash, String name) throws FHIRException { 1889 switch (hash) { 1890 case -1618432855: return addIdentifier(); 1891 case -332612366: return addBasedOn(); 1892 case -995410646: return addPartOf(); 1893 case -1017049693: return getQuestionnaireElement(); 1894 case -892481550: return getStatusElement(); 1895 case -1867885268: return getSubject(); 1896 case 1524132147: return getEncounter(); 1897 case 1433073514: return getAuthoredElement(); 1898 case -1406328437: return getAuthor(); 1899 case -896505829: return getSource(); 1900 case 3242771: return addItem(); 1901 default: return super.makeProperty(hash, name); 1902 } 1903 1904 } 1905 1906 @Override 1907 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1908 switch (hash) { 1909 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 1910 case -332612366: /*basedOn*/ return new String[] {"Reference"}; 1911 case -995410646: /*partOf*/ return new String[] {"Reference"}; 1912 case -1017049693: /*questionnaire*/ return new String[] {"canonical"}; 1913 case -892481550: /*status*/ return new String[] {"code"}; 1914 case -1867885268: /*subject*/ return new String[] {"Reference"}; 1915 case 1524132147: /*encounter*/ return new String[] {"Reference"}; 1916 case 1433073514: /*authored*/ return new String[] {"dateTime"}; 1917 case -1406328437: /*author*/ return new String[] {"Reference"}; 1918 case -896505829: /*source*/ return new String[] {"Reference"}; 1919 case 3242771: /*item*/ return new String[] {}; 1920 default: return super.getTypesForProperty(hash, name); 1921 } 1922 1923 } 1924 1925 @Override 1926 public Base addChild(String name) throws FHIRException { 1927 if (name.equals("identifier")) { 1928 return addIdentifier(); 1929 } 1930 else if (name.equals("basedOn")) { 1931 return addBasedOn(); 1932 } 1933 else if (name.equals("partOf")) { 1934 return addPartOf(); 1935 } 1936 else if (name.equals("questionnaire")) { 1937 throw new FHIRException("Cannot call addChild on a singleton property QuestionnaireResponse.questionnaire"); 1938 } 1939 else if (name.equals("status")) { 1940 throw new FHIRException("Cannot call addChild on a singleton property QuestionnaireResponse.status"); 1941 } 1942 else if (name.equals("subject")) { 1943 this.subject = new Reference(); 1944 return this.subject; 1945 } 1946 else if (name.equals("encounter")) { 1947 this.encounter = new Reference(); 1948 return this.encounter; 1949 } 1950 else if (name.equals("authored")) { 1951 throw new FHIRException("Cannot call addChild on a singleton property QuestionnaireResponse.authored"); 1952 } 1953 else if (name.equals("author")) { 1954 this.author = new Reference(); 1955 return this.author; 1956 } 1957 else if (name.equals("source")) { 1958 this.source = new Reference(); 1959 return this.source; 1960 } 1961 else if (name.equals("item")) { 1962 return addItem(); 1963 } 1964 else 1965 return super.addChild(name); 1966 } 1967 1968 public String fhirType() { 1969 return "QuestionnaireResponse"; 1970 1971 } 1972 1973 public QuestionnaireResponse copy() { 1974 QuestionnaireResponse dst = new QuestionnaireResponse(); 1975 copyValues(dst); 1976 return dst; 1977 } 1978 1979 public void copyValues(QuestionnaireResponse dst) { 1980 super.copyValues(dst); 1981 if (identifier != null) { 1982 dst.identifier = new ArrayList<Identifier>(); 1983 for (Identifier i : identifier) 1984 dst.identifier.add(i.copy()); 1985 }; 1986 if (basedOn != null) { 1987 dst.basedOn = new ArrayList<Reference>(); 1988 for (Reference i : basedOn) 1989 dst.basedOn.add(i.copy()); 1990 }; 1991 if (partOf != null) { 1992 dst.partOf = new ArrayList<Reference>(); 1993 for (Reference i : partOf) 1994 dst.partOf.add(i.copy()); 1995 }; 1996 dst.questionnaire = questionnaire == null ? null : questionnaire.copy(); 1997 dst.status = status == null ? null : status.copy(); 1998 dst.subject = subject == null ? null : subject.copy(); 1999 dst.encounter = encounter == null ? null : encounter.copy(); 2000 dst.authored = authored == null ? null : authored.copy(); 2001 dst.author = author == null ? null : author.copy(); 2002 dst.source = source == null ? null : source.copy(); 2003 if (item != null) { 2004 dst.item = new ArrayList<QuestionnaireResponseItemComponent>(); 2005 for (QuestionnaireResponseItemComponent i : item) 2006 dst.item.add(i.copy()); 2007 }; 2008 } 2009 2010 protected QuestionnaireResponse typedCopy() { 2011 return copy(); 2012 } 2013 2014 @Override 2015 public boolean equalsDeep(Base other_) { 2016 if (!super.equalsDeep(other_)) 2017 return false; 2018 if (!(other_ instanceof QuestionnaireResponse)) 2019 return false; 2020 QuestionnaireResponse o = (QuestionnaireResponse) other_; 2021 return compareDeep(identifier, o.identifier, true) && compareDeep(basedOn, o.basedOn, true) && compareDeep(partOf, o.partOf, true) 2022 && compareDeep(questionnaire, o.questionnaire, true) && compareDeep(status, o.status, true) && compareDeep(subject, o.subject, true) 2023 && compareDeep(encounter, o.encounter, true) && compareDeep(authored, o.authored, true) && compareDeep(author, o.author, true) 2024 && compareDeep(source, o.source, true) && compareDeep(item, o.item, true); 2025 } 2026 2027 @Override 2028 public boolean equalsShallow(Base other_) { 2029 if (!super.equalsShallow(other_)) 2030 return false; 2031 if (!(other_ instanceof QuestionnaireResponse)) 2032 return false; 2033 QuestionnaireResponse o = (QuestionnaireResponse) other_; 2034 return compareValues(questionnaire, o.questionnaire, true) && compareValues(status, o.status, true) 2035 && compareValues(authored, o.authored, true); 2036 } 2037 2038 public boolean isEmpty() { 2039 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, basedOn, partOf 2040 , questionnaire, status, subject, encounter, authored, author, source, item 2041 ); 2042 } 2043 2044 @Override 2045 public ResourceType getResourceType() { 2046 return ResourceType.QuestionnaireResponse; 2047 } 2048 2049 /** 2050 * Search parameter: <b>author</b> 2051 * <p> 2052 * Description: <b>The author of the questionnaire response</b><br> 2053 * Type: <b>reference</b><br> 2054 * Path: <b>QuestionnaireResponse.author</b><br> 2055 * </p> 2056 */ 2057 @SearchParamDefinition(name="author", path="QuestionnaireResponse.author", description="The author of the questionnaire response", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Device"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for 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={Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 2058 public static final String SP_AUTHOR = "author"; 2059 /** 2060 * <b>Fluent Client</b> search parameter constant for <b>author</b> 2061 * <p> 2062 * Description: <b>The author of the questionnaire response</b><br> 2063 * Type: <b>reference</b><br> 2064 * Path: <b>QuestionnaireResponse.author</b><br> 2065 * </p> 2066 */ 2067 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam AUTHOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_AUTHOR); 2068 2069/** 2070 * Constant for fluent queries to be used to add include statements. Specifies 2071 * the path value of "<b>QuestionnaireResponse:author</b>". 2072 */ 2073 public static final ca.uhn.fhir.model.api.Include INCLUDE_AUTHOR = new ca.uhn.fhir.model.api.Include("QuestionnaireResponse:author").toLocked(); 2074 2075 /** 2076 * Search parameter: <b>authored</b> 2077 * <p> 2078 * Description: <b>When the questionnaire response was last changed</b><br> 2079 * Type: <b>date</b><br> 2080 * Path: <b>QuestionnaireResponse.authored</b><br> 2081 * </p> 2082 */ 2083 @SearchParamDefinition(name="authored", path="QuestionnaireResponse.authored", description="When the questionnaire response was last changed", type="date" ) 2084 public static final String SP_AUTHORED = "authored"; 2085 /** 2086 * <b>Fluent Client</b> search parameter constant for <b>authored</b> 2087 * <p> 2088 * Description: <b>When the questionnaire response was last changed</b><br> 2089 * Type: <b>date</b><br> 2090 * Path: <b>QuestionnaireResponse.authored</b><br> 2091 * </p> 2092 */ 2093 public static final ca.uhn.fhir.rest.gclient.DateClientParam AUTHORED = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_AUTHORED); 2094 2095 /** 2096 * Search parameter: <b>based-on</b> 2097 * <p> 2098 * Description: <b>Plan/proposal/order fulfilled by this questionnaire response</b><br> 2099 * Type: <b>reference</b><br> 2100 * Path: <b>QuestionnaireResponse.basedOn</b><br> 2101 * </p> 2102 */ 2103 @SearchParamDefinition(name="based-on", path="QuestionnaireResponse.basedOn", description="Plan/proposal/order fulfilled by this questionnaire response", type="reference", target={CarePlan.class, ServiceRequest.class } ) 2104 public static final String SP_BASED_ON = "based-on"; 2105 /** 2106 * <b>Fluent Client</b> search parameter constant for <b>based-on</b> 2107 * <p> 2108 * Description: <b>Plan/proposal/order fulfilled by this questionnaire response</b><br> 2109 * Type: <b>reference</b><br> 2110 * Path: <b>QuestionnaireResponse.basedOn</b><br> 2111 * </p> 2112 */ 2113 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam BASED_ON = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_BASED_ON); 2114 2115/** 2116 * Constant for fluent queries to be used to add include statements. Specifies 2117 * the path value of "<b>QuestionnaireResponse:based-on</b>". 2118 */ 2119 public static final ca.uhn.fhir.model.api.Include INCLUDE_BASED_ON = new ca.uhn.fhir.model.api.Include("QuestionnaireResponse:based-on").toLocked(); 2120 2121 /** 2122 * Search parameter: <b>item-subject</b> 2123 * <p> 2124 * Description: <b>Allows searching for QuestionnaireResponses by item value where the item has isSubject=true</b><br> 2125 * Type: <b>reference</b><br> 2126 * Path: <b>QuestionnaireResponse.item.where(extension('http://hl7.org/fhir/StructureDefinition/questionnaireresponse-isSubject').exists()).answer.value.ofType(Reference)</b><br> 2127 * </p> 2128 */ 2129 @SearchParamDefinition(name="item-subject", path="QuestionnaireResponse.item.where(extension('http://hl7.org/fhir/StructureDefinition/questionnaireresponse-isSubject').exists()).answer.value.ofType(Reference)", description="Allows searching for QuestionnaireResponses by item value where the item has isSubject=true", type="reference", target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BiologicallyDerivedProductDispense.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceAssociation.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentReference.class, Encounter.class, EncounterHistory.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryItem.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationStatement.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Parameters.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestPlan.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 2130 public static final String SP_ITEM_SUBJECT = "item-subject"; 2131 /** 2132 * <b>Fluent Client</b> search parameter constant for <b>item-subject</b> 2133 * <p> 2134 * Description: <b>Allows searching for QuestionnaireResponses by item value where the item has isSubject=true</b><br> 2135 * Type: <b>reference</b><br> 2136 * Path: <b>QuestionnaireResponse.item.where(extension('http://hl7.org/fhir/StructureDefinition/questionnaireresponse-isSubject').exists()).answer.value.ofType(Reference)</b><br> 2137 * </p> 2138 */ 2139 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ITEM_SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ITEM_SUBJECT); 2140 2141/** 2142 * Constant for fluent queries to be used to add include statements. Specifies 2143 * the path value of "<b>QuestionnaireResponse:item-subject</b>". 2144 */ 2145 public static final ca.uhn.fhir.model.api.Include INCLUDE_ITEM_SUBJECT = new ca.uhn.fhir.model.api.Include("QuestionnaireResponse:item-subject").toLocked(); 2146 2147 /** 2148 * Search parameter: <b>part-of</b> 2149 * <p> 2150 * Description: <b>Procedure or observation this questionnaire response was performed as a part of</b><br> 2151 * Type: <b>reference</b><br> 2152 * Path: <b>QuestionnaireResponse.partOf</b><br> 2153 * </p> 2154 */ 2155 @SearchParamDefinition(name="part-of", path="QuestionnaireResponse.partOf", description="Procedure or observation this questionnaire response was performed as a part of", type="reference", target={Observation.class, Procedure.class } ) 2156 public static final String SP_PART_OF = "part-of"; 2157 /** 2158 * <b>Fluent Client</b> search parameter constant for <b>part-of</b> 2159 * <p> 2160 * Description: <b>Procedure or observation this questionnaire response was performed as a part of</b><br> 2161 * Type: <b>reference</b><br> 2162 * Path: <b>QuestionnaireResponse.partOf</b><br> 2163 * </p> 2164 */ 2165 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PART_OF = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PART_OF); 2166 2167/** 2168 * Constant for fluent queries to be used to add include statements. Specifies 2169 * the path value of "<b>QuestionnaireResponse:part-of</b>". 2170 */ 2171 public static final ca.uhn.fhir.model.api.Include INCLUDE_PART_OF = new ca.uhn.fhir.model.api.Include("QuestionnaireResponse:part-of").toLocked(); 2172 2173 /** 2174 * Search parameter: <b>questionnaire</b> 2175 * <p> 2176 * Description: <b>The questionnaire the answers are provided for</b><br> 2177 * Type: <b>reference</b><br> 2178 * Path: <b>QuestionnaireResponse.questionnaire</b><br> 2179 * </p> 2180 */ 2181 @SearchParamDefinition(name="questionnaire", path="QuestionnaireResponse.questionnaire", description="The questionnaire the answers are provided for", type="reference", target={Questionnaire.class } ) 2182 public static final String SP_QUESTIONNAIRE = "questionnaire"; 2183 /** 2184 * <b>Fluent Client</b> search parameter constant for <b>questionnaire</b> 2185 * <p> 2186 * Description: <b>The questionnaire the answers are provided for</b><br> 2187 * Type: <b>reference</b><br> 2188 * Path: <b>QuestionnaireResponse.questionnaire</b><br> 2189 * </p> 2190 */ 2191 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam QUESTIONNAIRE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_QUESTIONNAIRE); 2192 2193/** 2194 * Constant for fluent queries to be used to add include statements. Specifies 2195 * the path value of "<b>QuestionnaireResponse:questionnaire</b>". 2196 */ 2197 public static final ca.uhn.fhir.model.api.Include INCLUDE_QUESTIONNAIRE = new ca.uhn.fhir.model.api.Include("QuestionnaireResponse:questionnaire").toLocked(); 2198 2199 /** 2200 * Search parameter: <b>source</b> 2201 * <p> 2202 * Description: <b>The individual providing the information reflected in the questionnaire respose</b><br> 2203 * Type: <b>reference</b><br> 2204 * Path: <b>QuestionnaireResponse.source</b><br> 2205 * </p> 2206 */ 2207 @SearchParamDefinition(name="source", path="QuestionnaireResponse.source", description="The individual providing the information reflected in the questionnaire respose", type="reference", providesMembershipIn={ @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={Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 2208 public static final String SP_SOURCE = "source"; 2209 /** 2210 * <b>Fluent Client</b> search parameter constant for <b>source</b> 2211 * <p> 2212 * Description: <b>The individual providing the information reflected in the questionnaire respose</b><br> 2213 * Type: <b>reference</b><br> 2214 * Path: <b>QuestionnaireResponse.source</b><br> 2215 * </p> 2216 */ 2217 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SOURCE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SOURCE); 2218 2219/** 2220 * Constant for fluent queries to be used to add include statements. Specifies 2221 * the path value of "<b>QuestionnaireResponse:source</b>". 2222 */ 2223 public static final ca.uhn.fhir.model.api.Include INCLUDE_SOURCE = new ca.uhn.fhir.model.api.Include("QuestionnaireResponse:source").toLocked(); 2224 2225 /** 2226 * Search parameter: <b>status</b> 2227 * <p> 2228 * Description: <b>The status of the questionnaire response</b><br> 2229 * Type: <b>token</b><br> 2230 * Path: <b>QuestionnaireResponse.status</b><br> 2231 * </p> 2232 */ 2233 @SearchParamDefinition(name="status", path="QuestionnaireResponse.status", description="The status of the questionnaire response", type="token" ) 2234 public static final String SP_STATUS = "status"; 2235 /** 2236 * <b>Fluent Client</b> search parameter constant for <b>status</b> 2237 * <p> 2238 * Description: <b>The status of the questionnaire response</b><br> 2239 * Type: <b>token</b><br> 2240 * Path: <b>QuestionnaireResponse.status</b><br> 2241 * </p> 2242 */ 2243 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 2244 2245 /** 2246 * Search parameter: <b>subject</b> 2247 * <p> 2248 * Description: <b>The subject of the questionnaire response</b><br> 2249 * Type: <b>reference</b><br> 2250 * Path: <b>QuestionnaireResponse.subject</b><br> 2251 * </p> 2252 */ 2253 @SearchParamDefinition(name="subject", path="QuestionnaireResponse.subject", description="The subject of the questionnaire response", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BiologicallyDerivedProductDispense.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceAssociation.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentReference.class, Encounter.class, EncounterHistory.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryItem.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationStatement.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Parameters.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestPlan.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 2254 public static final String SP_SUBJECT = "subject"; 2255 /** 2256 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 2257 * <p> 2258 * Description: <b>The subject of the questionnaire response</b><br> 2259 * Type: <b>reference</b><br> 2260 * Path: <b>QuestionnaireResponse.subject</b><br> 2261 * </p> 2262 */ 2263 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 2264 2265/** 2266 * Constant for fluent queries to be used to add include statements. Specifies 2267 * the path value of "<b>QuestionnaireResponse:subject</b>". 2268 */ 2269 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("QuestionnaireResponse:subject").toLocked(); 2270 2271 /** 2272 * Search parameter: <b>encounter</b> 2273 * <p> 2274 * Description: <b>Multiple Resources: 2275 2276* [AuditEvent](auditevent.html): Encounter related to the activity recorded in the AuditEvent 2277* [CarePlan](careplan.html): The Encounter during which this CarePlan was created 2278* [ChargeItem](chargeitem.html): Encounter associated with event 2279* [Claim](claim.html): Encounters associated with a billed line item 2280* [ClinicalImpression](clinicalimpression.html): The Encounter during which this ClinicalImpression was created 2281* [Communication](communication.html): The Encounter during which this Communication was created 2282* [CommunicationRequest](communicationrequest.html): The Encounter during which this CommunicationRequest was created 2283* [Composition](composition.html): Context of the Composition 2284* [Condition](condition.html): The Encounter during which this Condition was created 2285* [DeviceRequest](devicerequest.html): Encounter during which request was created 2286* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made 2287* [EncounterHistory](encounterhistory.html): The Encounter associated with this set of history values 2288* [ExplanationOfBenefit](explanationofbenefit.html): Encounters associated with a billed line item 2289* [Flag](flag.html): Alert relevant during encounter 2290* [ImagingStudy](imagingstudy.html): The context of the study 2291* [List](list.html): Context in which list created 2292* [MedicationDispense](medicationdispense.html): Returns dispenses with a specific encounter 2293* [MedicationStatement](medicationstatement.html): Returns statements for a specific encounter 2294* [NutritionIntake](nutritionintake.html): Returns statements for a specific encounter 2295* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier 2296* [Observation](observation.html): Encounter related to the observation 2297* [Procedure](procedure.html): The Encounter during which this Procedure was created 2298* [Provenance](provenance.html): Encounter related to the Provenance 2299* [QuestionnaireResponse](questionnaireresponse.html): Encounter associated with the questionnaire response 2300* [RequestOrchestration](requestorchestration.html): The encounter the request orchestration applies to 2301* [RiskAssessment](riskassessment.html): Where was assessment performed? 2302* [ServiceRequest](servicerequest.html): An encounter in which this request is made 2303* [Task](task.html): Search by encounter 2304* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier 2305</b><br> 2306 * Type: <b>reference</b><br> 2307 * Path: <b>AuditEvent.encounter | CarePlan.encounter | ChargeItem.encounter | Claim.item.encounter | ClinicalImpression.encounter | Communication.encounter | CommunicationRequest.encounter | Composition.encounter | Condition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | EncounterHistory.encounter | ExplanationOfBenefit.item.encounter | Flag.encounter | ImagingStudy.encounter | List.encounter | MedicationDispense.encounter | MedicationStatement.encounter | NutritionIntake.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | Provenance.encounter | QuestionnaireResponse.encounter | RequestOrchestration.encounter | RiskAssessment.encounter | ServiceRequest.encounter | Task.encounter | VisionPrescription.encounter</b><br> 2308 * </p> 2309 */ 2310 @SearchParamDefinition(name="encounter", path="AuditEvent.encounter | CarePlan.encounter | ChargeItem.encounter | Claim.item.encounter | ClinicalImpression.encounter | Communication.encounter | CommunicationRequest.encounter | Composition.encounter | Condition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | EncounterHistory.encounter | ExplanationOfBenefit.item.encounter | Flag.encounter | ImagingStudy.encounter | List.encounter | MedicationDispense.encounter | MedicationStatement.encounter | NutritionIntake.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | Provenance.encounter | QuestionnaireResponse.encounter | RequestOrchestration.encounter | RiskAssessment.encounter | ServiceRequest.encounter | Task.encounter | VisionPrescription.encounter", description="Multiple Resources: \r\n\r\n* [AuditEvent](auditevent.html): Encounter related to the activity recorded in the AuditEvent\r\n* [CarePlan](careplan.html): The Encounter during which this CarePlan was created\r\n* [ChargeItem](chargeitem.html): Encounter associated with event\r\n* [Claim](claim.html): Encounters associated with a billed line item\r\n* [ClinicalImpression](clinicalimpression.html): The Encounter during which this ClinicalImpression was created\r\n* [Communication](communication.html): The Encounter during which this Communication was created\r\n* [CommunicationRequest](communicationrequest.html): The Encounter during which this CommunicationRequest was created\r\n* [Composition](composition.html): Context of the Composition\r\n* [Condition](condition.html): The Encounter during which this Condition was created\r\n* [DeviceRequest](devicerequest.html): Encounter during which request was created\r\n* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made\r\n* [EncounterHistory](encounterhistory.html): The Encounter associated with this set of history values\r\n* [ExplanationOfBenefit](explanationofbenefit.html): Encounters associated with a billed line item\r\n* [Flag](flag.html): Alert relevant during encounter\r\n* [ImagingStudy](imagingstudy.html): The context of the study\r\n* [List](list.html): Context in which list created\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses with a specific encounter\r\n* [MedicationStatement](medicationstatement.html): Returns statements for a specific encounter\r\n* [NutritionIntake](nutritionintake.html): Returns statements for a specific encounter\r\n* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier\r\n* [Observation](observation.html): Encounter related to the observation\r\n* [Procedure](procedure.html): The Encounter during which this Procedure was created\r\n* [Provenance](provenance.html): Encounter related to the Provenance\r\n* [QuestionnaireResponse](questionnaireresponse.html): Encounter associated with the questionnaire response\r\n* [RequestOrchestration](requestorchestration.html): The encounter the request orchestration applies to\r\n* [RiskAssessment](riskassessment.html): Where was assessment performed?\r\n* [ServiceRequest](servicerequest.html): An encounter in which this request is made\r\n* [Task](task.html): Search by encounter\r\n* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Encounter") }, target={Encounter.class } ) 2311 public static final String SP_ENCOUNTER = "encounter"; 2312 /** 2313 * <b>Fluent Client</b> search parameter constant for <b>encounter</b> 2314 * <p> 2315 * Description: <b>Multiple Resources: 2316 2317* [AuditEvent](auditevent.html): Encounter related to the activity recorded in the AuditEvent 2318* [CarePlan](careplan.html): The Encounter during which this CarePlan was created 2319* [ChargeItem](chargeitem.html): Encounter associated with event 2320* [Claim](claim.html): Encounters associated with a billed line item 2321* [ClinicalImpression](clinicalimpression.html): The Encounter during which this ClinicalImpression was created 2322* [Communication](communication.html): The Encounter during which this Communication was created 2323* [CommunicationRequest](communicationrequest.html): The Encounter during which this CommunicationRequest was created 2324* [Composition](composition.html): Context of the Composition 2325* [Condition](condition.html): The Encounter during which this Condition was created 2326* [DeviceRequest](devicerequest.html): Encounter during which request was created 2327* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made 2328* [EncounterHistory](encounterhistory.html): The Encounter associated with this set of history values 2329* [ExplanationOfBenefit](explanationofbenefit.html): Encounters associated with a billed line item 2330* [Flag](flag.html): Alert relevant during encounter 2331* [ImagingStudy](imagingstudy.html): The context of the study 2332* [List](list.html): Context in which list created 2333* [MedicationDispense](medicationdispense.html): Returns dispenses with a specific encounter 2334* [MedicationStatement](medicationstatement.html): Returns statements for a specific encounter 2335* [NutritionIntake](nutritionintake.html): Returns statements for a specific encounter 2336* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier 2337* [Observation](observation.html): Encounter related to the observation 2338* [Procedure](procedure.html): The Encounter during which this Procedure was created 2339* [Provenance](provenance.html): Encounter related to the Provenance 2340* [QuestionnaireResponse](questionnaireresponse.html): Encounter associated with the questionnaire response 2341* [RequestOrchestration](requestorchestration.html): The encounter the request orchestration applies to 2342* [RiskAssessment](riskassessment.html): Where was assessment performed? 2343* [ServiceRequest](servicerequest.html): An encounter in which this request is made 2344* [Task](task.html): Search by encounter 2345* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier 2346</b><br> 2347 * Type: <b>reference</b><br> 2348 * Path: <b>AuditEvent.encounter | CarePlan.encounter | ChargeItem.encounter | Claim.item.encounter | ClinicalImpression.encounter | Communication.encounter | CommunicationRequest.encounter | Composition.encounter | Condition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | EncounterHistory.encounter | ExplanationOfBenefit.item.encounter | Flag.encounter | ImagingStudy.encounter | List.encounter | MedicationDispense.encounter | MedicationStatement.encounter | NutritionIntake.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | Provenance.encounter | QuestionnaireResponse.encounter | RequestOrchestration.encounter | RiskAssessment.encounter | ServiceRequest.encounter | Task.encounter | VisionPrescription.encounter</b><br> 2349 * </p> 2350 */ 2351 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ENCOUNTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ENCOUNTER); 2352 2353/** 2354 * Constant for fluent queries to be used to add include statements. Specifies 2355 * the path value of "<b>QuestionnaireResponse:encounter</b>". 2356 */ 2357 public static final ca.uhn.fhir.model.api.Include INCLUDE_ENCOUNTER = new ca.uhn.fhir.model.api.Include("QuestionnaireResponse:encounter").toLocked(); 2358 2359 /** 2360 * Search parameter: <b>identifier</b> 2361 * <p> 2362 * Description: <b>Multiple Resources: 2363 2364* [Account](account.html): Account number 2365* [AdverseEvent](adverseevent.html): Business identifier for the event 2366* [AllergyIntolerance](allergyintolerance.html): External ids for this item 2367* [Appointment](appointment.html): An Identifier of the Appointment 2368* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 2369* [Basic](basic.html): Business identifier 2370* [BodyStructure](bodystructure.html): Bodystructure identifier 2371* [CarePlan](careplan.html): External Ids for this plan 2372* [CareTeam](careteam.html): External Ids for this team 2373* [ChargeItem](chargeitem.html): Business Identifier for item 2374* [Claim](claim.html): The primary identifier of the financial resource 2375* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 2376* [ClinicalImpression](clinicalimpression.html): Business identifier 2377* [Communication](communication.html): Unique identifier 2378* [CommunicationRequest](communicationrequest.html): Unique identifier 2379* [Composition](composition.html): Version-independent identifier for the Composition 2380* [Condition](condition.html): A unique identifier of the condition record 2381* [Consent](consent.html): Identifier for this record (external references) 2382* [Contract](contract.html): The identity of the contract 2383* [Coverage](coverage.html): The primary identifier of the insured and the coverage 2384* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 2385* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 2386* [DetectedIssue](detectedissue.html): Unique id for the detected issue 2387* [DeviceRequest](devicerequest.html): Business identifier for request/order 2388* [DeviceUsage](deviceusage.html): Search by identifier 2389* [DiagnosticReport](diagnosticreport.html): An identifier for the report 2390* [DocumentReference](documentreference.html): Identifier of the attachment binary 2391* [Encounter](encounter.html): Identifier(s) by which this encounter is known 2392* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 2393* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 2394* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 2395* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 2396* [Flag](flag.html): Business identifier 2397* [Goal](goal.html): External Ids for this goal 2398* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 2399* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 2400* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 2401* [Immunization](immunization.html): Business identifier 2402* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 2403* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 2404* [Invoice](invoice.html): Business Identifier for item 2405* [List](list.html): Business identifier 2406* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 2407* [Medication](medication.html): Returns medications with this external identifier 2408* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 2409* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 2410* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 2411* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 2412* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 2413* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 2414* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 2415* [Observation](observation.html): The unique id for a particular observation 2416* [Person](person.html): A person Identifier 2417* [Procedure](procedure.html): A unique identifier for a procedure 2418* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 2419* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 2420* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 2421* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 2422* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 2423* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 2424* [Specimen](specimen.html): The unique identifier associated with the specimen 2425* [SupplyDelivery](supplydelivery.html): External identifier 2426* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 2427* [Task](task.html): Search for a task instance by its business identifier 2428* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 2429</b><br> 2430 * Type: <b>token</b><br> 2431 * Path: <b>Account.identifier | AdverseEvent.identifier | AllergyIntolerance.identifier | Appointment.identifier | AppointmentResponse.identifier | Basic.identifier | BodyStructure.identifier | CarePlan.identifier | CareTeam.identifier | ChargeItem.identifier | Claim.identifier | ClaimResponse.identifier | ClinicalImpression.identifier | Communication.identifier | CommunicationRequest.identifier | Composition.identifier | Condition.identifier | Consent.identifier | Contract.identifier | Coverage.identifier | CoverageEligibilityRequest.identifier | CoverageEligibilityResponse.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DeviceUsage.identifier | DiagnosticReport.identifier | DocumentReference.identifier | Encounter.identifier | EnrollmentRequest.identifier | EpisodeOfCare.identifier | ExplanationOfBenefit.identifier | FamilyMemberHistory.identifier | Flag.identifier | Goal.identifier | GuidanceResponse.identifier | ImagingSelection.identifier | ImagingStudy.identifier | Immunization.identifier | ImmunizationEvaluation.identifier | ImmunizationRecommendation.identifier | Invoice.identifier | List.identifier | MeasureReport.identifier | Medication.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationStatement.identifier | MolecularSequence.identifier | NutritionIntake.identifier | NutritionOrder.identifier | Observation.identifier | Person.identifier | Procedure.identifier | QuestionnaireResponse.identifier | RelatedPerson.identifier | RequestOrchestration.identifier | ResearchSubject.identifier | RiskAssessment.identifier | ServiceRequest.identifier | Specimen.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | Task.identifier | VisionPrescription.identifier</b><br> 2432 * </p> 2433 */ 2434 @SearchParamDefinition(name="identifier", path="Account.identifier | AdverseEvent.identifier | AllergyIntolerance.identifier | Appointment.identifier | AppointmentResponse.identifier | Basic.identifier | BodyStructure.identifier | CarePlan.identifier | CareTeam.identifier | ChargeItem.identifier | Claim.identifier | ClaimResponse.identifier | ClinicalImpression.identifier | Communication.identifier | CommunicationRequest.identifier | Composition.identifier | Condition.identifier | Consent.identifier | Contract.identifier | Coverage.identifier | CoverageEligibilityRequest.identifier | CoverageEligibilityResponse.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DeviceUsage.identifier | DiagnosticReport.identifier | DocumentReference.identifier | Encounter.identifier | EnrollmentRequest.identifier | EpisodeOfCare.identifier | ExplanationOfBenefit.identifier | FamilyMemberHistory.identifier | Flag.identifier | Goal.identifier | GuidanceResponse.identifier | ImagingSelection.identifier | ImagingStudy.identifier | Immunization.identifier | ImmunizationEvaluation.identifier | ImmunizationRecommendation.identifier | Invoice.identifier | List.identifier | MeasureReport.identifier | Medication.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationStatement.identifier | MolecularSequence.identifier | NutritionIntake.identifier | NutritionOrder.identifier | Observation.identifier | Person.identifier | Procedure.identifier | QuestionnaireResponse.identifier | RelatedPerson.identifier | RequestOrchestration.identifier | ResearchSubject.identifier | RiskAssessment.identifier | ServiceRequest.identifier | Specimen.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | Task.identifier | VisionPrescription.identifier", description="Multiple Resources: \r\n\r\n* [Account](account.html): Account number\r\n* [AdverseEvent](adverseevent.html): Business identifier for the event\r\n* [AllergyIntolerance](allergyintolerance.html): External ids for this item\r\n* [Appointment](appointment.html): An Identifier of the Appointment\r\n* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response\r\n* [Basic](basic.html): Business identifier\r\n* [BodyStructure](bodystructure.html): Bodystructure identifier\r\n* [CarePlan](careplan.html): External Ids for this plan\r\n* [CareTeam](careteam.html): External Ids for this team\r\n* [ChargeItem](chargeitem.html): Business Identifier for item\r\n* [Claim](claim.html): The primary identifier of the financial resource\r\n* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse\r\n* [ClinicalImpression](clinicalimpression.html): Business identifier\r\n* [Communication](communication.html): Unique identifier\r\n* [CommunicationRequest](communicationrequest.html): Unique identifier\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* [Contract](contract.html): The identity of the contract\r\n* [Coverage](coverage.html): The primary identifier of the insured and the coverage\r\n* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility\r\n* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier\r\n* [DetectedIssue](detectedissue.html): Unique id for the detected issue\r\n* [DeviceRequest](devicerequest.html): Business identifier for request/order\r\n* [DeviceUsage](deviceusage.html): Search by identifier\r\n* [DiagnosticReport](diagnosticreport.html): An identifier for the report\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* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment\r\n* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare\r\n* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier\r\n* [Flag](flag.html): Business identifier\r\n* [Goal](goal.html): External Ids for this goal\r\n* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response\r\n* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection\r\n* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID\r\n* [Immunization](immunization.html): Business identifier\r\n* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation\r\n* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier\r\n* [Invoice](invoice.html): Business Identifier for item\r\n* [List](list.html): Business identifier\r\n* [MeasureReport](measurereport.html): External identifier of the measure report to be returned\r\n* [Medication](medication.html): Returns medications with this external identifier\r\n* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier\r\n* [MedicationStatement](medicationstatement.html): Return statements with this external identifier\r\n* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence\r\n* [NutritionIntake](nutritionintake.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* [Person](person.html): A person Identifier\r\n* [Procedure](procedure.html): A unique identifier for a procedure\r\n* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response\r\n* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson\r\n* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration\r\n* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study\r\n* [RiskAssessment](riskassessment.html): Unique identifier for the assessment\r\n* [ServiceRequest](servicerequest.html): Identifiers assigned to this order\r\n* [Specimen](specimen.html): The unique identifier associated with the specimen\r\n* [SupplyDelivery](supplydelivery.html): External identifier\r\n* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest\r\n* [Task](task.html): Search for a task instance by its business identifier\r\n* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier\r\n", type="token" ) 2435 public static final String SP_IDENTIFIER = "identifier"; 2436 /** 2437 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 2438 * <p> 2439 * Description: <b>Multiple Resources: 2440 2441* [Account](account.html): Account number 2442* [AdverseEvent](adverseevent.html): Business identifier for the event 2443* [AllergyIntolerance](allergyintolerance.html): External ids for this item 2444* [Appointment](appointment.html): An Identifier of the Appointment 2445* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 2446* [Basic](basic.html): Business identifier 2447* [BodyStructure](bodystructure.html): Bodystructure identifier 2448* [CarePlan](careplan.html): External Ids for this plan 2449* [CareTeam](careteam.html): External Ids for this team 2450* [ChargeItem](chargeitem.html): Business Identifier for item 2451* [Claim](claim.html): The primary identifier of the financial resource 2452* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 2453* [ClinicalImpression](clinicalimpression.html): Business identifier 2454* [Communication](communication.html): Unique identifier 2455* [CommunicationRequest](communicationrequest.html): Unique identifier 2456* [Composition](composition.html): Version-independent identifier for the Composition 2457* [Condition](condition.html): A unique identifier of the condition record 2458* [Consent](consent.html): Identifier for this record (external references) 2459* [Contract](contract.html): The identity of the contract 2460* [Coverage](coverage.html): The primary identifier of the insured and the coverage 2461* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 2462* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 2463* [DetectedIssue](detectedissue.html): Unique id for the detected issue 2464* [DeviceRequest](devicerequest.html): Business identifier for request/order 2465* [DeviceUsage](deviceusage.html): Search by identifier 2466* [DiagnosticReport](diagnosticreport.html): An identifier for the report 2467* [DocumentReference](documentreference.html): Identifier of the attachment binary 2468* [Encounter](encounter.html): Identifier(s) by which this encounter is known 2469* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 2470* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 2471* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 2472* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 2473* [Flag](flag.html): Business identifier 2474* [Goal](goal.html): External Ids for this goal 2475* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 2476* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 2477* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 2478* [Immunization](immunization.html): Business identifier 2479* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 2480* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 2481* [Invoice](invoice.html): Business Identifier for item 2482* [List](list.html): Business identifier 2483* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 2484* [Medication](medication.html): Returns medications with this external identifier 2485* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 2486* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 2487* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 2488* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 2489* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 2490* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 2491* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 2492* [Observation](observation.html): The unique id for a particular observation 2493* [Person](person.html): A person Identifier 2494* [Procedure](procedure.html): A unique identifier for a procedure 2495* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 2496* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 2497* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 2498* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 2499* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 2500* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 2501* [Specimen](specimen.html): The unique identifier associated with the specimen 2502* [SupplyDelivery](supplydelivery.html): External identifier 2503* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 2504* [Task](task.html): Search for a task instance by its business identifier 2505* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 2506</b><br> 2507 * Type: <b>token</b><br> 2508 * Path: <b>Account.identifier | AdverseEvent.identifier | AllergyIntolerance.identifier | Appointment.identifier | AppointmentResponse.identifier | Basic.identifier | BodyStructure.identifier | CarePlan.identifier | CareTeam.identifier | ChargeItem.identifier | Claim.identifier | ClaimResponse.identifier | ClinicalImpression.identifier | Communication.identifier | CommunicationRequest.identifier | Composition.identifier | Condition.identifier | Consent.identifier | Contract.identifier | Coverage.identifier | CoverageEligibilityRequest.identifier | CoverageEligibilityResponse.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DeviceUsage.identifier | DiagnosticReport.identifier | DocumentReference.identifier | Encounter.identifier | EnrollmentRequest.identifier | EpisodeOfCare.identifier | ExplanationOfBenefit.identifier | FamilyMemberHistory.identifier | Flag.identifier | Goal.identifier | GuidanceResponse.identifier | ImagingSelection.identifier | ImagingStudy.identifier | Immunization.identifier | ImmunizationEvaluation.identifier | ImmunizationRecommendation.identifier | Invoice.identifier | List.identifier | MeasureReport.identifier | Medication.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationStatement.identifier | MolecularSequence.identifier | NutritionIntake.identifier | NutritionOrder.identifier | Observation.identifier | Person.identifier | Procedure.identifier | QuestionnaireResponse.identifier | RelatedPerson.identifier | RequestOrchestration.identifier | ResearchSubject.identifier | RiskAssessment.identifier | ServiceRequest.identifier | Specimen.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | Task.identifier | VisionPrescription.identifier</b><br> 2509 * </p> 2510 */ 2511 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 2512 2513 /** 2514 * Search parameter: <b>patient</b> 2515 * <p> 2516 * Description: <b>Multiple Resources: 2517 2518* [Account](account.html): The entity that caused the expenses 2519* [AdverseEvent](adverseevent.html): Subject impacted by event 2520* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 2521* [Appointment](appointment.html): One of the individuals of the appointment is this patient 2522* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 2523* [AuditEvent](auditevent.html): Where the activity involved patient data 2524* [Basic](basic.html): Identifies the focus of this resource 2525* [BodyStructure](bodystructure.html): Who this is about 2526* [CarePlan](careplan.html): Who the care plan is for 2527* [CareTeam](careteam.html): Who care team is for 2528* [ChargeItem](chargeitem.html): Individual service was done for/to 2529* [Claim](claim.html): Patient receiving the products or services 2530* [ClaimResponse](claimresponse.html): The subject of care 2531* [ClinicalImpression](clinicalimpression.html): Patient assessed 2532* [Communication](communication.html): Focus of message 2533* [CommunicationRequest](communicationrequest.html): Focus of message 2534* [Composition](composition.html): Who and/or what the composition is about 2535* [Condition](condition.html): Who has the condition? 2536* [Consent](consent.html): Who the consent applies to 2537* [Contract](contract.html): The identity of the subject of the contract (if a patient) 2538* [Coverage](coverage.html): Retrieve coverages for a patient 2539* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 2540* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 2541* [DetectedIssue](detectedissue.html): Associated patient 2542* [DeviceRequest](devicerequest.html): Individual the service is ordered for 2543* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 2544* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 2545* [DocumentReference](documentreference.html): Who/what is the subject of the document 2546* [Encounter](encounter.html): The patient present at the encounter 2547* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 2548* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 2549* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 2550* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 2551* [Flag](flag.html): The identity of a subject to list flags for 2552* [Goal](goal.html): Who this goal is intended for 2553* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 2554* [ImagingSelection](imagingselection.html): Who the study is about 2555* [ImagingStudy](imagingstudy.html): Who the study is about 2556* [Immunization](immunization.html): The patient for the vaccination record 2557* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 2558* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 2559* [Invoice](invoice.html): Recipient(s) of goods and services 2560* [List](list.html): If all resources have the same subject 2561* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 2562* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 2563* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 2564* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 2565* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 2566* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 2567* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 2568* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 2569* [Observation](observation.html): The subject that the observation is about (if patient) 2570* [Person](person.html): The Person links to this Patient 2571* [Procedure](procedure.html): Search by subject - a patient 2572* [Provenance](provenance.html): Where the activity involved patient data 2573* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 2574* [RelatedPerson](relatedperson.html): The patient this related person is related to 2575* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 2576* [ResearchSubject](researchsubject.html): Who or what is part of study 2577* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 2578* [ServiceRequest](servicerequest.html): Search by subject - a patient 2579* [Specimen](specimen.html): The patient the specimen comes from 2580* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 2581* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 2582* [Task](task.html): Search by patient 2583* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 2584</b><br> 2585 * Type: <b>reference</b><br> 2586 * Path: <b>Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient</b><br> 2587 * </p> 2588 */ 2589 @SearchParamDefinition(name="patient", path="Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [Account](account.html): The entity that caused the expenses\r\n* [AdverseEvent](adverseevent.html): Subject impacted by event\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [Appointment](appointment.html): One of the individuals of the appointment is this patient\r\n* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient\r\n* [AuditEvent](auditevent.html): Where the activity involved patient data\r\n* [Basic](basic.html): Identifies the focus of this resource\r\n* [BodyStructure](bodystructure.html): Who this is about\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ChargeItem](chargeitem.html): Individual service was done for/to\r\n* [Claim](claim.html): Patient receiving the products or services\r\n* [ClaimResponse](claimresponse.html): The subject of care\r\n* [ClinicalImpression](clinicalimpression.html): Patient assessed\r\n* [Communication](communication.html): Focus of message\r\n* [CommunicationRequest](communicationrequest.html): Focus of message\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* [Contract](contract.html): The identity of the subject of the contract (if a patient)\r\n* [Coverage](coverage.html): Retrieve coverages for a patient\r\n* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient\r\n* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient\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* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient present at the encounter\r\n* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient\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* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results\r\n* [ImagingSelection](imagingselection.html): Who the study is about\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated\r\n* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for\r\n* [Invoice](invoice.html): Recipient(s) of goods and services\r\n* [List](list.html): If all resources have the same subject\r\n* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient.\r\n* [MolecularSequence](molecularsequence.html): The subject that the sequence is about\r\n* [NutritionIntake](nutritionintake.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* [Person](person.html): The Person links to this Patient\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [Provenance](provenance.html): Where the activity involved patient data\r\n* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response\r\n* [RelatedPerson](relatedperson.html): The patient this related person is related to\r\n* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations\r\n* [ResearchSubject](researchsubject.html): Who or what is part of study\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [Specimen](specimen.html): The patient the specimen comes from\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined\r\n* [Task](task.html): Search by patient\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Patient.class } ) 2590 public static final String SP_PATIENT = "patient"; 2591 /** 2592 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 2593 * <p> 2594 * Description: <b>Multiple Resources: 2595 2596* [Account](account.html): The entity that caused the expenses 2597* [AdverseEvent](adverseevent.html): Subject impacted by event 2598* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 2599* [Appointment](appointment.html): One of the individuals of the appointment is this patient 2600* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 2601* [AuditEvent](auditevent.html): Where the activity involved patient data 2602* [Basic](basic.html): Identifies the focus of this resource 2603* [BodyStructure](bodystructure.html): Who this is about 2604* [CarePlan](careplan.html): Who the care plan is for 2605* [CareTeam](careteam.html): Who care team is for 2606* [ChargeItem](chargeitem.html): Individual service was done for/to 2607* [Claim](claim.html): Patient receiving the products or services 2608* [ClaimResponse](claimresponse.html): The subject of care 2609* [ClinicalImpression](clinicalimpression.html): Patient assessed 2610* [Communication](communication.html): Focus of message 2611* [CommunicationRequest](communicationrequest.html): Focus of message 2612* [Composition](composition.html): Who and/or what the composition is about 2613* [Condition](condition.html): Who has the condition? 2614* [Consent](consent.html): Who the consent applies to 2615* [Contract](contract.html): The identity of the subject of the contract (if a patient) 2616* [Coverage](coverage.html): Retrieve coverages for a patient 2617* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 2618* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 2619* [DetectedIssue](detectedissue.html): Associated patient 2620* [DeviceRequest](devicerequest.html): Individual the service is ordered for 2621* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 2622* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 2623* [DocumentReference](documentreference.html): Who/what is the subject of the document 2624* [Encounter](encounter.html): The patient present at the encounter 2625* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 2626* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 2627* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 2628* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 2629* [Flag](flag.html): The identity of a subject to list flags for 2630* [Goal](goal.html): Who this goal is intended for 2631* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 2632* [ImagingSelection](imagingselection.html): Who the study is about 2633* [ImagingStudy](imagingstudy.html): Who the study is about 2634* [Immunization](immunization.html): The patient for the vaccination record 2635* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 2636* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 2637* [Invoice](invoice.html): Recipient(s) of goods and services 2638* [List](list.html): If all resources have the same subject 2639* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 2640* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 2641* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 2642* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 2643* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 2644* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 2645* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 2646* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 2647* [Observation](observation.html): The subject that the observation is about (if patient) 2648* [Person](person.html): The Person links to this Patient 2649* [Procedure](procedure.html): Search by subject - a patient 2650* [Provenance](provenance.html): Where the activity involved patient data 2651* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 2652* [RelatedPerson](relatedperson.html): The patient this related person is related to 2653* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 2654* [ResearchSubject](researchsubject.html): Who or what is part of study 2655* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 2656* [ServiceRequest](servicerequest.html): Search by subject - a patient 2657* [Specimen](specimen.html): The patient the specimen comes from 2658* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 2659* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 2660* [Task](task.html): Search by patient 2661* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 2662</b><br> 2663 * Type: <b>reference</b><br> 2664 * Path: <b>Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient</b><br> 2665 * </p> 2666 */ 2667 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 2668 2669/** 2670 * Constant for fluent queries to be used to add include statements. Specifies 2671 * the path value of "<b>QuestionnaireResponse:patient</b>". 2672 */ 2673 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("QuestionnaireResponse:patient").toLocked(); 2674 2675 2676} 2677