001package org.hl7.fhir.r4.model; 002 003 004 005/* 006 Copyright (c) 2011+, HL7, Inc. 007 All rights reserved. 008 009 Redistribution and use in source and binary forms, with or without modification, 010 are permitted provided that the following conditions are met: 011 012 * Redistributions of source code must retain the above copyright notice, this 013 list of conditions and the following disclaimer. 014 * Redistributions in binary form must reproduce the above copyright notice, 015 this list of conditions and the following disclaimer in the documentation 016 and/or other materials provided with the distribution. 017 * Neither the name of HL7 nor the names of its contributors may be used to 018 endorse or promote products derived from this software without specific 019 prior written permission. 020 021 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 022 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 023 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 024 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 025 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 026 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 027 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 028 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 029 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 030 POSSIBILITY OF SUCH DAMAGE. 031 032*/ 033 034 035// Generated on Tue, May 12, 2020 07:26+1000 for FHIR v4.0.1 036 037import java.util.*; 038 039import org.hl7.fhir.utilities.Utilities; 040import ca.uhn.fhir.model.api.annotation.ResourceDef; 041import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 042import ca.uhn.fhir.model.api.annotation.Child; 043import ca.uhn.fhir.model.api.annotation.ChildOrder; 044import ca.uhn.fhir.model.api.annotation.Description; 045import ca.uhn.fhir.model.api.annotation.Block; 046import org.hl7.fhir.instance.model.api.*; 047import org.hl7.fhir.exceptions.FHIRException; 048/** 049 * A guidance response is the formal response to a guidance request, including any output parameters returned by the evaluation, as well as the description of any proposed actions to be taken. 050 */ 051@ResourceDef(name="GuidanceResponse", profile="http://hl7.org/fhir/StructureDefinition/GuidanceResponse") 052public class GuidanceResponse extends DomainResource { 053 054 public enum GuidanceResponseStatus { 055 /** 056 * The request was processed successfully. 057 */ 058 SUCCESS, 059 /** 060 * The request was processed successfully, but more data may result in a more complete evaluation. 061 */ 062 DATAREQUESTED, 063 /** 064 * The request was processed, but more data is required to complete the evaluation. 065 */ 066 DATAREQUIRED, 067 /** 068 * The request is currently being processed. 069 */ 070 INPROGRESS, 071 /** 072 * The request was not processed successfully. 073 */ 074 FAILURE, 075 /** 076 * The response was entered in error. 077 */ 078 ENTEREDINERROR, 079 /** 080 * added to help the parsers with the generic types 081 */ 082 NULL; 083 public static GuidanceResponseStatus fromCode(String codeString) throws FHIRException { 084 if (codeString == null || "".equals(codeString)) 085 return null; 086 if ("success".equals(codeString)) 087 return SUCCESS; 088 if ("data-requested".equals(codeString)) 089 return DATAREQUESTED; 090 if ("data-required".equals(codeString)) 091 return DATAREQUIRED; 092 if ("in-progress".equals(codeString)) 093 return INPROGRESS; 094 if ("failure".equals(codeString)) 095 return FAILURE; 096 if ("entered-in-error".equals(codeString)) 097 return ENTEREDINERROR; 098 if (Configuration.isAcceptInvalidEnums()) 099 return null; 100 else 101 throw new FHIRException("Unknown GuidanceResponseStatus code '"+codeString+"'"); 102 } 103 public String toCode() { 104 switch (this) { 105 case SUCCESS: return "success"; 106 case DATAREQUESTED: return "data-requested"; 107 case DATAREQUIRED: return "data-required"; 108 case INPROGRESS: return "in-progress"; 109 case FAILURE: return "failure"; 110 case ENTEREDINERROR: return "entered-in-error"; 111 case NULL: return null; 112 default: return "?"; 113 } 114 } 115 public String getSystem() { 116 switch (this) { 117 case SUCCESS: return "http://hl7.org/fhir/guidance-response-status"; 118 case DATAREQUESTED: return "http://hl7.org/fhir/guidance-response-status"; 119 case DATAREQUIRED: return "http://hl7.org/fhir/guidance-response-status"; 120 case INPROGRESS: return "http://hl7.org/fhir/guidance-response-status"; 121 case FAILURE: return "http://hl7.org/fhir/guidance-response-status"; 122 case ENTEREDINERROR: return "http://hl7.org/fhir/guidance-response-status"; 123 case NULL: return null; 124 default: return "?"; 125 } 126 } 127 public String getDefinition() { 128 switch (this) { 129 case SUCCESS: return "The request was processed successfully."; 130 case DATAREQUESTED: return "The request was processed successfully, but more data may result in a more complete evaluation."; 131 case DATAREQUIRED: return "The request was processed, but more data is required to complete the evaluation."; 132 case INPROGRESS: return "The request is currently being processed."; 133 case FAILURE: return "The request was not processed successfully."; 134 case ENTEREDINERROR: return "The response was entered in error."; 135 case NULL: return null; 136 default: return "?"; 137 } 138 } 139 public String getDisplay() { 140 switch (this) { 141 case SUCCESS: return "Success"; 142 case DATAREQUESTED: return "Data Requested"; 143 case DATAREQUIRED: return "Data Required"; 144 case INPROGRESS: return "In Progress"; 145 case FAILURE: return "Failure"; 146 case ENTEREDINERROR: return "Entered In Error"; 147 case NULL: return null; 148 default: return "?"; 149 } 150 } 151 } 152 153 public static class GuidanceResponseStatusEnumFactory implements EnumFactory<GuidanceResponseStatus> { 154 public GuidanceResponseStatus fromCode(String codeString) throws IllegalArgumentException { 155 if (codeString == null || "".equals(codeString)) 156 if (codeString == null || "".equals(codeString)) 157 return null; 158 if ("success".equals(codeString)) 159 return GuidanceResponseStatus.SUCCESS; 160 if ("data-requested".equals(codeString)) 161 return GuidanceResponseStatus.DATAREQUESTED; 162 if ("data-required".equals(codeString)) 163 return GuidanceResponseStatus.DATAREQUIRED; 164 if ("in-progress".equals(codeString)) 165 return GuidanceResponseStatus.INPROGRESS; 166 if ("failure".equals(codeString)) 167 return GuidanceResponseStatus.FAILURE; 168 if ("entered-in-error".equals(codeString)) 169 return GuidanceResponseStatus.ENTEREDINERROR; 170 throw new IllegalArgumentException("Unknown GuidanceResponseStatus code '"+codeString+"'"); 171 } 172 public Enumeration<GuidanceResponseStatus> fromType(Base code) throws FHIRException { 173 if (code == null) 174 return null; 175 if (code.isEmpty()) 176 return new Enumeration<GuidanceResponseStatus>(this); 177 String codeString = ((PrimitiveType) code).asStringValue(); 178 if (codeString == null || "".equals(codeString)) 179 return null; 180 if ("success".equals(codeString)) 181 return new Enumeration<GuidanceResponseStatus>(this, GuidanceResponseStatus.SUCCESS); 182 if ("data-requested".equals(codeString)) 183 return new Enumeration<GuidanceResponseStatus>(this, GuidanceResponseStatus.DATAREQUESTED); 184 if ("data-required".equals(codeString)) 185 return new Enumeration<GuidanceResponseStatus>(this, GuidanceResponseStatus.DATAREQUIRED); 186 if ("in-progress".equals(codeString)) 187 return new Enumeration<GuidanceResponseStatus>(this, GuidanceResponseStatus.INPROGRESS); 188 if ("failure".equals(codeString)) 189 return new Enumeration<GuidanceResponseStatus>(this, GuidanceResponseStatus.FAILURE); 190 if ("entered-in-error".equals(codeString)) 191 return new Enumeration<GuidanceResponseStatus>(this, GuidanceResponseStatus.ENTEREDINERROR); 192 throw new FHIRException("Unknown GuidanceResponseStatus code '"+codeString+"'"); 193 } 194 public String toCode(GuidanceResponseStatus code) { 195 if (code == GuidanceResponseStatus.SUCCESS) 196 return "success"; 197 if (code == GuidanceResponseStatus.DATAREQUESTED) 198 return "data-requested"; 199 if (code == GuidanceResponseStatus.DATAREQUIRED) 200 return "data-required"; 201 if (code == GuidanceResponseStatus.INPROGRESS) 202 return "in-progress"; 203 if (code == GuidanceResponseStatus.FAILURE) 204 return "failure"; 205 if (code == GuidanceResponseStatus.ENTEREDINERROR) 206 return "entered-in-error"; 207 return "?"; 208 } 209 public String toSystem(GuidanceResponseStatus code) { 210 return code.getSystem(); 211 } 212 } 213 214 /** 215 * The identifier of the request associated with this response. If an identifier was given as part of the request, it will be reproduced here to enable the requester to more easily identify the response in a multi-request scenario. 216 */ 217 @Child(name = "requestIdentifier", type = {Identifier.class}, order=0, min=0, max=1, modifier=false, summary=true) 218 @Description(shortDefinition="The identifier of the request associated with this response, if any", formalDefinition="The identifier of the request associated with this response. If an identifier was given as part of the request, it will be reproduced here to enable the requester to more easily identify the response in a multi-request scenario." ) 219 protected Identifier requestIdentifier; 220 221 /** 222 * Allows a service to provide unique, business identifiers for the response. 223 */ 224 @Child(name = "identifier", type = {Identifier.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 225 @Description(shortDefinition="Business identifier", formalDefinition="Allows a service to provide unique, business identifiers for the response." ) 226 protected List<Identifier> identifier; 227 228 /** 229 * An identifier, CodeableConcept or canonical reference to the guidance that was requested. 230 */ 231 @Child(name = "module", type = {UriType.class, CanonicalType.class, CodeableConcept.class}, order=2, min=1, max=1, modifier=false, summary=true) 232 @Description(shortDefinition="What guidance was requested", formalDefinition="An identifier, CodeableConcept or canonical reference to the guidance that was requested." ) 233 protected Type module; 234 235 /** 236 * The status of the response. If the evaluation is completed successfully, the status will indicate success. However, in order to complete the evaluation, the engine may require more information. In this case, the status will be data-required, and the response will contain a description of the additional required information. If the evaluation completed successfully, but the engine determines that a potentially more accurate response could be provided if more data was available, the status will be data-requested, and the response will contain a description of the additional requested information. 237 */ 238 @Child(name = "status", type = {CodeType.class}, order=3, min=1, max=1, modifier=true, summary=true) 239 @Description(shortDefinition="success | data-requested | data-required | in-progress | failure | entered-in-error", formalDefinition="The status of the response. If the evaluation is completed successfully, the status will indicate success. However, in order to complete the evaluation, the engine may require more information. In this case, the status will be data-required, and the response will contain a description of the additional required information. If the evaluation completed successfully, but the engine determines that a potentially more accurate response could be provided if more data was available, the status will be data-requested, and the response will contain a description of the additional requested information." ) 240 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/guidance-response-status") 241 protected Enumeration<GuidanceResponseStatus> status; 242 243 /** 244 * The patient for which the request was processed. 245 */ 246 @Child(name = "subject", type = {Patient.class, Group.class}, order=4, min=0, max=1, modifier=false, summary=false) 247 @Description(shortDefinition="Patient the request was performed for", formalDefinition="The patient for which the request was processed." ) 248 protected Reference subject; 249 250 /** 251 * The actual object that is the target of the reference (The patient for which the request was processed.) 252 */ 253 protected Resource subjectTarget; 254 255 /** 256 * The encounter during which this response was created or to which the creation of this record is tightly associated. 257 */ 258 @Child(name = "encounter", type = {Encounter.class}, order=5, min=0, max=1, modifier=false, summary=false) 259 @Description(shortDefinition="Encounter during which the response was returned", formalDefinition="The encounter during which this response was created or to which the creation of this record is tightly associated." ) 260 protected Reference encounter; 261 262 /** 263 * The actual object that is the target of the reference (The encounter during which this response was created or to which the creation of this record is tightly associated.) 264 */ 265 protected Encounter encounterTarget; 266 267 /** 268 * Indicates when the guidance response was processed. 269 */ 270 @Child(name = "occurrenceDateTime", type = {DateTimeType.class}, order=6, min=0, max=1, modifier=false, summary=false) 271 @Description(shortDefinition="When the guidance response was processed", formalDefinition="Indicates when the guidance response was processed." ) 272 protected DateTimeType occurrenceDateTime; 273 274 /** 275 * Provides a reference to the device that performed the guidance. 276 */ 277 @Child(name = "performer", type = {Device.class}, order=7, min=0, max=1, modifier=false, summary=false) 278 @Description(shortDefinition="Device returning the guidance", formalDefinition="Provides a reference to the device that performed the guidance." ) 279 protected Reference performer; 280 281 /** 282 * The actual object that is the target of the reference (Provides a reference to the device that performed the guidance.) 283 */ 284 protected Device performerTarget; 285 286 /** 287 * Describes the reason for the guidance response in coded or textual form. 288 */ 289 @Child(name = "reasonCode", type = {CodeableConcept.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 290 @Description(shortDefinition="Why guidance is needed", formalDefinition="Describes the reason for the guidance response in coded or textual form." ) 291 protected List<CodeableConcept> reasonCode; 292 293 /** 294 * Indicates the reason the request was initiated. This is typically provided as a parameter to the evaluation and echoed by the service, although for some use cases, such as subscription- or event-based scenarios, it may provide an indication of the cause for the response. 295 */ 296 @Child(name = "reasonReference", type = {Condition.class, Observation.class, DiagnosticReport.class, DocumentReference.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 297 @Description(shortDefinition="Why guidance is needed", formalDefinition="Indicates the reason the request was initiated. This is typically provided as a parameter to the evaluation and echoed by the service, although for some use cases, such as subscription- or event-based scenarios, it may provide an indication of the cause for the response." ) 298 protected List<Reference> reasonReference; 299 /** 300 * The actual objects that are the target of the reference (Indicates the reason the request was initiated. This is typically provided as a parameter to the evaluation and echoed by the service, although for some use cases, such as subscription- or event-based scenarios, it may provide an indication of the cause for the response.) 301 */ 302 protected List<Resource> reasonReferenceTarget; 303 304 305 /** 306 * Provides a mechanism to communicate additional information about the response. 307 */ 308 @Child(name = "note", type = {Annotation.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 309 @Description(shortDefinition="Additional notes about the response", formalDefinition="Provides a mechanism to communicate additional information about the response." ) 310 protected List<Annotation> note; 311 312 /** 313 * Messages resulting from the evaluation of the artifact or artifacts. As part of evaluating the request, the engine may produce informational or warning messages. These messages will be provided by this element. 314 */ 315 @Child(name = "evaluationMessage", type = {OperationOutcome.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 316 @Description(shortDefinition="Messages resulting from the evaluation of the artifact or artifacts", formalDefinition="Messages resulting from the evaluation of the artifact or artifacts. As part of evaluating the request, the engine may produce informational or warning messages. These messages will be provided by this element." ) 317 protected List<Reference> evaluationMessage; 318 /** 319 * The actual objects that are the target of the reference (Messages resulting from the evaluation of the artifact or artifacts. As part of evaluating the request, the engine may produce informational or warning messages. These messages will be provided by this element.) 320 */ 321 protected List<OperationOutcome> evaluationMessageTarget; 322 323 324 /** 325 * The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element. 326 */ 327 @Child(name = "outputParameters", type = {Parameters.class}, order=12, min=0, max=1, modifier=false, summary=false) 328 @Description(shortDefinition="The output parameters of the evaluation, if any", formalDefinition="The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element." ) 329 protected Reference outputParameters; 330 331 /** 332 * The actual object that is the target of the reference (The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element.) 333 */ 334 protected Parameters outputParametersTarget; 335 336 /** 337 * The actions, if any, produced by the evaluation of the artifact. 338 */ 339 @Child(name = "result", type = {CarePlan.class, RequestGroup.class}, order=13, min=0, max=1, modifier=false, summary=false) 340 @Description(shortDefinition="Proposed actions, if any", formalDefinition="The actions, if any, produced by the evaluation of the artifact." ) 341 protected Reference result; 342 343 /** 344 * The actual object that is the target of the reference (The actions, if any, produced by the evaluation of the artifact.) 345 */ 346 protected Resource resultTarget; 347 348 /** 349 * If the evaluation could not be completed due to lack of information, or additional information would potentially result in a more accurate response, this element will a description of the data required in order to proceed with the evaluation. A subsequent request to the service should include this data. 350 */ 351 @Child(name = "dataRequirement", type = {DataRequirement.class}, order=14, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 352 @Description(shortDefinition="Additional required data", formalDefinition="If the evaluation could not be completed due to lack of information, or additional information would potentially result in a more accurate response, this element will a description of the data required in order to proceed with the evaluation. A subsequent request to the service should include this data." ) 353 protected List<DataRequirement> dataRequirement; 354 355 private static final long serialVersionUID = -760182193L; 356 357 /** 358 * Constructor 359 */ 360 public GuidanceResponse() { 361 super(); 362 } 363 364 /** 365 * Constructor 366 */ 367 public GuidanceResponse(Type module, Enumeration<GuidanceResponseStatus> status) { 368 super(); 369 this.module = module; 370 this.status = status; 371 } 372 373 /** 374 * @return {@link #requestIdentifier} (The identifier of the request associated with this response. If an identifier was given as part of the request, it will be reproduced here to enable the requester to more easily identify the response in a multi-request scenario.) 375 */ 376 public Identifier getRequestIdentifier() { 377 if (this.requestIdentifier == null) 378 if (Configuration.errorOnAutoCreate()) 379 throw new Error("Attempt to auto-create GuidanceResponse.requestIdentifier"); 380 else if (Configuration.doAutoCreate()) 381 this.requestIdentifier = new Identifier(); // cc 382 return this.requestIdentifier; 383 } 384 385 public boolean hasRequestIdentifier() { 386 return this.requestIdentifier != null && !this.requestIdentifier.isEmpty(); 387 } 388 389 /** 390 * @param value {@link #requestIdentifier} (The identifier of the request associated with this response. If an identifier was given as part of the request, it will be reproduced here to enable the requester to more easily identify the response in a multi-request scenario.) 391 */ 392 public GuidanceResponse setRequestIdentifier(Identifier value) { 393 this.requestIdentifier = value; 394 return this; 395 } 396 397 /** 398 * @return {@link #identifier} (Allows a service to provide unique, business identifiers for the response.) 399 */ 400 public List<Identifier> getIdentifier() { 401 if (this.identifier == null) 402 this.identifier = new ArrayList<Identifier>(); 403 return this.identifier; 404 } 405 406 /** 407 * @return Returns a reference to <code>this</code> for easy method chaining 408 */ 409 public GuidanceResponse setIdentifier(List<Identifier> theIdentifier) { 410 this.identifier = theIdentifier; 411 return this; 412 } 413 414 public boolean hasIdentifier() { 415 if (this.identifier == null) 416 return false; 417 for (Identifier item : this.identifier) 418 if (!item.isEmpty()) 419 return true; 420 return false; 421 } 422 423 public Identifier addIdentifier() { //3 424 Identifier t = new Identifier(); 425 if (this.identifier == null) 426 this.identifier = new ArrayList<Identifier>(); 427 this.identifier.add(t); 428 return t; 429 } 430 431 public GuidanceResponse addIdentifier(Identifier t) { //3 432 if (t == null) 433 return this; 434 if (this.identifier == null) 435 this.identifier = new ArrayList<Identifier>(); 436 this.identifier.add(t); 437 return this; 438 } 439 440 /** 441 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist 442 */ 443 public Identifier getIdentifierFirstRep() { 444 if (getIdentifier().isEmpty()) { 445 addIdentifier(); 446 } 447 return getIdentifier().get(0); 448 } 449 450 /** 451 * @return {@link #module} (An identifier, CodeableConcept or canonical reference to the guidance that was requested.) 452 */ 453 public Type getModule() { 454 return this.module; 455 } 456 457 /** 458 * @return {@link #module} (An identifier, CodeableConcept or canonical reference to the guidance that was requested.) 459 */ 460 public UriType getModuleUriType() throws FHIRException { 461 if (this.module == null) 462 this.module = new UriType(); 463 if (!(this.module instanceof UriType)) 464 throw new FHIRException("Type mismatch: the type UriType was expected, but "+this.module.getClass().getName()+" was encountered"); 465 return (UriType) this.module; 466 } 467 468 public boolean hasModuleUriType() { 469 return this != null && this.module instanceof UriType; 470 } 471 472 /** 473 * @return {@link #module} (An identifier, CodeableConcept or canonical reference to the guidance that was requested.) 474 */ 475 public CanonicalType getModuleCanonicalType() throws FHIRException { 476 if (this.module == null) 477 this.module = new CanonicalType(); 478 if (!(this.module instanceof CanonicalType)) 479 throw new FHIRException("Type mismatch: the type CanonicalType was expected, but "+this.module.getClass().getName()+" was encountered"); 480 return (CanonicalType) this.module; 481 } 482 483 public boolean hasModuleCanonicalType() { 484 return this != null && this.module instanceof CanonicalType; 485 } 486 487 /** 488 * @return {@link #module} (An identifier, CodeableConcept or canonical reference to the guidance that was requested.) 489 */ 490 public CodeableConcept getModuleCodeableConcept() throws FHIRException { 491 if (this.module == null) 492 this.module = new CodeableConcept(); 493 if (!(this.module instanceof CodeableConcept)) 494 throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.module.getClass().getName()+" was encountered"); 495 return (CodeableConcept) this.module; 496 } 497 498 public boolean hasModuleCodeableConcept() { 499 return this != null && this.module instanceof CodeableConcept; 500 } 501 502 public boolean hasModule() { 503 return this.module != null && !this.module.isEmpty(); 504 } 505 506 /** 507 * @param value {@link #module} (An identifier, CodeableConcept or canonical reference to the guidance that was requested.) 508 */ 509 public GuidanceResponse setModule(Type value) { 510 if (value != null && !(value instanceof UriType || value instanceof CanonicalType || value instanceof CodeableConcept)) 511 throw new Error("Not the right type for GuidanceResponse.module[x]: "+value.fhirType()); 512 this.module = value; 513 return this; 514 } 515 516 /** 517 * @return {@link #status} (The status of the response. If the evaluation is completed successfully, the status will indicate success. However, in order to complete the evaluation, the engine may require more information. In this case, the status will be data-required, and the response will contain a description of the additional required information. If the evaluation completed successfully, but the engine determines that a potentially more accurate response could be provided if more data was available, the status will be data-requested, and the response will contain a description of the additional requested information.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 518 */ 519 public Enumeration<GuidanceResponseStatus> getStatusElement() { 520 if (this.status == null) 521 if (Configuration.errorOnAutoCreate()) 522 throw new Error("Attempt to auto-create GuidanceResponse.status"); 523 else if (Configuration.doAutoCreate()) 524 this.status = new Enumeration<GuidanceResponseStatus>(new GuidanceResponseStatusEnumFactory()); // bb 525 return this.status; 526 } 527 528 public boolean hasStatusElement() { 529 return this.status != null && !this.status.isEmpty(); 530 } 531 532 public boolean hasStatus() { 533 return this.status != null && !this.status.isEmpty(); 534 } 535 536 /** 537 * @param value {@link #status} (The status of the response. If the evaluation is completed successfully, the status will indicate success. However, in order to complete the evaluation, the engine may require more information. In this case, the status will be data-required, and the response will contain a description of the additional required information. If the evaluation completed successfully, but the engine determines that a potentially more accurate response could be provided if more data was available, the status will be data-requested, and the response will contain a description of the additional requested information.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 538 */ 539 public GuidanceResponse setStatusElement(Enumeration<GuidanceResponseStatus> value) { 540 this.status = value; 541 return this; 542 } 543 544 /** 545 * @return The status of the response. If the evaluation is completed successfully, the status will indicate success. However, in order to complete the evaluation, the engine may require more information. In this case, the status will be data-required, and the response will contain a description of the additional required information. If the evaluation completed successfully, but the engine determines that a potentially more accurate response could be provided if more data was available, the status will be data-requested, and the response will contain a description of the additional requested information. 546 */ 547 public GuidanceResponseStatus getStatus() { 548 return this.status == null ? null : this.status.getValue(); 549 } 550 551 /** 552 * @param value The status of the response. If the evaluation is completed successfully, the status will indicate success. However, in order to complete the evaluation, the engine may require more information. In this case, the status will be data-required, and the response will contain a description of the additional required information. If the evaluation completed successfully, but the engine determines that a potentially more accurate response could be provided if more data was available, the status will be data-requested, and the response will contain a description of the additional requested information. 553 */ 554 public GuidanceResponse setStatus(GuidanceResponseStatus value) { 555 if (this.status == null) 556 this.status = new Enumeration<GuidanceResponseStatus>(new GuidanceResponseStatusEnumFactory()); 557 this.status.setValue(value); 558 return this; 559 } 560 561 /** 562 * @return {@link #subject} (The patient for which the request was processed.) 563 */ 564 public Reference getSubject() { 565 if (this.subject == null) 566 if (Configuration.errorOnAutoCreate()) 567 throw new Error("Attempt to auto-create GuidanceResponse.subject"); 568 else if (Configuration.doAutoCreate()) 569 this.subject = new Reference(); // cc 570 return this.subject; 571 } 572 573 public boolean hasSubject() { 574 return this.subject != null && !this.subject.isEmpty(); 575 } 576 577 /** 578 * @param value {@link #subject} (The patient for which the request was processed.) 579 */ 580 public GuidanceResponse setSubject(Reference value) { 581 this.subject = value; 582 return this; 583 } 584 585 /** 586 * @return {@link #subject} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The patient for which the request was processed.) 587 */ 588 public Resource getSubjectTarget() { 589 return this.subjectTarget; 590 } 591 592 /** 593 * @param value {@link #subject} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The patient for which the request was processed.) 594 */ 595 public GuidanceResponse setSubjectTarget(Resource value) { 596 this.subjectTarget = value; 597 return this; 598 } 599 600 /** 601 * @return {@link #encounter} (The encounter during which this response was created or to which the creation of this record is tightly associated.) 602 */ 603 public Reference getEncounter() { 604 if (this.encounter == null) 605 if (Configuration.errorOnAutoCreate()) 606 throw new Error("Attempt to auto-create GuidanceResponse.encounter"); 607 else if (Configuration.doAutoCreate()) 608 this.encounter = new Reference(); // cc 609 return this.encounter; 610 } 611 612 public boolean hasEncounter() { 613 return this.encounter != null && !this.encounter.isEmpty(); 614 } 615 616 /** 617 * @param value {@link #encounter} (The encounter during which this response was created or to which the creation of this record is tightly associated.) 618 */ 619 public GuidanceResponse setEncounter(Reference value) { 620 this.encounter = value; 621 return this; 622 } 623 624 /** 625 * @return {@link #encounter} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The encounter during which this response was created or to which the creation of this record is tightly associated.) 626 */ 627 public Encounter getEncounterTarget() { 628 if (this.encounterTarget == null) 629 if (Configuration.errorOnAutoCreate()) 630 throw new Error("Attempt to auto-create GuidanceResponse.encounter"); 631 else if (Configuration.doAutoCreate()) 632 this.encounterTarget = new Encounter(); // aa 633 return this.encounterTarget; 634 } 635 636 /** 637 * @param value {@link #encounter} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The encounter during which this response was created or to which the creation of this record is tightly associated.) 638 */ 639 public GuidanceResponse setEncounterTarget(Encounter value) { 640 this.encounterTarget = value; 641 return this; 642 } 643 644 /** 645 * @return {@link #occurrenceDateTime} (Indicates when the guidance response was processed.). This is the underlying object with id, value and extensions. The accessor "getOccurrenceDateTime" gives direct access to the value 646 */ 647 public DateTimeType getOccurrenceDateTimeElement() { 648 if (this.occurrenceDateTime == null) 649 if (Configuration.errorOnAutoCreate()) 650 throw new Error("Attempt to auto-create GuidanceResponse.occurrenceDateTime"); 651 else if (Configuration.doAutoCreate()) 652 this.occurrenceDateTime = new DateTimeType(); // bb 653 return this.occurrenceDateTime; 654 } 655 656 public boolean hasOccurrenceDateTimeElement() { 657 return this.occurrenceDateTime != null && !this.occurrenceDateTime.isEmpty(); 658 } 659 660 public boolean hasOccurrenceDateTime() { 661 return this.occurrenceDateTime != null && !this.occurrenceDateTime.isEmpty(); 662 } 663 664 /** 665 * @param value {@link #occurrenceDateTime} (Indicates when the guidance response was processed.). This is the underlying object with id, value and extensions. The accessor "getOccurrenceDateTime" gives direct access to the value 666 */ 667 public GuidanceResponse setOccurrenceDateTimeElement(DateTimeType value) { 668 this.occurrenceDateTime = value; 669 return this; 670 } 671 672 /** 673 * @return Indicates when the guidance response was processed. 674 */ 675 public Date getOccurrenceDateTime() { 676 return this.occurrenceDateTime == null ? null : this.occurrenceDateTime.getValue(); 677 } 678 679 /** 680 * @param value Indicates when the guidance response was processed. 681 */ 682 public GuidanceResponse setOccurrenceDateTime(Date value) { 683 if (value == null) 684 this.occurrenceDateTime = null; 685 else { 686 if (this.occurrenceDateTime == null) 687 this.occurrenceDateTime = new DateTimeType(); 688 this.occurrenceDateTime.setValue(value); 689 } 690 return this; 691 } 692 693 /** 694 * @return {@link #performer} (Provides a reference to the device that performed the guidance.) 695 */ 696 public Reference getPerformer() { 697 if (this.performer == null) 698 if (Configuration.errorOnAutoCreate()) 699 throw new Error("Attempt to auto-create GuidanceResponse.performer"); 700 else if (Configuration.doAutoCreate()) 701 this.performer = new Reference(); // cc 702 return this.performer; 703 } 704 705 public boolean hasPerformer() { 706 return this.performer != null && !this.performer.isEmpty(); 707 } 708 709 /** 710 * @param value {@link #performer} (Provides a reference to the device that performed the guidance.) 711 */ 712 public GuidanceResponse setPerformer(Reference value) { 713 this.performer = value; 714 return this; 715 } 716 717 /** 718 * @return {@link #performer} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (Provides a reference to the device that performed the guidance.) 719 */ 720 public Device getPerformerTarget() { 721 if (this.performerTarget == null) 722 if (Configuration.errorOnAutoCreate()) 723 throw new Error("Attempt to auto-create GuidanceResponse.performer"); 724 else if (Configuration.doAutoCreate()) 725 this.performerTarget = new Device(); // aa 726 return this.performerTarget; 727 } 728 729 /** 730 * @param value {@link #performer} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (Provides a reference to the device that performed the guidance.) 731 */ 732 public GuidanceResponse setPerformerTarget(Device value) { 733 this.performerTarget = value; 734 return this; 735 } 736 737 /** 738 * @return {@link #reasonCode} (Describes the reason for the guidance response in coded or textual form.) 739 */ 740 public List<CodeableConcept> getReasonCode() { 741 if (this.reasonCode == null) 742 this.reasonCode = new ArrayList<CodeableConcept>(); 743 return this.reasonCode; 744 } 745 746 /** 747 * @return Returns a reference to <code>this</code> for easy method chaining 748 */ 749 public GuidanceResponse setReasonCode(List<CodeableConcept> theReasonCode) { 750 this.reasonCode = theReasonCode; 751 return this; 752 } 753 754 public boolean hasReasonCode() { 755 if (this.reasonCode == null) 756 return false; 757 for (CodeableConcept item : this.reasonCode) 758 if (!item.isEmpty()) 759 return true; 760 return false; 761 } 762 763 public CodeableConcept addReasonCode() { //3 764 CodeableConcept t = new CodeableConcept(); 765 if (this.reasonCode == null) 766 this.reasonCode = new ArrayList<CodeableConcept>(); 767 this.reasonCode.add(t); 768 return t; 769 } 770 771 public GuidanceResponse addReasonCode(CodeableConcept t) { //3 772 if (t == null) 773 return this; 774 if (this.reasonCode == null) 775 this.reasonCode = new ArrayList<CodeableConcept>(); 776 this.reasonCode.add(t); 777 return this; 778 } 779 780 /** 781 * @return The first repetition of repeating field {@link #reasonCode}, creating it if it does not already exist 782 */ 783 public CodeableConcept getReasonCodeFirstRep() { 784 if (getReasonCode().isEmpty()) { 785 addReasonCode(); 786 } 787 return getReasonCode().get(0); 788 } 789 790 /** 791 * @return {@link #reasonReference} (Indicates the reason the request was initiated. This is typically provided as a parameter to the evaluation and echoed by the service, although for some use cases, such as subscription- or event-based scenarios, it may provide an indication of the cause for the response.) 792 */ 793 public List<Reference> getReasonReference() { 794 if (this.reasonReference == null) 795 this.reasonReference = new ArrayList<Reference>(); 796 return this.reasonReference; 797 } 798 799 /** 800 * @return Returns a reference to <code>this</code> for easy method chaining 801 */ 802 public GuidanceResponse setReasonReference(List<Reference> theReasonReference) { 803 this.reasonReference = theReasonReference; 804 return this; 805 } 806 807 public boolean hasReasonReference() { 808 if (this.reasonReference == null) 809 return false; 810 for (Reference item : this.reasonReference) 811 if (!item.isEmpty()) 812 return true; 813 return false; 814 } 815 816 public Reference addReasonReference() { //3 817 Reference t = new Reference(); 818 if (this.reasonReference == null) 819 this.reasonReference = new ArrayList<Reference>(); 820 this.reasonReference.add(t); 821 return t; 822 } 823 824 public GuidanceResponse addReasonReference(Reference t) { //3 825 if (t == null) 826 return this; 827 if (this.reasonReference == null) 828 this.reasonReference = new ArrayList<Reference>(); 829 this.reasonReference.add(t); 830 return this; 831 } 832 833 /** 834 * @return The first repetition of repeating field {@link #reasonReference}, creating it if it does not already exist 835 */ 836 public Reference getReasonReferenceFirstRep() { 837 if (getReasonReference().isEmpty()) { 838 addReasonReference(); 839 } 840 return getReasonReference().get(0); 841 } 842 843 /** 844 * @deprecated Use Reference#setResource(IBaseResource) instead 845 */ 846 @Deprecated 847 public List<Resource> getReasonReferenceTarget() { 848 if (this.reasonReferenceTarget == null) 849 this.reasonReferenceTarget = new ArrayList<Resource>(); 850 return this.reasonReferenceTarget; 851 } 852 853 /** 854 * @return {@link #note} (Provides a mechanism to communicate additional information about the response.) 855 */ 856 public List<Annotation> getNote() { 857 if (this.note == null) 858 this.note = new ArrayList<Annotation>(); 859 return this.note; 860 } 861 862 /** 863 * @return Returns a reference to <code>this</code> for easy method chaining 864 */ 865 public GuidanceResponse setNote(List<Annotation> theNote) { 866 this.note = theNote; 867 return this; 868 } 869 870 public boolean hasNote() { 871 if (this.note == null) 872 return false; 873 for (Annotation item : this.note) 874 if (!item.isEmpty()) 875 return true; 876 return false; 877 } 878 879 public Annotation addNote() { //3 880 Annotation t = new Annotation(); 881 if (this.note == null) 882 this.note = new ArrayList<Annotation>(); 883 this.note.add(t); 884 return t; 885 } 886 887 public GuidanceResponse addNote(Annotation t) { //3 888 if (t == null) 889 return this; 890 if (this.note == null) 891 this.note = new ArrayList<Annotation>(); 892 this.note.add(t); 893 return this; 894 } 895 896 /** 897 * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist 898 */ 899 public Annotation getNoteFirstRep() { 900 if (getNote().isEmpty()) { 901 addNote(); 902 } 903 return getNote().get(0); 904 } 905 906 /** 907 * @return {@link #evaluationMessage} (Messages resulting from the evaluation of the artifact or artifacts. As part of evaluating the request, the engine may produce informational or warning messages. These messages will be provided by this element.) 908 */ 909 public List<Reference> getEvaluationMessage() { 910 if (this.evaluationMessage == null) 911 this.evaluationMessage = new ArrayList<Reference>(); 912 return this.evaluationMessage; 913 } 914 915 /** 916 * @return Returns a reference to <code>this</code> for easy method chaining 917 */ 918 public GuidanceResponse setEvaluationMessage(List<Reference> theEvaluationMessage) { 919 this.evaluationMessage = theEvaluationMessage; 920 return this; 921 } 922 923 public boolean hasEvaluationMessage() { 924 if (this.evaluationMessage == null) 925 return false; 926 for (Reference item : this.evaluationMessage) 927 if (!item.isEmpty()) 928 return true; 929 return false; 930 } 931 932 public Reference addEvaluationMessage() { //3 933 Reference t = new Reference(); 934 if (this.evaluationMessage == null) 935 this.evaluationMessage = new ArrayList<Reference>(); 936 this.evaluationMessage.add(t); 937 return t; 938 } 939 940 public GuidanceResponse addEvaluationMessage(Reference t) { //3 941 if (t == null) 942 return this; 943 if (this.evaluationMessage == null) 944 this.evaluationMessage = new ArrayList<Reference>(); 945 this.evaluationMessage.add(t); 946 return this; 947 } 948 949 /** 950 * @return The first repetition of repeating field {@link #evaluationMessage}, creating it if it does not already exist 951 */ 952 public Reference getEvaluationMessageFirstRep() { 953 if (getEvaluationMessage().isEmpty()) { 954 addEvaluationMessage(); 955 } 956 return getEvaluationMessage().get(0); 957 } 958 959 /** 960 * @deprecated Use Reference#setResource(IBaseResource) instead 961 */ 962 @Deprecated 963 public List<OperationOutcome> getEvaluationMessageTarget() { 964 if (this.evaluationMessageTarget == null) 965 this.evaluationMessageTarget = new ArrayList<OperationOutcome>(); 966 return this.evaluationMessageTarget; 967 } 968 969 /** 970 * @deprecated Use Reference#setResource(IBaseResource) instead 971 */ 972 @Deprecated 973 public OperationOutcome addEvaluationMessageTarget() { 974 OperationOutcome r = new OperationOutcome(); 975 if (this.evaluationMessageTarget == null) 976 this.evaluationMessageTarget = new ArrayList<OperationOutcome>(); 977 this.evaluationMessageTarget.add(r); 978 return r; 979 } 980 981 /** 982 * @return {@link #outputParameters} (The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element.) 983 */ 984 public Reference getOutputParameters() { 985 if (this.outputParameters == null) 986 if (Configuration.errorOnAutoCreate()) 987 throw new Error("Attempt to auto-create GuidanceResponse.outputParameters"); 988 else if (Configuration.doAutoCreate()) 989 this.outputParameters = new Reference(); // cc 990 return this.outputParameters; 991 } 992 993 public boolean hasOutputParameters() { 994 return this.outputParameters != null && !this.outputParameters.isEmpty(); 995 } 996 997 /** 998 * @param value {@link #outputParameters} (The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element.) 999 */ 1000 public GuidanceResponse setOutputParameters(Reference value) { 1001 this.outputParameters = value; 1002 return this; 1003 } 1004 1005 /** 1006 * @return {@link #outputParameters} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element.) 1007 */ 1008 public Parameters getOutputParametersTarget() { 1009 if (this.outputParametersTarget == null) 1010 if (Configuration.errorOnAutoCreate()) 1011 throw new Error("Attempt to auto-create GuidanceResponse.outputParameters"); 1012 else if (Configuration.doAutoCreate()) 1013 this.outputParametersTarget = new Parameters(); // aa 1014 return this.outputParametersTarget; 1015 } 1016 1017 /** 1018 * @param value {@link #outputParameters} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element.) 1019 */ 1020 public GuidanceResponse setOutputParametersTarget(Parameters value) { 1021 this.outputParametersTarget = value; 1022 return this; 1023 } 1024 1025 /** 1026 * @return {@link #result} (The actions, if any, produced by the evaluation of the artifact.) 1027 */ 1028 public Reference getResult() { 1029 if (this.result == null) 1030 if (Configuration.errorOnAutoCreate()) 1031 throw new Error("Attempt to auto-create GuidanceResponse.result"); 1032 else if (Configuration.doAutoCreate()) 1033 this.result = new Reference(); // cc 1034 return this.result; 1035 } 1036 1037 public boolean hasResult() { 1038 return this.result != null && !this.result.isEmpty(); 1039 } 1040 1041 /** 1042 * @param value {@link #result} (The actions, if any, produced by the evaluation of the artifact.) 1043 */ 1044 public GuidanceResponse setResult(Reference value) { 1045 this.result = value; 1046 return this; 1047 } 1048 1049 /** 1050 * @return {@link #result} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The actions, if any, produced by the evaluation of the artifact.) 1051 */ 1052 public Resource getResultTarget() { 1053 return this.resultTarget; 1054 } 1055 1056 /** 1057 * @param value {@link #result} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The actions, if any, produced by the evaluation of the artifact.) 1058 */ 1059 public GuidanceResponse setResultTarget(Resource value) { 1060 this.resultTarget = value; 1061 return this; 1062 } 1063 1064 /** 1065 * @return {@link #dataRequirement} (If the evaluation could not be completed due to lack of information, or additional information would potentially result in a more accurate response, this element will a description of the data required in order to proceed with the evaluation. A subsequent request to the service should include this data.) 1066 */ 1067 public List<DataRequirement> getDataRequirement() { 1068 if (this.dataRequirement == null) 1069 this.dataRequirement = new ArrayList<DataRequirement>(); 1070 return this.dataRequirement; 1071 } 1072 1073 /** 1074 * @return Returns a reference to <code>this</code> for easy method chaining 1075 */ 1076 public GuidanceResponse setDataRequirement(List<DataRequirement> theDataRequirement) { 1077 this.dataRequirement = theDataRequirement; 1078 return this; 1079 } 1080 1081 public boolean hasDataRequirement() { 1082 if (this.dataRequirement == null) 1083 return false; 1084 for (DataRequirement item : this.dataRequirement) 1085 if (!item.isEmpty()) 1086 return true; 1087 return false; 1088 } 1089 1090 public DataRequirement addDataRequirement() { //3 1091 DataRequirement t = new DataRequirement(); 1092 if (this.dataRequirement == null) 1093 this.dataRequirement = new ArrayList<DataRequirement>(); 1094 this.dataRequirement.add(t); 1095 return t; 1096 } 1097 1098 public GuidanceResponse addDataRequirement(DataRequirement t) { //3 1099 if (t == null) 1100 return this; 1101 if (this.dataRequirement == null) 1102 this.dataRequirement = new ArrayList<DataRequirement>(); 1103 this.dataRequirement.add(t); 1104 return this; 1105 } 1106 1107 /** 1108 * @return The first repetition of repeating field {@link #dataRequirement}, creating it if it does not already exist 1109 */ 1110 public DataRequirement getDataRequirementFirstRep() { 1111 if (getDataRequirement().isEmpty()) { 1112 addDataRequirement(); 1113 } 1114 return getDataRequirement().get(0); 1115 } 1116 1117 protected void listChildren(List<Property> children) { 1118 super.listChildren(children); 1119 children.add(new Property("requestIdentifier", "Identifier", "The identifier of the request associated with this response. If an identifier was given as part of the request, it will be reproduced here to enable the requester to more easily identify the response in a multi-request scenario.", 0, 1, requestIdentifier)); 1120 children.add(new Property("identifier", "Identifier", "Allows a service to provide unique, business identifiers for the response.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1121 children.add(new Property("module[x]", "uri|canonical|CodeableConcept", "An identifier, CodeableConcept or canonical reference to the guidance that was requested.", 0, 1, module)); 1122 children.add(new Property("status", "code", "The status of the response. If the evaluation is completed successfully, the status will indicate success. However, in order to complete the evaluation, the engine may require more information. In this case, the status will be data-required, and the response will contain a description of the additional required information. If the evaluation completed successfully, but the engine determines that a potentially more accurate response could be provided if more data was available, the status will be data-requested, and the response will contain a description of the additional requested information.", 0, 1, status)); 1123 children.add(new Property("subject", "Reference(Patient|Group)", "The patient for which the request was processed.", 0, 1, subject)); 1124 children.add(new Property("encounter", "Reference(Encounter)", "The encounter during which this response was created or to which the creation of this record is tightly associated.", 0, 1, encounter)); 1125 children.add(new Property("occurrenceDateTime", "dateTime", "Indicates when the guidance response was processed.", 0, 1, occurrenceDateTime)); 1126 children.add(new Property("performer", "Reference(Device)", "Provides a reference to the device that performed the guidance.", 0, 1, performer)); 1127 children.add(new Property("reasonCode", "CodeableConcept", "Describes the reason for the guidance response in coded or textual form.", 0, java.lang.Integer.MAX_VALUE, reasonCode)); 1128 children.add(new Property("reasonReference", "Reference(Condition|Observation|DiagnosticReport|DocumentReference)", "Indicates the reason the request was initiated. This is typically provided as a parameter to the evaluation and echoed by the service, although for some use cases, such as subscription- or event-based scenarios, it may provide an indication of the cause for the response.", 0, java.lang.Integer.MAX_VALUE, reasonReference)); 1129 children.add(new Property("note", "Annotation", "Provides a mechanism to communicate additional information about the response.", 0, java.lang.Integer.MAX_VALUE, note)); 1130 children.add(new Property("evaluationMessage", "Reference(OperationOutcome)", "Messages resulting from the evaluation of the artifact or artifacts. As part of evaluating the request, the engine may produce informational or warning messages. These messages will be provided by this element.", 0, java.lang.Integer.MAX_VALUE, evaluationMessage)); 1131 children.add(new Property("outputParameters", "Reference(Parameters)", "The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element.", 0, 1, outputParameters)); 1132 children.add(new Property("result", "Reference(CarePlan|RequestGroup)", "The actions, if any, produced by the evaluation of the artifact.", 0, 1, result)); 1133 children.add(new Property("dataRequirement", "DataRequirement", "If the evaluation could not be completed due to lack of information, or additional information would potentially result in a more accurate response, this element will a description of the data required in order to proceed with the evaluation. A subsequent request to the service should include this data.", 0, java.lang.Integer.MAX_VALUE, dataRequirement)); 1134 } 1135 1136 @Override 1137 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1138 switch (_hash) { 1139 case -354233192: /*requestIdentifier*/ return new Property("requestIdentifier", "Identifier", "The identifier of the request associated with this response. If an identifier was given as part of the request, it will be reproduced here to enable the requester to more easily identify the response in a multi-request scenario.", 0, 1, requestIdentifier); 1140 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Allows a service to provide unique, business identifiers for the response.", 0, java.lang.Integer.MAX_VALUE, identifier); 1141 case -1552083308: /*module[x]*/ return new Property("module[x]", "uri|canonical|CodeableConcept", "An identifier, CodeableConcept or canonical reference to the guidance that was requested.", 0, 1, module); 1142 case -1068784020: /*module*/ return new Property("module[x]", "uri|canonical|CodeableConcept", "An identifier, CodeableConcept or canonical reference to the guidance that was requested.", 0, 1, module); 1143 case -1552089248: /*moduleUri*/ return new Property("module[x]", "uri|canonical|CodeableConcept", "An identifier, CodeableConcept or canonical reference to the guidance that was requested.", 0, 1, module); 1144 case -1153656856: /*moduleCanonical*/ return new Property("module[x]", "uri|canonical|CodeableConcept", "An identifier, CodeableConcept or canonical reference to the guidance that was requested.", 0, 1, module); 1145 case -1157899371: /*moduleCodeableConcept*/ return new Property("module[x]", "uri|canonical|CodeableConcept", "An identifier, CodeableConcept or canonical reference to the guidance that was requested.", 0, 1, module); 1146 case -892481550: /*status*/ return new Property("status", "code", "The status of the response. If the evaluation is completed successfully, the status will indicate success. However, in order to complete the evaluation, the engine may require more information. In this case, the status will be data-required, and the response will contain a description of the additional required information. If the evaluation completed successfully, but the engine determines that a potentially more accurate response could be provided if more data was available, the status will be data-requested, and the response will contain a description of the additional requested information.", 0, 1, status); 1147 case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group)", "The patient for which the request was processed.", 0, 1, subject); 1148 case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The encounter during which this response was created or to which the creation of this record is tightly associated.", 0, 1, encounter); 1149 case -298443636: /*occurrenceDateTime*/ return new Property("occurrenceDateTime", "dateTime", "Indicates when the guidance response was processed.", 0, 1, occurrenceDateTime); 1150 case 481140686: /*performer*/ return new Property("performer", "Reference(Device)", "Provides a reference to the device that performed the guidance.", 0, 1, performer); 1151 case 722137681: /*reasonCode*/ return new Property("reasonCode", "CodeableConcept", "Describes the reason for the guidance response in coded or textual form.", 0, java.lang.Integer.MAX_VALUE, reasonCode); 1152 case -1146218137: /*reasonReference*/ return new Property("reasonReference", "Reference(Condition|Observation|DiagnosticReport|DocumentReference)", "Indicates the reason the request was initiated. This is typically provided as a parameter to the evaluation and echoed by the service, although for some use cases, such as subscription- or event-based scenarios, it may provide an indication of the cause for the response.", 0, java.lang.Integer.MAX_VALUE, reasonReference); 1153 case 3387378: /*note*/ return new Property("note", "Annotation", "Provides a mechanism to communicate additional information about the response.", 0, java.lang.Integer.MAX_VALUE, note); 1154 case 1081619755: /*evaluationMessage*/ return new Property("evaluationMessage", "Reference(OperationOutcome)", "Messages resulting from the evaluation of the artifact or artifacts. As part of evaluating the request, the engine may produce informational or warning messages. These messages will be provided by this element.", 0, java.lang.Integer.MAX_VALUE, evaluationMessage); 1155 case 525609419: /*outputParameters*/ return new Property("outputParameters", "Reference(Parameters)", "The output parameters of the evaluation, if any. Many modules will result in the return of specific resources such as procedure or communication requests that are returned as part of the operation result. However, modules may define specific outputs that would be returned as the result of the evaluation, and these would be returned in this element.", 0, 1, outputParameters); 1156 case -934426595: /*result*/ return new Property("result", "Reference(CarePlan|RequestGroup)", "The actions, if any, produced by the evaluation of the artifact.", 0, 1, result); 1157 case 629147193: /*dataRequirement*/ return new Property("dataRequirement", "DataRequirement", "If the evaluation could not be completed due to lack of information, or additional information would potentially result in a more accurate response, this element will a description of the data required in order to proceed with the evaluation. A subsequent request to the service should include this data.", 0, java.lang.Integer.MAX_VALUE, dataRequirement); 1158 default: return super.getNamedProperty(_hash, _name, _checkValid); 1159 } 1160 1161 } 1162 1163 @Override 1164 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1165 switch (hash) { 1166 case -354233192: /*requestIdentifier*/ return this.requestIdentifier == null ? new Base[0] : new Base[] {this.requestIdentifier}; // Identifier 1167 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1168 case -1068784020: /*module*/ return this.module == null ? new Base[0] : new Base[] {this.module}; // Type 1169 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<GuidanceResponseStatus> 1170 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference 1171 case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference 1172 case -298443636: /*occurrenceDateTime*/ return this.occurrenceDateTime == null ? new Base[0] : new Base[] {this.occurrenceDateTime}; // DateTimeType 1173 case 481140686: /*performer*/ return this.performer == null ? new Base[0] : new Base[] {this.performer}; // Reference 1174 case 722137681: /*reasonCode*/ return this.reasonCode == null ? new Base[0] : this.reasonCode.toArray(new Base[this.reasonCode.size()]); // CodeableConcept 1175 case -1146218137: /*reasonReference*/ return this.reasonReference == null ? new Base[0] : this.reasonReference.toArray(new Base[this.reasonReference.size()]); // Reference 1176 case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 1177 case 1081619755: /*evaluationMessage*/ return this.evaluationMessage == null ? new Base[0] : this.evaluationMessage.toArray(new Base[this.evaluationMessage.size()]); // Reference 1178 case 525609419: /*outputParameters*/ return this.outputParameters == null ? new Base[0] : new Base[] {this.outputParameters}; // Reference 1179 case -934426595: /*result*/ return this.result == null ? new Base[0] : new Base[] {this.result}; // Reference 1180 case 629147193: /*dataRequirement*/ return this.dataRequirement == null ? new Base[0] : this.dataRequirement.toArray(new Base[this.dataRequirement.size()]); // DataRequirement 1181 default: return super.getProperty(hash, name, checkValid); 1182 } 1183 1184 } 1185 1186 @Override 1187 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1188 switch (hash) { 1189 case -354233192: // requestIdentifier 1190 this.requestIdentifier = castToIdentifier(value); // Identifier 1191 return value; 1192 case -1618432855: // identifier 1193 this.getIdentifier().add(castToIdentifier(value)); // Identifier 1194 return value; 1195 case -1068784020: // module 1196 this.module = castToType(value); // Type 1197 return value; 1198 case -892481550: // status 1199 value = new GuidanceResponseStatusEnumFactory().fromType(castToCode(value)); 1200 this.status = (Enumeration) value; // Enumeration<GuidanceResponseStatus> 1201 return value; 1202 case -1867885268: // subject 1203 this.subject = castToReference(value); // Reference 1204 return value; 1205 case 1524132147: // encounter 1206 this.encounter = castToReference(value); // Reference 1207 return value; 1208 case -298443636: // occurrenceDateTime 1209 this.occurrenceDateTime = castToDateTime(value); // DateTimeType 1210 return value; 1211 case 481140686: // performer 1212 this.performer = castToReference(value); // Reference 1213 return value; 1214 case 722137681: // reasonCode 1215 this.getReasonCode().add(castToCodeableConcept(value)); // CodeableConcept 1216 return value; 1217 case -1146218137: // reasonReference 1218 this.getReasonReference().add(castToReference(value)); // Reference 1219 return value; 1220 case 3387378: // note 1221 this.getNote().add(castToAnnotation(value)); // Annotation 1222 return value; 1223 case 1081619755: // evaluationMessage 1224 this.getEvaluationMessage().add(castToReference(value)); // Reference 1225 return value; 1226 case 525609419: // outputParameters 1227 this.outputParameters = castToReference(value); // Reference 1228 return value; 1229 case -934426595: // result 1230 this.result = castToReference(value); // Reference 1231 return value; 1232 case 629147193: // dataRequirement 1233 this.getDataRequirement().add(castToDataRequirement(value)); // DataRequirement 1234 return value; 1235 default: return super.setProperty(hash, name, value); 1236 } 1237 1238 } 1239 1240 @Override 1241 public Base setProperty(String name, Base value) throws FHIRException { 1242 if (name.equals("requestIdentifier")) { 1243 this.requestIdentifier = castToIdentifier(value); // Identifier 1244 } else if (name.equals("identifier")) { 1245 this.getIdentifier().add(castToIdentifier(value)); 1246 } else if (name.equals("module[x]")) { 1247 this.module = castToType(value); // Type 1248 } else if (name.equals("status")) { 1249 value = new GuidanceResponseStatusEnumFactory().fromType(castToCode(value)); 1250 this.status = (Enumeration) value; // Enumeration<GuidanceResponseStatus> 1251 } else if (name.equals("subject")) { 1252 this.subject = castToReference(value); // Reference 1253 } else if (name.equals("encounter")) { 1254 this.encounter = castToReference(value); // Reference 1255 } else if (name.equals("occurrenceDateTime")) { 1256 this.occurrenceDateTime = castToDateTime(value); // DateTimeType 1257 } else if (name.equals("performer")) { 1258 this.performer = castToReference(value); // Reference 1259 } else if (name.equals("reasonCode")) { 1260 this.getReasonCode().add(castToCodeableConcept(value)); 1261 } else if (name.equals("reasonReference")) { 1262 this.getReasonReference().add(castToReference(value)); 1263 } else if (name.equals("note")) { 1264 this.getNote().add(castToAnnotation(value)); 1265 } else if (name.equals("evaluationMessage")) { 1266 this.getEvaluationMessage().add(castToReference(value)); 1267 } else if (name.equals("outputParameters")) { 1268 this.outputParameters = castToReference(value); // Reference 1269 } else if (name.equals("result")) { 1270 this.result = castToReference(value); // Reference 1271 } else if (name.equals("dataRequirement")) { 1272 this.getDataRequirement().add(castToDataRequirement(value)); 1273 } else 1274 return super.setProperty(name, value); 1275 return value; 1276 } 1277 1278 @Override 1279 public Base makeProperty(int hash, String name) throws FHIRException { 1280 switch (hash) { 1281 case -354233192: return getRequestIdentifier(); 1282 case -1618432855: return addIdentifier(); 1283 case -1552083308: return getModule(); 1284 case -1068784020: return getModule(); 1285 case -892481550: return getStatusElement(); 1286 case -1867885268: return getSubject(); 1287 case 1524132147: return getEncounter(); 1288 case -298443636: return getOccurrenceDateTimeElement(); 1289 case 481140686: return getPerformer(); 1290 case 722137681: return addReasonCode(); 1291 case -1146218137: return addReasonReference(); 1292 case 3387378: return addNote(); 1293 case 1081619755: return addEvaluationMessage(); 1294 case 525609419: return getOutputParameters(); 1295 case -934426595: return getResult(); 1296 case 629147193: return addDataRequirement(); 1297 default: return super.makeProperty(hash, name); 1298 } 1299 1300 } 1301 1302 @Override 1303 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1304 switch (hash) { 1305 case -354233192: /*requestIdentifier*/ return new String[] {"Identifier"}; 1306 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 1307 case -1068784020: /*module*/ return new String[] {"uri", "canonical", "CodeableConcept"}; 1308 case -892481550: /*status*/ return new String[] {"code"}; 1309 case -1867885268: /*subject*/ return new String[] {"Reference"}; 1310 case 1524132147: /*encounter*/ return new String[] {"Reference"}; 1311 case -298443636: /*occurrenceDateTime*/ return new String[] {"dateTime"}; 1312 case 481140686: /*performer*/ return new String[] {"Reference"}; 1313 case 722137681: /*reasonCode*/ return new String[] {"CodeableConcept"}; 1314 case -1146218137: /*reasonReference*/ return new String[] {"Reference"}; 1315 case 3387378: /*note*/ return new String[] {"Annotation"}; 1316 case 1081619755: /*evaluationMessage*/ return new String[] {"Reference"}; 1317 case 525609419: /*outputParameters*/ return new String[] {"Reference"}; 1318 case -934426595: /*result*/ return new String[] {"Reference"}; 1319 case 629147193: /*dataRequirement*/ return new String[] {"DataRequirement"}; 1320 default: return super.getTypesForProperty(hash, name); 1321 } 1322 1323 } 1324 1325 @Override 1326 public Base addChild(String name) throws FHIRException { 1327 if (name.equals("requestIdentifier")) { 1328 this.requestIdentifier = new Identifier(); 1329 return this.requestIdentifier; 1330 } 1331 else if (name.equals("identifier")) { 1332 return addIdentifier(); 1333 } 1334 else if (name.equals("moduleUri")) { 1335 this.module = new UriType(); 1336 return this.module; 1337 } 1338 else if (name.equals("moduleCanonical")) { 1339 this.module = new CanonicalType(); 1340 return this.module; 1341 } 1342 else if (name.equals("moduleCodeableConcept")) { 1343 this.module = new CodeableConcept(); 1344 return this.module; 1345 } 1346 else if (name.equals("status")) { 1347 throw new FHIRException("Cannot call addChild on a primitive type GuidanceResponse.status"); 1348 } 1349 else if (name.equals("subject")) { 1350 this.subject = new Reference(); 1351 return this.subject; 1352 } 1353 else if (name.equals("encounter")) { 1354 this.encounter = new Reference(); 1355 return this.encounter; 1356 } 1357 else if (name.equals("occurrenceDateTime")) { 1358 throw new FHIRException("Cannot call addChild on a primitive type GuidanceResponse.occurrenceDateTime"); 1359 } 1360 else if (name.equals("performer")) { 1361 this.performer = new Reference(); 1362 return this.performer; 1363 } 1364 else if (name.equals("reasonCode")) { 1365 return addReasonCode(); 1366 } 1367 else if (name.equals("reasonReference")) { 1368 return addReasonReference(); 1369 } 1370 else if (name.equals("note")) { 1371 return addNote(); 1372 } 1373 else if (name.equals("evaluationMessage")) { 1374 return addEvaluationMessage(); 1375 } 1376 else if (name.equals("outputParameters")) { 1377 this.outputParameters = new Reference(); 1378 return this.outputParameters; 1379 } 1380 else if (name.equals("result")) { 1381 this.result = new Reference(); 1382 return this.result; 1383 } 1384 else if (name.equals("dataRequirement")) { 1385 return addDataRequirement(); 1386 } 1387 else 1388 return super.addChild(name); 1389 } 1390 1391 public String fhirType() { 1392 return "GuidanceResponse"; 1393 1394 } 1395 1396 public GuidanceResponse copy() { 1397 GuidanceResponse dst = new GuidanceResponse(); 1398 copyValues(dst); 1399 return dst; 1400 } 1401 1402 public void copyValues(GuidanceResponse dst) { 1403 super.copyValues(dst); 1404 dst.requestIdentifier = requestIdentifier == null ? null : requestIdentifier.copy(); 1405 if (identifier != null) { 1406 dst.identifier = new ArrayList<Identifier>(); 1407 for (Identifier i : identifier) 1408 dst.identifier.add(i.copy()); 1409 }; 1410 dst.module = module == null ? null : module.copy(); 1411 dst.status = status == null ? null : status.copy(); 1412 dst.subject = subject == null ? null : subject.copy(); 1413 dst.encounter = encounter == null ? null : encounter.copy(); 1414 dst.occurrenceDateTime = occurrenceDateTime == null ? null : occurrenceDateTime.copy(); 1415 dst.performer = performer == null ? null : performer.copy(); 1416 if (reasonCode != null) { 1417 dst.reasonCode = new ArrayList<CodeableConcept>(); 1418 for (CodeableConcept i : reasonCode) 1419 dst.reasonCode.add(i.copy()); 1420 }; 1421 if (reasonReference != null) { 1422 dst.reasonReference = new ArrayList<Reference>(); 1423 for (Reference i : reasonReference) 1424 dst.reasonReference.add(i.copy()); 1425 }; 1426 if (note != null) { 1427 dst.note = new ArrayList<Annotation>(); 1428 for (Annotation i : note) 1429 dst.note.add(i.copy()); 1430 }; 1431 if (evaluationMessage != null) { 1432 dst.evaluationMessage = new ArrayList<Reference>(); 1433 for (Reference i : evaluationMessage) 1434 dst.evaluationMessage.add(i.copy()); 1435 }; 1436 dst.outputParameters = outputParameters == null ? null : outputParameters.copy(); 1437 dst.result = result == null ? null : result.copy(); 1438 if (dataRequirement != null) { 1439 dst.dataRequirement = new ArrayList<DataRequirement>(); 1440 for (DataRequirement i : dataRequirement) 1441 dst.dataRequirement.add(i.copy()); 1442 }; 1443 } 1444 1445 protected GuidanceResponse typedCopy() { 1446 return copy(); 1447 } 1448 1449 @Override 1450 public boolean equalsDeep(Base other_) { 1451 if (!super.equalsDeep(other_)) 1452 return false; 1453 if (!(other_ instanceof GuidanceResponse)) 1454 return false; 1455 GuidanceResponse o = (GuidanceResponse) other_; 1456 return compareDeep(requestIdentifier, o.requestIdentifier, true) && compareDeep(identifier, o.identifier, true) 1457 && compareDeep(module, o.module, true) && compareDeep(status, o.status, true) && compareDeep(subject, o.subject, true) 1458 && compareDeep(encounter, o.encounter, true) && compareDeep(occurrenceDateTime, o.occurrenceDateTime, true) 1459 && compareDeep(performer, o.performer, true) && compareDeep(reasonCode, o.reasonCode, true) && compareDeep(reasonReference, o.reasonReference, true) 1460 && compareDeep(note, o.note, true) && compareDeep(evaluationMessage, o.evaluationMessage, true) 1461 && compareDeep(outputParameters, o.outputParameters, true) && compareDeep(result, o.result, true) 1462 && compareDeep(dataRequirement, o.dataRequirement, true); 1463 } 1464 1465 @Override 1466 public boolean equalsShallow(Base other_) { 1467 if (!super.equalsShallow(other_)) 1468 return false; 1469 if (!(other_ instanceof GuidanceResponse)) 1470 return false; 1471 GuidanceResponse o = (GuidanceResponse) other_; 1472 return compareValues(status, o.status, true) && compareValues(occurrenceDateTime, o.occurrenceDateTime, true) 1473 ; 1474 } 1475 1476 public boolean isEmpty() { 1477 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(requestIdentifier, identifier 1478 , module, status, subject, encounter, occurrenceDateTime, performer, reasonCode 1479 , reasonReference, note, evaluationMessage, outputParameters, result, dataRequirement 1480 ); 1481 } 1482 1483 @Override 1484 public ResourceType getResourceType() { 1485 return ResourceType.GuidanceResponse; 1486 } 1487 1488 /** 1489 * Search parameter: <b>request</b> 1490 * <p> 1491 * Description: <b>The identifier of the request associated with the response</b><br> 1492 * Type: <b>token</b><br> 1493 * Path: <b>GuidanceResponse.requestIdentifier</b><br> 1494 * </p> 1495 */ 1496 @SearchParamDefinition(name="request", path="GuidanceResponse.requestIdentifier", description="The identifier of the request associated with the response", type="token" ) 1497 public static final String SP_REQUEST = "request"; 1498 /** 1499 * <b>Fluent Client</b> search parameter constant for <b>request</b> 1500 * <p> 1501 * Description: <b>The identifier of the request associated with the response</b><br> 1502 * Type: <b>token</b><br> 1503 * Path: <b>GuidanceResponse.requestIdentifier</b><br> 1504 * </p> 1505 */ 1506 public static final ca.uhn.fhir.rest.gclient.TokenClientParam REQUEST = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_REQUEST); 1507 1508 /** 1509 * Search parameter: <b>identifier</b> 1510 * <p> 1511 * Description: <b>The identifier of the guidance response</b><br> 1512 * Type: <b>token</b><br> 1513 * Path: <b>GuidanceResponse.identifier</b><br> 1514 * </p> 1515 */ 1516 @SearchParamDefinition(name="identifier", path="GuidanceResponse.identifier", description="The identifier of the guidance response", type="token" ) 1517 public static final String SP_IDENTIFIER = "identifier"; 1518 /** 1519 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1520 * <p> 1521 * Description: <b>The identifier of the guidance response</b><br> 1522 * Type: <b>token</b><br> 1523 * Path: <b>GuidanceResponse.identifier</b><br> 1524 * </p> 1525 */ 1526 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1527 1528 /** 1529 * Search parameter: <b>patient</b> 1530 * <p> 1531 * Description: <b>The identity of a patient to search for guidance response results</b><br> 1532 * Type: <b>reference</b><br> 1533 * Path: <b>GuidanceResponse.subject</b><br> 1534 * </p> 1535 */ 1536 @SearchParamDefinition(name="patient", path="GuidanceResponse.subject.where(resolve() is Patient)", description="The identity of a patient to search for guidance response results", type="reference", target={Patient.class } ) 1537 public static final String SP_PATIENT = "patient"; 1538 /** 1539 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 1540 * <p> 1541 * Description: <b>The identity of a patient to search for guidance response results</b><br> 1542 * Type: <b>reference</b><br> 1543 * Path: <b>GuidanceResponse.subject</b><br> 1544 * </p> 1545 */ 1546 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 1547 1548/** 1549 * Constant for fluent queries to be used to add include statements. Specifies 1550 * the path value of "<b>GuidanceResponse:patient</b>". 1551 */ 1552 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("GuidanceResponse:patient").toLocked(); 1553 1554 /** 1555 * Search parameter: <b>subject</b> 1556 * <p> 1557 * Description: <b>The subject that the guidance response is about</b><br> 1558 * Type: <b>reference</b><br> 1559 * Path: <b>GuidanceResponse.subject</b><br> 1560 * </p> 1561 */ 1562 @SearchParamDefinition(name="subject", path="GuidanceResponse.subject", description="The subject that the guidance response is about", type="reference", target={Group.class, Patient.class } ) 1563 public static final String SP_SUBJECT = "subject"; 1564 /** 1565 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 1566 * <p> 1567 * Description: <b>The subject that the guidance response is about</b><br> 1568 * Type: <b>reference</b><br> 1569 * Path: <b>GuidanceResponse.subject</b><br> 1570 * </p> 1571 */ 1572 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 1573 1574/** 1575 * Constant for fluent queries to be used to add include statements. Specifies 1576 * the path value of "<b>GuidanceResponse:subject</b>". 1577 */ 1578 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("GuidanceResponse:subject").toLocked(); 1579 1580 1581}