
001package org.hl7.fhir.r4.model; 002 003/* 004 Copyright (c) 2011+, HL7, Inc. 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without modification, 008 are permitted provided that the following conditions are met: 009 010 * Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 * Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 * Neither the name of HL7 nor the names of its contributors may be used to 016 endorse or promote products derived from this software without specific 017 prior written permission. 018 019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 020 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 021 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 022 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 023 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 024 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 025 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 026 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 027 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 028 POSSIBILITY OF SUCH DAMAGE. 029 030*/ 031 032// Generated on Tue, May 12, 2020 07:26+1000 for FHIR v4.0.1 033import java.util.ArrayList; 034import java.util.Date; 035import java.util.List; 036 037import org.hl7.fhir.exceptions.FHIRException; 038import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 039import org.hl7.fhir.r4.model.Enumerations.PublicationStatus; 040import org.hl7.fhir.r4.model.Enumerations.PublicationStatusEnumFactory; 041import org.hl7.fhir.utilities.Utilities; 042 043import ca.uhn.fhir.model.api.annotation.Block; 044import ca.uhn.fhir.model.api.annotation.Child; 045import ca.uhn.fhir.model.api.annotation.ChildOrder; 046import ca.uhn.fhir.model.api.annotation.Description; 047import ca.uhn.fhir.model.api.annotation.ResourceDef; 048import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 049 050/** 051 * This resource allows for the definition of some activity to be performed, 052 * independent of a particular patient, practitioner, or other performance 053 * context. 054 */ 055@ResourceDef(name = "ActivityDefinition", profile = "http://hl7.org/fhir/StructureDefinition/ActivityDefinition") 056@ChildOrder(names = { "url", "identifier", "version", "name", "title", "subtitle", "status", "experimental", 057 "subject[x]", "date", "publisher", "contact", "description", "useContext", "jurisdiction", "purpose", "usage", 058 "copyright", "approvalDate", "lastReviewDate", "effectivePeriod", "topic", "author", "editor", "reviewer", 059 "endorser", "relatedArtifact", "library", "kind", "profile", "code", "intent", "priority", "doNotPerform", 060 "timing[x]", "location", "participant", "product[x]", "quantity", "dosage", "bodySite", "specimenRequirement", 061 "observationRequirement", "observationResultRequirement", "transform", "dynamicValue" }) 062public class ActivityDefinition extends MetadataResource { 063 064 public enum ActivityDefinitionKind { 065 /** 066 * A booking of a healthcare event among patient(s), practitioner(s), related 067 * person(s) and/or device(s) for a specific date/time. This may result in one 068 * or more Encounter(s). 069 */ 070 APPOINTMENT, 071 /** 072 * A reply to an appointment request for a patient and/or practitioner(s), such 073 * as a confirmation or rejection. 074 */ 075 APPOINTMENTRESPONSE, 076 /** 077 * Healthcare plan for patient or group. 078 */ 079 CAREPLAN, 080 /** 081 * Claim, Pre-determination or Pre-authorization. 082 */ 083 CLAIM, 084 /** 085 * A request for information to be sent to a receiver. 086 */ 087 COMMUNICATIONREQUEST, 088 /** 089 * Legal Agreement. 090 */ 091 CONTRACT, 092 /** 093 * Medical device request. 094 */ 095 DEVICEREQUEST, 096 /** 097 * Enrollment request. 098 */ 099 ENROLLMENTREQUEST, 100 /** 101 * Guidance or advice relating to an immunization. 102 */ 103 IMMUNIZATIONRECOMMENDATION, 104 /** 105 * Ordering of medication for patient or group. 106 */ 107 MEDICATIONREQUEST, 108 /** 109 * Diet, formula or nutritional supplement request. 110 */ 111 NUTRITIONORDER, 112 /** 113 * A record of a request for service such as diagnostic investigations, 114 * treatments, or operations to be performed. 115 */ 116 SERVICEREQUEST, 117 /** 118 * Request for a medication, substance or device. 119 */ 120 SUPPLYREQUEST, 121 /** 122 * A task to be performed. 123 */ 124 TASK, 125 /** 126 * Prescription for vision correction products for a patient. 127 */ 128 VISIONPRESCRIPTION, 129 /** 130 * added to help the parsers with the generic types 131 */ 132 NULL; 133 134 public static ActivityDefinitionKind fromCode(String codeString) throws FHIRException { 135 if (codeString == null || "".equals(codeString)) 136 return null; 137 if ("Appointment".equals(codeString)) 138 return APPOINTMENT; 139 if ("AppointmentResponse".equals(codeString)) 140 return APPOINTMENTRESPONSE; 141 if ("CarePlan".equals(codeString)) 142 return CAREPLAN; 143 if ("Claim".equals(codeString)) 144 return CLAIM; 145 if ("CommunicationRequest".equals(codeString)) 146 return COMMUNICATIONREQUEST; 147 if ("Contract".equals(codeString)) 148 return CONTRACT; 149 if ("DeviceRequest".equals(codeString)) 150 return DEVICEREQUEST; 151 if ("EnrollmentRequest".equals(codeString)) 152 return ENROLLMENTREQUEST; 153 if ("ImmunizationRecommendation".equals(codeString)) 154 return IMMUNIZATIONRECOMMENDATION; 155 if ("MedicationRequest".equals(codeString)) 156 return MEDICATIONREQUEST; 157 if ("NutritionOrder".equals(codeString)) 158 return NUTRITIONORDER; 159 if ("ServiceRequest".equals(codeString)) 160 return SERVICEREQUEST; 161 if ("SupplyRequest".equals(codeString)) 162 return SUPPLYREQUEST; 163 if ("Task".equals(codeString)) 164 return TASK; 165 if ("VisionPrescription".equals(codeString)) 166 return VISIONPRESCRIPTION; 167 if (Configuration.isAcceptInvalidEnums()) 168 return null; 169 else 170 throw new FHIRException("Unknown ActivityDefinitionKind code '" + codeString + "'"); 171 } 172 173 public String toCode() { 174 switch (this) { 175 case APPOINTMENT: 176 return "Appointment"; 177 case APPOINTMENTRESPONSE: 178 return "AppointmentResponse"; 179 case CAREPLAN: 180 return "CarePlan"; 181 case CLAIM: 182 return "Claim"; 183 case COMMUNICATIONREQUEST: 184 return "CommunicationRequest"; 185 case CONTRACT: 186 return "Contract"; 187 case DEVICEREQUEST: 188 return "DeviceRequest"; 189 case ENROLLMENTREQUEST: 190 return "EnrollmentRequest"; 191 case IMMUNIZATIONRECOMMENDATION: 192 return "ImmunizationRecommendation"; 193 case MEDICATIONREQUEST: 194 return "MedicationRequest"; 195 case NUTRITIONORDER: 196 return "NutritionOrder"; 197 case SERVICEREQUEST: 198 return "ServiceRequest"; 199 case SUPPLYREQUEST: 200 return "SupplyRequest"; 201 case TASK: 202 return "Task"; 203 case VISIONPRESCRIPTION: 204 return "VisionPrescription"; 205 case NULL: 206 return null; 207 default: 208 return "?"; 209 } 210 } 211 212 public String getSystem() { 213 switch (this) { 214 case APPOINTMENT: 215 return "http://hl7.org/fhir/request-resource-types"; 216 case APPOINTMENTRESPONSE: 217 return "http://hl7.org/fhir/request-resource-types"; 218 case CAREPLAN: 219 return "http://hl7.org/fhir/request-resource-types"; 220 case CLAIM: 221 return "http://hl7.org/fhir/request-resource-types"; 222 case COMMUNICATIONREQUEST: 223 return "http://hl7.org/fhir/request-resource-types"; 224 case CONTRACT: 225 return "http://hl7.org/fhir/request-resource-types"; 226 case DEVICEREQUEST: 227 return "http://hl7.org/fhir/request-resource-types"; 228 case ENROLLMENTREQUEST: 229 return "http://hl7.org/fhir/request-resource-types"; 230 case IMMUNIZATIONRECOMMENDATION: 231 return "http://hl7.org/fhir/request-resource-types"; 232 case MEDICATIONREQUEST: 233 return "http://hl7.org/fhir/request-resource-types"; 234 case NUTRITIONORDER: 235 return "http://hl7.org/fhir/request-resource-types"; 236 case SERVICEREQUEST: 237 return "http://hl7.org/fhir/request-resource-types"; 238 case SUPPLYREQUEST: 239 return "http://hl7.org/fhir/request-resource-types"; 240 case TASK: 241 return "http://hl7.org/fhir/request-resource-types"; 242 case VISIONPRESCRIPTION: 243 return "http://hl7.org/fhir/request-resource-types"; 244 case NULL: 245 return null; 246 default: 247 return "?"; 248 } 249 } 250 251 public String getDefinition() { 252 switch (this) { 253 case APPOINTMENT: 254 return "A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)."; 255 case APPOINTMENTRESPONSE: 256 return "A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection."; 257 case CAREPLAN: 258 return "Healthcare plan for patient or group."; 259 case CLAIM: 260 return "Claim, Pre-determination or Pre-authorization."; 261 case COMMUNICATIONREQUEST: 262 return "A request for information to be sent to a receiver."; 263 case CONTRACT: 264 return "Legal Agreement."; 265 case DEVICEREQUEST: 266 return "Medical device request."; 267 case ENROLLMENTREQUEST: 268 return "Enrollment request."; 269 case IMMUNIZATIONRECOMMENDATION: 270 return "Guidance or advice relating to an immunization."; 271 case MEDICATIONREQUEST: 272 return "Ordering of medication for patient or group."; 273 case NUTRITIONORDER: 274 return "Diet, formula or nutritional supplement request."; 275 case SERVICEREQUEST: 276 return "A record of a request for service such as diagnostic investigations, treatments, or operations to be performed."; 277 case SUPPLYREQUEST: 278 return "Request for a medication, substance or device."; 279 case TASK: 280 return "A task to be performed."; 281 case VISIONPRESCRIPTION: 282 return "Prescription for vision correction products for a patient."; 283 case NULL: 284 return null; 285 default: 286 return "?"; 287 } 288 } 289 290 public String getDisplay() { 291 switch (this) { 292 case APPOINTMENT: 293 return "Appointment"; 294 case APPOINTMENTRESPONSE: 295 return "AppointmentResponse"; 296 case CAREPLAN: 297 return "CarePlan"; 298 case CLAIM: 299 return "Claim"; 300 case COMMUNICATIONREQUEST: 301 return "CommunicationRequest"; 302 case CONTRACT: 303 return "Contract"; 304 case DEVICEREQUEST: 305 return "DeviceRequest"; 306 case ENROLLMENTREQUEST: 307 return "EnrollmentRequest"; 308 case IMMUNIZATIONRECOMMENDATION: 309 return "ImmunizationRecommendation"; 310 case MEDICATIONREQUEST: 311 return "MedicationRequest"; 312 case NUTRITIONORDER: 313 return "NutritionOrder"; 314 case SERVICEREQUEST: 315 return "ServiceRequest"; 316 case SUPPLYREQUEST: 317 return "SupplyRequest"; 318 case TASK: 319 return "Task"; 320 case VISIONPRESCRIPTION: 321 return "VisionPrescription"; 322 case NULL: 323 return null; 324 default: 325 return "?"; 326 } 327 } 328 } 329 330 public static class ActivityDefinitionKindEnumFactory implements EnumFactory<ActivityDefinitionKind> { 331 public ActivityDefinitionKind fromCode(String codeString) throws IllegalArgumentException { 332 if (codeString == null || "".equals(codeString)) 333 if (codeString == null || "".equals(codeString)) 334 return null; 335 if ("Appointment".equals(codeString)) 336 return ActivityDefinitionKind.APPOINTMENT; 337 if ("AppointmentResponse".equals(codeString)) 338 return ActivityDefinitionKind.APPOINTMENTRESPONSE; 339 if ("CarePlan".equals(codeString)) 340 return ActivityDefinitionKind.CAREPLAN; 341 if ("Claim".equals(codeString)) 342 return ActivityDefinitionKind.CLAIM; 343 if ("CommunicationRequest".equals(codeString)) 344 return ActivityDefinitionKind.COMMUNICATIONREQUEST; 345 if ("Contract".equals(codeString)) 346 return ActivityDefinitionKind.CONTRACT; 347 if ("DeviceRequest".equals(codeString)) 348 return ActivityDefinitionKind.DEVICEREQUEST; 349 if ("EnrollmentRequest".equals(codeString)) 350 return ActivityDefinitionKind.ENROLLMENTREQUEST; 351 if ("ImmunizationRecommendation".equals(codeString)) 352 return ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION; 353 if ("MedicationRequest".equals(codeString)) 354 return ActivityDefinitionKind.MEDICATIONREQUEST; 355 if ("NutritionOrder".equals(codeString)) 356 return ActivityDefinitionKind.NUTRITIONORDER; 357 if ("ServiceRequest".equals(codeString)) 358 return ActivityDefinitionKind.SERVICEREQUEST; 359 if ("SupplyRequest".equals(codeString)) 360 return ActivityDefinitionKind.SUPPLYREQUEST; 361 if ("Task".equals(codeString)) 362 return ActivityDefinitionKind.TASK; 363 if ("VisionPrescription".equals(codeString)) 364 return ActivityDefinitionKind.VISIONPRESCRIPTION; 365 throw new IllegalArgumentException("Unknown ActivityDefinitionKind code '" + codeString + "'"); 366 } 367 368 public Enumeration<ActivityDefinitionKind> fromType(PrimitiveType<?> code) throws FHIRException { 369 if (code == null) 370 return null; 371 if (code.isEmpty()) 372 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.NULL, code); 373 String codeString = code.asStringValue(); 374 if (codeString == null || "".equals(codeString)) 375 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.NULL, code); 376 if ("Appointment".equals(codeString)) 377 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.APPOINTMENT, code); 378 if ("AppointmentResponse".equals(codeString)) 379 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.APPOINTMENTRESPONSE, code); 380 if ("CarePlan".equals(codeString)) 381 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.CAREPLAN, code); 382 if ("Claim".equals(codeString)) 383 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.CLAIM, code); 384 if ("CommunicationRequest".equals(codeString)) 385 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.COMMUNICATIONREQUEST, code); 386 if ("Contract".equals(codeString)) 387 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.CONTRACT, code); 388 if ("DeviceRequest".equals(codeString)) 389 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.DEVICEREQUEST, code); 390 if ("EnrollmentRequest".equals(codeString)) 391 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.ENROLLMENTREQUEST, code); 392 if ("ImmunizationRecommendation".equals(codeString)) 393 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION, code); 394 if ("MedicationRequest".equals(codeString)) 395 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.MEDICATIONREQUEST, code); 396 if ("NutritionOrder".equals(codeString)) 397 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.NUTRITIONORDER, code); 398 if ("ServiceRequest".equals(codeString)) 399 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.SERVICEREQUEST, code); 400 if ("SupplyRequest".equals(codeString)) 401 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.SUPPLYREQUEST, code); 402 if ("Task".equals(codeString)) 403 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.TASK, code); 404 if ("VisionPrescription".equals(codeString)) 405 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.VISIONPRESCRIPTION, code); 406 throw new FHIRException("Unknown ActivityDefinitionKind code '" + codeString + "'"); 407 } 408 409 public String toCode(ActivityDefinitionKind code) { 410 if (code == ActivityDefinitionKind.NULL) 411 return null; 412 if (code == ActivityDefinitionKind.APPOINTMENT) 413 return "Appointment"; 414 if (code == ActivityDefinitionKind.APPOINTMENTRESPONSE) 415 return "AppointmentResponse"; 416 if (code == ActivityDefinitionKind.CAREPLAN) 417 return "CarePlan"; 418 if (code == ActivityDefinitionKind.CLAIM) 419 return "Claim"; 420 if (code == ActivityDefinitionKind.COMMUNICATIONREQUEST) 421 return "CommunicationRequest"; 422 if (code == ActivityDefinitionKind.CONTRACT) 423 return "Contract"; 424 if (code == ActivityDefinitionKind.DEVICEREQUEST) 425 return "DeviceRequest"; 426 if (code == ActivityDefinitionKind.ENROLLMENTREQUEST) 427 return "EnrollmentRequest"; 428 if (code == ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION) 429 return "ImmunizationRecommendation"; 430 if (code == ActivityDefinitionKind.MEDICATIONREQUEST) 431 return "MedicationRequest"; 432 if (code == ActivityDefinitionKind.NUTRITIONORDER) 433 return "NutritionOrder"; 434 if (code == ActivityDefinitionKind.SERVICEREQUEST) 435 return "ServiceRequest"; 436 if (code == ActivityDefinitionKind.SUPPLYREQUEST) 437 return "SupplyRequest"; 438 if (code == ActivityDefinitionKind.TASK) 439 return "Task"; 440 if (code == ActivityDefinitionKind.VISIONPRESCRIPTION) 441 return "VisionPrescription"; 442 return "?"; 443 } 444 445 public String toSystem(ActivityDefinitionKind code) { 446 return code.getSystem(); 447 } 448 } 449 450 public enum RequestIntent { 451 /** 452 * The request is a suggestion made by someone/something that does not have an 453 * intention to ensure it occurs and without providing an authorization to act. 454 */ 455 PROPOSAL, 456 /** 457 * The request represents an intention to ensure something occurs without 458 * providing an authorization for others to act. 459 */ 460 PLAN, 461 /** 462 * The request represents a legally binding instruction authored by a Patient or 463 * RelatedPerson. 464 */ 465 DIRECTIVE, 466 /** 467 * The request represents a request/demand and authorization for action by a 468 * Practitioner. 469 */ 470 ORDER, 471 /** 472 * The request represents an original authorization for action. 473 */ 474 ORIGINALORDER, 475 /** 476 * The request represents an automatically generated supplemental authorization 477 * for action based on a parent authorization together with initial results of 478 * the action taken against that parent authorization. 479 */ 480 REFLEXORDER, 481 /** 482 * The request represents the view of an authorization instantiated by a 483 * fulfilling system representing the details of the fulfiller's intention to 484 * act upon a submitted order. 485 */ 486 FILLERORDER, 487 /** 488 * An order created in fulfillment of a broader order that represents the 489 * authorization for a single activity occurrence. E.g. The administration of a 490 * single dose of a drug. 491 */ 492 INSTANCEORDER, 493 /** 494 * The request represents a component or option for a RequestGroup that 495 * establishes timing, conditionality and/or other constraints among a set of 496 * requests. Refer to [[[RequestGroup]]] for additional information on how this 497 * status is used. 498 */ 499 OPTION, 500 /** 501 * added to help the parsers with the generic types 502 */ 503 NULL; 504 505 public static RequestIntent fromCode(String codeString) throws FHIRException { 506 if (codeString == null || "".equals(codeString)) 507 return null; 508 if ("proposal".equals(codeString)) 509 return PROPOSAL; 510 if ("plan".equals(codeString)) 511 return PLAN; 512 if ("directive".equals(codeString)) 513 return DIRECTIVE; 514 if ("order".equals(codeString)) 515 return ORDER; 516 if ("original-order".equals(codeString)) 517 return ORIGINALORDER; 518 if ("reflex-order".equals(codeString)) 519 return REFLEXORDER; 520 if ("filler-order".equals(codeString)) 521 return FILLERORDER; 522 if ("instance-order".equals(codeString)) 523 return INSTANCEORDER; 524 if ("option".equals(codeString)) 525 return OPTION; 526 if (Configuration.isAcceptInvalidEnums()) 527 return null; 528 else 529 throw new FHIRException("Unknown RequestIntent code '" + codeString + "'"); 530 } 531 532 public String toCode() { 533 switch (this) { 534 case PROPOSAL: 535 return "proposal"; 536 case PLAN: 537 return "plan"; 538 case DIRECTIVE: 539 return "directive"; 540 case ORDER: 541 return "order"; 542 case ORIGINALORDER: 543 return "original-order"; 544 case REFLEXORDER: 545 return "reflex-order"; 546 case FILLERORDER: 547 return "filler-order"; 548 case INSTANCEORDER: 549 return "instance-order"; 550 case OPTION: 551 return "option"; 552 case NULL: 553 return null; 554 default: 555 return "?"; 556 } 557 } 558 559 public String getSystem() { 560 switch (this) { 561 case PROPOSAL: 562 return "http://hl7.org/fhir/request-intent"; 563 case PLAN: 564 return "http://hl7.org/fhir/request-intent"; 565 case DIRECTIVE: 566 return "http://hl7.org/fhir/request-intent"; 567 case ORDER: 568 return "http://hl7.org/fhir/request-intent"; 569 case ORIGINALORDER: 570 return "http://hl7.org/fhir/request-intent"; 571 case REFLEXORDER: 572 return "http://hl7.org/fhir/request-intent"; 573 case FILLERORDER: 574 return "http://hl7.org/fhir/request-intent"; 575 case INSTANCEORDER: 576 return "http://hl7.org/fhir/request-intent"; 577 case OPTION: 578 return "http://hl7.org/fhir/request-intent"; 579 case NULL: 580 return null; 581 default: 582 return "?"; 583 } 584 } 585 586 public String getDefinition() { 587 switch (this) { 588 case PROPOSAL: 589 return "The request is a suggestion made by someone/something that does not have an intention to ensure it occurs and without providing an authorization to act."; 590 case PLAN: 591 return "The request represents an intention to ensure something occurs without providing an authorization for others to act."; 592 case DIRECTIVE: 593 return "The request represents a legally binding instruction authored by a Patient or RelatedPerson."; 594 case ORDER: 595 return "The request represents a request/demand and authorization for action by a Practitioner."; 596 case ORIGINALORDER: 597 return "The request represents an original authorization for action."; 598 case REFLEXORDER: 599 return "The request represents an automatically generated supplemental authorization for action based on a parent authorization together with initial results of the action taken against that parent authorization."; 600 case FILLERORDER: 601 return "The request represents the view of an authorization instantiated by a fulfilling system representing the details of the fulfiller's intention to act upon a submitted order."; 602 case INSTANCEORDER: 603 return "An order created in fulfillment of a broader order that represents the authorization for a single activity occurrence. E.g. The administration of a single dose of a drug."; 604 case OPTION: 605 return "The request represents a component or option for a RequestGroup that establishes timing, conditionality and/or other constraints among a set of requests. Refer to [[[RequestGroup]]] for additional information on how this status is used."; 606 case NULL: 607 return null; 608 default: 609 return "?"; 610 } 611 } 612 613 public String getDisplay() { 614 switch (this) { 615 case PROPOSAL: 616 return "Proposal"; 617 case PLAN: 618 return "Plan"; 619 case DIRECTIVE: 620 return "Directive"; 621 case ORDER: 622 return "Order"; 623 case ORIGINALORDER: 624 return "Original Order"; 625 case REFLEXORDER: 626 return "Reflex Order"; 627 case FILLERORDER: 628 return "Filler Order"; 629 case INSTANCEORDER: 630 return "Instance Order"; 631 case OPTION: 632 return "Option"; 633 case NULL: 634 return null; 635 default: 636 return "?"; 637 } 638 } 639 } 640 641 public static class RequestIntentEnumFactory implements EnumFactory<RequestIntent> { 642 public RequestIntent fromCode(String codeString) throws IllegalArgumentException { 643 if (codeString == null || "".equals(codeString)) 644 if (codeString == null || "".equals(codeString)) 645 return null; 646 if ("proposal".equals(codeString)) 647 return RequestIntent.PROPOSAL; 648 if ("plan".equals(codeString)) 649 return RequestIntent.PLAN; 650 if ("directive".equals(codeString)) 651 return RequestIntent.DIRECTIVE; 652 if ("order".equals(codeString)) 653 return RequestIntent.ORDER; 654 if ("original-order".equals(codeString)) 655 return RequestIntent.ORIGINALORDER; 656 if ("reflex-order".equals(codeString)) 657 return RequestIntent.REFLEXORDER; 658 if ("filler-order".equals(codeString)) 659 return RequestIntent.FILLERORDER; 660 if ("instance-order".equals(codeString)) 661 return RequestIntent.INSTANCEORDER; 662 if ("option".equals(codeString)) 663 return RequestIntent.OPTION; 664 throw new IllegalArgumentException("Unknown RequestIntent code '" + codeString + "'"); 665 } 666 667 public Enumeration<RequestIntent> fromType(PrimitiveType<?> code) throws FHIRException { 668 if (code == null) 669 return null; 670 if (code.isEmpty()) 671 return new Enumeration<RequestIntent>(this, RequestIntent.NULL, code); 672 String codeString = code.asStringValue(); 673 if (codeString == null || "".equals(codeString)) 674 return new Enumeration<RequestIntent>(this, RequestIntent.NULL, code); 675 if ("proposal".equals(codeString)) 676 return new Enumeration<RequestIntent>(this, RequestIntent.PROPOSAL, code); 677 if ("plan".equals(codeString)) 678 return new Enumeration<RequestIntent>(this, RequestIntent.PLAN, code); 679 if ("directive".equals(codeString)) 680 return new Enumeration<RequestIntent>(this, RequestIntent.DIRECTIVE, code); 681 if ("order".equals(codeString)) 682 return new Enumeration<RequestIntent>(this, RequestIntent.ORDER, code); 683 if ("original-order".equals(codeString)) 684 return new Enumeration<RequestIntent>(this, RequestIntent.ORIGINALORDER, code); 685 if ("reflex-order".equals(codeString)) 686 return new Enumeration<RequestIntent>(this, RequestIntent.REFLEXORDER, code); 687 if ("filler-order".equals(codeString)) 688 return new Enumeration<RequestIntent>(this, RequestIntent.FILLERORDER, code); 689 if ("instance-order".equals(codeString)) 690 return new Enumeration<RequestIntent>(this, RequestIntent.INSTANCEORDER, code); 691 if ("option".equals(codeString)) 692 return new Enumeration<RequestIntent>(this, RequestIntent.OPTION, code); 693 throw new FHIRException("Unknown RequestIntent code '" + codeString + "'"); 694 } 695 696 public String toCode(RequestIntent code) { 697 if (code == RequestIntent.NULL) 698 return null; 699 if (code == RequestIntent.PROPOSAL) 700 return "proposal"; 701 if (code == RequestIntent.PLAN) 702 return "plan"; 703 if (code == RequestIntent.DIRECTIVE) 704 return "directive"; 705 if (code == RequestIntent.ORDER) 706 return "order"; 707 if (code == RequestIntent.ORIGINALORDER) 708 return "original-order"; 709 if (code == RequestIntent.REFLEXORDER) 710 return "reflex-order"; 711 if (code == RequestIntent.FILLERORDER) 712 return "filler-order"; 713 if (code == RequestIntent.INSTANCEORDER) 714 return "instance-order"; 715 if (code == RequestIntent.OPTION) 716 return "option"; 717 return "?"; 718 } 719 720 public String toSystem(RequestIntent code) { 721 return code.getSystem(); 722 } 723 } 724 725 public enum RequestPriority { 726 /** 727 * The request has normal priority. 728 */ 729 ROUTINE, 730 /** 731 * The request should be actioned promptly - higher priority than routine. 732 */ 733 URGENT, 734 /** 735 * The request should be actioned as soon as possible - higher priority than 736 * urgent. 737 */ 738 ASAP, 739 /** 740 * The request should be actioned immediately - highest possible priority. E.g. 741 * an emergency. 742 */ 743 STAT, 744 /** 745 * added to help the parsers with the generic types 746 */ 747 NULL; 748 749 public static RequestPriority fromCode(String codeString) throws FHIRException { 750 if (codeString == null || "".equals(codeString)) 751 return null; 752 if ("routine".equals(codeString)) 753 return ROUTINE; 754 if ("urgent".equals(codeString)) 755 return URGENT; 756 if ("asap".equals(codeString)) 757 return ASAP; 758 if ("stat".equals(codeString)) 759 return STAT; 760 if (Configuration.isAcceptInvalidEnums()) 761 return null; 762 else 763 throw new FHIRException("Unknown RequestPriority code '" + codeString + "'"); 764 } 765 766 public String toCode() { 767 switch (this) { 768 case ROUTINE: 769 return "routine"; 770 case URGENT: 771 return "urgent"; 772 case ASAP: 773 return "asap"; 774 case STAT: 775 return "stat"; 776 case NULL: 777 return null; 778 default: 779 return "?"; 780 } 781 } 782 783 public String getSystem() { 784 switch (this) { 785 case ROUTINE: 786 return "http://hl7.org/fhir/request-priority"; 787 case URGENT: 788 return "http://hl7.org/fhir/request-priority"; 789 case ASAP: 790 return "http://hl7.org/fhir/request-priority"; 791 case STAT: 792 return "http://hl7.org/fhir/request-priority"; 793 case NULL: 794 return null; 795 default: 796 return "?"; 797 } 798 } 799 800 public String getDefinition() { 801 switch (this) { 802 case ROUTINE: 803 return "The request has normal priority."; 804 case URGENT: 805 return "The request should be actioned promptly - higher priority than routine."; 806 case ASAP: 807 return "The request should be actioned as soon as possible - higher priority than urgent."; 808 case STAT: 809 return "The request should be actioned immediately - highest possible priority. E.g. an emergency."; 810 case NULL: 811 return null; 812 default: 813 return "?"; 814 } 815 } 816 817 public String getDisplay() { 818 switch (this) { 819 case ROUTINE: 820 return "Routine"; 821 case URGENT: 822 return "Urgent"; 823 case ASAP: 824 return "ASAP"; 825 case STAT: 826 return "STAT"; 827 case NULL: 828 return null; 829 default: 830 return "?"; 831 } 832 } 833 } 834 835 public static class RequestPriorityEnumFactory implements EnumFactory<RequestPriority> { 836 public RequestPriority fromCode(String codeString) throws IllegalArgumentException { 837 if (codeString == null || "".equals(codeString)) 838 if (codeString == null || "".equals(codeString)) 839 return null; 840 if ("routine".equals(codeString)) 841 return RequestPriority.ROUTINE; 842 if ("urgent".equals(codeString)) 843 return RequestPriority.URGENT; 844 if ("asap".equals(codeString)) 845 return RequestPriority.ASAP; 846 if ("stat".equals(codeString)) 847 return RequestPriority.STAT; 848 throw new IllegalArgumentException("Unknown RequestPriority code '" + codeString + "'"); 849 } 850 851 public Enumeration<RequestPriority> fromType(PrimitiveType<?> code) throws FHIRException { 852 if (code == null) 853 return null; 854 if (code.isEmpty()) 855 return new Enumeration<RequestPriority>(this, RequestPriority.NULL, code); 856 String codeString = code.asStringValue(); 857 if (codeString == null || "".equals(codeString)) 858 return new Enumeration<RequestPriority>(this, RequestPriority.NULL, code); 859 if ("routine".equals(codeString)) 860 return new Enumeration<RequestPriority>(this, RequestPriority.ROUTINE, code); 861 if ("urgent".equals(codeString)) 862 return new Enumeration<RequestPriority>(this, RequestPriority.URGENT, code); 863 if ("asap".equals(codeString)) 864 return new Enumeration<RequestPriority>(this, RequestPriority.ASAP, code); 865 if ("stat".equals(codeString)) 866 return new Enumeration<RequestPriority>(this, RequestPriority.STAT, code); 867 throw new FHIRException("Unknown RequestPriority code '" + codeString + "'"); 868 } 869 870 public String toCode(RequestPriority code) { 871 if (code == RequestPriority.NULL) 872 return null; 873 if (code == RequestPriority.ROUTINE) 874 return "routine"; 875 if (code == RequestPriority.URGENT) 876 return "urgent"; 877 if (code == RequestPriority.ASAP) 878 return "asap"; 879 if (code == RequestPriority.STAT) 880 return "stat"; 881 return "?"; 882 } 883 884 public String toSystem(RequestPriority code) { 885 return code.getSystem(); 886 } 887 } 888 889 public enum ActivityParticipantType { 890 /** 891 * The participant is the patient under evaluation. 892 */ 893 PATIENT, 894 /** 895 * The participant is a practitioner involved in the patient's care. 896 */ 897 PRACTITIONER, 898 /** 899 * The participant is a person related to the patient. 900 */ 901 RELATEDPERSON, 902 /** 903 * The participant is a system or device used in the care of the patient. 904 */ 905 DEVICE, 906 /** 907 * added to help the parsers with the generic types 908 */ 909 NULL; 910 911 public static ActivityParticipantType fromCode(String codeString) throws FHIRException { 912 if (codeString == null || "".equals(codeString)) 913 return null; 914 if ("patient".equals(codeString)) 915 return PATIENT; 916 if ("practitioner".equals(codeString)) 917 return PRACTITIONER; 918 if ("related-person".equals(codeString)) 919 return RELATEDPERSON; 920 if ("device".equals(codeString)) 921 return DEVICE; 922 if (Configuration.isAcceptInvalidEnums()) 923 return null; 924 else 925 throw new FHIRException("Unknown ActivityParticipantType code '" + codeString + "'"); 926 } 927 928 public String toCode() { 929 switch (this) { 930 case PATIENT: 931 return "patient"; 932 case PRACTITIONER: 933 return "practitioner"; 934 case RELATEDPERSON: 935 return "related-person"; 936 case DEVICE: 937 return "device"; 938 case NULL: 939 return null; 940 default: 941 return "?"; 942 } 943 } 944 945 public String getSystem() { 946 switch (this) { 947 case PATIENT: 948 return "http://hl7.org/fhir/action-participant-type"; 949 case PRACTITIONER: 950 return "http://hl7.org/fhir/action-participant-type"; 951 case RELATEDPERSON: 952 return "http://hl7.org/fhir/action-participant-type"; 953 case DEVICE: 954 return "http://hl7.org/fhir/action-participant-type"; 955 case NULL: 956 return null; 957 default: 958 return "?"; 959 } 960 } 961 962 public String getDefinition() { 963 switch (this) { 964 case PATIENT: 965 return "The participant is the patient under evaluation."; 966 case PRACTITIONER: 967 return "The participant is a practitioner involved in the patient's care."; 968 case RELATEDPERSON: 969 return "The participant is a person related to the patient."; 970 case DEVICE: 971 return "The participant is a system or device used in the care of the patient."; 972 case NULL: 973 return null; 974 default: 975 return "?"; 976 } 977 } 978 979 public String getDisplay() { 980 switch (this) { 981 case PATIENT: 982 return "Patient"; 983 case PRACTITIONER: 984 return "Practitioner"; 985 case RELATEDPERSON: 986 return "Related Person"; 987 case DEVICE: 988 return "Device"; 989 case NULL: 990 return null; 991 default: 992 return "?"; 993 } 994 } 995 } 996 997 public static class ActivityParticipantTypeEnumFactory implements EnumFactory<ActivityParticipantType> { 998 public ActivityParticipantType fromCode(String codeString) throws IllegalArgumentException { 999 if (codeString == null || "".equals(codeString)) 1000 if (codeString == null || "".equals(codeString)) 1001 return null; 1002 if ("patient".equals(codeString)) 1003 return ActivityParticipantType.PATIENT; 1004 if ("practitioner".equals(codeString)) 1005 return ActivityParticipantType.PRACTITIONER; 1006 if ("related-person".equals(codeString)) 1007 return ActivityParticipantType.RELATEDPERSON; 1008 if ("device".equals(codeString)) 1009 return ActivityParticipantType.DEVICE; 1010 throw new IllegalArgumentException("Unknown ActivityParticipantType code '" + codeString + "'"); 1011 } 1012 1013 public Enumeration<ActivityParticipantType> fromType(PrimitiveType<?> code) throws FHIRException { 1014 if (code == null) 1015 return null; 1016 if (code.isEmpty()) 1017 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.NULL, code); 1018 String codeString = code.asStringValue(); 1019 if (codeString == null || "".equals(codeString)) 1020 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.NULL, code); 1021 if ("patient".equals(codeString)) 1022 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.PATIENT, code); 1023 if ("practitioner".equals(codeString)) 1024 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.PRACTITIONER, code); 1025 if ("related-person".equals(codeString)) 1026 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.RELATEDPERSON, code); 1027 if ("device".equals(codeString)) 1028 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.DEVICE, code); 1029 throw new FHIRException("Unknown ActivityParticipantType code '" + codeString + "'"); 1030 } 1031 1032 public String toCode(ActivityParticipantType code) { 1033 if (code == ActivityParticipantType.NULL) 1034 return null; 1035 if (code == ActivityParticipantType.PATIENT) 1036 return "patient"; 1037 if (code == ActivityParticipantType.PRACTITIONER) 1038 return "practitioner"; 1039 if (code == ActivityParticipantType.RELATEDPERSON) 1040 return "related-person"; 1041 if (code == ActivityParticipantType.DEVICE) 1042 return "device"; 1043 return "?"; 1044 } 1045 1046 public String toSystem(ActivityParticipantType code) { 1047 return code.getSystem(); 1048 } 1049 } 1050 1051 @Block() 1052 public static class ActivityDefinitionParticipantComponent extends BackboneElement implements IBaseBackboneElement { 1053 /** 1054 * The type of participant in the action. 1055 */ 1056 @Child(name = "type", type = { CodeType.class }, order = 1, min = 1, max = 1, modifier = false, summary = false) 1057 @Description(shortDefinition = "patient | practitioner | related-person | device", formalDefinition = "The type of participant in the action.") 1058 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/action-participant-type") 1059 protected Enumeration<ActivityParticipantType> type; 1060 1061 /** 1062 * The role the participant should play in performing the described action. 1063 */ 1064 @Child(name = "role", type = { 1065 CodeableConcept.class }, order = 2, min = 0, max = 1, modifier = false, summary = false) 1066 @Description(shortDefinition = "E.g. Nurse, Surgeon, Parent, etc.", formalDefinition = "The role the participant should play in performing the described action.") 1067 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/action-participant-role") 1068 protected CodeableConcept role; 1069 1070 private static final long serialVersionUID = -1450932564L; 1071 1072 /** 1073 * Constructor 1074 */ 1075 public ActivityDefinitionParticipantComponent() { 1076 super(); 1077 } 1078 1079 /** 1080 * Constructor 1081 */ 1082 public ActivityDefinitionParticipantComponent(Enumeration<ActivityParticipantType> type) { 1083 super(); 1084 this.type = type; 1085 } 1086 1087 /** 1088 * @return {@link #type} (The type of participant in the action.). This is the 1089 * underlying object with id, value and extensions. The accessor 1090 * "getType" gives direct access to the value 1091 */ 1092 public Enumeration<ActivityParticipantType> getTypeElement() { 1093 if (this.type == null) 1094 if (Configuration.errorOnAutoCreate()) 1095 throw new Error("Attempt to auto-create ActivityDefinitionParticipantComponent.type"); 1096 else if (Configuration.doAutoCreate()) 1097 this.type = new Enumeration<ActivityParticipantType>(new ActivityParticipantTypeEnumFactory()); // bb 1098 return this.type; 1099 } 1100 1101 public boolean hasTypeElement() { 1102 return this.type != null && !this.type.isEmpty(); 1103 } 1104 1105 public boolean hasType() { 1106 return this.type != null && !this.type.isEmpty(); 1107 } 1108 1109 /** 1110 * @param value {@link #type} (The type of participant in the action.). This is 1111 * the underlying object with id, value and extensions. The 1112 * accessor "getType" gives direct access to the value 1113 */ 1114 public ActivityDefinitionParticipantComponent setTypeElement(Enumeration<ActivityParticipantType> value) { 1115 this.type = value; 1116 return this; 1117 } 1118 1119 /** 1120 * @return The type of participant in the action. 1121 */ 1122 public ActivityParticipantType getType() { 1123 return this.type == null ? null : this.type.getValue(); 1124 } 1125 1126 /** 1127 * @param value The type of participant in the action. 1128 */ 1129 public ActivityDefinitionParticipantComponent setType(ActivityParticipantType value) { 1130 if (this.type == null) 1131 this.type = new Enumeration<ActivityParticipantType>(new ActivityParticipantTypeEnumFactory()); 1132 this.type.setValue(value); 1133 return this; 1134 } 1135 1136 /** 1137 * @return {@link #role} (The role the participant should play in performing the 1138 * described action.) 1139 */ 1140 public CodeableConcept getRole() { 1141 if (this.role == null) 1142 if (Configuration.errorOnAutoCreate()) 1143 throw new Error("Attempt to auto-create ActivityDefinitionParticipantComponent.role"); 1144 else if (Configuration.doAutoCreate()) 1145 this.role = new CodeableConcept(); // cc 1146 return this.role; 1147 } 1148 1149 public boolean hasRole() { 1150 return this.role != null && !this.role.isEmpty(); 1151 } 1152 1153 /** 1154 * @param value {@link #role} (The role the participant should play in 1155 * performing the described action.) 1156 */ 1157 public ActivityDefinitionParticipantComponent setRole(CodeableConcept value) { 1158 this.role = value; 1159 return this; 1160 } 1161 1162 protected void listChildren(List<Property> children) { 1163 super.listChildren(children); 1164 children.add(new Property("type", "code", "The type of participant in the action.", 0, 1, type)); 1165 children.add(new Property("role", "CodeableConcept", 1166 "The role the participant should play in performing the described action.", 0, 1, role)); 1167 } 1168 1169 @Override 1170 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1171 switch (_hash) { 1172 case 3575610: 1173 /* type */ return new Property("type", "code", "The type of participant in the action.", 0, 1, type); 1174 case 3506294: 1175 /* role */ return new Property("role", "CodeableConcept", 1176 "The role the participant should play in performing the described action.", 0, 1, role); 1177 default: 1178 return super.getNamedProperty(_hash, _name, _checkValid); 1179 } 1180 1181 } 1182 1183 @Override 1184 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1185 switch (hash) { 1186 case 3575610: 1187 /* type */ return this.type == null ? new Base[0] : new Base[] { this.type }; // Enumeration<ActivityParticipantType> 1188 case 3506294: 1189 /* role */ return this.role == null ? new Base[0] : new Base[] { this.role }; // CodeableConcept 1190 default: 1191 return super.getProperty(hash, name, checkValid); 1192 } 1193 1194 } 1195 1196 @Override 1197 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1198 switch (hash) { 1199 case 3575610: // type 1200 value = new ActivityParticipantTypeEnumFactory().fromType(castToCode(value)); 1201 this.type = (Enumeration) value; // Enumeration<ActivityParticipantType> 1202 return value; 1203 case 3506294: // role 1204 this.role = castToCodeableConcept(value); // CodeableConcept 1205 return value; 1206 default: 1207 return super.setProperty(hash, name, value); 1208 } 1209 1210 } 1211 1212 @Override 1213 public Base setProperty(String name, Base value) throws FHIRException { 1214 if (name.equals("type")) { 1215 value = new ActivityParticipantTypeEnumFactory().fromType(castToCode(value)); 1216 this.type = (Enumeration) value; // Enumeration<ActivityParticipantType> 1217 } else if (name.equals("role")) { 1218 this.role = castToCodeableConcept(value); // CodeableConcept 1219 } else 1220 return super.setProperty(name, value); 1221 return value; 1222 } 1223 1224 @Override 1225 public void removeChild(String name, Base value) throws FHIRException { 1226 if (name.equals("type")) { 1227 this.type = null; 1228 } else if (name.equals("role")) { 1229 this.role = null; 1230 } else 1231 super.removeChild(name, value); 1232 1233 } 1234 1235 @Override 1236 public Base makeProperty(int hash, String name) throws FHIRException { 1237 switch (hash) { 1238 case 3575610: 1239 return getTypeElement(); 1240 case 3506294: 1241 return getRole(); 1242 default: 1243 return super.makeProperty(hash, name); 1244 } 1245 1246 } 1247 1248 @Override 1249 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1250 switch (hash) { 1251 case 3575610: 1252 /* type */ return new String[] { "code" }; 1253 case 3506294: 1254 /* role */ return new String[] { "CodeableConcept" }; 1255 default: 1256 return super.getTypesForProperty(hash, name); 1257 } 1258 1259 } 1260 1261 @Override 1262 public Base addChild(String name) throws FHIRException { 1263 if (name.equals("type")) { 1264 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.type"); 1265 } else if (name.equals("role")) { 1266 this.role = new CodeableConcept(); 1267 return this.role; 1268 } else 1269 return super.addChild(name); 1270 } 1271 1272 public ActivityDefinitionParticipantComponent copy() { 1273 ActivityDefinitionParticipantComponent dst = new ActivityDefinitionParticipantComponent(); 1274 copyValues(dst); 1275 return dst; 1276 } 1277 1278 public void copyValues(ActivityDefinitionParticipantComponent dst) { 1279 super.copyValues(dst); 1280 dst.type = type == null ? null : type.copy(); 1281 dst.role = role == null ? null : role.copy(); 1282 } 1283 1284 @Override 1285 public boolean equalsDeep(Base other_) { 1286 if (!super.equalsDeep(other_)) 1287 return false; 1288 if (!(other_ instanceof ActivityDefinitionParticipantComponent)) 1289 return false; 1290 ActivityDefinitionParticipantComponent o = (ActivityDefinitionParticipantComponent) other_; 1291 return compareDeep(type, o.type, true) && compareDeep(role, o.role, true); 1292 } 1293 1294 @Override 1295 public boolean equalsShallow(Base other_) { 1296 if (!super.equalsShallow(other_)) 1297 return false; 1298 if (!(other_ instanceof ActivityDefinitionParticipantComponent)) 1299 return false; 1300 ActivityDefinitionParticipantComponent o = (ActivityDefinitionParticipantComponent) other_; 1301 return compareValues(type, o.type, true); 1302 } 1303 1304 public boolean isEmpty() { 1305 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, role); 1306 } 1307 1308 public String fhirType() { 1309 return "ActivityDefinition.participant"; 1310 1311 } 1312 1313 } 1314 1315 @Block() 1316 public static class ActivityDefinitionDynamicValueComponent extends BackboneElement implements IBaseBackboneElement { 1317 /** 1318 * The path to the element to be customized. This is the path on the resource 1319 * that will hold the result of the calculation defined by the expression. The 1320 * specified path SHALL be a FHIRPath resolveable on the specified target type 1321 * of the ActivityDefinition, and SHALL consist only of identifiers, constant 1322 * indexers, and a restricted subset of functions. The path is allowed to 1323 * contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to 1324 * traverse multiple-cardinality sub-elements (see the [Simple FHIRPath 1325 * Profile](fhirpath.html#simple) for full details). 1326 */ 1327 @Child(name = "path", type = { StringType.class }, order = 1, min = 1, max = 1, modifier = false, summary = false) 1328 @Description(shortDefinition = "The path to the element to be set dynamically", formalDefinition = "The path to the element to be customized. This is the path on the resource that will hold the result of the calculation defined by the expression. The specified path SHALL be a FHIRPath resolveable on the specified target type of the ActivityDefinition, and SHALL consist only of identifiers, constant indexers, and a restricted subset of functions. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details).") 1329 protected StringType path; 1330 1331 /** 1332 * An expression specifying the value of the customized element. 1333 */ 1334 @Child(name = "expression", type = { 1335 Expression.class }, order = 2, min = 1, max = 1, modifier = false, summary = false) 1336 @Description(shortDefinition = "An expression that provides the dynamic value for the customization", formalDefinition = "An expression specifying the value of the customized element.") 1337 protected Expression expression; 1338 1339 private static final long serialVersionUID = 1064529082L; 1340 1341 /** 1342 * Constructor 1343 */ 1344 public ActivityDefinitionDynamicValueComponent() { 1345 super(); 1346 } 1347 1348 /** 1349 * Constructor 1350 */ 1351 public ActivityDefinitionDynamicValueComponent(StringType path, Expression expression) { 1352 super(); 1353 this.path = path; 1354 this.expression = expression; 1355 } 1356 1357 /** 1358 * @return {@link #path} (The path to the element to be customized. This is the 1359 * path on the resource that will hold the result of the calculation 1360 * defined by the expression. The specified path SHALL be a FHIRPath 1361 * resolveable on the specified target type of the ActivityDefinition, 1362 * and SHALL consist only of identifiers, constant indexers, and a 1363 * restricted subset of functions. The path is allowed to contain 1364 * qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to 1365 * traverse multiple-cardinality sub-elements (see the [Simple FHIRPath 1366 * Profile](fhirpath.html#simple) for full details).). This is the 1367 * underlying object with id, value and extensions. The accessor 1368 * "getPath" gives direct access to the value 1369 */ 1370 public StringType getPathElement() { 1371 if (this.path == null) 1372 if (Configuration.errorOnAutoCreate()) 1373 throw new Error("Attempt to auto-create ActivityDefinitionDynamicValueComponent.path"); 1374 else if (Configuration.doAutoCreate()) 1375 this.path = new StringType(); // bb 1376 return this.path; 1377 } 1378 1379 public boolean hasPathElement() { 1380 return this.path != null && !this.path.isEmpty(); 1381 } 1382 1383 public boolean hasPath() { 1384 return this.path != null && !this.path.isEmpty(); 1385 } 1386 1387 /** 1388 * @param value {@link #path} (The path to the element to be customized. This is 1389 * the path on the resource that will hold the result of the 1390 * calculation defined by the expression. The specified path SHALL 1391 * be a FHIRPath resolveable on the specified target type of the 1392 * ActivityDefinition, and SHALL consist only of identifiers, 1393 * constant indexers, and a restricted subset of functions. The 1394 * path is allowed to contain qualifiers (.) to traverse 1395 * sub-elements, as well as indexers ([x]) to traverse 1396 * multiple-cardinality sub-elements (see the [Simple FHIRPath 1397 * Profile](fhirpath.html#simple) for full details).). This is the 1398 * underlying object with id, value and extensions. The accessor 1399 * "getPath" gives direct access to the value 1400 */ 1401 public ActivityDefinitionDynamicValueComponent setPathElement(StringType value) { 1402 this.path = value; 1403 return this; 1404 } 1405 1406 /** 1407 * @return The path to the element to be customized. This is the path on the 1408 * resource that will hold the result of the calculation defined by the 1409 * expression. The specified path SHALL be a FHIRPath resolveable on the 1410 * specified target type of the ActivityDefinition, and SHALL consist 1411 * only of identifiers, constant indexers, and a restricted subset of 1412 * functions. The path is allowed to contain qualifiers (.) to traverse 1413 * sub-elements, as well as indexers ([x]) to traverse 1414 * multiple-cardinality sub-elements (see the [Simple FHIRPath 1415 * Profile](fhirpath.html#simple) for full details). 1416 */ 1417 public String getPath() { 1418 return this.path == null ? null : this.path.getValue(); 1419 } 1420 1421 /** 1422 * @param value The path to the element to be customized. This is the path on 1423 * the resource that will hold the result of the calculation 1424 * defined by the expression. The specified path SHALL be a 1425 * FHIRPath resolveable on the specified target type of the 1426 * ActivityDefinition, and SHALL consist only of identifiers, 1427 * constant indexers, and a restricted subset of functions. The 1428 * path is allowed to contain qualifiers (.) to traverse 1429 * sub-elements, as well as indexers ([x]) to traverse 1430 * multiple-cardinality sub-elements (see the [Simple FHIRPath 1431 * Profile](fhirpath.html#simple) for full details). 1432 */ 1433 public ActivityDefinitionDynamicValueComponent setPath(String value) { 1434 if (this.path == null) 1435 this.path = new StringType(); 1436 this.path.setValue(value); 1437 return this; 1438 } 1439 1440 /** 1441 * @return {@link #expression} (An expression specifying the value of the 1442 * customized element.) 1443 */ 1444 public Expression getExpression() { 1445 if (this.expression == null) 1446 if (Configuration.errorOnAutoCreate()) 1447 throw new Error("Attempt to auto-create ActivityDefinitionDynamicValueComponent.expression"); 1448 else if (Configuration.doAutoCreate()) 1449 this.expression = new Expression(); // cc 1450 return this.expression; 1451 } 1452 1453 public boolean hasExpression() { 1454 return this.expression != null && !this.expression.isEmpty(); 1455 } 1456 1457 /** 1458 * @param value {@link #expression} (An expression specifying the value of the 1459 * customized element.) 1460 */ 1461 public ActivityDefinitionDynamicValueComponent setExpression(Expression value) { 1462 this.expression = value; 1463 return this; 1464 } 1465 1466 protected void listChildren(List<Property> children) { 1467 super.listChildren(children); 1468 children.add(new Property("path", "string", 1469 "The path to the element to be customized. This is the path on the resource that will hold the result of the calculation defined by the expression. The specified path SHALL be a FHIRPath resolveable on the specified target type of the ActivityDefinition, and SHALL consist only of identifiers, constant indexers, and a restricted subset of functions. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details).", 1470 0, 1, path)); 1471 children.add(new Property("expression", "Expression", 1472 "An expression specifying the value of the customized element.", 0, 1, expression)); 1473 } 1474 1475 @Override 1476 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1477 switch (_hash) { 1478 case 3433509: 1479 /* path */ return new Property("path", "string", 1480 "The path to the element to be customized. This is the path on the resource that will hold the result of the calculation defined by the expression. The specified path SHALL be a FHIRPath resolveable on the specified target type of the ActivityDefinition, and SHALL consist only of identifiers, constant indexers, and a restricted subset of functions. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details).", 1481 0, 1, path); 1482 case -1795452264: 1483 /* expression */ return new Property("expression", "Expression", 1484 "An expression specifying the value of the customized element.", 0, 1, expression); 1485 default: 1486 return super.getNamedProperty(_hash, _name, _checkValid); 1487 } 1488 1489 } 1490 1491 @Override 1492 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1493 switch (hash) { 1494 case 3433509: 1495 /* path */ return this.path == null ? new Base[0] : new Base[] { this.path }; // StringType 1496 case -1795452264: 1497 /* expression */ return this.expression == null ? new Base[0] : new Base[] { this.expression }; // Expression 1498 default: 1499 return super.getProperty(hash, name, checkValid); 1500 } 1501 1502 } 1503 1504 @Override 1505 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1506 switch (hash) { 1507 case 3433509: // path 1508 this.path = castToString(value); // StringType 1509 return value; 1510 case -1795452264: // expression 1511 this.expression = castToExpression(value); // Expression 1512 return value; 1513 default: 1514 return super.setProperty(hash, name, value); 1515 } 1516 1517 } 1518 1519 @Override 1520 public Base setProperty(String name, Base value) throws FHIRException { 1521 if (name.equals("path")) { 1522 this.path = castToString(value); // StringType 1523 } else if (name.equals("expression")) { 1524 this.expression = castToExpression(value); // Expression 1525 } else 1526 return super.setProperty(name, value); 1527 return value; 1528 } 1529 1530 @Override 1531 public void removeChild(String name, Base value) throws FHIRException { 1532 if (name.equals("path")) { 1533 this.path = null; 1534 } else if (name.equals("expression")) { 1535 this.expression = null; 1536 } else 1537 super.removeChild(name, value); 1538 1539 } 1540 1541 @Override 1542 public Base makeProperty(int hash, String name) throws FHIRException { 1543 switch (hash) { 1544 case 3433509: 1545 return getPathElement(); 1546 case -1795452264: 1547 return getExpression(); 1548 default: 1549 return super.makeProperty(hash, name); 1550 } 1551 1552 } 1553 1554 @Override 1555 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1556 switch (hash) { 1557 case 3433509: 1558 /* path */ return new String[] { "string" }; 1559 case -1795452264: 1560 /* expression */ return new String[] { "Expression" }; 1561 default: 1562 return super.getTypesForProperty(hash, name); 1563 } 1564 1565 } 1566 1567 @Override 1568 public Base addChild(String name) throws FHIRException { 1569 if (name.equals("path")) { 1570 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.path"); 1571 } else if (name.equals("expression")) { 1572 this.expression = new Expression(); 1573 return this.expression; 1574 } else 1575 return super.addChild(name); 1576 } 1577 1578 public ActivityDefinitionDynamicValueComponent copy() { 1579 ActivityDefinitionDynamicValueComponent dst = new ActivityDefinitionDynamicValueComponent(); 1580 copyValues(dst); 1581 return dst; 1582 } 1583 1584 public void copyValues(ActivityDefinitionDynamicValueComponent dst) { 1585 super.copyValues(dst); 1586 dst.path = path == null ? null : path.copy(); 1587 dst.expression = expression == null ? null : expression.copy(); 1588 } 1589 1590 @Override 1591 public boolean equalsDeep(Base other_) { 1592 if (!super.equalsDeep(other_)) 1593 return false; 1594 if (!(other_ instanceof ActivityDefinitionDynamicValueComponent)) 1595 return false; 1596 ActivityDefinitionDynamicValueComponent o = (ActivityDefinitionDynamicValueComponent) other_; 1597 return compareDeep(path, o.path, true) && compareDeep(expression, o.expression, true); 1598 } 1599 1600 @Override 1601 public boolean equalsShallow(Base other_) { 1602 if (!super.equalsShallow(other_)) 1603 return false; 1604 if (!(other_ instanceof ActivityDefinitionDynamicValueComponent)) 1605 return false; 1606 ActivityDefinitionDynamicValueComponent o = (ActivityDefinitionDynamicValueComponent) other_; 1607 return compareValues(path, o.path, true); 1608 } 1609 1610 public boolean isEmpty() { 1611 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(path, expression); 1612 } 1613 1614 public String fhirType() { 1615 return "ActivityDefinition.dynamicValue"; 1616 1617 } 1618 1619 } 1620 1621 /** 1622 * A formal identifier that is used to identify this activity definition when it 1623 * is represented in other formats, or referenced in a specification, model, 1624 * design or an instance. 1625 */ 1626 @Child(name = "identifier", type = { 1627 Identifier.class }, order = 0, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = true) 1628 @Description(shortDefinition = "Additional identifier for the activity definition", formalDefinition = "A formal identifier that is used to identify this activity definition when it is represented in other formats, or referenced in a specification, model, design or an instance.") 1629 protected List<Identifier> identifier; 1630 1631 /** 1632 * An explanatory or alternate title for the activity definition giving 1633 * additional information about its content. 1634 */ 1635 @Child(name = "subtitle", type = { StringType.class }, order = 1, min = 0, max = 1, modifier = false, summary = false) 1636 @Description(shortDefinition = "Subordinate title of the activity definition", formalDefinition = "An explanatory or alternate title for the activity definition giving additional information about its content.") 1637 protected StringType subtitle; 1638 1639 /** 1640 * A code or group definition that describes the intended subject of the 1641 * activity being defined. 1642 */ 1643 @Child(name = "subject", type = { CodeableConcept.class, 1644 Group.class }, order = 2, min = 0, max = 1, modifier = false, summary = false) 1645 @Description(shortDefinition = "Type of individual the activity definition is intended for", formalDefinition = "A code or group definition that describes the intended subject of the activity being defined.") 1646 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/subject-type") 1647 protected Type subject; 1648 1649 /** 1650 * Explanation of why this activity definition is needed and why it has been 1651 * designed as it has. 1652 */ 1653 @Child(name = "purpose", type = { 1654 MarkdownType.class }, order = 3, min = 0, max = 1, modifier = false, summary = false) 1655 @Description(shortDefinition = "Why this activity definition is defined", formalDefinition = "Explanation of why this activity definition is needed and why it has been designed as it has.") 1656 protected MarkdownType purpose; 1657 1658 /** 1659 * A detailed description of how the activity definition is used from a clinical 1660 * perspective. 1661 */ 1662 @Child(name = "usage", type = { StringType.class }, order = 4, min = 0, max = 1, modifier = false, summary = false) 1663 @Description(shortDefinition = "Describes the clinical usage of the activity definition", formalDefinition = "A detailed description of how the activity definition is used from a clinical perspective.") 1664 protected StringType usage; 1665 1666 /** 1667 * A copyright statement relating to the activity definition and/or its 1668 * contents. Copyright statements are generally legal restrictions on the use 1669 * and publishing of the activity definition. 1670 */ 1671 @Child(name = "copyright", type = { 1672 MarkdownType.class }, order = 5, min = 0, max = 1, modifier = false, summary = false) 1673 @Description(shortDefinition = "Use and/or publishing restrictions", formalDefinition = "A copyright statement relating to the activity definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the activity definition.") 1674 protected MarkdownType copyright; 1675 1676 /** 1677 * The date on which the resource content was approved by the publisher. 1678 * Approval happens once when the content is officially approved for usage. 1679 */ 1680 @Child(name = "approvalDate", type = { 1681 DateType.class }, order = 6, min = 0, max = 1, modifier = false, summary = false) 1682 @Description(shortDefinition = "When the activity definition was approved by publisher", formalDefinition = "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.") 1683 protected DateType approvalDate; 1684 1685 /** 1686 * The date on which the resource content was last reviewed. Review happens 1687 * periodically after approval but does not change the original approval date. 1688 */ 1689 @Child(name = "lastReviewDate", type = { 1690 DateType.class }, order = 7, min = 0, max = 1, modifier = false, summary = false) 1691 @Description(shortDefinition = "When the activity definition was last reviewed", formalDefinition = "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.") 1692 protected DateType lastReviewDate; 1693 1694 /** 1695 * The period during which the activity definition content was or is planned to 1696 * be in active use. 1697 */ 1698 @Child(name = "effectivePeriod", type = { 1699 Period.class }, order = 8, min = 0, max = 1, modifier = false, summary = true) 1700 @Description(shortDefinition = "When the activity definition is expected to be used", formalDefinition = "The period during which the activity definition content was or is planned to be in active use.") 1701 protected Period effectivePeriod; 1702 1703 /** 1704 * Descriptive topics related to the content of the activity. Topics provide a 1705 * high-level categorization of the activity that can be useful for filtering 1706 * and searching. 1707 */ 1708 @Child(name = "topic", type = { 1709 CodeableConcept.class }, order = 9, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1710 @Description(shortDefinition = "E.g. Education, Treatment, Assessment, etc.", formalDefinition = "Descriptive topics related to the content of the activity. Topics provide a high-level categorization of the activity that can be useful for filtering and searching.") 1711 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/definition-topic") 1712 protected List<CodeableConcept> topic; 1713 1714 /** 1715 * An individiual or organization primarily involved in the creation and 1716 * maintenance of the content. 1717 */ 1718 @Child(name = "author", type = { 1719 ContactDetail.class }, order = 10, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1720 @Description(shortDefinition = "Who authored the content", formalDefinition = "An individiual or organization primarily involved in the creation and maintenance of the content.") 1721 protected List<ContactDetail> author; 1722 1723 /** 1724 * An individual or organization primarily responsible for internal coherence of 1725 * the content. 1726 */ 1727 @Child(name = "editor", type = { 1728 ContactDetail.class }, order = 11, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1729 @Description(shortDefinition = "Who edited the content", formalDefinition = "An individual or organization primarily responsible for internal coherence of the content.") 1730 protected List<ContactDetail> editor; 1731 1732 /** 1733 * An individual or organization primarily responsible for review of some aspect 1734 * of the content. 1735 */ 1736 @Child(name = "reviewer", type = { 1737 ContactDetail.class }, order = 12, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1738 @Description(shortDefinition = "Who reviewed the content", formalDefinition = "An individual or organization primarily responsible for review of some aspect of the content.") 1739 protected List<ContactDetail> reviewer; 1740 1741 /** 1742 * An individual or organization responsible for officially endorsing the 1743 * content for use in some setting. 1744 */ 1745 @Child(name = "endorser", type = { 1746 ContactDetail.class }, order = 13, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1747 @Description(shortDefinition = "Who endorsed the content", formalDefinition = "An individual or organization responsible for officially endorsing the content for use in some setting.") 1748 protected List<ContactDetail> endorser; 1749 1750 /** 1751 * Related artifacts such as additional documentation, justification, or 1752 * bibliographic references. 1753 */ 1754 @Child(name = "relatedArtifact", type = { 1755 RelatedArtifact.class }, order = 14, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1756 @Description(shortDefinition = "Additional documentation, citations, etc.", formalDefinition = "Related artifacts such as additional documentation, justification, or bibliographic references.") 1757 protected List<RelatedArtifact> relatedArtifact; 1758 1759 /** 1760 * A reference to a Library resource containing any formal logic used by the 1761 * activity definition. 1762 */ 1763 @Child(name = "library", type = { 1764 CanonicalType.class }, order = 15, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1765 @Description(shortDefinition = "Logic used by the activity definition", formalDefinition = "A reference to a Library resource containing any formal logic used by the activity definition.") 1766 protected List<CanonicalType> library; 1767 1768 /** 1769 * A description of the kind of resource the activity definition is 1770 * representing. For example, a MedicationRequest, a ServiceRequest, or a 1771 * CommunicationRequest. Typically, but not always, this is a Request resource. 1772 */ 1773 @Child(name = "kind", type = { CodeType.class }, order = 16, min = 0, max = 1, modifier = false, summary = true) 1774 @Description(shortDefinition = "Kind of resource", formalDefinition = "A description of the kind of resource the activity definition is representing. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest. Typically, but not always, this is a Request resource.") 1775 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/request-resource-types") 1776 protected Enumeration<ActivityDefinitionKind> kind; 1777 1778 /** 1779 * A profile to which the target of the activity definition is expected to 1780 * conform. 1781 */ 1782 @Child(name = "profile", type = { 1783 CanonicalType.class }, order = 17, min = 0, max = 1, modifier = false, summary = false) 1784 @Description(shortDefinition = "What profile the resource needs to conform to", formalDefinition = "A profile to which the target of the activity definition is expected to conform.") 1785 protected CanonicalType profile; 1786 1787 /** 1788 * Detailed description of the type of activity; e.g. What lab test, what 1789 * procedure, what kind of encounter. 1790 */ 1791 @Child(name = "code", type = { 1792 CodeableConcept.class }, order = 18, min = 0, max = 1, modifier = false, summary = true) 1793 @Description(shortDefinition = "Detail type of activity", formalDefinition = "Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.") 1794 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/procedure-code") 1795 protected CodeableConcept code; 1796 1797 /** 1798 * Indicates the level of authority/intentionality associated with the activity 1799 * and where the request should fit into the workflow chain. 1800 */ 1801 @Child(name = "intent", type = { CodeType.class }, order = 19, min = 0, max = 1, modifier = false, summary = false) 1802 @Description(shortDefinition = "proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option", formalDefinition = "Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain.") 1803 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/request-intent") 1804 protected Enumeration<RequestIntent> intent; 1805 1806 /** 1807 * Indicates how quickly the activity should be addressed with respect to other 1808 * requests. 1809 */ 1810 @Child(name = "priority", type = { CodeType.class }, order = 20, min = 0, max = 1, modifier = false, summary = false) 1811 @Description(shortDefinition = "routine | urgent | asap | stat", formalDefinition = "Indicates how quickly the activity should be addressed with respect to other requests.") 1812 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/request-priority") 1813 protected Enumeration<RequestPriority> priority; 1814 1815 /** 1816 * Set this to true if the definition is to indicate that a particular activity 1817 * should NOT be performed. If true, this element should be interpreted to 1818 * reinforce a negative coding. For example NPO as a code with a doNotPerform of 1819 * true would still indicate to NOT perform the action. 1820 */ 1821 @Child(name = "doNotPerform", type = { 1822 BooleanType.class }, order = 21, min = 0, max = 1, modifier = true, summary = true) 1823 @Description(shortDefinition = "True if the activity should not be performed", formalDefinition = "Set this to true if the definition is to indicate that a particular activity should NOT be performed. If true, this element should be interpreted to reinforce a negative coding. For example NPO as a code with a doNotPerform of true would still indicate to NOT perform the action.") 1824 protected BooleanType doNotPerform; 1825 1826 /** 1827 * The period, timing or frequency upon which the described activity is to 1828 * occur. 1829 */ 1830 @Child(name = "timing", type = { Timing.class, DateTimeType.class, Age.class, Period.class, Range.class, 1831 Duration.class }, order = 22, min = 0, max = 1, modifier = false, summary = false) 1832 @Description(shortDefinition = "When activity is to occur", formalDefinition = "The period, timing or frequency upon which the described activity is to occur.") 1833 protected Type timing; 1834 1835 /** 1836 * Identifies the facility where the activity will occur; e.g. home, hospital, 1837 * specific clinic, etc. 1838 */ 1839 @Child(name = "location", type = { Location.class }, order = 23, min = 0, max = 1, modifier = false, summary = false) 1840 @Description(shortDefinition = "Where it should happen", formalDefinition = "Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.") 1841 protected Reference location; 1842 1843 /** 1844 * The actual object that is the target of the reference (Identifies the 1845 * facility where the activity will occur; e.g. home, hospital, specific clinic, 1846 * etc.) 1847 */ 1848 protected Location locationTarget; 1849 1850 /** 1851 * Indicates who should participate in performing the action described. 1852 */ 1853 @Child(name = "participant", type = {}, order = 24, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1854 @Description(shortDefinition = "Who should participate in the action", formalDefinition = "Indicates who should participate in performing the action described.") 1855 protected List<ActivityDefinitionParticipantComponent> participant; 1856 1857 /** 1858 * Identifies the food, drug or other product being consumed or supplied in the 1859 * activity. 1860 */ 1861 @Child(name = "product", type = { Medication.class, Substance.class, 1862 CodeableConcept.class }, order = 25, min = 0, max = 1, modifier = false, summary = false) 1863 @Description(shortDefinition = "What's administered/supplied", formalDefinition = "Identifies the food, drug or other product being consumed or supplied in the activity.") 1864 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/medication-codes") 1865 protected Type product; 1866 1867 /** 1868 * Identifies the quantity expected to be consumed at once (per dose, per meal, 1869 * etc.). 1870 */ 1871 @Child(name = "quantity", type = { Quantity.class }, order = 26, min = 0, max = 1, modifier = false, summary = false) 1872 @Description(shortDefinition = "How much is administered/consumed/supplied", formalDefinition = "Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).") 1873 protected Quantity quantity; 1874 1875 /** 1876 * Provides detailed dosage instructions in the same way that they are described 1877 * for MedicationRequest resources. 1878 */ 1879 @Child(name = "dosage", type = { 1880 Dosage.class }, order = 27, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1881 @Description(shortDefinition = "Detailed dosage instructions", formalDefinition = "Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources.") 1882 protected List<Dosage> dosage; 1883 1884 /** 1885 * Indicates the sites on the subject's body where the procedure should be 1886 * performed (I.e. the target sites). 1887 */ 1888 @Child(name = "bodySite", type = { 1889 CodeableConcept.class }, order = 28, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1890 @Description(shortDefinition = "What part of body to perform on", formalDefinition = "Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites).") 1891 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/body-site") 1892 protected List<CodeableConcept> bodySite; 1893 1894 /** 1895 * Defines specimen requirements for the action to be performed, such as 1896 * required specimens for a lab test. 1897 */ 1898 @Child(name = "specimenRequirement", type = { 1899 SpecimenDefinition.class }, order = 29, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1900 @Description(shortDefinition = "What specimens are required to perform this action", formalDefinition = "Defines specimen requirements for the action to be performed, such as required specimens for a lab test.") 1901 protected List<Reference> specimenRequirement; 1902 /** 1903 * The actual objects that are the target of the reference (Defines specimen 1904 * requirements for the action to be performed, such as required specimens for a 1905 * lab test.) 1906 */ 1907 protected List<SpecimenDefinition> specimenRequirementTarget; 1908 1909 /** 1910 * Defines observation requirements for the action to be performed, such as body 1911 * weight or surface area. 1912 */ 1913 @Child(name = "observationRequirement", type = { 1914 ObservationDefinition.class }, order = 30, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1915 @Description(shortDefinition = "What observations are required to perform this action", formalDefinition = "Defines observation requirements for the action to be performed, such as body weight or surface area.") 1916 protected List<Reference> observationRequirement; 1917 /** 1918 * The actual objects that are the target of the reference (Defines observation 1919 * requirements for the action to be performed, such as body weight or surface 1920 * area.) 1921 */ 1922 protected List<ObservationDefinition> observationRequirementTarget; 1923 1924 /** 1925 * Defines the observations that are expected to be produced by the action. 1926 */ 1927 @Child(name = "observationResultRequirement", type = { 1928 ObservationDefinition.class }, order = 31, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1929 @Description(shortDefinition = "What observations must be produced by this action", formalDefinition = "Defines the observations that are expected to be produced by the action.") 1930 protected List<Reference> observationResultRequirement; 1931 /** 1932 * The actual objects that are the target of the reference (Defines the 1933 * observations that are expected to be produced by the action.) 1934 */ 1935 protected List<ObservationDefinition> observationResultRequirementTarget; 1936 1937 /** 1938 * A reference to a StructureMap resource that defines a transform that can be 1939 * executed to produce the intent resource using the ActivityDefinition instance 1940 * as the input. 1941 */ 1942 @Child(name = "transform", type = { 1943 CanonicalType.class }, order = 32, min = 0, max = 1, modifier = false, summary = false) 1944 @Description(shortDefinition = "Transform to apply the template", formalDefinition = "A reference to a StructureMap resource that defines a transform that can be executed to produce the intent resource using the ActivityDefinition instance as the input.") 1945 protected CanonicalType transform; 1946 1947 /** 1948 * Dynamic values that will be evaluated to produce values for elements of the 1949 * resulting resource. For example, if the dosage of a medication must be 1950 * computed based on the patient's weight, a dynamic value would be used to 1951 * specify an expression that calculated the weight, and the path on the request 1952 * resource that would contain the result. 1953 */ 1954 @Child(name = "dynamicValue", type = {}, order = 33, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 1955 @Description(shortDefinition = "Dynamic aspects of the definition", formalDefinition = "Dynamic values that will be evaluated to produce values for elements of the resulting resource. For example, if the dosage of a medication must be computed based on the patient's weight, a dynamic value would be used to specify an expression that calculated the weight, and the path on the request resource that would contain the result.") 1956 protected List<ActivityDefinitionDynamicValueComponent> dynamicValue; 1957 1958 private static final long serialVersionUID = 1488459022L; 1959 1960 /** 1961 * Constructor 1962 */ 1963 public ActivityDefinition() { 1964 super(); 1965 } 1966 1967 /** 1968 * Constructor 1969 */ 1970 public ActivityDefinition(Enumeration<PublicationStatus> status) { 1971 super(); 1972 this.status = status; 1973 } 1974 1975 /** 1976 * @return {@link #url} (An absolute URI that is used to identify this activity 1977 * definition when it is referenced in a specification, model, design or 1978 * an instance; also called its canonical identifier. This SHOULD be 1979 * globally unique and SHOULD be a literal address at which at which an 1980 * authoritative instance of this activity definition is (or will be) 1981 * published. This URL can be the target of a canonical reference. It 1982 * SHALL remain the same when the activity definition is stored on 1983 * different servers.). This is the underlying object with id, value and 1984 * extensions. The accessor "getUrl" gives direct access to the value 1985 */ 1986 public UriType getUrlElement() { 1987 if (this.url == null) 1988 if (Configuration.errorOnAutoCreate()) 1989 throw new Error("Attempt to auto-create ActivityDefinition.url"); 1990 else if (Configuration.doAutoCreate()) 1991 this.url = new UriType(); // bb 1992 return this.url; 1993 } 1994 1995 public boolean hasUrlElement() { 1996 return this.url != null && !this.url.isEmpty(); 1997 } 1998 1999 public boolean hasUrl() { 2000 return this.url != null && !this.url.isEmpty(); 2001 } 2002 2003 /** 2004 * @param value {@link #url} (An absolute URI that is used to identify this 2005 * activity definition when it is referenced in a specification, 2006 * model, design or an instance; also called its canonical 2007 * identifier. This SHOULD be globally unique and SHOULD be a 2008 * literal address at which at which an authoritative instance of 2009 * this activity definition is (or will be) published. This URL can 2010 * be the target of a canonical reference. It SHALL remain the same 2011 * when the activity definition is stored on different servers.). 2012 * This is the underlying object with id, value and extensions. The 2013 * accessor "getUrl" gives direct access to the value 2014 */ 2015 public ActivityDefinition setUrlElement(UriType value) { 2016 this.url = value; 2017 return this; 2018 } 2019 2020 /** 2021 * @return An absolute URI that is used to identify this activity definition 2022 * when it is referenced in a specification, model, design or an 2023 * instance; also called its canonical identifier. This SHOULD be 2024 * globally unique and SHOULD be a literal address at which at which an 2025 * authoritative instance of this activity definition is (or will be) 2026 * published. This URL can be the target of a canonical reference. It 2027 * SHALL remain the same when the activity definition is stored on 2028 * different servers. 2029 */ 2030 public String getUrl() { 2031 return this.url == null ? null : this.url.getValue(); 2032 } 2033 2034 /** 2035 * @param value An absolute URI that is used to identify this activity 2036 * definition when it is referenced in a specification, model, 2037 * design or an instance; also called its canonical identifier. 2038 * This SHOULD be globally unique and SHOULD be a literal address 2039 * at which at which an authoritative instance of this activity 2040 * definition is (or will be) published. This URL can be the target 2041 * of a canonical reference. It SHALL remain the same when the 2042 * activity definition is stored on different servers. 2043 */ 2044 public ActivityDefinition setUrl(String value) { 2045 if (Utilities.noString(value)) 2046 this.url = null; 2047 else { 2048 if (this.url == null) 2049 this.url = new UriType(); 2050 this.url.setValue(value); 2051 } 2052 return this; 2053 } 2054 2055 /** 2056 * @return {@link #identifier} (A formal identifier that is used to identify 2057 * this activity definition when it is represented in other formats, or 2058 * referenced in a specification, model, design or an instance.) 2059 */ 2060 public List<Identifier> getIdentifier() { 2061 if (this.identifier == null) 2062 this.identifier = new ArrayList<Identifier>(); 2063 return this.identifier; 2064 } 2065 2066 /** 2067 * @return Returns a reference to <code>this</code> for easy method chaining 2068 */ 2069 public ActivityDefinition setIdentifier(List<Identifier> theIdentifier) { 2070 this.identifier = theIdentifier; 2071 return this; 2072 } 2073 2074 public boolean hasIdentifier() { 2075 if (this.identifier == null) 2076 return false; 2077 for (Identifier item : this.identifier) 2078 if (!item.isEmpty()) 2079 return true; 2080 return false; 2081 } 2082 2083 public Identifier addIdentifier() { // 3 2084 Identifier t = new Identifier(); 2085 if (this.identifier == null) 2086 this.identifier = new ArrayList<Identifier>(); 2087 this.identifier.add(t); 2088 return t; 2089 } 2090 2091 public ActivityDefinition addIdentifier(Identifier t) { // 3 2092 if (t == null) 2093 return this; 2094 if (this.identifier == null) 2095 this.identifier = new ArrayList<Identifier>(); 2096 this.identifier.add(t); 2097 return this; 2098 } 2099 2100 /** 2101 * @return The first repetition of repeating field {@link #identifier}, creating 2102 * it if it does not already exist 2103 */ 2104 public Identifier getIdentifierFirstRep() { 2105 if (getIdentifier().isEmpty()) { 2106 addIdentifier(); 2107 } 2108 return getIdentifier().get(0); 2109 } 2110 2111 /** 2112 * @return {@link #version} (The identifier that is used to identify this 2113 * version of the activity definition when it is referenced in a 2114 * specification, model, design or instance. This is an arbitrary value 2115 * managed by the activity definition author and is not expected to be 2116 * globally unique. For example, it might be a timestamp (e.g. yyyymmdd) 2117 * if a managed version is not available. There is also no expectation 2118 * that versions can be placed in a lexicographical sequence. To provide 2119 * a version consistent with the Decision Support Service specification, 2120 * use the format Major.Minor.Revision (e.g. 1.0.0). For more 2121 * information on versioning knowledge assets, refer to the Decision 2122 * Support Service specification. Note that a version is required for 2123 * non-experimental active assets.). This is the underlying object with 2124 * id, value and extensions. The accessor "getVersion" gives direct 2125 * access to the value 2126 */ 2127 public StringType getVersionElement() { 2128 if (this.version == null) 2129 if (Configuration.errorOnAutoCreate()) 2130 throw new Error("Attempt to auto-create ActivityDefinition.version"); 2131 else if (Configuration.doAutoCreate()) 2132 this.version = new StringType(); // bb 2133 return this.version; 2134 } 2135 2136 public boolean hasVersionElement() { 2137 return this.version != null && !this.version.isEmpty(); 2138 } 2139 2140 public boolean hasVersion() { 2141 return this.version != null && !this.version.isEmpty(); 2142 } 2143 2144 /** 2145 * @param value {@link #version} (The identifier that is used to identify this 2146 * version of the activity definition when it is referenced in a 2147 * specification, model, design or instance. This is an arbitrary 2148 * value managed by the activity definition author and is not 2149 * expected to be globally unique. For example, it might be a 2150 * timestamp (e.g. yyyymmdd) if a managed version is not available. 2151 * There is also no expectation that versions can be placed in a 2152 * lexicographical sequence. To provide a version consistent with 2153 * the Decision Support Service specification, use the format 2154 * Major.Minor.Revision (e.g. 1.0.0). For more information on 2155 * versioning knowledge assets, refer to the Decision Support 2156 * Service specification. Note that a version is required for 2157 * non-experimental active assets.). This is the underlying object 2158 * with id, value and extensions. The accessor "getVersion" gives 2159 * direct access to the value 2160 */ 2161 public ActivityDefinition setVersionElement(StringType value) { 2162 this.version = value; 2163 return this; 2164 } 2165 2166 /** 2167 * @return The identifier that is used to identify this version of the activity 2168 * definition when it is referenced in a specification, model, design or 2169 * instance. This is an arbitrary value managed by the activity 2170 * definition author and is not expected to be globally unique. For 2171 * example, it might be a timestamp (e.g. yyyymmdd) if a managed version 2172 * is not available. There is also no expectation that versions can be 2173 * placed in a lexicographical sequence. To provide a version consistent 2174 * with the Decision Support Service specification, use the format 2175 * Major.Minor.Revision (e.g. 1.0.0). For more information on versioning 2176 * knowledge assets, refer to the Decision Support Service 2177 * specification. Note that a version is required for non-experimental 2178 * active assets. 2179 */ 2180 public String getVersion() { 2181 return this.version == null ? null : this.version.getValue(); 2182 } 2183 2184 /** 2185 * @param value The identifier that is used to identify this version of the 2186 * activity definition when it is referenced in a specification, 2187 * model, design or instance. This is an arbitrary value managed by 2188 * the activity definition author and is not expected to be 2189 * globally unique. For example, it might be a timestamp (e.g. 2190 * yyyymmdd) if a managed version is not available. There is also 2191 * no expectation that versions can be placed in a lexicographical 2192 * sequence. To provide a version consistent with the Decision 2193 * Support Service specification, use the format 2194 * Major.Minor.Revision (e.g. 1.0.0). For more information on 2195 * versioning knowledge assets, refer to the Decision Support 2196 * Service specification. Note that a version is required for 2197 * non-experimental active assets. 2198 */ 2199 public ActivityDefinition setVersion(String value) { 2200 if (Utilities.noString(value)) 2201 this.version = null; 2202 else { 2203 if (this.version == null) 2204 this.version = new StringType(); 2205 this.version.setValue(value); 2206 } 2207 return this; 2208 } 2209 2210 /** 2211 * @return {@link #name} (A natural language name identifying the activity 2212 * definition. This name should be usable as an identifier for the 2213 * module by machine processing applications such as code generation.). 2214 * This is the underlying object with id, value and extensions. The 2215 * accessor "getName" gives direct access to the value 2216 */ 2217 public StringType getNameElement() { 2218 if (this.name == null) 2219 if (Configuration.errorOnAutoCreate()) 2220 throw new Error("Attempt to auto-create ActivityDefinition.name"); 2221 else if (Configuration.doAutoCreate()) 2222 this.name = new StringType(); // bb 2223 return this.name; 2224 } 2225 2226 public boolean hasNameElement() { 2227 return this.name != null && !this.name.isEmpty(); 2228 } 2229 2230 public boolean hasName() { 2231 return this.name != null && !this.name.isEmpty(); 2232 } 2233 2234 /** 2235 * @param value {@link #name} (A natural language name identifying the activity 2236 * definition. This name should be usable as an identifier for the 2237 * module by machine processing applications such as code 2238 * generation.). This is the underlying object with id, value and 2239 * extensions. The accessor "getName" gives direct access to the 2240 * value 2241 */ 2242 public ActivityDefinition setNameElement(StringType value) { 2243 this.name = value; 2244 return this; 2245 } 2246 2247 /** 2248 * @return A natural language name identifying the activity definition. This 2249 * name should be usable as an identifier for the module by machine 2250 * processing applications such as code generation. 2251 */ 2252 public String getName() { 2253 return this.name == null ? null : this.name.getValue(); 2254 } 2255 2256 /** 2257 * @param value A natural language name identifying the activity definition. 2258 * This name should be usable as an identifier for the module by 2259 * machine processing applications such as code generation. 2260 */ 2261 public ActivityDefinition setName(String value) { 2262 if (Utilities.noString(value)) 2263 this.name = null; 2264 else { 2265 if (this.name == null) 2266 this.name = new StringType(); 2267 this.name.setValue(value); 2268 } 2269 return this; 2270 } 2271 2272 /** 2273 * @return {@link #title} (A short, descriptive, user-friendly title for the 2274 * activity definition.). This is the underlying object with id, value 2275 * and extensions. The accessor "getTitle" gives direct access to the 2276 * value 2277 */ 2278 public StringType getTitleElement() { 2279 if (this.title == null) 2280 if (Configuration.errorOnAutoCreate()) 2281 throw new Error("Attempt to auto-create ActivityDefinition.title"); 2282 else if (Configuration.doAutoCreate()) 2283 this.title = new StringType(); // bb 2284 return this.title; 2285 } 2286 2287 public boolean hasTitleElement() { 2288 return this.title != null && !this.title.isEmpty(); 2289 } 2290 2291 public boolean hasTitle() { 2292 return this.title != null && !this.title.isEmpty(); 2293 } 2294 2295 /** 2296 * @param value {@link #title} (A short, descriptive, user-friendly title for 2297 * the activity definition.). This is the underlying object with 2298 * id, value and extensions. The accessor "getTitle" gives direct 2299 * access to the value 2300 */ 2301 public ActivityDefinition setTitleElement(StringType value) { 2302 this.title = value; 2303 return this; 2304 } 2305 2306 /** 2307 * @return A short, descriptive, user-friendly title for the activity 2308 * definition. 2309 */ 2310 public String getTitle() { 2311 return this.title == null ? null : this.title.getValue(); 2312 } 2313 2314 /** 2315 * @param value A short, descriptive, user-friendly title for the activity 2316 * definition. 2317 */ 2318 public ActivityDefinition setTitle(String value) { 2319 if (Utilities.noString(value)) 2320 this.title = null; 2321 else { 2322 if (this.title == null) 2323 this.title = new StringType(); 2324 this.title.setValue(value); 2325 } 2326 return this; 2327 } 2328 2329 /** 2330 * @return {@link #subtitle} (An explanatory or alternate title for the activity 2331 * definition giving additional information about its content.). This is 2332 * the underlying object with id, value and extensions. The accessor 2333 * "getSubtitle" gives direct access to the value 2334 */ 2335 public StringType getSubtitleElement() { 2336 if (this.subtitle == null) 2337 if (Configuration.errorOnAutoCreate()) 2338 throw new Error("Attempt to auto-create ActivityDefinition.subtitle"); 2339 else if (Configuration.doAutoCreate()) 2340 this.subtitle = new StringType(); // bb 2341 return this.subtitle; 2342 } 2343 2344 public boolean hasSubtitleElement() { 2345 return this.subtitle != null && !this.subtitle.isEmpty(); 2346 } 2347 2348 public boolean hasSubtitle() { 2349 return this.subtitle != null && !this.subtitle.isEmpty(); 2350 } 2351 2352 /** 2353 * @param value {@link #subtitle} (An explanatory or alternate title for the 2354 * activity definition giving additional information about its 2355 * content.). This is the underlying object with id, value and 2356 * extensions. The accessor "getSubtitle" gives direct access to 2357 * the value 2358 */ 2359 public ActivityDefinition setSubtitleElement(StringType value) { 2360 this.subtitle = value; 2361 return this; 2362 } 2363 2364 /** 2365 * @return An explanatory or alternate title for the activity definition giving 2366 * additional information about its content. 2367 */ 2368 public String getSubtitle() { 2369 return this.subtitle == null ? null : this.subtitle.getValue(); 2370 } 2371 2372 /** 2373 * @param value An explanatory or alternate title for the activity definition 2374 * giving additional information about its content. 2375 */ 2376 public ActivityDefinition setSubtitle(String value) { 2377 if (Utilities.noString(value)) 2378 this.subtitle = null; 2379 else { 2380 if (this.subtitle == null) 2381 this.subtitle = new StringType(); 2382 this.subtitle.setValue(value); 2383 } 2384 return this; 2385 } 2386 2387 /** 2388 * @return {@link #status} (The status of this activity definition. Enables 2389 * tracking the life-cycle of the content.). This is the underlying 2390 * object with id, value and extensions. The accessor "getStatus" gives 2391 * direct access to the value 2392 */ 2393 public Enumeration<PublicationStatus> getStatusElement() { 2394 if (this.status == null) 2395 if (Configuration.errorOnAutoCreate()) 2396 throw new Error("Attempt to auto-create ActivityDefinition.status"); 2397 else if (Configuration.doAutoCreate()) 2398 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); // bb 2399 return this.status; 2400 } 2401 2402 public boolean hasStatusElement() { 2403 return this.status != null && !this.status.isEmpty(); 2404 } 2405 2406 public boolean hasStatus() { 2407 return this.status != null && !this.status.isEmpty(); 2408 } 2409 2410 /** 2411 * @param value {@link #status} (The status of this activity definition. Enables 2412 * tracking the life-cycle of the content.). This is the underlying 2413 * object with id, value and extensions. The accessor "getStatus" 2414 * gives direct access to the value 2415 */ 2416 public ActivityDefinition setStatusElement(Enumeration<PublicationStatus> value) { 2417 this.status = value; 2418 return this; 2419 } 2420 2421 /** 2422 * @return The status of this activity definition. Enables tracking the 2423 * life-cycle of the content. 2424 */ 2425 public PublicationStatus getStatus() { 2426 return this.status == null ? null : this.status.getValue(); 2427 } 2428 2429 /** 2430 * @param value The status of this activity definition. Enables tracking the 2431 * life-cycle of the content. 2432 */ 2433 public ActivityDefinition setStatus(PublicationStatus value) { 2434 if (this.status == null) 2435 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); 2436 this.status.setValue(value); 2437 return this; 2438 } 2439 2440 /** 2441 * @return {@link #experimental} (A Boolean value to indicate that this activity 2442 * definition is authored for testing purposes (or 2443 * education/evaluation/marketing) and is not intended to be used for 2444 * genuine usage.). This is the underlying object with id, value and 2445 * extensions. The accessor "getExperimental" gives direct access to the 2446 * value 2447 */ 2448 public BooleanType getExperimentalElement() { 2449 if (this.experimental == null) 2450 if (Configuration.errorOnAutoCreate()) 2451 throw new Error("Attempt to auto-create ActivityDefinition.experimental"); 2452 else if (Configuration.doAutoCreate()) 2453 this.experimental = new BooleanType(); // bb 2454 return this.experimental; 2455 } 2456 2457 public boolean hasExperimentalElement() { 2458 return this.experimental != null && !this.experimental.isEmpty(); 2459 } 2460 2461 public boolean hasExperimental() { 2462 return this.experimental != null && !this.experimental.isEmpty(); 2463 } 2464 2465 /** 2466 * @param value {@link #experimental} (A Boolean value to indicate that this 2467 * activity definition is authored for testing purposes (or 2468 * education/evaluation/marketing) and is not intended to be used 2469 * for genuine usage.). This is the underlying object with id, 2470 * value and extensions. The accessor "getExperimental" gives 2471 * direct access to the value 2472 */ 2473 public ActivityDefinition setExperimentalElement(BooleanType value) { 2474 this.experimental = value; 2475 return this; 2476 } 2477 2478 /** 2479 * @return A Boolean value to indicate that this activity definition is authored 2480 * for testing purposes (or education/evaluation/marketing) and is not 2481 * intended to be used for genuine usage. 2482 */ 2483 public boolean getExperimental() { 2484 return this.experimental == null || this.experimental.isEmpty() ? false : this.experimental.getValue(); 2485 } 2486 2487 /** 2488 * @param value A Boolean value to indicate that this activity definition is 2489 * authored for testing purposes (or 2490 * education/evaluation/marketing) and is not intended to be used 2491 * for genuine usage. 2492 */ 2493 public ActivityDefinition setExperimental(boolean value) { 2494 if (this.experimental == null) 2495 this.experimental = new BooleanType(); 2496 this.experimental.setValue(value); 2497 return this; 2498 } 2499 2500 /** 2501 * @return {@link #subject} (A code or group definition that describes the 2502 * intended subject of the activity being defined.) 2503 */ 2504 public Type getSubject() { 2505 return this.subject; 2506 } 2507 2508 /** 2509 * @return {@link #subject} (A code or group definition that describes the 2510 * intended subject of the activity being defined.) 2511 */ 2512 public CodeableConcept getSubjectCodeableConcept() throws FHIRException { 2513 if (this.subject == null) 2514 this.subject = new CodeableConcept(); 2515 if (!(this.subject instanceof CodeableConcept)) 2516 throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but " 2517 + this.subject.getClass().getName() + " was encountered"); 2518 return (CodeableConcept) this.subject; 2519 } 2520 2521 public boolean hasSubjectCodeableConcept() { 2522 return this.subject instanceof CodeableConcept; 2523 } 2524 2525 /** 2526 * @return {@link #subject} (A code or group definition that describes the 2527 * intended subject of the activity being defined.) 2528 */ 2529 public Reference getSubjectReference() throws FHIRException { 2530 if (this.subject == null) 2531 this.subject = new Reference(); 2532 if (!(this.subject instanceof Reference)) 2533 throw new FHIRException("Type mismatch: the type Reference was expected, but " + this.subject.getClass().getName() 2534 + " was encountered"); 2535 return (Reference) this.subject; 2536 } 2537 2538 public boolean hasSubjectReference() { 2539 return this.subject instanceof Reference; 2540 } 2541 2542 public boolean hasSubject() { 2543 return this.subject != null && !this.subject.isEmpty(); 2544 } 2545 2546 /** 2547 * @param value {@link #subject} (A code or group definition that describes the 2548 * intended subject of the activity being defined.) 2549 */ 2550 public ActivityDefinition setSubject(Type value) { 2551 if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) 2552 throw new Error("Not the right type for ActivityDefinition.subject[x]: " + value.fhirType()); 2553 this.subject = value; 2554 return this; 2555 } 2556 2557 /** 2558 * @return {@link #date} (The date (and optionally time) when the activity 2559 * definition was published. The date must change when the business 2560 * version changes and it must change if the status code changes. In 2561 * addition, it should change when the substantive content of the 2562 * activity definition changes.). This is the underlying object with id, 2563 * value and extensions. The accessor "getDate" gives direct access to 2564 * the value 2565 */ 2566 public DateTimeType getDateElement() { 2567 if (this.date == null) 2568 if (Configuration.errorOnAutoCreate()) 2569 throw new Error("Attempt to auto-create ActivityDefinition.date"); 2570 else if (Configuration.doAutoCreate()) 2571 this.date = new DateTimeType(); // bb 2572 return this.date; 2573 } 2574 2575 public boolean hasDateElement() { 2576 return this.date != null && !this.date.isEmpty(); 2577 } 2578 2579 public boolean hasDate() { 2580 return this.date != null && !this.date.isEmpty(); 2581 } 2582 2583 /** 2584 * @param value {@link #date} (The date (and optionally time) when the activity 2585 * definition was published. The date must change when the business 2586 * version changes and it must change if the status code changes. 2587 * In addition, it should change when the substantive content of 2588 * the activity definition changes.). This is the underlying object 2589 * with id, value and extensions. The accessor "getDate" gives 2590 * direct access to the value 2591 */ 2592 public ActivityDefinition setDateElement(DateTimeType value) { 2593 this.date = value; 2594 return this; 2595 } 2596 2597 /** 2598 * @return The date (and optionally time) when the activity definition was 2599 * published. The date must change when the business version changes and 2600 * it must change if the status code changes. In addition, it should 2601 * change when the substantive content of the activity definition 2602 * changes. 2603 */ 2604 public Date getDate() { 2605 return this.date == null ? null : this.date.getValue(); 2606 } 2607 2608 /** 2609 * @param value The date (and optionally time) when the activity definition was 2610 * published. The date must change when the business version 2611 * changes and it must change if the status code changes. In 2612 * addition, it should change when the substantive content of the 2613 * activity definition changes. 2614 */ 2615 public ActivityDefinition setDate(Date value) { 2616 if (value == null) 2617 this.date = null; 2618 else { 2619 if (this.date == null) 2620 this.date = new DateTimeType(); 2621 this.date.setValue(value); 2622 } 2623 return this; 2624 } 2625 2626 /** 2627 * @return {@link #publisher} (The name of the organization or individual that 2628 * published the activity definition.). This is the underlying object 2629 * with id, value and extensions. The accessor "getPublisher" gives 2630 * direct access to the value 2631 */ 2632 public StringType getPublisherElement() { 2633 if (this.publisher == null) 2634 if (Configuration.errorOnAutoCreate()) 2635 throw new Error("Attempt to auto-create ActivityDefinition.publisher"); 2636 else if (Configuration.doAutoCreate()) 2637 this.publisher = new StringType(); // bb 2638 return this.publisher; 2639 } 2640 2641 public boolean hasPublisherElement() { 2642 return this.publisher != null && !this.publisher.isEmpty(); 2643 } 2644 2645 public boolean hasPublisher() { 2646 return this.publisher != null && !this.publisher.isEmpty(); 2647 } 2648 2649 /** 2650 * @param value {@link #publisher} (The name of the organization or individual 2651 * that published the activity definition.). This is the underlying 2652 * object with id, value and extensions. The accessor 2653 * "getPublisher" gives direct access to the value 2654 */ 2655 public ActivityDefinition setPublisherElement(StringType value) { 2656 this.publisher = value; 2657 return this; 2658 } 2659 2660 /** 2661 * @return The name of the organization or individual that published the 2662 * activity definition. 2663 */ 2664 public String getPublisher() { 2665 return this.publisher == null ? null : this.publisher.getValue(); 2666 } 2667 2668 /** 2669 * @param value The name of the organization or individual that published the 2670 * activity definition. 2671 */ 2672 public ActivityDefinition setPublisher(String value) { 2673 if (Utilities.noString(value)) 2674 this.publisher = null; 2675 else { 2676 if (this.publisher == null) 2677 this.publisher = new StringType(); 2678 this.publisher.setValue(value); 2679 } 2680 return this; 2681 } 2682 2683 /** 2684 * @return {@link #contact} (Contact details to assist a user in finding and 2685 * communicating with the publisher.) 2686 */ 2687 public List<ContactDetail> getContact() { 2688 if (this.contact == null) 2689 this.contact = new ArrayList<ContactDetail>(); 2690 return this.contact; 2691 } 2692 2693 /** 2694 * @return Returns a reference to <code>this</code> for easy method chaining 2695 */ 2696 public ActivityDefinition setContact(List<ContactDetail> theContact) { 2697 this.contact = theContact; 2698 return this; 2699 } 2700 2701 public boolean hasContact() { 2702 if (this.contact == null) 2703 return false; 2704 for (ContactDetail item : this.contact) 2705 if (!item.isEmpty()) 2706 return true; 2707 return false; 2708 } 2709 2710 public ContactDetail addContact() { // 3 2711 ContactDetail t = new ContactDetail(); 2712 if (this.contact == null) 2713 this.contact = new ArrayList<ContactDetail>(); 2714 this.contact.add(t); 2715 return t; 2716 } 2717 2718 public ActivityDefinition addContact(ContactDetail t) { // 3 2719 if (t == null) 2720 return this; 2721 if (this.contact == null) 2722 this.contact = new ArrayList<ContactDetail>(); 2723 this.contact.add(t); 2724 return this; 2725 } 2726 2727 /** 2728 * @return The first repetition of repeating field {@link #contact}, creating it 2729 * if it does not already exist 2730 */ 2731 public ContactDetail getContactFirstRep() { 2732 if (getContact().isEmpty()) { 2733 addContact(); 2734 } 2735 return getContact().get(0); 2736 } 2737 2738 /** 2739 * @return {@link #description} (A free text natural language description of the 2740 * activity definition from a consumer's perspective.). This is the 2741 * underlying object with id, value and extensions. The accessor 2742 * "getDescription" gives direct access to the value 2743 */ 2744 public MarkdownType getDescriptionElement() { 2745 if (this.description == null) 2746 if (Configuration.errorOnAutoCreate()) 2747 throw new Error("Attempt to auto-create ActivityDefinition.description"); 2748 else if (Configuration.doAutoCreate()) 2749 this.description = new MarkdownType(); // bb 2750 return this.description; 2751 } 2752 2753 public boolean hasDescriptionElement() { 2754 return this.description != null && !this.description.isEmpty(); 2755 } 2756 2757 public boolean hasDescription() { 2758 return this.description != null && !this.description.isEmpty(); 2759 } 2760 2761 /** 2762 * @param value {@link #description} (A free text natural language description 2763 * of the activity definition from a consumer's perspective.). This 2764 * is the underlying object with id, value and extensions. The 2765 * accessor "getDescription" gives direct access to the value 2766 */ 2767 public ActivityDefinition setDescriptionElement(MarkdownType value) { 2768 this.description = value; 2769 return this; 2770 } 2771 2772 /** 2773 * @return A free text natural language description of the activity definition 2774 * from a consumer's perspective. 2775 */ 2776 public String getDescription() { 2777 return this.description == null ? null : this.description.getValue(); 2778 } 2779 2780 /** 2781 * @param value A free text natural language description of the activity 2782 * definition from a consumer's perspective. 2783 */ 2784 public ActivityDefinition setDescription(String value) { 2785 if (value == null) 2786 this.description = null; 2787 else { 2788 if (this.description == null) 2789 this.description = new MarkdownType(); 2790 this.description.setValue(value); 2791 } 2792 return this; 2793 } 2794 2795 /** 2796 * @return {@link #useContext} (The content was developed with a focus and 2797 * intent of supporting the contexts that are listed. These contexts may 2798 * be general categories (gender, age, ...) or may be references to 2799 * specific programs (insurance plans, studies, ...) and may be used to 2800 * assist with indexing and searching for appropriate activity 2801 * definition instances.) 2802 */ 2803 public List<UsageContext> getUseContext() { 2804 if (this.useContext == null) 2805 this.useContext = new ArrayList<UsageContext>(); 2806 return this.useContext; 2807 } 2808 2809 /** 2810 * @return Returns a reference to <code>this</code> for easy method chaining 2811 */ 2812 public ActivityDefinition setUseContext(List<UsageContext> theUseContext) { 2813 this.useContext = theUseContext; 2814 return this; 2815 } 2816 2817 public boolean hasUseContext() { 2818 if (this.useContext == null) 2819 return false; 2820 for (UsageContext item : this.useContext) 2821 if (!item.isEmpty()) 2822 return true; 2823 return false; 2824 } 2825 2826 public UsageContext addUseContext() { // 3 2827 UsageContext t = new UsageContext(); 2828 if (this.useContext == null) 2829 this.useContext = new ArrayList<UsageContext>(); 2830 this.useContext.add(t); 2831 return t; 2832 } 2833 2834 public ActivityDefinition addUseContext(UsageContext t) { // 3 2835 if (t == null) 2836 return this; 2837 if (this.useContext == null) 2838 this.useContext = new ArrayList<UsageContext>(); 2839 this.useContext.add(t); 2840 return this; 2841 } 2842 2843 /** 2844 * @return The first repetition of repeating field {@link #useContext}, creating 2845 * it if it does not already exist 2846 */ 2847 public UsageContext getUseContextFirstRep() { 2848 if (getUseContext().isEmpty()) { 2849 addUseContext(); 2850 } 2851 return getUseContext().get(0); 2852 } 2853 2854 /** 2855 * @return {@link #jurisdiction} (A legal or geographic region in which the 2856 * activity definition is intended to be used.) 2857 */ 2858 public List<CodeableConcept> getJurisdiction() { 2859 if (this.jurisdiction == null) 2860 this.jurisdiction = new ArrayList<CodeableConcept>(); 2861 return this.jurisdiction; 2862 } 2863 2864 /** 2865 * @return Returns a reference to <code>this</code> for easy method chaining 2866 */ 2867 public ActivityDefinition setJurisdiction(List<CodeableConcept> theJurisdiction) { 2868 this.jurisdiction = theJurisdiction; 2869 return this; 2870 } 2871 2872 public boolean hasJurisdiction() { 2873 if (this.jurisdiction == null) 2874 return false; 2875 for (CodeableConcept item : this.jurisdiction) 2876 if (!item.isEmpty()) 2877 return true; 2878 return false; 2879 } 2880 2881 public CodeableConcept addJurisdiction() { // 3 2882 CodeableConcept t = new CodeableConcept(); 2883 if (this.jurisdiction == null) 2884 this.jurisdiction = new ArrayList<CodeableConcept>(); 2885 this.jurisdiction.add(t); 2886 return t; 2887 } 2888 2889 public ActivityDefinition addJurisdiction(CodeableConcept t) { // 3 2890 if (t == null) 2891 return this; 2892 if (this.jurisdiction == null) 2893 this.jurisdiction = new ArrayList<CodeableConcept>(); 2894 this.jurisdiction.add(t); 2895 return this; 2896 } 2897 2898 /** 2899 * @return The first repetition of repeating field {@link #jurisdiction}, 2900 * creating it if it does not already exist 2901 */ 2902 public CodeableConcept getJurisdictionFirstRep() { 2903 if (getJurisdiction().isEmpty()) { 2904 addJurisdiction(); 2905 } 2906 return getJurisdiction().get(0); 2907 } 2908 2909 /** 2910 * @return {@link #purpose} (Explanation of why this activity definition is 2911 * needed and why it has been designed as it has.). This is the 2912 * underlying object with id, value and extensions. The accessor 2913 * "getPurpose" gives direct access to the value 2914 */ 2915 public MarkdownType getPurposeElement() { 2916 if (this.purpose == null) 2917 if (Configuration.errorOnAutoCreate()) 2918 throw new Error("Attempt to auto-create ActivityDefinition.purpose"); 2919 else if (Configuration.doAutoCreate()) 2920 this.purpose = new MarkdownType(); // bb 2921 return this.purpose; 2922 } 2923 2924 public boolean hasPurposeElement() { 2925 return this.purpose != null && !this.purpose.isEmpty(); 2926 } 2927 2928 public boolean hasPurpose() { 2929 return this.purpose != null && !this.purpose.isEmpty(); 2930 } 2931 2932 /** 2933 * @param value {@link #purpose} (Explanation of why this activity definition is 2934 * needed and why it has been designed as it has.). This is the 2935 * underlying object with id, value and extensions. The accessor 2936 * "getPurpose" gives direct access to the value 2937 */ 2938 public ActivityDefinition setPurposeElement(MarkdownType value) { 2939 this.purpose = value; 2940 return this; 2941 } 2942 2943 /** 2944 * @return Explanation of why this activity definition is needed and why it has 2945 * been designed as it has. 2946 */ 2947 public String getPurpose() { 2948 return this.purpose == null ? null : this.purpose.getValue(); 2949 } 2950 2951 /** 2952 * @param value Explanation of why this activity definition is needed and why it 2953 * has been designed as it has. 2954 */ 2955 public ActivityDefinition setPurpose(String value) { 2956 if (value == null) 2957 this.purpose = null; 2958 else { 2959 if (this.purpose == null) 2960 this.purpose = new MarkdownType(); 2961 this.purpose.setValue(value); 2962 } 2963 return this; 2964 } 2965 2966 /** 2967 * @return {@link #usage} (A detailed description of how the activity definition 2968 * is used from a clinical perspective.). This is the underlying object 2969 * with id, value and extensions. The accessor "getUsage" gives direct 2970 * access to the value 2971 */ 2972 public StringType getUsageElement() { 2973 if (this.usage == null) 2974 if (Configuration.errorOnAutoCreate()) 2975 throw new Error("Attempt to auto-create ActivityDefinition.usage"); 2976 else if (Configuration.doAutoCreate()) 2977 this.usage = new StringType(); // bb 2978 return this.usage; 2979 } 2980 2981 public boolean hasUsageElement() { 2982 return this.usage != null && !this.usage.isEmpty(); 2983 } 2984 2985 public boolean hasUsage() { 2986 return this.usage != null && !this.usage.isEmpty(); 2987 } 2988 2989 /** 2990 * @param value {@link #usage} (A detailed description of how the activity 2991 * definition is used from a clinical perspective.). This is the 2992 * underlying object with id, value and extensions. The accessor 2993 * "getUsage" gives direct access to the value 2994 */ 2995 public ActivityDefinition setUsageElement(StringType value) { 2996 this.usage = value; 2997 return this; 2998 } 2999 3000 /** 3001 * @return A detailed description of how the activity definition is used from a 3002 * clinical perspective. 3003 */ 3004 public String getUsage() { 3005 return this.usage == null ? null : this.usage.getValue(); 3006 } 3007 3008 /** 3009 * @param value A detailed description of how the activity definition is used 3010 * from a clinical perspective. 3011 */ 3012 public ActivityDefinition setUsage(String value) { 3013 if (Utilities.noString(value)) 3014 this.usage = null; 3015 else { 3016 if (this.usage == null) 3017 this.usage = new StringType(); 3018 this.usage.setValue(value); 3019 } 3020 return this; 3021 } 3022 3023 /** 3024 * @return {@link #copyright} (A copyright statement relating to the activity 3025 * definition and/or its contents. Copyright statements are generally 3026 * legal restrictions on the use and publishing of the activity 3027 * definition.). This is the underlying object with id, value and 3028 * extensions. The accessor "getCopyright" gives direct access to the 3029 * value 3030 */ 3031 public MarkdownType getCopyrightElement() { 3032 if (this.copyright == null) 3033 if (Configuration.errorOnAutoCreate()) 3034 throw new Error("Attempt to auto-create ActivityDefinition.copyright"); 3035 else if (Configuration.doAutoCreate()) 3036 this.copyright = new MarkdownType(); // bb 3037 return this.copyright; 3038 } 3039 3040 public boolean hasCopyrightElement() { 3041 return this.copyright != null && !this.copyright.isEmpty(); 3042 } 3043 3044 public boolean hasCopyright() { 3045 return this.copyright != null && !this.copyright.isEmpty(); 3046 } 3047 3048 /** 3049 * @param value {@link #copyright} (A copyright statement relating to the 3050 * activity definition and/or its contents. Copyright statements 3051 * are generally legal restrictions on the use and publishing of 3052 * the activity definition.). This is the underlying object with 3053 * id, value and extensions. The accessor "getCopyright" gives 3054 * direct access to the value 3055 */ 3056 public ActivityDefinition setCopyrightElement(MarkdownType value) { 3057 this.copyright = value; 3058 return this; 3059 } 3060 3061 /** 3062 * @return A copyright statement relating to the activity definition and/or its 3063 * contents. Copyright statements are generally legal restrictions on 3064 * the use and publishing of the activity definition. 3065 */ 3066 public String getCopyright() { 3067 return this.copyright == null ? null : this.copyright.getValue(); 3068 } 3069 3070 /** 3071 * @param value A copyright statement relating to the activity definition and/or 3072 * its contents. Copyright statements are generally legal 3073 * restrictions on the use and publishing of the activity 3074 * definition. 3075 */ 3076 public ActivityDefinition setCopyright(String value) { 3077 if (value == null) 3078 this.copyright = null; 3079 else { 3080 if (this.copyright == null) 3081 this.copyright = new MarkdownType(); 3082 this.copyright.setValue(value); 3083 } 3084 return this; 3085 } 3086 3087 /** 3088 * @return {@link #approvalDate} (The date on which the resource content was 3089 * approved by the publisher. Approval happens once when the content is 3090 * officially approved for usage.). This is the underlying object with 3091 * id, value and extensions. The accessor "getApprovalDate" gives direct 3092 * access to the value 3093 */ 3094 public DateType getApprovalDateElement() { 3095 if (this.approvalDate == null) 3096 if (Configuration.errorOnAutoCreate()) 3097 throw new Error("Attempt to auto-create ActivityDefinition.approvalDate"); 3098 else if (Configuration.doAutoCreate()) 3099 this.approvalDate = new DateType(); // bb 3100 return this.approvalDate; 3101 } 3102 3103 public boolean hasApprovalDateElement() { 3104 return this.approvalDate != null && !this.approvalDate.isEmpty(); 3105 } 3106 3107 public boolean hasApprovalDate() { 3108 return this.approvalDate != null && !this.approvalDate.isEmpty(); 3109 } 3110 3111 /** 3112 * @param value {@link #approvalDate} (The date on which the resource content 3113 * was approved by the publisher. Approval happens once when the 3114 * content is officially approved for usage.). This is the 3115 * underlying object with id, value and extensions. The accessor 3116 * "getApprovalDate" gives direct access to the value 3117 */ 3118 public ActivityDefinition setApprovalDateElement(DateType value) { 3119 this.approvalDate = value; 3120 return this; 3121 } 3122 3123 /** 3124 * @return The date on which the resource content was approved by the publisher. 3125 * Approval happens once when the content is officially approved for 3126 * usage. 3127 */ 3128 public Date getApprovalDate() { 3129 return this.approvalDate == null ? null : this.approvalDate.getValue(); 3130 } 3131 3132 /** 3133 * @param value The date on which the resource content was approved by the 3134 * publisher. Approval happens once when the content is officially 3135 * approved for usage. 3136 */ 3137 public ActivityDefinition setApprovalDate(Date value) { 3138 if (value == null) 3139 this.approvalDate = null; 3140 else { 3141 if (this.approvalDate == null) 3142 this.approvalDate = new DateType(); 3143 this.approvalDate.setValue(value); 3144 } 3145 return this; 3146 } 3147 3148 /** 3149 * @return {@link #lastReviewDate} (The date on which the resource content was 3150 * last reviewed. Review happens periodically after approval but does 3151 * not change the original approval date.). This is the underlying 3152 * object with id, value and extensions. The accessor 3153 * "getLastReviewDate" gives direct access to the value 3154 */ 3155 public DateType getLastReviewDateElement() { 3156 if (this.lastReviewDate == null) 3157 if (Configuration.errorOnAutoCreate()) 3158 throw new Error("Attempt to auto-create ActivityDefinition.lastReviewDate"); 3159 else if (Configuration.doAutoCreate()) 3160 this.lastReviewDate = new DateType(); // bb 3161 return this.lastReviewDate; 3162 } 3163 3164 public boolean hasLastReviewDateElement() { 3165 return this.lastReviewDate != null && !this.lastReviewDate.isEmpty(); 3166 } 3167 3168 public boolean hasLastReviewDate() { 3169 return this.lastReviewDate != null && !this.lastReviewDate.isEmpty(); 3170 } 3171 3172 /** 3173 * @param value {@link #lastReviewDate} (The date on which the resource content 3174 * was last reviewed. Review happens periodically after approval 3175 * but does not change the original approval date.). This is the 3176 * underlying object with id, value and extensions. The accessor 3177 * "getLastReviewDate" gives direct access to the value 3178 */ 3179 public ActivityDefinition setLastReviewDateElement(DateType value) { 3180 this.lastReviewDate = value; 3181 return this; 3182 } 3183 3184 /** 3185 * @return The date on which the resource content was last reviewed. Review 3186 * happens periodically after approval but does not change the original 3187 * approval date. 3188 */ 3189 public Date getLastReviewDate() { 3190 return this.lastReviewDate == null ? null : this.lastReviewDate.getValue(); 3191 } 3192 3193 /** 3194 * @param value The date on which the resource content was last reviewed. Review 3195 * happens periodically after approval but does not change the 3196 * original approval date. 3197 */ 3198 public ActivityDefinition setLastReviewDate(Date value) { 3199 if (value == null) 3200 this.lastReviewDate = null; 3201 else { 3202 if (this.lastReviewDate == null) 3203 this.lastReviewDate = new DateType(); 3204 this.lastReviewDate.setValue(value); 3205 } 3206 return this; 3207 } 3208 3209 /** 3210 * @return {@link #effectivePeriod} (The period during which the activity 3211 * definition content was or is planned to be in active use.) 3212 */ 3213 public Period getEffectivePeriod() { 3214 if (this.effectivePeriod == null) 3215 if (Configuration.errorOnAutoCreate()) 3216 throw new Error("Attempt to auto-create ActivityDefinition.effectivePeriod"); 3217 else if (Configuration.doAutoCreate()) 3218 this.effectivePeriod = new Period(); // cc 3219 return this.effectivePeriod; 3220 } 3221 3222 public boolean hasEffectivePeriod() { 3223 return this.effectivePeriod != null && !this.effectivePeriod.isEmpty(); 3224 } 3225 3226 /** 3227 * @param value {@link #effectivePeriod} (The period during which the activity 3228 * definition content was or is planned to be in active use.) 3229 */ 3230 public ActivityDefinition setEffectivePeriod(Period value) { 3231 this.effectivePeriod = value; 3232 return this; 3233 } 3234 3235 /** 3236 * @return {@link #topic} (Descriptive topics related to the content of the 3237 * activity. Topics provide a high-level categorization of the activity 3238 * that can be useful for filtering and searching.) 3239 */ 3240 public List<CodeableConcept> getTopic() { 3241 if (this.topic == null) 3242 this.topic = new ArrayList<CodeableConcept>(); 3243 return this.topic; 3244 } 3245 3246 /** 3247 * @return Returns a reference to <code>this</code> for easy method chaining 3248 */ 3249 public ActivityDefinition setTopic(List<CodeableConcept> theTopic) { 3250 this.topic = theTopic; 3251 return this; 3252 } 3253 3254 public boolean hasTopic() { 3255 if (this.topic == null) 3256 return false; 3257 for (CodeableConcept item : this.topic) 3258 if (!item.isEmpty()) 3259 return true; 3260 return false; 3261 } 3262 3263 public CodeableConcept addTopic() { // 3 3264 CodeableConcept t = new CodeableConcept(); 3265 if (this.topic == null) 3266 this.topic = new ArrayList<CodeableConcept>(); 3267 this.topic.add(t); 3268 return t; 3269 } 3270 3271 public ActivityDefinition addTopic(CodeableConcept t) { // 3 3272 if (t == null) 3273 return this; 3274 if (this.topic == null) 3275 this.topic = new ArrayList<CodeableConcept>(); 3276 this.topic.add(t); 3277 return this; 3278 } 3279 3280 /** 3281 * @return The first repetition of repeating field {@link #topic}, creating it 3282 * if it does not already exist 3283 */ 3284 public CodeableConcept getTopicFirstRep() { 3285 if (getTopic().isEmpty()) { 3286 addTopic(); 3287 } 3288 return getTopic().get(0); 3289 } 3290 3291 /** 3292 * @return {@link #author} (An individiual or organization primarily involved in 3293 * the creation and maintenance of the content.) 3294 */ 3295 public List<ContactDetail> getAuthor() { 3296 if (this.author == null) 3297 this.author = new ArrayList<ContactDetail>(); 3298 return this.author; 3299 } 3300 3301 /** 3302 * @return Returns a reference to <code>this</code> for easy method chaining 3303 */ 3304 public ActivityDefinition setAuthor(List<ContactDetail> theAuthor) { 3305 this.author = theAuthor; 3306 return this; 3307 } 3308 3309 public boolean hasAuthor() { 3310 if (this.author == null) 3311 return false; 3312 for (ContactDetail item : this.author) 3313 if (!item.isEmpty()) 3314 return true; 3315 return false; 3316 } 3317 3318 public ContactDetail addAuthor() { // 3 3319 ContactDetail t = new ContactDetail(); 3320 if (this.author == null) 3321 this.author = new ArrayList<ContactDetail>(); 3322 this.author.add(t); 3323 return t; 3324 } 3325 3326 public ActivityDefinition addAuthor(ContactDetail t) { // 3 3327 if (t == null) 3328 return this; 3329 if (this.author == null) 3330 this.author = new ArrayList<ContactDetail>(); 3331 this.author.add(t); 3332 return this; 3333 } 3334 3335 /** 3336 * @return The first repetition of repeating field {@link #author}, creating it 3337 * if it does not already exist 3338 */ 3339 public ContactDetail getAuthorFirstRep() { 3340 if (getAuthor().isEmpty()) { 3341 addAuthor(); 3342 } 3343 return getAuthor().get(0); 3344 } 3345 3346 /** 3347 * @return {@link #editor} (An individual or organization primarily responsible 3348 * for internal coherence of the content.) 3349 */ 3350 public List<ContactDetail> getEditor() { 3351 if (this.editor == null) 3352 this.editor = new ArrayList<ContactDetail>(); 3353 return this.editor; 3354 } 3355 3356 /** 3357 * @return Returns a reference to <code>this</code> for easy method chaining 3358 */ 3359 public ActivityDefinition setEditor(List<ContactDetail> theEditor) { 3360 this.editor = theEditor; 3361 return this; 3362 } 3363 3364 public boolean hasEditor() { 3365 if (this.editor == null) 3366 return false; 3367 for (ContactDetail item : this.editor) 3368 if (!item.isEmpty()) 3369 return true; 3370 return false; 3371 } 3372 3373 public ContactDetail addEditor() { // 3 3374 ContactDetail t = new ContactDetail(); 3375 if (this.editor == null) 3376 this.editor = new ArrayList<ContactDetail>(); 3377 this.editor.add(t); 3378 return t; 3379 } 3380 3381 public ActivityDefinition addEditor(ContactDetail t) { // 3 3382 if (t == null) 3383 return this; 3384 if (this.editor == null) 3385 this.editor = new ArrayList<ContactDetail>(); 3386 this.editor.add(t); 3387 return this; 3388 } 3389 3390 /** 3391 * @return The first repetition of repeating field {@link #editor}, creating it 3392 * if it does not already exist 3393 */ 3394 public ContactDetail getEditorFirstRep() { 3395 if (getEditor().isEmpty()) { 3396 addEditor(); 3397 } 3398 return getEditor().get(0); 3399 } 3400 3401 /** 3402 * @return {@link #reviewer} (An individual or organization primarily 3403 * responsible for review of some aspect of the content.) 3404 */ 3405 public List<ContactDetail> getReviewer() { 3406 if (this.reviewer == null) 3407 this.reviewer = new ArrayList<ContactDetail>(); 3408 return this.reviewer; 3409 } 3410 3411 /** 3412 * @return Returns a reference to <code>this</code> for easy method chaining 3413 */ 3414 public ActivityDefinition setReviewer(List<ContactDetail> theReviewer) { 3415 this.reviewer = theReviewer; 3416 return this; 3417 } 3418 3419 public boolean hasReviewer() { 3420 if (this.reviewer == null) 3421 return false; 3422 for (ContactDetail item : this.reviewer) 3423 if (!item.isEmpty()) 3424 return true; 3425 return false; 3426 } 3427 3428 public ContactDetail addReviewer() { // 3 3429 ContactDetail t = new ContactDetail(); 3430 if (this.reviewer == null) 3431 this.reviewer = new ArrayList<ContactDetail>(); 3432 this.reviewer.add(t); 3433 return t; 3434 } 3435 3436 public ActivityDefinition addReviewer(ContactDetail t) { // 3 3437 if (t == null) 3438 return this; 3439 if (this.reviewer == null) 3440 this.reviewer = new ArrayList<ContactDetail>(); 3441 this.reviewer.add(t); 3442 return this; 3443 } 3444 3445 /** 3446 * @return The first repetition of repeating field {@link #reviewer}, creating 3447 * it if it does not already exist 3448 */ 3449 public ContactDetail getReviewerFirstRep() { 3450 if (getReviewer().isEmpty()) { 3451 addReviewer(); 3452 } 3453 return getReviewer().get(0); 3454 } 3455 3456 /** 3457 * @return {@link #endorser} (An individual or organization responsible for 3458 * officially endorsing the content for use in some setting.) 3459 */ 3460 public List<ContactDetail> getEndorser() { 3461 if (this.endorser == null) 3462 this.endorser = new ArrayList<ContactDetail>(); 3463 return this.endorser; 3464 } 3465 3466 /** 3467 * @return Returns a reference to <code>this</code> for easy method chaining 3468 */ 3469 public ActivityDefinition setEndorser(List<ContactDetail> theEndorser) { 3470 this.endorser = theEndorser; 3471 return this; 3472 } 3473 3474 public boolean hasEndorser() { 3475 if (this.endorser == null) 3476 return false; 3477 for (ContactDetail item : this.endorser) 3478 if (!item.isEmpty()) 3479 return true; 3480 return false; 3481 } 3482 3483 public ContactDetail addEndorser() { // 3 3484 ContactDetail t = new ContactDetail(); 3485 if (this.endorser == null) 3486 this.endorser = new ArrayList<ContactDetail>(); 3487 this.endorser.add(t); 3488 return t; 3489 } 3490 3491 public ActivityDefinition addEndorser(ContactDetail t) { // 3 3492 if (t == null) 3493 return this; 3494 if (this.endorser == null) 3495 this.endorser = new ArrayList<ContactDetail>(); 3496 this.endorser.add(t); 3497 return this; 3498 } 3499 3500 /** 3501 * @return The first repetition of repeating field {@link #endorser}, creating 3502 * it if it does not already exist 3503 */ 3504 public ContactDetail getEndorserFirstRep() { 3505 if (getEndorser().isEmpty()) { 3506 addEndorser(); 3507 } 3508 return getEndorser().get(0); 3509 } 3510 3511 /** 3512 * @return {@link #relatedArtifact} (Related artifacts such as additional 3513 * documentation, justification, or bibliographic references.) 3514 */ 3515 public List<RelatedArtifact> getRelatedArtifact() { 3516 if (this.relatedArtifact == null) 3517 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 3518 return this.relatedArtifact; 3519 } 3520 3521 /** 3522 * @return Returns a reference to <code>this</code> for easy method chaining 3523 */ 3524 public ActivityDefinition setRelatedArtifact(List<RelatedArtifact> theRelatedArtifact) { 3525 this.relatedArtifact = theRelatedArtifact; 3526 return this; 3527 } 3528 3529 public boolean hasRelatedArtifact() { 3530 if (this.relatedArtifact == null) 3531 return false; 3532 for (RelatedArtifact item : this.relatedArtifact) 3533 if (!item.isEmpty()) 3534 return true; 3535 return false; 3536 } 3537 3538 public RelatedArtifact addRelatedArtifact() { // 3 3539 RelatedArtifact t = new RelatedArtifact(); 3540 if (this.relatedArtifact == null) 3541 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 3542 this.relatedArtifact.add(t); 3543 return t; 3544 } 3545 3546 public ActivityDefinition addRelatedArtifact(RelatedArtifact t) { // 3 3547 if (t == null) 3548 return this; 3549 if (this.relatedArtifact == null) 3550 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 3551 this.relatedArtifact.add(t); 3552 return this; 3553 } 3554 3555 /** 3556 * @return The first repetition of repeating field {@link #relatedArtifact}, 3557 * creating it if it does not already exist 3558 */ 3559 public RelatedArtifact getRelatedArtifactFirstRep() { 3560 if (getRelatedArtifact().isEmpty()) { 3561 addRelatedArtifact(); 3562 } 3563 return getRelatedArtifact().get(0); 3564 } 3565 3566 /** 3567 * @return {@link #library} (A reference to a Library resource containing any 3568 * formal logic used by the activity definition.) 3569 */ 3570 public List<CanonicalType> getLibrary() { 3571 if (this.library == null) 3572 this.library = new ArrayList<CanonicalType>(); 3573 return this.library; 3574 } 3575 3576 /** 3577 * @return Returns a reference to <code>this</code> for easy method chaining 3578 */ 3579 public ActivityDefinition setLibrary(List<CanonicalType> theLibrary) { 3580 this.library = theLibrary; 3581 return this; 3582 } 3583 3584 public boolean hasLibrary() { 3585 if (this.library == null) 3586 return false; 3587 for (CanonicalType item : this.library) 3588 if (!item.isEmpty()) 3589 return true; 3590 return false; 3591 } 3592 3593 /** 3594 * @return {@link #library} (A reference to a Library resource containing any 3595 * formal logic used by the activity definition.) 3596 */ 3597 public CanonicalType addLibraryElement() {// 2 3598 CanonicalType t = new CanonicalType(); 3599 if (this.library == null) 3600 this.library = new ArrayList<CanonicalType>(); 3601 this.library.add(t); 3602 return t; 3603 } 3604 3605 /** 3606 * @param value {@link #library} (A reference to a Library resource containing 3607 * any formal logic used by the activity definition.) 3608 */ 3609 public ActivityDefinition addLibrary(String value) { // 1 3610 CanonicalType t = new CanonicalType(); 3611 t.setValue(value); 3612 if (this.library == null) 3613 this.library = new ArrayList<CanonicalType>(); 3614 this.library.add(t); 3615 return this; 3616 } 3617 3618 /** 3619 * @param value {@link #library} (A reference to a Library resource containing 3620 * any formal logic used by the activity definition.) 3621 */ 3622 public boolean hasLibrary(String value) { 3623 if (this.library == null) 3624 return false; 3625 for (CanonicalType v : this.library) 3626 if (v.getValue().equals(value)) // canonical(Library) 3627 return true; 3628 return false; 3629 } 3630 3631 /** 3632 * @return {@link #kind} (A description of the kind of resource the activity 3633 * definition is representing. For example, a MedicationRequest, a 3634 * ServiceRequest, or a CommunicationRequest. Typically, but not always, 3635 * this is a Request resource.). This is the underlying object with id, 3636 * value and extensions. The accessor "getKind" gives direct access to 3637 * the value 3638 */ 3639 public Enumeration<ActivityDefinitionKind> getKindElement() { 3640 if (this.kind == null) 3641 if (Configuration.errorOnAutoCreate()) 3642 throw new Error("Attempt to auto-create ActivityDefinition.kind"); 3643 else if (Configuration.doAutoCreate()) 3644 this.kind = new Enumeration<ActivityDefinitionKind>(new ActivityDefinitionKindEnumFactory()); // bb 3645 return this.kind; 3646 } 3647 3648 public boolean hasKindElement() { 3649 return this.kind != null && !this.kind.isEmpty(); 3650 } 3651 3652 public boolean hasKind() { 3653 return this.kind != null && !this.kind.isEmpty(); 3654 } 3655 3656 /** 3657 * @param value {@link #kind} (A description of the kind of resource the 3658 * activity definition is representing. For example, a 3659 * MedicationRequest, a ServiceRequest, or a CommunicationRequest. 3660 * Typically, but not always, this is a Request resource.). This is 3661 * the underlying object with id, value and extensions. The 3662 * accessor "getKind" gives direct access to the value 3663 */ 3664 public ActivityDefinition setKindElement(Enumeration<ActivityDefinitionKind> value) { 3665 this.kind = value; 3666 return this; 3667 } 3668 3669 /** 3670 * @return A description of the kind of resource the activity definition is 3671 * representing. For example, a MedicationRequest, a ServiceRequest, or 3672 * a CommunicationRequest. Typically, but not always, this is a Request 3673 * resource. 3674 */ 3675 public ActivityDefinitionKind getKind() { 3676 return this.kind == null ? null : this.kind.getValue(); 3677 } 3678 3679 /** 3680 * @param value A description of the kind of resource the activity definition is 3681 * representing. For example, a MedicationRequest, a 3682 * ServiceRequest, or a CommunicationRequest. Typically, but not 3683 * always, this is a Request resource. 3684 */ 3685 public ActivityDefinition setKind(ActivityDefinitionKind value) { 3686 if (value == null) 3687 this.kind = null; 3688 else { 3689 if (this.kind == null) 3690 this.kind = new Enumeration<ActivityDefinitionKind>(new ActivityDefinitionKindEnumFactory()); 3691 this.kind.setValue(value); 3692 } 3693 return this; 3694 } 3695 3696 /** 3697 * @return {@link #profile} (A profile to which the target of the activity 3698 * definition is expected to conform.). This is the underlying object 3699 * with id, value and extensions. The accessor "getProfile" gives direct 3700 * access to the value 3701 */ 3702 public CanonicalType getProfileElement() { 3703 if (this.profile == null) 3704 if (Configuration.errorOnAutoCreate()) 3705 throw new Error("Attempt to auto-create ActivityDefinition.profile"); 3706 else if (Configuration.doAutoCreate()) 3707 this.profile = new CanonicalType(); // bb 3708 return this.profile; 3709 } 3710 3711 public boolean hasProfileElement() { 3712 return this.profile != null && !this.profile.isEmpty(); 3713 } 3714 3715 public boolean hasProfile() { 3716 return this.profile != null && !this.profile.isEmpty(); 3717 } 3718 3719 /** 3720 * @param value {@link #profile} (A profile to which the target of the activity 3721 * definition is expected to conform.). This is the underlying 3722 * object with id, value and extensions. The accessor "getProfile" 3723 * gives direct access to the value 3724 */ 3725 public ActivityDefinition setProfileElement(CanonicalType value) { 3726 this.profile = value; 3727 return this; 3728 } 3729 3730 /** 3731 * @return A profile to which the target of the activity definition is expected 3732 * to conform. 3733 */ 3734 public String getProfile() { 3735 return this.profile == null ? null : this.profile.getValue(); 3736 } 3737 3738 /** 3739 * @param value A profile to which the target of the activity definition is 3740 * expected to conform. 3741 */ 3742 public ActivityDefinition setProfile(String value) { 3743 if (Utilities.noString(value)) 3744 this.profile = null; 3745 else { 3746 if (this.profile == null) 3747 this.profile = new CanonicalType(); 3748 this.profile.setValue(value); 3749 } 3750 return this; 3751 } 3752 3753 /** 3754 * @return {@link #code} (Detailed description of the type of activity; e.g. 3755 * What lab test, what procedure, what kind of encounter.) 3756 */ 3757 public CodeableConcept getCode() { 3758 if (this.code == null) 3759 if (Configuration.errorOnAutoCreate()) 3760 throw new Error("Attempt to auto-create ActivityDefinition.code"); 3761 else if (Configuration.doAutoCreate()) 3762 this.code = new CodeableConcept(); // cc 3763 return this.code; 3764 } 3765 3766 public boolean hasCode() { 3767 return this.code != null && !this.code.isEmpty(); 3768 } 3769 3770 /** 3771 * @param value {@link #code} (Detailed description of the type of activity; 3772 * e.g. What lab test, what procedure, what kind of encounter.) 3773 */ 3774 public ActivityDefinition setCode(CodeableConcept value) { 3775 this.code = value; 3776 return this; 3777 } 3778 3779 /** 3780 * @return {@link #intent} (Indicates the level of authority/intentionality 3781 * associated with the activity and where the request should fit into 3782 * the workflow chain.). This is the underlying object with id, value 3783 * and extensions. The accessor "getIntent" gives direct access to the 3784 * value 3785 */ 3786 public Enumeration<RequestIntent> getIntentElement() { 3787 if (this.intent == null) 3788 if (Configuration.errorOnAutoCreate()) 3789 throw new Error("Attempt to auto-create ActivityDefinition.intent"); 3790 else if (Configuration.doAutoCreate()) 3791 this.intent = new Enumeration<RequestIntent>(new RequestIntentEnumFactory()); // bb 3792 return this.intent; 3793 } 3794 3795 public boolean hasIntentElement() { 3796 return this.intent != null && !this.intent.isEmpty(); 3797 } 3798 3799 public boolean hasIntent() { 3800 return this.intent != null && !this.intent.isEmpty(); 3801 } 3802 3803 /** 3804 * @param value {@link #intent} (Indicates the level of authority/intentionality 3805 * associated with the activity and where the request should fit 3806 * into the workflow chain.). This is the underlying object with 3807 * id, value and extensions. The accessor "getIntent" gives direct 3808 * access to the value 3809 */ 3810 public ActivityDefinition setIntentElement(Enumeration<RequestIntent> value) { 3811 this.intent = value; 3812 return this; 3813 } 3814 3815 /** 3816 * @return Indicates the level of authority/intentionality associated with the 3817 * activity and where the request should fit into the workflow chain. 3818 */ 3819 public RequestIntent getIntent() { 3820 return this.intent == null ? null : this.intent.getValue(); 3821 } 3822 3823 /** 3824 * @param value Indicates the level of authority/intentionality associated with 3825 * the activity and where the request should fit into the workflow 3826 * chain. 3827 */ 3828 public ActivityDefinition setIntent(RequestIntent value) { 3829 if (value == null) 3830 this.intent = null; 3831 else { 3832 if (this.intent == null) 3833 this.intent = new Enumeration<RequestIntent>(new RequestIntentEnumFactory()); 3834 this.intent.setValue(value); 3835 } 3836 return this; 3837 } 3838 3839 /** 3840 * @return {@link #priority} (Indicates how quickly the activity should be 3841 * addressed with respect to other requests.). This is the underlying 3842 * object with id, value and extensions. The accessor "getPriority" 3843 * gives direct access to the value 3844 */ 3845 public Enumeration<RequestPriority> getPriorityElement() { 3846 if (this.priority == null) 3847 if (Configuration.errorOnAutoCreate()) 3848 throw new Error("Attempt to auto-create ActivityDefinition.priority"); 3849 else if (Configuration.doAutoCreate()) 3850 this.priority = new Enumeration<RequestPriority>(new RequestPriorityEnumFactory()); // bb 3851 return this.priority; 3852 } 3853 3854 public boolean hasPriorityElement() { 3855 return this.priority != null && !this.priority.isEmpty(); 3856 } 3857 3858 public boolean hasPriority() { 3859 return this.priority != null && !this.priority.isEmpty(); 3860 } 3861 3862 /** 3863 * @param value {@link #priority} (Indicates how quickly the activity should be 3864 * addressed with respect to other requests.). This is the 3865 * underlying object with id, value and extensions. The accessor 3866 * "getPriority" gives direct access to the value 3867 */ 3868 public ActivityDefinition setPriorityElement(Enumeration<RequestPriority> value) { 3869 this.priority = value; 3870 return this; 3871 } 3872 3873 /** 3874 * @return Indicates how quickly the activity should be addressed with respect 3875 * to other requests. 3876 */ 3877 public RequestPriority getPriority() { 3878 return this.priority == null ? null : this.priority.getValue(); 3879 } 3880 3881 /** 3882 * @param value Indicates how quickly the activity should be addressed with 3883 * respect to other requests. 3884 */ 3885 public ActivityDefinition setPriority(RequestPriority value) { 3886 if (value == null) 3887 this.priority = null; 3888 else { 3889 if (this.priority == null) 3890 this.priority = new Enumeration<RequestPriority>(new RequestPriorityEnumFactory()); 3891 this.priority.setValue(value); 3892 } 3893 return this; 3894 } 3895 3896 /** 3897 * @return {@link #doNotPerform} (Set this to true if the definition is to 3898 * indicate that a particular activity should NOT be performed. If true, 3899 * this element should be interpreted to reinforce a negative coding. 3900 * For example NPO as a code with a doNotPerform of true would still 3901 * indicate to NOT perform the action.). This is the underlying object 3902 * with id, value and extensions. The accessor "getDoNotPerform" gives 3903 * direct access to the value 3904 */ 3905 public BooleanType getDoNotPerformElement() { 3906 if (this.doNotPerform == null) 3907 if (Configuration.errorOnAutoCreate()) 3908 throw new Error("Attempt to auto-create ActivityDefinition.doNotPerform"); 3909 else if (Configuration.doAutoCreate()) 3910 this.doNotPerform = new BooleanType(); // bb 3911 return this.doNotPerform; 3912 } 3913 3914 public boolean hasDoNotPerformElement() { 3915 return this.doNotPerform != null && !this.doNotPerform.isEmpty(); 3916 } 3917 3918 public boolean hasDoNotPerform() { 3919 return this.doNotPerform != null && !this.doNotPerform.isEmpty(); 3920 } 3921 3922 /** 3923 * @param value {@link #doNotPerform} (Set this to true if the definition is to 3924 * indicate that a particular activity should NOT be performed. If 3925 * true, this element should be interpreted to reinforce a negative 3926 * coding. For example NPO as a code with a doNotPerform of true 3927 * would still indicate to NOT perform the action.). This is the 3928 * underlying object with id, value and extensions. The accessor 3929 * "getDoNotPerform" gives direct access to the value 3930 */ 3931 public ActivityDefinition setDoNotPerformElement(BooleanType value) { 3932 this.doNotPerform = value; 3933 return this; 3934 } 3935 3936 /** 3937 * @return Set this to true if the definition is to indicate that a particular 3938 * activity should NOT be performed. If true, this element should be 3939 * interpreted to reinforce a negative coding. For example NPO as a code 3940 * with a doNotPerform of true would still indicate to NOT perform the 3941 * action. 3942 */ 3943 public boolean getDoNotPerform() { 3944 return this.doNotPerform == null || this.doNotPerform.isEmpty() ? false : this.doNotPerform.getValue(); 3945 } 3946 3947 /** 3948 * @param value Set this to true if the definition is to indicate that a 3949 * particular activity should NOT be performed. If true, this 3950 * element should be interpreted to reinforce a negative coding. 3951 * For example NPO as a code with a doNotPerform of true would 3952 * still indicate to NOT perform the action. 3953 */ 3954 public ActivityDefinition setDoNotPerform(boolean value) { 3955 if (this.doNotPerform == null) 3956 this.doNotPerform = new BooleanType(); 3957 this.doNotPerform.setValue(value); 3958 return this; 3959 } 3960 3961 /** 3962 * @return {@link #timing} (The period, timing or frequency upon which the 3963 * described activity is to occur.) 3964 */ 3965 public Type getTiming() { 3966 return this.timing; 3967 } 3968 3969 /** 3970 * @return {@link #timing} (The period, timing or frequency upon which the 3971 * described activity is to occur.) 3972 */ 3973 public Timing getTimingTiming() throws FHIRException { 3974 if (this.timing == null) 3975 this.timing = new Timing(); 3976 if (!(this.timing instanceof Timing)) 3977 throw new FHIRException( 3978 "Type mismatch: the type Timing was expected, but " + this.timing.getClass().getName() + " was encountered"); 3979 return (Timing) this.timing; 3980 } 3981 3982 public boolean hasTimingTiming() { 3983 return this.timing instanceof Timing; 3984 } 3985 3986 /** 3987 * @return {@link #timing} (The period, timing or frequency upon which the 3988 * described activity is to occur.) 3989 */ 3990 public DateTimeType getTimingDateTimeType() throws FHIRException { 3991 if (this.timing == null) 3992 this.timing = new DateTimeType(); 3993 if (!(this.timing instanceof DateTimeType)) 3994 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but " 3995 + this.timing.getClass().getName() + " was encountered"); 3996 return (DateTimeType) this.timing; 3997 } 3998 3999 public boolean hasTimingDateTimeType() { 4000 return this.timing instanceof DateTimeType; 4001 } 4002 4003 /** 4004 * @return {@link #timing} (The period, timing or frequency upon which the 4005 * described activity is to occur.) 4006 */ 4007 public Age getTimingAge() throws FHIRException { 4008 if (this.timing == null) 4009 this.timing = new Age(); 4010 if (!(this.timing instanceof Age)) 4011 throw new FHIRException( 4012 "Type mismatch: the type Age was expected, but " + this.timing.getClass().getName() + " was encountered"); 4013 return (Age) this.timing; 4014 } 4015 4016 public boolean hasTimingAge() { 4017 return this.timing instanceof Age; 4018 } 4019 4020 /** 4021 * @return {@link #timing} (The period, timing or frequency upon which the 4022 * described activity is to occur.) 4023 */ 4024 public Period getTimingPeriod() throws FHIRException { 4025 if (this.timing == null) 4026 this.timing = new Period(); 4027 if (!(this.timing instanceof Period)) 4028 throw new FHIRException( 4029 "Type mismatch: the type Period was expected, but " + this.timing.getClass().getName() + " was encountered"); 4030 return (Period) this.timing; 4031 } 4032 4033 public boolean hasTimingPeriod() { 4034 return this.timing instanceof Period; 4035 } 4036 4037 /** 4038 * @return {@link #timing} (The period, timing or frequency upon which the 4039 * described activity is to occur.) 4040 */ 4041 public Range getTimingRange() throws FHIRException { 4042 if (this.timing == null) 4043 this.timing = new Range(); 4044 if (!(this.timing instanceof Range)) 4045 throw new FHIRException( 4046 "Type mismatch: the type Range was expected, but " + this.timing.getClass().getName() + " was encountered"); 4047 return (Range) this.timing; 4048 } 4049 4050 public boolean hasTimingRange() { 4051 return this.timing instanceof Range; 4052 } 4053 4054 /** 4055 * @return {@link #timing} (The period, timing or frequency upon which the 4056 * described activity is to occur.) 4057 */ 4058 public Duration getTimingDuration() throws FHIRException { 4059 if (this.timing == null) 4060 this.timing = new Duration(); 4061 if (!(this.timing instanceof Duration)) 4062 throw new FHIRException("Type mismatch: the type Duration was expected, but " + this.timing.getClass().getName() 4063 + " was encountered"); 4064 return (Duration) this.timing; 4065 } 4066 4067 public boolean hasTimingDuration() { 4068 return this.timing instanceof Duration; 4069 } 4070 4071 public boolean hasTiming() { 4072 return this.timing != null && !this.timing.isEmpty(); 4073 } 4074 4075 /** 4076 * @param value {@link #timing} (The period, timing or frequency upon which the 4077 * described activity is to occur.) 4078 */ 4079 public ActivityDefinition setTiming(Type value) { 4080 if (value != null && !(value instanceof Timing || value instanceof DateTimeType || value instanceof Age 4081 || value instanceof Period || value instanceof Range || value instanceof Duration)) 4082 throw new Error("Not the right type for ActivityDefinition.timing[x]: " + value.fhirType()); 4083 this.timing = value; 4084 return this; 4085 } 4086 4087 /** 4088 * @return {@link #location} (Identifies the facility where the activity will 4089 * occur; e.g. home, hospital, specific clinic, etc.) 4090 */ 4091 public Reference getLocation() { 4092 if (this.location == null) 4093 if (Configuration.errorOnAutoCreate()) 4094 throw new Error("Attempt to auto-create ActivityDefinition.location"); 4095 else if (Configuration.doAutoCreate()) 4096 this.location = new Reference(); // cc 4097 return this.location; 4098 } 4099 4100 public boolean hasLocation() { 4101 return this.location != null && !this.location.isEmpty(); 4102 } 4103 4104 /** 4105 * @param value {@link #location} (Identifies the facility where the activity 4106 * will occur; e.g. home, hospital, specific clinic, etc.) 4107 */ 4108 public ActivityDefinition setLocation(Reference value) { 4109 this.location = value; 4110 return this; 4111 } 4112 4113 /** 4114 * @return {@link #location} The actual object that is the target of the 4115 * reference. The reference library doesn't populate this, but you can 4116 * use it to hold the resource if you resolve it. (Identifies the 4117 * facility where the activity will occur; e.g. home, hospital, specific 4118 * clinic, etc.) 4119 */ 4120 public Location getLocationTarget() { 4121 if (this.locationTarget == null) 4122 if (Configuration.errorOnAutoCreate()) 4123 throw new Error("Attempt to auto-create ActivityDefinition.location"); 4124 else if (Configuration.doAutoCreate()) 4125 this.locationTarget = new Location(); // aa 4126 return this.locationTarget; 4127 } 4128 4129 /** 4130 * @param value {@link #location} The actual object that is the target of the 4131 * reference. The reference library doesn't use these, but you can 4132 * use it to hold the resource if you resolve it. (Identifies the 4133 * facility where the activity will occur; e.g. home, hospital, 4134 * specific clinic, etc.) 4135 */ 4136 public ActivityDefinition setLocationTarget(Location value) { 4137 this.locationTarget = value; 4138 return this; 4139 } 4140 4141 /** 4142 * @return {@link #participant} (Indicates who should participate in performing 4143 * the action described.) 4144 */ 4145 public List<ActivityDefinitionParticipantComponent> getParticipant() { 4146 if (this.participant == null) 4147 this.participant = new ArrayList<ActivityDefinitionParticipantComponent>(); 4148 return this.participant; 4149 } 4150 4151 /** 4152 * @return Returns a reference to <code>this</code> for easy method chaining 4153 */ 4154 public ActivityDefinition setParticipant(List<ActivityDefinitionParticipantComponent> theParticipant) { 4155 this.participant = theParticipant; 4156 return this; 4157 } 4158 4159 public boolean hasParticipant() { 4160 if (this.participant == null) 4161 return false; 4162 for (ActivityDefinitionParticipantComponent item : this.participant) 4163 if (!item.isEmpty()) 4164 return true; 4165 return false; 4166 } 4167 4168 public ActivityDefinitionParticipantComponent addParticipant() { // 3 4169 ActivityDefinitionParticipantComponent t = new ActivityDefinitionParticipantComponent(); 4170 if (this.participant == null) 4171 this.participant = new ArrayList<ActivityDefinitionParticipantComponent>(); 4172 this.participant.add(t); 4173 return t; 4174 } 4175 4176 public ActivityDefinition addParticipant(ActivityDefinitionParticipantComponent t) { // 3 4177 if (t == null) 4178 return this; 4179 if (this.participant == null) 4180 this.participant = new ArrayList<ActivityDefinitionParticipantComponent>(); 4181 this.participant.add(t); 4182 return this; 4183 } 4184 4185 /** 4186 * @return The first repetition of repeating field {@link #participant}, 4187 * creating it if it does not already exist 4188 */ 4189 public ActivityDefinitionParticipantComponent getParticipantFirstRep() { 4190 if (getParticipant().isEmpty()) { 4191 addParticipant(); 4192 } 4193 return getParticipant().get(0); 4194 } 4195 4196 /** 4197 * @return {@link #product} (Identifies the food, drug or other product being 4198 * consumed or supplied in the activity.) 4199 */ 4200 public Type getProduct() { 4201 return this.product; 4202 } 4203 4204 /** 4205 * @return {@link #product} (Identifies the food, drug or other product being 4206 * consumed or supplied in the activity.) 4207 */ 4208 public Reference getProductReference() throws FHIRException { 4209 if (this.product == null) 4210 this.product = new Reference(); 4211 if (!(this.product instanceof Reference)) 4212 throw new FHIRException("Type mismatch: the type Reference was expected, but " + this.product.getClass().getName() 4213 + " was encountered"); 4214 return (Reference) this.product; 4215 } 4216 4217 public boolean hasProductReference() { 4218 return this.product instanceof Reference; 4219 } 4220 4221 /** 4222 * @return {@link #product} (Identifies the food, drug or other product being 4223 * consumed or supplied in the activity.) 4224 */ 4225 public CodeableConcept getProductCodeableConcept() throws FHIRException { 4226 if (this.product == null) 4227 this.product = new CodeableConcept(); 4228 if (!(this.product instanceof CodeableConcept)) 4229 throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but " 4230 + this.product.getClass().getName() + " was encountered"); 4231 return (CodeableConcept) this.product; 4232 } 4233 4234 public boolean hasProductCodeableConcept() { 4235 return this.product instanceof CodeableConcept; 4236 } 4237 4238 public boolean hasProduct() { 4239 return this.product != null && !this.product.isEmpty(); 4240 } 4241 4242 /** 4243 * @param value {@link #product} (Identifies the food, drug or other product 4244 * being consumed or supplied in the activity.) 4245 */ 4246 public ActivityDefinition setProduct(Type value) { 4247 if (value != null && !(value instanceof Reference || value instanceof CodeableConcept)) 4248 throw new Error("Not the right type for ActivityDefinition.product[x]: " + value.fhirType()); 4249 this.product = value; 4250 return this; 4251 } 4252 4253 /** 4254 * @return {@link #quantity} (Identifies the quantity expected to be consumed at 4255 * once (per dose, per meal, etc.).) 4256 */ 4257 public Quantity getQuantity() { 4258 if (this.quantity == null) 4259 if (Configuration.errorOnAutoCreate()) 4260 throw new Error("Attempt to auto-create ActivityDefinition.quantity"); 4261 else if (Configuration.doAutoCreate()) 4262 this.quantity = new Quantity(); // cc 4263 return this.quantity; 4264 } 4265 4266 public boolean hasQuantity() { 4267 return this.quantity != null && !this.quantity.isEmpty(); 4268 } 4269 4270 /** 4271 * @param value {@link #quantity} (Identifies the quantity expected to be 4272 * consumed at once (per dose, per meal, etc.).) 4273 */ 4274 public ActivityDefinition setQuantity(Quantity value) { 4275 this.quantity = value; 4276 return this; 4277 } 4278 4279 /** 4280 * @return {@link #dosage} (Provides detailed dosage instructions in the same 4281 * way that they are described for MedicationRequest resources.) 4282 */ 4283 public List<Dosage> getDosage() { 4284 if (this.dosage == null) 4285 this.dosage = new ArrayList<Dosage>(); 4286 return this.dosage; 4287 } 4288 4289 /** 4290 * @return Returns a reference to <code>this</code> for easy method chaining 4291 */ 4292 public ActivityDefinition setDosage(List<Dosage> theDosage) { 4293 this.dosage = theDosage; 4294 return this; 4295 } 4296 4297 public boolean hasDosage() { 4298 if (this.dosage == null) 4299 return false; 4300 for (Dosage item : this.dosage) 4301 if (!item.isEmpty()) 4302 return true; 4303 return false; 4304 } 4305 4306 public Dosage addDosage() { // 3 4307 Dosage t = new Dosage(); 4308 if (this.dosage == null) 4309 this.dosage = new ArrayList<Dosage>(); 4310 this.dosage.add(t); 4311 return t; 4312 } 4313 4314 public ActivityDefinition addDosage(Dosage t) { // 3 4315 if (t == null) 4316 return this; 4317 if (this.dosage == null) 4318 this.dosage = new ArrayList<Dosage>(); 4319 this.dosage.add(t); 4320 return this; 4321 } 4322 4323 /** 4324 * @return The first repetition of repeating field {@link #dosage}, creating it 4325 * if it does not already exist 4326 */ 4327 public Dosage getDosageFirstRep() { 4328 if (getDosage().isEmpty()) { 4329 addDosage(); 4330 } 4331 return getDosage().get(0); 4332 } 4333 4334 /** 4335 * @return {@link #bodySite} (Indicates the sites on the subject's body where 4336 * the procedure should be performed (I.e. the target sites).) 4337 */ 4338 public List<CodeableConcept> getBodySite() { 4339 if (this.bodySite == null) 4340 this.bodySite = new ArrayList<CodeableConcept>(); 4341 return this.bodySite; 4342 } 4343 4344 /** 4345 * @return Returns a reference to <code>this</code> for easy method chaining 4346 */ 4347 public ActivityDefinition setBodySite(List<CodeableConcept> theBodySite) { 4348 this.bodySite = theBodySite; 4349 return this; 4350 } 4351 4352 public boolean hasBodySite() { 4353 if (this.bodySite == null) 4354 return false; 4355 for (CodeableConcept item : this.bodySite) 4356 if (!item.isEmpty()) 4357 return true; 4358 return false; 4359 } 4360 4361 public CodeableConcept addBodySite() { // 3 4362 CodeableConcept t = new CodeableConcept(); 4363 if (this.bodySite == null) 4364 this.bodySite = new ArrayList<CodeableConcept>(); 4365 this.bodySite.add(t); 4366 return t; 4367 } 4368 4369 public ActivityDefinition addBodySite(CodeableConcept t) { // 3 4370 if (t == null) 4371 return this; 4372 if (this.bodySite == null) 4373 this.bodySite = new ArrayList<CodeableConcept>(); 4374 this.bodySite.add(t); 4375 return this; 4376 } 4377 4378 /** 4379 * @return The first repetition of repeating field {@link #bodySite}, creating 4380 * it if it does not already exist 4381 */ 4382 public CodeableConcept getBodySiteFirstRep() { 4383 if (getBodySite().isEmpty()) { 4384 addBodySite(); 4385 } 4386 return getBodySite().get(0); 4387 } 4388 4389 /** 4390 * @return {@link #specimenRequirement} (Defines specimen requirements for the 4391 * action to be performed, such as required specimens for a lab test.) 4392 */ 4393 public List<Reference> getSpecimenRequirement() { 4394 if (this.specimenRequirement == null) 4395 this.specimenRequirement = new ArrayList<Reference>(); 4396 return this.specimenRequirement; 4397 } 4398 4399 /** 4400 * @return Returns a reference to <code>this</code> for easy method chaining 4401 */ 4402 public ActivityDefinition setSpecimenRequirement(List<Reference> theSpecimenRequirement) { 4403 this.specimenRequirement = theSpecimenRequirement; 4404 return this; 4405 } 4406 4407 public boolean hasSpecimenRequirement() { 4408 if (this.specimenRequirement == null) 4409 return false; 4410 for (Reference item : this.specimenRequirement) 4411 if (!item.isEmpty()) 4412 return true; 4413 return false; 4414 } 4415 4416 public Reference addSpecimenRequirement() { // 3 4417 Reference t = new Reference(); 4418 if (this.specimenRequirement == null) 4419 this.specimenRequirement = new ArrayList<Reference>(); 4420 this.specimenRequirement.add(t); 4421 return t; 4422 } 4423 4424 public ActivityDefinition addSpecimenRequirement(Reference t) { // 3 4425 if (t == null) 4426 return this; 4427 if (this.specimenRequirement == null) 4428 this.specimenRequirement = new ArrayList<Reference>(); 4429 this.specimenRequirement.add(t); 4430 return this; 4431 } 4432 4433 /** 4434 * @return The first repetition of repeating field {@link #specimenRequirement}, 4435 * creating it if it does not already exist 4436 */ 4437 public Reference getSpecimenRequirementFirstRep() { 4438 if (getSpecimenRequirement().isEmpty()) { 4439 addSpecimenRequirement(); 4440 } 4441 return getSpecimenRequirement().get(0); 4442 } 4443 4444 /** 4445 * @return {@link #observationRequirement} (Defines observation requirements for 4446 * the action to be performed, such as body weight or surface area.) 4447 */ 4448 public List<Reference> getObservationRequirement() { 4449 if (this.observationRequirement == null) 4450 this.observationRequirement = new ArrayList<Reference>(); 4451 return this.observationRequirement; 4452 } 4453 4454 /** 4455 * @return Returns a reference to <code>this</code> for easy method chaining 4456 */ 4457 public ActivityDefinition setObservationRequirement(List<Reference> theObservationRequirement) { 4458 this.observationRequirement = theObservationRequirement; 4459 return this; 4460 } 4461 4462 public boolean hasObservationRequirement() { 4463 if (this.observationRequirement == null) 4464 return false; 4465 for (Reference item : this.observationRequirement) 4466 if (!item.isEmpty()) 4467 return true; 4468 return false; 4469 } 4470 4471 public Reference addObservationRequirement() { // 3 4472 Reference t = new Reference(); 4473 if (this.observationRequirement == null) 4474 this.observationRequirement = new ArrayList<Reference>(); 4475 this.observationRequirement.add(t); 4476 return t; 4477 } 4478 4479 public ActivityDefinition addObservationRequirement(Reference t) { // 3 4480 if (t == null) 4481 return this; 4482 if (this.observationRequirement == null) 4483 this.observationRequirement = new ArrayList<Reference>(); 4484 this.observationRequirement.add(t); 4485 return this; 4486 } 4487 4488 /** 4489 * @return The first repetition of repeating field 4490 * {@link #observationRequirement}, creating it if it does not already 4491 * exist 4492 */ 4493 public Reference getObservationRequirementFirstRep() { 4494 if (getObservationRequirement().isEmpty()) { 4495 addObservationRequirement(); 4496 } 4497 return getObservationRequirement().get(0); 4498 } 4499 4500 /** 4501 * @return {@link #observationResultRequirement} (Defines the observations that 4502 * are expected to be produced by the action.) 4503 */ 4504 public List<Reference> getObservationResultRequirement() { 4505 if (this.observationResultRequirement == null) 4506 this.observationResultRequirement = new ArrayList<Reference>(); 4507 return this.observationResultRequirement; 4508 } 4509 4510 /** 4511 * @return Returns a reference to <code>this</code> for easy method chaining 4512 */ 4513 public ActivityDefinition setObservationResultRequirement(List<Reference> theObservationResultRequirement) { 4514 this.observationResultRequirement = theObservationResultRequirement; 4515 return this; 4516 } 4517 4518 public boolean hasObservationResultRequirement() { 4519 if (this.observationResultRequirement == null) 4520 return false; 4521 for (Reference item : this.observationResultRequirement) 4522 if (!item.isEmpty()) 4523 return true; 4524 return false; 4525 } 4526 4527 public Reference addObservationResultRequirement() { // 3 4528 Reference t = new Reference(); 4529 if (this.observationResultRequirement == null) 4530 this.observationResultRequirement = new ArrayList<Reference>(); 4531 this.observationResultRequirement.add(t); 4532 return t; 4533 } 4534 4535 public ActivityDefinition addObservationResultRequirement(Reference t) { // 3 4536 if (t == null) 4537 return this; 4538 if (this.observationResultRequirement == null) 4539 this.observationResultRequirement = new ArrayList<Reference>(); 4540 this.observationResultRequirement.add(t); 4541 return this; 4542 } 4543 4544 /** 4545 * @return The first repetition of repeating field 4546 * {@link #observationResultRequirement}, creating it if it does not 4547 * already exist 4548 */ 4549 public Reference getObservationResultRequirementFirstRep() { 4550 if (getObservationResultRequirement().isEmpty()) { 4551 addObservationResultRequirement(); 4552 } 4553 return getObservationResultRequirement().get(0); 4554 } 4555 4556 /** 4557 * @return {@link #transform} (A reference to a StructureMap resource that 4558 * defines a transform that can be executed to produce the intent 4559 * resource using the ActivityDefinition instance as the input.). This 4560 * is the underlying object with id, value and extensions. The accessor 4561 * "getTransform" gives direct access to the value 4562 */ 4563 public CanonicalType getTransformElement() { 4564 if (this.transform == null) 4565 if (Configuration.errorOnAutoCreate()) 4566 throw new Error("Attempt to auto-create ActivityDefinition.transform"); 4567 else if (Configuration.doAutoCreate()) 4568 this.transform = new CanonicalType(); // bb 4569 return this.transform; 4570 } 4571 4572 public boolean hasTransformElement() { 4573 return this.transform != null && !this.transform.isEmpty(); 4574 } 4575 4576 public boolean hasTransform() { 4577 return this.transform != null && !this.transform.isEmpty(); 4578 } 4579 4580 /** 4581 * @param value {@link #transform} (A reference to a StructureMap resource that 4582 * defines a transform that can be executed to produce the intent 4583 * resource using the ActivityDefinition instance as the input.). 4584 * This is the underlying object with id, value and extensions. The 4585 * accessor "getTransform" gives direct access to the value 4586 */ 4587 public ActivityDefinition setTransformElement(CanonicalType value) { 4588 this.transform = value; 4589 return this; 4590 } 4591 4592 /** 4593 * @return A reference to a StructureMap resource that defines a transform that 4594 * can be executed to produce the intent resource using the 4595 * ActivityDefinition instance as the input. 4596 */ 4597 public String getTransform() { 4598 return this.transform == null ? null : this.transform.getValue(); 4599 } 4600 4601 /** 4602 * @param value A reference to a StructureMap resource that defines a transform 4603 * that can be executed to produce the intent resource using the 4604 * ActivityDefinition instance as the input. 4605 */ 4606 public ActivityDefinition setTransform(String value) { 4607 if (Utilities.noString(value)) 4608 this.transform = null; 4609 else { 4610 if (this.transform == null) 4611 this.transform = new CanonicalType(); 4612 this.transform.setValue(value); 4613 } 4614 return this; 4615 } 4616 4617 /** 4618 * @return {@link #dynamicValue} (Dynamic values that will be evaluated to 4619 * produce values for elements of the resulting resource. For example, 4620 * if the dosage of a medication must be computed based on the patient's 4621 * weight, a dynamic value would be used to specify an expression that 4622 * calculated the weight, and the path on the request resource that 4623 * would contain the result.) 4624 */ 4625 public List<ActivityDefinitionDynamicValueComponent> getDynamicValue() { 4626 if (this.dynamicValue == null) 4627 this.dynamicValue = new ArrayList<ActivityDefinitionDynamicValueComponent>(); 4628 return this.dynamicValue; 4629 } 4630 4631 /** 4632 * @return Returns a reference to <code>this</code> for easy method chaining 4633 */ 4634 public ActivityDefinition setDynamicValue(List<ActivityDefinitionDynamicValueComponent> theDynamicValue) { 4635 this.dynamicValue = theDynamicValue; 4636 return this; 4637 } 4638 4639 public boolean hasDynamicValue() { 4640 if (this.dynamicValue == null) 4641 return false; 4642 for (ActivityDefinitionDynamicValueComponent item : this.dynamicValue) 4643 if (!item.isEmpty()) 4644 return true; 4645 return false; 4646 } 4647 4648 public ActivityDefinitionDynamicValueComponent addDynamicValue() { // 3 4649 ActivityDefinitionDynamicValueComponent t = new ActivityDefinitionDynamicValueComponent(); 4650 if (this.dynamicValue == null) 4651 this.dynamicValue = new ArrayList<ActivityDefinitionDynamicValueComponent>(); 4652 this.dynamicValue.add(t); 4653 return t; 4654 } 4655 4656 public ActivityDefinition addDynamicValue(ActivityDefinitionDynamicValueComponent t) { // 3 4657 if (t == null) 4658 return this; 4659 if (this.dynamicValue == null) 4660 this.dynamicValue = new ArrayList<ActivityDefinitionDynamicValueComponent>(); 4661 this.dynamicValue.add(t); 4662 return this; 4663 } 4664 4665 /** 4666 * @return The first repetition of repeating field {@link #dynamicValue}, 4667 * creating it if it does not already exist 4668 */ 4669 public ActivityDefinitionDynamicValueComponent getDynamicValueFirstRep() { 4670 if (getDynamicValue().isEmpty()) { 4671 addDynamicValue(); 4672 } 4673 return getDynamicValue().get(0); 4674 } 4675 4676 protected void listChildren(List<Property> children) { 4677 super.listChildren(children); 4678 children.add(new Property("url", "uri", 4679 "An absolute URI that is used to identify this activity definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this activity definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the activity definition is stored on different servers.", 4680 0, 1, url)); 4681 children.add(new Property("identifier", "Identifier", 4682 "A formal identifier that is used to identify this activity definition when it is represented in other formats, or referenced in a specification, model, design or an instance.", 4683 0, java.lang.Integer.MAX_VALUE, identifier)); 4684 children.add(new Property("version", "string", 4685 "The identifier that is used to identify this version of the activity definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the activity definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active assets.", 4686 0, 1, version)); 4687 children.add(new Property("name", "string", 4688 "A natural language name identifying the activity definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 4689 0, 1, name)); 4690 children.add(new Property("title", "string", 4691 "A short, descriptive, user-friendly title for the activity definition.", 0, 1, title)); 4692 children.add(new Property("subtitle", "string", 4693 "An explanatory or alternate title for the activity definition giving additional information about its content.", 4694 0, 1, subtitle)); 4695 children.add(new Property("status", "code", 4696 "The status of this activity definition. Enables tracking the life-cycle of the content.", 0, 1, status)); 4697 children.add(new Property("experimental", "boolean", 4698 "A Boolean value to indicate that this activity definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.", 4699 0, 1, experimental)); 4700 children.add(new Property("subject[x]", "CodeableConcept|Reference(Group)", 4701 "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, 4702 subject)); 4703 children.add(new Property("date", "dateTime", 4704 "The date (and optionally time) when the activity definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the activity definition changes.", 4705 0, 1, date)); 4706 children.add(new Property("publisher", "string", 4707 "The name of the organization or individual that published the activity definition.", 0, 1, publisher)); 4708 children.add(new Property("contact", "ContactDetail", 4709 "Contact details to assist a user in finding and communicating with the publisher.", 0, 4710 java.lang.Integer.MAX_VALUE, contact)); 4711 children.add(new Property("description", "markdown", 4712 "A free text natural language description of the activity definition from a consumer's perspective.", 0, 1, 4713 description)); 4714 children.add(new Property("useContext", "UsageContext", 4715 "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate activity definition instances.", 4716 0, java.lang.Integer.MAX_VALUE, useContext)); 4717 children.add(new Property("jurisdiction", "CodeableConcept", 4718 "A legal or geographic region in which the activity definition is intended to be used.", 0, 4719 java.lang.Integer.MAX_VALUE, jurisdiction)); 4720 children.add(new Property("purpose", "markdown", 4721 "Explanation of why this activity definition is needed and why it has been designed as it has.", 0, 1, 4722 purpose)); 4723 children.add(new Property("usage", "string", 4724 "A detailed description of how the activity definition is used from a clinical perspective.", 0, 1, usage)); 4725 children.add(new Property("copyright", "markdown", 4726 "A copyright statement relating to the activity definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the activity definition.", 4727 0, 1, copyright)); 4728 children.add(new Property("approvalDate", "date", 4729 "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 4730 0, 1, approvalDate)); 4731 children.add(new Property("lastReviewDate", "date", 4732 "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 4733 0, 1, lastReviewDate)); 4734 children.add(new Property("effectivePeriod", "Period", 4735 "The period during which the activity definition content was or is planned to be in active use.", 0, 1, 4736 effectivePeriod)); 4737 children.add(new Property("topic", "CodeableConcept", 4738 "Descriptive topics related to the content of the activity. Topics provide a high-level categorization of the activity that can be useful for filtering and searching.", 4739 0, java.lang.Integer.MAX_VALUE, topic)); 4740 children.add(new Property("author", "ContactDetail", 4741 "An individiual or organization primarily involved in the creation and maintenance of the content.", 0, 4742 java.lang.Integer.MAX_VALUE, author)); 4743 children.add(new Property("editor", "ContactDetail", 4744 "An individual or organization primarily responsible for internal coherence of the content.", 0, 4745 java.lang.Integer.MAX_VALUE, editor)); 4746 children.add(new Property("reviewer", "ContactDetail", 4747 "An individual or organization primarily responsible for review of some aspect of the content.", 0, 4748 java.lang.Integer.MAX_VALUE, reviewer)); 4749 children.add(new Property("endorser", "ContactDetail", 4750 "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, 4751 java.lang.Integer.MAX_VALUE, endorser)); 4752 children.add(new Property("relatedArtifact", "RelatedArtifact", 4753 "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, 4754 java.lang.Integer.MAX_VALUE, relatedArtifact)); 4755 children.add(new Property("library", "canonical(Library)", 4756 "A reference to a Library resource containing any formal logic used by the activity definition.", 0, 4757 java.lang.Integer.MAX_VALUE, library)); 4758 children.add(new Property("kind", "code", 4759 "A description of the kind of resource the activity definition is representing. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest. Typically, but not always, this is a Request resource.", 4760 0, 1, kind)); 4761 children.add(new Property("profile", "canonical(StructureDefinition)", 4762 "A profile to which the target of the activity definition is expected to conform.", 0, 1, profile)); 4763 children.add(new Property("code", "CodeableConcept", 4764 "Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.", 0, 4765 1, code)); 4766 children.add(new Property("intent", "code", 4767 "Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain.", 4768 0, 1, intent)); 4769 children.add(new Property("priority", "code", 4770 "Indicates how quickly the activity should be addressed with respect to other requests.", 0, 1, priority)); 4771 children.add(new Property("doNotPerform", "boolean", 4772 "Set this to true if the definition is to indicate that a particular activity should NOT be performed. If true, this element should be interpreted to reinforce a negative coding. For example NPO as a code with a doNotPerform of true would still indicate to NOT perform the action.", 4773 0, 1, doNotPerform)); 4774 children.add(new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", 4775 "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing)); 4776 children.add(new Property("location", "Reference(Location)", 4777 "Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.", 0, 1, 4778 location)); 4779 children.add(new Property("participant", "", "Indicates who should participate in performing the action described.", 4780 0, java.lang.Integer.MAX_VALUE, participant)); 4781 children.add(new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", 4782 "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product)); 4783 children.add(new Property("quantity", "SimpleQuantity", 4784 "Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).", 0, 1, quantity)); 4785 children.add(new Property("dosage", "Dosage", 4786 "Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources.", 4787 0, java.lang.Integer.MAX_VALUE, dosage)); 4788 children.add(new Property("bodySite", "CodeableConcept", 4789 "Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites).", 0, 4790 java.lang.Integer.MAX_VALUE, bodySite)); 4791 children.add(new Property("specimenRequirement", "Reference(SpecimenDefinition)", 4792 "Defines specimen requirements for the action to be performed, such as required specimens for a lab test.", 0, 4793 java.lang.Integer.MAX_VALUE, specimenRequirement)); 4794 children.add(new Property("observationRequirement", "Reference(ObservationDefinition)", 4795 "Defines observation requirements for the action to be performed, such as body weight or surface area.", 0, 4796 java.lang.Integer.MAX_VALUE, observationRequirement)); 4797 children.add(new Property("observationResultRequirement", "Reference(ObservationDefinition)", 4798 "Defines the observations that are expected to be produced by the action.", 0, java.lang.Integer.MAX_VALUE, 4799 observationResultRequirement)); 4800 children.add(new Property("transform", "canonical(StructureMap)", 4801 "A reference to a StructureMap resource that defines a transform that can be executed to produce the intent resource using the ActivityDefinition instance as the input.", 4802 0, 1, transform)); 4803 children.add(new Property("dynamicValue", "", 4804 "Dynamic values that will be evaluated to produce values for elements of the resulting resource. For example, if the dosage of a medication must be computed based on the patient's weight, a dynamic value would be used to specify an expression that calculated the weight, and the path on the request resource that would contain the result.", 4805 0, java.lang.Integer.MAX_VALUE, dynamicValue)); 4806 } 4807 4808 @Override 4809 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 4810 switch (_hash) { 4811 case 116079: 4812 /* url */ return new Property("url", "uri", 4813 "An absolute URI that is used to identify this activity definition when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this activity definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the activity definition is stored on different servers.", 4814 0, 1, url); 4815 case -1618432855: 4816 /* identifier */ return new Property("identifier", "Identifier", 4817 "A formal identifier that is used to identify this activity definition when it is represented in other formats, or referenced in a specification, model, design or an instance.", 4818 0, java.lang.Integer.MAX_VALUE, identifier); 4819 case 351608024: 4820 /* version */ return new Property("version", "string", 4821 "The identifier that is used to identify this version of the activity definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the activity definition author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active assets.", 4822 0, 1, version); 4823 case 3373707: 4824 /* name */ return new Property("name", "string", 4825 "A natural language name identifying the activity definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 4826 0, 1, name); 4827 case 110371416: 4828 /* title */ return new Property("title", "string", 4829 "A short, descriptive, user-friendly title for the activity definition.", 0, 1, title); 4830 case -2060497896: 4831 /* subtitle */ return new Property("subtitle", "string", 4832 "An explanatory or alternate title for the activity definition giving additional information about its content.", 4833 0, 1, subtitle); 4834 case -892481550: 4835 /* status */ return new Property("status", "code", 4836 "The status of this activity definition. Enables tracking the life-cycle of the content.", 0, 1, status); 4837 case -404562712: 4838 /* experimental */ return new Property("experimental", "boolean", 4839 "A Boolean value to indicate that this activity definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.", 4840 0, 1, experimental); 4841 case -573640748: 4842 /* subject[x] */ return new Property("subject[x]", "CodeableConcept|Reference(Group)", 4843 "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, 4844 subject); 4845 case -1867885268: 4846 /* subject */ return new Property("subject[x]", "CodeableConcept|Reference(Group)", 4847 "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, 4848 subject); 4849 case -1257122603: 4850 /* subjectCodeableConcept */ return new Property("subject[x]", "CodeableConcept|Reference(Group)", 4851 "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, 4852 subject); 4853 case 772938623: 4854 /* subjectReference */ return new Property("subject[x]", "CodeableConcept|Reference(Group)", 4855 "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, 4856 subject); 4857 case 3076014: 4858 /* date */ return new Property("date", "dateTime", 4859 "The date (and optionally time) when the activity definition was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the activity definition changes.", 4860 0, 1, date); 4861 case 1447404028: 4862 /* publisher */ return new Property("publisher", "string", 4863 "The name of the organization or individual that published the activity definition.", 0, 1, publisher); 4864 case 951526432: 4865 /* contact */ return new Property("contact", "ContactDetail", 4866 "Contact details to assist a user in finding and communicating with the publisher.", 0, 4867 java.lang.Integer.MAX_VALUE, contact); 4868 case -1724546052: 4869 /* description */ return new Property("description", "markdown", 4870 "A free text natural language description of the activity definition from a consumer's perspective.", 0, 1, 4871 description); 4872 case -669707736: 4873 /* useContext */ return new Property("useContext", "UsageContext", 4874 "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate activity definition instances.", 4875 0, java.lang.Integer.MAX_VALUE, useContext); 4876 case -507075711: 4877 /* jurisdiction */ return new Property("jurisdiction", "CodeableConcept", 4878 "A legal or geographic region in which the activity definition is intended to be used.", 0, 4879 java.lang.Integer.MAX_VALUE, jurisdiction); 4880 case -220463842: 4881 /* purpose */ return new Property("purpose", "markdown", 4882 "Explanation of why this activity definition is needed and why it has been designed as it has.", 0, 1, 4883 purpose); 4884 case 111574433: 4885 /* usage */ return new Property("usage", "string", 4886 "A detailed description of how the activity definition is used from a clinical perspective.", 0, 1, usage); 4887 case 1522889671: 4888 /* copyright */ return new Property("copyright", "markdown", 4889 "A copyright statement relating to the activity definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the activity definition.", 4890 0, 1, copyright); 4891 case 223539345: 4892 /* approvalDate */ return new Property("approvalDate", "date", 4893 "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 4894 0, 1, approvalDate); 4895 case -1687512484: 4896 /* lastReviewDate */ return new Property("lastReviewDate", "date", 4897 "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 4898 0, 1, lastReviewDate); 4899 case -403934648: 4900 /* effectivePeriod */ return new Property("effectivePeriod", "Period", 4901 "The period during which the activity definition content was or is planned to be in active use.", 0, 1, 4902 effectivePeriod); 4903 case 110546223: 4904 /* topic */ return new Property("topic", "CodeableConcept", 4905 "Descriptive topics related to the content of the activity. Topics provide a high-level categorization of the activity that can be useful for filtering and searching.", 4906 0, java.lang.Integer.MAX_VALUE, topic); 4907 case -1406328437: 4908 /* author */ return new Property("author", "ContactDetail", 4909 "An individiual or organization primarily involved in the creation and maintenance of the content.", 0, 4910 java.lang.Integer.MAX_VALUE, author); 4911 case -1307827859: 4912 /* editor */ return new Property("editor", "ContactDetail", 4913 "An individual or organization primarily responsible for internal coherence of the content.", 0, 4914 java.lang.Integer.MAX_VALUE, editor); 4915 case -261190139: 4916 /* reviewer */ return new Property("reviewer", "ContactDetail", 4917 "An individual or organization primarily responsible for review of some aspect of the content.", 0, 4918 java.lang.Integer.MAX_VALUE, reviewer); 4919 case 1740277666: 4920 /* endorser */ return new Property("endorser", "ContactDetail", 4921 "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, 4922 java.lang.Integer.MAX_VALUE, endorser); 4923 case 666807069: 4924 /* relatedArtifact */ return new Property("relatedArtifact", "RelatedArtifact", 4925 "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, 4926 java.lang.Integer.MAX_VALUE, relatedArtifact); 4927 case 166208699: 4928 /* library */ return new Property("library", "canonical(Library)", 4929 "A reference to a Library resource containing any formal logic used by the activity definition.", 0, 4930 java.lang.Integer.MAX_VALUE, library); 4931 case 3292052: 4932 /* kind */ return new Property("kind", "code", 4933 "A description of the kind of resource the activity definition is representing. For example, a MedicationRequest, a ServiceRequest, or a CommunicationRequest. Typically, but not always, this is a Request resource.", 4934 0, 1, kind); 4935 case -309425751: 4936 /* profile */ return new Property("profile", "canonical(StructureDefinition)", 4937 "A profile to which the target of the activity definition is expected to conform.", 0, 1, profile); 4938 case 3059181: 4939 /* code */ return new Property("code", "CodeableConcept", 4940 "Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.", 4941 0, 1, code); 4942 case -1183762788: 4943 /* intent */ return new Property("intent", "code", 4944 "Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain.", 4945 0, 1, intent); 4946 case -1165461084: 4947 /* priority */ return new Property("priority", "code", 4948 "Indicates how quickly the activity should be addressed with respect to other requests.", 0, 1, priority); 4949 case -1788508167: 4950 /* doNotPerform */ return new Property("doNotPerform", "boolean", 4951 "Set this to true if the definition is to indicate that a particular activity should NOT be performed. If true, this element should be interpreted to reinforce a negative coding. For example NPO as a code with a doNotPerform of true would still indicate to NOT perform the action.", 4952 0, 1, doNotPerform); 4953 case 164632566: 4954 /* timing[x] */ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", 4955 "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 4956 case -873664438: 4957 /* timing */ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", 4958 "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 4959 case -497554124: 4960 /* timingTiming */ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", 4961 "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 4962 case -1837458939: 4963 /* timingDateTime */ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", 4964 "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 4965 case 164607061: 4966 /* timingAge */ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", 4967 "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 4968 case -615615829: 4969 /* timingPeriod */ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", 4970 "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 4971 case -710871277: 4972 /* timingRange */ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", 4973 "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 4974 case -1327253506: 4975 /* timingDuration */ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", 4976 "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 4977 case 1901043637: 4978 /* location */ return new Property("location", "Reference(Location)", 4979 "Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.", 0, 1, 4980 location); 4981 case 767422259: 4982 /* participant */ return new Property("participant", "", 4983 "Indicates who should participate in performing the action described.", 0, java.lang.Integer.MAX_VALUE, 4984 participant); 4985 case 1753005361: 4986 /* product[x] */ return new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", 4987 "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product); 4988 case -309474065: 4989 /* product */ return new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", 4990 "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product); 4991 case -669667556: 4992 /* productReference */ return new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", 4993 "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product); 4994 case 906854066: 4995 /* productCodeableConcept */ return new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", 4996 "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product); 4997 case -1285004149: 4998 /* quantity */ return new Property("quantity", "SimpleQuantity", 4999 "Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).", 0, 1, quantity); 5000 case -1326018889: 5001 /* dosage */ return new Property("dosage", "Dosage", 5002 "Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources.", 5003 0, java.lang.Integer.MAX_VALUE, dosage); 5004 case 1702620169: 5005 /* bodySite */ return new Property("bodySite", "CodeableConcept", 5006 "Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites).", 5007 0, java.lang.Integer.MAX_VALUE, bodySite); 5008 case 1498467355: 5009 /* specimenRequirement */ return new Property("specimenRequirement", "Reference(SpecimenDefinition)", 5010 "Defines specimen requirements for the action to be performed, such as required specimens for a lab test.", 0, 5011 java.lang.Integer.MAX_VALUE, specimenRequirement); 5012 case 362354807: 5013 /* observationRequirement */ return new Property("observationRequirement", "Reference(ObservationDefinition)", 5014 "Defines observation requirements for the action to be performed, such as body weight or surface area.", 0, 5015 java.lang.Integer.MAX_VALUE, observationRequirement); 5016 case 395230490: 5017 /* observationResultRequirement */ return new Property("observationResultRequirement", 5018 "Reference(ObservationDefinition)", 5019 "Defines the observations that are expected to be produced by the action.", 0, java.lang.Integer.MAX_VALUE, 5020 observationResultRequirement); 5021 case 1052666732: 5022 /* transform */ return new Property("transform", "canonical(StructureMap)", 5023 "A reference to a StructureMap resource that defines a transform that can be executed to produce the intent resource using the ActivityDefinition instance as the input.", 5024 0, 1, transform); 5025 case 572625010: 5026 /* dynamicValue */ return new Property("dynamicValue", "", 5027 "Dynamic values that will be evaluated to produce values for elements of the resulting resource. For example, if the dosage of a medication must be computed based on the patient's weight, a dynamic value would be used to specify an expression that calculated the weight, and the path on the request resource that would contain the result.", 5028 0, java.lang.Integer.MAX_VALUE, dynamicValue); 5029 default: 5030 return super.getNamedProperty(_hash, _name, _checkValid); 5031 } 5032 5033 } 5034 5035 @Override 5036 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 5037 switch (hash) { 5038 case 116079: 5039 /* url */ return this.url == null ? new Base[0] : new Base[] { this.url }; // UriType 5040 case -1618432855: 5041 /* identifier */ return this.identifier == null ? new Base[0] 5042 : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 5043 case 351608024: 5044 /* version */ return this.version == null ? new Base[0] : new Base[] { this.version }; // StringType 5045 case 3373707: 5046 /* name */ return this.name == null ? new Base[0] : new Base[] { this.name }; // StringType 5047 case 110371416: 5048 /* title */ return this.title == null ? new Base[0] : new Base[] { this.title }; // StringType 5049 case -2060497896: 5050 /* subtitle */ return this.subtitle == null ? new Base[0] : new Base[] { this.subtitle }; // StringType 5051 case -892481550: 5052 /* status */ return this.status == null ? new Base[0] : new Base[] { this.status }; // Enumeration<PublicationStatus> 5053 case -404562712: 5054 /* experimental */ return this.experimental == null ? new Base[0] : new Base[] { this.experimental }; // BooleanType 5055 case -1867885268: 5056 /* subject */ return this.subject == null ? new Base[0] : new Base[] { this.subject }; // Type 5057 case 3076014: 5058 /* date */ return this.date == null ? new Base[0] : new Base[] { this.date }; // DateTimeType 5059 case 1447404028: 5060 /* publisher */ return this.publisher == null ? new Base[0] : new Base[] { this.publisher }; // StringType 5061 case 951526432: 5062 /* contact */ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactDetail 5063 case -1724546052: 5064 /* description */ return this.description == null ? new Base[0] : new Base[] { this.description }; // MarkdownType 5065 case -669707736: 5066 /* useContext */ return this.useContext == null ? new Base[0] 5067 : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 5068 case -507075711: 5069 /* jurisdiction */ return this.jurisdiction == null ? new Base[0] 5070 : this.jurisdiction.toArray(new Base[this.jurisdiction.size()]); // CodeableConcept 5071 case -220463842: 5072 /* purpose */ return this.purpose == null ? new Base[0] : new Base[] { this.purpose }; // MarkdownType 5073 case 111574433: 5074 /* usage */ return this.usage == null ? new Base[0] : new Base[] { this.usage }; // StringType 5075 case 1522889671: 5076 /* copyright */ return this.copyright == null ? new Base[0] : new Base[] { this.copyright }; // MarkdownType 5077 case 223539345: 5078 /* approvalDate */ return this.approvalDate == null ? new Base[0] : new Base[] { this.approvalDate }; // DateType 5079 case -1687512484: 5080 /* lastReviewDate */ return this.lastReviewDate == null ? new Base[0] : new Base[] { this.lastReviewDate }; // DateType 5081 case -403934648: 5082 /* effectivePeriod */ return this.effectivePeriod == null ? new Base[0] : new Base[] { this.effectivePeriod }; // Period 5083 case 110546223: 5084 /* topic */ return this.topic == null ? new Base[0] : this.topic.toArray(new Base[this.topic.size()]); // CodeableConcept 5085 case -1406328437: 5086 /* author */ return this.author == null ? new Base[0] : this.author.toArray(new Base[this.author.size()]); // ContactDetail 5087 case -1307827859: 5088 /* editor */ return this.editor == null ? new Base[0] : this.editor.toArray(new Base[this.editor.size()]); // ContactDetail 5089 case -261190139: 5090 /* reviewer */ return this.reviewer == null ? new Base[0] : this.reviewer.toArray(new Base[this.reviewer.size()]); // ContactDetail 5091 case 1740277666: 5092 /* endorser */ return this.endorser == null ? new Base[0] : this.endorser.toArray(new Base[this.endorser.size()]); // ContactDetail 5093 case 666807069: 5094 /* relatedArtifact */ return this.relatedArtifact == null ? new Base[0] 5095 : this.relatedArtifact.toArray(new Base[this.relatedArtifact.size()]); // RelatedArtifact 5096 case 166208699: 5097 /* library */ return this.library == null ? new Base[0] : this.library.toArray(new Base[this.library.size()]); // CanonicalType 5098 case 3292052: 5099 /* kind */ return this.kind == null ? new Base[0] : new Base[] { this.kind }; // Enumeration<ActivityDefinitionKind> 5100 case -309425751: 5101 /* profile */ return this.profile == null ? new Base[0] : new Base[] { this.profile }; // CanonicalType 5102 case 3059181: 5103 /* code */ return this.code == null ? new Base[0] : new Base[] { this.code }; // CodeableConcept 5104 case -1183762788: 5105 /* intent */ return this.intent == null ? new Base[0] : new Base[] { this.intent }; // Enumeration<RequestIntent> 5106 case -1165461084: 5107 /* priority */ return this.priority == null ? new Base[0] : new Base[] { this.priority }; // Enumeration<RequestPriority> 5108 case -1788508167: 5109 /* doNotPerform */ return this.doNotPerform == null ? new Base[0] : new Base[] { this.doNotPerform }; // BooleanType 5110 case -873664438: 5111 /* timing */ return this.timing == null ? new Base[0] : new Base[] { this.timing }; // Type 5112 case 1901043637: 5113 /* location */ return this.location == null ? new Base[0] : new Base[] { this.location }; // Reference 5114 case 767422259: 5115 /* participant */ return this.participant == null ? new Base[0] 5116 : this.participant.toArray(new Base[this.participant.size()]); // ActivityDefinitionParticipantComponent 5117 case -309474065: 5118 /* product */ return this.product == null ? new Base[0] : new Base[] { this.product }; // Type 5119 case -1285004149: 5120 /* quantity */ return this.quantity == null ? new Base[0] : new Base[] { this.quantity }; // Quantity 5121 case -1326018889: 5122 /* dosage */ return this.dosage == null ? new Base[0] : this.dosage.toArray(new Base[this.dosage.size()]); // Dosage 5123 case 1702620169: 5124 /* bodySite */ return this.bodySite == null ? new Base[0] : this.bodySite.toArray(new Base[this.bodySite.size()]); // CodeableConcept 5125 case 1498467355: 5126 /* specimenRequirement */ return this.specimenRequirement == null ? new Base[0] 5127 : this.specimenRequirement.toArray(new Base[this.specimenRequirement.size()]); // Reference 5128 case 362354807: 5129 /* observationRequirement */ return this.observationRequirement == null ? new Base[0] 5130 : this.observationRequirement.toArray(new Base[this.observationRequirement.size()]); // Reference 5131 case 395230490: 5132 /* observationResultRequirement */ return this.observationResultRequirement == null ? new Base[0] 5133 : this.observationResultRequirement.toArray(new Base[this.observationResultRequirement.size()]); // Reference 5134 case 1052666732: 5135 /* transform */ return this.transform == null ? new Base[0] : new Base[] { this.transform }; // CanonicalType 5136 case 572625010: 5137 /* dynamicValue */ return this.dynamicValue == null ? new Base[0] 5138 : this.dynamicValue.toArray(new Base[this.dynamicValue.size()]); // ActivityDefinitionDynamicValueComponent 5139 default: 5140 return super.getProperty(hash, name, checkValid); 5141 } 5142 5143 } 5144 5145 @Override 5146 public Base setProperty(int hash, String name, Base value) throws FHIRException { 5147 switch (hash) { 5148 case 116079: // url 5149 this.url = castToUri(value); // UriType 5150 return value; 5151 case -1618432855: // identifier 5152 this.getIdentifier().add(castToIdentifier(value)); // Identifier 5153 return value; 5154 case 351608024: // version 5155 this.version = castToString(value); // StringType 5156 return value; 5157 case 3373707: // name 5158 this.name = castToString(value); // StringType 5159 return value; 5160 case 110371416: // title 5161 this.title = castToString(value); // StringType 5162 return value; 5163 case -2060497896: // subtitle 5164 this.subtitle = castToString(value); // StringType 5165 return value; 5166 case -892481550: // status 5167 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 5168 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 5169 return value; 5170 case -404562712: // experimental 5171 this.experimental = castToBoolean(value); // BooleanType 5172 return value; 5173 case -1867885268: // subject 5174 this.subject = castToType(value); // Type 5175 return value; 5176 case 3076014: // date 5177 this.date = castToDateTime(value); // DateTimeType 5178 return value; 5179 case 1447404028: // publisher 5180 this.publisher = castToString(value); // StringType 5181 return value; 5182 case 951526432: // contact 5183 this.getContact().add(castToContactDetail(value)); // ContactDetail 5184 return value; 5185 case -1724546052: // description 5186 this.description = castToMarkdown(value); // MarkdownType 5187 return value; 5188 case -669707736: // useContext 5189 this.getUseContext().add(castToUsageContext(value)); // UsageContext 5190 return value; 5191 case -507075711: // jurisdiction 5192 this.getJurisdiction().add(castToCodeableConcept(value)); // CodeableConcept 5193 return value; 5194 case -220463842: // purpose 5195 this.purpose = castToMarkdown(value); // MarkdownType 5196 return value; 5197 case 111574433: // usage 5198 this.usage = castToString(value); // StringType 5199 return value; 5200 case 1522889671: // copyright 5201 this.copyright = castToMarkdown(value); // MarkdownType 5202 return value; 5203 case 223539345: // approvalDate 5204 this.approvalDate = castToDate(value); // DateType 5205 return value; 5206 case -1687512484: // lastReviewDate 5207 this.lastReviewDate = castToDate(value); // DateType 5208 return value; 5209 case -403934648: // effectivePeriod 5210 this.effectivePeriod = castToPeriod(value); // Period 5211 return value; 5212 case 110546223: // topic 5213 this.getTopic().add(castToCodeableConcept(value)); // CodeableConcept 5214 return value; 5215 case -1406328437: // author 5216 this.getAuthor().add(castToContactDetail(value)); // ContactDetail 5217 return value; 5218 case -1307827859: // editor 5219 this.getEditor().add(castToContactDetail(value)); // ContactDetail 5220 return value; 5221 case -261190139: // reviewer 5222 this.getReviewer().add(castToContactDetail(value)); // ContactDetail 5223 return value; 5224 case 1740277666: // endorser 5225 this.getEndorser().add(castToContactDetail(value)); // ContactDetail 5226 return value; 5227 case 666807069: // relatedArtifact 5228 this.getRelatedArtifact().add(castToRelatedArtifact(value)); // RelatedArtifact 5229 return value; 5230 case 166208699: // library 5231 this.getLibrary().add(castToCanonical(value)); // CanonicalType 5232 return value; 5233 case 3292052: // kind 5234 value = new ActivityDefinitionKindEnumFactory().fromType(castToCode(value)); 5235 this.kind = (Enumeration) value; // Enumeration<ActivityDefinitionKind> 5236 return value; 5237 case -309425751: // profile 5238 this.profile = castToCanonical(value); // CanonicalType 5239 return value; 5240 case 3059181: // code 5241 this.code = castToCodeableConcept(value); // CodeableConcept 5242 return value; 5243 case -1183762788: // intent 5244 value = new RequestIntentEnumFactory().fromType(castToCode(value)); 5245 this.intent = (Enumeration) value; // Enumeration<RequestIntent> 5246 return value; 5247 case -1165461084: // priority 5248 value = new RequestPriorityEnumFactory().fromType(castToCode(value)); 5249 this.priority = (Enumeration) value; // Enumeration<RequestPriority> 5250 return value; 5251 case -1788508167: // doNotPerform 5252 this.doNotPerform = castToBoolean(value); // BooleanType 5253 return value; 5254 case -873664438: // timing 5255 this.timing = castToType(value); // Type 5256 return value; 5257 case 1901043637: // location 5258 this.location = castToReference(value); // Reference 5259 return value; 5260 case 767422259: // participant 5261 this.getParticipant().add((ActivityDefinitionParticipantComponent) value); // ActivityDefinitionParticipantComponent 5262 return value; 5263 case -309474065: // product 5264 this.product = castToType(value); // Type 5265 return value; 5266 case -1285004149: // quantity 5267 this.quantity = castToQuantity(value); // Quantity 5268 return value; 5269 case -1326018889: // dosage 5270 this.getDosage().add(castToDosage(value)); // Dosage 5271 return value; 5272 case 1702620169: // bodySite 5273 this.getBodySite().add(castToCodeableConcept(value)); // CodeableConcept 5274 return value; 5275 case 1498467355: // specimenRequirement 5276 this.getSpecimenRequirement().add(castToReference(value)); // Reference 5277 return value; 5278 case 362354807: // observationRequirement 5279 this.getObservationRequirement().add(castToReference(value)); // Reference 5280 return value; 5281 case 395230490: // observationResultRequirement 5282 this.getObservationResultRequirement().add(castToReference(value)); // Reference 5283 return value; 5284 case 1052666732: // transform 5285 this.transform = castToCanonical(value); // CanonicalType 5286 return value; 5287 case 572625010: // dynamicValue 5288 this.getDynamicValue().add((ActivityDefinitionDynamicValueComponent) value); // ActivityDefinitionDynamicValueComponent 5289 return value; 5290 default: 5291 return super.setProperty(hash, name, value); 5292 } 5293 5294 } 5295 5296 @Override 5297 public Base setProperty(String name, Base value) throws FHIRException { 5298 if (name.equals("url")) { 5299 this.url = castToUri(value); // UriType 5300 } else if (name.equals("identifier")) { 5301 this.getIdentifier().add(castToIdentifier(value)); 5302 } else if (name.equals("version")) { 5303 this.version = castToString(value); // StringType 5304 } else if (name.equals("name")) { 5305 this.name = castToString(value); // StringType 5306 } else if (name.equals("title")) { 5307 this.title = castToString(value); // StringType 5308 } else if (name.equals("subtitle")) { 5309 this.subtitle = castToString(value); // StringType 5310 } else if (name.equals("status")) { 5311 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 5312 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 5313 } else if (name.equals("experimental")) { 5314 this.experimental = castToBoolean(value); // BooleanType 5315 } else if (name.equals("subject[x]")) { 5316 this.subject = castToType(value); // Type 5317 } else if (name.equals("date")) { 5318 this.date = castToDateTime(value); // DateTimeType 5319 } else if (name.equals("publisher")) { 5320 this.publisher = castToString(value); // StringType 5321 } else if (name.equals("contact")) { 5322 this.getContact().add(castToContactDetail(value)); 5323 } else if (name.equals("description")) { 5324 this.description = castToMarkdown(value); // MarkdownType 5325 } else if (name.equals("useContext")) { 5326 this.getUseContext().add(castToUsageContext(value)); 5327 } else if (name.equals("jurisdiction")) { 5328 this.getJurisdiction().add(castToCodeableConcept(value)); 5329 } else if (name.equals("purpose")) { 5330 this.purpose = castToMarkdown(value); // MarkdownType 5331 } else if (name.equals("usage")) { 5332 this.usage = castToString(value); // StringType 5333 } else if (name.equals("copyright")) { 5334 this.copyright = castToMarkdown(value); // MarkdownType 5335 } else if (name.equals("approvalDate")) { 5336 this.approvalDate = castToDate(value); // DateType 5337 } else if (name.equals("lastReviewDate")) { 5338 this.lastReviewDate = castToDate(value); // DateType 5339 } else if (name.equals("effectivePeriod")) { 5340 this.effectivePeriod = castToPeriod(value); // Period 5341 } else if (name.equals("topic")) { 5342 this.getTopic().add(castToCodeableConcept(value)); 5343 } else if (name.equals("author")) { 5344 this.getAuthor().add(castToContactDetail(value)); 5345 } else if (name.equals("editor")) { 5346 this.getEditor().add(castToContactDetail(value)); 5347 } else if (name.equals("reviewer")) { 5348 this.getReviewer().add(castToContactDetail(value)); 5349 } else if (name.equals("endorser")) { 5350 this.getEndorser().add(castToContactDetail(value)); 5351 } else if (name.equals("relatedArtifact")) { 5352 this.getRelatedArtifact().add(castToRelatedArtifact(value)); 5353 } else if (name.equals("library")) { 5354 this.getLibrary().add(castToCanonical(value)); 5355 } else if (name.equals("kind")) { 5356 value = new ActivityDefinitionKindEnumFactory().fromType(castToCode(value)); 5357 this.kind = (Enumeration) value; // Enumeration<ActivityDefinitionKind> 5358 } else if (name.equals("profile")) { 5359 this.profile = castToCanonical(value); // CanonicalType 5360 } else if (name.equals("code")) { 5361 this.code = castToCodeableConcept(value); // CodeableConcept 5362 } else if (name.equals("intent")) { 5363 value = new RequestIntentEnumFactory().fromType(castToCode(value)); 5364 this.intent = (Enumeration) value; // Enumeration<RequestIntent> 5365 } else if (name.equals("priority")) { 5366 value = new RequestPriorityEnumFactory().fromType(castToCode(value)); 5367 this.priority = (Enumeration) value; // Enumeration<RequestPriority> 5368 } else if (name.equals("doNotPerform")) { 5369 this.doNotPerform = castToBoolean(value); // BooleanType 5370 } else if (name.equals("timing[x]")) { 5371 this.timing = castToType(value); // Type 5372 } else if (name.equals("location")) { 5373 this.location = castToReference(value); // Reference 5374 } else if (name.equals("participant")) { 5375 this.getParticipant().add((ActivityDefinitionParticipantComponent) value); 5376 } else if (name.equals("product[x]")) { 5377 this.product = castToType(value); // Type 5378 } else if (name.equals("quantity")) { 5379 this.quantity = castToQuantity(value); // Quantity 5380 } else if (name.equals("dosage")) { 5381 this.getDosage().add(castToDosage(value)); 5382 } else if (name.equals("bodySite")) { 5383 this.getBodySite().add(castToCodeableConcept(value)); 5384 } else if (name.equals("specimenRequirement")) { 5385 this.getSpecimenRequirement().add(castToReference(value)); 5386 } else if (name.equals("observationRequirement")) { 5387 this.getObservationRequirement().add(castToReference(value)); 5388 } else if (name.equals("observationResultRequirement")) { 5389 this.getObservationResultRequirement().add(castToReference(value)); 5390 } else if (name.equals("transform")) { 5391 this.transform = castToCanonical(value); // CanonicalType 5392 } else if (name.equals("dynamicValue")) { 5393 this.getDynamicValue().add((ActivityDefinitionDynamicValueComponent) value); 5394 } else 5395 return super.setProperty(name, value); 5396 return value; 5397 } 5398 5399 @Override 5400 public void removeChild(String name, Base value) throws FHIRException { 5401 if (name.equals("url")) { 5402 this.url = null; 5403 } else if (name.equals("identifier")) { 5404 this.getIdentifier().remove(castToIdentifier(value)); 5405 } else if (name.equals("version")) { 5406 this.version = null; 5407 } else if (name.equals("name")) { 5408 this.name = null; 5409 } else if (name.equals("title")) { 5410 this.title = null; 5411 } else if (name.equals("subtitle")) { 5412 this.subtitle = null; 5413 } else if (name.equals("status")) { 5414 this.status = null; 5415 } else if (name.equals("experimental")) { 5416 this.experimental = null; 5417 } else if (name.equals("subject[x]")) { 5418 this.subject = null; 5419 } else if (name.equals("date")) { 5420 this.date = null; 5421 } else if (name.equals("publisher")) { 5422 this.publisher = null; 5423 } else if (name.equals("contact")) { 5424 this.getContact().remove(castToContactDetail(value)); 5425 } else if (name.equals("description")) { 5426 this.description = null; 5427 } else if (name.equals("useContext")) { 5428 this.getUseContext().remove(castToUsageContext(value)); 5429 } else if (name.equals("jurisdiction")) { 5430 this.getJurisdiction().remove(castToCodeableConcept(value)); 5431 } else if (name.equals("purpose")) { 5432 this.purpose = null; 5433 } else if (name.equals("usage")) { 5434 this.usage = null; 5435 } else if (name.equals("copyright")) { 5436 this.copyright = null; 5437 } else if (name.equals("approvalDate")) { 5438 this.approvalDate = null; 5439 } else if (name.equals("lastReviewDate")) { 5440 this.lastReviewDate = null; 5441 } else if (name.equals("effectivePeriod")) { 5442 this.effectivePeriod = null; 5443 } else if (name.equals("topic")) { 5444 this.getTopic().remove(castToCodeableConcept(value)); 5445 } else if (name.equals("author")) { 5446 this.getAuthor().remove(castToContactDetail(value)); 5447 } else if (name.equals("editor")) { 5448 this.getEditor().remove(castToContactDetail(value)); 5449 } else if (name.equals("reviewer")) { 5450 this.getReviewer().remove(castToContactDetail(value)); 5451 } else if (name.equals("endorser")) { 5452 this.getEndorser().remove(castToContactDetail(value)); 5453 } else if (name.equals("relatedArtifact")) { 5454 this.getRelatedArtifact().remove(castToRelatedArtifact(value)); 5455 } else if (name.equals("library")) { 5456 this.getLibrary().remove(castToCanonical(value)); 5457 } else if (name.equals("kind")) { 5458 this.kind = null; 5459 } else if (name.equals("profile")) { 5460 this.profile = null; 5461 } else if (name.equals("code")) { 5462 this.code = null; 5463 } else if (name.equals("intent")) { 5464 this.intent = null; 5465 } else if (name.equals("priority")) { 5466 this.priority = null; 5467 } else if (name.equals("doNotPerform")) { 5468 this.doNotPerform = null; 5469 } else if (name.equals("timing[x]")) { 5470 this.timing = null; 5471 } else if (name.equals("location")) { 5472 this.location = null; 5473 } else if (name.equals("participant")) { 5474 this.getParticipant().remove((ActivityDefinitionParticipantComponent) value); 5475 } else if (name.equals("product[x]")) { 5476 this.product = null; 5477 } else if (name.equals("quantity")) { 5478 this.quantity = null; 5479 } else if (name.equals("dosage")) { 5480 this.getDosage().remove(castToDosage(value)); 5481 } else if (name.equals("bodySite")) { 5482 this.getBodySite().remove(castToCodeableConcept(value)); 5483 } else if (name.equals("specimenRequirement")) { 5484 this.getSpecimenRequirement().remove(castToReference(value)); 5485 } else if (name.equals("observationRequirement")) { 5486 this.getObservationRequirement().remove(castToReference(value)); 5487 } else if (name.equals("observationResultRequirement")) { 5488 this.getObservationResultRequirement().remove(castToReference(value)); 5489 } else if (name.equals("transform")) { 5490 this.transform = null; 5491 } else if (name.equals("dynamicValue")) { 5492 this.getDynamicValue().remove((ActivityDefinitionDynamicValueComponent) value); 5493 } else 5494 super.removeChild(name, value); 5495 5496 } 5497 5498 @Override 5499 public Base makeProperty(int hash, String name) throws FHIRException { 5500 switch (hash) { 5501 case 116079: 5502 return getUrlElement(); 5503 case -1618432855: 5504 return addIdentifier(); 5505 case 351608024: 5506 return getVersionElement(); 5507 case 3373707: 5508 return getNameElement(); 5509 case 110371416: 5510 return getTitleElement(); 5511 case -2060497896: 5512 return getSubtitleElement(); 5513 case -892481550: 5514 return getStatusElement(); 5515 case -404562712: 5516 return getExperimentalElement(); 5517 case -573640748: 5518 return getSubject(); 5519 case -1867885268: 5520 return getSubject(); 5521 case 3076014: 5522 return getDateElement(); 5523 case 1447404028: 5524 return getPublisherElement(); 5525 case 951526432: 5526 return addContact(); 5527 case -1724546052: 5528 return getDescriptionElement(); 5529 case -669707736: 5530 return addUseContext(); 5531 case -507075711: 5532 return addJurisdiction(); 5533 case -220463842: 5534 return getPurposeElement(); 5535 case 111574433: 5536 return getUsageElement(); 5537 case 1522889671: 5538 return getCopyrightElement(); 5539 case 223539345: 5540 return getApprovalDateElement(); 5541 case -1687512484: 5542 return getLastReviewDateElement(); 5543 case -403934648: 5544 return getEffectivePeriod(); 5545 case 110546223: 5546 return addTopic(); 5547 case -1406328437: 5548 return addAuthor(); 5549 case -1307827859: 5550 return addEditor(); 5551 case -261190139: 5552 return addReviewer(); 5553 case 1740277666: 5554 return addEndorser(); 5555 case 666807069: 5556 return addRelatedArtifact(); 5557 case 166208699: 5558 return addLibraryElement(); 5559 case 3292052: 5560 return getKindElement(); 5561 case -309425751: 5562 return getProfileElement(); 5563 case 3059181: 5564 return getCode(); 5565 case -1183762788: 5566 return getIntentElement(); 5567 case -1165461084: 5568 return getPriorityElement(); 5569 case -1788508167: 5570 return getDoNotPerformElement(); 5571 case 164632566: 5572 return getTiming(); 5573 case -873664438: 5574 return getTiming(); 5575 case 1901043637: 5576 return getLocation(); 5577 case 767422259: 5578 return addParticipant(); 5579 case 1753005361: 5580 return getProduct(); 5581 case -309474065: 5582 return getProduct(); 5583 case -1285004149: 5584 return getQuantity(); 5585 case -1326018889: 5586 return addDosage(); 5587 case 1702620169: 5588 return addBodySite(); 5589 case 1498467355: 5590 return addSpecimenRequirement(); 5591 case 362354807: 5592 return addObservationRequirement(); 5593 case 395230490: 5594 return addObservationResultRequirement(); 5595 case 1052666732: 5596 return getTransformElement(); 5597 case 572625010: 5598 return addDynamicValue(); 5599 default: 5600 return super.makeProperty(hash, name); 5601 } 5602 5603 } 5604 5605 @Override 5606 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 5607 switch (hash) { 5608 case 116079: 5609 /* url */ return new String[] { "uri" }; 5610 case -1618432855: 5611 /* identifier */ return new String[] { "Identifier" }; 5612 case 351608024: 5613 /* version */ return new String[] { "string" }; 5614 case 3373707: 5615 /* name */ return new String[] { "string" }; 5616 case 110371416: 5617 /* title */ return new String[] { "string" }; 5618 case -2060497896: 5619 /* subtitle */ return new String[] { "string" }; 5620 case -892481550: 5621 /* status */ return new String[] { "code" }; 5622 case -404562712: 5623 /* experimental */ return new String[] { "boolean" }; 5624 case -1867885268: 5625 /* subject */ return new String[] { "CodeableConcept", "Reference" }; 5626 case 3076014: 5627 /* date */ return new String[] { "dateTime" }; 5628 case 1447404028: 5629 /* publisher */ return new String[] { "string" }; 5630 case 951526432: 5631 /* contact */ return new String[] { "ContactDetail" }; 5632 case -1724546052: 5633 /* description */ return new String[] { "markdown" }; 5634 case -669707736: 5635 /* useContext */ return new String[] { "UsageContext" }; 5636 case -507075711: 5637 /* jurisdiction */ return new String[] { "CodeableConcept" }; 5638 case -220463842: 5639 /* purpose */ return new String[] { "markdown" }; 5640 case 111574433: 5641 /* usage */ return new String[] { "string" }; 5642 case 1522889671: 5643 /* copyright */ return new String[] { "markdown" }; 5644 case 223539345: 5645 /* approvalDate */ return new String[] { "date" }; 5646 case -1687512484: 5647 /* lastReviewDate */ return new String[] { "date" }; 5648 case -403934648: 5649 /* effectivePeriod */ return new String[] { "Period" }; 5650 case 110546223: 5651 /* topic */ return new String[] { "CodeableConcept" }; 5652 case -1406328437: 5653 /* author */ return new String[] { "ContactDetail" }; 5654 case -1307827859: 5655 /* editor */ return new String[] { "ContactDetail" }; 5656 case -261190139: 5657 /* reviewer */ return new String[] { "ContactDetail" }; 5658 case 1740277666: 5659 /* endorser */ return new String[] { "ContactDetail" }; 5660 case 666807069: 5661 /* relatedArtifact */ return new String[] { "RelatedArtifact" }; 5662 case 166208699: 5663 /* library */ return new String[] { "canonical" }; 5664 case 3292052: 5665 /* kind */ return new String[] { "code" }; 5666 case -309425751: 5667 /* profile */ return new String[] { "canonical" }; 5668 case 3059181: 5669 /* code */ return new String[] { "CodeableConcept" }; 5670 case -1183762788: 5671 /* intent */ return new String[] { "code" }; 5672 case -1165461084: 5673 /* priority */ return new String[] { "code" }; 5674 case -1788508167: 5675 /* doNotPerform */ return new String[] { "boolean" }; 5676 case -873664438: 5677 /* timing */ return new String[] { "Timing", "dateTime", "Age", "Period", "Range", "Duration" }; 5678 case 1901043637: 5679 /* location */ return new String[] { "Reference" }; 5680 case 767422259: 5681 /* participant */ return new String[] {}; 5682 case -309474065: 5683 /* product */ return new String[] { "Reference", "CodeableConcept" }; 5684 case -1285004149: 5685 /* quantity */ return new String[] { "SimpleQuantity" }; 5686 case -1326018889: 5687 /* dosage */ return new String[] { "Dosage" }; 5688 case 1702620169: 5689 /* bodySite */ return new String[] { "CodeableConcept" }; 5690 case 1498467355: 5691 /* specimenRequirement */ return new String[] { "Reference" }; 5692 case 362354807: 5693 /* observationRequirement */ return new String[] { "Reference" }; 5694 case 395230490: 5695 /* observationResultRequirement */ return new String[] { "Reference" }; 5696 case 1052666732: 5697 /* transform */ return new String[] { "canonical" }; 5698 case 572625010: 5699 /* dynamicValue */ return new String[] {}; 5700 default: 5701 return super.getTypesForProperty(hash, name); 5702 } 5703 5704 } 5705 5706 @Override 5707 public Base addChild(String name) throws FHIRException { 5708 if (name.equals("url")) { 5709 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.url"); 5710 } else if (name.equals("identifier")) { 5711 return addIdentifier(); 5712 } else if (name.equals("version")) { 5713 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.version"); 5714 } else if (name.equals("name")) { 5715 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.name"); 5716 } else if (name.equals("title")) { 5717 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.title"); 5718 } else if (name.equals("subtitle")) { 5719 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.subtitle"); 5720 } else if (name.equals("status")) { 5721 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.status"); 5722 } else if (name.equals("experimental")) { 5723 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.experimental"); 5724 } else if (name.equals("subjectCodeableConcept")) { 5725 this.subject = new CodeableConcept(); 5726 return this.subject; 5727 } else if (name.equals("subjectReference")) { 5728 this.subject = new Reference(); 5729 return this.subject; 5730 } else if (name.equals("date")) { 5731 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.date"); 5732 } else if (name.equals("publisher")) { 5733 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.publisher"); 5734 } else if (name.equals("contact")) { 5735 return addContact(); 5736 } else if (name.equals("description")) { 5737 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.description"); 5738 } else if (name.equals("useContext")) { 5739 return addUseContext(); 5740 } else if (name.equals("jurisdiction")) { 5741 return addJurisdiction(); 5742 } else if (name.equals("purpose")) { 5743 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.purpose"); 5744 } else if (name.equals("usage")) { 5745 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.usage"); 5746 } else if (name.equals("copyright")) { 5747 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.copyright"); 5748 } else if (name.equals("approvalDate")) { 5749 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.approvalDate"); 5750 } else if (name.equals("lastReviewDate")) { 5751 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.lastReviewDate"); 5752 } else if (name.equals("effectivePeriod")) { 5753 this.effectivePeriod = new Period(); 5754 return this.effectivePeriod; 5755 } else if (name.equals("topic")) { 5756 return addTopic(); 5757 } else if (name.equals("author")) { 5758 return addAuthor(); 5759 } else if (name.equals("editor")) { 5760 return addEditor(); 5761 } else if (name.equals("reviewer")) { 5762 return addReviewer(); 5763 } else if (name.equals("endorser")) { 5764 return addEndorser(); 5765 } else if (name.equals("relatedArtifact")) { 5766 return addRelatedArtifact(); 5767 } else if (name.equals("library")) { 5768 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.library"); 5769 } else if (name.equals("kind")) { 5770 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.kind"); 5771 } else if (name.equals("profile")) { 5772 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.profile"); 5773 } else if (name.equals("code")) { 5774 this.code = new CodeableConcept(); 5775 return this.code; 5776 } else if (name.equals("intent")) { 5777 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.intent"); 5778 } else if (name.equals("priority")) { 5779 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.priority"); 5780 } else if (name.equals("doNotPerform")) { 5781 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.doNotPerform"); 5782 } else if (name.equals("timingTiming")) { 5783 this.timing = new Timing(); 5784 return this.timing; 5785 } else if (name.equals("timingDateTime")) { 5786 this.timing = new DateTimeType(); 5787 return this.timing; 5788 } else if (name.equals("timingAge")) { 5789 this.timing = new Age(); 5790 return this.timing; 5791 } else if (name.equals("timingPeriod")) { 5792 this.timing = new Period(); 5793 return this.timing; 5794 } else if (name.equals("timingRange")) { 5795 this.timing = new Range(); 5796 return this.timing; 5797 } else if (name.equals("timingDuration")) { 5798 this.timing = new Duration(); 5799 return this.timing; 5800 } else if (name.equals("location")) { 5801 this.location = new Reference(); 5802 return this.location; 5803 } else if (name.equals("participant")) { 5804 return addParticipant(); 5805 } else if (name.equals("productReference")) { 5806 this.product = new Reference(); 5807 return this.product; 5808 } else if (name.equals("productCodeableConcept")) { 5809 this.product = new CodeableConcept(); 5810 return this.product; 5811 } else if (name.equals("quantity")) { 5812 this.quantity = new Quantity(); 5813 return this.quantity; 5814 } else if (name.equals("dosage")) { 5815 return addDosage(); 5816 } else if (name.equals("bodySite")) { 5817 return addBodySite(); 5818 } else if (name.equals("specimenRequirement")) { 5819 return addSpecimenRequirement(); 5820 } else if (name.equals("observationRequirement")) { 5821 return addObservationRequirement(); 5822 } else if (name.equals("observationResultRequirement")) { 5823 return addObservationResultRequirement(); 5824 } else if (name.equals("transform")) { 5825 throw new FHIRException("Cannot call addChild on a singleton property ActivityDefinition.transform"); 5826 } else if (name.equals("dynamicValue")) { 5827 return addDynamicValue(); 5828 } else 5829 return super.addChild(name); 5830 } 5831 5832 public String fhirType() { 5833 return "ActivityDefinition"; 5834 5835 } 5836 5837 public ActivityDefinition copy() { 5838 ActivityDefinition dst = new ActivityDefinition(); 5839 copyValues(dst); 5840 return dst; 5841 } 5842 5843 public void copyValues(ActivityDefinition dst) { 5844 super.copyValues(dst); 5845 dst.url = url == null ? null : url.copy(); 5846 if (identifier != null) { 5847 dst.identifier = new ArrayList<Identifier>(); 5848 for (Identifier i : identifier) 5849 dst.identifier.add(i.copy()); 5850 } 5851 ; 5852 dst.version = version == null ? null : version.copy(); 5853 dst.name = name == null ? null : name.copy(); 5854 dst.title = title == null ? null : title.copy(); 5855 dst.subtitle = subtitle == null ? null : subtitle.copy(); 5856 dst.status = status == null ? null : status.copy(); 5857 dst.experimental = experimental == null ? null : experimental.copy(); 5858 dst.subject = subject == null ? null : subject.copy(); 5859 dst.date = date == null ? null : date.copy(); 5860 dst.publisher = publisher == null ? null : publisher.copy(); 5861 if (contact != null) { 5862 dst.contact = new ArrayList<ContactDetail>(); 5863 for (ContactDetail i : contact) 5864 dst.contact.add(i.copy()); 5865 } 5866 ; 5867 dst.description = description == null ? null : description.copy(); 5868 if (useContext != null) { 5869 dst.useContext = new ArrayList<UsageContext>(); 5870 for (UsageContext i : useContext) 5871 dst.useContext.add(i.copy()); 5872 } 5873 ; 5874 if (jurisdiction != null) { 5875 dst.jurisdiction = new ArrayList<CodeableConcept>(); 5876 for (CodeableConcept i : jurisdiction) 5877 dst.jurisdiction.add(i.copy()); 5878 } 5879 ; 5880 dst.purpose = purpose == null ? null : purpose.copy(); 5881 dst.usage = usage == null ? null : usage.copy(); 5882 dst.copyright = copyright == null ? null : copyright.copy(); 5883 dst.approvalDate = approvalDate == null ? null : approvalDate.copy(); 5884 dst.lastReviewDate = lastReviewDate == null ? null : lastReviewDate.copy(); 5885 dst.effectivePeriod = effectivePeriod == null ? null : effectivePeriod.copy(); 5886 if (topic != null) { 5887 dst.topic = new ArrayList<CodeableConcept>(); 5888 for (CodeableConcept i : topic) 5889 dst.topic.add(i.copy()); 5890 } 5891 ; 5892 if (author != null) { 5893 dst.author = new ArrayList<ContactDetail>(); 5894 for (ContactDetail i : author) 5895 dst.author.add(i.copy()); 5896 } 5897 ; 5898 if (editor != null) { 5899 dst.editor = new ArrayList<ContactDetail>(); 5900 for (ContactDetail i : editor) 5901 dst.editor.add(i.copy()); 5902 } 5903 ; 5904 if (reviewer != null) { 5905 dst.reviewer = new ArrayList<ContactDetail>(); 5906 for (ContactDetail i : reviewer) 5907 dst.reviewer.add(i.copy()); 5908 } 5909 ; 5910 if (endorser != null) { 5911 dst.endorser = new ArrayList<ContactDetail>(); 5912 for (ContactDetail i : endorser) 5913 dst.endorser.add(i.copy()); 5914 } 5915 ; 5916 if (relatedArtifact != null) { 5917 dst.relatedArtifact = new ArrayList<RelatedArtifact>(); 5918 for (RelatedArtifact i : relatedArtifact) 5919 dst.relatedArtifact.add(i.copy()); 5920 } 5921 ; 5922 if (library != null) { 5923 dst.library = new ArrayList<CanonicalType>(); 5924 for (CanonicalType i : library) 5925 dst.library.add(i.copy()); 5926 } 5927 ; 5928 dst.kind = kind == null ? null : kind.copy(); 5929 dst.profile = profile == null ? null : profile.copy(); 5930 dst.code = code == null ? null : code.copy(); 5931 dst.intent = intent == null ? null : intent.copy(); 5932 dst.priority = priority == null ? null : priority.copy(); 5933 dst.doNotPerform = doNotPerform == null ? null : doNotPerform.copy(); 5934 dst.timing = timing == null ? null : timing.copy(); 5935 dst.location = location == null ? null : location.copy(); 5936 if (participant != null) { 5937 dst.participant = new ArrayList<ActivityDefinitionParticipantComponent>(); 5938 for (ActivityDefinitionParticipantComponent i : participant) 5939 dst.participant.add(i.copy()); 5940 } 5941 ; 5942 dst.product = product == null ? null : product.copy(); 5943 dst.quantity = quantity == null ? null : quantity.copy(); 5944 if (dosage != null) { 5945 dst.dosage = new ArrayList<Dosage>(); 5946 for (Dosage i : dosage) 5947 dst.dosage.add(i.copy()); 5948 } 5949 ; 5950 if (bodySite != null) { 5951 dst.bodySite = new ArrayList<CodeableConcept>(); 5952 for (CodeableConcept i : bodySite) 5953 dst.bodySite.add(i.copy()); 5954 } 5955 ; 5956 if (specimenRequirement != null) { 5957 dst.specimenRequirement = new ArrayList<Reference>(); 5958 for (Reference i : specimenRequirement) 5959 dst.specimenRequirement.add(i.copy()); 5960 } 5961 ; 5962 if (observationRequirement != null) { 5963 dst.observationRequirement = new ArrayList<Reference>(); 5964 for (Reference i : observationRequirement) 5965 dst.observationRequirement.add(i.copy()); 5966 } 5967 ; 5968 if (observationResultRequirement != null) { 5969 dst.observationResultRequirement = new ArrayList<Reference>(); 5970 for (Reference i : observationResultRequirement) 5971 dst.observationResultRequirement.add(i.copy()); 5972 } 5973 ; 5974 dst.transform = transform == null ? null : transform.copy(); 5975 if (dynamicValue != null) { 5976 dst.dynamicValue = new ArrayList<ActivityDefinitionDynamicValueComponent>(); 5977 for (ActivityDefinitionDynamicValueComponent i : dynamicValue) 5978 dst.dynamicValue.add(i.copy()); 5979 } 5980 ; 5981 } 5982 5983 protected ActivityDefinition typedCopy() { 5984 return copy(); 5985 } 5986 5987 @Override 5988 public boolean equalsDeep(Base other_) { 5989 if (!super.equalsDeep(other_)) 5990 return false; 5991 if (!(other_ instanceof ActivityDefinition)) 5992 return false; 5993 ActivityDefinition o = (ActivityDefinition) other_; 5994 return compareDeep(identifier, o.identifier, true) && compareDeep(subtitle, o.subtitle, true) 5995 && compareDeep(subject, o.subject, true) && compareDeep(purpose, o.purpose, true) 5996 && compareDeep(usage, o.usage, true) && compareDeep(copyright, o.copyright, true) 5997 && compareDeep(approvalDate, o.approvalDate, true) && compareDeep(lastReviewDate, o.lastReviewDate, true) 5998 && compareDeep(effectivePeriod, o.effectivePeriod, true) && compareDeep(topic, o.topic, true) 5999 && compareDeep(author, o.author, true) && compareDeep(editor, o.editor, true) 6000 && compareDeep(reviewer, o.reviewer, true) && compareDeep(endorser, o.endorser, true) 6001 && compareDeep(relatedArtifact, o.relatedArtifact, true) && compareDeep(library, o.library, true) 6002 && compareDeep(kind, o.kind, true) && compareDeep(profile, o.profile, true) && compareDeep(code, o.code, true) 6003 && compareDeep(intent, o.intent, true) && compareDeep(priority, o.priority, true) 6004 && compareDeep(doNotPerform, o.doNotPerform, true) && compareDeep(timing, o.timing, true) 6005 && compareDeep(location, o.location, true) && compareDeep(participant, o.participant, true) 6006 && compareDeep(product, o.product, true) && compareDeep(quantity, o.quantity, true) 6007 && compareDeep(dosage, o.dosage, true) && compareDeep(bodySite, o.bodySite, true) 6008 && compareDeep(specimenRequirement, o.specimenRequirement, true) 6009 && compareDeep(observationRequirement, o.observationRequirement, true) 6010 && compareDeep(observationResultRequirement, o.observationResultRequirement, true) 6011 && compareDeep(transform, o.transform, true) && compareDeep(dynamicValue, o.dynamicValue, true); 6012 } 6013 6014 @Override 6015 public boolean equalsShallow(Base other_) { 6016 if (!super.equalsShallow(other_)) 6017 return false; 6018 if (!(other_ instanceof ActivityDefinition)) 6019 return false; 6020 ActivityDefinition o = (ActivityDefinition) other_; 6021 return compareValues(subtitle, o.subtitle, true) && compareValues(purpose, o.purpose, true) 6022 && compareValues(usage, o.usage, true) && compareValues(copyright, o.copyright, true) 6023 && compareValues(approvalDate, o.approvalDate, true) && compareValues(lastReviewDate, o.lastReviewDate, true) 6024 && compareValues(kind, o.kind, true) && compareValues(intent, o.intent, true) 6025 && compareValues(priority, o.priority, true) && compareValues(doNotPerform, o.doNotPerform, true); 6026 } 6027 6028 public boolean isEmpty() { 6029 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, subtitle, subject, purpose, usage, 6030 copyright, approvalDate, lastReviewDate, effectivePeriod, topic, author, editor, reviewer, endorser, 6031 relatedArtifact, library, kind, profile, code, intent, priority, doNotPerform, timing, location, participant, 6032 product, quantity, dosage, bodySite, specimenRequirement, observationRequirement, observationResultRequirement, 6033 transform, dynamicValue); 6034 } 6035 6036 @Override 6037 public ResourceType getResourceType() { 6038 return ResourceType.ActivityDefinition; 6039 } 6040 6041 /** 6042 * Search parameter: <b>date</b> 6043 * <p> 6044 * Description: <b>The activity definition publication date</b><br> 6045 * Type: <b>date</b><br> 6046 * Path: <b>ActivityDefinition.date</b><br> 6047 * </p> 6048 */ 6049 @SearchParamDefinition(name = "date", path = "ActivityDefinition.date", description = "The activity definition publication date", type = "date") 6050 public static final String SP_DATE = "date"; 6051 /** 6052 * <b>Fluent Client</b> search parameter constant for <b>date</b> 6053 * <p> 6054 * Description: <b>The activity definition publication date</b><br> 6055 * Type: <b>date</b><br> 6056 * Path: <b>ActivityDefinition.date</b><br> 6057 * </p> 6058 */ 6059 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam( 6060 SP_DATE); 6061 6062 /** 6063 * Search parameter: <b>identifier</b> 6064 * <p> 6065 * Description: <b>External identifier for the activity definition</b><br> 6066 * Type: <b>token</b><br> 6067 * Path: <b>ActivityDefinition.identifier</b><br> 6068 * </p> 6069 */ 6070 @SearchParamDefinition(name = "identifier", path = "ActivityDefinition.identifier", description = "External identifier for the activity definition", type = "token") 6071 public static final String SP_IDENTIFIER = "identifier"; 6072 /** 6073 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 6074 * <p> 6075 * Description: <b>External identifier for the activity definition</b><br> 6076 * Type: <b>token</b><br> 6077 * Path: <b>ActivityDefinition.identifier</b><br> 6078 * </p> 6079 */ 6080 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam( 6081 SP_IDENTIFIER); 6082 6083 /** 6084 * Search parameter: <b>successor</b> 6085 * <p> 6086 * Description: <b>What resource is being referenced</b><br> 6087 * Type: <b>reference</b><br> 6088 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 6089 * </p> 6090 */ 6091 @SearchParamDefinition(name = "successor", path = "ActivityDefinition.relatedArtifact.where(type='successor').resource", description = "What resource is being referenced", type = "reference") 6092 public static final String SP_SUCCESSOR = "successor"; 6093 /** 6094 * <b>Fluent Client</b> search parameter constant for <b>successor</b> 6095 * <p> 6096 * Description: <b>What resource is being referenced</b><br> 6097 * Type: <b>reference</b><br> 6098 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 6099 * </p> 6100 */ 6101 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUCCESSOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 6102 SP_SUCCESSOR); 6103 6104 /** 6105 * Constant for fluent queries to be used to add include statements. Specifies 6106 * the path value of "<b>ActivityDefinition:successor</b>". 6107 */ 6108 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUCCESSOR = new ca.uhn.fhir.model.api.Include( 6109 "ActivityDefinition:successor").toLocked(); 6110 6111 /** 6112 * Search parameter: <b>context-type-value</b> 6113 * <p> 6114 * Description: <b>A use context type and value assigned to the activity 6115 * definition</b><br> 6116 * Type: <b>composite</b><br> 6117 * Path: <b></b><br> 6118 * </p> 6119 */ 6120 @SearchParamDefinition(name = "context-type-value", path = "ActivityDefinition.useContext", description = "A use context type and value assigned to the activity definition", type = "composite", compositeOf = { 6121 "context-type", "context" }) 6122 public static final String SP_CONTEXT_TYPE_VALUE = "context-type-value"; 6123 /** 6124 * <b>Fluent Client</b> search parameter constant for <b>context-type-value</b> 6125 * <p> 6126 * Description: <b>A use context type and value assigned to the activity 6127 * definition</b><br> 6128 * Type: <b>composite</b><br> 6129 * Path: <b></b><br> 6130 * </p> 6131 */ 6132 public static final ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.TokenClientParam> CONTEXT_TYPE_VALUE = new ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.TokenClientParam>( 6133 SP_CONTEXT_TYPE_VALUE); 6134 6135 /** 6136 * Search parameter: <b>jurisdiction</b> 6137 * <p> 6138 * Description: <b>Intended jurisdiction for the activity definition</b><br> 6139 * Type: <b>token</b><br> 6140 * Path: <b>ActivityDefinition.jurisdiction</b><br> 6141 * </p> 6142 */ 6143 @SearchParamDefinition(name = "jurisdiction", path = "ActivityDefinition.jurisdiction", description = "Intended jurisdiction for the activity definition", type = "token") 6144 public static final String SP_JURISDICTION = "jurisdiction"; 6145 /** 6146 * <b>Fluent Client</b> search parameter constant for <b>jurisdiction</b> 6147 * <p> 6148 * Description: <b>Intended jurisdiction for the activity definition</b><br> 6149 * Type: <b>token</b><br> 6150 * Path: <b>ActivityDefinition.jurisdiction</b><br> 6151 * </p> 6152 */ 6153 public static final ca.uhn.fhir.rest.gclient.TokenClientParam JURISDICTION = new ca.uhn.fhir.rest.gclient.TokenClientParam( 6154 SP_JURISDICTION); 6155 6156 /** 6157 * Search parameter: <b>description</b> 6158 * <p> 6159 * Description: <b>The description of the activity definition</b><br> 6160 * Type: <b>string</b><br> 6161 * Path: <b>ActivityDefinition.description</b><br> 6162 * </p> 6163 */ 6164 @SearchParamDefinition(name = "description", path = "ActivityDefinition.description", description = "The description of the activity definition", type = "string") 6165 public static final String SP_DESCRIPTION = "description"; 6166 /** 6167 * <b>Fluent Client</b> search parameter constant for <b>description</b> 6168 * <p> 6169 * Description: <b>The description of the activity definition</b><br> 6170 * Type: <b>string</b><br> 6171 * Path: <b>ActivityDefinition.description</b><br> 6172 * </p> 6173 */ 6174 public static final ca.uhn.fhir.rest.gclient.StringClientParam DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam( 6175 SP_DESCRIPTION); 6176 6177 /** 6178 * Search parameter: <b>derived-from</b> 6179 * <p> 6180 * Description: <b>What resource is being referenced</b><br> 6181 * Type: <b>reference</b><br> 6182 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 6183 * </p> 6184 */ 6185 @SearchParamDefinition(name = "derived-from", path = "ActivityDefinition.relatedArtifact.where(type='derived-from').resource", description = "What resource is being referenced", type = "reference") 6186 public static final String SP_DERIVED_FROM = "derived-from"; 6187 /** 6188 * <b>Fluent Client</b> search parameter constant for <b>derived-from</b> 6189 * <p> 6190 * Description: <b>What resource is being referenced</b><br> 6191 * Type: <b>reference</b><br> 6192 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 6193 * </p> 6194 */ 6195 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DERIVED_FROM = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 6196 SP_DERIVED_FROM); 6197 6198 /** 6199 * Constant for fluent queries to be used to add include statements. Specifies 6200 * the path value of "<b>ActivityDefinition:derived-from</b>". 6201 */ 6202 public static final ca.uhn.fhir.model.api.Include INCLUDE_DERIVED_FROM = new ca.uhn.fhir.model.api.Include( 6203 "ActivityDefinition:derived-from").toLocked(); 6204 6205 /** 6206 * Search parameter: <b>context-type</b> 6207 * <p> 6208 * Description: <b>A type of use context assigned to the activity 6209 * definition</b><br> 6210 * Type: <b>token</b><br> 6211 * Path: <b>ActivityDefinition.useContext.code</b><br> 6212 * </p> 6213 */ 6214 @SearchParamDefinition(name = "context-type", path = "ActivityDefinition.useContext.code", description = "A type of use context assigned to the activity definition", type = "token") 6215 public static final String SP_CONTEXT_TYPE = "context-type"; 6216 /** 6217 * <b>Fluent Client</b> search parameter constant for <b>context-type</b> 6218 * <p> 6219 * Description: <b>A type of use context assigned to the activity 6220 * definition</b><br> 6221 * Type: <b>token</b><br> 6222 * Path: <b>ActivityDefinition.useContext.code</b><br> 6223 * </p> 6224 */ 6225 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam( 6226 SP_CONTEXT_TYPE); 6227 6228 /** 6229 * Search parameter: <b>predecessor</b> 6230 * <p> 6231 * Description: <b>What resource is being referenced</b><br> 6232 * Type: <b>reference</b><br> 6233 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 6234 * </p> 6235 */ 6236 @SearchParamDefinition(name = "predecessor", path = "ActivityDefinition.relatedArtifact.where(type='predecessor').resource", description = "What resource is being referenced", type = "reference") 6237 public static final String SP_PREDECESSOR = "predecessor"; 6238 /** 6239 * <b>Fluent Client</b> search parameter constant for <b>predecessor</b> 6240 * <p> 6241 * Description: <b>What resource is being referenced</b><br> 6242 * Type: <b>reference</b><br> 6243 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 6244 * </p> 6245 */ 6246 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PREDECESSOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 6247 SP_PREDECESSOR); 6248 6249 /** 6250 * Constant for fluent queries to be used to add include statements. Specifies 6251 * the path value of "<b>ActivityDefinition:predecessor</b>". 6252 */ 6253 public static final ca.uhn.fhir.model.api.Include INCLUDE_PREDECESSOR = new ca.uhn.fhir.model.api.Include( 6254 "ActivityDefinition:predecessor").toLocked(); 6255 6256 /** 6257 * Search parameter: <b>title</b> 6258 * <p> 6259 * Description: <b>The human-friendly name of the activity definition</b><br> 6260 * Type: <b>string</b><br> 6261 * Path: <b>ActivityDefinition.title</b><br> 6262 * </p> 6263 */ 6264 @SearchParamDefinition(name = "title", path = "ActivityDefinition.title", description = "The human-friendly name of the activity definition", type = "string") 6265 public static final String SP_TITLE = "title"; 6266 /** 6267 * <b>Fluent Client</b> search parameter constant for <b>title</b> 6268 * <p> 6269 * Description: <b>The human-friendly name of the activity definition</b><br> 6270 * Type: <b>string</b><br> 6271 * Path: <b>ActivityDefinition.title</b><br> 6272 * </p> 6273 */ 6274 public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam( 6275 SP_TITLE); 6276 6277 /** 6278 * Search parameter: <b>composed-of</b> 6279 * <p> 6280 * Description: <b>What resource is being referenced</b><br> 6281 * Type: <b>reference</b><br> 6282 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 6283 * </p> 6284 */ 6285 @SearchParamDefinition(name = "composed-of", path = "ActivityDefinition.relatedArtifact.where(type='composed-of').resource", description = "What resource is being referenced", type = "reference") 6286 public static final String SP_COMPOSED_OF = "composed-of"; 6287 /** 6288 * <b>Fluent Client</b> search parameter constant for <b>composed-of</b> 6289 * <p> 6290 * Description: <b>What resource is being referenced</b><br> 6291 * Type: <b>reference</b><br> 6292 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 6293 * </p> 6294 */ 6295 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam COMPOSED_OF = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 6296 SP_COMPOSED_OF); 6297 6298 /** 6299 * Constant for fluent queries to be used to add include statements. Specifies 6300 * the path value of "<b>ActivityDefinition:composed-of</b>". 6301 */ 6302 public static final ca.uhn.fhir.model.api.Include INCLUDE_COMPOSED_OF = new ca.uhn.fhir.model.api.Include( 6303 "ActivityDefinition:composed-of").toLocked(); 6304 6305 /** 6306 * Search parameter: <b>version</b> 6307 * <p> 6308 * Description: <b>The business version of the activity definition</b><br> 6309 * Type: <b>token</b><br> 6310 * Path: <b>ActivityDefinition.version</b><br> 6311 * </p> 6312 */ 6313 @SearchParamDefinition(name = "version", path = "ActivityDefinition.version", description = "The business version of the activity definition", type = "token") 6314 public static final String SP_VERSION = "version"; 6315 /** 6316 * <b>Fluent Client</b> search parameter constant for <b>version</b> 6317 * <p> 6318 * Description: <b>The business version of the activity definition</b><br> 6319 * Type: <b>token</b><br> 6320 * Path: <b>ActivityDefinition.version</b><br> 6321 * </p> 6322 */ 6323 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam( 6324 SP_VERSION); 6325 6326 /** 6327 * Search parameter: <b>url</b> 6328 * <p> 6329 * Description: <b>The uri that identifies the activity definition</b><br> 6330 * Type: <b>uri</b><br> 6331 * Path: <b>ActivityDefinition.url</b><br> 6332 * </p> 6333 */ 6334 @SearchParamDefinition(name = "url", path = "ActivityDefinition.url", description = "The uri that identifies the activity definition", type = "uri") 6335 public static final String SP_URL = "url"; 6336 /** 6337 * <b>Fluent Client</b> search parameter constant for <b>url</b> 6338 * <p> 6339 * Description: <b>The uri that identifies the activity definition</b><br> 6340 * Type: <b>uri</b><br> 6341 * Path: <b>ActivityDefinition.url</b><br> 6342 * </p> 6343 */ 6344 public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); 6345 6346 /** 6347 * Search parameter: <b>context-quantity</b> 6348 * <p> 6349 * Description: <b>A quantity- or range-valued use context assigned to the 6350 * activity definition</b><br> 6351 * Type: <b>quantity</b><br> 6352 * Path: <b>ActivityDefinition.useContext.valueQuantity, 6353 * ActivityDefinition.useContext.valueRange</b><br> 6354 * </p> 6355 */ 6356 @SearchParamDefinition(name = "context-quantity", path = "(ActivityDefinition.useContext.value as Quantity) | (ActivityDefinition.useContext.value as Range)", description = "A quantity- or range-valued use context assigned to the activity definition", type = "quantity") 6357 public static final String SP_CONTEXT_QUANTITY = "context-quantity"; 6358 /** 6359 * <b>Fluent Client</b> search parameter constant for <b>context-quantity</b> 6360 * <p> 6361 * Description: <b>A quantity- or range-valued use context assigned to the 6362 * activity definition</b><br> 6363 * Type: <b>quantity</b><br> 6364 * Path: <b>ActivityDefinition.useContext.valueQuantity, 6365 * ActivityDefinition.useContext.valueRange</b><br> 6366 * </p> 6367 */ 6368 public static final ca.uhn.fhir.rest.gclient.QuantityClientParam CONTEXT_QUANTITY = new ca.uhn.fhir.rest.gclient.QuantityClientParam( 6369 SP_CONTEXT_QUANTITY); 6370 6371 /** 6372 * Search parameter: <b>effective</b> 6373 * <p> 6374 * Description: <b>The time during which the activity definition is intended to 6375 * be in use</b><br> 6376 * Type: <b>date</b><br> 6377 * Path: <b>ActivityDefinition.effectivePeriod</b><br> 6378 * </p> 6379 */ 6380 @SearchParamDefinition(name = "effective", path = "ActivityDefinition.effectivePeriod", description = "The time during which the activity definition is intended to be in use", type = "date") 6381 public static final String SP_EFFECTIVE = "effective"; 6382 /** 6383 * <b>Fluent Client</b> search parameter constant for <b>effective</b> 6384 * <p> 6385 * Description: <b>The time during which the activity definition is intended to 6386 * be in use</b><br> 6387 * Type: <b>date</b><br> 6388 * Path: <b>ActivityDefinition.effectivePeriod</b><br> 6389 * </p> 6390 */ 6391 public static final ca.uhn.fhir.rest.gclient.DateClientParam EFFECTIVE = new ca.uhn.fhir.rest.gclient.DateClientParam( 6392 SP_EFFECTIVE); 6393 6394 /** 6395 * Search parameter: <b>depends-on</b> 6396 * <p> 6397 * Description: <b>What resource is being referenced</b><br> 6398 * Type: <b>reference</b><br> 6399 * Path: <b>ActivityDefinition.relatedArtifact.resource, 6400 * ActivityDefinition.library</b><br> 6401 * </p> 6402 */ 6403 @SearchParamDefinition(name = "depends-on", path = "ActivityDefinition.relatedArtifact.where(type='depends-on').resource | ActivityDefinition.library", description = "What resource is being referenced", type = "reference") 6404 public static final String SP_DEPENDS_ON = "depends-on"; 6405 /** 6406 * <b>Fluent Client</b> search parameter constant for <b>depends-on</b> 6407 * <p> 6408 * Description: <b>What resource is being referenced</b><br> 6409 * Type: <b>reference</b><br> 6410 * Path: <b>ActivityDefinition.relatedArtifact.resource, 6411 * ActivityDefinition.library</b><br> 6412 * </p> 6413 */ 6414 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DEPENDS_ON = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 6415 SP_DEPENDS_ON); 6416 6417 /** 6418 * Constant for fluent queries to be used to add include statements. Specifies 6419 * the path value of "<b>ActivityDefinition:depends-on</b>". 6420 */ 6421 public static final ca.uhn.fhir.model.api.Include INCLUDE_DEPENDS_ON = new ca.uhn.fhir.model.api.Include( 6422 "ActivityDefinition:depends-on").toLocked(); 6423 6424 /** 6425 * Search parameter: <b>name</b> 6426 * <p> 6427 * Description: <b>Computationally friendly name of the activity 6428 * definition</b><br> 6429 * Type: <b>string</b><br> 6430 * Path: <b>ActivityDefinition.name</b><br> 6431 * </p> 6432 */ 6433 @SearchParamDefinition(name = "name", path = "ActivityDefinition.name", description = "Computationally friendly name of the activity definition", type = "string") 6434 public static final String SP_NAME = "name"; 6435 /** 6436 * <b>Fluent Client</b> search parameter constant for <b>name</b> 6437 * <p> 6438 * Description: <b>Computationally friendly name of the activity 6439 * definition</b><br> 6440 * Type: <b>string</b><br> 6441 * Path: <b>ActivityDefinition.name</b><br> 6442 * </p> 6443 */ 6444 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam( 6445 SP_NAME); 6446 6447 /** 6448 * Search parameter: <b>context</b> 6449 * <p> 6450 * Description: <b>A use context assigned to the activity definition</b><br> 6451 * Type: <b>token</b><br> 6452 * Path: <b>ActivityDefinition.useContext.valueCodeableConcept</b><br> 6453 * </p> 6454 */ 6455 @SearchParamDefinition(name = "context", path = "(ActivityDefinition.useContext.value as CodeableConcept)", description = "A use context assigned to the activity definition", type = "token") 6456 public static final String SP_CONTEXT = "context"; 6457 /** 6458 * <b>Fluent Client</b> search parameter constant for <b>context</b> 6459 * <p> 6460 * Description: <b>A use context assigned to the activity definition</b><br> 6461 * Type: <b>token</b><br> 6462 * Path: <b>ActivityDefinition.useContext.valueCodeableConcept</b><br> 6463 * </p> 6464 */ 6465 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.TokenClientParam( 6466 SP_CONTEXT); 6467 6468 /** 6469 * Search parameter: <b>publisher</b> 6470 * <p> 6471 * Description: <b>Name of the publisher of the activity definition</b><br> 6472 * Type: <b>string</b><br> 6473 * Path: <b>ActivityDefinition.publisher</b><br> 6474 * </p> 6475 */ 6476 @SearchParamDefinition(name = "publisher", path = "ActivityDefinition.publisher", description = "Name of the publisher of the activity definition", type = "string") 6477 public static final String SP_PUBLISHER = "publisher"; 6478 /** 6479 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 6480 * <p> 6481 * Description: <b>Name of the publisher of the activity definition</b><br> 6482 * Type: <b>string</b><br> 6483 * Path: <b>ActivityDefinition.publisher</b><br> 6484 * </p> 6485 */ 6486 public static final ca.uhn.fhir.rest.gclient.StringClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.StringClientParam( 6487 SP_PUBLISHER); 6488 6489 /** 6490 * Search parameter: <b>topic</b> 6491 * <p> 6492 * Description: <b>Topics associated with the module</b><br> 6493 * Type: <b>token</b><br> 6494 * Path: <b>ActivityDefinition.topic</b><br> 6495 * </p> 6496 */ 6497 @SearchParamDefinition(name = "topic", path = "ActivityDefinition.topic", description = "Topics associated with the module", type = "token") 6498 public static final String SP_TOPIC = "topic"; 6499 /** 6500 * <b>Fluent Client</b> search parameter constant for <b>topic</b> 6501 * <p> 6502 * Description: <b>Topics associated with the module</b><br> 6503 * Type: <b>token</b><br> 6504 * Path: <b>ActivityDefinition.topic</b><br> 6505 * </p> 6506 */ 6507 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TOPIC = new ca.uhn.fhir.rest.gclient.TokenClientParam( 6508 SP_TOPIC); 6509 6510 /** 6511 * Search parameter: <b>context-type-quantity</b> 6512 * <p> 6513 * Description: <b>A use context type and quantity- or range-based value 6514 * assigned to the activity definition</b><br> 6515 * Type: <b>composite</b><br> 6516 * Path: <b></b><br> 6517 * </p> 6518 */ 6519 @SearchParamDefinition(name = "context-type-quantity", path = "ActivityDefinition.useContext", description = "A use context type and quantity- or range-based value assigned to the activity definition", type = "composite", compositeOf = { 6520 "context-type", "context-quantity" }) 6521 public static final String SP_CONTEXT_TYPE_QUANTITY = "context-type-quantity"; 6522 /** 6523 * <b>Fluent Client</b> search parameter constant for 6524 * <b>context-type-quantity</b> 6525 * <p> 6526 * Description: <b>A use context type and quantity- or range-based value 6527 * assigned to the activity definition</b><br> 6528 * Type: <b>composite</b><br> 6529 * Path: <b></b><br> 6530 * </p> 6531 */ 6532 public static final ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.QuantityClientParam> CONTEXT_TYPE_QUANTITY = new ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.QuantityClientParam>( 6533 SP_CONTEXT_TYPE_QUANTITY); 6534 6535 /** 6536 * Search parameter: <b>status</b> 6537 * <p> 6538 * Description: <b>The current status of the activity definition</b><br> 6539 * Type: <b>token</b><br> 6540 * Path: <b>ActivityDefinition.status</b><br> 6541 * </p> 6542 */ 6543 @SearchParamDefinition(name = "status", path = "ActivityDefinition.status", description = "The current status of the activity definition", type = "token") 6544 public static final String SP_STATUS = "status"; 6545 /** 6546 * <b>Fluent Client</b> search parameter constant for <b>status</b> 6547 * <p> 6548 * Description: <b>The current status of the activity definition</b><br> 6549 * Type: <b>token</b><br> 6550 * Path: <b>ActivityDefinition.status</b><br> 6551 * </p> 6552 */ 6553 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam( 6554 SP_STATUS); 6555 6556}