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 Thu, Sep 13, 2018 09:04-0400 for FHIR v3.5.0 033 034import java.util.*; 035 036import org.hl7.fhir.utilities.Utilities; 037import org.hl7.fhir.r4.model.Enumerations.*; 038import ca.uhn.fhir.model.api.annotation.ResourceDef; 039import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 040import ca.uhn.fhir.model.api.annotation.Child; 041import ca.uhn.fhir.model.api.annotation.ChildOrder; 042import ca.uhn.fhir.model.api.annotation.Description; 043import ca.uhn.fhir.model.api.annotation.Block; 044import org.hl7.fhir.instance.model.api.*; 045import org.hl7.fhir.exceptions.FHIRException; 046/** 047 * This resource allows for the definition of some activity to be performed, independent of a particular patient, practitioner, or other performance context. 048 */ 049@ResourceDef(name="ActivityDefinition", profile="http://hl7.org/fhir/StructureDefinition/ActivityDefinition") 050@ChildOrder(names={"url", "identifier", "version", "name", "title", "subtitle", "status", "experimental", "subject[x]", "date", "publisher", "contact", "description", "useContext", "jurisdiction", "purpose", "usage", "copyright", "approvalDate", "lastReviewDate", "effectivePeriod", "topic", "author", "editor", "reviewer", "endorser", "relatedArtifact", "library", "kind", "profile", "code", "intent", "priority", "doNotPerform", "timing[x]", "location", "participant", "product[x]", "quantity", "dosage", "bodySite", "specimenRequirement", "observationRequirement", "observationResultRequirement", "transform", "dynamicValue"}) 051public class ActivityDefinition extends MetadataResource { 052 053 public enum ActivityDefinitionKind { 054 /** 055 * 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). 056 */ 057 APPOINTMENT, 058 /** 059 * A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection. 060 */ 061 APPOINTMENTRESPONSE, 062 /** 063 * Healthcare plan for patient or group. 064 */ 065 CAREPLAN, 066 /** 067 * Claim, Pre-determination or Pre-authorization. 068 */ 069 CLAIM, 070 /** 071 * A request for information to be sent to a receiver. 072 */ 073 COMMUNICATIONREQUEST, 074 /** 075 * Legal Agreement. 076 */ 077 CONTRACT, 078 /** 079 * Medical device request. 080 */ 081 DEVICEREQUEST, 082 /** 083 * Enrollment request. 084 */ 085 ENROLLMENTREQUEST, 086 /** 087 * Guidance or advice relating to an immunization. 088 */ 089 IMMUNIZATIONRECOMMENDATION, 090 /** 091 * Ordering of medication for patient or group. 092 */ 093 MEDICATIONREQUEST, 094 /** 095 * Diet, formula or nutritional supplement request. 096 */ 097 NUTRITIONORDER, 098 /** 099 * A record of a request for service such as diagnostic investigations, treatments, or operations to be performed. 100 */ 101 SERVICEREQUEST, 102 /** 103 * Request for a medication, substance or device. 104 */ 105 SUPPLYREQUEST, 106 /** 107 * A task to be performed. 108 */ 109 TASK, 110 /** 111 * Prescription for vision correction products for a patient. 112 */ 113 VISIONPRESCRIPTION, 114 /** 115 * added to help the parsers with the generic types 116 */ 117 NULL; 118 public static ActivityDefinitionKind fromCode(String codeString) throws FHIRException { 119 if (codeString == null || "".equals(codeString)) 120 return null; 121 if ("Appointment".equals(codeString)) 122 return APPOINTMENT; 123 if ("AppointmentResponse".equals(codeString)) 124 return APPOINTMENTRESPONSE; 125 if ("CarePlan".equals(codeString)) 126 return CAREPLAN; 127 if ("Claim".equals(codeString)) 128 return CLAIM; 129 if ("CommunicationRequest".equals(codeString)) 130 return COMMUNICATIONREQUEST; 131 if ("Contract".equals(codeString)) 132 return CONTRACT; 133 if ("DeviceRequest".equals(codeString)) 134 return DEVICEREQUEST; 135 if ("EnrollmentRequest".equals(codeString)) 136 return ENROLLMENTREQUEST; 137 if ("ImmunizationRecommendation".equals(codeString)) 138 return IMMUNIZATIONRECOMMENDATION; 139 if ("MedicationRequest".equals(codeString)) 140 return MEDICATIONREQUEST; 141 if ("NutritionOrder".equals(codeString)) 142 return NUTRITIONORDER; 143 if ("ServiceRequest".equals(codeString)) 144 return SERVICEREQUEST; 145 if ("SupplyRequest".equals(codeString)) 146 return SUPPLYREQUEST; 147 if ("Task".equals(codeString)) 148 return TASK; 149 if ("VisionPrescription".equals(codeString)) 150 return VISIONPRESCRIPTION; 151 if (Configuration.isAcceptInvalidEnums()) 152 return null; 153 else 154 throw new FHIRException("Unknown ActivityDefinitionKind code '"+codeString+"'"); 155 } 156 public String toCode() { 157 switch (this) { 158 case APPOINTMENT: return "Appointment"; 159 case APPOINTMENTRESPONSE: return "AppointmentResponse"; 160 case CAREPLAN: return "CarePlan"; 161 case CLAIM: return "Claim"; 162 case COMMUNICATIONREQUEST: return "CommunicationRequest"; 163 case CONTRACT: return "Contract"; 164 case DEVICEREQUEST: return "DeviceRequest"; 165 case ENROLLMENTREQUEST: return "EnrollmentRequest"; 166 case IMMUNIZATIONRECOMMENDATION: return "ImmunizationRecommendation"; 167 case MEDICATIONREQUEST: return "MedicationRequest"; 168 case NUTRITIONORDER: return "NutritionOrder"; 169 case SERVICEREQUEST: return "ServiceRequest"; 170 case SUPPLYREQUEST: return "SupplyRequest"; 171 case TASK: return "Task"; 172 case VISIONPRESCRIPTION: return "VisionPrescription"; 173 default: return "?"; 174 } 175 } 176 public String getSystem() { 177 switch (this) { 178 case APPOINTMENT: return "http://hl7.org/fhir/request-resource-types"; 179 case APPOINTMENTRESPONSE: return "http://hl7.org/fhir/request-resource-types"; 180 case CAREPLAN: return "http://hl7.org/fhir/request-resource-types"; 181 case CLAIM: return "http://hl7.org/fhir/request-resource-types"; 182 case COMMUNICATIONREQUEST: return "http://hl7.org/fhir/request-resource-types"; 183 case CONTRACT: return "http://hl7.org/fhir/request-resource-types"; 184 case DEVICEREQUEST: return "http://hl7.org/fhir/request-resource-types"; 185 case ENROLLMENTREQUEST: return "http://hl7.org/fhir/request-resource-types"; 186 case IMMUNIZATIONRECOMMENDATION: return "http://hl7.org/fhir/request-resource-types"; 187 case MEDICATIONREQUEST: return "http://hl7.org/fhir/request-resource-types"; 188 case NUTRITIONORDER: return "http://hl7.org/fhir/request-resource-types"; 189 case SERVICEREQUEST: return "http://hl7.org/fhir/request-resource-types"; 190 case SUPPLYREQUEST: return "http://hl7.org/fhir/request-resource-types"; 191 case TASK: return "http://hl7.org/fhir/request-resource-types"; 192 case VISIONPRESCRIPTION: return "http://hl7.org/fhir/request-resource-types"; 193 default: return "?"; 194 } 195 } 196 public String getDefinition() { 197 switch (this) { 198 case APPOINTMENT: 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)."; 199 case APPOINTMENTRESPONSE: return "A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection."; 200 case CAREPLAN: return "Healthcare plan for patient or group."; 201 case CLAIM: return "Claim, Pre-determination or Pre-authorization."; 202 case COMMUNICATIONREQUEST: return "A request for information to be sent to a receiver."; 203 case CONTRACT: return "Legal Agreement."; 204 case DEVICEREQUEST: return "Medical device request."; 205 case ENROLLMENTREQUEST: return "Enrollment request."; 206 case IMMUNIZATIONRECOMMENDATION: return "Guidance or advice relating to an immunization."; 207 case MEDICATIONREQUEST: return "Ordering of medication for patient or group."; 208 case NUTRITIONORDER: return "Diet, formula or nutritional supplement request."; 209 case SERVICEREQUEST: return "A record of a request for service such as diagnostic investigations, treatments, or operations to be performed."; 210 case SUPPLYREQUEST: return "Request for a medication, substance or device."; 211 case TASK: return "A task to be performed."; 212 case VISIONPRESCRIPTION: return "Prescription for vision correction products for a patient."; 213 default: return "?"; 214 } 215 } 216 public String getDisplay() { 217 switch (this) { 218 case APPOINTMENT: return "Appointment"; 219 case APPOINTMENTRESPONSE: return "AppointmentResponse"; 220 case CAREPLAN: return "CarePlan"; 221 case CLAIM: return "Claim"; 222 case COMMUNICATIONREQUEST: return "CommunicationRequest"; 223 case CONTRACT: return "Contract"; 224 case DEVICEREQUEST: return "DeviceRequest"; 225 case ENROLLMENTREQUEST: return "EnrollmentRequest"; 226 case IMMUNIZATIONRECOMMENDATION: return "ImmunizationRecommendation"; 227 case MEDICATIONREQUEST: return "MedicationRequest"; 228 case NUTRITIONORDER: return "NutritionOrder"; 229 case SERVICEREQUEST: return "ServiceRequest"; 230 case SUPPLYREQUEST: return "SupplyRequest"; 231 case TASK: return "Task"; 232 case VISIONPRESCRIPTION: return "VisionPrescription"; 233 default: return "?"; 234 } 235 } 236 } 237 238 public static class ActivityDefinitionKindEnumFactory implements EnumFactory<ActivityDefinitionKind> { 239 public ActivityDefinitionKind fromCode(String codeString) throws IllegalArgumentException { 240 if (codeString == null || "".equals(codeString)) 241 if (codeString == null || "".equals(codeString)) 242 return null; 243 if ("Appointment".equals(codeString)) 244 return ActivityDefinitionKind.APPOINTMENT; 245 if ("AppointmentResponse".equals(codeString)) 246 return ActivityDefinitionKind.APPOINTMENTRESPONSE; 247 if ("CarePlan".equals(codeString)) 248 return ActivityDefinitionKind.CAREPLAN; 249 if ("Claim".equals(codeString)) 250 return ActivityDefinitionKind.CLAIM; 251 if ("CommunicationRequest".equals(codeString)) 252 return ActivityDefinitionKind.COMMUNICATIONREQUEST; 253 if ("Contract".equals(codeString)) 254 return ActivityDefinitionKind.CONTRACT; 255 if ("DeviceRequest".equals(codeString)) 256 return ActivityDefinitionKind.DEVICEREQUEST; 257 if ("EnrollmentRequest".equals(codeString)) 258 return ActivityDefinitionKind.ENROLLMENTREQUEST; 259 if ("ImmunizationRecommendation".equals(codeString)) 260 return ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION; 261 if ("MedicationRequest".equals(codeString)) 262 return ActivityDefinitionKind.MEDICATIONREQUEST; 263 if ("NutritionOrder".equals(codeString)) 264 return ActivityDefinitionKind.NUTRITIONORDER; 265 if ("ServiceRequest".equals(codeString)) 266 return ActivityDefinitionKind.SERVICEREQUEST; 267 if ("SupplyRequest".equals(codeString)) 268 return ActivityDefinitionKind.SUPPLYREQUEST; 269 if ("Task".equals(codeString)) 270 return ActivityDefinitionKind.TASK; 271 if ("VisionPrescription".equals(codeString)) 272 return ActivityDefinitionKind.VISIONPRESCRIPTION; 273 throw new IllegalArgumentException("Unknown ActivityDefinitionKind code '"+codeString+"'"); 274 } 275 public Enumeration<ActivityDefinitionKind> fromType(Base code) throws FHIRException { 276 if (code == null) 277 return null; 278 if (code.isEmpty()) 279 return new Enumeration<ActivityDefinitionKind>(this); 280 String codeString = ((PrimitiveType) code).asStringValue(); 281 if (codeString == null || "".equals(codeString)) 282 return null; 283 if ("Appointment".equals(codeString)) 284 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.APPOINTMENT); 285 if ("AppointmentResponse".equals(codeString)) 286 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.APPOINTMENTRESPONSE); 287 if ("CarePlan".equals(codeString)) 288 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.CAREPLAN); 289 if ("Claim".equals(codeString)) 290 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.CLAIM); 291 if ("CommunicationRequest".equals(codeString)) 292 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.COMMUNICATIONREQUEST); 293 if ("Contract".equals(codeString)) 294 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.CONTRACT); 295 if ("DeviceRequest".equals(codeString)) 296 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.DEVICEREQUEST); 297 if ("EnrollmentRequest".equals(codeString)) 298 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.ENROLLMENTREQUEST); 299 if ("ImmunizationRecommendation".equals(codeString)) 300 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION); 301 if ("MedicationRequest".equals(codeString)) 302 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.MEDICATIONREQUEST); 303 if ("NutritionOrder".equals(codeString)) 304 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.NUTRITIONORDER); 305 if ("ServiceRequest".equals(codeString)) 306 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.SERVICEREQUEST); 307 if ("SupplyRequest".equals(codeString)) 308 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.SUPPLYREQUEST); 309 if ("Task".equals(codeString)) 310 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.TASK); 311 if ("VisionPrescription".equals(codeString)) 312 return new Enumeration<ActivityDefinitionKind>(this, ActivityDefinitionKind.VISIONPRESCRIPTION); 313 throw new FHIRException("Unknown ActivityDefinitionKind code '"+codeString+"'"); 314 } 315 public String toCode(ActivityDefinitionKind code) { 316 if (code == ActivityDefinitionKind.APPOINTMENT) 317 return "Appointment"; 318 if (code == ActivityDefinitionKind.APPOINTMENTRESPONSE) 319 return "AppointmentResponse"; 320 if (code == ActivityDefinitionKind.CAREPLAN) 321 return "CarePlan"; 322 if (code == ActivityDefinitionKind.CLAIM) 323 return "Claim"; 324 if (code == ActivityDefinitionKind.COMMUNICATIONREQUEST) 325 return "CommunicationRequest"; 326 if (code == ActivityDefinitionKind.CONTRACT) 327 return "Contract"; 328 if (code == ActivityDefinitionKind.DEVICEREQUEST) 329 return "DeviceRequest"; 330 if (code == ActivityDefinitionKind.ENROLLMENTREQUEST) 331 return "EnrollmentRequest"; 332 if (code == ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION) 333 return "ImmunizationRecommendation"; 334 if (code == ActivityDefinitionKind.MEDICATIONREQUEST) 335 return "MedicationRequest"; 336 if (code == ActivityDefinitionKind.NUTRITIONORDER) 337 return "NutritionOrder"; 338 if (code == ActivityDefinitionKind.SERVICEREQUEST) 339 return "ServiceRequest"; 340 if (code == ActivityDefinitionKind.SUPPLYREQUEST) 341 return "SupplyRequest"; 342 if (code == ActivityDefinitionKind.TASK) 343 return "Task"; 344 if (code == ActivityDefinitionKind.VISIONPRESCRIPTION) 345 return "VisionPrescription"; 346 return "?"; 347 } 348 public String toSystem(ActivityDefinitionKind code) { 349 return code.getSystem(); 350 } 351 } 352 353 public enum RequestIntent { 354 /** 355 * 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. 356 */ 357 PROPOSAL, 358 /** 359 * The request represents an intention to ensure something occurs without providing an authorization for others to act. 360 */ 361 PLAN, 362 /** 363 * The request represents a request/demand and authorization for action. 364 */ 365 ORDER, 366 /** 367 * The request represents an original authorization for action. 368 */ 369 ORIGINALORDER, 370 /** 371 * 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. 372 */ 373 REFLEXORDER, 374 /** 375 * 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. 376 */ 377 FILLERORDER, 378 /** 379 * 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. 380 */ 381 INSTANCEORDER, 382 /** 383 * 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. 384 */ 385 OPTION, 386 /** 387 * added to help the parsers with the generic types 388 */ 389 NULL; 390 public static RequestIntent fromCode(String codeString) throws FHIRException { 391 if (codeString == null || "".equals(codeString)) 392 return null; 393 if ("proposal".equals(codeString)) 394 return PROPOSAL; 395 if ("plan".equals(codeString)) 396 return PLAN; 397 if ("order".equals(codeString)) 398 return ORDER; 399 if ("original-order".equals(codeString)) 400 return ORIGINALORDER; 401 if ("reflex-order".equals(codeString)) 402 return REFLEXORDER; 403 if ("filler-order".equals(codeString)) 404 return FILLERORDER; 405 if ("instance-order".equals(codeString)) 406 return INSTANCEORDER; 407 if ("option".equals(codeString)) 408 return OPTION; 409 if (Configuration.isAcceptInvalidEnums()) 410 return null; 411 else 412 throw new FHIRException("Unknown RequestIntent code '"+codeString+"'"); 413 } 414 public String toCode() { 415 switch (this) { 416 case PROPOSAL: return "proposal"; 417 case PLAN: return "plan"; 418 case ORDER: return "order"; 419 case ORIGINALORDER: return "original-order"; 420 case REFLEXORDER: return "reflex-order"; 421 case FILLERORDER: return "filler-order"; 422 case INSTANCEORDER: return "instance-order"; 423 case OPTION: return "option"; 424 default: return "?"; 425 } 426 } 427 public String getSystem() { 428 switch (this) { 429 case PROPOSAL: return "http://hl7.org/fhir/request-intent"; 430 case PLAN: return "http://hl7.org/fhir/request-intent"; 431 case ORDER: return "http://hl7.org/fhir/request-intent"; 432 case ORIGINALORDER: return "http://hl7.org/fhir/request-intent"; 433 case REFLEXORDER: return "http://hl7.org/fhir/request-intent"; 434 case FILLERORDER: return "http://hl7.org/fhir/request-intent"; 435 case INSTANCEORDER: return "http://hl7.org/fhir/request-intent"; 436 case OPTION: return "http://hl7.org/fhir/request-intent"; 437 default: return "?"; 438 } 439 } 440 public String getDefinition() { 441 switch (this) { 442 case PROPOSAL: 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."; 443 case PLAN: return "The request represents an intention to ensure something occurs without providing an authorization for others to act."; 444 case ORDER: return "The request represents a request/demand and authorization for action."; 445 case ORIGINALORDER: return "The request represents an original authorization for action."; 446 case REFLEXORDER: 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."; 447 case FILLERORDER: 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."; 448 case INSTANCEORDER: 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."; 449 case OPTION: 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."; 450 default: return "?"; 451 } 452 } 453 public String getDisplay() { 454 switch (this) { 455 case PROPOSAL: return "Proposal"; 456 case PLAN: return "Plan"; 457 case ORDER: return "Order"; 458 case ORIGINALORDER: return "Original Order"; 459 case REFLEXORDER: return "Reflex Order"; 460 case FILLERORDER: return "Filler Order"; 461 case INSTANCEORDER: return "Instance Order"; 462 case OPTION: return "Option"; 463 default: return "?"; 464 } 465 } 466 } 467 468 public static class RequestIntentEnumFactory implements EnumFactory<RequestIntent> { 469 public RequestIntent fromCode(String codeString) throws IllegalArgumentException { 470 if (codeString == null || "".equals(codeString)) 471 if (codeString == null || "".equals(codeString)) 472 return null; 473 if ("proposal".equals(codeString)) 474 return RequestIntent.PROPOSAL; 475 if ("plan".equals(codeString)) 476 return RequestIntent.PLAN; 477 if ("order".equals(codeString)) 478 return RequestIntent.ORDER; 479 if ("original-order".equals(codeString)) 480 return RequestIntent.ORIGINALORDER; 481 if ("reflex-order".equals(codeString)) 482 return RequestIntent.REFLEXORDER; 483 if ("filler-order".equals(codeString)) 484 return RequestIntent.FILLERORDER; 485 if ("instance-order".equals(codeString)) 486 return RequestIntent.INSTANCEORDER; 487 if ("option".equals(codeString)) 488 return RequestIntent.OPTION; 489 throw new IllegalArgumentException("Unknown RequestIntent code '"+codeString+"'"); 490 } 491 public Enumeration<RequestIntent> fromType(Base code) throws FHIRException { 492 if (code == null) 493 return null; 494 if (code.isEmpty()) 495 return new Enumeration<RequestIntent>(this); 496 String codeString = ((PrimitiveType) code).asStringValue(); 497 if (codeString == null || "".equals(codeString)) 498 return null; 499 if ("proposal".equals(codeString)) 500 return new Enumeration<RequestIntent>(this, RequestIntent.PROPOSAL); 501 if ("plan".equals(codeString)) 502 return new Enumeration<RequestIntent>(this, RequestIntent.PLAN); 503 if ("order".equals(codeString)) 504 return new Enumeration<RequestIntent>(this, RequestIntent.ORDER); 505 if ("original-order".equals(codeString)) 506 return new Enumeration<RequestIntent>(this, RequestIntent.ORIGINALORDER); 507 if ("reflex-order".equals(codeString)) 508 return new Enumeration<RequestIntent>(this, RequestIntent.REFLEXORDER); 509 if ("filler-order".equals(codeString)) 510 return new Enumeration<RequestIntent>(this, RequestIntent.FILLERORDER); 511 if ("instance-order".equals(codeString)) 512 return new Enumeration<RequestIntent>(this, RequestIntent.INSTANCEORDER); 513 if ("option".equals(codeString)) 514 return new Enumeration<RequestIntent>(this, RequestIntent.OPTION); 515 throw new FHIRException("Unknown RequestIntent code '"+codeString+"'"); 516 } 517 public String toCode(RequestIntent code) { 518 if (code == RequestIntent.PROPOSAL) 519 return "proposal"; 520 if (code == RequestIntent.PLAN) 521 return "plan"; 522 if (code == RequestIntent.ORDER) 523 return "order"; 524 if (code == RequestIntent.ORIGINALORDER) 525 return "original-order"; 526 if (code == RequestIntent.REFLEXORDER) 527 return "reflex-order"; 528 if (code == RequestIntent.FILLERORDER) 529 return "filler-order"; 530 if (code == RequestIntent.INSTANCEORDER) 531 return "instance-order"; 532 if (code == RequestIntent.OPTION) 533 return "option"; 534 return "?"; 535 } 536 public String toSystem(RequestIntent code) { 537 return code.getSystem(); 538 } 539 } 540 541 public enum RequestPriority { 542 /** 543 * The request has normal priority. 544 */ 545 ROUTINE, 546 /** 547 * The request should be actioned promptly - higher priority than routine. 548 */ 549 URGENT, 550 /** 551 * The request should be actioned as soon as possible - higher priority than urgent. 552 */ 553 ASAP, 554 /** 555 * The request should be actioned immediately - highest possible priority. E.g. an emergency. 556 */ 557 STAT, 558 /** 559 * added to help the parsers with the generic types 560 */ 561 NULL; 562 public static RequestPriority fromCode(String codeString) throws FHIRException { 563 if (codeString == null || "".equals(codeString)) 564 return null; 565 if ("routine".equals(codeString)) 566 return ROUTINE; 567 if ("urgent".equals(codeString)) 568 return URGENT; 569 if ("asap".equals(codeString)) 570 return ASAP; 571 if ("stat".equals(codeString)) 572 return STAT; 573 if (Configuration.isAcceptInvalidEnums()) 574 return null; 575 else 576 throw new FHIRException("Unknown RequestPriority code '"+codeString+"'"); 577 } 578 public String toCode() { 579 switch (this) { 580 case ROUTINE: return "routine"; 581 case URGENT: return "urgent"; 582 case ASAP: return "asap"; 583 case STAT: return "stat"; 584 default: return "?"; 585 } 586 } 587 public String getSystem() { 588 switch (this) { 589 case ROUTINE: return "http://hl7.org/fhir/request-priority"; 590 case URGENT: return "http://hl7.org/fhir/request-priority"; 591 case ASAP: return "http://hl7.org/fhir/request-priority"; 592 case STAT: return "http://hl7.org/fhir/request-priority"; 593 default: return "?"; 594 } 595 } 596 public String getDefinition() { 597 switch (this) { 598 case ROUTINE: return "The request has normal priority."; 599 case URGENT: return "The request should be actioned promptly - higher priority than routine."; 600 case ASAP: return "The request should be actioned as soon as possible - higher priority than urgent."; 601 case STAT: return "The request should be actioned immediately - highest possible priority. E.g. an emergency."; 602 default: return "?"; 603 } 604 } 605 public String getDisplay() { 606 switch (this) { 607 case ROUTINE: return "Routine"; 608 case URGENT: return "Urgent"; 609 case ASAP: return "ASAP"; 610 case STAT: return "STAT"; 611 default: return "?"; 612 } 613 } 614 } 615 616 public static class RequestPriorityEnumFactory implements EnumFactory<RequestPriority> { 617 public RequestPriority fromCode(String codeString) throws IllegalArgumentException { 618 if (codeString == null || "".equals(codeString)) 619 if (codeString == null || "".equals(codeString)) 620 return null; 621 if ("routine".equals(codeString)) 622 return RequestPriority.ROUTINE; 623 if ("urgent".equals(codeString)) 624 return RequestPriority.URGENT; 625 if ("asap".equals(codeString)) 626 return RequestPriority.ASAP; 627 if ("stat".equals(codeString)) 628 return RequestPriority.STAT; 629 throw new IllegalArgumentException("Unknown RequestPriority code '"+codeString+"'"); 630 } 631 public Enumeration<RequestPriority> fromType(Base code) throws FHIRException { 632 if (code == null) 633 return null; 634 if (code.isEmpty()) 635 return new Enumeration<RequestPriority>(this); 636 String codeString = ((PrimitiveType) code).asStringValue(); 637 if (codeString == null || "".equals(codeString)) 638 return null; 639 if ("routine".equals(codeString)) 640 return new Enumeration<RequestPriority>(this, RequestPriority.ROUTINE); 641 if ("urgent".equals(codeString)) 642 return new Enumeration<RequestPriority>(this, RequestPriority.URGENT); 643 if ("asap".equals(codeString)) 644 return new Enumeration<RequestPriority>(this, RequestPriority.ASAP); 645 if ("stat".equals(codeString)) 646 return new Enumeration<RequestPriority>(this, RequestPriority.STAT); 647 throw new FHIRException("Unknown RequestPriority code '"+codeString+"'"); 648 } 649 public String toCode(RequestPriority code) { 650 if (code == RequestPriority.ROUTINE) 651 return "routine"; 652 if (code == RequestPriority.URGENT) 653 return "urgent"; 654 if (code == RequestPriority.ASAP) 655 return "asap"; 656 if (code == RequestPriority.STAT) 657 return "stat"; 658 return "?"; 659 } 660 public String toSystem(RequestPriority code) { 661 return code.getSystem(); 662 } 663 } 664 665 public enum ActivityParticipantType { 666 /** 667 * The participant is the patient under evaluation. 668 */ 669 PATIENT, 670 /** 671 * The participant is a practitioner involved in the patient's care. 672 */ 673 PRACTITIONER, 674 /** 675 * The participant is a person related to the patient. 676 */ 677 RELATEDPERSON, 678 /** 679 * The participant is a system or device used in the care of the patient. 680 */ 681 DEVICE, 682 /** 683 * added to help the parsers with the generic types 684 */ 685 NULL; 686 public static ActivityParticipantType fromCode(String codeString) throws FHIRException { 687 if (codeString == null || "".equals(codeString)) 688 return null; 689 if ("patient".equals(codeString)) 690 return PATIENT; 691 if ("practitioner".equals(codeString)) 692 return PRACTITIONER; 693 if ("related-person".equals(codeString)) 694 return RELATEDPERSON; 695 if ("device".equals(codeString)) 696 return DEVICE; 697 if (Configuration.isAcceptInvalidEnums()) 698 return null; 699 else 700 throw new FHIRException("Unknown ActivityParticipantType code '"+codeString+"'"); 701 } 702 public String toCode() { 703 switch (this) { 704 case PATIENT: return "patient"; 705 case PRACTITIONER: return "practitioner"; 706 case RELATEDPERSON: return "related-person"; 707 case DEVICE: return "device"; 708 default: return "?"; 709 } 710 } 711 public String getSystem() { 712 switch (this) { 713 case PATIENT: return "http://hl7.org/fhir/action-participant-type"; 714 case PRACTITIONER: return "http://hl7.org/fhir/action-participant-type"; 715 case RELATEDPERSON: return "http://hl7.org/fhir/action-participant-type"; 716 case DEVICE: return "http://hl7.org/fhir/action-participant-type"; 717 default: return "?"; 718 } 719 } 720 public String getDefinition() { 721 switch (this) { 722 case PATIENT: return "The participant is the patient under evaluation."; 723 case PRACTITIONER: return "The participant is a practitioner involved in the patient's care."; 724 case RELATEDPERSON: return "The participant is a person related to the patient."; 725 case DEVICE: return "The participant is a system or device used in the care of the patient."; 726 default: return "?"; 727 } 728 } 729 public String getDisplay() { 730 switch (this) { 731 case PATIENT: return "Patient"; 732 case PRACTITIONER: return "Practitioner"; 733 case RELATEDPERSON: return "Related Person"; 734 case DEVICE: return "Device"; 735 default: return "?"; 736 } 737 } 738 } 739 740 public static class ActivityParticipantTypeEnumFactory implements EnumFactory<ActivityParticipantType> { 741 public ActivityParticipantType fromCode(String codeString) throws IllegalArgumentException { 742 if (codeString == null || "".equals(codeString)) 743 if (codeString == null || "".equals(codeString)) 744 return null; 745 if ("patient".equals(codeString)) 746 return ActivityParticipantType.PATIENT; 747 if ("practitioner".equals(codeString)) 748 return ActivityParticipantType.PRACTITIONER; 749 if ("related-person".equals(codeString)) 750 return ActivityParticipantType.RELATEDPERSON; 751 if ("device".equals(codeString)) 752 return ActivityParticipantType.DEVICE; 753 throw new IllegalArgumentException("Unknown ActivityParticipantType code '"+codeString+"'"); 754 } 755 public Enumeration<ActivityParticipantType> fromType(Base code) throws FHIRException { 756 if (code == null) 757 return null; 758 if (code.isEmpty()) 759 return new Enumeration<ActivityParticipantType>(this); 760 String codeString = ((PrimitiveType) code).asStringValue(); 761 if (codeString == null || "".equals(codeString)) 762 return null; 763 if ("patient".equals(codeString)) 764 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.PATIENT); 765 if ("practitioner".equals(codeString)) 766 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.PRACTITIONER); 767 if ("related-person".equals(codeString)) 768 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.RELATEDPERSON); 769 if ("device".equals(codeString)) 770 return new Enumeration<ActivityParticipantType>(this, ActivityParticipantType.DEVICE); 771 throw new FHIRException("Unknown ActivityParticipantType code '"+codeString+"'"); 772 } 773 public String toCode(ActivityParticipantType code) { 774 if (code == ActivityParticipantType.PATIENT) 775 return "patient"; 776 if (code == ActivityParticipantType.PRACTITIONER) 777 return "practitioner"; 778 if (code == ActivityParticipantType.RELATEDPERSON) 779 return "related-person"; 780 if (code == ActivityParticipantType.DEVICE) 781 return "device"; 782 return "?"; 783 } 784 public String toSystem(ActivityParticipantType code) { 785 return code.getSystem(); 786 } 787 } 788 789 @Block() 790 public static class ActivityDefinitionParticipantComponent extends BackboneElement implements IBaseBackboneElement { 791 /** 792 * The type of participant in the action. 793 */ 794 @Child(name = "type", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=false) 795 @Description(shortDefinition="patient | practitioner | related-person | device", formalDefinition="The type of participant in the action." ) 796 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/action-participant-type") 797 protected Enumeration<ActivityParticipantType> type; 798 799 /** 800 * The role the participant should play in performing the described action. 801 */ 802 @Child(name = "role", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=false) 803 @Description(shortDefinition="E.g. Nurse, Surgeon, Parent, etc.", formalDefinition="The role the participant should play in performing the described action." ) 804 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/action-participant-role") 805 protected CodeableConcept role; 806 807 private static final long serialVersionUID = -1450932564L; 808 809 /** 810 * Constructor 811 */ 812 public ActivityDefinitionParticipantComponent() { 813 super(); 814 } 815 816 /** 817 * Constructor 818 */ 819 public ActivityDefinitionParticipantComponent(Enumeration<ActivityParticipantType> type) { 820 super(); 821 this.type = type; 822 } 823 824 /** 825 * @return {@link #type} (The type of participant in the action.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 826 */ 827 public Enumeration<ActivityParticipantType> getTypeElement() { 828 if (this.type == null) 829 if (Configuration.errorOnAutoCreate()) 830 throw new Error("Attempt to auto-create ActivityDefinitionParticipantComponent.type"); 831 else if (Configuration.doAutoCreate()) 832 this.type = new Enumeration<ActivityParticipantType>(new ActivityParticipantTypeEnumFactory()); // bb 833 return this.type; 834 } 835 836 public boolean hasTypeElement() { 837 return this.type != null && !this.type.isEmpty(); 838 } 839 840 public boolean hasType() { 841 return this.type != null && !this.type.isEmpty(); 842 } 843 844 /** 845 * @param value {@link #type} (The type of participant in the action.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 846 */ 847 public ActivityDefinitionParticipantComponent setTypeElement(Enumeration<ActivityParticipantType> value) { 848 this.type = value; 849 return this; 850 } 851 852 /** 853 * @return The type of participant in the action. 854 */ 855 public ActivityParticipantType getType() { 856 return this.type == null ? null : this.type.getValue(); 857 } 858 859 /** 860 * @param value The type of participant in the action. 861 */ 862 public ActivityDefinitionParticipantComponent setType(ActivityParticipantType value) { 863 if (this.type == null) 864 this.type = new Enumeration<ActivityParticipantType>(new ActivityParticipantTypeEnumFactory()); 865 this.type.setValue(value); 866 return this; 867 } 868 869 /** 870 * @return {@link #role} (The role the participant should play in performing the described action.) 871 */ 872 public CodeableConcept getRole() { 873 if (this.role == null) 874 if (Configuration.errorOnAutoCreate()) 875 throw new Error("Attempt to auto-create ActivityDefinitionParticipantComponent.role"); 876 else if (Configuration.doAutoCreate()) 877 this.role = new CodeableConcept(); // cc 878 return this.role; 879 } 880 881 public boolean hasRole() { 882 return this.role != null && !this.role.isEmpty(); 883 } 884 885 /** 886 * @param value {@link #role} (The role the participant should play in performing the described action.) 887 */ 888 public ActivityDefinitionParticipantComponent setRole(CodeableConcept value) { 889 this.role = value; 890 return this; 891 } 892 893 protected void listChildren(List<Property> children) { 894 super.listChildren(children); 895 children.add(new Property("type", "code", "The type of participant in the action.", 0, 1, type)); 896 children.add(new Property("role", "CodeableConcept", "The role the participant should play in performing the described action.", 0, 1, role)); 897 } 898 899 @Override 900 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 901 switch (_hash) { 902 case 3575610: /*type*/ return new Property("type", "code", "The type of participant in the action.", 0, 1, type); 903 case 3506294: /*role*/ return new Property("role", "CodeableConcept", "The role the participant should play in performing the described action.", 0, 1, role); 904 default: return super.getNamedProperty(_hash, _name, _checkValid); 905 } 906 907 } 908 909 @Override 910 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 911 switch (hash) { 912 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // Enumeration<ActivityParticipantType> 913 case 3506294: /*role*/ return this.role == null ? new Base[0] : new Base[] {this.role}; // CodeableConcept 914 default: return super.getProperty(hash, name, checkValid); 915 } 916 917 } 918 919 @Override 920 public Base setProperty(int hash, String name, Base value) throws FHIRException { 921 switch (hash) { 922 case 3575610: // type 923 value = new ActivityParticipantTypeEnumFactory().fromType(castToCode(value)); 924 this.type = (Enumeration) value; // Enumeration<ActivityParticipantType> 925 return value; 926 case 3506294: // role 927 this.role = castToCodeableConcept(value); // CodeableConcept 928 return value; 929 default: return super.setProperty(hash, name, value); 930 } 931 932 } 933 934 @Override 935 public Base setProperty(String name, Base value) throws FHIRException { 936 if (name.equals("type")) { 937 value = new ActivityParticipantTypeEnumFactory().fromType(castToCode(value)); 938 this.type = (Enumeration) value; // Enumeration<ActivityParticipantType> 939 } else if (name.equals("role")) { 940 this.role = castToCodeableConcept(value); // CodeableConcept 941 } else 942 return super.setProperty(name, value); 943 return value; 944 } 945 946 @Override 947 public Base makeProperty(int hash, String name) throws FHIRException { 948 switch (hash) { 949 case 3575610: return getTypeElement(); 950 case 3506294: return getRole(); 951 default: return super.makeProperty(hash, name); 952 } 953 954 } 955 956 @Override 957 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 958 switch (hash) { 959 case 3575610: /*type*/ return new String[] {"code"}; 960 case 3506294: /*role*/ return new String[] {"CodeableConcept"}; 961 default: return super.getTypesForProperty(hash, name); 962 } 963 964 } 965 966 @Override 967 public Base addChild(String name) throws FHIRException { 968 if (name.equals("type")) { 969 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.type"); 970 } 971 else if (name.equals("role")) { 972 this.role = new CodeableConcept(); 973 return this.role; 974 } 975 else 976 return super.addChild(name); 977 } 978 979 public ActivityDefinitionParticipantComponent copy() { 980 ActivityDefinitionParticipantComponent dst = new ActivityDefinitionParticipantComponent(); 981 copyValues(dst); 982 dst.type = type == null ? null : type.copy(); 983 dst.role = role == null ? null : role.copy(); 984 return dst; 985 } 986 987 @Override 988 public boolean equalsDeep(Base other_) { 989 if (!super.equalsDeep(other_)) 990 return false; 991 if (!(other_ instanceof ActivityDefinitionParticipantComponent)) 992 return false; 993 ActivityDefinitionParticipantComponent o = (ActivityDefinitionParticipantComponent) other_; 994 return compareDeep(type, o.type, true) && compareDeep(role, o.role, true); 995 } 996 997 @Override 998 public boolean equalsShallow(Base other_) { 999 if (!super.equalsShallow(other_)) 1000 return false; 1001 if (!(other_ instanceof ActivityDefinitionParticipantComponent)) 1002 return false; 1003 ActivityDefinitionParticipantComponent o = (ActivityDefinitionParticipantComponent) other_; 1004 return compareValues(type, o.type, true); 1005 } 1006 1007 public boolean isEmpty() { 1008 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, role); 1009 } 1010 1011 public String fhirType() { 1012 return "ActivityDefinition.participant"; 1013 1014 } 1015 1016 } 1017 1018 @Block() 1019 public static class ActivityDefinitionDynamicValueComponent extends BackboneElement implements IBaseBackboneElement { 1020 /** 1021 * 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. 1022 */ 1023 @Child(name = "path", type = {StringType.class}, order=1, min=1, max=1, modifier=false, summary=false) 1024 @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." ) 1025 protected StringType path; 1026 1027 /** 1028 * An expression specifying the value of the customized element. 1029 */ 1030 @Child(name = "expression", type = {Expression.class}, order=2, min=1, max=1, modifier=false, summary=false) 1031 @Description(shortDefinition="An expression that provides the dynamic value for the customization", formalDefinition="An expression specifying the value of the customized element." ) 1032 protected Expression expression; 1033 1034 private static final long serialVersionUID = 1064529082L; 1035 1036 /** 1037 * Constructor 1038 */ 1039 public ActivityDefinitionDynamicValueComponent() { 1040 super(); 1041 } 1042 1043 /** 1044 * Constructor 1045 */ 1046 public ActivityDefinitionDynamicValueComponent(StringType path, Expression expression) { 1047 super(); 1048 this.path = path; 1049 this.expression = expression; 1050 } 1051 1052 /** 1053 * @return {@link #path} (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.). This is the underlying object with id, value and extensions. The accessor "getPath" gives direct access to the value 1054 */ 1055 public StringType getPathElement() { 1056 if (this.path == null) 1057 if (Configuration.errorOnAutoCreate()) 1058 throw new Error("Attempt to auto-create ActivityDefinitionDynamicValueComponent.path"); 1059 else if (Configuration.doAutoCreate()) 1060 this.path = new StringType(); // bb 1061 return this.path; 1062 } 1063 1064 public boolean hasPathElement() { 1065 return this.path != null && !this.path.isEmpty(); 1066 } 1067 1068 public boolean hasPath() { 1069 return this.path != null && !this.path.isEmpty(); 1070 } 1071 1072 /** 1073 * @param value {@link #path} (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.). This is the underlying object with id, value and extensions. The accessor "getPath" gives direct access to the value 1074 */ 1075 public ActivityDefinitionDynamicValueComponent setPathElement(StringType value) { 1076 this.path = value; 1077 return this; 1078 } 1079 1080 /** 1081 * @return 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. 1082 */ 1083 public String getPath() { 1084 return this.path == null ? null : this.path.getValue(); 1085 } 1086 1087 /** 1088 * @param value 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. 1089 */ 1090 public ActivityDefinitionDynamicValueComponent setPath(String value) { 1091 if (this.path == null) 1092 this.path = new StringType(); 1093 this.path.setValue(value); 1094 return this; 1095 } 1096 1097 /** 1098 * @return {@link #expression} (An expression specifying the value of the customized element.) 1099 */ 1100 public Expression getExpression() { 1101 if (this.expression == null) 1102 if (Configuration.errorOnAutoCreate()) 1103 throw new Error("Attempt to auto-create ActivityDefinitionDynamicValueComponent.expression"); 1104 else if (Configuration.doAutoCreate()) 1105 this.expression = new Expression(); // cc 1106 return this.expression; 1107 } 1108 1109 public boolean hasExpression() { 1110 return this.expression != null && !this.expression.isEmpty(); 1111 } 1112 1113 /** 1114 * @param value {@link #expression} (An expression specifying the value of the customized element.) 1115 */ 1116 public ActivityDefinitionDynamicValueComponent setExpression(Expression value) { 1117 this.expression = value; 1118 return this; 1119 } 1120 1121 protected void listChildren(List<Property> children) { 1122 super.listChildren(children); 1123 children.add(new Property("path", "string", "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.", 0, 1, path)); 1124 children.add(new Property("expression", "Expression", "An expression specifying the value of the customized element.", 0, 1, expression)); 1125 } 1126 1127 @Override 1128 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1129 switch (_hash) { 1130 case 3433509: /*path*/ return new Property("path", "string", "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.", 0, 1, path); 1131 case -1795452264: /*expression*/ return new Property("expression", "Expression", "An expression specifying the value of the customized element.", 0, 1, expression); 1132 default: return super.getNamedProperty(_hash, _name, _checkValid); 1133 } 1134 1135 } 1136 1137 @Override 1138 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1139 switch (hash) { 1140 case 3433509: /*path*/ return this.path == null ? new Base[0] : new Base[] {this.path}; // StringType 1141 case -1795452264: /*expression*/ return this.expression == null ? new Base[0] : new Base[] {this.expression}; // Expression 1142 default: return super.getProperty(hash, name, checkValid); 1143 } 1144 1145 } 1146 1147 @Override 1148 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1149 switch (hash) { 1150 case 3433509: // path 1151 this.path = castToString(value); // StringType 1152 return value; 1153 case -1795452264: // expression 1154 this.expression = castToExpression(value); // Expression 1155 return value; 1156 default: return super.setProperty(hash, name, value); 1157 } 1158 1159 } 1160 1161 @Override 1162 public Base setProperty(String name, Base value) throws FHIRException { 1163 if (name.equals("path")) { 1164 this.path = castToString(value); // StringType 1165 } else if (name.equals("expression")) { 1166 this.expression = castToExpression(value); // Expression 1167 } else 1168 return super.setProperty(name, value); 1169 return value; 1170 } 1171 1172 @Override 1173 public Base makeProperty(int hash, String name) throws FHIRException { 1174 switch (hash) { 1175 case 3433509: return getPathElement(); 1176 case -1795452264: return getExpression(); 1177 default: return super.makeProperty(hash, name); 1178 } 1179 1180 } 1181 1182 @Override 1183 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1184 switch (hash) { 1185 case 3433509: /*path*/ return new String[] {"string"}; 1186 case -1795452264: /*expression*/ return new String[] {"Expression"}; 1187 default: return super.getTypesForProperty(hash, name); 1188 } 1189 1190 } 1191 1192 @Override 1193 public Base addChild(String name) throws FHIRException { 1194 if (name.equals("path")) { 1195 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.path"); 1196 } 1197 else if (name.equals("expression")) { 1198 this.expression = new Expression(); 1199 return this.expression; 1200 } 1201 else 1202 return super.addChild(name); 1203 } 1204 1205 public ActivityDefinitionDynamicValueComponent copy() { 1206 ActivityDefinitionDynamicValueComponent dst = new ActivityDefinitionDynamicValueComponent(); 1207 copyValues(dst); 1208 dst.path = path == null ? null : path.copy(); 1209 dst.expression = expression == null ? null : expression.copy(); 1210 return dst; 1211 } 1212 1213 @Override 1214 public boolean equalsDeep(Base other_) { 1215 if (!super.equalsDeep(other_)) 1216 return false; 1217 if (!(other_ instanceof ActivityDefinitionDynamicValueComponent)) 1218 return false; 1219 ActivityDefinitionDynamicValueComponent o = (ActivityDefinitionDynamicValueComponent) other_; 1220 return compareDeep(path, o.path, true) && compareDeep(expression, o.expression, true); 1221 } 1222 1223 @Override 1224 public boolean equalsShallow(Base other_) { 1225 if (!super.equalsShallow(other_)) 1226 return false; 1227 if (!(other_ instanceof ActivityDefinitionDynamicValueComponent)) 1228 return false; 1229 ActivityDefinitionDynamicValueComponent o = (ActivityDefinitionDynamicValueComponent) other_; 1230 return compareValues(path, o.path, true); 1231 } 1232 1233 public boolean isEmpty() { 1234 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(path, expression); 1235 } 1236 1237 public String fhirType() { 1238 return "ActivityDefinition.dynamicValue"; 1239 1240 } 1241 1242 } 1243 1244 /** 1245 * 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. 1246 */ 1247 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1248 @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." ) 1249 protected List<Identifier> identifier; 1250 1251 /** 1252 * An explanatory or alternate title for the activity definition giving additional information about its content. 1253 */ 1254 @Child(name = "subtitle", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) 1255 @Description(shortDefinition="Subordinate title of the activity definition", formalDefinition="An explanatory or alternate title for the activity definition giving additional information about its content." ) 1256 protected StringType subtitle; 1257 1258 /** 1259 * A code or group definition that describes the intended subject of the activity being defined. 1260 */ 1261 @Child(name = "subject", type = {CodeableConcept.class, Group.class}, order=2, min=0, max=1, modifier=false, summary=false) 1262 @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." ) 1263 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subject-type") 1264 protected Type subject; 1265 1266 /** 1267 * Explanation of why this activity definition is needed and why it has been designed as it has. 1268 */ 1269 @Child(name = "purpose", type = {MarkdownType.class}, order=3, min=0, max=1, modifier=false, summary=false) 1270 @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." ) 1271 protected MarkdownType purpose; 1272 1273 /** 1274 * A detailed description of how the activity definition is used from a clinical perspective. 1275 */ 1276 @Child(name = "usage", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) 1277 @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." ) 1278 protected StringType usage; 1279 1280 /** 1281 * 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. 1282 */ 1283 @Child(name = "copyright", type = {MarkdownType.class}, order=5, min=0, max=1, modifier=false, summary=false) 1284 @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." ) 1285 protected MarkdownType copyright; 1286 1287 /** 1288 * The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage. 1289 */ 1290 @Child(name = "approvalDate", type = {DateType.class}, order=6, min=0, max=1, modifier=false, summary=false) 1291 @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." ) 1292 protected DateType approvalDate; 1293 1294 /** 1295 * The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date. 1296 */ 1297 @Child(name = "lastReviewDate", type = {DateType.class}, order=7, min=0, max=1, modifier=false, summary=false) 1298 @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." ) 1299 protected DateType lastReviewDate; 1300 1301 /** 1302 * The period during which the activity definition content was or is planned to be in active use. 1303 */ 1304 @Child(name = "effectivePeriod", type = {Period.class}, order=8, min=0, max=1, modifier=false, summary=true) 1305 @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." ) 1306 protected Period effectivePeriod; 1307 1308 /** 1309 * 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. 1310 */ 1311 @Child(name = "topic", type = {CodeableConcept.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1312 @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." ) 1313 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/definition-topic") 1314 protected List<CodeableConcept> topic; 1315 1316 /** 1317 * An individiual or organization primarily involved in the creation and maintenance of the content. 1318 */ 1319 @Child(name = "author", type = {ContactDetail.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1320 @Description(shortDefinition="Who authored the content", formalDefinition="An individiual or organization primarily involved in the creation and maintenance of the content." ) 1321 protected List<ContactDetail> author; 1322 1323 /** 1324 * An individual or organization primarily responsible for internal coherence of the content. 1325 */ 1326 @Child(name = "editor", type = {ContactDetail.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1327 @Description(shortDefinition="Who edited the content", formalDefinition="An individual or organization primarily responsible for internal coherence of the content." ) 1328 protected List<ContactDetail> editor; 1329 1330 /** 1331 * An individual or organization primarily responsible for review of some aspect of the content. 1332 */ 1333 @Child(name = "reviewer", type = {ContactDetail.class}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1334 @Description(shortDefinition="Who reviewed the content", formalDefinition="An individual or organization primarily responsible for review of some aspect of the content." ) 1335 protected List<ContactDetail> reviewer; 1336 1337 /** 1338 * An individual or organization responsible for officially endorsing the content for use in some setting. 1339 */ 1340 @Child(name = "endorser", type = {ContactDetail.class}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1341 @Description(shortDefinition="Who endorsed the content", formalDefinition="An individual or organization responsible for officially endorsing the content for use in some setting." ) 1342 protected List<ContactDetail> endorser; 1343 1344 /** 1345 * Related artifacts such as additional documentation, justification, or bibliographic references. 1346 */ 1347 @Child(name = "relatedArtifact", type = {RelatedArtifact.class}, order=14, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1348 @Description(shortDefinition="Additional documentation, citations, etc.", formalDefinition="Related artifacts such as additional documentation, justification, or bibliographic references." ) 1349 protected List<RelatedArtifact> relatedArtifact; 1350 1351 /** 1352 * A reference to a Library resource containing any formal logic used by the activity definition. 1353 */ 1354 @Child(name = "library", type = {CanonicalType.class}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1355 @Description(shortDefinition="Logic used by the activity definition", formalDefinition="A reference to a Library resource containing any formal logic used by the activity definition." ) 1356 protected List<CanonicalType> library; 1357 1358 /** 1359 * 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. 1360 */ 1361 @Child(name = "kind", type = {CodeType.class}, order=16, min=0, max=1, modifier=false, summary=true) 1362 @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." ) 1363 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/request-resource-types") 1364 protected Enumeration<ActivityDefinitionKind> kind; 1365 1366 /** 1367 * A profile to which the target of the activity definition is expected to conform. 1368 */ 1369 @Child(name = "profile", type = {CanonicalType.class}, order=17, min=0, max=1, modifier=false, summary=false) 1370 @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." ) 1371 protected CanonicalType profile; 1372 1373 /** 1374 * Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter. 1375 */ 1376 @Child(name = "code", type = {CodeableConcept.class}, order=18, min=0, max=1, modifier=false, summary=true) 1377 @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." ) 1378 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/procedure-code") 1379 protected CodeableConcept code; 1380 1381 /** 1382 * Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain. 1383 */ 1384 @Child(name = "intent", type = {CodeType.class}, order=19, min=0, max=1, modifier=false, summary=false) 1385 @Description(shortDefinition="proposal | plan | order", formalDefinition="Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain." ) 1386 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/request-intent") 1387 protected Enumeration<RequestIntent> intent; 1388 1389 /** 1390 * Indicates how quickly the activity should be addressed with respect to other requests. 1391 */ 1392 @Child(name = "priority", type = {CodeType.class}, order=20, min=0, max=1, modifier=false, summary=false) 1393 @Description(shortDefinition="routine | urgent | asap | stat", formalDefinition="Indicates how quickly the activity should be addressed with respect to other requests." ) 1394 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/request-priority") 1395 protected Enumeration<RequestPriority> priority; 1396 1397 /** 1398 * 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. 1399 */ 1400 @Child(name = "doNotPerform", type = {BooleanType.class}, order=21, min=0, max=1, modifier=true, summary=true) 1401 @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." ) 1402 protected BooleanType doNotPerform; 1403 1404 /** 1405 * The period, timing or frequency upon which the described activity is to occur. 1406 */ 1407 @Child(name = "timing", type = {Timing.class, DateTimeType.class, Age.class, Period.class, Range.class, Duration.class}, order=22, min=0, max=1, modifier=false, summary=false) 1408 @Description(shortDefinition="When activity is to occur", formalDefinition="The period, timing or frequency upon which the described activity is to occur." ) 1409 protected Type timing; 1410 1411 /** 1412 * Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc. 1413 */ 1414 @Child(name = "location", type = {Location.class}, order=23, min=0, max=1, modifier=false, summary=false) 1415 @Description(shortDefinition="Where it should happen", formalDefinition="Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc." ) 1416 protected Reference location; 1417 1418 /** 1419 * The actual object that is the target of the reference (Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.) 1420 */ 1421 protected Location locationTarget; 1422 1423 /** 1424 * Indicates who should participate in performing the action described. 1425 */ 1426 @Child(name = "participant", type = {}, order=24, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1427 @Description(shortDefinition="Who should participate in the action", formalDefinition="Indicates who should participate in performing the action described." ) 1428 protected List<ActivityDefinitionParticipantComponent> participant; 1429 1430 /** 1431 * Identifies the food, drug or other product being consumed or supplied in the activity. 1432 */ 1433 @Child(name = "product", type = {Medication.class, Substance.class, CodeableConcept.class}, order=25, min=0, max=1, modifier=false, summary=false) 1434 @Description(shortDefinition="What's administered/supplied", formalDefinition="Identifies the food, drug or other product being consumed or supplied in the activity." ) 1435 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-codes") 1436 protected Type product; 1437 1438 /** 1439 * Identifies the quantity expected to be consumed at once (per dose, per meal, etc.). 1440 */ 1441 @Child(name = "quantity", type = {Quantity.class}, order=26, min=0, max=1, modifier=false, summary=false) 1442 @Description(shortDefinition="How much is administered/consumed/supplied", formalDefinition="Identifies the quantity expected to be consumed at once (per dose, per meal, etc.)." ) 1443 protected Quantity quantity; 1444 1445 /** 1446 * Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources. 1447 */ 1448 @Child(name = "dosage", type = {Dosage.class}, order=27, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1449 @Description(shortDefinition="Detailed dosage instructions", formalDefinition="Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources." ) 1450 protected List<Dosage> dosage; 1451 1452 /** 1453 * Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites). 1454 */ 1455 @Child(name = "bodySite", type = {CodeableConcept.class}, order=28, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1456 @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)." ) 1457 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/body-site") 1458 protected List<CodeableConcept> bodySite; 1459 1460 /** 1461 * Defines specimen requirements for the action to be performed, such as required specimens for a lab test. 1462 */ 1463 @Child(name = "specimenRequirement", type = {SpecimenDefinition.class}, order=29, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1464 @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." ) 1465 protected List<Reference> specimenRequirement; 1466 /** 1467 * The actual objects that are the target of the reference (Defines specimen requirements for the action to be performed, such as required specimens for a lab test.) 1468 */ 1469 protected List<SpecimenDefinition> specimenRequirementTarget; 1470 1471 1472 /** 1473 * Defines observation requirements for the action to be performed, such as body weight or surface area. 1474 */ 1475 @Child(name = "observationRequirement", type = {ObservationDefinition.class}, order=30, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1476 @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." ) 1477 protected List<Reference> observationRequirement; 1478 /** 1479 * The actual objects that are the target of the reference (Defines observation requirements for the action to be performed, such as body weight or surface area.) 1480 */ 1481 protected List<ObservationDefinition> observationRequirementTarget; 1482 1483 1484 /** 1485 * Defines the observations that are expected to be produced by the action. 1486 */ 1487 @Child(name = "observationResultRequirement", type = {ObservationDefinition.class}, order=31, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1488 @Description(shortDefinition="What observations must be produced by this action", formalDefinition="Defines the observations that are expected to be produced by the action." ) 1489 protected List<Reference> observationResultRequirement; 1490 /** 1491 * The actual objects that are the target of the reference (Defines the observations that are expected to be produced by the action.) 1492 */ 1493 protected List<ObservationDefinition> observationResultRequirementTarget; 1494 1495 1496 /** 1497 * 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. 1498 */ 1499 @Child(name = "transform", type = {CanonicalType.class}, order=32, min=0, max=1, modifier=false, summary=false) 1500 @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." ) 1501 protected CanonicalType transform; 1502 1503 /** 1504 * 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. 1505 */ 1506 @Child(name = "dynamicValue", type = {}, order=33, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1507 @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." ) 1508 protected List<ActivityDefinitionDynamicValueComponent> dynamicValue; 1509 1510 private static final long serialVersionUID = 1488459022L; 1511 1512 /** 1513 * Constructor 1514 */ 1515 public ActivityDefinition() { 1516 super(); 1517 } 1518 1519 /** 1520 * Constructor 1521 */ 1522 public ActivityDefinition(Enumeration<PublicationStatus> status) { 1523 super(); 1524 this.status = status; 1525 } 1526 1527 /** 1528 * @return {@link #url} (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.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 1529 */ 1530 public UriType getUrlElement() { 1531 if (this.url == null) 1532 if (Configuration.errorOnAutoCreate()) 1533 throw new Error("Attempt to auto-create ActivityDefinition.url"); 1534 else if (Configuration.doAutoCreate()) 1535 this.url = new UriType(); // bb 1536 return this.url; 1537 } 1538 1539 public boolean hasUrlElement() { 1540 return this.url != null && !this.url.isEmpty(); 1541 } 1542 1543 public boolean hasUrl() { 1544 return this.url != null && !this.url.isEmpty(); 1545 } 1546 1547 /** 1548 * @param value {@link #url} (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.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 1549 */ 1550 public ActivityDefinition setUrlElement(UriType value) { 1551 this.url = value; 1552 return this; 1553 } 1554 1555 /** 1556 * @return 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. 1557 */ 1558 public String getUrl() { 1559 return this.url == null ? null : this.url.getValue(); 1560 } 1561 1562 /** 1563 * @param value 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. 1564 */ 1565 public ActivityDefinition setUrl(String value) { 1566 if (Utilities.noString(value)) 1567 this.url = null; 1568 else { 1569 if (this.url == null) 1570 this.url = new UriType(); 1571 this.url.setValue(value); 1572 } 1573 return this; 1574 } 1575 1576 /** 1577 * @return {@link #identifier} (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.) 1578 */ 1579 public List<Identifier> getIdentifier() { 1580 if (this.identifier == null) 1581 this.identifier = new ArrayList<Identifier>(); 1582 return this.identifier; 1583 } 1584 1585 /** 1586 * @return Returns a reference to <code>this</code> for easy method chaining 1587 */ 1588 public ActivityDefinition setIdentifier(List<Identifier> theIdentifier) { 1589 this.identifier = theIdentifier; 1590 return this; 1591 } 1592 1593 public boolean hasIdentifier() { 1594 if (this.identifier == null) 1595 return false; 1596 for (Identifier item : this.identifier) 1597 if (!item.isEmpty()) 1598 return true; 1599 return false; 1600 } 1601 1602 public Identifier addIdentifier() { //3 1603 Identifier t = new Identifier(); 1604 if (this.identifier == null) 1605 this.identifier = new ArrayList<Identifier>(); 1606 this.identifier.add(t); 1607 return t; 1608 } 1609 1610 public ActivityDefinition addIdentifier(Identifier t) { //3 1611 if (t == null) 1612 return this; 1613 if (this.identifier == null) 1614 this.identifier = new ArrayList<Identifier>(); 1615 this.identifier.add(t); 1616 return this; 1617 } 1618 1619 /** 1620 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist 1621 */ 1622 public Identifier getIdentifierFirstRep() { 1623 if (getIdentifier().isEmpty()) { 1624 addIdentifier(); 1625 } 1626 return getIdentifier().get(0); 1627 } 1628 1629 /** 1630 * @return {@link #version} (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.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 1631 */ 1632 public StringType getVersionElement() { 1633 if (this.version == null) 1634 if (Configuration.errorOnAutoCreate()) 1635 throw new Error("Attempt to auto-create ActivityDefinition.version"); 1636 else if (Configuration.doAutoCreate()) 1637 this.version = new StringType(); // bb 1638 return this.version; 1639 } 1640 1641 public boolean hasVersionElement() { 1642 return this.version != null && !this.version.isEmpty(); 1643 } 1644 1645 public boolean hasVersion() { 1646 return this.version != null && !this.version.isEmpty(); 1647 } 1648 1649 /** 1650 * @param value {@link #version} (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.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 1651 */ 1652 public ActivityDefinition setVersionElement(StringType value) { 1653 this.version = value; 1654 return this; 1655 } 1656 1657 /** 1658 * @return 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. 1659 */ 1660 public String getVersion() { 1661 return this.version == null ? null : this.version.getValue(); 1662 } 1663 1664 /** 1665 * @param value 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. 1666 */ 1667 public ActivityDefinition setVersion(String value) { 1668 if (Utilities.noString(value)) 1669 this.version = null; 1670 else { 1671 if (this.version == null) 1672 this.version = new StringType(); 1673 this.version.setValue(value); 1674 } 1675 return this; 1676 } 1677 1678 /** 1679 * @return {@link #name} (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.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 1680 */ 1681 public StringType getNameElement() { 1682 if (this.name == null) 1683 if (Configuration.errorOnAutoCreate()) 1684 throw new Error("Attempt to auto-create ActivityDefinition.name"); 1685 else if (Configuration.doAutoCreate()) 1686 this.name = new StringType(); // bb 1687 return this.name; 1688 } 1689 1690 public boolean hasNameElement() { 1691 return this.name != null && !this.name.isEmpty(); 1692 } 1693 1694 public boolean hasName() { 1695 return this.name != null && !this.name.isEmpty(); 1696 } 1697 1698 /** 1699 * @param value {@link #name} (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.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 1700 */ 1701 public ActivityDefinition setNameElement(StringType value) { 1702 this.name = value; 1703 return this; 1704 } 1705 1706 /** 1707 * @return 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. 1708 */ 1709 public String getName() { 1710 return this.name == null ? null : this.name.getValue(); 1711 } 1712 1713 /** 1714 * @param value 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. 1715 */ 1716 public ActivityDefinition setName(String value) { 1717 if (Utilities.noString(value)) 1718 this.name = null; 1719 else { 1720 if (this.name == null) 1721 this.name = new StringType(); 1722 this.name.setValue(value); 1723 } 1724 return this; 1725 } 1726 1727 /** 1728 * @return {@link #title} (A short, descriptive, user-friendly title for the activity definition.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 1729 */ 1730 public StringType getTitleElement() { 1731 if (this.title == null) 1732 if (Configuration.errorOnAutoCreate()) 1733 throw new Error("Attempt to auto-create ActivityDefinition.title"); 1734 else if (Configuration.doAutoCreate()) 1735 this.title = new StringType(); // bb 1736 return this.title; 1737 } 1738 1739 public boolean hasTitleElement() { 1740 return this.title != null && !this.title.isEmpty(); 1741 } 1742 1743 public boolean hasTitle() { 1744 return this.title != null && !this.title.isEmpty(); 1745 } 1746 1747 /** 1748 * @param value {@link #title} (A short, descriptive, user-friendly title for the activity definition.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 1749 */ 1750 public ActivityDefinition setTitleElement(StringType value) { 1751 this.title = value; 1752 return this; 1753 } 1754 1755 /** 1756 * @return A short, descriptive, user-friendly title for the activity definition. 1757 */ 1758 public String getTitle() { 1759 return this.title == null ? null : this.title.getValue(); 1760 } 1761 1762 /** 1763 * @param value A short, descriptive, user-friendly title for the activity definition. 1764 */ 1765 public ActivityDefinition setTitle(String value) { 1766 if (Utilities.noString(value)) 1767 this.title = null; 1768 else { 1769 if (this.title == null) 1770 this.title = new StringType(); 1771 this.title.setValue(value); 1772 } 1773 return this; 1774 } 1775 1776 /** 1777 * @return {@link #subtitle} (An explanatory or alternate title for the activity definition giving additional information about its content.). This is the underlying object with id, value and extensions. The accessor "getSubtitle" gives direct access to the value 1778 */ 1779 public StringType getSubtitleElement() { 1780 if (this.subtitle == null) 1781 if (Configuration.errorOnAutoCreate()) 1782 throw new Error("Attempt to auto-create ActivityDefinition.subtitle"); 1783 else if (Configuration.doAutoCreate()) 1784 this.subtitle = new StringType(); // bb 1785 return this.subtitle; 1786 } 1787 1788 public boolean hasSubtitleElement() { 1789 return this.subtitle != null && !this.subtitle.isEmpty(); 1790 } 1791 1792 public boolean hasSubtitle() { 1793 return this.subtitle != null && !this.subtitle.isEmpty(); 1794 } 1795 1796 /** 1797 * @param value {@link #subtitle} (An explanatory or alternate title for the activity definition giving additional information about its content.). This is the underlying object with id, value and extensions. The accessor "getSubtitle" gives direct access to the value 1798 */ 1799 public ActivityDefinition setSubtitleElement(StringType value) { 1800 this.subtitle = value; 1801 return this; 1802 } 1803 1804 /** 1805 * @return An explanatory or alternate title for the activity definition giving additional information about its content. 1806 */ 1807 public String getSubtitle() { 1808 return this.subtitle == null ? null : this.subtitle.getValue(); 1809 } 1810 1811 /** 1812 * @param value An explanatory or alternate title for the activity definition giving additional information about its content. 1813 */ 1814 public ActivityDefinition setSubtitle(String value) { 1815 if (Utilities.noString(value)) 1816 this.subtitle = null; 1817 else { 1818 if (this.subtitle == null) 1819 this.subtitle = new StringType(); 1820 this.subtitle.setValue(value); 1821 } 1822 return this; 1823 } 1824 1825 /** 1826 * @return {@link #status} (The status of this activity definition. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1827 */ 1828 public Enumeration<PublicationStatus> getStatusElement() { 1829 if (this.status == null) 1830 if (Configuration.errorOnAutoCreate()) 1831 throw new Error("Attempt to auto-create ActivityDefinition.status"); 1832 else if (Configuration.doAutoCreate()) 1833 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); // bb 1834 return this.status; 1835 } 1836 1837 public boolean hasStatusElement() { 1838 return this.status != null && !this.status.isEmpty(); 1839 } 1840 1841 public boolean hasStatus() { 1842 return this.status != null && !this.status.isEmpty(); 1843 } 1844 1845 /** 1846 * @param value {@link #status} (The status of this activity definition. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 1847 */ 1848 public ActivityDefinition setStatusElement(Enumeration<PublicationStatus> value) { 1849 this.status = value; 1850 return this; 1851 } 1852 1853 /** 1854 * @return The status of this activity definition. Enables tracking the life-cycle of the content. 1855 */ 1856 public PublicationStatus getStatus() { 1857 return this.status == null ? null : this.status.getValue(); 1858 } 1859 1860 /** 1861 * @param value The status of this activity definition. Enables tracking the life-cycle of the content. 1862 */ 1863 public ActivityDefinition setStatus(PublicationStatus value) { 1864 if (this.status == null) 1865 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); 1866 this.status.setValue(value); 1867 return this; 1868 } 1869 1870 /** 1871 * @return {@link #experimental} (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.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value 1872 */ 1873 public BooleanType getExperimentalElement() { 1874 if (this.experimental == null) 1875 if (Configuration.errorOnAutoCreate()) 1876 throw new Error("Attempt to auto-create ActivityDefinition.experimental"); 1877 else if (Configuration.doAutoCreate()) 1878 this.experimental = new BooleanType(); // bb 1879 return this.experimental; 1880 } 1881 1882 public boolean hasExperimentalElement() { 1883 return this.experimental != null && !this.experimental.isEmpty(); 1884 } 1885 1886 public boolean hasExperimental() { 1887 return this.experimental != null && !this.experimental.isEmpty(); 1888 } 1889 1890 /** 1891 * @param value {@link #experimental} (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.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value 1892 */ 1893 public ActivityDefinition setExperimentalElement(BooleanType value) { 1894 this.experimental = value; 1895 return this; 1896 } 1897 1898 /** 1899 * @return 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. 1900 */ 1901 public boolean getExperimental() { 1902 return this.experimental == null || this.experimental.isEmpty() ? false : this.experimental.getValue(); 1903 } 1904 1905 /** 1906 * @param value 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. 1907 */ 1908 public ActivityDefinition setExperimental(boolean value) { 1909 if (this.experimental == null) 1910 this.experimental = new BooleanType(); 1911 this.experimental.setValue(value); 1912 return this; 1913 } 1914 1915 /** 1916 * @return {@link #subject} (A code or group definition that describes the intended subject of the activity being defined.) 1917 */ 1918 public Type getSubject() { 1919 return this.subject; 1920 } 1921 1922 /** 1923 * @return {@link #subject} (A code or group definition that describes the intended subject of the activity being defined.) 1924 */ 1925 public CodeableConcept getSubjectCodeableConcept() throws FHIRException { 1926 if (this.subject == null) 1927 return null; 1928 if (!(this.subject instanceof CodeableConcept)) 1929 throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.subject.getClass().getName()+" was encountered"); 1930 return (CodeableConcept) this.subject; 1931 } 1932 1933 public boolean hasSubjectCodeableConcept() { 1934 return this != null && this.subject instanceof CodeableConcept; 1935 } 1936 1937 /** 1938 * @return {@link #subject} (A code or group definition that describes the intended subject of the activity being defined.) 1939 */ 1940 public Reference getSubjectReference() throws FHIRException { 1941 if (this.subject == null) 1942 return null; 1943 if (!(this.subject instanceof Reference)) 1944 throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.subject.getClass().getName()+" was encountered"); 1945 return (Reference) this.subject; 1946 } 1947 1948 public boolean hasSubjectReference() { 1949 return this != null && this.subject instanceof Reference; 1950 } 1951 1952 public boolean hasSubject() { 1953 return this.subject != null && !this.subject.isEmpty(); 1954 } 1955 1956 /** 1957 * @param value {@link #subject} (A code or group definition that describes the intended subject of the activity being defined.) 1958 */ 1959 public ActivityDefinition setSubject(Type value) { 1960 if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) 1961 throw new Error("Not the right type for ActivityDefinition.subject[x]: "+value.fhirType()); 1962 this.subject = value; 1963 return this; 1964 } 1965 1966 /** 1967 * @return {@link #date} (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.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 1968 */ 1969 public DateTimeType getDateElement() { 1970 if (this.date == null) 1971 if (Configuration.errorOnAutoCreate()) 1972 throw new Error("Attempt to auto-create ActivityDefinition.date"); 1973 else if (Configuration.doAutoCreate()) 1974 this.date = new DateTimeType(); // bb 1975 return this.date; 1976 } 1977 1978 public boolean hasDateElement() { 1979 return this.date != null && !this.date.isEmpty(); 1980 } 1981 1982 public boolean hasDate() { 1983 return this.date != null && !this.date.isEmpty(); 1984 } 1985 1986 /** 1987 * @param value {@link #date} (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.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 1988 */ 1989 public ActivityDefinition setDateElement(DateTimeType value) { 1990 this.date = value; 1991 return this; 1992 } 1993 1994 /** 1995 * @return 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. 1996 */ 1997 public Date getDate() { 1998 return this.date == null ? null : this.date.getValue(); 1999 } 2000 2001 /** 2002 * @param value 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. 2003 */ 2004 public ActivityDefinition setDate(Date value) { 2005 if (value == null) 2006 this.date = null; 2007 else { 2008 if (this.date == null) 2009 this.date = new DateTimeType(); 2010 this.date.setValue(value); 2011 } 2012 return this; 2013 } 2014 2015 /** 2016 * @return {@link #publisher} (The name of the organization or individual that published the activity definition.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 2017 */ 2018 public StringType getPublisherElement() { 2019 if (this.publisher == null) 2020 if (Configuration.errorOnAutoCreate()) 2021 throw new Error("Attempt to auto-create ActivityDefinition.publisher"); 2022 else if (Configuration.doAutoCreate()) 2023 this.publisher = new StringType(); // bb 2024 return this.publisher; 2025 } 2026 2027 public boolean hasPublisherElement() { 2028 return this.publisher != null && !this.publisher.isEmpty(); 2029 } 2030 2031 public boolean hasPublisher() { 2032 return this.publisher != null && !this.publisher.isEmpty(); 2033 } 2034 2035 /** 2036 * @param value {@link #publisher} (The name of the organization or individual that published the activity definition.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 2037 */ 2038 public ActivityDefinition setPublisherElement(StringType value) { 2039 this.publisher = value; 2040 return this; 2041 } 2042 2043 /** 2044 * @return The name of the organization or individual that published the activity definition. 2045 */ 2046 public String getPublisher() { 2047 return this.publisher == null ? null : this.publisher.getValue(); 2048 } 2049 2050 /** 2051 * @param value The name of the organization or individual that published the activity definition. 2052 */ 2053 public ActivityDefinition setPublisher(String value) { 2054 if (Utilities.noString(value)) 2055 this.publisher = null; 2056 else { 2057 if (this.publisher == null) 2058 this.publisher = new StringType(); 2059 this.publisher.setValue(value); 2060 } 2061 return this; 2062 } 2063 2064 /** 2065 * @return {@link #contact} (Contact details to assist a user in finding and communicating with the publisher.) 2066 */ 2067 public List<ContactDetail> getContact() { 2068 if (this.contact == null) 2069 this.contact = new ArrayList<ContactDetail>(); 2070 return this.contact; 2071 } 2072 2073 /** 2074 * @return Returns a reference to <code>this</code> for easy method chaining 2075 */ 2076 public ActivityDefinition setContact(List<ContactDetail> theContact) { 2077 this.contact = theContact; 2078 return this; 2079 } 2080 2081 public boolean hasContact() { 2082 if (this.contact == null) 2083 return false; 2084 for (ContactDetail item : this.contact) 2085 if (!item.isEmpty()) 2086 return true; 2087 return false; 2088 } 2089 2090 public ContactDetail addContact() { //3 2091 ContactDetail t = new ContactDetail(); 2092 if (this.contact == null) 2093 this.contact = new ArrayList<ContactDetail>(); 2094 this.contact.add(t); 2095 return t; 2096 } 2097 2098 public ActivityDefinition addContact(ContactDetail t) { //3 2099 if (t == null) 2100 return this; 2101 if (this.contact == null) 2102 this.contact = new ArrayList<ContactDetail>(); 2103 this.contact.add(t); 2104 return this; 2105 } 2106 2107 /** 2108 * @return The first repetition of repeating field {@link #contact}, creating it if it does not already exist 2109 */ 2110 public ContactDetail getContactFirstRep() { 2111 if (getContact().isEmpty()) { 2112 addContact(); 2113 } 2114 return getContact().get(0); 2115 } 2116 2117 /** 2118 * @return {@link #description} (A free text natural language description of the activity definition from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 2119 */ 2120 public MarkdownType getDescriptionElement() { 2121 if (this.description == null) 2122 if (Configuration.errorOnAutoCreate()) 2123 throw new Error("Attempt to auto-create ActivityDefinition.description"); 2124 else if (Configuration.doAutoCreate()) 2125 this.description = new MarkdownType(); // bb 2126 return this.description; 2127 } 2128 2129 public boolean hasDescriptionElement() { 2130 return this.description != null && !this.description.isEmpty(); 2131 } 2132 2133 public boolean hasDescription() { 2134 return this.description != null && !this.description.isEmpty(); 2135 } 2136 2137 /** 2138 * @param value {@link #description} (A free text natural language description of the activity definition from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 2139 */ 2140 public ActivityDefinition setDescriptionElement(MarkdownType value) { 2141 this.description = value; 2142 return this; 2143 } 2144 2145 /** 2146 * @return A free text natural language description of the activity definition from a consumer's perspective. 2147 */ 2148 public String getDescription() { 2149 return this.description == null ? null : this.description.getValue(); 2150 } 2151 2152 /** 2153 * @param value A free text natural language description of the activity definition from a consumer's perspective. 2154 */ 2155 public ActivityDefinition setDescription(String value) { 2156 if (value == null) 2157 this.description = null; 2158 else { 2159 if (this.description == null) 2160 this.description = new MarkdownType(); 2161 this.description.setValue(value); 2162 } 2163 return this; 2164 } 2165 2166 /** 2167 * @return {@link #useContext} (The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate activity definition instances.) 2168 */ 2169 public List<UsageContext> getUseContext() { 2170 if (this.useContext == null) 2171 this.useContext = new ArrayList<UsageContext>(); 2172 return this.useContext; 2173 } 2174 2175 /** 2176 * @return Returns a reference to <code>this</code> for easy method chaining 2177 */ 2178 public ActivityDefinition setUseContext(List<UsageContext> theUseContext) { 2179 this.useContext = theUseContext; 2180 return this; 2181 } 2182 2183 public boolean hasUseContext() { 2184 if (this.useContext == null) 2185 return false; 2186 for (UsageContext item : this.useContext) 2187 if (!item.isEmpty()) 2188 return true; 2189 return false; 2190 } 2191 2192 public UsageContext addUseContext() { //3 2193 UsageContext t = new UsageContext(); 2194 if (this.useContext == null) 2195 this.useContext = new ArrayList<UsageContext>(); 2196 this.useContext.add(t); 2197 return t; 2198 } 2199 2200 public ActivityDefinition addUseContext(UsageContext t) { //3 2201 if (t == null) 2202 return this; 2203 if (this.useContext == null) 2204 this.useContext = new ArrayList<UsageContext>(); 2205 this.useContext.add(t); 2206 return this; 2207 } 2208 2209 /** 2210 * @return The first repetition of repeating field {@link #useContext}, creating it if it does not already exist 2211 */ 2212 public UsageContext getUseContextFirstRep() { 2213 if (getUseContext().isEmpty()) { 2214 addUseContext(); 2215 } 2216 return getUseContext().get(0); 2217 } 2218 2219 /** 2220 * @return {@link #jurisdiction} (A legal or geographic region in which the activity definition is intended to be used.) 2221 */ 2222 public List<CodeableConcept> getJurisdiction() { 2223 if (this.jurisdiction == null) 2224 this.jurisdiction = new ArrayList<CodeableConcept>(); 2225 return this.jurisdiction; 2226 } 2227 2228 /** 2229 * @return Returns a reference to <code>this</code> for easy method chaining 2230 */ 2231 public ActivityDefinition setJurisdiction(List<CodeableConcept> theJurisdiction) { 2232 this.jurisdiction = theJurisdiction; 2233 return this; 2234 } 2235 2236 public boolean hasJurisdiction() { 2237 if (this.jurisdiction == null) 2238 return false; 2239 for (CodeableConcept item : this.jurisdiction) 2240 if (!item.isEmpty()) 2241 return true; 2242 return false; 2243 } 2244 2245 public CodeableConcept addJurisdiction() { //3 2246 CodeableConcept t = new CodeableConcept(); 2247 if (this.jurisdiction == null) 2248 this.jurisdiction = new ArrayList<CodeableConcept>(); 2249 this.jurisdiction.add(t); 2250 return t; 2251 } 2252 2253 public ActivityDefinition addJurisdiction(CodeableConcept t) { //3 2254 if (t == null) 2255 return this; 2256 if (this.jurisdiction == null) 2257 this.jurisdiction = new ArrayList<CodeableConcept>(); 2258 this.jurisdiction.add(t); 2259 return this; 2260 } 2261 2262 /** 2263 * @return The first repetition of repeating field {@link #jurisdiction}, creating it if it does not already exist 2264 */ 2265 public CodeableConcept getJurisdictionFirstRep() { 2266 if (getJurisdiction().isEmpty()) { 2267 addJurisdiction(); 2268 } 2269 return getJurisdiction().get(0); 2270 } 2271 2272 /** 2273 * @return {@link #purpose} (Explanation of why this activity definition is needed and why it has been designed as it has.). This is the underlying object with id, value and extensions. The accessor "getPurpose" gives direct access to the value 2274 */ 2275 public MarkdownType getPurposeElement() { 2276 if (this.purpose == null) 2277 if (Configuration.errorOnAutoCreate()) 2278 throw new Error("Attempt to auto-create ActivityDefinition.purpose"); 2279 else if (Configuration.doAutoCreate()) 2280 this.purpose = new MarkdownType(); // bb 2281 return this.purpose; 2282 } 2283 2284 public boolean hasPurposeElement() { 2285 return this.purpose != null && !this.purpose.isEmpty(); 2286 } 2287 2288 public boolean hasPurpose() { 2289 return this.purpose != null && !this.purpose.isEmpty(); 2290 } 2291 2292 /** 2293 * @param value {@link #purpose} (Explanation of why this activity definition is needed and why it has been designed as it has.). This is the underlying object with id, value and extensions. The accessor "getPurpose" gives direct access to the value 2294 */ 2295 public ActivityDefinition setPurposeElement(MarkdownType value) { 2296 this.purpose = value; 2297 return this; 2298 } 2299 2300 /** 2301 * @return Explanation of why this activity definition is needed and why it has been designed as it has. 2302 */ 2303 public String getPurpose() { 2304 return this.purpose == null ? null : this.purpose.getValue(); 2305 } 2306 2307 /** 2308 * @param value Explanation of why this activity definition is needed and why it has been designed as it has. 2309 */ 2310 public ActivityDefinition setPurpose(String value) { 2311 if (value == null) 2312 this.purpose = null; 2313 else { 2314 if (this.purpose == null) 2315 this.purpose = new MarkdownType(); 2316 this.purpose.setValue(value); 2317 } 2318 return this; 2319 } 2320 2321 /** 2322 * @return {@link #usage} (A detailed description of how the activity definition is used from a clinical perspective.). This is the underlying object with id, value and extensions. The accessor "getUsage" gives direct access to the value 2323 */ 2324 public StringType getUsageElement() { 2325 if (this.usage == null) 2326 if (Configuration.errorOnAutoCreate()) 2327 throw new Error("Attempt to auto-create ActivityDefinition.usage"); 2328 else if (Configuration.doAutoCreate()) 2329 this.usage = new StringType(); // bb 2330 return this.usage; 2331 } 2332 2333 public boolean hasUsageElement() { 2334 return this.usage != null && !this.usage.isEmpty(); 2335 } 2336 2337 public boolean hasUsage() { 2338 return this.usage != null && !this.usage.isEmpty(); 2339 } 2340 2341 /** 2342 * @param value {@link #usage} (A detailed description of how the activity definition is used from a clinical perspective.). This is the underlying object with id, value and extensions. The accessor "getUsage" gives direct access to the value 2343 */ 2344 public ActivityDefinition setUsageElement(StringType value) { 2345 this.usage = value; 2346 return this; 2347 } 2348 2349 /** 2350 * @return A detailed description of how the activity definition is used from a clinical perspective. 2351 */ 2352 public String getUsage() { 2353 return this.usage == null ? null : this.usage.getValue(); 2354 } 2355 2356 /** 2357 * @param value A detailed description of how the activity definition is used from a clinical perspective. 2358 */ 2359 public ActivityDefinition setUsage(String value) { 2360 if (Utilities.noString(value)) 2361 this.usage = null; 2362 else { 2363 if (this.usage == null) 2364 this.usage = new StringType(); 2365 this.usage.setValue(value); 2366 } 2367 return this; 2368 } 2369 2370 /** 2371 * @return {@link #copyright} (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.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value 2372 */ 2373 public MarkdownType getCopyrightElement() { 2374 if (this.copyright == null) 2375 if (Configuration.errorOnAutoCreate()) 2376 throw new Error("Attempt to auto-create ActivityDefinition.copyright"); 2377 else if (Configuration.doAutoCreate()) 2378 this.copyright = new MarkdownType(); // bb 2379 return this.copyright; 2380 } 2381 2382 public boolean hasCopyrightElement() { 2383 return this.copyright != null && !this.copyright.isEmpty(); 2384 } 2385 2386 public boolean hasCopyright() { 2387 return this.copyright != null && !this.copyright.isEmpty(); 2388 } 2389 2390 /** 2391 * @param value {@link #copyright} (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.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value 2392 */ 2393 public ActivityDefinition setCopyrightElement(MarkdownType value) { 2394 this.copyright = value; 2395 return this; 2396 } 2397 2398 /** 2399 * @return 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. 2400 */ 2401 public String getCopyright() { 2402 return this.copyright == null ? null : this.copyright.getValue(); 2403 } 2404 2405 /** 2406 * @param value 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. 2407 */ 2408 public ActivityDefinition setCopyright(String value) { 2409 if (value == null) 2410 this.copyright = null; 2411 else { 2412 if (this.copyright == null) 2413 this.copyright = new MarkdownType(); 2414 this.copyright.setValue(value); 2415 } 2416 return this; 2417 } 2418 2419 /** 2420 * @return {@link #approvalDate} (The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.). This is the underlying object with id, value and extensions. The accessor "getApprovalDate" gives direct access to the value 2421 */ 2422 public DateType getApprovalDateElement() { 2423 if (this.approvalDate == null) 2424 if (Configuration.errorOnAutoCreate()) 2425 throw new Error("Attempt to auto-create ActivityDefinition.approvalDate"); 2426 else if (Configuration.doAutoCreate()) 2427 this.approvalDate = new DateType(); // bb 2428 return this.approvalDate; 2429 } 2430 2431 public boolean hasApprovalDateElement() { 2432 return this.approvalDate != null && !this.approvalDate.isEmpty(); 2433 } 2434 2435 public boolean hasApprovalDate() { 2436 return this.approvalDate != null && !this.approvalDate.isEmpty(); 2437 } 2438 2439 /** 2440 * @param value {@link #approvalDate} (The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.). This is the underlying object with id, value and extensions. The accessor "getApprovalDate" gives direct access to the value 2441 */ 2442 public ActivityDefinition setApprovalDateElement(DateType value) { 2443 this.approvalDate = value; 2444 return this; 2445 } 2446 2447 /** 2448 * @return The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage. 2449 */ 2450 public Date getApprovalDate() { 2451 return this.approvalDate == null ? null : this.approvalDate.getValue(); 2452 } 2453 2454 /** 2455 * @param value The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage. 2456 */ 2457 public ActivityDefinition setApprovalDate(Date value) { 2458 if (value == null) 2459 this.approvalDate = null; 2460 else { 2461 if (this.approvalDate == null) 2462 this.approvalDate = new DateType(); 2463 this.approvalDate.setValue(value); 2464 } 2465 return this; 2466 } 2467 2468 /** 2469 * @return {@link #lastReviewDate} (The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.). This is the underlying object with id, value and extensions. The accessor "getLastReviewDate" gives direct access to the value 2470 */ 2471 public DateType getLastReviewDateElement() { 2472 if (this.lastReviewDate == null) 2473 if (Configuration.errorOnAutoCreate()) 2474 throw new Error("Attempt to auto-create ActivityDefinition.lastReviewDate"); 2475 else if (Configuration.doAutoCreate()) 2476 this.lastReviewDate = new DateType(); // bb 2477 return this.lastReviewDate; 2478 } 2479 2480 public boolean hasLastReviewDateElement() { 2481 return this.lastReviewDate != null && !this.lastReviewDate.isEmpty(); 2482 } 2483 2484 public boolean hasLastReviewDate() { 2485 return this.lastReviewDate != null && !this.lastReviewDate.isEmpty(); 2486 } 2487 2488 /** 2489 * @param value {@link #lastReviewDate} (The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.). This is the underlying object with id, value and extensions. The accessor "getLastReviewDate" gives direct access to the value 2490 */ 2491 public ActivityDefinition setLastReviewDateElement(DateType value) { 2492 this.lastReviewDate = value; 2493 return this; 2494 } 2495 2496 /** 2497 * @return The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date. 2498 */ 2499 public Date getLastReviewDate() { 2500 return this.lastReviewDate == null ? null : this.lastReviewDate.getValue(); 2501 } 2502 2503 /** 2504 * @param value The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date. 2505 */ 2506 public ActivityDefinition setLastReviewDate(Date value) { 2507 if (value == null) 2508 this.lastReviewDate = null; 2509 else { 2510 if (this.lastReviewDate == null) 2511 this.lastReviewDate = new DateType(); 2512 this.lastReviewDate.setValue(value); 2513 } 2514 return this; 2515 } 2516 2517 /** 2518 * @return {@link #effectivePeriod} (The period during which the activity definition content was or is planned to be in active use.) 2519 */ 2520 public Period getEffectivePeriod() { 2521 if (this.effectivePeriod == null) 2522 if (Configuration.errorOnAutoCreate()) 2523 throw new Error("Attempt to auto-create ActivityDefinition.effectivePeriod"); 2524 else if (Configuration.doAutoCreate()) 2525 this.effectivePeriod = new Period(); // cc 2526 return this.effectivePeriod; 2527 } 2528 2529 public boolean hasEffectivePeriod() { 2530 return this.effectivePeriod != null && !this.effectivePeriod.isEmpty(); 2531 } 2532 2533 /** 2534 * @param value {@link #effectivePeriod} (The period during which the activity definition content was or is planned to be in active use.) 2535 */ 2536 public ActivityDefinition setEffectivePeriod(Period value) { 2537 this.effectivePeriod = value; 2538 return this; 2539 } 2540 2541 /** 2542 * @return {@link #topic} (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.) 2543 */ 2544 public List<CodeableConcept> getTopic() { 2545 if (this.topic == null) 2546 this.topic = new ArrayList<CodeableConcept>(); 2547 return this.topic; 2548 } 2549 2550 /** 2551 * @return Returns a reference to <code>this</code> for easy method chaining 2552 */ 2553 public ActivityDefinition setTopic(List<CodeableConcept> theTopic) { 2554 this.topic = theTopic; 2555 return this; 2556 } 2557 2558 public boolean hasTopic() { 2559 if (this.topic == null) 2560 return false; 2561 for (CodeableConcept item : this.topic) 2562 if (!item.isEmpty()) 2563 return true; 2564 return false; 2565 } 2566 2567 public CodeableConcept addTopic() { //3 2568 CodeableConcept t = new CodeableConcept(); 2569 if (this.topic == null) 2570 this.topic = new ArrayList<CodeableConcept>(); 2571 this.topic.add(t); 2572 return t; 2573 } 2574 2575 public ActivityDefinition addTopic(CodeableConcept t) { //3 2576 if (t == null) 2577 return this; 2578 if (this.topic == null) 2579 this.topic = new ArrayList<CodeableConcept>(); 2580 this.topic.add(t); 2581 return this; 2582 } 2583 2584 /** 2585 * @return The first repetition of repeating field {@link #topic}, creating it if it does not already exist 2586 */ 2587 public CodeableConcept getTopicFirstRep() { 2588 if (getTopic().isEmpty()) { 2589 addTopic(); 2590 } 2591 return getTopic().get(0); 2592 } 2593 2594 /** 2595 * @return {@link #author} (An individiual or organization primarily involved in the creation and maintenance of the content.) 2596 */ 2597 public List<ContactDetail> getAuthor() { 2598 if (this.author == null) 2599 this.author = new ArrayList<ContactDetail>(); 2600 return this.author; 2601 } 2602 2603 /** 2604 * @return Returns a reference to <code>this</code> for easy method chaining 2605 */ 2606 public ActivityDefinition setAuthor(List<ContactDetail> theAuthor) { 2607 this.author = theAuthor; 2608 return this; 2609 } 2610 2611 public boolean hasAuthor() { 2612 if (this.author == null) 2613 return false; 2614 for (ContactDetail item : this.author) 2615 if (!item.isEmpty()) 2616 return true; 2617 return false; 2618 } 2619 2620 public ContactDetail addAuthor() { //3 2621 ContactDetail t = new ContactDetail(); 2622 if (this.author == null) 2623 this.author = new ArrayList<ContactDetail>(); 2624 this.author.add(t); 2625 return t; 2626 } 2627 2628 public ActivityDefinition addAuthor(ContactDetail t) { //3 2629 if (t == null) 2630 return this; 2631 if (this.author == null) 2632 this.author = new ArrayList<ContactDetail>(); 2633 this.author.add(t); 2634 return this; 2635 } 2636 2637 /** 2638 * @return The first repetition of repeating field {@link #author}, creating it if it does not already exist 2639 */ 2640 public ContactDetail getAuthorFirstRep() { 2641 if (getAuthor().isEmpty()) { 2642 addAuthor(); 2643 } 2644 return getAuthor().get(0); 2645 } 2646 2647 /** 2648 * @return {@link #editor} (An individual or organization primarily responsible for internal coherence of the content.) 2649 */ 2650 public List<ContactDetail> getEditor() { 2651 if (this.editor == null) 2652 this.editor = new ArrayList<ContactDetail>(); 2653 return this.editor; 2654 } 2655 2656 /** 2657 * @return Returns a reference to <code>this</code> for easy method chaining 2658 */ 2659 public ActivityDefinition setEditor(List<ContactDetail> theEditor) { 2660 this.editor = theEditor; 2661 return this; 2662 } 2663 2664 public boolean hasEditor() { 2665 if (this.editor == null) 2666 return false; 2667 for (ContactDetail item : this.editor) 2668 if (!item.isEmpty()) 2669 return true; 2670 return false; 2671 } 2672 2673 public ContactDetail addEditor() { //3 2674 ContactDetail t = new ContactDetail(); 2675 if (this.editor == null) 2676 this.editor = new ArrayList<ContactDetail>(); 2677 this.editor.add(t); 2678 return t; 2679 } 2680 2681 public ActivityDefinition addEditor(ContactDetail t) { //3 2682 if (t == null) 2683 return this; 2684 if (this.editor == null) 2685 this.editor = new ArrayList<ContactDetail>(); 2686 this.editor.add(t); 2687 return this; 2688 } 2689 2690 /** 2691 * @return The first repetition of repeating field {@link #editor}, creating it if it does not already exist 2692 */ 2693 public ContactDetail getEditorFirstRep() { 2694 if (getEditor().isEmpty()) { 2695 addEditor(); 2696 } 2697 return getEditor().get(0); 2698 } 2699 2700 /** 2701 * @return {@link #reviewer} (An individual or organization primarily responsible for review of some aspect of the content.) 2702 */ 2703 public List<ContactDetail> getReviewer() { 2704 if (this.reviewer == null) 2705 this.reviewer = new ArrayList<ContactDetail>(); 2706 return this.reviewer; 2707 } 2708 2709 /** 2710 * @return Returns a reference to <code>this</code> for easy method chaining 2711 */ 2712 public ActivityDefinition setReviewer(List<ContactDetail> theReviewer) { 2713 this.reviewer = theReviewer; 2714 return this; 2715 } 2716 2717 public boolean hasReviewer() { 2718 if (this.reviewer == null) 2719 return false; 2720 for (ContactDetail item : this.reviewer) 2721 if (!item.isEmpty()) 2722 return true; 2723 return false; 2724 } 2725 2726 public ContactDetail addReviewer() { //3 2727 ContactDetail t = new ContactDetail(); 2728 if (this.reviewer == null) 2729 this.reviewer = new ArrayList<ContactDetail>(); 2730 this.reviewer.add(t); 2731 return t; 2732 } 2733 2734 public ActivityDefinition addReviewer(ContactDetail t) { //3 2735 if (t == null) 2736 return this; 2737 if (this.reviewer == null) 2738 this.reviewer = new ArrayList<ContactDetail>(); 2739 this.reviewer.add(t); 2740 return this; 2741 } 2742 2743 /** 2744 * @return The first repetition of repeating field {@link #reviewer}, creating it if it does not already exist 2745 */ 2746 public ContactDetail getReviewerFirstRep() { 2747 if (getReviewer().isEmpty()) { 2748 addReviewer(); 2749 } 2750 return getReviewer().get(0); 2751 } 2752 2753 /** 2754 * @return {@link #endorser} (An individual or organization responsible for officially endorsing the content for use in some setting.) 2755 */ 2756 public List<ContactDetail> getEndorser() { 2757 if (this.endorser == null) 2758 this.endorser = new ArrayList<ContactDetail>(); 2759 return this.endorser; 2760 } 2761 2762 /** 2763 * @return Returns a reference to <code>this</code> for easy method chaining 2764 */ 2765 public ActivityDefinition setEndorser(List<ContactDetail> theEndorser) { 2766 this.endorser = theEndorser; 2767 return this; 2768 } 2769 2770 public boolean hasEndorser() { 2771 if (this.endorser == null) 2772 return false; 2773 for (ContactDetail item : this.endorser) 2774 if (!item.isEmpty()) 2775 return true; 2776 return false; 2777 } 2778 2779 public ContactDetail addEndorser() { //3 2780 ContactDetail t = new ContactDetail(); 2781 if (this.endorser == null) 2782 this.endorser = new ArrayList<ContactDetail>(); 2783 this.endorser.add(t); 2784 return t; 2785 } 2786 2787 public ActivityDefinition addEndorser(ContactDetail t) { //3 2788 if (t == null) 2789 return this; 2790 if (this.endorser == null) 2791 this.endorser = new ArrayList<ContactDetail>(); 2792 this.endorser.add(t); 2793 return this; 2794 } 2795 2796 /** 2797 * @return The first repetition of repeating field {@link #endorser}, creating it if it does not already exist 2798 */ 2799 public ContactDetail getEndorserFirstRep() { 2800 if (getEndorser().isEmpty()) { 2801 addEndorser(); 2802 } 2803 return getEndorser().get(0); 2804 } 2805 2806 /** 2807 * @return {@link #relatedArtifact} (Related artifacts such as additional documentation, justification, or bibliographic references.) 2808 */ 2809 public List<RelatedArtifact> getRelatedArtifact() { 2810 if (this.relatedArtifact == null) 2811 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 2812 return this.relatedArtifact; 2813 } 2814 2815 /** 2816 * @return Returns a reference to <code>this</code> for easy method chaining 2817 */ 2818 public ActivityDefinition setRelatedArtifact(List<RelatedArtifact> theRelatedArtifact) { 2819 this.relatedArtifact = theRelatedArtifact; 2820 return this; 2821 } 2822 2823 public boolean hasRelatedArtifact() { 2824 if (this.relatedArtifact == null) 2825 return false; 2826 for (RelatedArtifact item : this.relatedArtifact) 2827 if (!item.isEmpty()) 2828 return true; 2829 return false; 2830 } 2831 2832 public RelatedArtifact addRelatedArtifact() { //3 2833 RelatedArtifact t = new RelatedArtifact(); 2834 if (this.relatedArtifact == null) 2835 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 2836 this.relatedArtifact.add(t); 2837 return t; 2838 } 2839 2840 public ActivityDefinition addRelatedArtifact(RelatedArtifact t) { //3 2841 if (t == null) 2842 return this; 2843 if (this.relatedArtifact == null) 2844 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 2845 this.relatedArtifact.add(t); 2846 return this; 2847 } 2848 2849 /** 2850 * @return The first repetition of repeating field {@link #relatedArtifact}, creating it if it does not already exist 2851 */ 2852 public RelatedArtifact getRelatedArtifactFirstRep() { 2853 if (getRelatedArtifact().isEmpty()) { 2854 addRelatedArtifact(); 2855 } 2856 return getRelatedArtifact().get(0); 2857 } 2858 2859 /** 2860 * @return {@link #library} (A reference to a Library resource containing any formal logic used by the activity definition.) 2861 */ 2862 public List<CanonicalType> getLibrary() { 2863 if (this.library == null) 2864 this.library = new ArrayList<CanonicalType>(); 2865 return this.library; 2866 } 2867 2868 /** 2869 * @return Returns a reference to <code>this</code> for easy method chaining 2870 */ 2871 public ActivityDefinition setLibrary(List<CanonicalType> theLibrary) { 2872 this.library = theLibrary; 2873 return this; 2874 } 2875 2876 public boolean hasLibrary() { 2877 if (this.library == null) 2878 return false; 2879 for (CanonicalType item : this.library) 2880 if (!item.isEmpty()) 2881 return true; 2882 return false; 2883 } 2884 2885 /** 2886 * @return {@link #library} (A reference to a Library resource containing any formal logic used by the activity definition.) 2887 */ 2888 public CanonicalType addLibraryElement() {//2 2889 CanonicalType t = new CanonicalType(); 2890 if (this.library == null) 2891 this.library = new ArrayList<CanonicalType>(); 2892 this.library.add(t); 2893 return t; 2894 } 2895 2896 /** 2897 * @param value {@link #library} (A reference to a Library resource containing any formal logic used by the activity definition.) 2898 */ 2899 public ActivityDefinition addLibrary(String value) { //1 2900 CanonicalType t = new CanonicalType(); 2901 t.setValue(value); 2902 if (this.library == null) 2903 this.library = new ArrayList<CanonicalType>(); 2904 this.library.add(t); 2905 return this; 2906 } 2907 2908 /** 2909 * @param value {@link #library} (A reference to a Library resource containing any formal logic used by the activity definition.) 2910 */ 2911 public boolean hasLibrary(String value) { 2912 if (this.library == null) 2913 return false; 2914 for (CanonicalType v : this.library) 2915 if (v.getValue().equals(value)) // canonical(Library) 2916 return true; 2917 return false; 2918 } 2919 2920 /** 2921 * @return {@link #kind} (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.). This is the underlying object with id, value and extensions. The accessor "getKind" gives direct access to the value 2922 */ 2923 public Enumeration<ActivityDefinitionKind> getKindElement() { 2924 if (this.kind == null) 2925 if (Configuration.errorOnAutoCreate()) 2926 throw new Error("Attempt to auto-create ActivityDefinition.kind"); 2927 else if (Configuration.doAutoCreate()) 2928 this.kind = new Enumeration<ActivityDefinitionKind>(new ActivityDefinitionKindEnumFactory()); // bb 2929 return this.kind; 2930 } 2931 2932 public boolean hasKindElement() { 2933 return this.kind != null && !this.kind.isEmpty(); 2934 } 2935 2936 public boolean hasKind() { 2937 return this.kind != null && !this.kind.isEmpty(); 2938 } 2939 2940 /** 2941 * @param value {@link #kind} (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.). This is the underlying object with id, value and extensions. The accessor "getKind" gives direct access to the value 2942 */ 2943 public ActivityDefinition setKindElement(Enumeration<ActivityDefinitionKind> value) { 2944 this.kind = value; 2945 return this; 2946 } 2947 2948 /** 2949 * @return 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. 2950 */ 2951 public ActivityDefinitionKind getKind() { 2952 return this.kind == null ? null : this.kind.getValue(); 2953 } 2954 2955 /** 2956 * @param value 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. 2957 */ 2958 public ActivityDefinition setKind(ActivityDefinitionKind value) { 2959 if (value == null) 2960 this.kind = null; 2961 else { 2962 if (this.kind == null) 2963 this.kind = new Enumeration<ActivityDefinitionKind>(new ActivityDefinitionKindEnumFactory()); 2964 this.kind.setValue(value); 2965 } 2966 return this; 2967 } 2968 2969 /** 2970 * @return {@link #profile} (A profile to which the target of the activity definition is expected to conform.). This is the underlying object with id, value and extensions. The accessor "getProfile" gives direct access to the value 2971 */ 2972 public CanonicalType getProfileElement() { 2973 if (this.profile == null) 2974 if (Configuration.errorOnAutoCreate()) 2975 throw new Error("Attempt to auto-create ActivityDefinition.profile"); 2976 else if (Configuration.doAutoCreate()) 2977 this.profile = new CanonicalType(); // bb 2978 return this.profile; 2979 } 2980 2981 public boolean hasProfileElement() { 2982 return this.profile != null && !this.profile.isEmpty(); 2983 } 2984 2985 public boolean hasProfile() { 2986 return this.profile != null && !this.profile.isEmpty(); 2987 } 2988 2989 /** 2990 * @param value {@link #profile} (A profile to which the target of the activity definition is expected to conform.). This is the underlying object with id, value and extensions. The accessor "getProfile" gives direct access to the value 2991 */ 2992 public ActivityDefinition setProfileElement(CanonicalType value) { 2993 this.profile = value; 2994 return this; 2995 } 2996 2997 /** 2998 * @return A profile to which the target of the activity definition is expected to conform. 2999 */ 3000 public String getProfile() { 3001 return this.profile == null ? null : this.profile.getValue(); 3002 } 3003 3004 /** 3005 * @param value A profile to which the target of the activity definition is expected to conform. 3006 */ 3007 public ActivityDefinition setProfile(String value) { 3008 if (Utilities.noString(value)) 3009 this.profile = null; 3010 else { 3011 if (this.profile == null) 3012 this.profile = new CanonicalType(); 3013 this.profile.setValue(value); 3014 } 3015 return this; 3016 } 3017 3018 /** 3019 * @return {@link #code} (Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.) 3020 */ 3021 public CodeableConcept getCode() { 3022 if (this.code == null) 3023 if (Configuration.errorOnAutoCreate()) 3024 throw new Error("Attempt to auto-create ActivityDefinition.code"); 3025 else if (Configuration.doAutoCreate()) 3026 this.code = new CodeableConcept(); // cc 3027 return this.code; 3028 } 3029 3030 public boolean hasCode() { 3031 return this.code != null && !this.code.isEmpty(); 3032 } 3033 3034 /** 3035 * @param value {@link #code} (Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.) 3036 */ 3037 public ActivityDefinition setCode(CodeableConcept value) { 3038 this.code = value; 3039 return this; 3040 } 3041 3042 /** 3043 * @return {@link #intent} (Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain.). This is the underlying object with id, value and extensions. The accessor "getIntent" gives direct access to the value 3044 */ 3045 public Enumeration<RequestIntent> getIntentElement() { 3046 if (this.intent == null) 3047 if (Configuration.errorOnAutoCreate()) 3048 throw new Error("Attempt to auto-create ActivityDefinition.intent"); 3049 else if (Configuration.doAutoCreate()) 3050 this.intent = new Enumeration<RequestIntent>(new RequestIntentEnumFactory()); // bb 3051 return this.intent; 3052 } 3053 3054 public boolean hasIntentElement() { 3055 return this.intent != null && !this.intent.isEmpty(); 3056 } 3057 3058 public boolean hasIntent() { 3059 return this.intent != null && !this.intent.isEmpty(); 3060 } 3061 3062 /** 3063 * @param value {@link #intent} (Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain.). This is the underlying object with id, value and extensions. The accessor "getIntent" gives direct access to the value 3064 */ 3065 public ActivityDefinition setIntentElement(Enumeration<RequestIntent> value) { 3066 this.intent = value; 3067 return this; 3068 } 3069 3070 /** 3071 * @return Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain. 3072 */ 3073 public RequestIntent getIntent() { 3074 return this.intent == null ? null : this.intent.getValue(); 3075 } 3076 3077 /** 3078 * @param value Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain. 3079 */ 3080 public ActivityDefinition setIntent(RequestIntent value) { 3081 if (value == null) 3082 this.intent = null; 3083 else { 3084 if (this.intent == null) 3085 this.intent = new Enumeration<RequestIntent>(new RequestIntentEnumFactory()); 3086 this.intent.setValue(value); 3087 } 3088 return this; 3089 } 3090 3091 /** 3092 * @return {@link #priority} (Indicates how quickly the activity should be addressed with respect to other requests.). This is the underlying object with id, value and extensions. The accessor "getPriority" gives direct access to the value 3093 */ 3094 public Enumeration<RequestPriority> getPriorityElement() { 3095 if (this.priority == null) 3096 if (Configuration.errorOnAutoCreate()) 3097 throw new Error("Attempt to auto-create ActivityDefinition.priority"); 3098 else if (Configuration.doAutoCreate()) 3099 this.priority = new Enumeration<RequestPriority>(new RequestPriorityEnumFactory()); // bb 3100 return this.priority; 3101 } 3102 3103 public boolean hasPriorityElement() { 3104 return this.priority != null && !this.priority.isEmpty(); 3105 } 3106 3107 public boolean hasPriority() { 3108 return this.priority != null && !this.priority.isEmpty(); 3109 } 3110 3111 /** 3112 * @param value {@link #priority} (Indicates how quickly the activity should be addressed with respect to other requests.). This is the underlying object with id, value and extensions. The accessor "getPriority" gives direct access to the value 3113 */ 3114 public ActivityDefinition setPriorityElement(Enumeration<RequestPriority> value) { 3115 this.priority = value; 3116 return this; 3117 } 3118 3119 /** 3120 * @return Indicates how quickly the activity should be addressed with respect to other requests. 3121 */ 3122 public RequestPriority getPriority() { 3123 return this.priority == null ? null : this.priority.getValue(); 3124 } 3125 3126 /** 3127 * @param value Indicates how quickly the activity should be addressed with respect to other requests. 3128 */ 3129 public ActivityDefinition setPriority(RequestPriority value) { 3130 if (value == null) 3131 this.priority = null; 3132 else { 3133 if (this.priority == null) 3134 this.priority = new Enumeration<RequestPriority>(new RequestPriorityEnumFactory()); 3135 this.priority.setValue(value); 3136 } 3137 return this; 3138 } 3139 3140 /** 3141 * @return {@link #doNotPerform} (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.). This is the underlying object with id, value and extensions. The accessor "getDoNotPerform" gives direct access to the value 3142 */ 3143 public BooleanType getDoNotPerformElement() { 3144 if (this.doNotPerform == null) 3145 if (Configuration.errorOnAutoCreate()) 3146 throw new Error("Attempt to auto-create ActivityDefinition.doNotPerform"); 3147 else if (Configuration.doAutoCreate()) 3148 this.doNotPerform = new BooleanType(); // bb 3149 return this.doNotPerform; 3150 } 3151 3152 public boolean hasDoNotPerformElement() { 3153 return this.doNotPerform != null && !this.doNotPerform.isEmpty(); 3154 } 3155 3156 public boolean hasDoNotPerform() { 3157 return this.doNotPerform != null && !this.doNotPerform.isEmpty(); 3158 } 3159 3160 /** 3161 * @param value {@link #doNotPerform} (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.). This is the underlying object with id, value and extensions. The accessor "getDoNotPerform" gives direct access to the value 3162 */ 3163 public ActivityDefinition setDoNotPerformElement(BooleanType value) { 3164 this.doNotPerform = value; 3165 return this; 3166 } 3167 3168 /** 3169 * @return 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. 3170 */ 3171 public boolean getDoNotPerform() { 3172 return this.doNotPerform == null || this.doNotPerform.isEmpty() ? false : this.doNotPerform.getValue(); 3173 } 3174 3175 /** 3176 * @param value 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. 3177 */ 3178 public ActivityDefinition setDoNotPerform(boolean value) { 3179 if (this.doNotPerform == null) 3180 this.doNotPerform = new BooleanType(); 3181 this.doNotPerform.setValue(value); 3182 return this; 3183 } 3184 3185 /** 3186 * @return {@link #timing} (The period, timing or frequency upon which the described activity is to occur.) 3187 */ 3188 public Type getTiming() { 3189 return this.timing; 3190 } 3191 3192 /** 3193 * @return {@link #timing} (The period, timing or frequency upon which the described activity is to occur.) 3194 */ 3195 public Timing getTimingTiming() throws FHIRException { 3196 if (this.timing == null) 3197 return null; 3198 if (!(this.timing instanceof Timing)) 3199 throw new FHIRException("Type mismatch: the type Timing was expected, but "+this.timing.getClass().getName()+" was encountered"); 3200 return (Timing) this.timing; 3201 } 3202 3203 public boolean hasTimingTiming() { 3204 return this != null && this.timing instanceof Timing; 3205 } 3206 3207 /** 3208 * @return {@link #timing} (The period, timing or frequency upon which the described activity is to occur.) 3209 */ 3210 public DateTimeType getTimingDateTimeType() throws FHIRException { 3211 if (this.timing == null) 3212 return null; 3213 if (!(this.timing instanceof DateTimeType)) 3214 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.timing.getClass().getName()+" was encountered"); 3215 return (DateTimeType) this.timing; 3216 } 3217 3218 public boolean hasTimingDateTimeType() { 3219 return this != null && this.timing instanceof DateTimeType; 3220 } 3221 3222 /** 3223 * @return {@link #timing} (The period, timing or frequency upon which the described activity is to occur.) 3224 */ 3225 public Age getTimingAge() throws FHIRException { 3226 if (this.timing == null) 3227 return null; 3228 if (!(this.timing instanceof Age)) 3229 throw new FHIRException("Type mismatch: the type Age was expected, but "+this.timing.getClass().getName()+" was encountered"); 3230 return (Age) this.timing; 3231 } 3232 3233 public boolean hasTimingAge() { 3234 return this != null && this.timing instanceof Age; 3235 } 3236 3237 /** 3238 * @return {@link #timing} (The period, timing or frequency upon which the described activity is to occur.) 3239 */ 3240 public Period getTimingPeriod() throws FHIRException { 3241 if (this.timing == null) 3242 return null; 3243 if (!(this.timing instanceof Period)) 3244 throw new FHIRException("Type mismatch: the type Period was expected, but "+this.timing.getClass().getName()+" was encountered"); 3245 return (Period) this.timing; 3246 } 3247 3248 public boolean hasTimingPeriod() { 3249 return this != null && this.timing instanceof Period; 3250 } 3251 3252 /** 3253 * @return {@link #timing} (The period, timing or frequency upon which the described activity is to occur.) 3254 */ 3255 public Range getTimingRange() throws FHIRException { 3256 if (this.timing == null) 3257 return null; 3258 if (!(this.timing instanceof Range)) 3259 throw new FHIRException("Type mismatch: the type Range was expected, but "+this.timing.getClass().getName()+" was encountered"); 3260 return (Range) this.timing; 3261 } 3262 3263 public boolean hasTimingRange() { 3264 return this != null && this.timing instanceof Range; 3265 } 3266 3267 /** 3268 * @return {@link #timing} (The period, timing or frequency upon which the described activity is to occur.) 3269 */ 3270 public Duration getTimingDuration() throws FHIRException { 3271 if (this.timing == null) 3272 return null; 3273 if (!(this.timing instanceof Duration)) 3274 throw new FHIRException("Type mismatch: the type Duration was expected, but "+this.timing.getClass().getName()+" was encountered"); 3275 return (Duration) this.timing; 3276 } 3277 3278 public boolean hasTimingDuration() { 3279 return this != null && this.timing instanceof Duration; 3280 } 3281 3282 public boolean hasTiming() { 3283 return this.timing != null && !this.timing.isEmpty(); 3284 } 3285 3286 /** 3287 * @param value {@link #timing} (The period, timing or frequency upon which the described activity is to occur.) 3288 */ 3289 public ActivityDefinition setTiming(Type value) { 3290 if (value != null && !(value instanceof Timing || value instanceof DateTimeType || value instanceof Age || value instanceof Period || value instanceof Range || value instanceof Duration)) 3291 throw new Error("Not the right type for ActivityDefinition.timing[x]: "+value.fhirType()); 3292 this.timing = value; 3293 return this; 3294 } 3295 3296 /** 3297 * @return {@link #location} (Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.) 3298 */ 3299 public Reference getLocation() { 3300 if (this.location == null) 3301 if (Configuration.errorOnAutoCreate()) 3302 throw new Error("Attempt to auto-create ActivityDefinition.location"); 3303 else if (Configuration.doAutoCreate()) 3304 this.location = new Reference(); // cc 3305 return this.location; 3306 } 3307 3308 public boolean hasLocation() { 3309 return this.location != null && !this.location.isEmpty(); 3310 } 3311 3312 /** 3313 * @param value {@link #location} (Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.) 3314 */ 3315 public ActivityDefinition setLocation(Reference value) { 3316 this.location = value; 3317 return this; 3318 } 3319 3320 /** 3321 * @return {@link #location} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.) 3322 */ 3323 public Location getLocationTarget() { 3324 if (this.locationTarget == null) 3325 if (Configuration.errorOnAutoCreate()) 3326 throw new Error("Attempt to auto-create ActivityDefinition.location"); 3327 else if (Configuration.doAutoCreate()) 3328 this.locationTarget = new Location(); // aa 3329 return this.locationTarget; 3330 } 3331 3332 /** 3333 * @param value {@link #location} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.) 3334 */ 3335 public ActivityDefinition setLocationTarget(Location value) { 3336 this.locationTarget = value; 3337 return this; 3338 } 3339 3340 /** 3341 * @return {@link #participant} (Indicates who should participate in performing the action described.) 3342 */ 3343 public List<ActivityDefinitionParticipantComponent> getParticipant() { 3344 if (this.participant == null) 3345 this.participant = new ArrayList<ActivityDefinitionParticipantComponent>(); 3346 return this.participant; 3347 } 3348 3349 /** 3350 * @return Returns a reference to <code>this</code> for easy method chaining 3351 */ 3352 public ActivityDefinition setParticipant(List<ActivityDefinitionParticipantComponent> theParticipant) { 3353 this.participant = theParticipant; 3354 return this; 3355 } 3356 3357 public boolean hasParticipant() { 3358 if (this.participant == null) 3359 return false; 3360 for (ActivityDefinitionParticipantComponent item : this.participant) 3361 if (!item.isEmpty()) 3362 return true; 3363 return false; 3364 } 3365 3366 public ActivityDefinitionParticipantComponent addParticipant() { //3 3367 ActivityDefinitionParticipantComponent t = new ActivityDefinitionParticipantComponent(); 3368 if (this.participant == null) 3369 this.participant = new ArrayList<ActivityDefinitionParticipantComponent>(); 3370 this.participant.add(t); 3371 return t; 3372 } 3373 3374 public ActivityDefinition addParticipant(ActivityDefinitionParticipantComponent t) { //3 3375 if (t == null) 3376 return this; 3377 if (this.participant == null) 3378 this.participant = new ArrayList<ActivityDefinitionParticipantComponent>(); 3379 this.participant.add(t); 3380 return this; 3381 } 3382 3383 /** 3384 * @return The first repetition of repeating field {@link #participant}, creating it if it does not already exist 3385 */ 3386 public ActivityDefinitionParticipantComponent getParticipantFirstRep() { 3387 if (getParticipant().isEmpty()) { 3388 addParticipant(); 3389 } 3390 return getParticipant().get(0); 3391 } 3392 3393 /** 3394 * @return {@link #product} (Identifies the food, drug or other product being consumed or supplied in the activity.) 3395 */ 3396 public Type getProduct() { 3397 return this.product; 3398 } 3399 3400 /** 3401 * @return {@link #product} (Identifies the food, drug or other product being consumed or supplied in the activity.) 3402 */ 3403 public Reference getProductReference() throws FHIRException { 3404 if (this.product == null) 3405 return null; 3406 if (!(this.product instanceof Reference)) 3407 throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.product.getClass().getName()+" was encountered"); 3408 return (Reference) this.product; 3409 } 3410 3411 public boolean hasProductReference() { 3412 return this != null && this.product instanceof Reference; 3413 } 3414 3415 /** 3416 * @return {@link #product} (Identifies the food, drug or other product being consumed or supplied in the activity.) 3417 */ 3418 public CodeableConcept getProductCodeableConcept() throws FHIRException { 3419 if (this.product == null) 3420 return null; 3421 if (!(this.product instanceof CodeableConcept)) 3422 throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.product.getClass().getName()+" was encountered"); 3423 return (CodeableConcept) this.product; 3424 } 3425 3426 public boolean hasProductCodeableConcept() { 3427 return this != null && this.product instanceof CodeableConcept; 3428 } 3429 3430 public boolean hasProduct() { 3431 return this.product != null && !this.product.isEmpty(); 3432 } 3433 3434 /** 3435 * @param value {@link #product} (Identifies the food, drug or other product being consumed or supplied in the activity.) 3436 */ 3437 public ActivityDefinition setProduct(Type value) { 3438 if (value != null && !(value instanceof Reference || value instanceof CodeableConcept)) 3439 throw new Error("Not the right type for ActivityDefinition.product[x]: "+value.fhirType()); 3440 this.product = value; 3441 return this; 3442 } 3443 3444 /** 3445 * @return {@link #quantity} (Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).) 3446 */ 3447 public Quantity getQuantity() { 3448 if (this.quantity == null) 3449 if (Configuration.errorOnAutoCreate()) 3450 throw new Error("Attempt to auto-create ActivityDefinition.quantity"); 3451 else if (Configuration.doAutoCreate()) 3452 this.quantity = new Quantity(); // cc 3453 return this.quantity; 3454 } 3455 3456 public boolean hasQuantity() { 3457 return this.quantity != null && !this.quantity.isEmpty(); 3458 } 3459 3460 /** 3461 * @param value {@link #quantity} (Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).) 3462 */ 3463 public ActivityDefinition setQuantity(Quantity value) { 3464 this.quantity = value; 3465 return this; 3466 } 3467 3468 /** 3469 * @return {@link #dosage} (Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources.) 3470 */ 3471 public List<Dosage> getDosage() { 3472 if (this.dosage == null) 3473 this.dosage = new ArrayList<Dosage>(); 3474 return this.dosage; 3475 } 3476 3477 /** 3478 * @return Returns a reference to <code>this</code> for easy method chaining 3479 */ 3480 public ActivityDefinition setDosage(List<Dosage> theDosage) { 3481 this.dosage = theDosage; 3482 return this; 3483 } 3484 3485 public boolean hasDosage() { 3486 if (this.dosage == null) 3487 return false; 3488 for (Dosage item : this.dosage) 3489 if (!item.isEmpty()) 3490 return true; 3491 return false; 3492 } 3493 3494 public Dosage addDosage() { //3 3495 Dosage t = new Dosage(); 3496 if (this.dosage == null) 3497 this.dosage = new ArrayList<Dosage>(); 3498 this.dosage.add(t); 3499 return t; 3500 } 3501 3502 public ActivityDefinition addDosage(Dosage t) { //3 3503 if (t == null) 3504 return this; 3505 if (this.dosage == null) 3506 this.dosage = new ArrayList<Dosage>(); 3507 this.dosage.add(t); 3508 return this; 3509 } 3510 3511 /** 3512 * @return The first repetition of repeating field {@link #dosage}, creating it if it does not already exist 3513 */ 3514 public Dosage getDosageFirstRep() { 3515 if (getDosage().isEmpty()) { 3516 addDosage(); 3517 } 3518 return getDosage().get(0); 3519 } 3520 3521 /** 3522 * @return {@link #bodySite} (Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites).) 3523 */ 3524 public List<CodeableConcept> getBodySite() { 3525 if (this.bodySite == null) 3526 this.bodySite = new ArrayList<CodeableConcept>(); 3527 return this.bodySite; 3528 } 3529 3530 /** 3531 * @return Returns a reference to <code>this</code> for easy method chaining 3532 */ 3533 public ActivityDefinition setBodySite(List<CodeableConcept> theBodySite) { 3534 this.bodySite = theBodySite; 3535 return this; 3536 } 3537 3538 public boolean hasBodySite() { 3539 if (this.bodySite == null) 3540 return false; 3541 for (CodeableConcept item : this.bodySite) 3542 if (!item.isEmpty()) 3543 return true; 3544 return false; 3545 } 3546 3547 public CodeableConcept addBodySite() { //3 3548 CodeableConcept t = new CodeableConcept(); 3549 if (this.bodySite == null) 3550 this.bodySite = new ArrayList<CodeableConcept>(); 3551 this.bodySite.add(t); 3552 return t; 3553 } 3554 3555 public ActivityDefinition addBodySite(CodeableConcept t) { //3 3556 if (t == null) 3557 return this; 3558 if (this.bodySite == null) 3559 this.bodySite = new ArrayList<CodeableConcept>(); 3560 this.bodySite.add(t); 3561 return this; 3562 } 3563 3564 /** 3565 * @return The first repetition of repeating field {@link #bodySite}, creating it if it does not already exist 3566 */ 3567 public CodeableConcept getBodySiteFirstRep() { 3568 if (getBodySite().isEmpty()) { 3569 addBodySite(); 3570 } 3571 return getBodySite().get(0); 3572 } 3573 3574 /** 3575 * @return {@link #specimenRequirement} (Defines specimen requirements for the action to be performed, such as required specimens for a lab test.) 3576 */ 3577 public List<Reference> getSpecimenRequirement() { 3578 if (this.specimenRequirement == null) 3579 this.specimenRequirement = new ArrayList<Reference>(); 3580 return this.specimenRequirement; 3581 } 3582 3583 /** 3584 * @return Returns a reference to <code>this</code> for easy method chaining 3585 */ 3586 public ActivityDefinition setSpecimenRequirement(List<Reference> theSpecimenRequirement) { 3587 this.specimenRequirement = theSpecimenRequirement; 3588 return this; 3589 } 3590 3591 public boolean hasSpecimenRequirement() { 3592 if (this.specimenRequirement == null) 3593 return false; 3594 for (Reference item : this.specimenRequirement) 3595 if (!item.isEmpty()) 3596 return true; 3597 return false; 3598 } 3599 3600 public Reference addSpecimenRequirement() { //3 3601 Reference t = new Reference(); 3602 if (this.specimenRequirement == null) 3603 this.specimenRequirement = new ArrayList<Reference>(); 3604 this.specimenRequirement.add(t); 3605 return t; 3606 } 3607 3608 public ActivityDefinition addSpecimenRequirement(Reference t) { //3 3609 if (t == null) 3610 return this; 3611 if (this.specimenRequirement == null) 3612 this.specimenRequirement = new ArrayList<Reference>(); 3613 this.specimenRequirement.add(t); 3614 return this; 3615 } 3616 3617 /** 3618 * @return The first repetition of repeating field {@link #specimenRequirement}, creating it if it does not already exist 3619 */ 3620 public Reference getSpecimenRequirementFirstRep() { 3621 if (getSpecimenRequirement().isEmpty()) { 3622 addSpecimenRequirement(); 3623 } 3624 return getSpecimenRequirement().get(0); 3625 } 3626 3627 /** 3628 * @deprecated Use Reference#setResource(IBaseResource) instead 3629 */ 3630 @Deprecated 3631 public List<SpecimenDefinition> getSpecimenRequirementTarget() { 3632 if (this.specimenRequirementTarget == null) 3633 this.specimenRequirementTarget = new ArrayList<SpecimenDefinition>(); 3634 return this.specimenRequirementTarget; 3635 } 3636 3637 /** 3638 * @deprecated Use Reference#setResource(IBaseResource) instead 3639 */ 3640 @Deprecated 3641 public SpecimenDefinition addSpecimenRequirementTarget() { 3642 SpecimenDefinition r = new SpecimenDefinition(); 3643 if (this.specimenRequirementTarget == null) 3644 this.specimenRequirementTarget = new ArrayList<SpecimenDefinition>(); 3645 this.specimenRequirementTarget.add(r); 3646 return r; 3647 } 3648 3649 /** 3650 * @return {@link #observationRequirement} (Defines observation requirements for the action to be performed, such as body weight or surface area.) 3651 */ 3652 public List<Reference> getObservationRequirement() { 3653 if (this.observationRequirement == null) 3654 this.observationRequirement = new ArrayList<Reference>(); 3655 return this.observationRequirement; 3656 } 3657 3658 /** 3659 * @return Returns a reference to <code>this</code> for easy method chaining 3660 */ 3661 public ActivityDefinition setObservationRequirement(List<Reference> theObservationRequirement) { 3662 this.observationRequirement = theObservationRequirement; 3663 return this; 3664 } 3665 3666 public boolean hasObservationRequirement() { 3667 if (this.observationRequirement == null) 3668 return false; 3669 for (Reference item : this.observationRequirement) 3670 if (!item.isEmpty()) 3671 return true; 3672 return false; 3673 } 3674 3675 public Reference addObservationRequirement() { //3 3676 Reference t = new Reference(); 3677 if (this.observationRequirement == null) 3678 this.observationRequirement = new ArrayList<Reference>(); 3679 this.observationRequirement.add(t); 3680 return t; 3681 } 3682 3683 public ActivityDefinition addObservationRequirement(Reference t) { //3 3684 if (t == null) 3685 return this; 3686 if (this.observationRequirement == null) 3687 this.observationRequirement = new ArrayList<Reference>(); 3688 this.observationRequirement.add(t); 3689 return this; 3690 } 3691 3692 /** 3693 * @return The first repetition of repeating field {@link #observationRequirement}, creating it if it does not already exist 3694 */ 3695 public Reference getObservationRequirementFirstRep() { 3696 if (getObservationRequirement().isEmpty()) { 3697 addObservationRequirement(); 3698 } 3699 return getObservationRequirement().get(0); 3700 } 3701 3702 /** 3703 * @deprecated Use Reference#setResource(IBaseResource) instead 3704 */ 3705 @Deprecated 3706 public List<ObservationDefinition> getObservationRequirementTarget() { 3707 if (this.observationRequirementTarget == null) 3708 this.observationRequirementTarget = new ArrayList<ObservationDefinition>(); 3709 return this.observationRequirementTarget; 3710 } 3711 3712 /** 3713 * @deprecated Use Reference#setResource(IBaseResource) instead 3714 */ 3715 @Deprecated 3716 public ObservationDefinition addObservationRequirementTarget() { 3717 ObservationDefinition r = new ObservationDefinition(); 3718 if (this.observationRequirementTarget == null) 3719 this.observationRequirementTarget = new ArrayList<ObservationDefinition>(); 3720 this.observationRequirementTarget.add(r); 3721 return r; 3722 } 3723 3724 /** 3725 * @return {@link #observationResultRequirement} (Defines the observations that are expected to be produced by the action.) 3726 */ 3727 public List<Reference> getObservationResultRequirement() { 3728 if (this.observationResultRequirement == null) 3729 this.observationResultRequirement = new ArrayList<Reference>(); 3730 return this.observationResultRequirement; 3731 } 3732 3733 /** 3734 * @return Returns a reference to <code>this</code> for easy method chaining 3735 */ 3736 public ActivityDefinition setObservationResultRequirement(List<Reference> theObservationResultRequirement) { 3737 this.observationResultRequirement = theObservationResultRequirement; 3738 return this; 3739 } 3740 3741 public boolean hasObservationResultRequirement() { 3742 if (this.observationResultRequirement == null) 3743 return false; 3744 for (Reference item : this.observationResultRequirement) 3745 if (!item.isEmpty()) 3746 return true; 3747 return false; 3748 } 3749 3750 public Reference addObservationResultRequirement() { //3 3751 Reference t = new Reference(); 3752 if (this.observationResultRequirement == null) 3753 this.observationResultRequirement = new ArrayList<Reference>(); 3754 this.observationResultRequirement.add(t); 3755 return t; 3756 } 3757 3758 public ActivityDefinition addObservationResultRequirement(Reference t) { //3 3759 if (t == null) 3760 return this; 3761 if (this.observationResultRequirement == null) 3762 this.observationResultRequirement = new ArrayList<Reference>(); 3763 this.observationResultRequirement.add(t); 3764 return this; 3765 } 3766 3767 /** 3768 * @return The first repetition of repeating field {@link #observationResultRequirement}, creating it if it does not already exist 3769 */ 3770 public Reference getObservationResultRequirementFirstRep() { 3771 if (getObservationResultRequirement().isEmpty()) { 3772 addObservationResultRequirement(); 3773 } 3774 return getObservationResultRequirement().get(0); 3775 } 3776 3777 /** 3778 * @deprecated Use Reference#setResource(IBaseResource) instead 3779 */ 3780 @Deprecated 3781 public List<ObservationDefinition> getObservationResultRequirementTarget() { 3782 if (this.observationResultRequirementTarget == null) 3783 this.observationResultRequirementTarget = new ArrayList<ObservationDefinition>(); 3784 return this.observationResultRequirementTarget; 3785 } 3786 3787 /** 3788 * @deprecated Use Reference#setResource(IBaseResource) instead 3789 */ 3790 @Deprecated 3791 public ObservationDefinition addObservationResultRequirementTarget() { 3792 ObservationDefinition r = new ObservationDefinition(); 3793 if (this.observationResultRequirementTarget == null) 3794 this.observationResultRequirementTarget = new ArrayList<ObservationDefinition>(); 3795 this.observationResultRequirementTarget.add(r); 3796 return r; 3797 } 3798 3799 /** 3800 * @return {@link #transform} (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.). This is the underlying object with id, value and extensions. The accessor "getTransform" gives direct access to the value 3801 */ 3802 public CanonicalType getTransformElement() { 3803 if (this.transform == null) 3804 if (Configuration.errorOnAutoCreate()) 3805 throw new Error("Attempt to auto-create ActivityDefinition.transform"); 3806 else if (Configuration.doAutoCreate()) 3807 this.transform = new CanonicalType(); // bb 3808 return this.transform; 3809 } 3810 3811 public boolean hasTransformElement() { 3812 return this.transform != null && !this.transform.isEmpty(); 3813 } 3814 3815 public boolean hasTransform() { 3816 return this.transform != null && !this.transform.isEmpty(); 3817 } 3818 3819 /** 3820 * @param value {@link #transform} (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.). This is the underlying object with id, value and extensions. The accessor "getTransform" gives direct access to the value 3821 */ 3822 public ActivityDefinition setTransformElement(CanonicalType value) { 3823 this.transform = value; 3824 return this; 3825 } 3826 3827 /** 3828 * @return 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. 3829 */ 3830 public String getTransform() { 3831 return this.transform == null ? null : this.transform.getValue(); 3832 } 3833 3834 /** 3835 * @param value 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. 3836 */ 3837 public ActivityDefinition setTransform(String value) { 3838 if (Utilities.noString(value)) 3839 this.transform = null; 3840 else { 3841 if (this.transform == null) 3842 this.transform = new CanonicalType(); 3843 this.transform.setValue(value); 3844 } 3845 return this; 3846 } 3847 3848 /** 3849 * @return {@link #dynamicValue} (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.) 3850 */ 3851 public List<ActivityDefinitionDynamicValueComponent> getDynamicValue() { 3852 if (this.dynamicValue == null) 3853 this.dynamicValue = new ArrayList<ActivityDefinitionDynamicValueComponent>(); 3854 return this.dynamicValue; 3855 } 3856 3857 /** 3858 * @return Returns a reference to <code>this</code> for easy method chaining 3859 */ 3860 public ActivityDefinition setDynamicValue(List<ActivityDefinitionDynamicValueComponent> theDynamicValue) { 3861 this.dynamicValue = theDynamicValue; 3862 return this; 3863 } 3864 3865 public boolean hasDynamicValue() { 3866 if (this.dynamicValue == null) 3867 return false; 3868 for (ActivityDefinitionDynamicValueComponent item : this.dynamicValue) 3869 if (!item.isEmpty()) 3870 return true; 3871 return false; 3872 } 3873 3874 public ActivityDefinitionDynamicValueComponent addDynamicValue() { //3 3875 ActivityDefinitionDynamicValueComponent t = new ActivityDefinitionDynamicValueComponent(); 3876 if (this.dynamicValue == null) 3877 this.dynamicValue = new ArrayList<ActivityDefinitionDynamicValueComponent>(); 3878 this.dynamicValue.add(t); 3879 return t; 3880 } 3881 3882 public ActivityDefinition addDynamicValue(ActivityDefinitionDynamicValueComponent t) { //3 3883 if (t == null) 3884 return this; 3885 if (this.dynamicValue == null) 3886 this.dynamicValue = new ArrayList<ActivityDefinitionDynamicValueComponent>(); 3887 this.dynamicValue.add(t); 3888 return this; 3889 } 3890 3891 /** 3892 * @return The first repetition of repeating field {@link #dynamicValue}, creating it if it does not already exist 3893 */ 3894 public ActivityDefinitionDynamicValueComponent getDynamicValueFirstRep() { 3895 if (getDynamicValue().isEmpty()) { 3896 addDynamicValue(); 3897 } 3898 return getDynamicValue().get(0); 3899 } 3900 3901 protected void listChildren(List<Property> children) { 3902 super.listChildren(children); 3903 children.add(new Property("url", "uri", "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.", 0, 1, url)); 3904 children.add(new Property("identifier", "Identifier", "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.", 0, java.lang.Integer.MAX_VALUE, identifier)); 3905 children.add(new Property("version", "string", "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.", 0, 1, version)); 3906 children.add(new Property("name", "string", "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.", 0, 1, name)); 3907 children.add(new Property("title", "string", "A short, descriptive, user-friendly title for the activity definition.", 0, 1, title)); 3908 children.add(new Property("subtitle", "string", "An explanatory or alternate title for the activity definition giving additional information about its content.", 0, 1, subtitle)); 3909 children.add(new Property("status", "code", "The status of this activity definition. Enables tracking the life-cycle of the content.", 0, 1, status)); 3910 children.add(new Property("experimental", "boolean", "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.", 0, 1, experimental)); 3911 children.add(new Property("subject[x]", "CodeableConcept|Reference(Group)", "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, subject)); 3912 children.add(new Property("date", "dateTime", "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.", 0, 1, date)); 3913 children.add(new Property("publisher", "string", "The name of the organization or individual that published the activity definition.", 0, 1, publisher)); 3914 children.add(new Property("contact", "ContactDetail", "Contact details to assist a user in finding and communicating with the publisher.", 0, java.lang.Integer.MAX_VALUE, contact)); 3915 children.add(new Property("description", "markdown", "A free text natural language description of the activity definition from a consumer's perspective.", 0, 1, description)); 3916 children.add(new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate activity definition instances.", 0, java.lang.Integer.MAX_VALUE, useContext)); 3917 children.add(new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the activity definition is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction)); 3918 children.add(new Property("purpose", "markdown", "Explanation of why this activity definition is needed and why it has been designed as it has.", 0, 1, purpose)); 3919 children.add(new Property("usage", "string", "A detailed description of how the activity definition is used from a clinical perspective.", 0, 1, usage)); 3920 children.add(new Property("copyright", "markdown", "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.", 0, 1, copyright)); 3921 children.add(new Property("approvalDate", "date", "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 0, 1, approvalDate)); 3922 children.add(new Property("lastReviewDate", "date", "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 0, 1, lastReviewDate)); 3923 children.add(new Property("effectivePeriod", "Period", "The period during which the activity definition content was or is planned to be in active use.", 0, 1, effectivePeriod)); 3924 children.add(new Property("topic", "CodeableConcept", "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.", 0, java.lang.Integer.MAX_VALUE, topic)); 3925 children.add(new Property("author", "ContactDetail", "An individiual or organization primarily involved in the creation and maintenance of the content.", 0, java.lang.Integer.MAX_VALUE, author)); 3926 children.add(new Property("editor", "ContactDetail", "An individual or organization primarily responsible for internal coherence of the content.", 0, java.lang.Integer.MAX_VALUE, editor)); 3927 children.add(new Property("reviewer", "ContactDetail", "An individual or organization primarily responsible for review of some aspect of the content.", 0, java.lang.Integer.MAX_VALUE, reviewer)); 3928 children.add(new Property("endorser", "ContactDetail", "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, java.lang.Integer.MAX_VALUE, endorser)); 3929 children.add(new Property("relatedArtifact", "RelatedArtifact", "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact)); 3930 children.add(new Property("library", "canonical(Library)", "A reference to a Library resource containing any formal logic used by the activity definition.", 0, java.lang.Integer.MAX_VALUE, library)); 3931 children.add(new Property("kind", "code", "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.", 0, 1, kind)); 3932 children.add(new Property("profile", "canonical(StructureDefinition)", "A profile to which the target of the activity definition is expected to conform.", 0, 1, profile)); 3933 children.add(new Property("code", "CodeableConcept", "Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.", 0, 1, code)); 3934 children.add(new Property("intent", "code", "Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain.", 0, 1, intent)); 3935 children.add(new Property("priority", "code", "Indicates how quickly the activity should be addressed with respect to other requests.", 0, 1, priority)); 3936 children.add(new Property("doNotPerform", "boolean", "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.", 0, 1, doNotPerform)); 3937 children.add(new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing)); 3938 children.add(new Property("location", "Reference(Location)", "Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.", 0, 1, location)); 3939 children.add(new Property("participant", "", "Indicates who should participate in performing the action described.", 0, java.lang.Integer.MAX_VALUE, participant)); 3940 children.add(new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product)); 3941 children.add(new Property("quantity", "SimpleQuantity", "Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).", 0, 1, quantity)); 3942 children.add(new Property("dosage", "Dosage", "Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources.", 0, java.lang.Integer.MAX_VALUE, dosage)); 3943 children.add(new Property("bodySite", "CodeableConcept", "Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites).", 0, java.lang.Integer.MAX_VALUE, bodySite)); 3944 children.add(new Property("specimenRequirement", "Reference(SpecimenDefinition)", "Defines specimen requirements for the action to be performed, such as required specimens for a lab test.", 0, java.lang.Integer.MAX_VALUE, specimenRequirement)); 3945 children.add(new Property("observationRequirement", "Reference(ObservationDefinition)", "Defines observation requirements for the action to be performed, such as body weight or surface area.", 0, java.lang.Integer.MAX_VALUE, observationRequirement)); 3946 children.add(new Property("observationResultRequirement", "Reference(ObservationDefinition)", "Defines the observations that are expected to be produced by the action.", 0, java.lang.Integer.MAX_VALUE, observationResultRequirement)); 3947 children.add(new Property("transform", "canonical(StructureMap)", "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.", 0, 1, transform)); 3948 children.add(new Property("dynamicValue", "", "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.", 0, java.lang.Integer.MAX_VALUE, dynamicValue)); 3949 } 3950 3951 @Override 3952 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 3953 switch (_hash) { 3954 case 116079: /*url*/ return new Property("url", "uri", "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.", 0, 1, url); 3955 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "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.", 0, java.lang.Integer.MAX_VALUE, identifier); 3956 case 351608024: /*version*/ return new Property("version", "string", "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.", 0, 1, version); 3957 case 3373707: /*name*/ return new Property("name", "string", "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.", 0, 1, name); 3958 case 110371416: /*title*/ return new Property("title", "string", "A short, descriptive, user-friendly title for the activity definition.", 0, 1, title); 3959 case -2060497896: /*subtitle*/ return new Property("subtitle", "string", "An explanatory or alternate title for the activity definition giving additional information about its content.", 0, 1, subtitle); 3960 case -892481550: /*status*/ return new Property("status", "code", "The status of this activity definition. Enables tracking the life-cycle of the content.", 0, 1, status); 3961 case -404562712: /*experimental*/ return new Property("experimental", "boolean", "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.", 0, 1, experimental); 3962 case -573640748: /*subject[x]*/ return new Property("subject[x]", "CodeableConcept|Reference(Group)", "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, subject); 3963 case -1867885268: /*subject*/ return new Property("subject[x]", "CodeableConcept|Reference(Group)", "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, subject); 3964 case -1257122603: /*subjectCodeableConcept*/ return new Property("subject[x]", "CodeableConcept|Reference(Group)", "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, subject); 3965 case 772938623: /*subjectReference*/ return new Property("subject[x]", "CodeableConcept|Reference(Group)", "A code or group definition that describes the intended subject of the activity being defined.", 0, 1, subject); 3966 case 3076014: /*date*/ return new Property("date", "dateTime", "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.", 0, 1, date); 3967 case 1447404028: /*publisher*/ return new Property("publisher", "string", "The name of the organization or individual that published the activity definition.", 0, 1, publisher); 3968 case 951526432: /*contact*/ return new Property("contact", "ContactDetail", "Contact details to assist a user in finding and communicating with the publisher.", 0, java.lang.Integer.MAX_VALUE, contact); 3969 case -1724546052: /*description*/ return new Property("description", "markdown", "A free text natural language description of the activity definition from a consumer's perspective.", 0, 1, description); 3970 case -669707736: /*useContext*/ return new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate activity definition instances.", 0, java.lang.Integer.MAX_VALUE, useContext); 3971 case -507075711: /*jurisdiction*/ return new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the activity definition is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction); 3972 case -220463842: /*purpose*/ return new Property("purpose", "markdown", "Explanation of why this activity definition is needed and why it has been designed as it has.", 0, 1, purpose); 3973 case 111574433: /*usage*/ return new Property("usage", "string", "A detailed description of how the activity definition is used from a clinical perspective.", 0, 1, usage); 3974 case 1522889671: /*copyright*/ return new Property("copyright", "markdown", "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.", 0, 1, copyright); 3975 case 223539345: /*approvalDate*/ return new Property("approvalDate", "date", "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 0, 1, approvalDate); 3976 case -1687512484: /*lastReviewDate*/ return new Property("lastReviewDate", "date", "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 0, 1, lastReviewDate); 3977 case -403934648: /*effectivePeriod*/ return new Property("effectivePeriod", "Period", "The period during which the activity definition content was or is planned to be in active use.", 0, 1, effectivePeriod); 3978 case 110546223: /*topic*/ return new Property("topic", "CodeableConcept", "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.", 0, java.lang.Integer.MAX_VALUE, topic); 3979 case -1406328437: /*author*/ return new Property("author", "ContactDetail", "An individiual or organization primarily involved in the creation and maintenance of the content.", 0, java.lang.Integer.MAX_VALUE, author); 3980 case -1307827859: /*editor*/ return new Property("editor", "ContactDetail", "An individual or organization primarily responsible for internal coherence of the content.", 0, java.lang.Integer.MAX_VALUE, editor); 3981 case -261190139: /*reviewer*/ return new Property("reviewer", "ContactDetail", "An individual or organization primarily responsible for review of some aspect of the content.", 0, java.lang.Integer.MAX_VALUE, reviewer); 3982 case 1740277666: /*endorser*/ return new Property("endorser", "ContactDetail", "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, java.lang.Integer.MAX_VALUE, endorser); 3983 case 666807069: /*relatedArtifact*/ return new Property("relatedArtifact", "RelatedArtifact", "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact); 3984 case 166208699: /*library*/ return new Property("library", "canonical(Library)", "A reference to a Library resource containing any formal logic used by the activity definition.", 0, java.lang.Integer.MAX_VALUE, library); 3985 case 3292052: /*kind*/ return new Property("kind", "code", "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.", 0, 1, kind); 3986 case -309425751: /*profile*/ return new Property("profile", "canonical(StructureDefinition)", "A profile to which the target of the activity definition is expected to conform.", 0, 1, profile); 3987 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "Detailed description of the type of activity; e.g. What lab test, what procedure, what kind of encounter.", 0, 1, code); 3988 case -1183762788: /*intent*/ return new Property("intent", "code", "Indicates the level of authority/intentionality associated with the activity and where the request should fit into the workflow chain.", 0, 1, intent); 3989 case -1165461084: /*priority*/ return new Property("priority", "code", "Indicates how quickly the activity should be addressed with respect to other requests.", 0, 1, priority); 3990 case -1788508167: /*doNotPerform*/ return new Property("doNotPerform", "boolean", "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.", 0, 1, doNotPerform); 3991 case 164632566: /*timing[x]*/ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 3992 case -873664438: /*timing*/ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 3993 case -497554124: /*timingTiming*/ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 3994 case -1837458939: /*timingDateTime*/ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 3995 case 164607061: /*timingAge*/ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 3996 case -615615829: /*timingPeriod*/ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 3997 case -710871277: /*timingRange*/ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 3998 case -1327253506: /*timingDuration*/ return new Property("timing[x]", "Timing|dateTime|Age|Period|Range|Duration", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, timing); 3999 case 1901043637: /*location*/ return new Property("location", "Reference(Location)", "Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.", 0, 1, location); 4000 case 767422259: /*participant*/ return new Property("participant", "", "Indicates who should participate in performing the action described.", 0, java.lang.Integer.MAX_VALUE, participant); 4001 case 1753005361: /*product[x]*/ return new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product); 4002 case -309474065: /*product*/ return new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product); 4003 case -669667556: /*productReference*/ return new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product); 4004 case 906854066: /*productCodeableConcept*/ return new Property("product[x]", "Reference(Medication|Substance)|CodeableConcept", "Identifies the food, drug or other product being consumed or supplied in the activity.", 0, 1, product); 4005 case -1285004149: /*quantity*/ return new Property("quantity", "SimpleQuantity", "Identifies the quantity expected to be consumed at once (per dose, per meal, etc.).", 0, 1, quantity); 4006 case -1326018889: /*dosage*/ return new Property("dosage", "Dosage", "Provides detailed dosage instructions in the same way that they are described for MedicationRequest resources.", 0, java.lang.Integer.MAX_VALUE, dosage); 4007 case 1702620169: /*bodySite*/ return new Property("bodySite", "CodeableConcept", "Indicates the sites on the subject's body where the procedure should be performed (I.e. the target sites).", 0, java.lang.Integer.MAX_VALUE, bodySite); 4008 case 1498467355: /*specimenRequirement*/ return new Property("specimenRequirement", "Reference(SpecimenDefinition)", "Defines specimen requirements for the action to be performed, such as required specimens for a lab test.", 0, java.lang.Integer.MAX_VALUE, specimenRequirement); 4009 case 362354807: /*observationRequirement*/ return new Property("observationRequirement", "Reference(ObservationDefinition)", "Defines observation requirements for the action to be performed, such as body weight or surface area.", 0, java.lang.Integer.MAX_VALUE, observationRequirement); 4010 case 395230490: /*observationResultRequirement*/ return new Property("observationResultRequirement", "Reference(ObservationDefinition)", "Defines the observations that are expected to be produced by the action.", 0, java.lang.Integer.MAX_VALUE, observationResultRequirement); 4011 case 1052666732: /*transform*/ return new Property("transform", "canonical(StructureMap)", "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.", 0, 1, transform); 4012 case 572625010: /*dynamicValue*/ return new Property("dynamicValue", "", "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.", 0, java.lang.Integer.MAX_VALUE, dynamicValue); 4013 default: return super.getNamedProperty(_hash, _name, _checkValid); 4014 } 4015 4016 } 4017 4018 @Override 4019 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 4020 switch (hash) { 4021 case 116079: /*url*/ return this.url == null ? new Base[0] : new Base[] {this.url}; // UriType 4022 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 4023 case 351608024: /*version*/ return this.version == null ? new Base[0] : new Base[] {this.version}; // StringType 4024 case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType 4025 case 110371416: /*title*/ return this.title == null ? new Base[0] : new Base[] {this.title}; // StringType 4026 case -2060497896: /*subtitle*/ return this.subtitle == null ? new Base[0] : new Base[] {this.subtitle}; // StringType 4027 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<PublicationStatus> 4028 case -404562712: /*experimental*/ return this.experimental == null ? new Base[0] : new Base[] {this.experimental}; // BooleanType 4029 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Type 4030 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 4031 case 1447404028: /*publisher*/ return this.publisher == null ? new Base[0] : new Base[] {this.publisher}; // StringType 4032 case 951526432: /*contact*/ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactDetail 4033 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType 4034 case -669707736: /*useContext*/ return this.useContext == null ? new Base[0] : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 4035 case -507075711: /*jurisdiction*/ return this.jurisdiction == null ? new Base[0] : this.jurisdiction.toArray(new Base[this.jurisdiction.size()]); // CodeableConcept 4036 case -220463842: /*purpose*/ return this.purpose == null ? new Base[0] : new Base[] {this.purpose}; // MarkdownType 4037 case 111574433: /*usage*/ return this.usage == null ? new Base[0] : new Base[] {this.usage}; // StringType 4038 case 1522889671: /*copyright*/ return this.copyright == null ? new Base[0] : new Base[] {this.copyright}; // MarkdownType 4039 case 223539345: /*approvalDate*/ return this.approvalDate == null ? new Base[0] : new Base[] {this.approvalDate}; // DateType 4040 case -1687512484: /*lastReviewDate*/ return this.lastReviewDate == null ? new Base[0] : new Base[] {this.lastReviewDate}; // DateType 4041 case -403934648: /*effectivePeriod*/ return this.effectivePeriod == null ? new Base[0] : new Base[] {this.effectivePeriod}; // Period 4042 case 110546223: /*topic*/ return this.topic == null ? new Base[0] : this.topic.toArray(new Base[this.topic.size()]); // CodeableConcept 4043 case -1406328437: /*author*/ return this.author == null ? new Base[0] : this.author.toArray(new Base[this.author.size()]); // ContactDetail 4044 case -1307827859: /*editor*/ return this.editor == null ? new Base[0] : this.editor.toArray(new Base[this.editor.size()]); // ContactDetail 4045 case -261190139: /*reviewer*/ return this.reviewer == null ? new Base[0] : this.reviewer.toArray(new Base[this.reviewer.size()]); // ContactDetail 4046 case 1740277666: /*endorser*/ return this.endorser == null ? new Base[0] : this.endorser.toArray(new Base[this.endorser.size()]); // ContactDetail 4047 case 666807069: /*relatedArtifact*/ return this.relatedArtifact == null ? new Base[0] : this.relatedArtifact.toArray(new Base[this.relatedArtifact.size()]); // RelatedArtifact 4048 case 166208699: /*library*/ return this.library == null ? new Base[0] : this.library.toArray(new Base[this.library.size()]); // CanonicalType 4049 case 3292052: /*kind*/ return this.kind == null ? new Base[0] : new Base[] {this.kind}; // Enumeration<ActivityDefinitionKind> 4050 case -309425751: /*profile*/ return this.profile == null ? new Base[0] : new Base[] {this.profile}; // CanonicalType 4051 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 4052 case -1183762788: /*intent*/ return this.intent == null ? new Base[0] : new Base[] {this.intent}; // Enumeration<RequestIntent> 4053 case -1165461084: /*priority*/ return this.priority == null ? new Base[0] : new Base[] {this.priority}; // Enumeration<RequestPriority> 4054 case -1788508167: /*doNotPerform*/ return this.doNotPerform == null ? new Base[0] : new Base[] {this.doNotPerform}; // BooleanType 4055 case -873664438: /*timing*/ return this.timing == null ? new Base[0] : new Base[] {this.timing}; // Type 4056 case 1901043637: /*location*/ return this.location == null ? new Base[0] : new Base[] {this.location}; // Reference 4057 case 767422259: /*participant*/ return this.participant == null ? new Base[0] : this.participant.toArray(new Base[this.participant.size()]); // ActivityDefinitionParticipantComponent 4058 case -309474065: /*product*/ return this.product == null ? new Base[0] : new Base[] {this.product}; // Type 4059 case -1285004149: /*quantity*/ return this.quantity == null ? new Base[0] : new Base[] {this.quantity}; // Quantity 4060 case -1326018889: /*dosage*/ return this.dosage == null ? new Base[0] : this.dosage.toArray(new Base[this.dosage.size()]); // Dosage 4061 case 1702620169: /*bodySite*/ return this.bodySite == null ? new Base[0] : this.bodySite.toArray(new Base[this.bodySite.size()]); // CodeableConcept 4062 case 1498467355: /*specimenRequirement*/ return this.specimenRequirement == null ? new Base[0] : this.specimenRequirement.toArray(new Base[this.specimenRequirement.size()]); // Reference 4063 case 362354807: /*observationRequirement*/ return this.observationRequirement == null ? new Base[0] : this.observationRequirement.toArray(new Base[this.observationRequirement.size()]); // Reference 4064 case 395230490: /*observationResultRequirement*/ return this.observationResultRequirement == null ? new Base[0] : this.observationResultRequirement.toArray(new Base[this.observationResultRequirement.size()]); // Reference 4065 case 1052666732: /*transform*/ return this.transform == null ? new Base[0] : new Base[] {this.transform}; // CanonicalType 4066 case 572625010: /*dynamicValue*/ return this.dynamicValue == null ? new Base[0] : this.dynamicValue.toArray(new Base[this.dynamicValue.size()]); // ActivityDefinitionDynamicValueComponent 4067 default: return super.getProperty(hash, name, checkValid); 4068 } 4069 4070 } 4071 4072 @Override 4073 public Base setProperty(int hash, String name, Base value) throws FHIRException { 4074 switch (hash) { 4075 case 116079: // url 4076 this.url = castToUri(value); // UriType 4077 return value; 4078 case -1618432855: // identifier 4079 this.getIdentifier().add(castToIdentifier(value)); // Identifier 4080 return value; 4081 case 351608024: // version 4082 this.version = castToString(value); // StringType 4083 return value; 4084 case 3373707: // name 4085 this.name = castToString(value); // StringType 4086 return value; 4087 case 110371416: // title 4088 this.title = castToString(value); // StringType 4089 return value; 4090 case -2060497896: // subtitle 4091 this.subtitle = castToString(value); // StringType 4092 return value; 4093 case -892481550: // status 4094 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 4095 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 4096 return value; 4097 case -404562712: // experimental 4098 this.experimental = castToBoolean(value); // BooleanType 4099 return value; 4100 case -1867885268: // subject 4101 this.subject = castToType(value); // Type 4102 return value; 4103 case 3076014: // date 4104 this.date = castToDateTime(value); // DateTimeType 4105 return value; 4106 case 1447404028: // publisher 4107 this.publisher = castToString(value); // StringType 4108 return value; 4109 case 951526432: // contact 4110 this.getContact().add(castToContactDetail(value)); // ContactDetail 4111 return value; 4112 case -1724546052: // description 4113 this.description = castToMarkdown(value); // MarkdownType 4114 return value; 4115 case -669707736: // useContext 4116 this.getUseContext().add(castToUsageContext(value)); // UsageContext 4117 return value; 4118 case -507075711: // jurisdiction 4119 this.getJurisdiction().add(castToCodeableConcept(value)); // CodeableConcept 4120 return value; 4121 case -220463842: // purpose 4122 this.purpose = castToMarkdown(value); // MarkdownType 4123 return value; 4124 case 111574433: // usage 4125 this.usage = castToString(value); // StringType 4126 return value; 4127 case 1522889671: // copyright 4128 this.copyright = castToMarkdown(value); // MarkdownType 4129 return value; 4130 case 223539345: // approvalDate 4131 this.approvalDate = castToDate(value); // DateType 4132 return value; 4133 case -1687512484: // lastReviewDate 4134 this.lastReviewDate = castToDate(value); // DateType 4135 return value; 4136 case -403934648: // effectivePeriod 4137 this.effectivePeriod = castToPeriod(value); // Period 4138 return value; 4139 case 110546223: // topic 4140 this.getTopic().add(castToCodeableConcept(value)); // CodeableConcept 4141 return value; 4142 case -1406328437: // author 4143 this.getAuthor().add(castToContactDetail(value)); // ContactDetail 4144 return value; 4145 case -1307827859: // editor 4146 this.getEditor().add(castToContactDetail(value)); // ContactDetail 4147 return value; 4148 case -261190139: // reviewer 4149 this.getReviewer().add(castToContactDetail(value)); // ContactDetail 4150 return value; 4151 case 1740277666: // endorser 4152 this.getEndorser().add(castToContactDetail(value)); // ContactDetail 4153 return value; 4154 case 666807069: // relatedArtifact 4155 this.getRelatedArtifact().add(castToRelatedArtifact(value)); // RelatedArtifact 4156 return value; 4157 case 166208699: // library 4158 this.getLibrary().add(castToCanonical(value)); // CanonicalType 4159 return value; 4160 case 3292052: // kind 4161 value = new ActivityDefinitionKindEnumFactory().fromType(castToCode(value)); 4162 this.kind = (Enumeration) value; // Enumeration<ActivityDefinitionKind> 4163 return value; 4164 case -309425751: // profile 4165 this.profile = castToCanonical(value); // CanonicalType 4166 return value; 4167 case 3059181: // code 4168 this.code = castToCodeableConcept(value); // CodeableConcept 4169 return value; 4170 case -1183762788: // intent 4171 value = new RequestIntentEnumFactory().fromType(castToCode(value)); 4172 this.intent = (Enumeration) value; // Enumeration<RequestIntent> 4173 return value; 4174 case -1165461084: // priority 4175 value = new RequestPriorityEnumFactory().fromType(castToCode(value)); 4176 this.priority = (Enumeration) value; // Enumeration<RequestPriority> 4177 return value; 4178 case -1788508167: // doNotPerform 4179 this.doNotPerform = castToBoolean(value); // BooleanType 4180 return value; 4181 case -873664438: // timing 4182 this.timing = castToType(value); // Type 4183 return value; 4184 case 1901043637: // location 4185 this.location = castToReference(value); // Reference 4186 return value; 4187 case 767422259: // participant 4188 this.getParticipant().add((ActivityDefinitionParticipantComponent) value); // ActivityDefinitionParticipantComponent 4189 return value; 4190 case -309474065: // product 4191 this.product = castToType(value); // Type 4192 return value; 4193 case -1285004149: // quantity 4194 this.quantity = castToQuantity(value); // Quantity 4195 return value; 4196 case -1326018889: // dosage 4197 this.getDosage().add(castToDosage(value)); // Dosage 4198 return value; 4199 case 1702620169: // bodySite 4200 this.getBodySite().add(castToCodeableConcept(value)); // CodeableConcept 4201 return value; 4202 case 1498467355: // specimenRequirement 4203 this.getSpecimenRequirement().add(castToReference(value)); // Reference 4204 return value; 4205 case 362354807: // observationRequirement 4206 this.getObservationRequirement().add(castToReference(value)); // Reference 4207 return value; 4208 case 395230490: // observationResultRequirement 4209 this.getObservationResultRequirement().add(castToReference(value)); // Reference 4210 return value; 4211 case 1052666732: // transform 4212 this.transform = castToCanonical(value); // CanonicalType 4213 return value; 4214 case 572625010: // dynamicValue 4215 this.getDynamicValue().add((ActivityDefinitionDynamicValueComponent) value); // ActivityDefinitionDynamicValueComponent 4216 return value; 4217 default: return super.setProperty(hash, name, value); 4218 } 4219 4220 } 4221 4222 @Override 4223 public Base setProperty(String name, Base value) throws FHIRException { 4224 if (name.equals("url")) { 4225 this.url = castToUri(value); // UriType 4226 } else if (name.equals("identifier")) { 4227 this.getIdentifier().add(castToIdentifier(value)); 4228 } else if (name.equals("version")) { 4229 this.version = castToString(value); // StringType 4230 } else if (name.equals("name")) { 4231 this.name = castToString(value); // StringType 4232 } else if (name.equals("title")) { 4233 this.title = castToString(value); // StringType 4234 } else if (name.equals("subtitle")) { 4235 this.subtitle = castToString(value); // StringType 4236 } else if (name.equals("status")) { 4237 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 4238 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 4239 } else if (name.equals("experimental")) { 4240 this.experimental = castToBoolean(value); // BooleanType 4241 } else if (name.equals("subject[x]")) { 4242 this.subject = castToType(value); // Type 4243 } else if (name.equals("date")) { 4244 this.date = castToDateTime(value); // DateTimeType 4245 } else if (name.equals("publisher")) { 4246 this.publisher = castToString(value); // StringType 4247 } else if (name.equals("contact")) { 4248 this.getContact().add(castToContactDetail(value)); 4249 } else if (name.equals("description")) { 4250 this.description = castToMarkdown(value); // MarkdownType 4251 } else if (name.equals("useContext")) { 4252 this.getUseContext().add(castToUsageContext(value)); 4253 } else if (name.equals("jurisdiction")) { 4254 this.getJurisdiction().add(castToCodeableConcept(value)); 4255 } else if (name.equals("purpose")) { 4256 this.purpose = castToMarkdown(value); // MarkdownType 4257 } else if (name.equals("usage")) { 4258 this.usage = castToString(value); // StringType 4259 } else if (name.equals("copyright")) { 4260 this.copyright = castToMarkdown(value); // MarkdownType 4261 } else if (name.equals("approvalDate")) { 4262 this.approvalDate = castToDate(value); // DateType 4263 } else if (name.equals("lastReviewDate")) { 4264 this.lastReviewDate = castToDate(value); // DateType 4265 } else if (name.equals("effectivePeriod")) { 4266 this.effectivePeriod = castToPeriod(value); // Period 4267 } else if (name.equals("topic")) { 4268 this.getTopic().add(castToCodeableConcept(value)); 4269 } else if (name.equals("author")) { 4270 this.getAuthor().add(castToContactDetail(value)); 4271 } else if (name.equals("editor")) { 4272 this.getEditor().add(castToContactDetail(value)); 4273 } else if (name.equals("reviewer")) { 4274 this.getReviewer().add(castToContactDetail(value)); 4275 } else if (name.equals("endorser")) { 4276 this.getEndorser().add(castToContactDetail(value)); 4277 } else if (name.equals("relatedArtifact")) { 4278 this.getRelatedArtifact().add(castToRelatedArtifact(value)); 4279 } else if (name.equals("library")) { 4280 this.getLibrary().add(castToCanonical(value)); 4281 } else if (name.equals("kind")) { 4282 value = new ActivityDefinitionKindEnumFactory().fromType(castToCode(value)); 4283 this.kind = (Enumeration) value; // Enumeration<ActivityDefinitionKind> 4284 } else if (name.equals("profile")) { 4285 this.profile = castToCanonical(value); // CanonicalType 4286 } else if (name.equals("code")) { 4287 this.code = castToCodeableConcept(value); // CodeableConcept 4288 } else if (name.equals("intent")) { 4289 value = new RequestIntentEnumFactory().fromType(castToCode(value)); 4290 this.intent = (Enumeration) value; // Enumeration<RequestIntent> 4291 } else if (name.equals("priority")) { 4292 value = new RequestPriorityEnumFactory().fromType(castToCode(value)); 4293 this.priority = (Enumeration) value; // Enumeration<RequestPriority> 4294 } else if (name.equals("doNotPerform")) { 4295 this.doNotPerform = castToBoolean(value); // BooleanType 4296 } else if (name.equals("timing[x]")) { 4297 this.timing = castToType(value); // Type 4298 } else if (name.equals("location")) { 4299 this.location = castToReference(value); // Reference 4300 } else if (name.equals("participant")) { 4301 this.getParticipant().add((ActivityDefinitionParticipantComponent) value); 4302 } else if (name.equals("product[x]")) { 4303 this.product = castToType(value); // Type 4304 } else if (name.equals("quantity")) { 4305 this.quantity = castToQuantity(value); // Quantity 4306 } else if (name.equals("dosage")) { 4307 this.getDosage().add(castToDosage(value)); 4308 } else if (name.equals("bodySite")) { 4309 this.getBodySite().add(castToCodeableConcept(value)); 4310 } else if (name.equals("specimenRequirement")) { 4311 this.getSpecimenRequirement().add(castToReference(value)); 4312 } else if (name.equals("observationRequirement")) { 4313 this.getObservationRequirement().add(castToReference(value)); 4314 } else if (name.equals("observationResultRequirement")) { 4315 this.getObservationResultRequirement().add(castToReference(value)); 4316 } else if (name.equals("transform")) { 4317 this.transform = castToCanonical(value); // CanonicalType 4318 } else if (name.equals("dynamicValue")) { 4319 this.getDynamicValue().add((ActivityDefinitionDynamicValueComponent) value); 4320 } else 4321 return super.setProperty(name, value); 4322 return value; 4323 } 4324 4325 @Override 4326 public Base makeProperty(int hash, String name) throws FHIRException { 4327 switch (hash) { 4328 case 116079: return getUrlElement(); 4329 case -1618432855: return addIdentifier(); 4330 case 351608024: return getVersionElement(); 4331 case 3373707: return getNameElement(); 4332 case 110371416: return getTitleElement(); 4333 case -2060497896: return getSubtitleElement(); 4334 case -892481550: return getStatusElement(); 4335 case -404562712: return getExperimentalElement(); 4336 case -573640748: return getSubject(); 4337 case -1867885268: return getSubject(); 4338 case 3076014: return getDateElement(); 4339 case 1447404028: return getPublisherElement(); 4340 case 951526432: return addContact(); 4341 case -1724546052: return getDescriptionElement(); 4342 case -669707736: return addUseContext(); 4343 case -507075711: return addJurisdiction(); 4344 case -220463842: return getPurposeElement(); 4345 case 111574433: return getUsageElement(); 4346 case 1522889671: return getCopyrightElement(); 4347 case 223539345: return getApprovalDateElement(); 4348 case -1687512484: return getLastReviewDateElement(); 4349 case -403934648: return getEffectivePeriod(); 4350 case 110546223: return addTopic(); 4351 case -1406328437: return addAuthor(); 4352 case -1307827859: return addEditor(); 4353 case -261190139: return addReviewer(); 4354 case 1740277666: return addEndorser(); 4355 case 666807069: return addRelatedArtifact(); 4356 case 166208699: return addLibraryElement(); 4357 case 3292052: return getKindElement(); 4358 case -309425751: return getProfileElement(); 4359 case 3059181: return getCode(); 4360 case -1183762788: return getIntentElement(); 4361 case -1165461084: return getPriorityElement(); 4362 case -1788508167: return getDoNotPerformElement(); 4363 case 164632566: return getTiming(); 4364 case -873664438: return getTiming(); 4365 case 1901043637: return getLocation(); 4366 case 767422259: return addParticipant(); 4367 case 1753005361: return getProduct(); 4368 case -309474065: return getProduct(); 4369 case -1285004149: return getQuantity(); 4370 case -1326018889: return addDosage(); 4371 case 1702620169: return addBodySite(); 4372 case 1498467355: return addSpecimenRequirement(); 4373 case 362354807: return addObservationRequirement(); 4374 case 395230490: return addObservationResultRequirement(); 4375 case 1052666732: return getTransformElement(); 4376 case 572625010: return addDynamicValue(); 4377 default: return super.makeProperty(hash, name); 4378 } 4379 4380 } 4381 4382 @Override 4383 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 4384 switch (hash) { 4385 case 116079: /*url*/ return new String[] {"uri"}; 4386 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 4387 case 351608024: /*version*/ return new String[] {"string"}; 4388 case 3373707: /*name*/ return new String[] {"string"}; 4389 case 110371416: /*title*/ return new String[] {"string"}; 4390 case -2060497896: /*subtitle*/ return new String[] {"string"}; 4391 case -892481550: /*status*/ return new String[] {"code"}; 4392 case -404562712: /*experimental*/ return new String[] {"boolean"}; 4393 case -1867885268: /*subject*/ return new String[] {"CodeableConcept", "Reference"}; 4394 case 3076014: /*date*/ return new String[] {"dateTime"}; 4395 case 1447404028: /*publisher*/ return new String[] {"string"}; 4396 case 951526432: /*contact*/ return new String[] {"ContactDetail"}; 4397 case -1724546052: /*description*/ return new String[] {"markdown"}; 4398 case -669707736: /*useContext*/ return new String[] {"UsageContext"}; 4399 case -507075711: /*jurisdiction*/ return new String[] {"CodeableConcept"}; 4400 case -220463842: /*purpose*/ return new String[] {"markdown"}; 4401 case 111574433: /*usage*/ return new String[] {"string"}; 4402 case 1522889671: /*copyright*/ return new String[] {"markdown"}; 4403 case 223539345: /*approvalDate*/ return new String[] {"date"}; 4404 case -1687512484: /*lastReviewDate*/ return new String[] {"date"}; 4405 case -403934648: /*effectivePeriod*/ return new String[] {"Period"}; 4406 case 110546223: /*topic*/ return new String[] {"CodeableConcept"}; 4407 case -1406328437: /*author*/ return new String[] {"ContactDetail"}; 4408 case -1307827859: /*editor*/ return new String[] {"ContactDetail"}; 4409 case -261190139: /*reviewer*/ return new String[] {"ContactDetail"}; 4410 case 1740277666: /*endorser*/ return new String[] {"ContactDetail"}; 4411 case 666807069: /*relatedArtifact*/ return new String[] {"RelatedArtifact"}; 4412 case 166208699: /*library*/ return new String[] {"canonical"}; 4413 case 3292052: /*kind*/ return new String[] {"code"}; 4414 case -309425751: /*profile*/ return new String[] {"canonical"}; 4415 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 4416 case -1183762788: /*intent*/ return new String[] {"code"}; 4417 case -1165461084: /*priority*/ return new String[] {"code"}; 4418 case -1788508167: /*doNotPerform*/ return new String[] {"boolean"}; 4419 case -873664438: /*timing*/ return new String[] {"Timing", "dateTime", "Age", "Period", "Range", "Duration"}; 4420 case 1901043637: /*location*/ return new String[] {"Reference"}; 4421 case 767422259: /*participant*/ return new String[] {}; 4422 case -309474065: /*product*/ return new String[] {"Reference", "CodeableConcept"}; 4423 case -1285004149: /*quantity*/ return new String[] {"SimpleQuantity"}; 4424 case -1326018889: /*dosage*/ return new String[] {"Dosage"}; 4425 case 1702620169: /*bodySite*/ return new String[] {"CodeableConcept"}; 4426 case 1498467355: /*specimenRequirement*/ return new String[] {"Reference"}; 4427 case 362354807: /*observationRequirement*/ return new String[] {"Reference"}; 4428 case 395230490: /*observationResultRequirement*/ return new String[] {"Reference"}; 4429 case 1052666732: /*transform*/ return new String[] {"canonical"}; 4430 case 572625010: /*dynamicValue*/ return new String[] {}; 4431 default: return super.getTypesForProperty(hash, name); 4432 } 4433 4434 } 4435 4436 @Override 4437 public Base addChild(String name) throws FHIRException { 4438 if (name.equals("url")) { 4439 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.url"); 4440 } 4441 else if (name.equals("identifier")) { 4442 return addIdentifier(); 4443 } 4444 else if (name.equals("version")) { 4445 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.version"); 4446 } 4447 else if (name.equals("name")) { 4448 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.name"); 4449 } 4450 else if (name.equals("title")) { 4451 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.title"); 4452 } 4453 else if (name.equals("subtitle")) { 4454 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.subtitle"); 4455 } 4456 else if (name.equals("status")) { 4457 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.status"); 4458 } 4459 else if (name.equals("experimental")) { 4460 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.experimental"); 4461 } 4462 else if (name.equals("subjectCodeableConcept")) { 4463 this.subject = new CodeableConcept(); 4464 return this.subject; 4465 } 4466 else if (name.equals("subjectReference")) { 4467 this.subject = new Reference(); 4468 return this.subject; 4469 } 4470 else if (name.equals("date")) { 4471 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.date"); 4472 } 4473 else if (name.equals("publisher")) { 4474 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.publisher"); 4475 } 4476 else if (name.equals("contact")) { 4477 return addContact(); 4478 } 4479 else if (name.equals("description")) { 4480 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.description"); 4481 } 4482 else if (name.equals("useContext")) { 4483 return addUseContext(); 4484 } 4485 else if (name.equals("jurisdiction")) { 4486 return addJurisdiction(); 4487 } 4488 else if (name.equals("purpose")) { 4489 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.purpose"); 4490 } 4491 else if (name.equals("usage")) { 4492 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.usage"); 4493 } 4494 else if (name.equals("copyright")) { 4495 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.copyright"); 4496 } 4497 else if (name.equals("approvalDate")) { 4498 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.approvalDate"); 4499 } 4500 else if (name.equals("lastReviewDate")) { 4501 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.lastReviewDate"); 4502 } 4503 else if (name.equals("effectivePeriod")) { 4504 this.effectivePeriod = new Period(); 4505 return this.effectivePeriod; 4506 } 4507 else if (name.equals("topic")) { 4508 return addTopic(); 4509 } 4510 else if (name.equals("author")) { 4511 return addAuthor(); 4512 } 4513 else if (name.equals("editor")) { 4514 return addEditor(); 4515 } 4516 else if (name.equals("reviewer")) { 4517 return addReviewer(); 4518 } 4519 else if (name.equals("endorser")) { 4520 return addEndorser(); 4521 } 4522 else if (name.equals("relatedArtifact")) { 4523 return addRelatedArtifact(); 4524 } 4525 else if (name.equals("library")) { 4526 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.library"); 4527 } 4528 else if (name.equals("kind")) { 4529 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.kind"); 4530 } 4531 else if (name.equals("profile")) { 4532 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.profile"); 4533 } 4534 else if (name.equals("code")) { 4535 this.code = new CodeableConcept(); 4536 return this.code; 4537 } 4538 else if (name.equals("intent")) { 4539 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.intent"); 4540 } 4541 else if (name.equals("priority")) { 4542 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.priority"); 4543 } 4544 else if (name.equals("doNotPerform")) { 4545 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.doNotPerform"); 4546 } 4547 else if (name.equals("timingTiming")) { 4548 this.timing = new Timing(); 4549 return this.timing; 4550 } 4551 else if (name.equals("timingDateTime")) { 4552 this.timing = new DateTimeType(); 4553 return this.timing; 4554 } 4555 else if (name.equals("timingAge")) { 4556 this.timing = new Age(); 4557 return this.timing; 4558 } 4559 else if (name.equals("timingPeriod")) { 4560 this.timing = new Period(); 4561 return this.timing; 4562 } 4563 else if (name.equals("timingRange")) { 4564 this.timing = new Range(); 4565 return this.timing; 4566 } 4567 else if (name.equals("timingDuration")) { 4568 this.timing = new Duration(); 4569 return this.timing; 4570 } 4571 else if (name.equals("location")) { 4572 this.location = new Reference(); 4573 return this.location; 4574 } 4575 else if (name.equals("participant")) { 4576 return addParticipant(); 4577 } 4578 else if (name.equals("productReference")) { 4579 this.product = new Reference(); 4580 return this.product; 4581 } 4582 else if (name.equals("productCodeableConcept")) { 4583 this.product = new CodeableConcept(); 4584 return this.product; 4585 } 4586 else if (name.equals("quantity")) { 4587 this.quantity = new Quantity(); 4588 return this.quantity; 4589 } 4590 else if (name.equals("dosage")) { 4591 return addDosage(); 4592 } 4593 else if (name.equals("bodySite")) { 4594 return addBodySite(); 4595 } 4596 else if (name.equals("specimenRequirement")) { 4597 return addSpecimenRequirement(); 4598 } 4599 else if (name.equals("observationRequirement")) { 4600 return addObservationRequirement(); 4601 } 4602 else if (name.equals("observationResultRequirement")) { 4603 return addObservationResultRequirement(); 4604 } 4605 else if (name.equals("transform")) { 4606 throw new FHIRException("Cannot call addChild on a primitive type ActivityDefinition.transform"); 4607 } 4608 else if (name.equals("dynamicValue")) { 4609 return addDynamicValue(); 4610 } 4611 else 4612 return super.addChild(name); 4613 } 4614 4615 public String fhirType() { 4616 return "ActivityDefinition"; 4617 4618 } 4619 4620 public ActivityDefinition copy() { 4621 ActivityDefinition dst = new ActivityDefinition(); 4622 copyValues(dst); 4623 dst.url = url == null ? null : url.copy(); 4624 if (identifier != null) { 4625 dst.identifier = new ArrayList<Identifier>(); 4626 for (Identifier i : identifier) 4627 dst.identifier.add(i.copy()); 4628 }; 4629 dst.version = version == null ? null : version.copy(); 4630 dst.name = name == null ? null : name.copy(); 4631 dst.title = title == null ? null : title.copy(); 4632 dst.subtitle = subtitle == null ? null : subtitle.copy(); 4633 dst.status = status == null ? null : status.copy(); 4634 dst.experimental = experimental == null ? null : experimental.copy(); 4635 dst.subject = subject == null ? null : subject.copy(); 4636 dst.date = date == null ? null : date.copy(); 4637 dst.publisher = publisher == null ? null : publisher.copy(); 4638 if (contact != null) { 4639 dst.contact = new ArrayList<ContactDetail>(); 4640 for (ContactDetail i : contact) 4641 dst.contact.add(i.copy()); 4642 }; 4643 dst.description = description == null ? null : description.copy(); 4644 if (useContext != null) { 4645 dst.useContext = new ArrayList<UsageContext>(); 4646 for (UsageContext i : useContext) 4647 dst.useContext.add(i.copy()); 4648 }; 4649 if (jurisdiction != null) { 4650 dst.jurisdiction = new ArrayList<CodeableConcept>(); 4651 for (CodeableConcept i : jurisdiction) 4652 dst.jurisdiction.add(i.copy()); 4653 }; 4654 dst.purpose = purpose == null ? null : purpose.copy(); 4655 dst.usage = usage == null ? null : usage.copy(); 4656 dst.copyright = copyright == null ? null : copyright.copy(); 4657 dst.approvalDate = approvalDate == null ? null : approvalDate.copy(); 4658 dst.lastReviewDate = lastReviewDate == null ? null : lastReviewDate.copy(); 4659 dst.effectivePeriod = effectivePeriod == null ? null : effectivePeriod.copy(); 4660 if (topic != null) { 4661 dst.topic = new ArrayList<CodeableConcept>(); 4662 for (CodeableConcept i : topic) 4663 dst.topic.add(i.copy()); 4664 }; 4665 if (author != null) { 4666 dst.author = new ArrayList<ContactDetail>(); 4667 for (ContactDetail i : author) 4668 dst.author.add(i.copy()); 4669 }; 4670 if (editor != null) { 4671 dst.editor = new ArrayList<ContactDetail>(); 4672 for (ContactDetail i : editor) 4673 dst.editor.add(i.copy()); 4674 }; 4675 if (reviewer != null) { 4676 dst.reviewer = new ArrayList<ContactDetail>(); 4677 for (ContactDetail i : reviewer) 4678 dst.reviewer.add(i.copy()); 4679 }; 4680 if (endorser != null) { 4681 dst.endorser = new ArrayList<ContactDetail>(); 4682 for (ContactDetail i : endorser) 4683 dst.endorser.add(i.copy()); 4684 }; 4685 if (relatedArtifact != null) { 4686 dst.relatedArtifact = new ArrayList<RelatedArtifact>(); 4687 for (RelatedArtifact i : relatedArtifact) 4688 dst.relatedArtifact.add(i.copy()); 4689 }; 4690 if (library != null) { 4691 dst.library = new ArrayList<CanonicalType>(); 4692 for (CanonicalType i : library) 4693 dst.library.add(i.copy()); 4694 }; 4695 dst.kind = kind == null ? null : kind.copy(); 4696 dst.profile = profile == null ? null : profile.copy(); 4697 dst.code = code == null ? null : code.copy(); 4698 dst.intent = intent == null ? null : intent.copy(); 4699 dst.priority = priority == null ? null : priority.copy(); 4700 dst.doNotPerform = doNotPerform == null ? null : doNotPerform.copy(); 4701 dst.timing = timing == null ? null : timing.copy(); 4702 dst.location = location == null ? null : location.copy(); 4703 if (participant != null) { 4704 dst.participant = new ArrayList<ActivityDefinitionParticipantComponent>(); 4705 for (ActivityDefinitionParticipantComponent i : participant) 4706 dst.participant.add(i.copy()); 4707 }; 4708 dst.product = product == null ? null : product.copy(); 4709 dst.quantity = quantity == null ? null : quantity.copy(); 4710 if (dosage != null) { 4711 dst.dosage = new ArrayList<Dosage>(); 4712 for (Dosage i : dosage) 4713 dst.dosage.add(i.copy()); 4714 }; 4715 if (bodySite != null) { 4716 dst.bodySite = new ArrayList<CodeableConcept>(); 4717 for (CodeableConcept i : bodySite) 4718 dst.bodySite.add(i.copy()); 4719 }; 4720 if (specimenRequirement != null) { 4721 dst.specimenRequirement = new ArrayList<Reference>(); 4722 for (Reference i : specimenRequirement) 4723 dst.specimenRequirement.add(i.copy()); 4724 }; 4725 if (observationRequirement != null) { 4726 dst.observationRequirement = new ArrayList<Reference>(); 4727 for (Reference i : observationRequirement) 4728 dst.observationRequirement.add(i.copy()); 4729 }; 4730 if (observationResultRequirement != null) { 4731 dst.observationResultRequirement = new ArrayList<Reference>(); 4732 for (Reference i : observationResultRequirement) 4733 dst.observationResultRequirement.add(i.copy()); 4734 }; 4735 dst.transform = transform == null ? null : transform.copy(); 4736 if (dynamicValue != null) { 4737 dst.dynamicValue = new ArrayList<ActivityDefinitionDynamicValueComponent>(); 4738 for (ActivityDefinitionDynamicValueComponent i : dynamicValue) 4739 dst.dynamicValue.add(i.copy()); 4740 }; 4741 return dst; 4742 } 4743 4744 protected ActivityDefinition typedCopy() { 4745 return copy(); 4746 } 4747 4748 @Override 4749 public boolean equalsDeep(Base other_) { 4750 if (!super.equalsDeep(other_)) 4751 return false; 4752 if (!(other_ instanceof ActivityDefinition)) 4753 return false; 4754 ActivityDefinition o = (ActivityDefinition) other_; 4755 return compareDeep(identifier, o.identifier, true) && compareDeep(subtitle, o.subtitle, true) && compareDeep(subject, o.subject, true) 4756 && compareDeep(purpose, o.purpose, true) && compareDeep(usage, o.usage, true) && compareDeep(copyright, o.copyright, true) 4757 && compareDeep(approvalDate, o.approvalDate, true) && compareDeep(lastReviewDate, o.lastReviewDate, true) 4758 && compareDeep(effectivePeriod, o.effectivePeriod, true) && compareDeep(topic, o.topic, true) && compareDeep(author, o.author, true) 4759 && compareDeep(editor, o.editor, true) && compareDeep(reviewer, o.reviewer, true) && compareDeep(endorser, o.endorser, true) 4760 && compareDeep(relatedArtifact, o.relatedArtifact, true) && compareDeep(library, o.library, true) 4761 && compareDeep(kind, o.kind, true) && compareDeep(profile, o.profile, true) && compareDeep(code, o.code, true) 4762 && compareDeep(intent, o.intent, true) && compareDeep(priority, o.priority, true) && compareDeep(doNotPerform, o.doNotPerform, true) 4763 && compareDeep(timing, o.timing, true) && compareDeep(location, o.location, true) && compareDeep(participant, o.participant, true) 4764 && compareDeep(product, o.product, true) && compareDeep(quantity, o.quantity, true) && compareDeep(dosage, o.dosage, true) 4765 && compareDeep(bodySite, o.bodySite, true) && compareDeep(specimenRequirement, o.specimenRequirement, true) 4766 && compareDeep(observationRequirement, o.observationRequirement, true) && compareDeep(observationResultRequirement, o.observationResultRequirement, true) 4767 && compareDeep(transform, o.transform, true) && compareDeep(dynamicValue, o.dynamicValue, true) 4768 ; 4769 } 4770 4771 @Override 4772 public boolean equalsShallow(Base other_) { 4773 if (!super.equalsShallow(other_)) 4774 return false; 4775 if (!(other_ instanceof ActivityDefinition)) 4776 return false; 4777 ActivityDefinition o = (ActivityDefinition) other_; 4778 return compareValues(subtitle, o.subtitle, true) && compareValues(purpose, o.purpose, true) && compareValues(usage, o.usage, true) 4779 && compareValues(copyright, o.copyright, true) && compareValues(approvalDate, o.approvalDate, true) 4780 && compareValues(lastReviewDate, o.lastReviewDate, true) && compareValues(kind, o.kind, true) && compareValues(intent, o.intent, true) 4781 && compareValues(priority, o.priority, true) && compareValues(doNotPerform, o.doNotPerform, true); 4782 } 4783 4784 public boolean isEmpty() { 4785 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, subtitle, subject 4786 , purpose, usage, copyright, approvalDate, lastReviewDate, effectivePeriod, topic 4787 , author, editor, reviewer, endorser, relatedArtifact, library, kind, profile 4788 , code, intent, priority, doNotPerform, timing, location, participant, product 4789 , quantity, dosage, bodySite, specimenRequirement, observationRequirement, observationResultRequirement 4790 , transform, dynamicValue); 4791 } 4792 4793 @Override 4794 public ResourceType getResourceType() { 4795 return ResourceType.ActivityDefinition; 4796 } 4797 4798 /** 4799 * Search parameter: <b>date</b> 4800 * <p> 4801 * Description: <b>The activity definition publication date</b><br> 4802 * Type: <b>date</b><br> 4803 * Path: <b>ActivityDefinition.date</b><br> 4804 * </p> 4805 */ 4806 @SearchParamDefinition(name="date", path="ActivityDefinition.date", description="The activity definition publication date", type="date" ) 4807 public static final String SP_DATE = "date"; 4808 /** 4809 * <b>Fluent Client</b> search parameter constant for <b>date</b> 4810 * <p> 4811 * Description: <b>The activity definition publication date</b><br> 4812 * Type: <b>date</b><br> 4813 * Path: <b>ActivityDefinition.date</b><br> 4814 * </p> 4815 */ 4816 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 4817 4818 /** 4819 * Search parameter: <b>identifier</b> 4820 * <p> 4821 * Description: <b>External identifier for the activity definition</b><br> 4822 * Type: <b>token</b><br> 4823 * Path: <b>ActivityDefinition.identifier</b><br> 4824 * </p> 4825 */ 4826 @SearchParamDefinition(name="identifier", path="ActivityDefinition.identifier", description="External identifier for the activity definition", type="token" ) 4827 public static final String SP_IDENTIFIER = "identifier"; 4828 /** 4829 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 4830 * <p> 4831 * Description: <b>External identifier for the activity definition</b><br> 4832 * Type: <b>token</b><br> 4833 * Path: <b>ActivityDefinition.identifier</b><br> 4834 * </p> 4835 */ 4836 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 4837 4838 /** 4839 * Search parameter: <b>successor</b> 4840 * <p> 4841 * Description: <b>What resource is being referenced</b><br> 4842 * Type: <b>reference</b><br> 4843 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 4844 * </p> 4845 */ 4846 @SearchParamDefinition(name="successor", path="ActivityDefinition.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference" ) 4847 public static final String SP_SUCCESSOR = "successor"; 4848 /** 4849 * <b>Fluent Client</b> search parameter constant for <b>successor</b> 4850 * <p> 4851 * Description: <b>What resource is being referenced</b><br> 4852 * Type: <b>reference</b><br> 4853 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 4854 * </p> 4855 */ 4856 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUCCESSOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUCCESSOR); 4857 4858/** 4859 * Constant for fluent queries to be used to add include statements. Specifies 4860 * the path value of "<b>ActivityDefinition:successor</b>". 4861 */ 4862 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUCCESSOR = new ca.uhn.fhir.model.api.Include("ActivityDefinition:successor").toLocked(); 4863 4864 /** 4865 * Search parameter: <b>context-type-value</b> 4866 * <p> 4867 * Description: <b>A use context type and value assigned to the activity definition</b><br> 4868 * Type: <b>composite</b><br> 4869 * Path: <b></b><br> 4870 * </p> 4871 */ 4872 @SearchParamDefinition(name="context-type-value", path="ActivityDefinition.useContext", description="A use context type and value assigned to the activity definition", type="composite", compositeOf={"context-type", "context"} ) 4873 public static final String SP_CONTEXT_TYPE_VALUE = "context-type-value"; 4874 /** 4875 * <b>Fluent Client</b> search parameter constant for <b>context-type-value</b> 4876 * <p> 4877 * Description: <b>A use context type and value assigned to the activity definition</b><br> 4878 * Type: <b>composite</b><br> 4879 * Path: <b></b><br> 4880 * </p> 4881 */ 4882 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>(SP_CONTEXT_TYPE_VALUE); 4883 4884 /** 4885 * Search parameter: <b>jurisdiction</b> 4886 * <p> 4887 * Description: <b>Intended jurisdiction for the activity definition</b><br> 4888 * Type: <b>token</b><br> 4889 * Path: <b>ActivityDefinition.jurisdiction</b><br> 4890 * </p> 4891 */ 4892 @SearchParamDefinition(name="jurisdiction", path="ActivityDefinition.jurisdiction", description="Intended jurisdiction for the activity definition", type="token" ) 4893 public static final String SP_JURISDICTION = "jurisdiction"; 4894 /** 4895 * <b>Fluent Client</b> search parameter constant for <b>jurisdiction</b> 4896 * <p> 4897 * Description: <b>Intended jurisdiction for the activity definition</b><br> 4898 * Type: <b>token</b><br> 4899 * Path: <b>ActivityDefinition.jurisdiction</b><br> 4900 * </p> 4901 */ 4902 public static final ca.uhn.fhir.rest.gclient.TokenClientParam JURISDICTION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_JURISDICTION); 4903 4904 /** 4905 * Search parameter: <b>description</b> 4906 * <p> 4907 * Description: <b>The description of the activity definition</b><br> 4908 * Type: <b>string</b><br> 4909 * Path: <b>ActivityDefinition.description</b><br> 4910 * </p> 4911 */ 4912 @SearchParamDefinition(name="description", path="ActivityDefinition.description", description="The description of the activity definition", type="string" ) 4913 public static final String SP_DESCRIPTION = "description"; 4914 /** 4915 * <b>Fluent Client</b> search parameter constant for <b>description</b> 4916 * <p> 4917 * Description: <b>The description of the activity definition</b><br> 4918 * Type: <b>string</b><br> 4919 * Path: <b>ActivityDefinition.description</b><br> 4920 * </p> 4921 */ 4922 public static final ca.uhn.fhir.rest.gclient.StringClientParam DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_DESCRIPTION); 4923 4924 /** 4925 * Search parameter: <b>derived-from</b> 4926 * <p> 4927 * Description: <b>What resource is being referenced</b><br> 4928 * Type: <b>reference</b><br> 4929 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 4930 * </p> 4931 */ 4932 @SearchParamDefinition(name="derived-from", path="ActivityDefinition.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference" ) 4933 public static final String SP_DERIVED_FROM = "derived-from"; 4934 /** 4935 * <b>Fluent Client</b> search parameter constant for <b>derived-from</b> 4936 * <p> 4937 * Description: <b>What resource is being referenced</b><br> 4938 * Type: <b>reference</b><br> 4939 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 4940 * </p> 4941 */ 4942 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DERIVED_FROM = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_DERIVED_FROM); 4943 4944/** 4945 * Constant for fluent queries to be used to add include statements. Specifies 4946 * the path value of "<b>ActivityDefinition:derived-from</b>". 4947 */ 4948 public static final ca.uhn.fhir.model.api.Include INCLUDE_DERIVED_FROM = new ca.uhn.fhir.model.api.Include("ActivityDefinition:derived-from").toLocked(); 4949 4950 /** 4951 * Search parameter: <b>context-type</b> 4952 * <p> 4953 * Description: <b>A type of use context assigned to the activity definition</b><br> 4954 * Type: <b>token</b><br> 4955 * Path: <b>ActivityDefinition.useContext.code</b><br> 4956 * </p> 4957 */ 4958 @SearchParamDefinition(name="context-type", path="ActivityDefinition.useContext.code", description="A type of use context assigned to the activity definition", type="token" ) 4959 public static final String SP_CONTEXT_TYPE = "context-type"; 4960 /** 4961 * <b>Fluent Client</b> search parameter constant for <b>context-type</b> 4962 * <p> 4963 * Description: <b>A type of use context assigned to the activity definition</b><br> 4964 * Type: <b>token</b><br> 4965 * Path: <b>ActivityDefinition.useContext.code</b><br> 4966 * </p> 4967 */ 4968 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT_TYPE); 4969 4970 /** 4971 * Search parameter: <b>predecessor</b> 4972 * <p> 4973 * Description: <b>What resource is being referenced</b><br> 4974 * Type: <b>reference</b><br> 4975 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 4976 * </p> 4977 */ 4978 @SearchParamDefinition(name="predecessor", path="ActivityDefinition.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference" ) 4979 public static final String SP_PREDECESSOR = "predecessor"; 4980 /** 4981 * <b>Fluent Client</b> search parameter constant for <b>predecessor</b> 4982 * <p> 4983 * Description: <b>What resource is being referenced</b><br> 4984 * Type: <b>reference</b><br> 4985 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 4986 * </p> 4987 */ 4988 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PREDECESSOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PREDECESSOR); 4989 4990/** 4991 * Constant for fluent queries to be used to add include statements. Specifies 4992 * the path value of "<b>ActivityDefinition:predecessor</b>". 4993 */ 4994 public static final ca.uhn.fhir.model.api.Include INCLUDE_PREDECESSOR = new ca.uhn.fhir.model.api.Include("ActivityDefinition:predecessor").toLocked(); 4995 4996 /** 4997 * Search parameter: <b>title</b> 4998 * <p> 4999 * Description: <b>The human-friendly name of the activity definition</b><br> 5000 * Type: <b>string</b><br> 5001 * Path: <b>ActivityDefinition.title</b><br> 5002 * </p> 5003 */ 5004 @SearchParamDefinition(name="title", path="ActivityDefinition.title", description="The human-friendly name of the activity definition", type="string" ) 5005 public static final String SP_TITLE = "title"; 5006 /** 5007 * <b>Fluent Client</b> search parameter constant for <b>title</b> 5008 * <p> 5009 * Description: <b>The human-friendly name of the activity definition</b><br> 5010 * Type: <b>string</b><br> 5011 * Path: <b>ActivityDefinition.title</b><br> 5012 * </p> 5013 */ 5014 public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_TITLE); 5015 5016 /** 5017 * Search parameter: <b>composed-of</b> 5018 * <p> 5019 * Description: <b>What resource is being referenced</b><br> 5020 * Type: <b>reference</b><br> 5021 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 5022 * </p> 5023 */ 5024 @SearchParamDefinition(name="composed-of", path="ActivityDefinition.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference" ) 5025 public static final String SP_COMPOSED_OF = "composed-of"; 5026 /** 5027 * <b>Fluent Client</b> search parameter constant for <b>composed-of</b> 5028 * <p> 5029 * Description: <b>What resource is being referenced</b><br> 5030 * Type: <b>reference</b><br> 5031 * Path: <b>ActivityDefinition.relatedArtifact.resource</b><br> 5032 * </p> 5033 */ 5034 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam COMPOSED_OF = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_COMPOSED_OF); 5035 5036/** 5037 * Constant for fluent queries to be used to add include statements. Specifies 5038 * the path value of "<b>ActivityDefinition:composed-of</b>". 5039 */ 5040 public static final ca.uhn.fhir.model.api.Include INCLUDE_COMPOSED_OF = new ca.uhn.fhir.model.api.Include("ActivityDefinition:composed-of").toLocked(); 5041 5042 /** 5043 * Search parameter: <b>version</b> 5044 * <p> 5045 * Description: <b>The business version of the activity definition</b><br> 5046 * Type: <b>token</b><br> 5047 * Path: <b>ActivityDefinition.version</b><br> 5048 * </p> 5049 */ 5050 @SearchParamDefinition(name="version", path="ActivityDefinition.version", description="The business version of the activity definition", type="token" ) 5051 public static final String SP_VERSION = "version"; 5052 /** 5053 * <b>Fluent Client</b> search parameter constant for <b>version</b> 5054 * <p> 5055 * Description: <b>The business version of the activity definition</b><br> 5056 * Type: <b>token</b><br> 5057 * Path: <b>ActivityDefinition.version</b><br> 5058 * </p> 5059 */ 5060 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VERSION); 5061 5062 /** 5063 * Search parameter: <b>url</b> 5064 * <p> 5065 * Description: <b>The uri that identifies the activity definition</b><br> 5066 * Type: <b>uri</b><br> 5067 * Path: <b>ActivityDefinition.url</b><br> 5068 * </p> 5069 */ 5070 @SearchParamDefinition(name="url", path="ActivityDefinition.url", description="The uri that identifies the activity definition", type="uri" ) 5071 public static final String SP_URL = "url"; 5072 /** 5073 * <b>Fluent Client</b> search parameter constant for <b>url</b> 5074 * <p> 5075 * Description: <b>The uri that identifies the activity definition</b><br> 5076 * Type: <b>uri</b><br> 5077 * Path: <b>ActivityDefinition.url</b><br> 5078 * </p> 5079 */ 5080 public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); 5081 5082 /** 5083 * Search parameter: <b>context-quantity</b> 5084 * <p> 5085 * Description: <b>A quantity- or range-valued use context assigned to the activity definition</b><br> 5086 * Type: <b>quantity</b><br> 5087 * Path: <b>ActivityDefinition.useContext.valueQuantity, ActivityDefinition.useContext.valueRange</b><br> 5088 * </p> 5089 */ 5090 @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" ) 5091 public static final String SP_CONTEXT_QUANTITY = "context-quantity"; 5092 /** 5093 * <b>Fluent Client</b> search parameter constant for <b>context-quantity</b> 5094 * <p> 5095 * Description: <b>A quantity- or range-valued use context assigned to the activity definition</b><br> 5096 * Type: <b>quantity</b><br> 5097 * Path: <b>ActivityDefinition.useContext.valueQuantity, ActivityDefinition.useContext.valueRange</b><br> 5098 * </p> 5099 */ 5100 public static final ca.uhn.fhir.rest.gclient.QuantityClientParam CONTEXT_QUANTITY = new ca.uhn.fhir.rest.gclient.QuantityClientParam(SP_CONTEXT_QUANTITY); 5101 5102 /** 5103 * Search parameter: <b>effective</b> 5104 * <p> 5105 * Description: <b>The time during which the activity definition is intended to be in use</b><br> 5106 * Type: <b>date</b><br> 5107 * Path: <b>ActivityDefinition.effectivePeriod</b><br> 5108 * </p> 5109 */ 5110 @SearchParamDefinition(name="effective", path="ActivityDefinition.effectivePeriod", description="The time during which the activity definition is intended to be in use", type="date" ) 5111 public static final String SP_EFFECTIVE = "effective"; 5112 /** 5113 * <b>Fluent Client</b> search parameter constant for <b>effective</b> 5114 * <p> 5115 * Description: <b>The time during which the activity definition is intended to be in use</b><br> 5116 * Type: <b>date</b><br> 5117 * Path: <b>ActivityDefinition.effectivePeriod</b><br> 5118 * </p> 5119 */ 5120 public static final ca.uhn.fhir.rest.gclient.DateClientParam EFFECTIVE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_EFFECTIVE); 5121 5122 /** 5123 * Search parameter: <b>depends-on</b> 5124 * <p> 5125 * Description: <b>What resource is being referenced</b><br> 5126 * Type: <b>reference</b><br> 5127 * Path: <b>ActivityDefinition.relatedArtifact.resource, ActivityDefinition.library</b><br> 5128 * </p> 5129 */ 5130 @SearchParamDefinition(name="depends-on", path="ActivityDefinition.relatedArtifact.where(type='depends-on').resource | ActivityDefinition.library", description="What resource is being referenced", type="reference" ) 5131 public static final String SP_DEPENDS_ON = "depends-on"; 5132 /** 5133 * <b>Fluent Client</b> search parameter constant for <b>depends-on</b> 5134 * <p> 5135 * Description: <b>What resource is being referenced</b><br> 5136 * Type: <b>reference</b><br> 5137 * Path: <b>ActivityDefinition.relatedArtifact.resource, ActivityDefinition.library</b><br> 5138 * </p> 5139 */ 5140 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DEPENDS_ON = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_DEPENDS_ON); 5141 5142/** 5143 * Constant for fluent queries to be used to add include statements. Specifies 5144 * the path value of "<b>ActivityDefinition:depends-on</b>". 5145 */ 5146 public static final ca.uhn.fhir.model.api.Include INCLUDE_DEPENDS_ON = new ca.uhn.fhir.model.api.Include("ActivityDefinition:depends-on").toLocked(); 5147 5148 /** 5149 * Search parameter: <b>name</b> 5150 * <p> 5151 * Description: <b>Computationally friendly name of the activity definition</b><br> 5152 * Type: <b>string</b><br> 5153 * Path: <b>ActivityDefinition.name</b><br> 5154 * </p> 5155 */ 5156 @SearchParamDefinition(name="name", path="ActivityDefinition.name", description="Computationally friendly name of the activity definition", type="string" ) 5157 public static final String SP_NAME = "name"; 5158 /** 5159 * <b>Fluent Client</b> search parameter constant for <b>name</b> 5160 * <p> 5161 * Description: <b>Computationally friendly name of the activity definition</b><br> 5162 * Type: <b>string</b><br> 5163 * Path: <b>ActivityDefinition.name</b><br> 5164 * </p> 5165 */ 5166 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); 5167 5168 /** 5169 * Search parameter: <b>context</b> 5170 * <p> 5171 * Description: <b>A use context assigned to the activity definition</b><br> 5172 * Type: <b>token</b><br> 5173 * Path: <b>ActivityDefinition.useContext.valueCodeableConcept</b><br> 5174 * </p> 5175 */ 5176 @SearchParamDefinition(name="context", path="(ActivityDefinition.useContext.value as CodeableConcept)", description="A use context assigned to the activity definition", type="token" ) 5177 public static final String SP_CONTEXT = "context"; 5178 /** 5179 * <b>Fluent Client</b> search parameter constant for <b>context</b> 5180 * <p> 5181 * Description: <b>A use context assigned to the activity definition</b><br> 5182 * Type: <b>token</b><br> 5183 * Path: <b>ActivityDefinition.useContext.valueCodeableConcept</b><br> 5184 * </p> 5185 */ 5186 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT); 5187 5188 /** 5189 * Search parameter: <b>publisher</b> 5190 * <p> 5191 * Description: <b>Name of the publisher of the activity definition</b><br> 5192 * Type: <b>string</b><br> 5193 * Path: <b>ActivityDefinition.publisher</b><br> 5194 * </p> 5195 */ 5196 @SearchParamDefinition(name="publisher", path="ActivityDefinition.publisher", description="Name of the publisher of the activity definition", type="string" ) 5197 public static final String SP_PUBLISHER = "publisher"; 5198 /** 5199 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 5200 * <p> 5201 * Description: <b>Name of the publisher of the activity definition</b><br> 5202 * Type: <b>string</b><br> 5203 * Path: <b>ActivityDefinition.publisher</b><br> 5204 * </p> 5205 */ 5206 public static final ca.uhn.fhir.rest.gclient.StringClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_PUBLISHER); 5207 5208 /** 5209 * Search parameter: <b>topic</b> 5210 * <p> 5211 * Description: <b>Topics associated with the module</b><br> 5212 * Type: <b>token</b><br> 5213 * Path: <b>ActivityDefinition.topic</b><br> 5214 * </p> 5215 */ 5216 @SearchParamDefinition(name="topic", path="ActivityDefinition.topic", description="Topics associated with the module", type="token" ) 5217 public static final String SP_TOPIC = "topic"; 5218 /** 5219 * <b>Fluent Client</b> search parameter constant for <b>topic</b> 5220 * <p> 5221 * Description: <b>Topics associated with the module</b><br> 5222 * Type: <b>token</b><br> 5223 * Path: <b>ActivityDefinition.topic</b><br> 5224 * </p> 5225 */ 5226 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TOPIC = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TOPIC); 5227 5228 /** 5229 * Search parameter: <b>context-type-quantity</b> 5230 * <p> 5231 * Description: <b>A use context type and quantity- or range-based value assigned to the activity definition</b><br> 5232 * Type: <b>composite</b><br> 5233 * Path: <b></b><br> 5234 * </p> 5235 */ 5236 @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={"context-type", "context-quantity"} ) 5237 public static final String SP_CONTEXT_TYPE_QUANTITY = "context-type-quantity"; 5238 /** 5239 * <b>Fluent Client</b> search parameter constant for <b>context-type-quantity</b> 5240 * <p> 5241 * Description: <b>A use context type and quantity- or range-based value assigned to the activity definition</b><br> 5242 * Type: <b>composite</b><br> 5243 * Path: <b></b><br> 5244 * </p> 5245 */ 5246 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>(SP_CONTEXT_TYPE_QUANTITY); 5247 5248 /** 5249 * Search parameter: <b>status</b> 5250 * <p> 5251 * Description: <b>The current status of the activity definition</b><br> 5252 * Type: <b>token</b><br> 5253 * Path: <b>ActivityDefinition.status</b><br> 5254 * </p> 5255 */ 5256 @SearchParamDefinition(name="status", path="ActivityDefinition.status", description="The current status of the activity definition", type="token" ) 5257 public static final String SP_STATUS = "status"; 5258 /** 5259 * <b>Fluent Client</b> search parameter constant for <b>status</b> 5260 * <p> 5261 * Description: <b>The current status of the activity definition</b><br> 5262 * Type: <b>token</b><br> 5263 * Path: <b>ActivityDefinition.status</b><br> 5264 * </p> 5265 */ 5266 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 5267 5268 5269} 5270