![](/hapi-fhir/images/logos/raccoon-forwards.png)
001package org.hl7.fhir.r4.model; 002 003/* 004 Copyright (c) 2011+, HL7, Inc. 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without modification, 008 are permitted provided that the following conditions are met: 009 010 * Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 * Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 * Neither the name of HL7 nor the names of its contributors may be used to 016 endorse or promote products derived from this software without specific 017 prior written permission. 018 019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 020 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 021 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 022 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 023 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 024 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 025 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 026 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 027 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 028 POSSIBILITY OF SUCH DAMAGE. 029 030*/ 031 032// Generated on Tue, May 12, 2020 07:26+1000 for FHIR v4.0.1 033import java.util.ArrayList; 034import java.util.Date; 035import java.util.List; 036 037import org.hl7.fhir.exceptions.FHIRException; 038import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 039import org.hl7.fhir.r4.model.Enumerations.PublicationStatus; 040import org.hl7.fhir.r4.model.Enumerations.PublicationStatusEnumFactory; 041import org.hl7.fhir.utilities.Utilities; 042 043import ca.uhn.fhir.model.api.annotation.Block; 044import ca.uhn.fhir.model.api.annotation.Child; 045import ca.uhn.fhir.model.api.annotation.ChildOrder; 046import ca.uhn.fhir.model.api.annotation.Description; 047import ca.uhn.fhir.model.api.annotation.ResourceDef; 048import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 049 050/** 051 * Example of workflow instance. 052 */ 053@ResourceDef(name = "ExampleScenario", profile = "http://hl7.org/fhir/StructureDefinition/ExampleScenario") 054@ChildOrder(names = { "url", "identifier", "version", "name", "status", "experimental", "date", "publisher", "contact", 055 "useContext", "jurisdiction", "copyright", "purpose", "actor", "instance", "process", "workflow" }) 056public class ExampleScenario extends MetadataResource { 057 058 public enum ExampleScenarioActorType { 059 /** 060 * A person. 061 */ 062 PERSON, 063 /** 064 * A system. 065 */ 066 ENTITY, 067 /** 068 * added to help the parsers with the generic types 069 */ 070 NULL; 071 072 public static ExampleScenarioActorType fromCode(String codeString) throws FHIRException { 073 if (codeString == null || "".equals(codeString)) 074 return null; 075 if ("person".equals(codeString)) 076 return PERSON; 077 if ("entity".equals(codeString)) 078 return ENTITY; 079 if (Configuration.isAcceptInvalidEnums()) 080 return null; 081 else 082 throw new FHIRException("Unknown ExampleScenarioActorType code '" + codeString + "'"); 083 } 084 085 public String toCode() { 086 switch (this) { 087 case PERSON: 088 return "person"; 089 case ENTITY: 090 return "entity"; 091 case NULL: 092 return null; 093 default: 094 return "?"; 095 } 096 } 097 098 public String getSystem() { 099 switch (this) { 100 case PERSON: 101 return "http://hl7.org/fhir/examplescenario-actor-type"; 102 case ENTITY: 103 return "http://hl7.org/fhir/examplescenario-actor-type"; 104 case NULL: 105 return null; 106 default: 107 return "?"; 108 } 109 } 110 111 public String getDefinition() { 112 switch (this) { 113 case PERSON: 114 return "A person."; 115 case ENTITY: 116 return "A system."; 117 case NULL: 118 return null; 119 default: 120 return "?"; 121 } 122 } 123 124 public String getDisplay() { 125 switch (this) { 126 case PERSON: 127 return "Person"; 128 case ENTITY: 129 return "System"; 130 case NULL: 131 return null; 132 default: 133 return "?"; 134 } 135 } 136 } 137 138 public static class ExampleScenarioActorTypeEnumFactory implements EnumFactory<ExampleScenarioActorType> { 139 public ExampleScenarioActorType fromCode(String codeString) throws IllegalArgumentException { 140 if (codeString == null || "".equals(codeString)) 141 if (codeString == null || "".equals(codeString)) 142 return null; 143 if ("person".equals(codeString)) 144 return ExampleScenarioActorType.PERSON; 145 if ("entity".equals(codeString)) 146 return ExampleScenarioActorType.ENTITY; 147 throw new IllegalArgumentException("Unknown ExampleScenarioActorType code '" + codeString + "'"); 148 } 149 150 public Enumeration<ExampleScenarioActorType> fromType(PrimitiveType<?> code) throws FHIRException { 151 if (code == null) 152 return null; 153 if (code.isEmpty()) 154 return new Enumeration<ExampleScenarioActorType>(this, ExampleScenarioActorType.NULL, code); 155 String codeString = code.asStringValue(); 156 if (codeString == null || "".equals(codeString)) 157 return new Enumeration<ExampleScenarioActorType>(this, ExampleScenarioActorType.NULL, code); 158 if ("person".equals(codeString)) 159 return new Enumeration<ExampleScenarioActorType>(this, ExampleScenarioActorType.PERSON, code); 160 if ("entity".equals(codeString)) 161 return new Enumeration<ExampleScenarioActorType>(this, ExampleScenarioActorType.ENTITY, code); 162 throw new FHIRException("Unknown ExampleScenarioActorType code '" + codeString + "'"); 163 } 164 165 public String toCode(ExampleScenarioActorType code) { 166 if (code == ExampleScenarioActorType.PERSON) 167 return "person"; 168 if (code == ExampleScenarioActorType.ENTITY) 169 return "entity"; 170 return "?"; 171 } 172 173 public String toSystem(ExampleScenarioActorType code) { 174 return code.getSystem(); 175 } 176 } 177 178 public enum FHIRResourceType { 179 /** 180 * A financial tool for tracking value accrued for a particular purpose. In the 181 * healthcare field, used to track charges for a patient, cost centers, etc. 182 */ 183 ACCOUNT, 184 /** 185 * This resource allows for the definition of some activity to be performed, 186 * independent of a particular patient, practitioner, or other performance 187 * context. 188 */ 189 ACTIVITYDEFINITION, 190 /** 191 * Actual or potential/avoided event causing unintended physical injury 192 * resulting from or contributed to by medical care, a research study or other 193 * healthcare setting factors that requires additional monitoring, treatment, or 194 * hospitalization, or that results in death. 195 */ 196 ADVERSEEVENT, 197 /** 198 * Risk of harmful or undesirable, physiological response which is unique to an 199 * individual and associated with exposure to a substance. 200 */ 201 ALLERGYINTOLERANCE, 202 /** 203 * A booking of a healthcare event among patient(s), practitioner(s), related 204 * person(s) and/or device(s) for a specific date/time. This may result in one 205 * or more Encounter(s). 206 */ 207 APPOINTMENT, 208 /** 209 * A reply to an appointment request for a patient and/or practitioner(s), such 210 * as a confirmation or rejection. 211 */ 212 APPOINTMENTRESPONSE, 213 /** 214 * A record of an event made for purposes of maintaining a security log. Typical 215 * uses include detection of intrusion attempts and monitoring for inappropriate 216 * usage. 217 */ 218 AUDITEVENT, 219 /** 220 * Basic is used for handling concepts not yet defined in FHIR, narrative-only 221 * resources that don't map to an existing resource, and custom resources not 222 * appropriate for inclusion in the FHIR specification. 223 */ 224 BASIC, 225 /** 226 * A resource that represents the data of a single raw artifact as digital 227 * content accessible in its native format. A Binary resource can contain any 228 * content, whether text, image, pdf, zip archive, etc. 229 */ 230 BINARY, 231 /** 232 * A material substance originating from a biological entity intended to be 233 * transplanted or infused into another (possibly the same) biological entity. 234 */ 235 BIOLOGICALLYDERIVEDPRODUCT, 236 /** 237 * Record details about an anatomical structure. This resource may be used when 238 * a coded concept does not provide the necessary detail needed for the use 239 * case. 240 */ 241 BODYSTRUCTURE, 242 /** 243 * A container for a collection of resources. 244 */ 245 BUNDLE, 246 /** 247 * A Capability Statement documents a set of capabilities (behaviors) of a FHIR 248 * Server for a particular version of FHIR that may be used as a statement of 249 * actual server functionality or a statement of required or desired server 250 * implementation. 251 */ 252 CAPABILITYSTATEMENT, 253 /** 254 * Describes the intention of how one or more practitioners intend to deliver 255 * care for a particular patient, group or community for a period of time, 256 * possibly limited to care for a specific condition or set of conditions. 257 */ 258 CAREPLAN, 259 /** 260 * The Care Team includes all the people and organizations who plan to 261 * participate in the coordination and delivery of care for a patient. 262 */ 263 CARETEAM, 264 /** 265 * Catalog entries are wrappers that contextualize items included in a catalog. 266 */ 267 CATALOGENTRY, 268 /** 269 * The resource ChargeItem describes the provision of healthcare provider 270 * products for a certain patient, therefore referring not only to the product, 271 * but containing in addition details of the provision, like date, time, amounts 272 * and participating organizations and persons. Main Usage of the ChargeItem is 273 * to enable the billing process and internal cost allocation. 274 */ 275 CHARGEITEM, 276 /** 277 * The ChargeItemDefinition resource provides the properties that apply to the 278 * (billing) codes necessary to calculate costs and prices. The properties may 279 * differ largely depending on type and realm, therefore this resource gives 280 * only a rough structure and requires profiling for each type of billing code 281 * system. 282 */ 283 CHARGEITEMDEFINITION, 284 /** 285 * A provider issued list of professional services and products which have been 286 * provided, or are to be provided, to a patient which is sent to an insurer for 287 * reimbursement. 288 */ 289 CLAIM, 290 /** 291 * This resource provides the adjudication details from the processing of a 292 * Claim resource. 293 */ 294 CLAIMRESPONSE, 295 /** 296 * A record of a clinical assessment performed to determine what problem(s) may 297 * affect the patient and before planning the treatments or management 298 * strategies that are best to manage a patient's condition. Assessments are 299 * often 1:1 with a clinical consultation / encounter, but this varies greatly 300 * depending on the clinical workflow. This resource is called 301 * "ClinicalImpression" rather than "ClinicalAssessment" to avoid confusion with 302 * the recording of assessment tools such as Apgar score. 303 */ 304 CLINICALIMPRESSION, 305 /** 306 * The CodeSystem resource is used to declare the existence of and describe a 307 * code system or code system supplement and its key properties, and optionally 308 * define a part or all of its content. 309 */ 310 CODESYSTEM, 311 /** 312 * An occurrence of information being transmitted; e.g. an alert that was sent 313 * to a responsible provider, a public health agency that was notified about a 314 * reportable condition. 315 */ 316 COMMUNICATION, 317 /** 318 * A request to convey information; e.g. the CDS system proposes that an alert 319 * be sent to a responsible provider, the CDS system proposes that the public 320 * health agency be notified about a reportable condition. 321 */ 322 COMMUNICATIONREQUEST, 323 /** 324 * A compartment definition that defines how resources are accessed on a server. 325 */ 326 COMPARTMENTDEFINITION, 327 /** 328 * A set of healthcare-related information that is assembled together into a 329 * single logical package that provides a single coherent statement of meaning, 330 * establishes its own context and that has clinical attestation with regard to 331 * who is making the statement. A Composition defines the structure and 332 * narrative content necessary for a document. However, a Composition alone does 333 * not constitute a document. Rather, the Composition must be the first entry in 334 * a Bundle where Bundle.type=document, and any other resources referenced from 335 * Composition must be included as subsequent entries in the Bundle (for example 336 * Patient, Practitioner, Encounter, etc.). 337 */ 338 COMPOSITION, 339 /** 340 * A statement of relationships from one set of concepts to one or more other 341 * concepts - either concepts in code systems, or data element/data element 342 * concepts, or classes in class models. 343 */ 344 CONCEPTMAP, 345 /** 346 * A clinical condition, problem, diagnosis, or other event, situation, issue, 347 * or clinical concept that has risen to a level of concern. 348 */ 349 CONDITION, 350 /** 351 * A record of a healthcare consumer?s choices, which permits or denies 352 * identified recipient(s) or recipient role(s) to perform one or more actions 353 * within a given policy context, for specific purposes and periods of time. 354 */ 355 CONSENT, 356 /** 357 * Legally enforceable, formally recorded unilateral or bilateral directive 358 * i.e., a policy or agreement. 359 */ 360 CONTRACT, 361 /** 362 * Financial instrument which may be used to reimburse or pay for health care 363 * products and services. Includes both insurance and self-payment. 364 */ 365 COVERAGE, 366 /** 367 * The CoverageEligibilityRequest provides patient and insurance coverage 368 * information to an insurer for them to respond, in the form of an 369 * CoverageEligibilityResponse, with information regarding whether the stated 370 * coverage is valid and in-force and optionally to provide the insurance 371 * details of the policy. 372 */ 373 COVERAGEELIGIBILITYREQUEST, 374 /** 375 * This resource provides eligibility and plan details from the processing of an 376 * CoverageEligibilityRequest resource. 377 */ 378 COVERAGEELIGIBILITYRESPONSE, 379 /** 380 * Indicates an actual or potential clinical issue with or between one or more 381 * active or proposed clinical actions for a patient; e.g. Drug-drug 382 * interaction, Ineffective treatment frequency, Procedure-condition conflict, 383 * etc. 384 */ 385 DETECTEDISSUE, 386 /** 387 * A type of a manufactured item that is used in the provision of healthcare 388 * without being substantially changed through that activity. The device may be 389 * a medical or non-medical device. 390 */ 391 DEVICE, 392 /** 393 * The characteristics, operational status and capabilities of a medical-related 394 * component of a medical device. 395 */ 396 DEVICEDEFINITION, 397 /** 398 * Describes a measurement, calculation or setting capability of a medical 399 * device. 400 */ 401 DEVICEMETRIC, 402 /** 403 * Represents a request for a patient to employ a medical device. The device may 404 * be an implantable device, or an external assistive device, such as a walker. 405 */ 406 DEVICEREQUEST, 407 /** 408 * A record of a device being used by a patient where the record is the result 409 * of a report from the patient or another clinician. 410 */ 411 DEVICEUSESTATEMENT, 412 /** 413 * The findings and interpretation of diagnostic tests performed on patients, 414 * groups of patients, devices, and locations, and/or specimens derived from 415 * these. The report includes clinical context such as requesting and provider 416 * information, and some mix of atomic results, images, textual and coded 417 * interpretations, and formatted representation of diagnostic reports. 418 */ 419 DIAGNOSTICREPORT, 420 /** 421 * A collection of documents compiled for a purpose together with metadata that 422 * applies to the collection. 423 */ 424 DOCUMENTMANIFEST, 425 /** 426 * A reference to a document of any kind for any purpose. Provides metadata 427 * about the document so that the document can be discovered and managed. The 428 * scope of a document is any seralized object with a mime-type, so includes 429 * formal patient centric documents (CDA), cliical notes, scanned paper, and 430 * non-patient specific documents like policy text. 431 */ 432 DOCUMENTREFERENCE, 433 /** 434 * A resource that includes narrative, extensions, and contained resources. 435 */ 436 DOMAINRESOURCE, 437 /** 438 * The EffectEvidenceSynthesis resource describes the difference in an outcome 439 * between exposures states in a population where the effect estimate is derived 440 * from a combination of research studies. 441 */ 442 EFFECTEVIDENCESYNTHESIS, 443 /** 444 * An interaction between a patient and healthcare provider(s) for the purpose 445 * of providing healthcare service(s) or assessing the health status of a 446 * patient. 447 */ 448 ENCOUNTER, 449 /** 450 * The technical details of an endpoint that can be used for electronic 451 * services, such as for web services providing XDS.b or a REST endpoint for 452 * another FHIR server. This may include any security context information. 453 */ 454 ENDPOINT, 455 /** 456 * This resource provides the insurance enrollment details to the insurer 457 * regarding a specified coverage. 458 */ 459 ENROLLMENTREQUEST, 460 /** 461 * This resource provides enrollment and plan details from the processing of an 462 * EnrollmentRequest resource. 463 */ 464 ENROLLMENTRESPONSE, 465 /** 466 * An association between a patient and an organization / healthcare provider(s) 467 * during which time encounters may occur. The managing organization assumes a 468 * level of responsibility for the patient during this time. 469 */ 470 EPISODEOFCARE, 471 /** 472 * The EventDefinition resource provides a reusable description of when a 473 * particular event can occur. 474 */ 475 EVENTDEFINITION, 476 /** 477 * The Evidence resource describes the conditional state (population and any 478 * exposures being compared within the population) and outcome (if specified) 479 * that the knowledge (evidence, assertion, recommendation) is about. 480 */ 481 EVIDENCE, 482 /** 483 * The EvidenceVariable resource describes a "PICO" element that knowledge 484 * (evidence, assertion, recommendation) is about. 485 */ 486 EVIDENCEVARIABLE, 487 /** 488 * Example of workflow instance. 489 */ 490 EXAMPLESCENARIO, 491 /** 492 * This resource provides: the claim details; adjudication details from the 493 * processing of a Claim; and optionally account balance information, for 494 * informing the subscriber of the benefits provided. 495 */ 496 EXPLANATIONOFBENEFIT, 497 /** 498 * Significant health conditions for a person related to the patient relevant in 499 * the context of care for the patient. 500 */ 501 FAMILYMEMBERHISTORY, 502 /** 503 * Prospective warnings of potential issues when providing care to the patient. 504 */ 505 FLAG, 506 /** 507 * Describes the intended objective(s) for a patient, group or organization 508 * care, for example, weight loss, restoring an activity of daily living, 509 * obtaining herd immunity via immunization, meeting a process improvement 510 * objective, etc. 511 */ 512 GOAL, 513 /** 514 * A formal computable definition of a graph of resources - that is, a coherent 515 * set of resources that form a graph by following references. The Graph 516 * Definition resource defines a set and makes rules about the set. 517 */ 518 GRAPHDEFINITION, 519 /** 520 * Represents a defined collection of entities that may be discussed or acted 521 * upon collectively but which are not expected to act collectively, and are not 522 * formally or legally recognized; i.e. a collection of entities that isn't an 523 * Organization. 524 */ 525 GROUP, 526 /** 527 * A guidance response is the formal response to a guidance request, including 528 * any output parameters returned by the evaluation, as well as the description 529 * of any proposed actions to be taken. 530 */ 531 GUIDANCERESPONSE, 532 /** 533 * The details of a healthcare service available at a location. 534 */ 535 HEALTHCARESERVICE, 536 /** 537 * Representation of the content produced in a DICOM imaging study. A study 538 * comprises a set of series, each of which includes a set of Service-Object 539 * Pair Instances (SOP Instances - images or other data) acquired or produced in 540 * a common context. A series is of only one modality (e.g. X-ray, CT, MR, 541 * ultrasound), but a study may have multiple series of different modalities. 542 */ 543 IMAGINGSTUDY, 544 /** 545 * Describes the event of a patient being administered a vaccine or a record of 546 * an immunization as reported by a patient, a clinician or another party. 547 */ 548 IMMUNIZATION, 549 /** 550 * Describes a comparison of an immunization event against published 551 * recommendations to determine if the administration is "valid" in relation to 552 * those recommendations. 553 */ 554 IMMUNIZATIONEVALUATION, 555 /** 556 * A patient's point-in-time set of recommendations (i.e. forecasting) according 557 * to a published schedule with optional supporting justification. 558 */ 559 IMMUNIZATIONRECOMMENDATION, 560 /** 561 * A set of rules of how a particular interoperability or standards problem is 562 * solved - typically through the use of FHIR resources. This resource is used 563 * to gather all the parts of an implementation guide into a logical whole and 564 * to publish a computable definition of all the parts. 565 */ 566 IMPLEMENTATIONGUIDE, 567 /** 568 * Details of a Health Insurance product/plan provided by an organization. 569 */ 570 INSURANCEPLAN, 571 /** 572 * Invoice containing collected ChargeItems from an Account with calculated 573 * individual and total price for Billing purpose. 574 */ 575 INVOICE, 576 /** 577 * The Library resource is a general-purpose container for knowledge asset 578 * definitions. It can be used to describe and expose existing knowledge assets 579 * such as logic libraries and information model descriptions, as well as to 580 * describe a collection of knowledge assets. 581 */ 582 LIBRARY, 583 /** 584 * Identifies two or more records (resource instances) that refer to the same 585 * real-world "occurrence". 586 */ 587 LINKAGE, 588 /** 589 * A list is a curated collection of resources. 590 */ 591 LIST, 592 /** 593 * Details and position information for a physical place where services are 594 * provided and resources and participants may be stored, found, contained, or 595 * accommodated. 596 */ 597 LOCATION, 598 /** 599 * The Measure resource provides the definition of a quality measure. 600 */ 601 MEASURE, 602 /** 603 * The MeasureReport resource contains the results of the calculation of a 604 * measure; and optionally a reference to the resources involved in that 605 * calculation. 606 */ 607 MEASUREREPORT, 608 /** 609 * A photo, video, or audio recording acquired or used in healthcare. The actual 610 * content may be inline or provided by direct reference. 611 */ 612 MEDIA, 613 /** 614 * This resource is primarily used for the identification and definition of a 615 * medication for the purposes of prescribing, dispensing, and administering a 616 * medication as well as for making statements about medication use. 617 */ 618 MEDICATION, 619 /** 620 * Describes the event of a patient consuming or otherwise being administered a 621 * medication. This may be as simple as swallowing a tablet or it may be a long 622 * running infusion. Related resources tie this event to the authorizing 623 * prescription, and the specific encounter between patient and health care 624 * practitioner. 625 */ 626 MEDICATIONADMINISTRATION, 627 /** 628 * Indicates that a medication product is to be or has been dispensed for a 629 * named person/patient. This includes a description of the medication product 630 * (supply) provided and the instructions for administering the medication. The 631 * medication dispense is the result of a pharmacy system responding to a 632 * medication order. 633 */ 634 MEDICATIONDISPENSE, 635 /** 636 * Information about a medication that is used to support knowledge. 637 */ 638 MEDICATIONKNOWLEDGE, 639 /** 640 * An order or request for both supply of the medication and the instructions 641 * for administration of the medication to a patient. The resource is called 642 * "MedicationRequest" rather than "MedicationPrescription" or "MedicationOrder" 643 * to generalize the use across inpatient and outpatient settings, including 644 * care plans, etc., and to harmonize with workflow patterns. 645 */ 646 MEDICATIONREQUEST, 647 /** 648 * A record of a medication that is being consumed by a patient. A 649 * MedicationStatement may indicate that the patient may be taking the 650 * medication now or has taken the medication in the past or will be taking the 651 * medication in the future. The source of this information can be the patient, 652 * significant other (such as a family member or spouse), or a clinician. A 653 * common scenario where this information is captured is during the history 654 * taking process during a patient visit or stay. The medication information may 655 * come from sources such as the patient's memory, from a prescription bottle, 656 * or from a list of medications the patient, clinician or other party 657 * maintains. 658 * 659 * The primary difference between a medication statement and a medication 660 * administration is that the medication administration has complete 661 * administration information and is based on actual administration information 662 * from the person who administered the medication. A medication statement is 663 * often, if not always, less specific. There is no required date/time when the 664 * medication was administered, in fact we only know that a source has reported 665 * the patient is taking this medication, where details such as time, quantity, 666 * or rate or even medication product may be incomplete or missing or less 667 * precise. As stated earlier, the medication statement information may come 668 * from the patient's memory, from a prescription bottle or from a list of 669 * medications the patient, clinician or other party maintains. Medication 670 * administration is more formal and is not missing detailed information. 671 */ 672 MEDICATIONSTATEMENT, 673 /** 674 * Detailed definition of a medicinal product, typically for uses other than 675 * direct patient care (e.g. regulatory use). 676 */ 677 MEDICINALPRODUCT, 678 /** 679 * The regulatory authorization of a medicinal product. 680 */ 681 MEDICINALPRODUCTAUTHORIZATION, 682 /** 683 * The clinical particulars - indications, contraindications etc. of a medicinal 684 * product, including for regulatory purposes. 685 */ 686 MEDICINALPRODUCTCONTRAINDICATION, 687 /** 688 * Indication for the Medicinal Product. 689 */ 690 MEDICINALPRODUCTINDICATION, 691 /** 692 * An ingredient of a manufactured item or pharmaceutical product. 693 */ 694 MEDICINALPRODUCTINGREDIENT, 695 /** 696 * The interactions of the medicinal product with other medicinal products, or 697 * other forms of interactions. 698 */ 699 MEDICINALPRODUCTINTERACTION, 700 /** 701 * The manufactured item as contained in the packaged medicinal product. 702 */ 703 MEDICINALPRODUCTMANUFACTURED, 704 /** 705 * A medicinal product in a container or package. 706 */ 707 MEDICINALPRODUCTPACKAGED, 708 /** 709 * A pharmaceutical product described in terms of its composition and dose form. 710 */ 711 MEDICINALPRODUCTPHARMACEUTICAL, 712 /** 713 * Describe the undesirable effects of the medicinal product. 714 */ 715 MEDICINALPRODUCTUNDESIRABLEEFFECT, 716 /** 717 * Defines the characteristics of a message that can be shared between systems, 718 * including the type of event that initiates the message, the content to be 719 * transmitted and what response(s), if any, are permitted. 720 */ 721 MESSAGEDEFINITION, 722 /** 723 * The header for a message exchange that is either requesting or responding to 724 * an action. The reference(s) that are the subject of the action as well as 725 * other information related to the action are typically transmitted in a bundle 726 * in which the MessageHeader resource instance is the first resource in the 727 * bundle. 728 */ 729 MESSAGEHEADER, 730 /** 731 * Raw data describing a biological sequence. 732 */ 733 MOLECULARSEQUENCE, 734 /** 735 * A curated namespace that issues unique symbols within that namespace for the 736 * identification of concepts, people, devices, etc. Represents a "System" used 737 * within the Identifier and Coding data types. 738 */ 739 NAMINGSYSTEM, 740 /** 741 * A request to supply a diet, formula feeding (enteral) or oral nutritional 742 * supplement to a patient/resident. 743 */ 744 NUTRITIONORDER, 745 /** 746 * Measurements and simple assertions made about a patient, device or other 747 * subject. 748 */ 749 OBSERVATION, 750 /** 751 * Set of definitional characteristics for a kind of observation or measurement 752 * produced or consumed by an orderable health care service. 753 */ 754 OBSERVATIONDEFINITION, 755 /** 756 * A formal computable definition of an operation (on the RESTful interface) or 757 * a named query (using the search interaction). 758 */ 759 OPERATIONDEFINITION, 760 /** 761 * A collection of error, warning, or information messages that result from a 762 * system action. 763 */ 764 OPERATIONOUTCOME, 765 /** 766 * A formally or informally recognized grouping of people or organizations 767 * formed for the purpose of achieving some form of collective action. Includes 768 * companies, institutions, corporations, departments, community groups, 769 * healthcare practice groups, payer/insurer, etc. 770 */ 771 ORGANIZATION, 772 /** 773 * Defines an affiliation/assotiation/relationship between 2 distinct 774 * oganizations, that is not a part-of relationship/sub-division relationship. 775 */ 776 ORGANIZATIONAFFILIATION, 777 /** 778 * This resource is a non-persisted resource used to pass information into and 779 * back from an [operation](operations.html). It has no other use, and there is 780 * no RESTful endpoint associated with it. 781 */ 782 PARAMETERS, 783 /** 784 * Demographics and other administrative information about an individual or 785 * animal receiving care or other health-related services. 786 */ 787 PATIENT, 788 /** 789 * This resource provides the status of the payment for goods and services 790 * rendered, and the request and response resource references. 791 */ 792 PAYMENTNOTICE, 793 /** 794 * This resource provides the details including amount of a payment and 795 * allocates the payment items being paid. 796 */ 797 PAYMENTRECONCILIATION, 798 /** 799 * Demographics and administrative information about a person independent of a 800 * specific health-related context. 801 */ 802 PERSON, 803 /** 804 * This resource allows for the definition of various types of plans as a 805 * sharable, consumable, and executable artifact. The resource is general enough 806 * to support the description of a broad range of clinical artifacts such as 807 * clinical decision support rules, order sets and protocols. 808 */ 809 PLANDEFINITION, 810 /** 811 * A person who is directly or indirectly involved in the provisioning of 812 * healthcare. 813 */ 814 PRACTITIONER, 815 /** 816 * A specific set of Roles/Locations/specialties/services that a practitioner 817 * may perform at an organization for a period of time. 818 */ 819 PRACTITIONERROLE, 820 /** 821 * An action that is or was performed on or for a patient. This can be a 822 * physical intervention like an operation, or less invasive like long term 823 * services, counseling, or hypnotherapy. 824 */ 825 PROCEDURE, 826 /** 827 * Provenance of a resource is a record that describes entities and processes 828 * involved in producing and delivering or otherwise influencing that resource. 829 * Provenance provides a critical foundation for assessing authenticity, 830 * enabling trust, and allowing reproducibility. Provenance assertions are a 831 * form of contextual metadata and can themselves become important records with 832 * their own provenance. Provenance statement indicates clinical significance in 833 * terms of confidence in authenticity, reliability, and trustworthiness, 834 * integrity, and stage in lifecycle (e.g. Document Completion - has the 835 * artifact been legally authenticated), all of which may impact security, 836 * privacy, and trust policies. 837 */ 838 PROVENANCE, 839 /** 840 * A structured set of questions intended to guide the collection of answers 841 * from end-users. Questionnaires provide detailed control over order, 842 * presentation, phraseology and grouping to allow coherent, consistent data 843 * collection. 844 */ 845 QUESTIONNAIRE, 846 /** 847 * A structured set of questions and their answers. The questions are ordered 848 * and grouped into coherent subsets, corresponding to the structure of the 849 * grouping of the questionnaire being responded to. 850 */ 851 QUESTIONNAIRERESPONSE, 852 /** 853 * Information about a person that is involved in the care for a patient, but 854 * who is not the target of healthcare, nor has a formal responsibility in the 855 * care process. 856 */ 857 RELATEDPERSON, 858 /** 859 * A group of related requests that can be used to capture intended activities 860 * that have inter-dependencies such as "give this medication after that one". 861 */ 862 REQUESTGROUP, 863 /** 864 * The ResearchDefinition resource describes the conditional state (population 865 * and any exposures being compared within the population) and outcome (if 866 * specified) that the knowledge (evidence, assertion, recommendation) is about. 867 */ 868 RESEARCHDEFINITION, 869 /** 870 * The ResearchElementDefinition resource describes a "PICO" element that 871 * knowledge (evidence, assertion, recommendation) is about. 872 */ 873 RESEARCHELEMENTDEFINITION, 874 /** 875 * A process where a researcher or organization plans and then executes a series 876 * of steps intended to increase the field of healthcare-related knowledge. This 877 * includes studies of safety, efficacy, comparative effectiveness and other 878 * information about medications, devices, therapies and other interventional 879 * and investigative techniques. A ResearchStudy involves the gathering of 880 * information about human or animal subjects. 881 */ 882 RESEARCHSTUDY, 883 /** 884 * A physical entity which is the primary unit of operational and/or 885 * administrative interest in a study. 886 */ 887 RESEARCHSUBJECT, 888 /** 889 * This is the base resource type for everything. 890 */ 891 RESOURCE, 892 /** 893 * An assessment of the likely outcome(s) for a patient or other subject as well 894 * as the likelihood of each outcome. 895 */ 896 RISKASSESSMENT, 897 /** 898 * The RiskEvidenceSynthesis resource describes the likelihood of an outcome in 899 * a population plus exposure state where the risk estimate is derived from a 900 * combination of research studies. 901 */ 902 RISKEVIDENCESYNTHESIS, 903 /** 904 * A container for slots of time that may be available for booking appointments. 905 */ 906 SCHEDULE, 907 /** 908 * A search parameter that defines a named search item that can be used to 909 * search/filter on a resource. 910 */ 911 SEARCHPARAMETER, 912 /** 913 * A record of a request for service such as diagnostic investigations, 914 * treatments, or operations to be performed. 915 */ 916 SERVICEREQUEST, 917 /** 918 * A slot of time on a schedule that may be available for booking appointments. 919 */ 920 SLOT, 921 /** 922 * A sample to be used for analysis. 923 */ 924 SPECIMEN, 925 /** 926 * A kind of specimen with associated set of requirements. 927 */ 928 SPECIMENDEFINITION, 929 /** 930 * A definition of a FHIR structure. This resource is used to describe the 931 * underlying resources, data types defined in FHIR, and also for describing 932 * extensions and constraints on resources and data types. 933 */ 934 STRUCTUREDEFINITION, 935 /** 936 * A Map of relationships between 2 structures that can be used to transform 937 * data. 938 */ 939 STRUCTUREMAP, 940 /** 941 * The subscription resource is used to define a push-based subscription from a 942 * server to another system. Once a subscription is registered with the server, 943 * the server checks every resource that is created or updated, and if the 944 * resource matches the given criteria, it sends a message on the defined 945 * "channel" so that another system can take an appropriate action. 946 */ 947 SUBSCRIPTION, 948 /** 949 * A homogeneous material with a definite composition. 950 */ 951 SUBSTANCE, 952 /** 953 * Nucleic acids are defined by three distinct elements: the base, sugar and 954 * linkage. Individual substance/moiety IDs will be created for each of these 955 * elements. The nucleotide sequence will be always entered in the 5?-3? 956 * direction. 957 */ 958 SUBSTANCENUCLEICACID, 959 /** 960 * Todo. 961 */ 962 SUBSTANCEPOLYMER, 963 /** 964 * A SubstanceProtein is defined as a single unit of a linear amino acid 965 * sequence, or a combination of subunits that are either covalently linked or 966 * have a defined invariant stoichiometric relationship. This includes all 967 * synthetic, recombinant and purified SubstanceProteins of defined sequence, 968 * whether the use is therapeutic or prophylactic. This set of elements will be 969 * used to describe albumins, coagulation factors, cytokines, growth factors, 970 * peptide/SubstanceProtein hormones, enzymes, toxins, toxoids, recombinant 971 * vaccines, and immunomodulators. 972 */ 973 SUBSTANCEPROTEIN, 974 /** 975 * Todo. 976 */ 977 SUBSTANCEREFERENCEINFORMATION, 978 /** 979 * Source material shall capture information on the taxonomic and anatomical 980 * origins as well as the fraction of a material that can result in or can be 981 * modified to form a substance. This set of data elements shall be used to 982 * define polymer substances isolated from biological matrices. Taxonomic and 983 * anatomical origins shall be described using a controlled vocabulary as 984 * required. This information is captured for naturally derived polymers ( . 985 * starch) and structurally diverse substances. For Organisms belonging to the 986 * Kingdom Plantae the Substance level defines the fresh material of a single 987 * species or infraspecies, the Herbal Drug and the Herbal preparation. For 988 * Herbal preparations, the fraction information will be captured at the 989 * Substance information level and additional information for herbal extracts 990 * will be captured at the Specified Substance Group 1 information level. See 991 * for further explanation the Substance Class: Structurally Diverse and the 992 * herbal annex. 993 */ 994 SUBSTANCESOURCEMATERIAL, 995 /** 996 * The detailed description of a substance, typically at a level beyond what is 997 * used for prescribing. 998 */ 999 SUBSTANCESPECIFICATION, 1000 /** 1001 * Record of delivery of what is supplied. 1002 */ 1003 SUPPLYDELIVERY, 1004 /** 1005 * A record of a request for a medication, substance or device used in the 1006 * healthcare setting. 1007 */ 1008 SUPPLYREQUEST, 1009 /** 1010 * A task to be performed. 1011 */ 1012 TASK, 1013 /** 1014 * A TerminologyCapabilities resource documents a set of capabilities 1015 * (behaviors) of a FHIR Terminology Server that may be used as a statement of 1016 * actual server functionality or a statement of required or desired server 1017 * implementation. 1018 */ 1019 TERMINOLOGYCAPABILITIES, 1020 /** 1021 * A summary of information based on the results of executing a TestScript. 1022 */ 1023 TESTREPORT, 1024 /** 1025 * A structured set of tests against a FHIR server or client implementation to 1026 * determine compliance against the FHIR specification. 1027 */ 1028 TESTSCRIPT, 1029 /** 1030 * A ValueSet resource instance specifies a set of codes drawn from one or more 1031 * code systems, intended for use in a particular context. Value sets link 1032 * between [[[CodeSystem]]] definitions and their use in [coded 1033 * elements](terminologies.html). 1034 */ 1035 VALUESET, 1036 /** 1037 * Describes validation requirements, source(s), status and dates for one or 1038 * more elements. 1039 */ 1040 VERIFICATIONRESULT, 1041 /** 1042 * An authorization for the provision of glasses and/or contact lenses to a 1043 * patient. 1044 */ 1045 VISIONPRESCRIPTION, 1046 /** 1047 * added to help the parsers with the generic types 1048 */ 1049 NULL; 1050 1051 public static FHIRResourceType fromCode(String codeString) throws FHIRException { 1052 if (codeString == null || "".equals(codeString)) 1053 return null; 1054 if ("Account".equals(codeString)) 1055 return ACCOUNT; 1056 if ("ActivityDefinition".equals(codeString)) 1057 return ACTIVITYDEFINITION; 1058 if ("AdverseEvent".equals(codeString)) 1059 return ADVERSEEVENT; 1060 if ("AllergyIntolerance".equals(codeString)) 1061 return ALLERGYINTOLERANCE; 1062 if ("Appointment".equals(codeString)) 1063 return APPOINTMENT; 1064 if ("AppointmentResponse".equals(codeString)) 1065 return APPOINTMENTRESPONSE; 1066 if ("AuditEvent".equals(codeString)) 1067 return AUDITEVENT; 1068 if ("Basic".equals(codeString)) 1069 return BASIC; 1070 if ("Binary".equals(codeString)) 1071 return BINARY; 1072 if ("BiologicallyDerivedProduct".equals(codeString)) 1073 return BIOLOGICALLYDERIVEDPRODUCT; 1074 if ("BodyStructure".equals(codeString)) 1075 return BODYSTRUCTURE; 1076 if ("Bundle".equals(codeString)) 1077 return BUNDLE; 1078 if ("CapabilityStatement".equals(codeString)) 1079 return CAPABILITYSTATEMENT; 1080 if ("CarePlan".equals(codeString)) 1081 return CAREPLAN; 1082 if ("CareTeam".equals(codeString)) 1083 return CARETEAM; 1084 if ("CatalogEntry".equals(codeString)) 1085 return CATALOGENTRY; 1086 if ("ChargeItem".equals(codeString)) 1087 return CHARGEITEM; 1088 if ("ChargeItemDefinition".equals(codeString)) 1089 return CHARGEITEMDEFINITION; 1090 if ("Claim".equals(codeString)) 1091 return CLAIM; 1092 if ("ClaimResponse".equals(codeString)) 1093 return CLAIMRESPONSE; 1094 if ("ClinicalImpression".equals(codeString)) 1095 return CLINICALIMPRESSION; 1096 if ("CodeSystem".equals(codeString)) 1097 return CODESYSTEM; 1098 if ("Communication".equals(codeString)) 1099 return COMMUNICATION; 1100 if ("CommunicationRequest".equals(codeString)) 1101 return COMMUNICATIONREQUEST; 1102 if ("CompartmentDefinition".equals(codeString)) 1103 return COMPARTMENTDEFINITION; 1104 if ("Composition".equals(codeString)) 1105 return COMPOSITION; 1106 if ("ConceptMap".equals(codeString)) 1107 return CONCEPTMAP; 1108 if ("Condition".equals(codeString)) 1109 return CONDITION; 1110 if ("Consent".equals(codeString)) 1111 return CONSENT; 1112 if ("Contract".equals(codeString)) 1113 return CONTRACT; 1114 if ("Coverage".equals(codeString)) 1115 return COVERAGE; 1116 if ("CoverageEligibilityRequest".equals(codeString)) 1117 return COVERAGEELIGIBILITYREQUEST; 1118 if ("CoverageEligibilityResponse".equals(codeString)) 1119 return COVERAGEELIGIBILITYRESPONSE; 1120 if ("DetectedIssue".equals(codeString)) 1121 return DETECTEDISSUE; 1122 if ("Device".equals(codeString)) 1123 return DEVICE; 1124 if ("DeviceDefinition".equals(codeString)) 1125 return DEVICEDEFINITION; 1126 if ("DeviceMetric".equals(codeString)) 1127 return DEVICEMETRIC; 1128 if ("DeviceRequest".equals(codeString)) 1129 return DEVICEREQUEST; 1130 if ("DeviceUseStatement".equals(codeString)) 1131 return DEVICEUSESTATEMENT; 1132 if ("DiagnosticReport".equals(codeString)) 1133 return DIAGNOSTICREPORT; 1134 if ("DocumentManifest".equals(codeString)) 1135 return DOCUMENTMANIFEST; 1136 if ("DocumentReference".equals(codeString)) 1137 return DOCUMENTREFERENCE; 1138 if ("DomainResource".equals(codeString)) 1139 return DOMAINRESOURCE; 1140 if ("EffectEvidenceSynthesis".equals(codeString)) 1141 return EFFECTEVIDENCESYNTHESIS; 1142 if ("Encounter".equals(codeString)) 1143 return ENCOUNTER; 1144 if ("Endpoint".equals(codeString)) 1145 return ENDPOINT; 1146 if ("EnrollmentRequest".equals(codeString)) 1147 return ENROLLMENTREQUEST; 1148 if ("EnrollmentResponse".equals(codeString)) 1149 return ENROLLMENTRESPONSE; 1150 if ("EpisodeOfCare".equals(codeString)) 1151 return EPISODEOFCARE; 1152 if ("EventDefinition".equals(codeString)) 1153 return EVENTDEFINITION; 1154 if ("Evidence".equals(codeString)) 1155 return EVIDENCE; 1156 if ("EvidenceVariable".equals(codeString)) 1157 return EVIDENCEVARIABLE; 1158 if ("ExampleScenario".equals(codeString)) 1159 return EXAMPLESCENARIO; 1160 if ("ExplanationOfBenefit".equals(codeString)) 1161 return EXPLANATIONOFBENEFIT; 1162 if ("FamilyMemberHistory".equals(codeString)) 1163 return FAMILYMEMBERHISTORY; 1164 if ("Flag".equals(codeString)) 1165 return FLAG; 1166 if ("Goal".equals(codeString)) 1167 return GOAL; 1168 if ("GraphDefinition".equals(codeString)) 1169 return GRAPHDEFINITION; 1170 if ("Group".equals(codeString)) 1171 return GROUP; 1172 if ("GuidanceResponse".equals(codeString)) 1173 return GUIDANCERESPONSE; 1174 if ("HealthcareService".equals(codeString)) 1175 return HEALTHCARESERVICE; 1176 if ("ImagingStudy".equals(codeString)) 1177 return IMAGINGSTUDY; 1178 if ("Immunization".equals(codeString)) 1179 return IMMUNIZATION; 1180 if ("ImmunizationEvaluation".equals(codeString)) 1181 return IMMUNIZATIONEVALUATION; 1182 if ("ImmunizationRecommendation".equals(codeString)) 1183 return IMMUNIZATIONRECOMMENDATION; 1184 if ("ImplementationGuide".equals(codeString)) 1185 return IMPLEMENTATIONGUIDE; 1186 if ("InsurancePlan".equals(codeString)) 1187 return INSURANCEPLAN; 1188 if ("Invoice".equals(codeString)) 1189 return INVOICE; 1190 if ("Library".equals(codeString)) 1191 return LIBRARY; 1192 if ("Linkage".equals(codeString)) 1193 return LINKAGE; 1194 if ("List".equals(codeString)) 1195 return LIST; 1196 if ("Location".equals(codeString)) 1197 return LOCATION; 1198 if ("Measure".equals(codeString)) 1199 return MEASURE; 1200 if ("MeasureReport".equals(codeString)) 1201 return MEASUREREPORT; 1202 if ("Media".equals(codeString)) 1203 return MEDIA; 1204 if ("Medication".equals(codeString)) 1205 return MEDICATION; 1206 if ("MedicationAdministration".equals(codeString)) 1207 return MEDICATIONADMINISTRATION; 1208 if ("MedicationDispense".equals(codeString)) 1209 return MEDICATIONDISPENSE; 1210 if ("MedicationKnowledge".equals(codeString)) 1211 return MEDICATIONKNOWLEDGE; 1212 if ("MedicationRequest".equals(codeString)) 1213 return MEDICATIONREQUEST; 1214 if ("MedicationStatement".equals(codeString)) 1215 return MEDICATIONSTATEMENT; 1216 if ("MedicinalProduct".equals(codeString)) 1217 return MEDICINALPRODUCT; 1218 if ("MedicinalProductAuthorization".equals(codeString)) 1219 return MEDICINALPRODUCTAUTHORIZATION; 1220 if ("MedicinalProductContraindication".equals(codeString)) 1221 return MEDICINALPRODUCTCONTRAINDICATION; 1222 if ("MedicinalProductIndication".equals(codeString)) 1223 return MEDICINALPRODUCTINDICATION; 1224 if ("MedicinalProductIngredient".equals(codeString)) 1225 return MEDICINALPRODUCTINGREDIENT; 1226 if ("MedicinalProductInteraction".equals(codeString)) 1227 return MEDICINALPRODUCTINTERACTION; 1228 if ("MedicinalProductManufactured".equals(codeString)) 1229 return MEDICINALPRODUCTMANUFACTURED; 1230 if ("MedicinalProductPackaged".equals(codeString)) 1231 return MEDICINALPRODUCTPACKAGED; 1232 if ("MedicinalProductPharmaceutical".equals(codeString)) 1233 return MEDICINALPRODUCTPHARMACEUTICAL; 1234 if ("MedicinalProductUndesirableEffect".equals(codeString)) 1235 return MEDICINALPRODUCTUNDESIRABLEEFFECT; 1236 if ("MessageDefinition".equals(codeString)) 1237 return MESSAGEDEFINITION; 1238 if ("MessageHeader".equals(codeString)) 1239 return MESSAGEHEADER; 1240 if ("MolecularSequence".equals(codeString)) 1241 return MOLECULARSEQUENCE; 1242 if ("NamingSystem".equals(codeString)) 1243 return NAMINGSYSTEM; 1244 if ("NutritionOrder".equals(codeString)) 1245 return NUTRITIONORDER; 1246 if ("Observation".equals(codeString)) 1247 return OBSERVATION; 1248 if ("ObservationDefinition".equals(codeString)) 1249 return OBSERVATIONDEFINITION; 1250 if ("OperationDefinition".equals(codeString)) 1251 return OPERATIONDEFINITION; 1252 if ("OperationOutcome".equals(codeString)) 1253 return OPERATIONOUTCOME; 1254 if ("Organization".equals(codeString)) 1255 return ORGANIZATION; 1256 if ("OrganizationAffiliation".equals(codeString)) 1257 return ORGANIZATIONAFFILIATION; 1258 if ("Parameters".equals(codeString)) 1259 return PARAMETERS; 1260 if ("Patient".equals(codeString)) 1261 return PATIENT; 1262 if ("PaymentNotice".equals(codeString)) 1263 return PAYMENTNOTICE; 1264 if ("PaymentReconciliation".equals(codeString)) 1265 return PAYMENTRECONCILIATION; 1266 if ("Person".equals(codeString)) 1267 return PERSON; 1268 if ("PlanDefinition".equals(codeString)) 1269 return PLANDEFINITION; 1270 if ("Practitioner".equals(codeString)) 1271 return PRACTITIONER; 1272 if ("PractitionerRole".equals(codeString)) 1273 return PRACTITIONERROLE; 1274 if ("Procedure".equals(codeString)) 1275 return PROCEDURE; 1276 if ("Provenance".equals(codeString)) 1277 return PROVENANCE; 1278 if ("Questionnaire".equals(codeString)) 1279 return QUESTIONNAIRE; 1280 if ("QuestionnaireResponse".equals(codeString)) 1281 return QUESTIONNAIRERESPONSE; 1282 if ("RelatedPerson".equals(codeString)) 1283 return RELATEDPERSON; 1284 if ("RequestGroup".equals(codeString)) 1285 return REQUESTGROUP; 1286 if ("ResearchDefinition".equals(codeString)) 1287 return RESEARCHDEFINITION; 1288 if ("ResearchElementDefinition".equals(codeString)) 1289 return RESEARCHELEMENTDEFINITION; 1290 if ("ResearchStudy".equals(codeString)) 1291 return RESEARCHSTUDY; 1292 if ("ResearchSubject".equals(codeString)) 1293 return RESEARCHSUBJECT; 1294 if ("Resource".equals(codeString)) 1295 return RESOURCE; 1296 if ("RiskAssessment".equals(codeString)) 1297 return RISKASSESSMENT; 1298 if ("RiskEvidenceSynthesis".equals(codeString)) 1299 return RISKEVIDENCESYNTHESIS; 1300 if ("Schedule".equals(codeString)) 1301 return SCHEDULE; 1302 if ("SearchParameter".equals(codeString)) 1303 return SEARCHPARAMETER; 1304 if ("ServiceRequest".equals(codeString)) 1305 return SERVICEREQUEST; 1306 if ("Slot".equals(codeString)) 1307 return SLOT; 1308 if ("Specimen".equals(codeString)) 1309 return SPECIMEN; 1310 if ("SpecimenDefinition".equals(codeString)) 1311 return SPECIMENDEFINITION; 1312 if ("StructureDefinition".equals(codeString)) 1313 return STRUCTUREDEFINITION; 1314 if ("StructureMap".equals(codeString)) 1315 return STRUCTUREMAP; 1316 if ("Subscription".equals(codeString)) 1317 return SUBSCRIPTION; 1318 if ("Substance".equals(codeString)) 1319 return SUBSTANCE; 1320 if ("SubstanceNucleicAcid".equals(codeString)) 1321 return SUBSTANCENUCLEICACID; 1322 if ("SubstancePolymer".equals(codeString)) 1323 return SUBSTANCEPOLYMER; 1324 if ("SubstanceProtein".equals(codeString)) 1325 return SUBSTANCEPROTEIN; 1326 if ("SubstanceReferenceInformation".equals(codeString)) 1327 return SUBSTANCEREFERENCEINFORMATION; 1328 if ("SubstanceSourceMaterial".equals(codeString)) 1329 return SUBSTANCESOURCEMATERIAL; 1330 if ("SubstanceSpecification".equals(codeString)) 1331 return SUBSTANCESPECIFICATION; 1332 if ("SupplyDelivery".equals(codeString)) 1333 return SUPPLYDELIVERY; 1334 if ("SupplyRequest".equals(codeString)) 1335 return SUPPLYREQUEST; 1336 if ("Task".equals(codeString)) 1337 return TASK; 1338 if ("TerminologyCapabilities".equals(codeString)) 1339 return TERMINOLOGYCAPABILITIES; 1340 if ("TestReport".equals(codeString)) 1341 return TESTREPORT; 1342 if ("TestScript".equals(codeString)) 1343 return TESTSCRIPT; 1344 if ("ValueSet".equals(codeString)) 1345 return VALUESET; 1346 if ("VerificationResult".equals(codeString)) 1347 return VERIFICATIONRESULT; 1348 if ("VisionPrescription".equals(codeString)) 1349 return VISIONPRESCRIPTION; 1350 if (Configuration.isAcceptInvalidEnums()) 1351 return null; 1352 else 1353 throw new FHIRException("Unknown FHIRResourceType code '" + codeString + "'"); 1354 } 1355 1356 public String toCode() { 1357 switch (this) { 1358 case ACCOUNT: 1359 return "Account"; 1360 case ACTIVITYDEFINITION: 1361 return "ActivityDefinition"; 1362 case ADVERSEEVENT: 1363 return "AdverseEvent"; 1364 case ALLERGYINTOLERANCE: 1365 return "AllergyIntolerance"; 1366 case APPOINTMENT: 1367 return "Appointment"; 1368 case APPOINTMENTRESPONSE: 1369 return "AppointmentResponse"; 1370 case AUDITEVENT: 1371 return "AuditEvent"; 1372 case BASIC: 1373 return "Basic"; 1374 case BINARY: 1375 return "Binary"; 1376 case BIOLOGICALLYDERIVEDPRODUCT: 1377 return "BiologicallyDerivedProduct"; 1378 case BODYSTRUCTURE: 1379 return "BodyStructure"; 1380 case BUNDLE: 1381 return "Bundle"; 1382 case CAPABILITYSTATEMENT: 1383 return "CapabilityStatement"; 1384 case CAREPLAN: 1385 return "CarePlan"; 1386 case CARETEAM: 1387 return "CareTeam"; 1388 case CATALOGENTRY: 1389 return "CatalogEntry"; 1390 case CHARGEITEM: 1391 return "ChargeItem"; 1392 case CHARGEITEMDEFINITION: 1393 return "ChargeItemDefinition"; 1394 case CLAIM: 1395 return "Claim"; 1396 case CLAIMRESPONSE: 1397 return "ClaimResponse"; 1398 case CLINICALIMPRESSION: 1399 return "ClinicalImpression"; 1400 case CODESYSTEM: 1401 return "CodeSystem"; 1402 case COMMUNICATION: 1403 return "Communication"; 1404 case COMMUNICATIONREQUEST: 1405 return "CommunicationRequest"; 1406 case COMPARTMENTDEFINITION: 1407 return "CompartmentDefinition"; 1408 case COMPOSITION: 1409 return "Composition"; 1410 case CONCEPTMAP: 1411 return "ConceptMap"; 1412 case CONDITION: 1413 return "Condition"; 1414 case CONSENT: 1415 return "Consent"; 1416 case CONTRACT: 1417 return "Contract"; 1418 case COVERAGE: 1419 return "Coverage"; 1420 case COVERAGEELIGIBILITYREQUEST: 1421 return "CoverageEligibilityRequest"; 1422 case COVERAGEELIGIBILITYRESPONSE: 1423 return "CoverageEligibilityResponse"; 1424 case DETECTEDISSUE: 1425 return "DetectedIssue"; 1426 case DEVICE: 1427 return "Device"; 1428 case DEVICEDEFINITION: 1429 return "DeviceDefinition"; 1430 case DEVICEMETRIC: 1431 return "DeviceMetric"; 1432 case DEVICEREQUEST: 1433 return "DeviceRequest"; 1434 case DEVICEUSESTATEMENT: 1435 return "DeviceUseStatement"; 1436 case DIAGNOSTICREPORT: 1437 return "DiagnosticReport"; 1438 case DOCUMENTMANIFEST: 1439 return "DocumentManifest"; 1440 case DOCUMENTREFERENCE: 1441 return "DocumentReference"; 1442 case DOMAINRESOURCE: 1443 return "DomainResource"; 1444 case EFFECTEVIDENCESYNTHESIS: 1445 return "EffectEvidenceSynthesis"; 1446 case ENCOUNTER: 1447 return "Encounter"; 1448 case ENDPOINT: 1449 return "Endpoint"; 1450 case ENROLLMENTREQUEST: 1451 return "EnrollmentRequest"; 1452 case ENROLLMENTRESPONSE: 1453 return "EnrollmentResponse"; 1454 case EPISODEOFCARE: 1455 return "EpisodeOfCare"; 1456 case EVENTDEFINITION: 1457 return "EventDefinition"; 1458 case EVIDENCE: 1459 return "Evidence"; 1460 case EVIDENCEVARIABLE: 1461 return "EvidenceVariable"; 1462 case EXAMPLESCENARIO: 1463 return "ExampleScenario"; 1464 case EXPLANATIONOFBENEFIT: 1465 return "ExplanationOfBenefit"; 1466 case FAMILYMEMBERHISTORY: 1467 return "FamilyMemberHistory"; 1468 case FLAG: 1469 return "Flag"; 1470 case GOAL: 1471 return "Goal"; 1472 case GRAPHDEFINITION: 1473 return "GraphDefinition"; 1474 case GROUP: 1475 return "Group"; 1476 case GUIDANCERESPONSE: 1477 return "GuidanceResponse"; 1478 case HEALTHCARESERVICE: 1479 return "HealthcareService"; 1480 case IMAGINGSTUDY: 1481 return "ImagingStudy"; 1482 case IMMUNIZATION: 1483 return "Immunization"; 1484 case IMMUNIZATIONEVALUATION: 1485 return "ImmunizationEvaluation"; 1486 case IMMUNIZATIONRECOMMENDATION: 1487 return "ImmunizationRecommendation"; 1488 case IMPLEMENTATIONGUIDE: 1489 return "ImplementationGuide"; 1490 case INSURANCEPLAN: 1491 return "InsurancePlan"; 1492 case INVOICE: 1493 return "Invoice"; 1494 case LIBRARY: 1495 return "Library"; 1496 case LINKAGE: 1497 return "Linkage"; 1498 case LIST: 1499 return "List"; 1500 case LOCATION: 1501 return "Location"; 1502 case MEASURE: 1503 return "Measure"; 1504 case MEASUREREPORT: 1505 return "MeasureReport"; 1506 case MEDIA: 1507 return "Media"; 1508 case MEDICATION: 1509 return "Medication"; 1510 case MEDICATIONADMINISTRATION: 1511 return "MedicationAdministration"; 1512 case MEDICATIONDISPENSE: 1513 return "MedicationDispense"; 1514 case MEDICATIONKNOWLEDGE: 1515 return "MedicationKnowledge"; 1516 case MEDICATIONREQUEST: 1517 return "MedicationRequest"; 1518 case MEDICATIONSTATEMENT: 1519 return "MedicationStatement"; 1520 case MEDICINALPRODUCT: 1521 return "MedicinalProduct"; 1522 case MEDICINALPRODUCTAUTHORIZATION: 1523 return "MedicinalProductAuthorization"; 1524 case MEDICINALPRODUCTCONTRAINDICATION: 1525 return "MedicinalProductContraindication"; 1526 case MEDICINALPRODUCTINDICATION: 1527 return "MedicinalProductIndication"; 1528 case MEDICINALPRODUCTINGREDIENT: 1529 return "MedicinalProductIngredient"; 1530 case MEDICINALPRODUCTINTERACTION: 1531 return "MedicinalProductInteraction"; 1532 case MEDICINALPRODUCTMANUFACTURED: 1533 return "MedicinalProductManufactured"; 1534 case MEDICINALPRODUCTPACKAGED: 1535 return "MedicinalProductPackaged"; 1536 case MEDICINALPRODUCTPHARMACEUTICAL: 1537 return "MedicinalProductPharmaceutical"; 1538 case MEDICINALPRODUCTUNDESIRABLEEFFECT: 1539 return "MedicinalProductUndesirableEffect"; 1540 case MESSAGEDEFINITION: 1541 return "MessageDefinition"; 1542 case MESSAGEHEADER: 1543 return "MessageHeader"; 1544 case MOLECULARSEQUENCE: 1545 return "MolecularSequence"; 1546 case NAMINGSYSTEM: 1547 return "NamingSystem"; 1548 case NUTRITIONORDER: 1549 return "NutritionOrder"; 1550 case OBSERVATION: 1551 return "Observation"; 1552 case OBSERVATIONDEFINITION: 1553 return "ObservationDefinition"; 1554 case OPERATIONDEFINITION: 1555 return "OperationDefinition"; 1556 case OPERATIONOUTCOME: 1557 return "OperationOutcome"; 1558 case ORGANIZATION: 1559 return "Organization"; 1560 case ORGANIZATIONAFFILIATION: 1561 return "OrganizationAffiliation"; 1562 case PARAMETERS: 1563 return "Parameters"; 1564 case PATIENT: 1565 return "Patient"; 1566 case PAYMENTNOTICE: 1567 return "PaymentNotice"; 1568 case PAYMENTRECONCILIATION: 1569 return "PaymentReconciliation"; 1570 case PERSON: 1571 return "Person"; 1572 case PLANDEFINITION: 1573 return "PlanDefinition"; 1574 case PRACTITIONER: 1575 return "Practitioner"; 1576 case PRACTITIONERROLE: 1577 return "PractitionerRole"; 1578 case PROCEDURE: 1579 return "Procedure"; 1580 case PROVENANCE: 1581 return "Provenance"; 1582 case QUESTIONNAIRE: 1583 return "Questionnaire"; 1584 case QUESTIONNAIRERESPONSE: 1585 return "QuestionnaireResponse"; 1586 case RELATEDPERSON: 1587 return "RelatedPerson"; 1588 case REQUESTGROUP: 1589 return "RequestGroup"; 1590 case RESEARCHDEFINITION: 1591 return "ResearchDefinition"; 1592 case RESEARCHELEMENTDEFINITION: 1593 return "ResearchElementDefinition"; 1594 case RESEARCHSTUDY: 1595 return "ResearchStudy"; 1596 case RESEARCHSUBJECT: 1597 return "ResearchSubject"; 1598 case RESOURCE: 1599 return "Resource"; 1600 case RISKASSESSMENT: 1601 return "RiskAssessment"; 1602 case RISKEVIDENCESYNTHESIS: 1603 return "RiskEvidenceSynthesis"; 1604 case SCHEDULE: 1605 return "Schedule"; 1606 case SEARCHPARAMETER: 1607 return "SearchParameter"; 1608 case SERVICEREQUEST: 1609 return "ServiceRequest"; 1610 case SLOT: 1611 return "Slot"; 1612 case SPECIMEN: 1613 return "Specimen"; 1614 case SPECIMENDEFINITION: 1615 return "SpecimenDefinition"; 1616 case STRUCTUREDEFINITION: 1617 return "StructureDefinition"; 1618 case STRUCTUREMAP: 1619 return "StructureMap"; 1620 case SUBSCRIPTION: 1621 return "Subscription"; 1622 case SUBSTANCE: 1623 return "Substance"; 1624 case SUBSTANCENUCLEICACID: 1625 return "SubstanceNucleicAcid"; 1626 case SUBSTANCEPOLYMER: 1627 return "SubstancePolymer"; 1628 case SUBSTANCEPROTEIN: 1629 return "SubstanceProtein"; 1630 case SUBSTANCEREFERENCEINFORMATION: 1631 return "SubstanceReferenceInformation"; 1632 case SUBSTANCESOURCEMATERIAL: 1633 return "SubstanceSourceMaterial"; 1634 case SUBSTANCESPECIFICATION: 1635 return "SubstanceSpecification"; 1636 case SUPPLYDELIVERY: 1637 return "SupplyDelivery"; 1638 case SUPPLYREQUEST: 1639 return "SupplyRequest"; 1640 case TASK: 1641 return "Task"; 1642 case TERMINOLOGYCAPABILITIES: 1643 return "TerminologyCapabilities"; 1644 case TESTREPORT: 1645 return "TestReport"; 1646 case TESTSCRIPT: 1647 return "TestScript"; 1648 case VALUESET: 1649 return "ValueSet"; 1650 case VERIFICATIONRESULT: 1651 return "VerificationResult"; 1652 case VISIONPRESCRIPTION: 1653 return "VisionPrescription"; 1654 case NULL: 1655 return null; 1656 default: 1657 return "?"; 1658 } 1659 } 1660 1661 public String getSystem() { 1662 switch (this) { 1663 case ACCOUNT: 1664 return "http://hl7.org/fhir/resource-types"; 1665 case ACTIVITYDEFINITION: 1666 return "http://hl7.org/fhir/resource-types"; 1667 case ADVERSEEVENT: 1668 return "http://hl7.org/fhir/resource-types"; 1669 case ALLERGYINTOLERANCE: 1670 return "http://hl7.org/fhir/resource-types"; 1671 case APPOINTMENT: 1672 return "http://hl7.org/fhir/resource-types"; 1673 case APPOINTMENTRESPONSE: 1674 return "http://hl7.org/fhir/resource-types"; 1675 case AUDITEVENT: 1676 return "http://hl7.org/fhir/resource-types"; 1677 case BASIC: 1678 return "http://hl7.org/fhir/resource-types"; 1679 case BINARY: 1680 return "http://hl7.org/fhir/resource-types"; 1681 case BIOLOGICALLYDERIVEDPRODUCT: 1682 return "http://hl7.org/fhir/resource-types"; 1683 case BODYSTRUCTURE: 1684 return "http://hl7.org/fhir/resource-types"; 1685 case BUNDLE: 1686 return "http://hl7.org/fhir/resource-types"; 1687 case CAPABILITYSTATEMENT: 1688 return "http://hl7.org/fhir/resource-types"; 1689 case CAREPLAN: 1690 return "http://hl7.org/fhir/resource-types"; 1691 case CARETEAM: 1692 return "http://hl7.org/fhir/resource-types"; 1693 case CATALOGENTRY: 1694 return "http://hl7.org/fhir/resource-types"; 1695 case CHARGEITEM: 1696 return "http://hl7.org/fhir/resource-types"; 1697 case CHARGEITEMDEFINITION: 1698 return "http://hl7.org/fhir/resource-types"; 1699 case CLAIM: 1700 return "http://hl7.org/fhir/resource-types"; 1701 case CLAIMRESPONSE: 1702 return "http://hl7.org/fhir/resource-types"; 1703 case CLINICALIMPRESSION: 1704 return "http://hl7.org/fhir/resource-types"; 1705 case CODESYSTEM: 1706 return "http://hl7.org/fhir/resource-types"; 1707 case COMMUNICATION: 1708 return "http://hl7.org/fhir/resource-types"; 1709 case COMMUNICATIONREQUEST: 1710 return "http://hl7.org/fhir/resource-types"; 1711 case COMPARTMENTDEFINITION: 1712 return "http://hl7.org/fhir/resource-types"; 1713 case COMPOSITION: 1714 return "http://hl7.org/fhir/resource-types"; 1715 case CONCEPTMAP: 1716 return "http://hl7.org/fhir/resource-types"; 1717 case CONDITION: 1718 return "http://hl7.org/fhir/resource-types"; 1719 case CONSENT: 1720 return "http://hl7.org/fhir/resource-types"; 1721 case CONTRACT: 1722 return "http://hl7.org/fhir/resource-types"; 1723 case COVERAGE: 1724 return "http://hl7.org/fhir/resource-types"; 1725 case COVERAGEELIGIBILITYREQUEST: 1726 return "http://hl7.org/fhir/resource-types"; 1727 case COVERAGEELIGIBILITYRESPONSE: 1728 return "http://hl7.org/fhir/resource-types"; 1729 case DETECTEDISSUE: 1730 return "http://hl7.org/fhir/resource-types"; 1731 case DEVICE: 1732 return "http://hl7.org/fhir/resource-types"; 1733 case DEVICEDEFINITION: 1734 return "http://hl7.org/fhir/resource-types"; 1735 case DEVICEMETRIC: 1736 return "http://hl7.org/fhir/resource-types"; 1737 case DEVICEREQUEST: 1738 return "http://hl7.org/fhir/resource-types"; 1739 case DEVICEUSESTATEMENT: 1740 return "http://hl7.org/fhir/resource-types"; 1741 case DIAGNOSTICREPORT: 1742 return "http://hl7.org/fhir/resource-types"; 1743 case DOCUMENTMANIFEST: 1744 return "http://hl7.org/fhir/resource-types"; 1745 case DOCUMENTREFERENCE: 1746 return "http://hl7.org/fhir/resource-types"; 1747 case DOMAINRESOURCE: 1748 return "http://hl7.org/fhir/resource-types"; 1749 case EFFECTEVIDENCESYNTHESIS: 1750 return "http://hl7.org/fhir/resource-types"; 1751 case ENCOUNTER: 1752 return "http://hl7.org/fhir/resource-types"; 1753 case ENDPOINT: 1754 return "http://hl7.org/fhir/resource-types"; 1755 case ENROLLMENTREQUEST: 1756 return "http://hl7.org/fhir/resource-types"; 1757 case ENROLLMENTRESPONSE: 1758 return "http://hl7.org/fhir/resource-types"; 1759 case EPISODEOFCARE: 1760 return "http://hl7.org/fhir/resource-types"; 1761 case EVENTDEFINITION: 1762 return "http://hl7.org/fhir/resource-types"; 1763 case EVIDENCE: 1764 return "http://hl7.org/fhir/resource-types"; 1765 case EVIDENCEVARIABLE: 1766 return "http://hl7.org/fhir/resource-types"; 1767 case EXAMPLESCENARIO: 1768 return "http://hl7.org/fhir/resource-types"; 1769 case EXPLANATIONOFBENEFIT: 1770 return "http://hl7.org/fhir/resource-types"; 1771 case FAMILYMEMBERHISTORY: 1772 return "http://hl7.org/fhir/resource-types"; 1773 case FLAG: 1774 return "http://hl7.org/fhir/resource-types"; 1775 case GOAL: 1776 return "http://hl7.org/fhir/resource-types"; 1777 case GRAPHDEFINITION: 1778 return "http://hl7.org/fhir/resource-types"; 1779 case GROUP: 1780 return "http://hl7.org/fhir/resource-types"; 1781 case GUIDANCERESPONSE: 1782 return "http://hl7.org/fhir/resource-types"; 1783 case HEALTHCARESERVICE: 1784 return "http://hl7.org/fhir/resource-types"; 1785 case IMAGINGSTUDY: 1786 return "http://hl7.org/fhir/resource-types"; 1787 case IMMUNIZATION: 1788 return "http://hl7.org/fhir/resource-types"; 1789 case IMMUNIZATIONEVALUATION: 1790 return "http://hl7.org/fhir/resource-types"; 1791 case IMMUNIZATIONRECOMMENDATION: 1792 return "http://hl7.org/fhir/resource-types"; 1793 case IMPLEMENTATIONGUIDE: 1794 return "http://hl7.org/fhir/resource-types"; 1795 case INSURANCEPLAN: 1796 return "http://hl7.org/fhir/resource-types"; 1797 case INVOICE: 1798 return "http://hl7.org/fhir/resource-types"; 1799 case LIBRARY: 1800 return "http://hl7.org/fhir/resource-types"; 1801 case LINKAGE: 1802 return "http://hl7.org/fhir/resource-types"; 1803 case LIST: 1804 return "http://hl7.org/fhir/resource-types"; 1805 case LOCATION: 1806 return "http://hl7.org/fhir/resource-types"; 1807 case MEASURE: 1808 return "http://hl7.org/fhir/resource-types"; 1809 case MEASUREREPORT: 1810 return "http://hl7.org/fhir/resource-types"; 1811 case MEDIA: 1812 return "http://hl7.org/fhir/resource-types"; 1813 case MEDICATION: 1814 return "http://hl7.org/fhir/resource-types"; 1815 case MEDICATIONADMINISTRATION: 1816 return "http://hl7.org/fhir/resource-types"; 1817 case MEDICATIONDISPENSE: 1818 return "http://hl7.org/fhir/resource-types"; 1819 case MEDICATIONKNOWLEDGE: 1820 return "http://hl7.org/fhir/resource-types"; 1821 case MEDICATIONREQUEST: 1822 return "http://hl7.org/fhir/resource-types"; 1823 case MEDICATIONSTATEMENT: 1824 return "http://hl7.org/fhir/resource-types"; 1825 case MEDICINALPRODUCT: 1826 return "http://hl7.org/fhir/resource-types"; 1827 case MEDICINALPRODUCTAUTHORIZATION: 1828 return "http://hl7.org/fhir/resource-types"; 1829 case MEDICINALPRODUCTCONTRAINDICATION: 1830 return "http://hl7.org/fhir/resource-types"; 1831 case MEDICINALPRODUCTINDICATION: 1832 return "http://hl7.org/fhir/resource-types"; 1833 case MEDICINALPRODUCTINGREDIENT: 1834 return "http://hl7.org/fhir/resource-types"; 1835 case MEDICINALPRODUCTINTERACTION: 1836 return "http://hl7.org/fhir/resource-types"; 1837 case MEDICINALPRODUCTMANUFACTURED: 1838 return "http://hl7.org/fhir/resource-types"; 1839 case MEDICINALPRODUCTPACKAGED: 1840 return "http://hl7.org/fhir/resource-types"; 1841 case MEDICINALPRODUCTPHARMACEUTICAL: 1842 return "http://hl7.org/fhir/resource-types"; 1843 case MEDICINALPRODUCTUNDESIRABLEEFFECT: 1844 return "http://hl7.org/fhir/resource-types"; 1845 case MESSAGEDEFINITION: 1846 return "http://hl7.org/fhir/resource-types"; 1847 case MESSAGEHEADER: 1848 return "http://hl7.org/fhir/resource-types"; 1849 case MOLECULARSEQUENCE: 1850 return "http://hl7.org/fhir/resource-types"; 1851 case NAMINGSYSTEM: 1852 return "http://hl7.org/fhir/resource-types"; 1853 case NUTRITIONORDER: 1854 return "http://hl7.org/fhir/resource-types"; 1855 case OBSERVATION: 1856 return "http://hl7.org/fhir/resource-types"; 1857 case OBSERVATIONDEFINITION: 1858 return "http://hl7.org/fhir/resource-types"; 1859 case OPERATIONDEFINITION: 1860 return "http://hl7.org/fhir/resource-types"; 1861 case OPERATIONOUTCOME: 1862 return "http://hl7.org/fhir/resource-types"; 1863 case ORGANIZATION: 1864 return "http://hl7.org/fhir/resource-types"; 1865 case ORGANIZATIONAFFILIATION: 1866 return "http://hl7.org/fhir/resource-types"; 1867 case PARAMETERS: 1868 return "http://hl7.org/fhir/resource-types"; 1869 case PATIENT: 1870 return "http://hl7.org/fhir/resource-types"; 1871 case PAYMENTNOTICE: 1872 return "http://hl7.org/fhir/resource-types"; 1873 case PAYMENTRECONCILIATION: 1874 return "http://hl7.org/fhir/resource-types"; 1875 case PERSON: 1876 return "http://hl7.org/fhir/resource-types"; 1877 case PLANDEFINITION: 1878 return "http://hl7.org/fhir/resource-types"; 1879 case PRACTITIONER: 1880 return "http://hl7.org/fhir/resource-types"; 1881 case PRACTITIONERROLE: 1882 return "http://hl7.org/fhir/resource-types"; 1883 case PROCEDURE: 1884 return "http://hl7.org/fhir/resource-types"; 1885 case PROVENANCE: 1886 return "http://hl7.org/fhir/resource-types"; 1887 case QUESTIONNAIRE: 1888 return "http://hl7.org/fhir/resource-types"; 1889 case QUESTIONNAIRERESPONSE: 1890 return "http://hl7.org/fhir/resource-types"; 1891 case RELATEDPERSON: 1892 return "http://hl7.org/fhir/resource-types"; 1893 case REQUESTGROUP: 1894 return "http://hl7.org/fhir/resource-types"; 1895 case RESEARCHDEFINITION: 1896 return "http://hl7.org/fhir/resource-types"; 1897 case RESEARCHELEMENTDEFINITION: 1898 return "http://hl7.org/fhir/resource-types"; 1899 case RESEARCHSTUDY: 1900 return "http://hl7.org/fhir/resource-types"; 1901 case RESEARCHSUBJECT: 1902 return "http://hl7.org/fhir/resource-types"; 1903 case RESOURCE: 1904 return "http://hl7.org/fhir/resource-types"; 1905 case RISKASSESSMENT: 1906 return "http://hl7.org/fhir/resource-types"; 1907 case RISKEVIDENCESYNTHESIS: 1908 return "http://hl7.org/fhir/resource-types"; 1909 case SCHEDULE: 1910 return "http://hl7.org/fhir/resource-types"; 1911 case SEARCHPARAMETER: 1912 return "http://hl7.org/fhir/resource-types"; 1913 case SERVICEREQUEST: 1914 return "http://hl7.org/fhir/resource-types"; 1915 case SLOT: 1916 return "http://hl7.org/fhir/resource-types"; 1917 case SPECIMEN: 1918 return "http://hl7.org/fhir/resource-types"; 1919 case SPECIMENDEFINITION: 1920 return "http://hl7.org/fhir/resource-types"; 1921 case STRUCTUREDEFINITION: 1922 return "http://hl7.org/fhir/resource-types"; 1923 case STRUCTUREMAP: 1924 return "http://hl7.org/fhir/resource-types"; 1925 case SUBSCRIPTION: 1926 return "http://hl7.org/fhir/resource-types"; 1927 case SUBSTANCE: 1928 return "http://hl7.org/fhir/resource-types"; 1929 case SUBSTANCENUCLEICACID: 1930 return "http://hl7.org/fhir/resource-types"; 1931 case SUBSTANCEPOLYMER: 1932 return "http://hl7.org/fhir/resource-types"; 1933 case SUBSTANCEPROTEIN: 1934 return "http://hl7.org/fhir/resource-types"; 1935 case SUBSTANCEREFERENCEINFORMATION: 1936 return "http://hl7.org/fhir/resource-types"; 1937 case SUBSTANCESOURCEMATERIAL: 1938 return "http://hl7.org/fhir/resource-types"; 1939 case SUBSTANCESPECIFICATION: 1940 return "http://hl7.org/fhir/resource-types"; 1941 case SUPPLYDELIVERY: 1942 return "http://hl7.org/fhir/resource-types"; 1943 case SUPPLYREQUEST: 1944 return "http://hl7.org/fhir/resource-types"; 1945 case TASK: 1946 return "http://hl7.org/fhir/resource-types"; 1947 case TERMINOLOGYCAPABILITIES: 1948 return "http://hl7.org/fhir/resource-types"; 1949 case TESTREPORT: 1950 return "http://hl7.org/fhir/resource-types"; 1951 case TESTSCRIPT: 1952 return "http://hl7.org/fhir/resource-types"; 1953 case VALUESET: 1954 return "http://hl7.org/fhir/resource-types"; 1955 case VERIFICATIONRESULT: 1956 return "http://hl7.org/fhir/resource-types"; 1957 case VISIONPRESCRIPTION: 1958 return "http://hl7.org/fhir/resource-types"; 1959 case NULL: 1960 return null; 1961 default: 1962 return "?"; 1963 } 1964 } 1965 1966 public String getDefinition() { 1967 switch (this) { 1968 case ACCOUNT: 1969 return "A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centers, etc."; 1970 case ACTIVITYDEFINITION: 1971 return "This resource allows for the definition of some activity to be performed, independent of a particular patient, practitioner, or other performance context."; 1972 case ADVERSEEVENT: 1973 return "Actual or potential/avoided event causing unintended physical injury resulting from or contributed to by medical care, a research study or other healthcare setting factors that requires additional monitoring, treatment, or hospitalization, or that results in death."; 1974 case ALLERGYINTOLERANCE: 1975 return "Risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to a substance."; 1976 case APPOINTMENT: 1977 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)."; 1978 case APPOINTMENTRESPONSE: 1979 return "A reply to an appointment request for a patient and/or practitioner(s), such as a confirmation or rejection."; 1980 case AUDITEVENT: 1981 return "A record of an event made for purposes of maintaining a security log. Typical uses include detection of intrusion attempts and monitoring for inappropriate usage."; 1982 case BASIC: 1983 return "Basic is used for handling concepts not yet defined in FHIR, narrative-only resources that don't map to an existing resource, and custom resources not appropriate for inclusion in the FHIR specification."; 1984 case BINARY: 1985 return "A resource that represents the data of a single raw artifact as digital content accessible in its native format. A Binary resource can contain any content, whether text, image, pdf, zip archive, etc."; 1986 case BIOLOGICALLYDERIVEDPRODUCT: 1987 return "A material substance originating from a biological entity intended to be transplanted or infused\ninto another (possibly the same) biological entity."; 1988 case BODYSTRUCTURE: 1989 return "Record details about an anatomical structure. This resource may be used when a coded concept does not provide the necessary detail needed for the use case."; 1990 case BUNDLE: 1991 return "A container for a collection of resources."; 1992 case CAPABILITYSTATEMENT: 1993 return "A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation."; 1994 case CAREPLAN: 1995 return "Describes the intention of how one or more practitioners intend to deliver care for a particular patient, group or community for a period of time, possibly limited to care for a specific condition or set of conditions."; 1996 case CARETEAM: 1997 return "The Care Team includes all the people and organizations who plan to participate in the coordination and delivery of care for a patient."; 1998 case CATALOGENTRY: 1999 return "Catalog entries are wrappers that contextualize items included in a catalog."; 2000 case CHARGEITEM: 2001 return "The resource ChargeItem describes the provision of healthcare provider products for a certain patient, therefore referring not only to the product, but containing in addition details of the provision, like date, time, amounts and participating organizations and persons. Main Usage of the ChargeItem is to enable the billing process and internal cost allocation."; 2002 case CHARGEITEMDEFINITION: 2003 return "The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system."; 2004 case CLAIM: 2005 return "A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement."; 2006 case CLAIMRESPONSE: 2007 return "This resource provides the adjudication details from the processing of a Claim resource."; 2008 case CLINICALIMPRESSION: 2009 return "A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called \"ClinicalImpression\" rather than \"ClinicalAssessment\" to avoid confusion with the recording of assessment tools such as Apgar score."; 2010 case CODESYSTEM: 2011 return "The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content."; 2012 case COMMUNICATION: 2013 return "An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency that was notified about a reportable condition."; 2014 case COMMUNICATIONREQUEST: 2015 return "A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition."; 2016 case COMPARTMENTDEFINITION: 2017 return "A compartment definition that defines how resources are accessed on a server."; 2018 case COMPOSITION: 2019 return "A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.)."; 2020 case CONCEPTMAP: 2021 return "A statement of relationships from one set of concepts to one or more other concepts - either concepts in code systems, or data element/data element concepts, or classes in class models."; 2022 case CONDITION: 2023 return "A clinical condition, problem, diagnosis, or other event, situation, issue, or clinical concept that has risen to a level of concern."; 2024 case CONSENT: 2025 return "A record of a healthcare consumer?s choices, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time."; 2026 case CONTRACT: 2027 return "Legally enforceable, formally recorded unilateral or bilateral directive i.e., a policy or agreement."; 2028 case COVERAGE: 2029 return "Financial instrument which may be used to reimburse or pay for health care products and services. Includes both insurance and self-payment."; 2030 case COVERAGEELIGIBILITYREQUEST: 2031 return "The CoverageEligibilityRequest provides patient and insurance coverage information to an insurer for them to respond, in the form of an CoverageEligibilityResponse, with information regarding whether the stated coverage is valid and in-force and optionally to provide the insurance details of the policy."; 2032 case COVERAGEELIGIBILITYRESPONSE: 2033 return "This resource provides eligibility and plan details from the processing of an CoverageEligibilityRequest resource."; 2034 case DETECTEDISSUE: 2035 return "Indicates an actual or potential clinical issue with or between one or more active or proposed clinical actions for a patient; e.g. Drug-drug interaction, Ineffective treatment frequency, Procedure-condition conflict, etc."; 2036 case DEVICE: 2037 return "A type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device."; 2038 case DEVICEDEFINITION: 2039 return "The characteristics, operational status and capabilities of a medical-related component of a medical device."; 2040 case DEVICEMETRIC: 2041 return "Describes a measurement, calculation or setting capability of a medical device."; 2042 case DEVICEREQUEST: 2043 return "Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker."; 2044 case DEVICEUSESTATEMENT: 2045 return "A record of a device being used by a patient where the record is the result of a report from the patient or another clinician."; 2046 case DIAGNOSTICREPORT: 2047 return "The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports."; 2048 case DOCUMENTMANIFEST: 2049 return "A collection of documents compiled for a purpose together with metadata that applies to the collection."; 2050 case DOCUMENTREFERENCE: 2051 return "A reference to a document of any kind for any purpose. Provides metadata about the document so that the document can be discovered and managed. The scope of a document is any seralized object with a mime-type, so includes formal patient centric documents (CDA), cliical notes, scanned paper, and non-patient specific documents like policy text."; 2052 case DOMAINRESOURCE: 2053 return "A resource that includes narrative, extensions, and contained resources."; 2054 case EFFECTEVIDENCESYNTHESIS: 2055 return "The EffectEvidenceSynthesis resource describes the difference in an outcome between exposures states in a population where the effect estimate is derived from a combination of research studies."; 2056 case ENCOUNTER: 2057 return "An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient."; 2058 case ENDPOINT: 2059 return "The technical details of an endpoint that can be used for electronic services, such as for web services providing XDS.b or a REST endpoint for another FHIR server. This may include any security context information."; 2060 case ENROLLMENTREQUEST: 2061 return "This resource provides the insurance enrollment details to the insurer regarding a specified coverage."; 2062 case ENROLLMENTRESPONSE: 2063 return "This resource provides enrollment and plan details from the processing of an EnrollmentRequest resource."; 2064 case EPISODEOFCARE: 2065 return "An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time."; 2066 case EVENTDEFINITION: 2067 return "The EventDefinition resource provides a reusable description of when a particular event can occur."; 2068 case EVIDENCE: 2069 return "The Evidence resource describes the conditional state (population and any exposures being compared within the population) and outcome (if specified) that the knowledge (evidence, assertion, recommendation) is about."; 2070 case EVIDENCEVARIABLE: 2071 return "The EvidenceVariable resource describes a \"PICO\" element that knowledge (evidence, assertion, recommendation) is about."; 2072 case EXAMPLESCENARIO: 2073 return "Example of workflow instance."; 2074 case EXPLANATIONOFBENEFIT: 2075 return "This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided."; 2076 case FAMILYMEMBERHISTORY: 2077 return "Significant health conditions for a person related to the patient relevant in the context of care for the patient."; 2078 case FLAG: 2079 return "Prospective warnings of potential issues when providing care to the patient."; 2080 case GOAL: 2081 return "Describes the intended objective(s) for a patient, group or organization care, for example, weight loss, restoring an activity of daily living, obtaining herd immunity via immunization, meeting a process improvement objective, etc."; 2082 case GRAPHDEFINITION: 2083 return "A formal computable definition of a graph of resources - that is, a coherent set of resources that form a graph by following references. The Graph Definition resource defines a set and makes rules about the set."; 2084 case GROUP: 2085 return "Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively, and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization."; 2086 case GUIDANCERESPONSE: 2087 return "A guidance response is the formal response to a guidance request, including any output parameters returned by the evaluation, as well as the description of any proposed actions to be taken."; 2088 case HEALTHCARESERVICE: 2089 return "The details of a healthcare service available at a location."; 2090 case IMAGINGSTUDY: 2091 return "Representation of the content produced in a DICOM imaging study. A study comprises a set of series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A series is of only one modality (e.g. X-ray, CT, MR, ultrasound), but a study may have multiple series of different modalities."; 2092 case IMMUNIZATION: 2093 return "Describes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party."; 2094 case IMMUNIZATIONEVALUATION: 2095 return "Describes a comparison of an immunization event against published recommendations to determine if the administration is \"valid\" in relation to those recommendations."; 2096 case IMMUNIZATIONRECOMMENDATION: 2097 return "A patient's point-in-time set of recommendations (i.e. forecasting) according to a published schedule with optional supporting justification."; 2098 case IMPLEMENTATIONGUIDE: 2099 return "A set of rules of how a particular interoperability or standards problem is solved - typically through the use of FHIR resources. This resource is used to gather all the parts of an implementation guide into a logical whole and to publish a computable definition of all the parts."; 2100 case INSURANCEPLAN: 2101 return "Details of a Health Insurance product/plan provided by an organization."; 2102 case INVOICE: 2103 return "Invoice containing collected ChargeItems from an Account with calculated individual and total price for Billing purpose."; 2104 case LIBRARY: 2105 return "The Library resource is a general-purpose container for knowledge asset definitions. It can be used to describe and expose existing knowledge assets such as logic libraries and information model descriptions, as well as to describe a collection of knowledge assets."; 2106 case LINKAGE: 2107 return "Identifies two or more records (resource instances) that refer to the same real-world \"occurrence\"."; 2108 case LIST: 2109 return "A list is a curated collection of resources."; 2110 case LOCATION: 2111 return "Details and position information for a physical place where services are provided and resources and participants may be stored, found, contained, or accommodated."; 2112 case MEASURE: 2113 return "The Measure resource provides the definition of a quality measure."; 2114 case MEASUREREPORT: 2115 return "The MeasureReport resource contains the results of the calculation of a measure; and optionally a reference to the resources involved in that calculation."; 2116 case MEDIA: 2117 return "A photo, video, or audio recording acquired or used in healthcare. The actual content may be inline or provided by direct reference."; 2118 case MEDICATION: 2119 return "This resource is primarily used for the identification and definition of a medication for the purposes of prescribing, dispensing, and administering a medication as well as for making statements about medication use."; 2120 case MEDICATIONADMINISTRATION: 2121 return "Describes the event of a patient consuming or otherwise being administered a medication. This may be as simple as swallowing a tablet or it may be a long running infusion. Related resources tie this event to the authorizing prescription, and the specific encounter between patient and health care practitioner."; 2122 case MEDICATIONDISPENSE: 2123 return "Indicates that a medication product is to be or has been dispensed for a named person/patient. This includes a description of the medication product (supply) provided and the instructions for administering the medication. The medication dispense is the result of a pharmacy system responding to a medication order."; 2124 case MEDICATIONKNOWLEDGE: 2125 return "Information about a medication that is used to support knowledge."; 2126 case MEDICATIONREQUEST: 2127 return "An order or request for both supply of the medication and the instructions for administration of the medication to a patient. The resource is called \"MedicationRequest\" rather than \"MedicationPrescription\" or \"MedicationOrder\" to generalize the use across inpatient and outpatient settings, including care plans, etc., and to harmonize with workflow patterns."; 2128 case MEDICATIONSTATEMENT: 2129 return "A record of a medication that is being consumed by a patient. A MedicationStatement may indicate that the patient may be taking the medication now or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from sources such as the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains. \n\nThe primary difference between a medication statement and a medication administration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medication statement is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the medication statement information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information."; 2130 case MEDICINALPRODUCT: 2131 return "Detailed definition of a medicinal product, typically for uses other than direct patient care (e.g. regulatory use)."; 2132 case MEDICINALPRODUCTAUTHORIZATION: 2133 return "The regulatory authorization of a medicinal product."; 2134 case MEDICINALPRODUCTCONTRAINDICATION: 2135 return "The clinical particulars - indications, contraindications etc. of a medicinal product, including for regulatory purposes."; 2136 case MEDICINALPRODUCTINDICATION: 2137 return "Indication for the Medicinal Product."; 2138 case MEDICINALPRODUCTINGREDIENT: 2139 return "An ingredient of a manufactured item or pharmaceutical product."; 2140 case MEDICINALPRODUCTINTERACTION: 2141 return "The interactions of the medicinal product with other medicinal products, or other forms of interactions."; 2142 case MEDICINALPRODUCTMANUFACTURED: 2143 return "The manufactured item as contained in the packaged medicinal product."; 2144 case MEDICINALPRODUCTPACKAGED: 2145 return "A medicinal product in a container or package."; 2146 case MEDICINALPRODUCTPHARMACEUTICAL: 2147 return "A pharmaceutical product described in terms of its composition and dose form."; 2148 case MEDICINALPRODUCTUNDESIRABLEEFFECT: 2149 return "Describe the undesirable effects of the medicinal product."; 2150 case MESSAGEDEFINITION: 2151 return "Defines the characteristics of a message that can be shared between systems, including the type of event that initiates the message, the content to be transmitted and what response(s), if any, are permitted."; 2152 case MESSAGEHEADER: 2153 return "The header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle."; 2154 case MOLECULARSEQUENCE: 2155 return "Raw data describing a biological sequence."; 2156 case NAMINGSYSTEM: 2157 return "A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a \"System\" used within the Identifier and Coding data types."; 2158 case NUTRITIONORDER: 2159 return "A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident."; 2160 case OBSERVATION: 2161 return "Measurements and simple assertions made about a patient, device or other subject."; 2162 case OBSERVATIONDEFINITION: 2163 return "Set of definitional characteristics for a kind of observation or measurement produced or consumed by an orderable health care service."; 2164 case OPERATIONDEFINITION: 2165 return "A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction)."; 2166 case OPERATIONOUTCOME: 2167 return "A collection of error, warning, or information messages that result from a system action."; 2168 case ORGANIZATION: 2169 return "A formally or informally recognized grouping of people or organizations formed for the purpose of achieving some form of collective action. Includes companies, institutions, corporations, departments, community groups, healthcare practice groups, payer/insurer, etc."; 2170 case ORGANIZATIONAFFILIATION: 2171 return "Defines an affiliation/assotiation/relationship between 2 distinct oganizations, that is not a part-of relationship/sub-division relationship."; 2172 case PARAMETERS: 2173 return "This resource is a non-persisted resource used to pass information into and back from an [operation](operations.html). It has no other use, and there is no RESTful endpoint associated with it."; 2174 case PATIENT: 2175 return "Demographics and other administrative information about an individual or animal receiving care or other health-related services."; 2176 case PAYMENTNOTICE: 2177 return "This resource provides the status of the payment for goods and services rendered, and the request and response resource references."; 2178 case PAYMENTRECONCILIATION: 2179 return "This resource provides the details including amount of a payment and allocates the payment items being paid."; 2180 case PERSON: 2181 return "Demographics and administrative information about a person independent of a specific health-related context."; 2182 case PLANDEFINITION: 2183 return "This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols."; 2184 case PRACTITIONER: 2185 return "A person who is directly or indirectly involved in the provisioning of healthcare."; 2186 case PRACTITIONERROLE: 2187 return "A specific set of Roles/Locations/specialties/services that a practitioner may perform at an organization for a period of time."; 2188 case PROCEDURE: 2189 return "An action that is or was performed on or for a patient. This can be a physical intervention like an operation, or less invasive like long term services, counseling, or hypnotherapy."; 2190 case PROVENANCE: 2191 return "Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies."; 2192 case QUESTIONNAIRE: 2193 return "A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection."; 2194 case QUESTIONNAIRERESPONSE: 2195 return "A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the questionnaire being responded to."; 2196 case RELATEDPERSON: 2197 return "Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process."; 2198 case REQUESTGROUP: 2199 return "A group of related requests that can be used to capture intended activities that have inter-dependencies such as \"give this medication after that one\"."; 2200 case RESEARCHDEFINITION: 2201 return "The ResearchDefinition resource describes the conditional state (population and any exposures being compared within the population) and outcome (if specified) that the knowledge (evidence, assertion, recommendation) is about."; 2202 case RESEARCHELEMENTDEFINITION: 2203 return "The ResearchElementDefinition resource describes a \"PICO\" element that knowledge (evidence, assertion, recommendation) is about."; 2204 case RESEARCHSTUDY: 2205 return "A process where a researcher or organization plans and then executes a series of steps intended to increase the field of healthcare-related knowledge. This includes studies of safety, efficacy, comparative effectiveness and other information about medications, devices, therapies and other interventional and investigative techniques. A ResearchStudy involves the gathering of information about human or animal subjects."; 2206 case RESEARCHSUBJECT: 2207 return "A physical entity which is the primary unit of operational and/or administrative interest in a study."; 2208 case RESOURCE: 2209 return "This is the base resource type for everything."; 2210 case RISKASSESSMENT: 2211 return "An assessment of the likely outcome(s) for a patient or other subject as well as the likelihood of each outcome."; 2212 case RISKEVIDENCESYNTHESIS: 2213 return "The RiskEvidenceSynthesis resource describes the likelihood of an outcome in a population plus exposure state where the risk estimate is derived from a combination of research studies."; 2214 case SCHEDULE: 2215 return "A container for slots of time that may be available for booking appointments."; 2216 case SEARCHPARAMETER: 2217 return "A search parameter that defines a named search item that can be used to search/filter on a resource."; 2218 case SERVICEREQUEST: 2219 return "A record of a request for service such as diagnostic investigations, treatments, or operations to be performed."; 2220 case SLOT: 2221 return "A slot of time on a schedule that may be available for booking appointments."; 2222 case SPECIMEN: 2223 return "A sample to be used for analysis."; 2224 case SPECIMENDEFINITION: 2225 return "A kind of specimen with associated set of requirements."; 2226 case STRUCTUREDEFINITION: 2227 return "A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types."; 2228 case STRUCTUREMAP: 2229 return "A Map of relationships between 2 structures that can be used to transform data."; 2230 case SUBSCRIPTION: 2231 return "The subscription resource is used to define a push-based subscription from a server to another system. Once a subscription is registered with the server, the server checks every resource that is created or updated, and if the resource matches the given criteria, it sends a message on the defined \"channel\" so that another system can take an appropriate action."; 2232 case SUBSTANCE: 2233 return "A homogeneous material with a definite composition."; 2234 case SUBSTANCENUCLEICACID: 2235 return "Nucleic acids are defined by three distinct elements: the base, sugar and linkage. Individual substance/moiety IDs will be created for each of these elements. The nucleotide sequence will be always entered in the 5?-3? direction."; 2236 case SUBSTANCEPOLYMER: 2237 return "Todo."; 2238 case SUBSTANCEPROTEIN: 2239 return "A SubstanceProtein is defined as a single unit of a linear amino acid sequence, or a combination of subunits that are either covalently linked or have a defined invariant stoichiometric relationship. This includes all synthetic, recombinant and purified SubstanceProteins of defined sequence, whether the use is therapeutic or prophylactic. This set of elements will be used to describe albumins, coagulation factors, cytokines, growth factors, peptide/SubstanceProtein hormones, enzymes, toxins, toxoids, recombinant vaccines, and immunomodulators."; 2240 case SUBSTANCEREFERENCEINFORMATION: 2241 return "Todo."; 2242 case SUBSTANCESOURCEMATERIAL: 2243 return "Source material shall capture information on the taxonomic and anatomical origins as well as the fraction of a material that can result in or can be modified to form a substance. This set of data elements shall be used to define polymer substances isolated from biological matrices. Taxonomic and anatomical origins shall be described using a controlled vocabulary as required. This information is captured for naturally derived polymers ( . starch) and structurally diverse substances. For Organisms belonging to the Kingdom Plantae the Substance level defines the fresh material of a single species or infraspecies, the Herbal Drug and the Herbal preparation. For Herbal preparations, the fraction information will be captured at the Substance information level and additional information for herbal extracts will be captured at the Specified Substance Group 1 information level. See for further explanation the Substance Class: Structurally Diverse and the herbal annex."; 2244 case SUBSTANCESPECIFICATION: 2245 return "The detailed description of a substance, typically at a level beyond what is used for prescribing."; 2246 case SUPPLYDELIVERY: 2247 return "Record of delivery of what is supplied."; 2248 case SUPPLYREQUEST: 2249 return "A record of a request for a medication, substance or device used in the healthcare setting."; 2250 case TASK: 2251 return "A task to be performed."; 2252 case TERMINOLOGYCAPABILITIES: 2253 return "A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation."; 2254 case TESTREPORT: 2255 return "A summary of information based on the results of executing a TestScript."; 2256 case TESTSCRIPT: 2257 return "A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification."; 2258 case VALUESET: 2259 return "A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html)."; 2260 case VERIFICATIONRESULT: 2261 return "Describes validation requirements, source(s), status and dates for one or more elements."; 2262 case VISIONPRESCRIPTION: 2263 return "An authorization for the provision of glasses and/or contact lenses to a patient."; 2264 case NULL: 2265 return null; 2266 default: 2267 return "?"; 2268 } 2269 } 2270 2271 public String getDisplay() { 2272 switch (this) { 2273 case ACCOUNT: 2274 return "Account"; 2275 case ACTIVITYDEFINITION: 2276 return "ActivityDefinition"; 2277 case ADVERSEEVENT: 2278 return "AdverseEvent"; 2279 case ALLERGYINTOLERANCE: 2280 return "AllergyIntolerance"; 2281 case APPOINTMENT: 2282 return "Appointment"; 2283 case APPOINTMENTRESPONSE: 2284 return "AppointmentResponse"; 2285 case AUDITEVENT: 2286 return "AuditEvent"; 2287 case BASIC: 2288 return "Basic"; 2289 case BINARY: 2290 return "Binary"; 2291 case BIOLOGICALLYDERIVEDPRODUCT: 2292 return "BiologicallyDerivedProduct"; 2293 case BODYSTRUCTURE: 2294 return "BodyStructure"; 2295 case BUNDLE: 2296 return "Bundle"; 2297 case CAPABILITYSTATEMENT: 2298 return "CapabilityStatement"; 2299 case CAREPLAN: 2300 return "CarePlan"; 2301 case CARETEAM: 2302 return "CareTeam"; 2303 case CATALOGENTRY: 2304 return "CatalogEntry"; 2305 case CHARGEITEM: 2306 return "ChargeItem"; 2307 case CHARGEITEMDEFINITION: 2308 return "ChargeItemDefinition"; 2309 case CLAIM: 2310 return "Claim"; 2311 case CLAIMRESPONSE: 2312 return "ClaimResponse"; 2313 case CLINICALIMPRESSION: 2314 return "ClinicalImpression"; 2315 case CODESYSTEM: 2316 return "CodeSystem"; 2317 case COMMUNICATION: 2318 return "Communication"; 2319 case COMMUNICATIONREQUEST: 2320 return "CommunicationRequest"; 2321 case COMPARTMENTDEFINITION: 2322 return "CompartmentDefinition"; 2323 case COMPOSITION: 2324 return "Composition"; 2325 case CONCEPTMAP: 2326 return "ConceptMap"; 2327 case CONDITION: 2328 return "Condition"; 2329 case CONSENT: 2330 return "Consent"; 2331 case CONTRACT: 2332 return "Contract"; 2333 case COVERAGE: 2334 return "Coverage"; 2335 case COVERAGEELIGIBILITYREQUEST: 2336 return "CoverageEligibilityRequest"; 2337 case COVERAGEELIGIBILITYRESPONSE: 2338 return "CoverageEligibilityResponse"; 2339 case DETECTEDISSUE: 2340 return "DetectedIssue"; 2341 case DEVICE: 2342 return "Device"; 2343 case DEVICEDEFINITION: 2344 return "DeviceDefinition"; 2345 case DEVICEMETRIC: 2346 return "DeviceMetric"; 2347 case DEVICEREQUEST: 2348 return "DeviceRequest"; 2349 case DEVICEUSESTATEMENT: 2350 return "DeviceUseStatement"; 2351 case DIAGNOSTICREPORT: 2352 return "DiagnosticReport"; 2353 case DOCUMENTMANIFEST: 2354 return "DocumentManifest"; 2355 case DOCUMENTREFERENCE: 2356 return "DocumentReference"; 2357 case DOMAINRESOURCE: 2358 return "DomainResource"; 2359 case EFFECTEVIDENCESYNTHESIS: 2360 return "EffectEvidenceSynthesis"; 2361 case ENCOUNTER: 2362 return "Encounter"; 2363 case ENDPOINT: 2364 return "Endpoint"; 2365 case ENROLLMENTREQUEST: 2366 return "EnrollmentRequest"; 2367 case ENROLLMENTRESPONSE: 2368 return "EnrollmentResponse"; 2369 case EPISODEOFCARE: 2370 return "EpisodeOfCare"; 2371 case EVENTDEFINITION: 2372 return "EventDefinition"; 2373 case EVIDENCE: 2374 return "Evidence"; 2375 case EVIDENCEVARIABLE: 2376 return "EvidenceVariable"; 2377 case EXAMPLESCENARIO: 2378 return "ExampleScenario"; 2379 case EXPLANATIONOFBENEFIT: 2380 return "ExplanationOfBenefit"; 2381 case FAMILYMEMBERHISTORY: 2382 return "FamilyMemberHistory"; 2383 case FLAG: 2384 return "Flag"; 2385 case GOAL: 2386 return "Goal"; 2387 case GRAPHDEFINITION: 2388 return "GraphDefinition"; 2389 case GROUP: 2390 return "Group"; 2391 case GUIDANCERESPONSE: 2392 return "GuidanceResponse"; 2393 case HEALTHCARESERVICE: 2394 return "HealthcareService"; 2395 case IMAGINGSTUDY: 2396 return "ImagingStudy"; 2397 case IMMUNIZATION: 2398 return "Immunization"; 2399 case IMMUNIZATIONEVALUATION: 2400 return "ImmunizationEvaluation"; 2401 case IMMUNIZATIONRECOMMENDATION: 2402 return "ImmunizationRecommendation"; 2403 case IMPLEMENTATIONGUIDE: 2404 return "ImplementationGuide"; 2405 case INSURANCEPLAN: 2406 return "InsurancePlan"; 2407 case INVOICE: 2408 return "Invoice"; 2409 case LIBRARY: 2410 return "Library"; 2411 case LINKAGE: 2412 return "Linkage"; 2413 case LIST: 2414 return "List"; 2415 case LOCATION: 2416 return "Location"; 2417 case MEASURE: 2418 return "Measure"; 2419 case MEASUREREPORT: 2420 return "MeasureReport"; 2421 case MEDIA: 2422 return "Media"; 2423 case MEDICATION: 2424 return "Medication"; 2425 case MEDICATIONADMINISTRATION: 2426 return "MedicationAdministration"; 2427 case MEDICATIONDISPENSE: 2428 return "MedicationDispense"; 2429 case MEDICATIONKNOWLEDGE: 2430 return "MedicationKnowledge"; 2431 case MEDICATIONREQUEST: 2432 return "MedicationRequest"; 2433 case MEDICATIONSTATEMENT: 2434 return "MedicationStatement"; 2435 case MEDICINALPRODUCT: 2436 return "MedicinalProduct"; 2437 case MEDICINALPRODUCTAUTHORIZATION: 2438 return "MedicinalProductAuthorization"; 2439 case MEDICINALPRODUCTCONTRAINDICATION: 2440 return "MedicinalProductContraindication"; 2441 case MEDICINALPRODUCTINDICATION: 2442 return "MedicinalProductIndication"; 2443 case MEDICINALPRODUCTINGREDIENT: 2444 return "MedicinalProductIngredient"; 2445 case MEDICINALPRODUCTINTERACTION: 2446 return "MedicinalProductInteraction"; 2447 case MEDICINALPRODUCTMANUFACTURED: 2448 return "MedicinalProductManufactured"; 2449 case MEDICINALPRODUCTPACKAGED: 2450 return "MedicinalProductPackaged"; 2451 case MEDICINALPRODUCTPHARMACEUTICAL: 2452 return "MedicinalProductPharmaceutical"; 2453 case MEDICINALPRODUCTUNDESIRABLEEFFECT: 2454 return "MedicinalProductUndesirableEffect"; 2455 case MESSAGEDEFINITION: 2456 return "MessageDefinition"; 2457 case MESSAGEHEADER: 2458 return "MessageHeader"; 2459 case MOLECULARSEQUENCE: 2460 return "MolecularSequence"; 2461 case NAMINGSYSTEM: 2462 return "NamingSystem"; 2463 case NUTRITIONORDER: 2464 return "NutritionOrder"; 2465 case OBSERVATION: 2466 return "Observation"; 2467 case OBSERVATIONDEFINITION: 2468 return "ObservationDefinition"; 2469 case OPERATIONDEFINITION: 2470 return "OperationDefinition"; 2471 case OPERATIONOUTCOME: 2472 return "OperationOutcome"; 2473 case ORGANIZATION: 2474 return "Organization"; 2475 case ORGANIZATIONAFFILIATION: 2476 return "OrganizationAffiliation"; 2477 case PARAMETERS: 2478 return "Parameters"; 2479 case PATIENT: 2480 return "Patient"; 2481 case PAYMENTNOTICE: 2482 return "PaymentNotice"; 2483 case PAYMENTRECONCILIATION: 2484 return "PaymentReconciliation"; 2485 case PERSON: 2486 return "Person"; 2487 case PLANDEFINITION: 2488 return "PlanDefinition"; 2489 case PRACTITIONER: 2490 return "Practitioner"; 2491 case PRACTITIONERROLE: 2492 return "PractitionerRole"; 2493 case PROCEDURE: 2494 return "Procedure"; 2495 case PROVENANCE: 2496 return "Provenance"; 2497 case QUESTIONNAIRE: 2498 return "Questionnaire"; 2499 case QUESTIONNAIRERESPONSE: 2500 return "QuestionnaireResponse"; 2501 case RELATEDPERSON: 2502 return "RelatedPerson"; 2503 case REQUESTGROUP: 2504 return "RequestGroup"; 2505 case RESEARCHDEFINITION: 2506 return "ResearchDefinition"; 2507 case RESEARCHELEMENTDEFINITION: 2508 return "ResearchElementDefinition"; 2509 case RESEARCHSTUDY: 2510 return "ResearchStudy"; 2511 case RESEARCHSUBJECT: 2512 return "ResearchSubject"; 2513 case RESOURCE: 2514 return "Resource"; 2515 case RISKASSESSMENT: 2516 return "RiskAssessment"; 2517 case RISKEVIDENCESYNTHESIS: 2518 return "RiskEvidenceSynthesis"; 2519 case SCHEDULE: 2520 return "Schedule"; 2521 case SEARCHPARAMETER: 2522 return "SearchParameter"; 2523 case SERVICEREQUEST: 2524 return "ServiceRequest"; 2525 case SLOT: 2526 return "Slot"; 2527 case SPECIMEN: 2528 return "Specimen"; 2529 case SPECIMENDEFINITION: 2530 return "SpecimenDefinition"; 2531 case STRUCTUREDEFINITION: 2532 return "StructureDefinition"; 2533 case STRUCTUREMAP: 2534 return "StructureMap"; 2535 case SUBSCRIPTION: 2536 return "Subscription"; 2537 case SUBSTANCE: 2538 return "Substance"; 2539 case SUBSTANCENUCLEICACID: 2540 return "SubstanceNucleicAcid"; 2541 case SUBSTANCEPOLYMER: 2542 return "SubstancePolymer"; 2543 case SUBSTANCEPROTEIN: 2544 return "SubstanceProtein"; 2545 case SUBSTANCEREFERENCEINFORMATION: 2546 return "SubstanceReferenceInformation"; 2547 case SUBSTANCESOURCEMATERIAL: 2548 return "SubstanceSourceMaterial"; 2549 case SUBSTANCESPECIFICATION: 2550 return "SubstanceSpecification"; 2551 case SUPPLYDELIVERY: 2552 return "SupplyDelivery"; 2553 case SUPPLYREQUEST: 2554 return "SupplyRequest"; 2555 case TASK: 2556 return "Task"; 2557 case TERMINOLOGYCAPABILITIES: 2558 return "TerminologyCapabilities"; 2559 case TESTREPORT: 2560 return "TestReport"; 2561 case TESTSCRIPT: 2562 return "TestScript"; 2563 case VALUESET: 2564 return "ValueSet"; 2565 case VERIFICATIONRESULT: 2566 return "VerificationResult"; 2567 case VISIONPRESCRIPTION: 2568 return "VisionPrescription"; 2569 case NULL: 2570 return null; 2571 default: 2572 return "?"; 2573 } 2574 } 2575 } 2576 2577 public static class FHIRResourceTypeEnumFactory implements EnumFactory<FHIRResourceType> { 2578 public FHIRResourceType fromCode(String codeString) throws IllegalArgumentException { 2579 if (codeString == null || "".equals(codeString)) 2580 if (codeString == null || "".equals(codeString)) 2581 return null; 2582 if ("Account".equals(codeString)) 2583 return FHIRResourceType.ACCOUNT; 2584 if ("ActivityDefinition".equals(codeString)) 2585 return FHIRResourceType.ACTIVITYDEFINITION; 2586 if ("AdverseEvent".equals(codeString)) 2587 return FHIRResourceType.ADVERSEEVENT; 2588 if ("AllergyIntolerance".equals(codeString)) 2589 return FHIRResourceType.ALLERGYINTOLERANCE; 2590 if ("Appointment".equals(codeString)) 2591 return FHIRResourceType.APPOINTMENT; 2592 if ("AppointmentResponse".equals(codeString)) 2593 return FHIRResourceType.APPOINTMENTRESPONSE; 2594 if ("AuditEvent".equals(codeString)) 2595 return FHIRResourceType.AUDITEVENT; 2596 if ("Basic".equals(codeString)) 2597 return FHIRResourceType.BASIC; 2598 if ("Binary".equals(codeString)) 2599 return FHIRResourceType.BINARY; 2600 if ("BiologicallyDerivedProduct".equals(codeString)) 2601 return FHIRResourceType.BIOLOGICALLYDERIVEDPRODUCT; 2602 if ("BodyStructure".equals(codeString)) 2603 return FHIRResourceType.BODYSTRUCTURE; 2604 if ("Bundle".equals(codeString)) 2605 return FHIRResourceType.BUNDLE; 2606 if ("CapabilityStatement".equals(codeString)) 2607 return FHIRResourceType.CAPABILITYSTATEMENT; 2608 if ("CarePlan".equals(codeString)) 2609 return FHIRResourceType.CAREPLAN; 2610 if ("CareTeam".equals(codeString)) 2611 return FHIRResourceType.CARETEAM; 2612 if ("CatalogEntry".equals(codeString)) 2613 return FHIRResourceType.CATALOGENTRY; 2614 if ("ChargeItem".equals(codeString)) 2615 return FHIRResourceType.CHARGEITEM; 2616 if ("ChargeItemDefinition".equals(codeString)) 2617 return FHIRResourceType.CHARGEITEMDEFINITION; 2618 if ("Claim".equals(codeString)) 2619 return FHIRResourceType.CLAIM; 2620 if ("ClaimResponse".equals(codeString)) 2621 return FHIRResourceType.CLAIMRESPONSE; 2622 if ("ClinicalImpression".equals(codeString)) 2623 return FHIRResourceType.CLINICALIMPRESSION; 2624 if ("CodeSystem".equals(codeString)) 2625 return FHIRResourceType.CODESYSTEM; 2626 if ("Communication".equals(codeString)) 2627 return FHIRResourceType.COMMUNICATION; 2628 if ("CommunicationRequest".equals(codeString)) 2629 return FHIRResourceType.COMMUNICATIONREQUEST; 2630 if ("CompartmentDefinition".equals(codeString)) 2631 return FHIRResourceType.COMPARTMENTDEFINITION; 2632 if ("Composition".equals(codeString)) 2633 return FHIRResourceType.COMPOSITION; 2634 if ("ConceptMap".equals(codeString)) 2635 return FHIRResourceType.CONCEPTMAP; 2636 if ("Condition".equals(codeString)) 2637 return FHIRResourceType.CONDITION; 2638 if ("Consent".equals(codeString)) 2639 return FHIRResourceType.CONSENT; 2640 if ("Contract".equals(codeString)) 2641 return FHIRResourceType.CONTRACT; 2642 if ("Coverage".equals(codeString)) 2643 return FHIRResourceType.COVERAGE; 2644 if ("CoverageEligibilityRequest".equals(codeString)) 2645 return FHIRResourceType.COVERAGEELIGIBILITYREQUEST; 2646 if ("CoverageEligibilityResponse".equals(codeString)) 2647 return FHIRResourceType.COVERAGEELIGIBILITYRESPONSE; 2648 if ("DetectedIssue".equals(codeString)) 2649 return FHIRResourceType.DETECTEDISSUE; 2650 if ("Device".equals(codeString)) 2651 return FHIRResourceType.DEVICE; 2652 if ("DeviceDefinition".equals(codeString)) 2653 return FHIRResourceType.DEVICEDEFINITION; 2654 if ("DeviceMetric".equals(codeString)) 2655 return FHIRResourceType.DEVICEMETRIC; 2656 if ("DeviceRequest".equals(codeString)) 2657 return FHIRResourceType.DEVICEREQUEST; 2658 if ("DeviceUseStatement".equals(codeString)) 2659 return FHIRResourceType.DEVICEUSESTATEMENT; 2660 if ("DiagnosticReport".equals(codeString)) 2661 return FHIRResourceType.DIAGNOSTICREPORT; 2662 if ("DocumentManifest".equals(codeString)) 2663 return FHIRResourceType.DOCUMENTMANIFEST; 2664 if ("DocumentReference".equals(codeString)) 2665 return FHIRResourceType.DOCUMENTREFERENCE; 2666 if ("DomainResource".equals(codeString)) 2667 return FHIRResourceType.DOMAINRESOURCE; 2668 if ("EffectEvidenceSynthesis".equals(codeString)) 2669 return FHIRResourceType.EFFECTEVIDENCESYNTHESIS; 2670 if ("Encounter".equals(codeString)) 2671 return FHIRResourceType.ENCOUNTER; 2672 if ("Endpoint".equals(codeString)) 2673 return FHIRResourceType.ENDPOINT; 2674 if ("EnrollmentRequest".equals(codeString)) 2675 return FHIRResourceType.ENROLLMENTREQUEST; 2676 if ("EnrollmentResponse".equals(codeString)) 2677 return FHIRResourceType.ENROLLMENTRESPONSE; 2678 if ("EpisodeOfCare".equals(codeString)) 2679 return FHIRResourceType.EPISODEOFCARE; 2680 if ("EventDefinition".equals(codeString)) 2681 return FHIRResourceType.EVENTDEFINITION; 2682 if ("Evidence".equals(codeString)) 2683 return FHIRResourceType.EVIDENCE; 2684 if ("EvidenceVariable".equals(codeString)) 2685 return FHIRResourceType.EVIDENCEVARIABLE; 2686 if ("ExampleScenario".equals(codeString)) 2687 return FHIRResourceType.EXAMPLESCENARIO; 2688 if ("ExplanationOfBenefit".equals(codeString)) 2689 return FHIRResourceType.EXPLANATIONOFBENEFIT; 2690 if ("FamilyMemberHistory".equals(codeString)) 2691 return FHIRResourceType.FAMILYMEMBERHISTORY; 2692 if ("Flag".equals(codeString)) 2693 return FHIRResourceType.FLAG; 2694 if ("Goal".equals(codeString)) 2695 return FHIRResourceType.GOAL; 2696 if ("GraphDefinition".equals(codeString)) 2697 return FHIRResourceType.GRAPHDEFINITION; 2698 if ("Group".equals(codeString)) 2699 return FHIRResourceType.GROUP; 2700 if ("GuidanceResponse".equals(codeString)) 2701 return FHIRResourceType.GUIDANCERESPONSE; 2702 if ("HealthcareService".equals(codeString)) 2703 return FHIRResourceType.HEALTHCARESERVICE; 2704 if ("ImagingStudy".equals(codeString)) 2705 return FHIRResourceType.IMAGINGSTUDY; 2706 if ("Immunization".equals(codeString)) 2707 return FHIRResourceType.IMMUNIZATION; 2708 if ("ImmunizationEvaluation".equals(codeString)) 2709 return FHIRResourceType.IMMUNIZATIONEVALUATION; 2710 if ("ImmunizationRecommendation".equals(codeString)) 2711 return FHIRResourceType.IMMUNIZATIONRECOMMENDATION; 2712 if ("ImplementationGuide".equals(codeString)) 2713 return FHIRResourceType.IMPLEMENTATIONGUIDE; 2714 if ("InsurancePlan".equals(codeString)) 2715 return FHIRResourceType.INSURANCEPLAN; 2716 if ("Invoice".equals(codeString)) 2717 return FHIRResourceType.INVOICE; 2718 if ("Library".equals(codeString)) 2719 return FHIRResourceType.LIBRARY; 2720 if ("Linkage".equals(codeString)) 2721 return FHIRResourceType.LINKAGE; 2722 if ("List".equals(codeString)) 2723 return FHIRResourceType.LIST; 2724 if ("Location".equals(codeString)) 2725 return FHIRResourceType.LOCATION; 2726 if ("Measure".equals(codeString)) 2727 return FHIRResourceType.MEASURE; 2728 if ("MeasureReport".equals(codeString)) 2729 return FHIRResourceType.MEASUREREPORT; 2730 if ("Media".equals(codeString)) 2731 return FHIRResourceType.MEDIA; 2732 if ("Medication".equals(codeString)) 2733 return FHIRResourceType.MEDICATION; 2734 if ("MedicationAdministration".equals(codeString)) 2735 return FHIRResourceType.MEDICATIONADMINISTRATION; 2736 if ("MedicationDispense".equals(codeString)) 2737 return FHIRResourceType.MEDICATIONDISPENSE; 2738 if ("MedicationKnowledge".equals(codeString)) 2739 return FHIRResourceType.MEDICATIONKNOWLEDGE; 2740 if ("MedicationRequest".equals(codeString)) 2741 return FHIRResourceType.MEDICATIONREQUEST; 2742 if ("MedicationStatement".equals(codeString)) 2743 return FHIRResourceType.MEDICATIONSTATEMENT; 2744 if ("MedicinalProduct".equals(codeString)) 2745 return FHIRResourceType.MEDICINALPRODUCT; 2746 if ("MedicinalProductAuthorization".equals(codeString)) 2747 return FHIRResourceType.MEDICINALPRODUCTAUTHORIZATION; 2748 if ("MedicinalProductContraindication".equals(codeString)) 2749 return FHIRResourceType.MEDICINALPRODUCTCONTRAINDICATION; 2750 if ("MedicinalProductIndication".equals(codeString)) 2751 return FHIRResourceType.MEDICINALPRODUCTINDICATION; 2752 if ("MedicinalProductIngredient".equals(codeString)) 2753 return FHIRResourceType.MEDICINALPRODUCTINGREDIENT; 2754 if ("MedicinalProductInteraction".equals(codeString)) 2755 return FHIRResourceType.MEDICINALPRODUCTINTERACTION; 2756 if ("MedicinalProductManufactured".equals(codeString)) 2757 return FHIRResourceType.MEDICINALPRODUCTMANUFACTURED; 2758 if ("MedicinalProductPackaged".equals(codeString)) 2759 return FHIRResourceType.MEDICINALPRODUCTPACKAGED; 2760 if ("MedicinalProductPharmaceutical".equals(codeString)) 2761 return FHIRResourceType.MEDICINALPRODUCTPHARMACEUTICAL; 2762 if ("MedicinalProductUndesirableEffect".equals(codeString)) 2763 return FHIRResourceType.MEDICINALPRODUCTUNDESIRABLEEFFECT; 2764 if ("MessageDefinition".equals(codeString)) 2765 return FHIRResourceType.MESSAGEDEFINITION; 2766 if ("MessageHeader".equals(codeString)) 2767 return FHIRResourceType.MESSAGEHEADER; 2768 if ("MolecularSequence".equals(codeString)) 2769 return FHIRResourceType.MOLECULARSEQUENCE; 2770 if ("NamingSystem".equals(codeString)) 2771 return FHIRResourceType.NAMINGSYSTEM; 2772 if ("NutritionOrder".equals(codeString)) 2773 return FHIRResourceType.NUTRITIONORDER; 2774 if ("Observation".equals(codeString)) 2775 return FHIRResourceType.OBSERVATION; 2776 if ("ObservationDefinition".equals(codeString)) 2777 return FHIRResourceType.OBSERVATIONDEFINITION; 2778 if ("OperationDefinition".equals(codeString)) 2779 return FHIRResourceType.OPERATIONDEFINITION; 2780 if ("OperationOutcome".equals(codeString)) 2781 return FHIRResourceType.OPERATIONOUTCOME; 2782 if ("Organization".equals(codeString)) 2783 return FHIRResourceType.ORGANIZATION; 2784 if ("OrganizationAffiliation".equals(codeString)) 2785 return FHIRResourceType.ORGANIZATIONAFFILIATION; 2786 if ("Parameters".equals(codeString)) 2787 return FHIRResourceType.PARAMETERS; 2788 if ("Patient".equals(codeString)) 2789 return FHIRResourceType.PATIENT; 2790 if ("PaymentNotice".equals(codeString)) 2791 return FHIRResourceType.PAYMENTNOTICE; 2792 if ("PaymentReconciliation".equals(codeString)) 2793 return FHIRResourceType.PAYMENTRECONCILIATION; 2794 if ("Person".equals(codeString)) 2795 return FHIRResourceType.PERSON; 2796 if ("PlanDefinition".equals(codeString)) 2797 return FHIRResourceType.PLANDEFINITION; 2798 if ("Practitioner".equals(codeString)) 2799 return FHIRResourceType.PRACTITIONER; 2800 if ("PractitionerRole".equals(codeString)) 2801 return FHIRResourceType.PRACTITIONERROLE; 2802 if ("Procedure".equals(codeString)) 2803 return FHIRResourceType.PROCEDURE; 2804 if ("Provenance".equals(codeString)) 2805 return FHIRResourceType.PROVENANCE; 2806 if ("Questionnaire".equals(codeString)) 2807 return FHIRResourceType.QUESTIONNAIRE; 2808 if ("QuestionnaireResponse".equals(codeString)) 2809 return FHIRResourceType.QUESTIONNAIRERESPONSE; 2810 if ("RelatedPerson".equals(codeString)) 2811 return FHIRResourceType.RELATEDPERSON; 2812 if ("RequestGroup".equals(codeString)) 2813 return FHIRResourceType.REQUESTGROUP; 2814 if ("ResearchDefinition".equals(codeString)) 2815 return FHIRResourceType.RESEARCHDEFINITION; 2816 if ("ResearchElementDefinition".equals(codeString)) 2817 return FHIRResourceType.RESEARCHELEMENTDEFINITION; 2818 if ("ResearchStudy".equals(codeString)) 2819 return FHIRResourceType.RESEARCHSTUDY; 2820 if ("ResearchSubject".equals(codeString)) 2821 return FHIRResourceType.RESEARCHSUBJECT; 2822 if ("Resource".equals(codeString)) 2823 return FHIRResourceType.RESOURCE; 2824 if ("RiskAssessment".equals(codeString)) 2825 return FHIRResourceType.RISKASSESSMENT; 2826 if ("RiskEvidenceSynthesis".equals(codeString)) 2827 return FHIRResourceType.RISKEVIDENCESYNTHESIS; 2828 if ("Schedule".equals(codeString)) 2829 return FHIRResourceType.SCHEDULE; 2830 if ("SearchParameter".equals(codeString)) 2831 return FHIRResourceType.SEARCHPARAMETER; 2832 if ("ServiceRequest".equals(codeString)) 2833 return FHIRResourceType.SERVICEREQUEST; 2834 if ("Slot".equals(codeString)) 2835 return FHIRResourceType.SLOT; 2836 if ("Specimen".equals(codeString)) 2837 return FHIRResourceType.SPECIMEN; 2838 if ("SpecimenDefinition".equals(codeString)) 2839 return FHIRResourceType.SPECIMENDEFINITION; 2840 if ("StructureDefinition".equals(codeString)) 2841 return FHIRResourceType.STRUCTUREDEFINITION; 2842 if ("StructureMap".equals(codeString)) 2843 return FHIRResourceType.STRUCTUREMAP; 2844 if ("Subscription".equals(codeString)) 2845 return FHIRResourceType.SUBSCRIPTION; 2846 if ("Substance".equals(codeString)) 2847 return FHIRResourceType.SUBSTANCE; 2848 if ("SubstanceNucleicAcid".equals(codeString)) 2849 return FHIRResourceType.SUBSTANCENUCLEICACID; 2850 if ("SubstancePolymer".equals(codeString)) 2851 return FHIRResourceType.SUBSTANCEPOLYMER; 2852 if ("SubstanceProtein".equals(codeString)) 2853 return FHIRResourceType.SUBSTANCEPROTEIN; 2854 if ("SubstanceReferenceInformation".equals(codeString)) 2855 return FHIRResourceType.SUBSTANCEREFERENCEINFORMATION; 2856 if ("SubstanceSourceMaterial".equals(codeString)) 2857 return FHIRResourceType.SUBSTANCESOURCEMATERIAL; 2858 if ("SubstanceSpecification".equals(codeString)) 2859 return FHIRResourceType.SUBSTANCESPECIFICATION; 2860 if ("SupplyDelivery".equals(codeString)) 2861 return FHIRResourceType.SUPPLYDELIVERY; 2862 if ("SupplyRequest".equals(codeString)) 2863 return FHIRResourceType.SUPPLYREQUEST; 2864 if ("Task".equals(codeString)) 2865 return FHIRResourceType.TASK; 2866 if ("TerminologyCapabilities".equals(codeString)) 2867 return FHIRResourceType.TERMINOLOGYCAPABILITIES; 2868 if ("TestReport".equals(codeString)) 2869 return FHIRResourceType.TESTREPORT; 2870 if ("TestScript".equals(codeString)) 2871 return FHIRResourceType.TESTSCRIPT; 2872 if ("ValueSet".equals(codeString)) 2873 return FHIRResourceType.VALUESET; 2874 if ("VerificationResult".equals(codeString)) 2875 return FHIRResourceType.VERIFICATIONRESULT; 2876 if ("VisionPrescription".equals(codeString)) 2877 return FHIRResourceType.VISIONPRESCRIPTION; 2878 throw new IllegalArgumentException("Unknown FHIRResourceType code '" + codeString + "'"); 2879 } 2880 2881 public Enumeration<FHIRResourceType> fromType(PrimitiveType<?> code) throws FHIRException { 2882 if (code == null) 2883 return null; 2884 if (code.isEmpty()) 2885 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.NULL, code); 2886 String codeString = code.asStringValue(); 2887 if (codeString == null || "".equals(codeString)) 2888 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.NULL, code); 2889 if ("Account".equals(codeString)) 2890 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ACCOUNT, code); 2891 if ("ActivityDefinition".equals(codeString)) 2892 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ACTIVITYDEFINITION, code); 2893 if ("AdverseEvent".equals(codeString)) 2894 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ADVERSEEVENT, code); 2895 if ("AllergyIntolerance".equals(codeString)) 2896 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ALLERGYINTOLERANCE, code); 2897 if ("Appointment".equals(codeString)) 2898 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.APPOINTMENT, code); 2899 if ("AppointmentResponse".equals(codeString)) 2900 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.APPOINTMENTRESPONSE, code); 2901 if ("AuditEvent".equals(codeString)) 2902 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.AUDITEVENT, code); 2903 if ("Basic".equals(codeString)) 2904 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.BASIC, code); 2905 if ("Binary".equals(codeString)) 2906 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.BINARY, code); 2907 if ("BiologicallyDerivedProduct".equals(codeString)) 2908 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.BIOLOGICALLYDERIVEDPRODUCT, code); 2909 if ("BodyStructure".equals(codeString)) 2910 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.BODYSTRUCTURE, code); 2911 if ("Bundle".equals(codeString)) 2912 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.BUNDLE, code); 2913 if ("CapabilityStatement".equals(codeString)) 2914 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CAPABILITYSTATEMENT, code); 2915 if ("CarePlan".equals(codeString)) 2916 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CAREPLAN, code); 2917 if ("CareTeam".equals(codeString)) 2918 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CARETEAM, code); 2919 if ("CatalogEntry".equals(codeString)) 2920 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CATALOGENTRY, code); 2921 if ("ChargeItem".equals(codeString)) 2922 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CHARGEITEM, code); 2923 if ("ChargeItemDefinition".equals(codeString)) 2924 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CHARGEITEMDEFINITION, code); 2925 if ("Claim".equals(codeString)) 2926 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CLAIM, code); 2927 if ("ClaimResponse".equals(codeString)) 2928 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CLAIMRESPONSE, code); 2929 if ("ClinicalImpression".equals(codeString)) 2930 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CLINICALIMPRESSION, code); 2931 if ("CodeSystem".equals(codeString)) 2932 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CODESYSTEM, code); 2933 if ("Communication".equals(codeString)) 2934 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.COMMUNICATION, code); 2935 if ("CommunicationRequest".equals(codeString)) 2936 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.COMMUNICATIONREQUEST, code); 2937 if ("CompartmentDefinition".equals(codeString)) 2938 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.COMPARTMENTDEFINITION, code); 2939 if ("Composition".equals(codeString)) 2940 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.COMPOSITION, code); 2941 if ("ConceptMap".equals(codeString)) 2942 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CONCEPTMAP, code); 2943 if ("Condition".equals(codeString)) 2944 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CONDITION, code); 2945 if ("Consent".equals(codeString)) 2946 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CONSENT, code); 2947 if ("Contract".equals(codeString)) 2948 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.CONTRACT, code); 2949 if ("Coverage".equals(codeString)) 2950 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.COVERAGE, code); 2951 if ("CoverageEligibilityRequest".equals(codeString)) 2952 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.COVERAGEELIGIBILITYREQUEST, code); 2953 if ("CoverageEligibilityResponse".equals(codeString)) 2954 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.COVERAGEELIGIBILITYRESPONSE, code); 2955 if ("DetectedIssue".equals(codeString)) 2956 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DETECTEDISSUE, code); 2957 if ("Device".equals(codeString)) 2958 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DEVICE, code); 2959 if ("DeviceDefinition".equals(codeString)) 2960 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DEVICEDEFINITION, code); 2961 if ("DeviceMetric".equals(codeString)) 2962 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DEVICEMETRIC, code); 2963 if ("DeviceRequest".equals(codeString)) 2964 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DEVICEREQUEST, code); 2965 if ("DeviceUseStatement".equals(codeString)) 2966 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DEVICEUSESTATEMENT, code); 2967 if ("DiagnosticReport".equals(codeString)) 2968 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DIAGNOSTICREPORT, code); 2969 if ("DocumentManifest".equals(codeString)) 2970 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DOCUMENTMANIFEST, code); 2971 if ("DocumentReference".equals(codeString)) 2972 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DOCUMENTREFERENCE, code); 2973 if ("DomainResource".equals(codeString)) 2974 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.DOMAINRESOURCE, code); 2975 if ("EffectEvidenceSynthesis".equals(codeString)) 2976 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.EFFECTEVIDENCESYNTHESIS, code); 2977 if ("Encounter".equals(codeString)) 2978 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ENCOUNTER, code); 2979 if ("Endpoint".equals(codeString)) 2980 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ENDPOINT, code); 2981 if ("EnrollmentRequest".equals(codeString)) 2982 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ENROLLMENTREQUEST, code); 2983 if ("EnrollmentResponse".equals(codeString)) 2984 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ENROLLMENTRESPONSE, code); 2985 if ("EpisodeOfCare".equals(codeString)) 2986 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.EPISODEOFCARE, code); 2987 if ("EventDefinition".equals(codeString)) 2988 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.EVENTDEFINITION, code); 2989 if ("Evidence".equals(codeString)) 2990 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.EVIDENCE, code); 2991 if ("EvidenceVariable".equals(codeString)) 2992 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.EVIDENCEVARIABLE, code); 2993 if ("ExampleScenario".equals(codeString)) 2994 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.EXAMPLESCENARIO, code); 2995 if ("ExplanationOfBenefit".equals(codeString)) 2996 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.EXPLANATIONOFBENEFIT, code); 2997 if ("FamilyMemberHistory".equals(codeString)) 2998 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.FAMILYMEMBERHISTORY, code); 2999 if ("Flag".equals(codeString)) 3000 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.FLAG, code); 3001 if ("Goal".equals(codeString)) 3002 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.GOAL, code); 3003 if ("GraphDefinition".equals(codeString)) 3004 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.GRAPHDEFINITION, code); 3005 if ("Group".equals(codeString)) 3006 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.GROUP, code); 3007 if ("GuidanceResponse".equals(codeString)) 3008 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.GUIDANCERESPONSE, code); 3009 if ("HealthcareService".equals(codeString)) 3010 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.HEALTHCARESERVICE, code); 3011 if ("ImagingStudy".equals(codeString)) 3012 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.IMAGINGSTUDY, code); 3013 if ("Immunization".equals(codeString)) 3014 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.IMMUNIZATION, code); 3015 if ("ImmunizationEvaluation".equals(codeString)) 3016 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.IMMUNIZATIONEVALUATION, code); 3017 if ("ImmunizationRecommendation".equals(codeString)) 3018 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.IMMUNIZATIONRECOMMENDATION, code); 3019 if ("ImplementationGuide".equals(codeString)) 3020 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.IMPLEMENTATIONGUIDE, code); 3021 if ("InsurancePlan".equals(codeString)) 3022 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.INSURANCEPLAN, code); 3023 if ("Invoice".equals(codeString)) 3024 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.INVOICE, code); 3025 if ("Library".equals(codeString)) 3026 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.LIBRARY, code); 3027 if ("Linkage".equals(codeString)) 3028 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.LINKAGE, code); 3029 if ("List".equals(codeString)) 3030 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.LIST, code); 3031 if ("Location".equals(codeString)) 3032 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.LOCATION, code); 3033 if ("Measure".equals(codeString)) 3034 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEASURE, code); 3035 if ("MeasureReport".equals(codeString)) 3036 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEASUREREPORT, code); 3037 if ("Media".equals(codeString)) 3038 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDIA, code); 3039 if ("Medication".equals(codeString)) 3040 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICATION, code); 3041 if ("MedicationAdministration".equals(codeString)) 3042 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICATIONADMINISTRATION, code); 3043 if ("MedicationDispense".equals(codeString)) 3044 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICATIONDISPENSE, code); 3045 if ("MedicationKnowledge".equals(codeString)) 3046 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICATIONKNOWLEDGE, code); 3047 if ("MedicationRequest".equals(codeString)) 3048 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICATIONREQUEST, code); 3049 if ("MedicationStatement".equals(codeString)) 3050 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICATIONSTATEMENT, code); 3051 if ("MedicinalProduct".equals(codeString)) 3052 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCT, code); 3053 if ("MedicinalProductAuthorization".equals(codeString)) 3054 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCTAUTHORIZATION, code); 3055 if ("MedicinalProductContraindication".equals(codeString)) 3056 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCTCONTRAINDICATION, code); 3057 if ("MedicinalProductIndication".equals(codeString)) 3058 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCTINDICATION, code); 3059 if ("MedicinalProductIngredient".equals(codeString)) 3060 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCTINGREDIENT, code); 3061 if ("MedicinalProductInteraction".equals(codeString)) 3062 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCTINTERACTION, code); 3063 if ("MedicinalProductManufactured".equals(codeString)) 3064 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCTMANUFACTURED, code); 3065 if ("MedicinalProductPackaged".equals(codeString)) 3066 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCTPACKAGED, code); 3067 if ("MedicinalProductPharmaceutical".equals(codeString)) 3068 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCTPHARMACEUTICAL, code); 3069 if ("MedicinalProductUndesirableEffect".equals(codeString)) 3070 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MEDICINALPRODUCTUNDESIRABLEEFFECT, code); 3071 if ("MessageDefinition".equals(codeString)) 3072 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MESSAGEDEFINITION, code); 3073 if ("MessageHeader".equals(codeString)) 3074 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MESSAGEHEADER, code); 3075 if ("MolecularSequence".equals(codeString)) 3076 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.MOLECULARSEQUENCE, code); 3077 if ("NamingSystem".equals(codeString)) 3078 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.NAMINGSYSTEM, code); 3079 if ("NutritionOrder".equals(codeString)) 3080 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.NUTRITIONORDER, code); 3081 if ("Observation".equals(codeString)) 3082 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.OBSERVATION, code); 3083 if ("ObservationDefinition".equals(codeString)) 3084 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.OBSERVATIONDEFINITION, code); 3085 if ("OperationDefinition".equals(codeString)) 3086 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.OPERATIONDEFINITION, code); 3087 if ("OperationOutcome".equals(codeString)) 3088 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.OPERATIONOUTCOME, code); 3089 if ("Organization".equals(codeString)) 3090 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ORGANIZATION, code); 3091 if ("OrganizationAffiliation".equals(codeString)) 3092 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.ORGANIZATIONAFFILIATION, code); 3093 if ("Parameters".equals(codeString)) 3094 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PARAMETERS, code); 3095 if ("Patient".equals(codeString)) 3096 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PATIENT, code); 3097 if ("PaymentNotice".equals(codeString)) 3098 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PAYMENTNOTICE, code); 3099 if ("PaymentReconciliation".equals(codeString)) 3100 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PAYMENTRECONCILIATION, code); 3101 if ("Person".equals(codeString)) 3102 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PERSON, code); 3103 if ("PlanDefinition".equals(codeString)) 3104 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PLANDEFINITION, code); 3105 if ("Practitioner".equals(codeString)) 3106 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PRACTITIONER, code); 3107 if ("PractitionerRole".equals(codeString)) 3108 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PRACTITIONERROLE, code); 3109 if ("Procedure".equals(codeString)) 3110 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PROCEDURE, code); 3111 if ("Provenance".equals(codeString)) 3112 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.PROVENANCE, code); 3113 if ("Questionnaire".equals(codeString)) 3114 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.QUESTIONNAIRE, code); 3115 if ("QuestionnaireResponse".equals(codeString)) 3116 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.QUESTIONNAIRERESPONSE, code); 3117 if ("RelatedPerson".equals(codeString)) 3118 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.RELATEDPERSON, code); 3119 if ("RequestGroup".equals(codeString)) 3120 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.REQUESTGROUP, code); 3121 if ("ResearchDefinition".equals(codeString)) 3122 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.RESEARCHDEFINITION, code); 3123 if ("ResearchElementDefinition".equals(codeString)) 3124 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.RESEARCHELEMENTDEFINITION, code); 3125 if ("ResearchStudy".equals(codeString)) 3126 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.RESEARCHSTUDY, code); 3127 if ("ResearchSubject".equals(codeString)) 3128 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.RESEARCHSUBJECT, code); 3129 if ("Resource".equals(codeString)) 3130 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.RESOURCE, code); 3131 if ("RiskAssessment".equals(codeString)) 3132 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.RISKASSESSMENT, code); 3133 if ("RiskEvidenceSynthesis".equals(codeString)) 3134 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.RISKEVIDENCESYNTHESIS, code); 3135 if ("Schedule".equals(codeString)) 3136 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SCHEDULE, code); 3137 if ("SearchParameter".equals(codeString)) 3138 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SEARCHPARAMETER, code); 3139 if ("ServiceRequest".equals(codeString)) 3140 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SERVICEREQUEST, code); 3141 if ("Slot".equals(codeString)) 3142 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SLOT, code); 3143 if ("Specimen".equals(codeString)) 3144 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SPECIMEN, code); 3145 if ("SpecimenDefinition".equals(codeString)) 3146 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SPECIMENDEFINITION, code); 3147 if ("StructureDefinition".equals(codeString)) 3148 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.STRUCTUREDEFINITION, code); 3149 if ("StructureMap".equals(codeString)) 3150 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.STRUCTUREMAP, code); 3151 if ("Subscription".equals(codeString)) 3152 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUBSCRIPTION, code); 3153 if ("Substance".equals(codeString)) 3154 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUBSTANCE, code); 3155 if ("SubstanceNucleicAcid".equals(codeString)) 3156 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUBSTANCENUCLEICACID, code); 3157 if ("SubstancePolymer".equals(codeString)) 3158 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUBSTANCEPOLYMER, code); 3159 if ("SubstanceProtein".equals(codeString)) 3160 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUBSTANCEPROTEIN, code); 3161 if ("SubstanceReferenceInformation".equals(codeString)) 3162 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUBSTANCEREFERENCEINFORMATION, code); 3163 if ("SubstanceSourceMaterial".equals(codeString)) 3164 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUBSTANCESOURCEMATERIAL, code); 3165 if ("SubstanceSpecification".equals(codeString)) 3166 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUBSTANCESPECIFICATION, code); 3167 if ("SupplyDelivery".equals(codeString)) 3168 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUPPLYDELIVERY, code); 3169 if ("SupplyRequest".equals(codeString)) 3170 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.SUPPLYREQUEST, code); 3171 if ("Task".equals(codeString)) 3172 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.TASK, code); 3173 if ("TerminologyCapabilities".equals(codeString)) 3174 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.TERMINOLOGYCAPABILITIES, code); 3175 if ("TestReport".equals(codeString)) 3176 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.TESTREPORT, code); 3177 if ("TestScript".equals(codeString)) 3178 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.TESTSCRIPT, code); 3179 if ("ValueSet".equals(codeString)) 3180 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.VALUESET, code); 3181 if ("VerificationResult".equals(codeString)) 3182 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.VERIFICATIONRESULT, code); 3183 if ("VisionPrescription".equals(codeString)) 3184 return new Enumeration<FHIRResourceType>(this, FHIRResourceType.VISIONPRESCRIPTION, code); 3185 throw new FHIRException("Unknown FHIRResourceType code '" + codeString + "'"); 3186 } 3187 3188 public String toCode(FHIRResourceType code) { 3189 if (code == FHIRResourceType.ACCOUNT) 3190 return "Account"; 3191 if (code == FHIRResourceType.ACTIVITYDEFINITION) 3192 return "ActivityDefinition"; 3193 if (code == FHIRResourceType.ADVERSEEVENT) 3194 return "AdverseEvent"; 3195 if (code == FHIRResourceType.ALLERGYINTOLERANCE) 3196 return "AllergyIntolerance"; 3197 if (code == FHIRResourceType.APPOINTMENT) 3198 return "Appointment"; 3199 if (code == FHIRResourceType.APPOINTMENTRESPONSE) 3200 return "AppointmentResponse"; 3201 if (code == FHIRResourceType.AUDITEVENT) 3202 return "AuditEvent"; 3203 if (code == FHIRResourceType.BASIC) 3204 return "Basic"; 3205 if (code == FHIRResourceType.BINARY) 3206 return "Binary"; 3207 if (code == FHIRResourceType.BIOLOGICALLYDERIVEDPRODUCT) 3208 return "BiologicallyDerivedProduct"; 3209 if (code == FHIRResourceType.BODYSTRUCTURE) 3210 return "BodyStructure"; 3211 if (code == FHIRResourceType.BUNDLE) 3212 return "Bundle"; 3213 if (code == FHIRResourceType.CAPABILITYSTATEMENT) 3214 return "CapabilityStatement"; 3215 if (code == FHIRResourceType.CAREPLAN) 3216 return "CarePlan"; 3217 if (code == FHIRResourceType.CARETEAM) 3218 return "CareTeam"; 3219 if (code == FHIRResourceType.CATALOGENTRY) 3220 return "CatalogEntry"; 3221 if (code == FHIRResourceType.CHARGEITEM) 3222 return "ChargeItem"; 3223 if (code == FHIRResourceType.CHARGEITEMDEFINITION) 3224 return "ChargeItemDefinition"; 3225 if (code == FHIRResourceType.CLAIM) 3226 return "Claim"; 3227 if (code == FHIRResourceType.CLAIMRESPONSE) 3228 return "ClaimResponse"; 3229 if (code == FHIRResourceType.CLINICALIMPRESSION) 3230 return "ClinicalImpression"; 3231 if (code == FHIRResourceType.CODESYSTEM) 3232 return "CodeSystem"; 3233 if (code == FHIRResourceType.COMMUNICATION) 3234 return "Communication"; 3235 if (code == FHIRResourceType.COMMUNICATIONREQUEST) 3236 return "CommunicationRequest"; 3237 if (code == FHIRResourceType.COMPARTMENTDEFINITION) 3238 return "CompartmentDefinition"; 3239 if (code == FHIRResourceType.COMPOSITION) 3240 return "Composition"; 3241 if (code == FHIRResourceType.CONCEPTMAP) 3242 return "ConceptMap"; 3243 if (code == FHIRResourceType.CONDITION) 3244 return "Condition"; 3245 if (code == FHIRResourceType.CONSENT) 3246 return "Consent"; 3247 if (code == FHIRResourceType.CONTRACT) 3248 return "Contract"; 3249 if (code == FHIRResourceType.COVERAGE) 3250 return "Coverage"; 3251 if (code == FHIRResourceType.COVERAGEELIGIBILITYREQUEST) 3252 return "CoverageEligibilityRequest"; 3253 if (code == FHIRResourceType.COVERAGEELIGIBILITYRESPONSE) 3254 return "CoverageEligibilityResponse"; 3255 if (code == FHIRResourceType.DETECTEDISSUE) 3256 return "DetectedIssue"; 3257 if (code == FHIRResourceType.DEVICE) 3258 return "Device"; 3259 if (code == FHIRResourceType.DEVICEDEFINITION) 3260 return "DeviceDefinition"; 3261 if (code == FHIRResourceType.DEVICEMETRIC) 3262 return "DeviceMetric"; 3263 if (code == FHIRResourceType.DEVICEREQUEST) 3264 return "DeviceRequest"; 3265 if (code == FHIRResourceType.DEVICEUSESTATEMENT) 3266 return "DeviceUseStatement"; 3267 if (code == FHIRResourceType.DIAGNOSTICREPORT) 3268 return "DiagnosticReport"; 3269 if (code == FHIRResourceType.DOCUMENTMANIFEST) 3270 return "DocumentManifest"; 3271 if (code == FHIRResourceType.DOCUMENTREFERENCE) 3272 return "DocumentReference"; 3273 if (code == FHIRResourceType.DOMAINRESOURCE) 3274 return "DomainResource"; 3275 if (code == FHIRResourceType.EFFECTEVIDENCESYNTHESIS) 3276 return "EffectEvidenceSynthesis"; 3277 if (code == FHIRResourceType.ENCOUNTER) 3278 return "Encounter"; 3279 if (code == FHIRResourceType.ENDPOINT) 3280 return "Endpoint"; 3281 if (code == FHIRResourceType.ENROLLMENTREQUEST) 3282 return "EnrollmentRequest"; 3283 if (code == FHIRResourceType.ENROLLMENTRESPONSE) 3284 return "EnrollmentResponse"; 3285 if (code == FHIRResourceType.EPISODEOFCARE) 3286 return "EpisodeOfCare"; 3287 if (code == FHIRResourceType.EVENTDEFINITION) 3288 return "EventDefinition"; 3289 if (code == FHIRResourceType.EVIDENCE) 3290 return "Evidence"; 3291 if (code == FHIRResourceType.EVIDENCEVARIABLE) 3292 return "EvidenceVariable"; 3293 if (code == FHIRResourceType.EXAMPLESCENARIO) 3294 return "ExampleScenario"; 3295 if (code == FHIRResourceType.EXPLANATIONOFBENEFIT) 3296 return "ExplanationOfBenefit"; 3297 if (code == FHIRResourceType.FAMILYMEMBERHISTORY) 3298 return "FamilyMemberHistory"; 3299 if (code == FHIRResourceType.FLAG) 3300 return "Flag"; 3301 if (code == FHIRResourceType.GOAL) 3302 return "Goal"; 3303 if (code == FHIRResourceType.GRAPHDEFINITION) 3304 return "GraphDefinition"; 3305 if (code == FHIRResourceType.GROUP) 3306 return "Group"; 3307 if (code == FHIRResourceType.GUIDANCERESPONSE) 3308 return "GuidanceResponse"; 3309 if (code == FHIRResourceType.HEALTHCARESERVICE) 3310 return "HealthcareService"; 3311 if (code == FHIRResourceType.IMAGINGSTUDY) 3312 return "ImagingStudy"; 3313 if (code == FHIRResourceType.IMMUNIZATION) 3314 return "Immunization"; 3315 if (code == FHIRResourceType.IMMUNIZATIONEVALUATION) 3316 return "ImmunizationEvaluation"; 3317 if (code == FHIRResourceType.IMMUNIZATIONRECOMMENDATION) 3318 return "ImmunizationRecommendation"; 3319 if (code == FHIRResourceType.IMPLEMENTATIONGUIDE) 3320 return "ImplementationGuide"; 3321 if (code == FHIRResourceType.INSURANCEPLAN) 3322 return "InsurancePlan"; 3323 if (code == FHIRResourceType.INVOICE) 3324 return "Invoice"; 3325 if (code == FHIRResourceType.LIBRARY) 3326 return "Library"; 3327 if (code == FHIRResourceType.LINKAGE) 3328 return "Linkage"; 3329 if (code == FHIRResourceType.LIST) 3330 return "List"; 3331 if (code == FHIRResourceType.LOCATION) 3332 return "Location"; 3333 if (code == FHIRResourceType.MEASURE) 3334 return "Measure"; 3335 if (code == FHIRResourceType.MEASUREREPORT) 3336 return "MeasureReport"; 3337 if (code == FHIRResourceType.MEDIA) 3338 return "Media"; 3339 if (code == FHIRResourceType.MEDICATION) 3340 return "Medication"; 3341 if (code == FHIRResourceType.MEDICATIONADMINISTRATION) 3342 return "MedicationAdministration"; 3343 if (code == FHIRResourceType.MEDICATIONDISPENSE) 3344 return "MedicationDispense"; 3345 if (code == FHIRResourceType.MEDICATIONKNOWLEDGE) 3346 return "MedicationKnowledge"; 3347 if (code == FHIRResourceType.MEDICATIONREQUEST) 3348 return "MedicationRequest"; 3349 if (code == FHIRResourceType.MEDICATIONSTATEMENT) 3350 return "MedicationStatement"; 3351 if (code == FHIRResourceType.MEDICINALPRODUCT) 3352 return "MedicinalProduct"; 3353 if (code == FHIRResourceType.MEDICINALPRODUCTAUTHORIZATION) 3354 return "MedicinalProductAuthorization"; 3355 if (code == FHIRResourceType.MEDICINALPRODUCTCONTRAINDICATION) 3356 return "MedicinalProductContraindication"; 3357 if (code == FHIRResourceType.MEDICINALPRODUCTINDICATION) 3358 return "MedicinalProductIndication"; 3359 if (code == FHIRResourceType.MEDICINALPRODUCTINGREDIENT) 3360 return "MedicinalProductIngredient"; 3361 if (code == FHIRResourceType.MEDICINALPRODUCTINTERACTION) 3362 return "MedicinalProductInteraction"; 3363 if (code == FHIRResourceType.MEDICINALPRODUCTMANUFACTURED) 3364 return "MedicinalProductManufactured"; 3365 if (code == FHIRResourceType.MEDICINALPRODUCTPACKAGED) 3366 return "MedicinalProductPackaged"; 3367 if (code == FHIRResourceType.MEDICINALPRODUCTPHARMACEUTICAL) 3368 return "MedicinalProductPharmaceutical"; 3369 if (code == FHIRResourceType.MEDICINALPRODUCTUNDESIRABLEEFFECT) 3370 return "MedicinalProductUndesirableEffect"; 3371 if (code == FHIRResourceType.MESSAGEDEFINITION) 3372 return "MessageDefinition"; 3373 if (code == FHIRResourceType.MESSAGEHEADER) 3374 return "MessageHeader"; 3375 if (code == FHIRResourceType.MOLECULARSEQUENCE) 3376 return "MolecularSequence"; 3377 if (code == FHIRResourceType.NAMINGSYSTEM) 3378 return "NamingSystem"; 3379 if (code == FHIRResourceType.NUTRITIONORDER) 3380 return "NutritionOrder"; 3381 if (code == FHIRResourceType.OBSERVATION) 3382 return "Observation"; 3383 if (code == FHIRResourceType.OBSERVATIONDEFINITION) 3384 return "ObservationDefinition"; 3385 if (code == FHIRResourceType.OPERATIONDEFINITION) 3386 return "OperationDefinition"; 3387 if (code == FHIRResourceType.OPERATIONOUTCOME) 3388 return "OperationOutcome"; 3389 if (code == FHIRResourceType.ORGANIZATION) 3390 return "Organization"; 3391 if (code == FHIRResourceType.ORGANIZATIONAFFILIATION) 3392 return "OrganizationAffiliation"; 3393 if (code == FHIRResourceType.PARAMETERS) 3394 return "Parameters"; 3395 if (code == FHIRResourceType.PATIENT) 3396 return "Patient"; 3397 if (code == FHIRResourceType.PAYMENTNOTICE) 3398 return "PaymentNotice"; 3399 if (code == FHIRResourceType.PAYMENTRECONCILIATION) 3400 return "PaymentReconciliation"; 3401 if (code == FHIRResourceType.PERSON) 3402 return "Person"; 3403 if (code == FHIRResourceType.PLANDEFINITION) 3404 return "PlanDefinition"; 3405 if (code == FHIRResourceType.PRACTITIONER) 3406 return "Practitioner"; 3407 if (code == FHIRResourceType.PRACTITIONERROLE) 3408 return "PractitionerRole"; 3409 if (code == FHIRResourceType.PROCEDURE) 3410 return "Procedure"; 3411 if (code == FHIRResourceType.PROVENANCE) 3412 return "Provenance"; 3413 if (code == FHIRResourceType.QUESTIONNAIRE) 3414 return "Questionnaire"; 3415 if (code == FHIRResourceType.QUESTIONNAIRERESPONSE) 3416 return "QuestionnaireResponse"; 3417 if (code == FHIRResourceType.RELATEDPERSON) 3418 return "RelatedPerson"; 3419 if (code == FHIRResourceType.REQUESTGROUP) 3420 return "RequestGroup"; 3421 if (code == FHIRResourceType.RESEARCHDEFINITION) 3422 return "ResearchDefinition"; 3423 if (code == FHIRResourceType.RESEARCHELEMENTDEFINITION) 3424 return "ResearchElementDefinition"; 3425 if (code == FHIRResourceType.RESEARCHSTUDY) 3426 return "ResearchStudy"; 3427 if (code == FHIRResourceType.RESEARCHSUBJECT) 3428 return "ResearchSubject"; 3429 if (code == FHIRResourceType.RESOURCE) 3430 return "Resource"; 3431 if (code == FHIRResourceType.RISKASSESSMENT) 3432 return "RiskAssessment"; 3433 if (code == FHIRResourceType.RISKEVIDENCESYNTHESIS) 3434 return "RiskEvidenceSynthesis"; 3435 if (code == FHIRResourceType.SCHEDULE) 3436 return "Schedule"; 3437 if (code == FHIRResourceType.SEARCHPARAMETER) 3438 return "SearchParameter"; 3439 if (code == FHIRResourceType.SERVICEREQUEST) 3440 return "ServiceRequest"; 3441 if (code == FHIRResourceType.SLOT) 3442 return "Slot"; 3443 if (code == FHIRResourceType.SPECIMEN) 3444 return "Specimen"; 3445 if (code == FHIRResourceType.SPECIMENDEFINITION) 3446 return "SpecimenDefinition"; 3447 if (code == FHIRResourceType.STRUCTUREDEFINITION) 3448 return "StructureDefinition"; 3449 if (code == FHIRResourceType.STRUCTUREMAP) 3450 return "StructureMap"; 3451 if (code == FHIRResourceType.SUBSCRIPTION) 3452 return "Subscription"; 3453 if (code == FHIRResourceType.SUBSTANCE) 3454 return "Substance"; 3455 if (code == FHIRResourceType.SUBSTANCENUCLEICACID) 3456 return "SubstanceNucleicAcid"; 3457 if (code == FHIRResourceType.SUBSTANCEPOLYMER) 3458 return "SubstancePolymer"; 3459 if (code == FHIRResourceType.SUBSTANCEPROTEIN) 3460 return "SubstanceProtein"; 3461 if (code == FHIRResourceType.SUBSTANCEREFERENCEINFORMATION) 3462 return "SubstanceReferenceInformation"; 3463 if (code == FHIRResourceType.SUBSTANCESOURCEMATERIAL) 3464 return "SubstanceSourceMaterial"; 3465 if (code == FHIRResourceType.SUBSTANCESPECIFICATION) 3466 return "SubstanceSpecification"; 3467 if (code == FHIRResourceType.SUPPLYDELIVERY) 3468 return "SupplyDelivery"; 3469 if (code == FHIRResourceType.SUPPLYREQUEST) 3470 return "SupplyRequest"; 3471 if (code == FHIRResourceType.TASK) 3472 return "Task"; 3473 if (code == FHIRResourceType.TERMINOLOGYCAPABILITIES) 3474 return "TerminologyCapabilities"; 3475 if (code == FHIRResourceType.TESTREPORT) 3476 return "TestReport"; 3477 if (code == FHIRResourceType.TESTSCRIPT) 3478 return "TestScript"; 3479 if (code == FHIRResourceType.VALUESET) 3480 return "ValueSet"; 3481 if (code == FHIRResourceType.VERIFICATIONRESULT) 3482 return "VerificationResult"; 3483 if (code == FHIRResourceType.VISIONPRESCRIPTION) 3484 return "VisionPrescription"; 3485 return "?"; 3486 } 3487 3488 public String toSystem(FHIRResourceType code) { 3489 return code.getSystem(); 3490 } 3491 } 3492 3493 @Block() 3494 public static class ExampleScenarioActorComponent extends BackboneElement implements IBaseBackboneElement { 3495 /** 3496 * ID or acronym of actor. 3497 */ 3498 @Child(name = "actorId", type = { 3499 StringType.class }, order = 1, min = 1, max = 1, modifier = false, summary = false) 3500 @Description(shortDefinition = "ID or acronym of the actor", formalDefinition = "ID or acronym of actor.") 3501 protected StringType actorId; 3502 3503 /** 3504 * The type of actor - person or system. 3505 */ 3506 @Child(name = "type", type = { CodeType.class }, order = 2, min = 1, max = 1, modifier = false, summary = false) 3507 @Description(shortDefinition = "person | entity", formalDefinition = "The type of actor - person or system.") 3508 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/examplescenario-actor-type") 3509 protected Enumeration<ExampleScenarioActorType> type; 3510 3511 /** 3512 * The name of the actor as shown in the page. 3513 */ 3514 @Child(name = "name", type = { StringType.class }, order = 3, min = 0, max = 1, modifier = false, summary = false) 3515 @Description(shortDefinition = "The name of the actor as shown in the page", formalDefinition = "The name of the actor as shown in the page.") 3516 protected StringType name; 3517 3518 /** 3519 * The description of the actor. 3520 */ 3521 @Child(name = "description", type = { 3522 MarkdownType.class }, order = 4, min = 0, max = 1, modifier = false, summary = false) 3523 @Description(shortDefinition = "The description of the actor", formalDefinition = "The description of the actor.") 3524 protected MarkdownType description; 3525 3526 private static final long serialVersionUID = 1348364162L; 3527 3528 /** 3529 * Constructor 3530 */ 3531 public ExampleScenarioActorComponent() { 3532 super(); 3533 } 3534 3535 /** 3536 * Constructor 3537 */ 3538 public ExampleScenarioActorComponent(StringType actorId, Enumeration<ExampleScenarioActorType> type) { 3539 super(); 3540 this.actorId = actorId; 3541 this.type = type; 3542 } 3543 3544 /** 3545 * @return {@link #actorId} (ID or acronym of actor.). This is the underlying 3546 * object with id, value and extensions. The accessor "getActorId" gives 3547 * direct access to the value 3548 */ 3549 public StringType getActorIdElement() { 3550 if (this.actorId == null) 3551 if (Configuration.errorOnAutoCreate()) 3552 throw new Error("Attempt to auto-create ExampleScenarioActorComponent.actorId"); 3553 else if (Configuration.doAutoCreate()) 3554 this.actorId = new StringType(); // bb 3555 return this.actorId; 3556 } 3557 3558 public boolean hasActorIdElement() { 3559 return this.actorId != null && !this.actorId.isEmpty(); 3560 } 3561 3562 public boolean hasActorId() { 3563 return this.actorId != null && !this.actorId.isEmpty(); 3564 } 3565 3566 /** 3567 * @param value {@link #actorId} (ID or acronym of actor.). This is the 3568 * underlying object with id, value and extensions. The accessor 3569 * "getActorId" gives direct access to the value 3570 */ 3571 public ExampleScenarioActorComponent setActorIdElement(StringType value) { 3572 this.actorId = value; 3573 return this; 3574 } 3575 3576 /** 3577 * @return ID or acronym of actor. 3578 */ 3579 public String getActorId() { 3580 return this.actorId == null ? null : this.actorId.getValue(); 3581 } 3582 3583 /** 3584 * @param value ID or acronym of actor. 3585 */ 3586 public ExampleScenarioActorComponent setActorId(String value) { 3587 if (this.actorId == null) 3588 this.actorId = new StringType(); 3589 this.actorId.setValue(value); 3590 return this; 3591 } 3592 3593 /** 3594 * @return {@link #type} (The type of actor - person or system.). This is the 3595 * underlying object with id, value and extensions. The accessor 3596 * "getType" gives direct access to the value 3597 */ 3598 public Enumeration<ExampleScenarioActorType> getTypeElement() { 3599 if (this.type == null) 3600 if (Configuration.errorOnAutoCreate()) 3601 throw new Error("Attempt to auto-create ExampleScenarioActorComponent.type"); 3602 else if (Configuration.doAutoCreate()) 3603 this.type = new Enumeration<ExampleScenarioActorType>(new ExampleScenarioActorTypeEnumFactory()); // bb 3604 return this.type; 3605 } 3606 3607 public boolean hasTypeElement() { 3608 return this.type != null && !this.type.isEmpty(); 3609 } 3610 3611 public boolean hasType() { 3612 return this.type != null && !this.type.isEmpty(); 3613 } 3614 3615 /** 3616 * @param value {@link #type} (The type of actor - person or system.). This is 3617 * the underlying object with id, value and extensions. The 3618 * accessor "getType" gives direct access to the value 3619 */ 3620 public ExampleScenarioActorComponent setTypeElement(Enumeration<ExampleScenarioActorType> value) { 3621 this.type = value; 3622 return this; 3623 } 3624 3625 /** 3626 * @return The type of actor - person or system. 3627 */ 3628 public ExampleScenarioActorType getType() { 3629 return this.type == null ? null : this.type.getValue(); 3630 } 3631 3632 /** 3633 * @param value The type of actor - person or system. 3634 */ 3635 public ExampleScenarioActorComponent setType(ExampleScenarioActorType value) { 3636 if (this.type == null) 3637 this.type = new Enumeration<ExampleScenarioActorType>(new ExampleScenarioActorTypeEnumFactory()); 3638 this.type.setValue(value); 3639 return this; 3640 } 3641 3642 /** 3643 * @return {@link #name} (The name of the actor as shown in the page.). This is 3644 * the underlying object with id, value and extensions. The accessor 3645 * "getName" gives direct access to the value 3646 */ 3647 public StringType getNameElement() { 3648 if (this.name == null) 3649 if (Configuration.errorOnAutoCreate()) 3650 throw new Error("Attempt to auto-create ExampleScenarioActorComponent.name"); 3651 else if (Configuration.doAutoCreate()) 3652 this.name = new StringType(); // bb 3653 return this.name; 3654 } 3655 3656 public boolean hasNameElement() { 3657 return this.name != null && !this.name.isEmpty(); 3658 } 3659 3660 public boolean hasName() { 3661 return this.name != null && !this.name.isEmpty(); 3662 } 3663 3664 /** 3665 * @param value {@link #name} (The name of the actor as shown in the page.). 3666 * This is the underlying object with id, value and extensions. The 3667 * accessor "getName" gives direct access to the value 3668 */ 3669 public ExampleScenarioActorComponent setNameElement(StringType value) { 3670 this.name = value; 3671 return this; 3672 } 3673 3674 /** 3675 * @return The name of the actor as shown in the page. 3676 */ 3677 public String getName() { 3678 return this.name == null ? null : this.name.getValue(); 3679 } 3680 3681 /** 3682 * @param value The name of the actor as shown in the page. 3683 */ 3684 public ExampleScenarioActorComponent setName(String value) { 3685 if (Utilities.noString(value)) 3686 this.name = null; 3687 else { 3688 if (this.name == null) 3689 this.name = new StringType(); 3690 this.name.setValue(value); 3691 } 3692 return this; 3693 } 3694 3695 /** 3696 * @return {@link #description} (The description of the actor.). This is the 3697 * underlying object with id, value and extensions. The accessor 3698 * "getDescription" gives direct access to the value 3699 */ 3700 public MarkdownType getDescriptionElement() { 3701 if (this.description == null) 3702 if (Configuration.errorOnAutoCreate()) 3703 throw new Error("Attempt to auto-create ExampleScenarioActorComponent.description"); 3704 else if (Configuration.doAutoCreate()) 3705 this.description = new MarkdownType(); // bb 3706 return this.description; 3707 } 3708 3709 public boolean hasDescriptionElement() { 3710 return this.description != null && !this.description.isEmpty(); 3711 } 3712 3713 public boolean hasDescription() { 3714 return this.description != null && !this.description.isEmpty(); 3715 } 3716 3717 /** 3718 * @param value {@link #description} (The description of the actor.). This is 3719 * the underlying object with id, value and extensions. The 3720 * accessor "getDescription" gives direct access to the value 3721 */ 3722 public ExampleScenarioActorComponent setDescriptionElement(MarkdownType value) { 3723 this.description = value; 3724 return this; 3725 } 3726 3727 /** 3728 * @return The description of the actor. 3729 */ 3730 public String getDescription() { 3731 return this.description == null ? null : this.description.getValue(); 3732 } 3733 3734 /** 3735 * @param value The description of the actor. 3736 */ 3737 public ExampleScenarioActorComponent setDescription(String value) { 3738 if (value == null) 3739 this.description = null; 3740 else { 3741 if (this.description == null) 3742 this.description = new MarkdownType(); 3743 this.description.setValue(value); 3744 } 3745 return this; 3746 } 3747 3748 protected void listChildren(List<Property> children) { 3749 super.listChildren(children); 3750 children.add(new Property("actorId", "string", "ID or acronym of actor.", 0, 1, actorId)); 3751 children.add(new Property("type", "code", "The type of actor - person or system.", 0, 1, type)); 3752 children.add(new Property("name", "string", "The name of the actor as shown in the page.", 0, 1, name)); 3753 children.add(new Property("description", "markdown", "The description of the actor.", 0, 1, description)); 3754 } 3755 3756 @Override 3757 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 3758 switch (_hash) { 3759 case -1161623056: 3760 /* actorId */ return new Property("actorId", "string", "ID or acronym of actor.", 0, 1, actorId); 3761 case 3575610: 3762 /* type */ return new Property("type", "code", "The type of actor - person or system.", 0, 1, type); 3763 case 3373707: 3764 /* name */ return new Property("name", "string", "The name of the actor as shown in the page.", 0, 1, name); 3765 case -1724546052: 3766 /* description */ return new Property("description", "markdown", "The description of the actor.", 0, 1, 3767 description); 3768 default: 3769 return super.getNamedProperty(_hash, _name, _checkValid); 3770 } 3771 3772 } 3773 3774 @Override 3775 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 3776 switch (hash) { 3777 case -1161623056: 3778 /* actorId */ return this.actorId == null ? new Base[0] : new Base[] { this.actorId }; // StringType 3779 case 3575610: 3780 /* type */ return this.type == null ? new Base[0] : new Base[] { this.type }; // Enumeration<ExampleScenarioActorType> 3781 case 3373707: 3782 /* name */ return this.name == null ? new Base[0] : new Base[] { this.name }; // StringType 3783 case -1724546052: 3784 /* description */ return this.description == null ? new Base[0] : new Base[] { this.description }; // MarkdownType 3785 default: 3786 return super.getProperty(hash, name, checkValid); 3787 } 3788 3789 } 3790 3791 @Override 3792 public Base setProperty(int hash, String name, Base value) throws FHIRException { 3793 switch (hash) { 3794 case -1161623056: // actorId 3795 this.actorId = castToString(value); // StringType 3796 return value; 3797 case 3575610: // type 3798 value = new ExampleScenarioActorTypeEnumFactory().fromType(castToCode(value)); 3799 this.type = (Enumeration) value; // Enumeration<ExampleScenarioActorType> 3800 return value; 3801 case 3373707: // name 3802 this.name = castToString(value); // StringType 3803 return value; 3804 case -1724546052: // description 3805 this.description = castToMarkdown(value); // MarkdownType 3806 return value; 3807 default: 3808 return super.setProperty(hash, name, value); 3809 } 3810 3811 } 3812 3813 @Override 3814 public Base setProperty(String name, Base value) throws FHIRException { 3815 if (name.equals("actorId")) { 3816 this.actorId = castToString(value); // StringType 3817 } else if (name.equals("type")) { 3818 value = new ExampleScenarioActorTypeEnumFactory().fromType(castToCode(value)); 3819 this.type = (Enumeration) value; // Enumeration<ExampleScenarioActorType> 3820 } else if (name.equals("name")) { 3821 this.name = castToString(value); // StringType 3822 } else if (name.equals("description")) { 3823 this.description = castToMarkdown(value); // MarkdownType 3824 } else 3825 return super.setProperty(name, value); 3826 return value; 3827 } 3828 3829 @Override 3830 public void removeChild(String name, Base value) throws FHIRException { 3831 if (name.equals("actorId")) { 3832 this.actorId = null; 3833 } else if (name.equals("type")) { 3834 this.type = null; 3835 } else if (name.equals("name")) { 3836 this.name = null; 3837 } else if (name.equals("description")) { 3838 this.description = null; 3839 } else 3840 super.removeChild(name, value); 3841 3842 } 3843 3844 @Override 3845 public Base makeProperty(int hash, String name) throws FHIRException { 3846 switch (hash) { 3847 case -1161623056: 3848 return getActorIdElement(); 3849 case 3575610: 3850 return getTypeElement(); 3851 case 3373707: 3852 return getNameElement(); 3853 case -1724546052: 3854 return getDescriptionElement(); 3855 default: 3856 return super.makeProperty(hash, name); 3857 } 3858 3859 } 3860 3861 @Override 3862 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 3863 switch (hash) { 3864 case -1161623056: 3865 /* actorId */ return new String[] { "string" }; 3866 case 3575610: 3867 /* type */ return new String[] { "code" }; 3868 case 3373707: 3869 /* name */ return new String[] { "string" }; 3870 case -1724546052: 3871 /* description */ return new String[] { "markdown" }; 3872 default: 3873 return super.getTypesForProperty(hash, name); 3874 } 3875 3876 } 3877 3878 @Override 3879 public Base addChild(String name) throws FHIRException { 3880 if (name.equals("actorId")) { 3881 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.actorId"); 3882 } else if (name.equals("type")) { 3883 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.type"); 3884 } else if (name.equals("name")) { 3885 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.name"); 3886 } else if (name.equals("description")) { 3887 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.description"); 3888 } else 3889 return super.addChild(name); 3890 } 3891 3892 public ExampleScenarioActorComponent copy() { 3893 ExampleScenarioActorComponent dst = new ExampleScenarioActorComponent(); 3894 copyValues(dst); 3895 return dst; 3896 } 3897 3898 public void copyValues(ExampleScenarioActorComponent dst) { 3899 super.copyValues(dst); 3900 dst.actorId = actorId == null ? null : actorId.copy(); 3901 dst.type = type == null ? null : type.copy(); 3902 dst.name = name == null ? null : name.copy(); 3903 dst.description = description == null ? null : description.copy(); 3904 } 3905 3906 @Override 3907 public boolean equalsDeep(Base other_) { 3908 if (!super.equalsDeep(other_)) 3909 return false; 3910 if (!(other_ instanceof ExampleScenarioActorComponent)) 3911 return false; 3912 ExampleScenarioActorComponent o = (ExampleScenarioActorComponent) other_; 3913 return compareDeep(actorId, o.actorId, true) && compareDeep(type, o.type, true) && compareDeep(name, o.name, true) 3914 && compareDeep(description, o.description, true); 3915 } 3916 3917 @Override 3918 public boolean equalsShallow(Base other_) { 3919 if (!super.equalsShallow(other_)) 3920 return false; 3921 if (!(other_ instanceof ExampleScenarioActorComponent)) 3922 return false; 3923 ExampleScenarioActorComponent o = (ExampleScenarioActorComponent) other_; 3924 return compareValues(actorId, o.actorId, true) && compareValues(type, o.type, true) 3925 && compareValues(name, o.name, true) && compareValues(description, o.description, true); 3926 } 3927 3928 public boolean isEmpty() { 3929 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(actorId, type, name, description); 3930 } 3931 3932 public String fhirType() { 3933 return "ExampleScenario.actor"; 3934 3935 } 3936 3937 } 3938 3939 @Block() 3940 public static class ExampleScenarioInstanceComponent extends BackboneElement implements IBaseBackboneElement { 3941 /** 3942 * The id of the resource for referencing. 3943 */ 3944 @Child(name = "resourceId", type = { 3945 StringType.class }, order = 1, min = 1, max = 1, modifier = false, summary = false) 3946 @Description(shortDefinition = "The id of the resource for referencing", formalDefinition = "The id of the resource for referencing.") 3947 protected StringType resourceId; 3948 3949 /** 3950 * The type of the resource. 3951 */ 3952 @Child(name = "resourceType", type = { 3953 CodeType.class }, order = 2, min = 1, max = 1, modifier = false, summary = false) 3954 @Description(shortDefinition = "The type of the resource", formalDefinition = "The type of the resource.") 3955 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/resource-types") 3956 protected Enumeration<FHIRResourceType> resourceType; 3957 3958 /** 3959 * A short name for the resource instance. 3960 */ 3961 @Child(name = "name", type = { StringType.class }, order = 3, min = 0, max = 1, modifier = false, summary = false) 3962 @Description(shortDefinition = "A short name for the resource instance", formalDefinition = "A short name for the resource instance.") 3963 protected StringType name; 3964 3965 /** 3966 * Human-friendly description of the resource instance. 3967 */ 3968 @Child(name = "description", type = { 3969 MarkdownType.class }, order = 4, min = 0, max = 1, modifier = false, summary = false) 3970 @Description(shortDefinition = "Human-friendly description of the resource instance", formalDefinition = "Human-friendly description of the resource instance.") 3971 protected MarkdownType description; 3972 3973 /** 3974 * A specific version of the resource. 3975 */ 3976 @Child(name = "version", type = {}, order = 5, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 3977 @Description(shortDefinition = "A specific version of the resource", formalDefinition = "A specific version of the resource.") 3978 protected List<ExampleScenarioInstanceVersionComponent> version; 3979 3980 /** 3981 * Resources contained in the instance (e.g. the observations contained in a 3982 * bundle). 3983 */ 3984 @Child(name = "containedInstance", type = {}, order = 6, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 3985 @Description(shortDefinition = "Resources contained in the instance", formalDefinition = "Resources contained in the instance (e.g. the observations contained in a bundle).") 3986 protected List<ExampleScenarioInstanceContainedInstanceComponent> containedInstance; 3987 3988 private static final long serialVersionUID = -1131860669L; 3989 3990 /** 3991 * Constructor 3992 */ 3993 public ExampleScenarioInstanceComponent() { 3994 super(); 3995 } 3996 3997 /** 3998 * Constructor 3999 */ 4000 public ExampleScenarioInstanceComponent(StringType resourceId, Enumeration<FHIRResourceType> resourceType) { 4001 super(); 4002 this.resourceId = resourceId; 4003 this.resourceType = resourceType; 4004 } 4005 4006 /** 4007 * @return {@link #resourceId} (The id of the resource for referencing.). This 4008 * is the underlying object with id, value and extensions. The accessor 4009 * "getResourceId" gives direct access to the value 4010 */ 4011 public StringType getResourceIdElement() { 4012 if (this.resourceId == null) 4013 if (Configuration.errorOnAutoCreate()) 4014 throw new Error("Attempt to auto-create ExampleScenarioInstanceComponent.resourceId"); 4015 else if (Configuration.doAutoCreate()) 4016 this.resourceId = new StringType(); // bb 4017 return this.resourceId; 4018 } 4019 4020 public boolean hasResourceIdElement() { 4021 return this.resourceId != null && !this.resourceId.isEmpty(); 4022 } 4023 4024 public boolean hasResourceId() { 4025 return this.resourceId != null && !this.resourceId.isEmpty(); 4026 } 4027 4028 /** 4029 * @param value {@link #resourceId} (The id of the resource for referencing.). 4030 * This is the underlying object with id, value and extensions. The 4031 * accessor "getResourceId" gives direct access to the value 4032 */ 4033 public ExampleScenarioInstanceComponent setResourceIdElement(StringType value) { 4034 this.resourceId = value; 4035 return this; 4036 } 4037 4038 /** 4039 * @return The id of the resource for referencing. 4040 */ 4041 public String getResourceId() { 4042 return this.resourceId == null ? null : this.resourceId.getValue(); 4043 } 4044 4045 /** 4046 * @param value The id of the resource for referencing. 4047 */ 4048 public ExampleScenarioInstanceComponent setResourceId(String value) { 4049 if (this.resourceId == null) 4050 this.resourceId = new StringType(); 4051 this.resourceId.setValue(value); 4052 return this; 4053 } 4054 4055 /** 4056 * @return {@link #resourceType} (The type of the resource.). This is the 4057 * underlying object with id, value and extensions. The accessor 4058 * "getResourceType" gives direct access to the value 4059 */ 4060 public Enumeration<FHIRResourceType> getResourceTypeElement() { 4061 if (this.resourceType == null) 4062 if (Configuration.errorOnAutoCreate()) 4063 throw new Error("Attempt to auto-create ExampleScenarioInstanceComponent.resourceType"); 4064 else if (Configuration.doAutoCreate()) 4065 this.resourceType = new Enumeration<FHIRResourceType>(new FHIRResourceTypeEnumFactory()); // bb 4066 return this.resourceType; 4067 } 4068 4069 public boolean hasResourceTypeElement() { 4070 return this.resourceType != null && !this.resourceType.isEmpty(); 4071 } 4072 4073 public boolean hasResourceType() { 4074 return this.resourceType != null && !this.resourceType.isEmpty(); 4075 } 4076 4077 /** 4078 * @param value {@link #resourceType} (The type of the resource.). This is the 4079 * underlying object with id, value and extensions. The accessor 4080 * "getResourceType" gives direct access to the value 4081 */ 4082 public ExampleScenarioInstanceComponent setResourceTypeElement(Enumeration<FHIRResourceType> value) { 4083 this.resourceType = value; 4084 return this; 4085 } 4086 4087 /** 4088 * @return The type of the resource. 4089 */ 4090 public FHIRResourceType getResourceType() { 4091 return this.resourceType == null ? null : this.resourceType.getValue(); 4092 } 4093 4094 /** 4095 * @param value The type of the resource. 4096 */ 4097 public ExampleScenarioInstanceComponent setResourceType(FHIRResourceType value) { 4098 if (this.resourceType == null) 4099 this.resourceType = new Enumeration<FHIRResourceType>(new FHIRResourceTypeEnumFactory()); 4100 this.resourceType.setValue(value); 4101 return this; 4102 } 4103 4104 /** 4105 * @return {@link #name} (A short name for the resource instance.). This is the 4106 * underlying object with id, value and extensions. The accessor 4107 * "getName" gives direct access to the value 4108 */ 4109 public StringType getNameElement() { 4110 if (this.name == null) 4111 if (Configuration.errorOnAutoCreate()) 4112 throw new Error("Attempt to auto-create ExampleScenarioInstanceComponent.name"); 4113 else if (Configuration.doAutoCreate()) 4114 this.name = new StringType(); // bb 4115 return this.name; 4116 } 4117 4118 public boolean hasNameElement() { 4119 return this.name != null && !this.name.isEmpty(); 4120 } 4121 4122 public boolean hasName() { 4123 return this.name != null && !this.name.isEmpty(); 4124 } 4125 4126 /** 4127 * @param value {@link #name} (A short name for the resource instance.). This is 4128 * the underlying object with id, value and extensions. The 4129 * accessor "getName" gives direct access to the value 4130 */ 4131 public ExampleScenarioInstanceComponent setNameElement(StringType value) { 4132 this.name = value; 4133 return this; 4134 } 4135 4136 /** 4137 * @return A short name for the resource instance. 4138 */ 4139 public String getName() { 4140 return this.name == null ? null : this.name.getValue(); 4141 } 4142 4143 /** 4144 * @param value A short name for the resource instance. 4145 */ 4146 public ExampleScenarioInstanceComponent setName(String value) { 4147 if (Utilities.noString(value)) 4148 this.name = null; 4149 else { 4150 if (this.name == null) 4151 this.name = new StringType(); 4152 this.name.setValue(value); 4153 } 4154 return this; 4155 } 4156 4157 /** 4158 * @return {@link #description} (Human-friendly description of the resource 4159 * instance.). This is the underlying object with id, value and 4160 * extensions. The accessor "getDescription" gives direct access to the 4161 * value 4162 */ 4163 public MarkdownType getDescriptionElement() { 4164 if (this.description == null) 4165 if (Configuration.errorOnAutoCreate()) 4166 throw new Error("Attempt to auto-create ExampleScenarioInstanceComponent.description"); 4167 else if (Configuration.doAutoCreate()) 4168 this.description = new MarkdownType(); // bb 4169 return this.description; 4170 } 4171 4172 public boolean hasDescriptionElement() { 4173 return this.description != null && !this.description.isEmpty(); 4174 } 4175 4176 public boolean hasDescription() { 4177 return this.description != null && !this.description.isEmpty(); 4178 } 4179 4180 /** 4181 * @param value {@link #description} (Human-friendly description of the resource 4182 * instance.). This is the underlying object with id, value and 4183 * extensions. The accessor "getDescription" gives direct access to 4184 * the value 4185 */ 4186 public ExampleScenarioInstanceComponent setDescriptionElement(MarkdownType value) { 4187 this.description = value; 4188 return this; 4189 } 4190 4191 /** 4192 * @return Human-friendly description of the resource instance. 4193 */ 4194 public String getDescription() { 4195 return this.description == null ? null : this.description.getValue(); 4196 } 4197 4198 /** 4199 * @param value Human-friendly description of the resource instance. 4200 */ 4201 public ExampleScenarioInstanceComponent setDescription(String value) { 4202 if (value == null) 4203 this.description = null; 4204 else { 4205 if (this.description == null) 4206 this.description = new MarkdownType(); 4207 this.description.setValue(value); 4208 } 4209 return this; 4210 } 4211 4212 /** 4213 * @return {@link #version} (A specific version of the resource.) 4214 */ 4215 public List<ExampleScenarioInstanceVersionComponent> getVersion() { 4216 if (this.version == null) 4217 this.version = new ArrayList<ExampleScenarioInstanceVersionComponent>(); 4218 return this.version; 4219 } 4220 4221 /** 4222 * @return Returns a reference to <code>this</code> for easy method chaining 4223 */ 4224 public ExampleScenarioInstanceComponent setVersion(List<ExampleScenarioInstanceVersionComponent> theVersion) { 4225 this.version = theVersion; 4226 return this; 4227 } 4228 4229 public boolean hasVersion() { 4230 if (this.version == null) 4231 return false; 4232 for (ExampleScenarioInstanceVersionComponent item : this.version) 4233 if (!item.isEmpty()) 4234 return true; 4235 return false; 4236 } 4237 4238 public ExampleScenarioInstanceVersionComponent addVersion() { // 3 4239 ExampleScenarioInstanceVersionComponent t = new ExampleScenarioInstanceVersionComponent(); 4240 if (this.version == null) 4241 this.version = new ArrayList<ExampleScenarioInstanceVersionComponent>(); 4242 this.version.add(t); 4243 return t; 4244 } 4245 4246 public ExampleScenarioInstanceComponent addVersion(ExampleScenarioInstanceVersionComponent t) { // 3 4247 if (t == null) 4248 return this; 4249 if (this.version == null) 4250 this.version = new ArrayList<ExampleScenarioInstanceVersionComponent>(); 4251 this.version.add(t); 4252 return this; 4253 } 4254 4255 /** 4256 * @return The first repetition of repeating field {@link #version}, creating it 4257 * if it does not already exist 4258 */ 4259 public ExampleScenarioInstanceVersionComponent getVersionFirstRep() { 4260 if (getVersion().isEmpty()) { 4261 addVersion(); 4262 } 4263 return getVersion().get(0); 4264 } 4265 4266 /** 4267 * @return {@link #containedInstance} (Resources contained in the instance (e.g. 4268 * the observations contained in a bundle).) 4269 */ 4270 public List<ExampleScenarioInstanceContainedInstanceComponent> getContainedInstance() { 4271 if (this.containedInstance == null) 4272 this.containedInstance = new ArrayList<ExampleScenarioInstanceContainedInstanceComponent>(); 4273 return this.containedInstance; 4274 } 4275 4276 /** 4277 * @return Returns a reference to <code>this</code> for easy method chaining 4278 */ 4279 public ExampleScenarioInstanceComponent setContainedInstance( 4280 List<ExampleScenarioInstanceContainedInstanceComponent> theContainedInstance) { 4281 this.containedInstance = theContainedInstance; 4282 return this; 4283 } 4284 4285 public boolean hasContainedInstance() { 4286 if (this.containedInstance == null) 4287 return false; 4288 for (ExampleScenarioInstanceContainedInstanceComponent item : this.containedInstance) 4289 if (!item.isEmpty()) 4290 return true; 4291 return false; 4292 } 4293 4294 public ExampleScenarioInstanceContainedInstanceComponent addContainedInstance() { // 3 4295 ExampleScenarioInstanceContainedInstanceComponent t = new ExampleScenarioInstanceContainedInstanceComponent(); 4296 if (this.containedInstance == null) 4297 this.containedInstance = new ArrayList<ExampleScenarioInstanceContainedInstanceComponent>(); 4298 this.containedInstance.add(t); 4299 return t; 4300 } 4301 4302 public ExampleScenarioInstanceComponent addContainedInstance(ExampleScenarioInstanceContainedInstanceComponent t) { // 3 4303 if (t == null) 4304 return this; 4305 if (this.containedInstance == null) 4306 this.containedInstance = new ArrayList<ExampleScenarioInstanceContainedInstanceComponent>(); 4307 this.containedInstance.add(t); 4308 return this; 4309 } 4310 4311 /** 4312 * @return The first repetition of repeating field {@link #containedInstance}, 4313 * creating it if it does not already exist 4314 */ 4315 public ExampleScenarioInstanceContainedInstanceComponent getContainedInstanceFirstRep() { 4316 if (getContainedInstance().isEmpty()) { 4317 addContainedInstance(); 4318 } 4319 return getContainedInstance().get(0); 4320 } 4321 4322 protected void listChildren(List<Property> children) { 4323 super.listChildren(children); 4324 children.add(new Property("resourceId", "string", "The id of the resource for referencing.", 0, 1, resourceId)); 4325 children.add(new Property("resourceType", "code", "The type of the resource.", 0, 1, resourceType)); 4326 children.add(new Property("name", "string", "A short name for the resource instance.", 0, 1, name)); 4327 children.add(new Property("description", "markdown", "Human-friendly description of the resource instance.", 0, 1, 4328 description)); 4329 children.add( 4330 new Property("version", "", "A specific version of the resource.", 0, java.lang.Integer.MAX_VALUE, version)); 4331 children.add(new Property("containedInstance", "", 4332 "Resources contained in the instance (e.g. the observations contained in a bundle).", 0, 4333 java.lang.Integer.MAX_VALUE, containedInstance)); 4334 } 4335 4336 @Override 4337 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 4338 switch (_hash) { 4339 case -1345650231: 4340 /* resourceId */ return new Property("resourceId", "string", "The id of the resource for referencing.", 0, 1, 4341 resourceId); 4342 case -384364440: 4343 /* resourceType */ return new Property("resourceType", "code", "The type of the resource.", 0, 1, resourceType); 4344 case 3373707: 4345 /* name */ return new Property("name", "string", "A short name for the resource instance.", 0, 1, name); 4346 case -1724546052: 4347 /* description */ return new Property("description", "markdown", 4348 "Human-friendly description of the resource instance.", 0, 1, description); 4349 case 351608024: 4350 /* version */ return new Property("version", "", "A specific version of the resource.", 0, 4351 java.lang.Integer.MAX_VALUE, version); 4352 case -417062360: 4353 /* containedInstance */ return new Property("containedInstance", "", 4354 "Resources contained in the instance (e.g. the observations contained in a bundle).", 0, 4355 java.lang.Integer.MAX_VALUE, containedInstance); 4356 default: 4357 return super.getNamedProperty(_hash, _name, _checkValid); 4358 } 4359 4360 } 4361 4362 @Override 4363 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 4364 switch (hash) { 4365 case -1345650231: 4366 /* resourceId */ return this.resourceId == null ? new Base[0] : new Base[] { this.resourceId }; // StringType 4367 case -384364440: 4368 /* resourceType */ return this.resourceType == null ? new Base[0] : new Base[] { this.resourceType }; // Enumeration<FHIRResourceType> 4369 case 3373707: 4370 /* name */ return this.name == null ? new Base[0] : new Base[] { this.name }; // StringType 4371 case -1724546052: 4372 /* description */ return this.description == null ? new Base[0] : new Base[] { this.description }; // MarkdownType 4373 case 351608024: 4374 /* version */ return this.version == null ? new Base[0] : this.version.toArray(new Base[this.version.size()]); // ExampleScenarioInstanceVersionComponent 4375 case -417062360: 4376 /* containedInstance */ return this.containedInstance == null ? new Base[0] 4377 : this.containedInstance.toArray(new Base[this.containedInstance.size()]); // ExampleScenarioInstanceContainedInstanceComponent 4378 default: 4379 return super.getProperty(hash, name, checkValid); 4380 } 4381 4382 } 4383 4384 @Override 4385 public Base setProperty(int hash, String name, Base value) throws FHIRException { 4386 switch (hash) { 4387 case -1345650231: // resourceId 4388 this.resourceId = castToString(value); // StringType 4389 return value; 4390 case -384364440: // resourceType 4391 value = new FHIRResourceTypeEnumFactory().fromType(castToCode(value)); 4392 this.resourceType = (Enumeration) value; // Enumeration<FHIRResourceType> 4393 return value; 4394 case 3373707: // name 4395 this.name = castToString(value); // StringType 4396 return value; 4397 case -1724546052: // description 4398 this.description = castToMarkdown(value); // MarkdownType 4399 return value; 4400 case 351608024: // version 4401 this.getVersion().add((ExampleScenarioInstanceVersionComponent) value); // ExampleScenarioInstanceVersionComponent 4402 return value; 4403 case -417062360: // containedInstance 4404 this.getContainedInstance().add((ExampleScenarioInstanceContainedInstanceComponent) value); // ExampleScenarioInstanceContainedInstanceComponent 4405 return value; 4406 default: 4407 return super.setProperty(hash, name, value); 4408 } 4409 4410 } 4411 4412 @Override 4413 public Base setProperty(String name, Base value) throws FHIRException { 4414 if (name.equals("resourceId")) { 4415 this.resourceId = castToString(value); // StringType 4416 } else if (name.equals("resourceType")) { 4417 value = new FHIRResourceTypeEnumFactory().fromType(castToCode(value)); 4418 this.resourceType = (Enumeration) value; // Enumeration<FHIRResourceType> 4419 } else if (name.equals("name")) { 4420 this.name = castToString(value); // StringType 4421 } else if (name.equals("description")) { 4422 this.description = castToMarkdown(value); // MarkdownType 4423 } else if (name.equals("version")) { 4424 this.getVersion().add((ExampleScenarioInstanceVersionComponent) value); 4425 } else if (name.equals("containedInstance")) { 4426 this.getContainedInstance().add((ExampleScenarioInstanceContainedInstanceComponent) value); 4427 } else 4428 return super.setProperty(name, value); 4429 return value; 4430 } 4431 4432 @Override 4433 public void removeChild(String name, Base value) throws FHIRException { 4434 if (name.equals("resourceId")) { 4435 this.resourceId = null; 4436 } else if (name.equals("resourceType")) { 4437 this.resourceType = null; 4438 } else if (name.equals("name")) { 4439 this.name = null; 4440 } else if (name.equals("description")) { 4441 this.description = null; 4442 } else if (name.equals("version")) { 4443 this.getVersion().remove((ExampleScenarioInstanceVersionComponent) value); 4444 } else if (name.equals("containedInstance")) { 4445 this.getContainedInstance().remove((ExampleScenarioInstanceContainedInstanceComponent) value); 4446 } else 4447 super.removeChild(name, value); 4448 4449 } 4450 4451 @Override 4452 public Base makeProperty(int hash, String name) throws FHIRException { 4453 switch (hash) { 4454 case -1345650231: 4455 return getResourceIdElement(); 4456 case -384364440: 4457 return getResourceTypeElement(); 4458 case 3373707: 4459 return getNameElement(); 4460 case -1724546052: 4461 return getDescriptionElement(); 4462 case 351608024: 4463 return addVersion(); 4464 case -417062360: 4465 return addContainedInstance(); 4466 default: 4467 return super.makeProperty(hash, name); 4468 } 4469 4470 } 4471 4472 @Override 4473 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 4474 switch (hash) { 4475 case -1345650231: 4476 /* resourceId */ return new String[] { "string" }; 4477 case -384364440: 4478 /* resourceType */ return new String[] { "code" }; 4479 case 3373707: 4480 /* name */ return new String[] { "string" }; 4481 case -1724546052: 4482 /* description */ return new String[] { "markdown" }; 4483 case 351608024: 4484 /* version */ return new String[] {}; 4485 case -417062360: 4486 /* containedInstance */ return new String[] {}; 4487 default: 4488 return super.getTypesForProperty(hash, name); 4489 } 4490 4491 } 4492 4493 @Override 4494 public Base addChild(String name) throws FHIRException { 4495 if (name.equals("resourceId")) { 4496 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.resourceId"); 4497 } else if (name.equals("resourceType")) { 4498 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.resourceType"); 4499 } else if (name.equals("name")) { 4500 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.name"); 4501 } else if (name.equals("description")) { 4502 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.description"); 4503 } else if (name.equals("version")) { 4504 return addVersion(); 4505 } else if (name.equals("containedInstance")) { 4506 return addContainedInstance(); 4507 } else 4508 return super.addChild(name); 4509 } 4510 4511 public ExampleScenarioInstanceComponent copy() { 4512 ExampleScenarioInstanceComponent dst = new ExampleScenarioInstanceComponent(); 4513 copyValues(dst); 4514 return dst; 4515 } 4516 4517 public void copyValues(ExampleScenarioInstanceComponent dst) { 4518 super.copyValues(dst); 4519 dst.resourceId = resourceId == null ? null : resourceId.copy(); 4520 dst.resourceType = resourceType == null ? null : resourceType.copy(); 4521 dst.name = name == null ? null : name.copy(); 4522 dst.description = description == null ? null : description.copy(); 4523 if (version != null) { 4524 dst.version = new ArrayList<ExampleScenarioInstanceVersionComponent>(); 4525 for (ExampleScenarioInstanceVersionComponent i : version) 4526 dst.version.add(i.copy()); 4527 } 4528 ; 4529 if (containedInstance != null) { 4530 dst.containedInstance = new ArrayList<ExampleScenarioInstanceContainedInstanceComponent>(); 4531 for (ExampleScenarioInstanceContainedInstanceComponent i : containedInstance) 4532 dst.containedInstance.add(i.copy()); 4533 } 4534 ; 4535 } 4536 4537 @Override 4538 public boolean equalsDeep(Base other_) { 4539 if (!super.equalsDeep(other_)) 4540 return false; 4541 if (!(other_ instanceof ExampleScenarioInstanceComponent)) 4542 return false; 4543 ExampleScenarioInstanceComponent o = (ExampleScenarioInstanceComponent) other_; 4544 return compareDeep(resourceId, o.resourceId, true) && compareDeep(resourceType, o.resourceType, true) 4545 && compareDeep(name, o.name, true) && compareDeep(description, o.description, true) 4546 && compareDeep(version, o.version, true) && compareDeep(containedInstance, o.containedInstance, true); 4547 } 4548 4549 @Override 4550 public boolean equalsShallow(Base other_) { 4551 if (!super.equalsShallow(other_)) 4552 return false; 4553 if (!(other_ instanceof ExampleScenarioInstanceComponent)) 4554 return false; 4555 ExampleScenarioInstanceComponent o = (ExampleScenarioInstanceComponent) other_; 4556 return compareValues(resourceId, o.resourceId, true) && compareValues(resourceType, o.resourceType, true) 4557 && compareValues(name, o.name, true) && compareValues(description, o.description, true); 4558 } 4559 4560 public boolean isEmpty() { 4561 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(resourceId, resourceType, name, description, 4562 version, containedInstance); 4563 } 4564 4565 public String fhirType() { 4566 return "ExampleScenario.instance"; 4567 4568 } 4569 4570 } 4571 4572 @Block() 4573 public static class ExampleScenarioInstanceVersionComponent extends BackboneElement implements IBaseBackboneElement { 4574 /** 4575 * The identifier of a specific version of a resource. 4576 */ 4577 @Child(name = "versionId", type = { 4578 StringType.class }, order = 1, min = 1, max = 1, modifier = false, summary = false) 4579 @Description(shortDefinition = "The identifier of a specific version of a resource", formalDefinition = "The identifier of a specific version of a resource.") 4580 protected StringType versionId; 4581 4582 /** 4583 * The description of the resource version. 4584 */ 4585 @Child(name = "description", type = { 4586 MarkdownType.class }, order = 2, min = 1, max = 1, modifier = false, summary = false) 4587 @Description(shortDefinition = "The description of the resource version", formalDefinition = "The description of the resource version.") 4588 protected MarkdownType description; 4589 4590 private static final long serialVersionUID = 960821913L; 4591 4592 /** 4593 * Constructor 4594 */ 4595 public ExampleScenarioInstanceVersionComponent() { 4596 super(); 4597 } 4598 4599 /** 4600 * Constructor 4601 */ 4602 public ExampleScenarioInstanceVersionComponent(StringType versionId, MarkdownType description) { 4603 super(); 4604 this.versionId = versionId; 4605 this.description = description; 4606 } 4607 4608 /** 4609 * @return {@link #versionId} (The identifier of a specific version of a 4610 * resource.). This is the underlying object with id, value and 4611 * extensions. The accessor "getVersionId" gives direct access to the 4612 * value 4613 */ 4614 public StringType getVersionIdElement() { 4615 if (this.versionId == null) 4616 if (Configuration.errorOnAutoCreate()) 4617 throw new Error("Attempt to auto-create ExampleScenarioInstanceVersionComponent.versionId"); 4618 else if (Configuration.doAutoCreate()) 4619 this.versionId = new StringType(); // bb 4620 return this.versionId; 4621 } 4622 4623 public boolean hasVersionIdElement() { 4624 return this.versionId != null && !this.versionId.isEmpty(); 4625 } 4626 4627 public boolean hasVersionId() { 4628 return this.versionId != null && !this.versionId.isEmpty(); 4629 } 4630 4631 /** 4632 * @param value {@link #versionId} (The identifier of a specific version of a 4633 * resource.). This is the underlying object with id, value and 4634 * extensions. The accessor "getVersionId" gives direct access to 4635 * the value 4636 */ 4637 public ExampleScenarioInstanceVersionComponent setVersionIdElement(StringType value) { 4638 this.versionId = value; 4639 return this; 4640 } 4641 4642 /** 4643 * @return The identifier of a specific version of a resource. 4644 */ 4645 public String getVersionId() { 4646 return this.versionId == null ? null : this.versionId.getValue(); 4647 } 4648 4649 /** 4650 * @param value The identifier of a specific version of a resource. 4651 */ 4652 public ExampleScenarioInstanceVersionComponent setVersionId(String value) { 4653 if (this.versionId == null) 4654 this.versionId = new StringType(); 4655 this.versionId.setValue(value); 4656 return this; 4657 } 4658 4659 /** 4660 * @return {@link #description} (The description of the resource version.). This 4661 * is the underlying object with id, value and extensions. The accessor 4662 * "getDescription" gives direct access to the value 4663 */ 4664 public MarkdownType getDescriptionElement() { 4665 if (this.description == null) 4666 if (Configuration.errorOnAutoCreate()) 4667 throw new Error("Attempt to auto-create ExampleScenarioInstanceVersionComponent.description"); 4668 else if (Configuration.doAutoCreate()) 4669 this.description = new MarkdownType(); // bb 4670 return this.description; 4671 } 4672 4673 public boolean hasDescriptionElement() { 4674 return this.description != null && !this.description.isEmpty(); 4675 } 4676 4677 public boolean hasDescription() { 4678 return this.description != null && !this.description.isEmpty(); 4679 } 4680 4681 /** 4682 * @param value {@link #description} (The description of the resource version.). 4683 * This is the underlying object with id, value and extensions. The 4684 * accessor "getDescription" gives direct access to the value 4685 */ 4686 public ExampleScenarioInstanceVersionComponent setDescriptionElement(MarkdownType value) { 4687 this.description = value; 4688 return this; 4689 } 4690 4691 /** 4692 * @return The description of the resource version. 4693 */ 4694 public String getDescription() { 4695 return this.description == null ? null : this.description.getValue(); 4696 } 4697 4698 /** 4699 * @param value The description of the resource version. 4700 */ 4701 public ExampleScenarioInstanceVersionComponent setDescription(String value) { 4702 if (this.description == null) 4703 this.description = new MarkdownType(); 4704 this.description.setValue(value); 4705 return this; 4706 } 4707 4708 protected void listChildren(List<Property> children) { 4709 super.listChildren(children); 4710 children.add( 4711 new Property("versionId", "string", "The identifier of a specific version of a resource.", 0, 1, versionId)); 4712 children 4713 .add(new Property("description", "markdown", "The description of the resource version.", 0, 1, description)); 4714 } 4715 4716 @Override 4717 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 4718 switch (_hash) { 4719 case -1407102957: 4720 /* versionId */ return new Property("versionId", "string", 4721 "The identifier of a specific version of a resource.", 0, 1, versionId); 4722 case -1724546052: 4723 /* description */ return new Property("description", "markdown", "The description of the resource version.", 0, 4724 1, description); 4725 default: 4726 return super.getNamedProperty(_hash, _name, _checkValid); 4727 } 4728 4729 } 4730 4731 @Override 4732 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 4733 switch (hash) { 4734 case -1407102957: 4735 /* versionId */ return this.versionId == null ? new Base[0] : new Base[] { this.versionId }; // StringType 4736 case -1724546052: 4737 /* description */ return this.description == null ? new Base[0] : new Base[] { this.description }; // MarkdownType 4738 default: 4739 return super.getProperty(hash, name, checkValid); 4740 } 4741 4742 } 4743 4744 @Override 4745 public Base setProperty(int hash, String name, Base value) throws FHIRException { 4746 switch (hash) { 4747 case -1407102957: // versionId 4748 this.versionId = castToString(value); // StringType 4749 return value; 4750 case -1724546052: // description 4751 this.description = castToMarkdown(value); // MarkdownType 4752 return value; 4753 default: 4754 return super.setProperty(hash, name, value); 4755 } 4756 4757 } 4758 4759 @Override 4760 public Base setProperty(String name, Base value) throws FHIRException { 4761 if (name.equals("versionId")) { 4762 this.versionId = castToString(value); // StringType 4763 } else if (name.equals("description")) { 4764 this.description = castToMarkdown(value); // MarkdownType 4765 } else 4766 return super.setProperty(name, value); 4767 return value; 4768 } 4769 4770 @Override 4771 public void removeChild(String name, Base value) throws FHIRException { 4772 if (name.equals("versionId")) { 4773 this.versionId = null; 4774 } else if (name.equals("description")) { 4775 this.description = null; 4776 } else 4777 super.removeChild(name, value); 4778 4779 } 4780 4781 @Override 4782 public Base makeProperty(int hash, String name) throws FHIRException { 4783 switch (hash) { 4784 case -1407102957: 4785 return getVersionIdElement(); 4786 case -1724546052: 4787 return getDescriptionElement(); 4788 default: 4789 return super.makeProperty(hash, name); 4790 } 4791 4792 } 4793 4794 @Override 4795 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 4796 switch (hash) { 4797 case -1407102957: 4798 /* versionId */ return new String[] { "string" }; 4799 case -1724546052: 4800 /* description */ return new String[] { "markdown" }; 4801 default: 4802 return super.getTypesForProperty(hash, name); 4803 } 4804 4805 } 4806 4807 @Override 4808 public Base addChild(String name) throws FHIRException { 4809 if (name.equals("versionId")) { 4810 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.versionId"); 4811 } else if (name.equals("description")) { 4812 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.description"); 4813 } else 4814 return super.addChild(name); 4815 } 4816 4817 public ExampleScenarioInstanceVersionComponent copy() { 4818 ExampleScenarioInstanceVersionComponent dst = new ExampleScenarioInstanceVersionComponent(); 4819 copyValues(dst); 4820 return dst; 4821 } 4822 4823 public void copyValues(ExampleScenarioInstanceVersionComponent dst) { 4824 super.copyValues(dst); 4825 dst.versionId = versionId == null ? null : versionId.copy(); 4826 dst.description = description == null ? null : description.copy(); 4827 } 4828 4829 @Override 4830 public boolean equalsDeep(Base other_) { 4831 if (!super.equalsDeep(other_)) 4832 return false; 4833 if (!(other_ instanceof ExampleScenarioInstanceVersionComponent)) 4834 return false; 4835 ExampleScenarioInstanceVersionComponent o = (ExampleScenarioInstanceVersionComponent) other_; 4836 return compareDeep(versionId, o.versionId, true) && compareDeep(description, o.description, true); 4837 } 4838 4839 @Override 4840 public boolean equalsShallow(Base other_) { 4841 if (!super.equalsShallow(other_)) 4842 return false; 4843 if (!(other_ instanceof ExampleScenarioInstanceVersionComponent)) 4844 return false; 4845 ExampleScenarioInstanceVersionComponent o = (ExampleScenarioInstanceVersionComponent) other_; 4846 return compareValues(versionId, o.versionId, true) && compareValues(description, o.description, true); 4847 } 4848 4849 public boolean isEmpty() { 4850 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(versionId, description); 4851 } 4852 4853 public String fhirType() { 4854 return "ExampleScenario.instance.version"; 4855 4856 } 4857 4858 } 4859 4860 @Block() 4861 public static class ExampleScenarioInstanceContainedInstanceComponent extends BackboneElement 4862 implements IBaseBackboneElement { 4863 /** 4864 * Each resource contained in the instance. 4865 */ 4866 @Child(name = "resourceId", type = { 4867 StringType.class }, order = 1, min = 1, max = 1, modifier = false, summary = false) 4868 @Description(shortDefinition = "Each resource contained in the instance", formalDefinition = "Each resource contained in the instance.") 4869 protected StringType resourceId; 4870 4871 /** 4872 * A specific version of a resource contained in the instance. 4873 */ 4874 @Child(name = "versionId", type = { 4875 StringType.class }, order = 2, min = 0, max = 1, modifier = false, summary = false) 4876 @Description(shortDefinition = "A specific version of a resource contained in the instance", formalDefinition = "A specific version of a resource contained in the instance.") 4877 protected StringType versionId; 4878 4879 private static final long serialVersionUID = 908084124L; 4880 4881 /** 4882 * Constructor 4883 */ 4884 public ExampleScenarioInstanceContainedInstanceComponent() { 4885 super(); 4886 } 4887 4888 /** 4889 * Constructor 4890 */ 4891 public ExampleScenarioInstanceContainedInstanceComponent(StringType resourceId) { 4892 super(); 4893 this.resourceId = resourceId; 4894 } 4895 4896 /** 4897 * @return {@link #resourceId} (Each resource contained in the instance.). This 4898 * is the underlying object with id, value and extensions. The accessor 4899 * "getResourceId" gives direct access to the value 4900 */ 4901 public StringType getResourceIdElement() { 4902 if (this.resourceId == null) 4903 if (Configuration.errorOnAutoCreate()) 4904 throw new Error("Attempt to auto-create ExampleScenarioInstanceContainedInstanceComponent.resourceId"); 4905 else if (Configuration.doAutoCreate()) 4906 this.resourceId = new StringType(); // bb 4907 return this.resourceId; 4908 } 4909 4910 public boolean hasResourceIdElement() { 4911 return this.resourceId != null && !this.resourceId.isEmpty(); 4912 } 4913 4914 public boolean hasResourceId() { 4915 return this.resourceId != null && !this.resourceId.isEmpty(); 4916 } 4917 4918 /** 4919 * @param value {@link #resourceId} (Each resource contained in the instance.). 4920 * This is the underlying object with id, value and extensions. The 4921 * accessor "getResourceId" gives direct access to the value 4922 */ 4923 public ExampleScenarioInstanceContainedInstanceComponent setResourceIdElement(StringType value) { 4924 this.resourceId = value; 4925 return this; 4926 } 4927 4928 /** 4929 * @return Each resource contained in the instance. 4930 */ 4931 public String getResourceId() { 4932 return this.resourceId == null ? null : this.resourceId.getValue(); 4933 } 4934 4935 /** 4936 * @param value Each resource contained in the instance. 4937 */ 4938 public ExampleScenarioInstanceContainedInstanceComponent setResourceId(String value) { 4939 if (this.resourceId == null) 4940 this.resourceId = new StringType(); 4941 this.resourceId.setValue(value); 4942 return this; 4943 } 4944 4945 /** 4946 * @return {@link #versionId} (A specific version of a resource contained in the 4947 * instance.). This is the underlying object with id, value and 4948 * extensions. The accessor "getVersionId" gives direct access to the 4949 * value 4950 */ 4951 public StringType getVersionIdElement() { 4952 if (this.versionId == null) 4953 if (Configuration.errorOnAutoCreate()) 4954 throw new Error("Attempt to auto-create ExampleScenarioInstanceContainedInstanceComponent.versionId"); 4955 else if (Configuration.doAutoCreate()) 4956 this.versionId = new StringType(); // bb 4957 return this.versionId; 4958 } 4959 4960 public boolean hasVersionIdElement() { 4961 return this.versionId != null && !this.versionId.isEmpty(); 4962 } 4963 4964 public boolean hasVersionId() { 4965 return this.versionId != null && !this.versionId.isEmpty(); 4966 } 4967 4968 /** 4969 * @param value {@link #versionId} (A specific version of a resource contained 4970 * in the instance.). This is the underlying object with id, value 4971 * and extensions. The accessor "getVersionId" gives direct access 4972 * to the value 4973 */ 4974 public ExampleScenarioInstanceContainedInstanceComponent setVersionIdElement(StringType value) { 4975 this.versionId = value; 4976 return this; 4977 } 4978 4979 /** 4980 * @return A specific version of a resource contained in the instance. 4981 */ 4982 public String getVersionId() { 4983 return this.versionId == null ? null : this.versionId.getValue(); 4984 } 4985 4986 /** 4987 * @param value A specific version of a resource contained in the instance. 4988 */ 4989 public ExampleScenarioInstanceContainedInstanceComponent setVersionId(String value) { 4990 if (Utilities.noString(value)) 4991 this.versionId = null; 4992 else { 4993 if (this.versionId == null) 4994 this.versionId = new StringType(); 4995 this.versionId.setValue(value); 4996 } 4997 return this; 4998 } 4999 5000 protected void listChildren(List<Property> children) { 5001 super.listChildren(children); 5002 children.add(new Property("resourceId", "string", "Each resource contained in the instance.", 0, 1, resourceId)); 5003 children.add(new Property("versionId", "string", "A specific version of a resource contained in the instance.", 0, 5004 1, versionId)); 5005 } 5006 5007 @Override 5008 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 5009 switch (_hash) { 5010 case -1345650231: 5011 /* resourceId */ return new Property("resourceId", "string", "Each resource contained in the instance.", 0, 1, 5012 resourceId); 5013 case -1407102957: 5014 /* versionId */ return new Property("versionId", "string", 5015 "A specific version of a resource contained in the instance.", 0, 1, versionId); 5016 default: 5017 return super.getNamedProperty(_hash, _name, _checkValid); 5018 } 5019 5020 } 5021 5022 @Override 5023 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 5024 switch (hash) { 5025 case -1345650231: 5026 /* resourceId */ return this.resourceId == null ? new Base[0] : new Base[] { this.resourceId }; // StringType 5027 case -1407102957: 5028 /* versionId */ return this.versionId == null ? new Base[0] : new Base[] { this.versionId }; // StringType 5029 default: 5030 return super.getProperty(hash, name, checkValid); 5031 } 5032 5033 } 5034 5035 @Override 5036 public Base setProperty(int hash, String name, Base value) throws FHIRException { 5037 switch (hash) { 5038 case -1345650231: // resourceId 5039 this.resourceId = castToString(value); // StringType 5040 return value; 5041 case -1407102957: // versionId 5042 this.versionId = castToString(value); // StringType 5043 return value; 5044 default: 5045 return super.setProperty(hash, name, value); 5046 } 5047 5048 } 5049 5050 @Override 5051 public Base setProperty(String name, Base value) throws FHIRException { 5052 if (name.equals("resourceId")) { 5053 this.resourceId = castToString(value); // StringType 5054 } else if (name.equals("versionId")) { 5055 this.versionId = castToString(value); // StringType 5056 } else 5057 return super.setProperty(name, value); 5058 return value; 5059 } 5060 5061 @Override 5062 public void removeChild(String name, Base value) throws FHIRException { 5063 if (name.equals("resourceId")) { 5064 this.resourceId = null; 5065 } else if (name.equals("versionId")) { 5066 this.versionId = null; 5067 } else 5068 super.removeChild(name, value); 5069 5070 } 5071 5072 @Override 5073 public Base makeProperty(int hash, String name) throws FHIRException { 5074 switch (hash) { 5075 case -1345650231: 5076 return getResourceIdElement(); 5077 case -1407102957: 5078 return getVersionIdElement(); 5079 default: 5080 return super.makeProperty(hash, name); 5081 } 5082 5083 } 5084 5085 @Override 5086 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 5087 switch (hash) { 5088 case -1345650231: 5089 /* resourceId */ return new String[] { "string" }; 5090 case -1407102957: 5091 /* versionId */ return new String[] { "string" }; 5092 default: 5093 return super.getTypesForProperty(hash, name); 5094 } 5095 5096 } 5097 5098 @Override 5099 public Base addChild(String name) throws FHIRException { 5100 if (name.equals("resourceId")) { 5101 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.resourceId"); 5102 } else if (name.equals("versionId")) { 5103 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.versionId"); 5104 } else 5105 return super.addChild(name); 5106 } 5107 5108 public ExampleScenarioInstanceContainedInstanceComponent copy() { 5109 ExampleScenarioInstanceContainedInstanceComponent dst = new ExampleScenarioInstanceContainedInstanceComponent(); 5110 copyValues(dst); 5111 return dst; 5112 } 5113 5114 public void copyValues(ExampleScenarioInstanceContainedInstanceComponent dst) { 5115 super.copyValues(dst); 5116 dst.resourceId = resourceId == null ? null : resourceId.copy(); 5117 dst.versionId = versionId == null ? null : versionId.copy(); 5118 } 5119 5120 @Override 5121 public boolean equalsDeep(Base other_) { 5122 if (!super.equalsDeep(other_)) 5123 return false; 5124 if (!(other_ instanceof ExampleScenarioInstanceContainedInstanceComponent)) 5125 return false; 5126 ExampleScenarioInstanceContainedInstanceComponent o = (ExampleScenarioInstanceContainedInstanceComponent) other_; 5127 return compareDeep(resourceId, o.resourceId, true) && compareDeep(versionId, o.versionId, true); 5128 } 5129 5130 @Override 5131 public boolean equalsShallow(Base other_) { 5132 if (!super.equalsShallow(other_)) 5133 return false; 5134 if (!(other_ instanceof ExampleScenarioInstanceContainedInstanceComponent)) 5135 return false; 5136 ExampleScenarioInstanceContainedInstanceComponent o = (ExampleScenarioInstanceContainedInstanceComponent) other_; 5137 return compareValues(resourceId, o.resourceId, true) && compareValues(versionId, o.versionId, true); 5138 } 5139 5140 public boolean isEmpty() { 5141 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(resourceId, versionId); 5142 } 5143 5144 public String fhirType() { 5145 return "ExampleScenario.instance.containedInstance"; 5146 5147 } 5148 5149 } 5150 5151 @Block() 5152 public static class ExampleScenarioProcessComponent extends BackboneElement implements IBaseBackboneElement { 5153 /** 5154 * The diagram title of the group of operations. 5155 */ 5156 @Child(name = "title", type = { StringType.class }, order = 1, min = 1, max = 1, modifier = false, summary = true) 5157 @Description(shortDefinition = "The diagram title of the group of operations", formalDefinition = "The diagram title of the group of operations.") 5158 protected StringType title; 5159 5160 /** 5161 * A longer description of the group of operations. 5162 */ 5163 @Child(name = "description", type = { 5164 MarkdownType.class }, order = 2, min = 0, max = 1, modifier = false, summary = false) 5165 @Description(shortDefinition = "A longer description of the group of operations", formalDefinition = "A longer description of the group of operations.") 5166 protected MarkdownType description; 5167 5168 /** 5169 * Description of initial status before the process starts. 5170 */ 5171 @Child(name = "preConditions", type = { 5172 MarkdownType.class }, order = 3, min = 0, max = 1, modifier = false, summary = false) 5173 @Description(shortDefinition = "Description of initial status before the process starts", formalDefinition = "Description of initial status before the process starts.") 5174 protected MarkdownType preConditions; 5175 5176 /** 5177 * Description of final status after the process ends. 5178 */ 5179 @Child(name = "postConditions", type = { 5180 MarkdownType.class }, order = 4, min = 0, max = 1, modifier = false, summary = false) 5181 @Description(shortDefinition = "Description of final status after the process ends", formalDefinition = "Description of final status after the process ends.") 5182 protected MarkdownType postConditions; 5183 5184 /** 5185 * Each step of the process. 5186 */ 5187 @Child(name = "step", type = {}, order = 5, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 5188 @Description(shortDefinition = "Each step of the process", formalDefinition = "Each step of the process.") 5189 protected List<ExampleScenarioProcessStepComponent> step; 5190 5191 private static final long serialVersionUID = 325578043L; 5192 5193 /** 5194 * Constructor 5195 */ 5196 public ExampleScenarioProcessComponent() { 5197 super(); 5198 } 5199 5200 /** 5201 * Constructor 5202 */ 5203 public ExampleScenarioProcessComponent(StringType title) { 5204 super(); 5205 this.title = title; 5206 } 5207 5208 /** 5209 * @return {@link #title} (The diagram title of the group of operations.). This 5210 * is the underlying object with id, value and extensions. The accessor 5211 * "getTitle" gives direct access to the value 5212 */ 5213 public StringType getTitleElement() { 5214 if (this.title == null) 5215 if (Configuration.errorOnAutoCreate()) 5216 throw new Error("Attempt to auto-create ExampleScenarioProcessComponent.title"); 5217 else if (Configuration.doAutoCreate()) 5218 this.title = new StringType(); // bb 5219 return this.title; 5220 } 5221 5222 public boolean hasTitleElement() { 5223 return this.title != null && !this.title.isEmpty(); 5224 } 5225 5226 public boolean hasTitle() { 5227 return this.title != null && !this.title.isEmpty(); 5228 } 5229 5230 /** 5231 * @param value {@link #title} (The diagram title of the group of operations.). 5232 * This is the underlying object with id, value and extensions. The 5233 * accessor "getTitle" gives direct access to the value 5234 */ 5235 public ExampleScenarioProcessComponent setTitleElement(StringType value) { 5236 this.title = value; 5237 return this; 5238 } 5239 5240 /** 5241 * @return The diagram title of the group of operations. 5242 */ 5243 public String getTitle() { 5244 return this.title == null ? null : this.title.getValue(); 5245 } 5246 5247 /** 5248 * @param value The diagram title of the group of operations. 5249 */ 5250 public ExampleScenarioProcessComponent setTitle(String value) { 5251 if (this.title == null) 5252 this.title = new StringType(); 5253 this.title.setValue(value); 5254 return this; 5255 } 5256 5257 /** 5258 * @return {@link #description} (A longer description of the group of 5259 * operations.). This is the underlying object with id, value and 5260 * extensions. The accessor "getDescription" gives direct access to the 5261 * value 5262 */ 5263 public MarkdownType getDescriptionElement() { 5264 if (this.description == null) 5265 if (Configuration.errorOnAutoCreate()) 5266 throw new Error("Attempt to auto-create ExampleScenarioProcessComponent.description"); 5267 else if (Configuration.doAutoCreate()) 5268 this.description = new MarkdownType(); // bb 5269 return this.description; 5270 } 5271 5272 public boolean hasDescriptionElement() { 5273 return this.description != null && !this.description.isEmpty(); 5274 } 5275 5276 public boolean hasDescription() { 5277 return this.description != null && !this.description.isEmpty(); 5278 } 5279 5280 /** 5281 * @param value {@link #description} (A longer description of the group of 5282 * operations.). This is the underlying object with id, value and 5283 * extensions. The accessor "getDescription" gives direct access to 5284 * the value 5285 */ 5286 public ExampleScenarioProcessComponent setDescriptionElement(MarkdownType value) { 5287 this.description = value; 5288 return this; 5289 } 5290 5291 /** 5292 * @return A longer description of the group of operations. 5293 */ 5294 public String getDescription() { 5295 return this.description == null ? null : this.description.getValue(); 5296 } 5297 5298 /** 5299 * @param value A longer description of the group of operations. 5300 */ 5301 public ExampleScenarioProcessComponent setDescription(String value) { 5302 if (value == null) 5303 this.description = null; 5304 else { 5305 if (this.description == null) 5306 this.description = new MarkdownType(); 5307 this.description.setValue(value); 5308 } 5309 return this; 5310 } 5311 5312 /** 5313 * @return {@link #preConditions} (Description of initial status before the 5314 * process starts.). This is the underlying object with id, value and 5315 * extensions. The accessor "getPreConditions" gives direct access to 5316 * the value 5317 */ 5318 public MarkdownType getPreConditionsElement() { 5319 if (this.preConditions == null) 5320 if (Configuration.errorOnAutoCreate()) 5321 throw new Error("Attempt to auto-create ExampleScenarioProcessComponent.preConditions"); 5322 else if (Configuration.doAutoCreate()) 5323 this.preConditions = new MarkdownType(); // bb 5324 return this.preConditions; 5325 } 5326 5327 public boolean hasPreConditionsElement() { 5328 return this.preConditions != null && !this.preConditions.isEmpty(); 5329 } 5330 5331 public boolean hasPreConditions() { 5332 return this.preConditions != null && !this.preConditions.isEmpty(); 5333 } 5334 5335 /** 5336 * @param value {@link #preConditions} (Description of initial status before the 5337 * process starts.). This is the underlying object with id, value 5338 * and extensions. The accessor "getPreConditions" gives direct 5339 * access to the value 5340 */ 5341 public ExampleScenarioProcessComponent setPreConditionsElement(MarkdownType value) { 5342 this.preConditions = value; 5343 return this; 5344 } 5345 5346 /** 5347 * @return Description of initial status before the process starts. 5348 */ 5349 public String getPreConditions() { 5350 return this.preConditions == null ? null : this.preConditions.getValue(); 5351 } 5352 5353 /** 5354 * @param value Description of initial status before the process starts. 5355 */ 5356 public ExampleScenarioProcessComponent setPreConditions(String value) { 5357 if (value == null) 5358 this.preConditions = null; 5359 else { 5360 if (this.preConditions == null) 5361 this.preConditions = new MarkdownType(); 5362 this.preConditions.setValue(value); 5363 } 5364 return this; 5365 } 5366 5367 /** 5368 * @return {@link #postConditions} (Description of final status after the 5369 * process ends.). This is the underlying object with id, value and 5370 * extensions. The accessor "getPostConditions" gives direct access to 5371 * the value 5372 */ 5373 public MarkdownType getPostConditionsElement() { 5374 if (this.postConditions == null) 5375 if (Configuration.errorOnAutoCreate()) 5376 throw new Error("Attempt to auto-create ExampleScenarioProcessComponent.postConditions"); 5377 else if (Configuration.doAutoCreate()) 5378 this.postConditions = new MarkdownType(); // bb 5379 return this.postConditions; 5380 } 5381 5382 public boolean hasPostConditionsElement() { 5383 return this.postConditions != null && !this.postConditions.isEmpty(); 5384 } 5385 5386 public boolean hasPostConditions() { 5387 return this.postConditions != null && !this.postConditions.isEmpty(); 5388 } 5389 5390 /** 5391 * @param value {@link #postConditions} (Description of final status after the 5392 * process ends.). This is the underlying object with id, value and 5393 * extensions. The accessor "getPostConditions" gives direct access 5394 * to the value 5395 */ 5396 public ExampleScenarioProcessComponent setPostConditionsElement(MarkdownType value) { 5397 this.postConditions = value; 5398 return this; 5399 } 5400 5401 /** 5402 * @return Description of final status after the process ends. 5403 */ 5404 public String getPostConditions() { 5405 return this.postConditions == null ? null : this.postConditions.getValue(); 5406 } 5407 5408 /** 5409 * @param value Description of final status after the process ends. 5410 */ 5411 public ExampleScenarioProcessComponent setPostConditions(String value) { 5412 if (value == null) 5413 this.postConditions = null; 5414 else { 5415 if (this.postConditions == null) 5416 this.postConditions = new MarkdownType(); 5417 this.postConditions.setValue(value); 5418 } 5419 return this; 5420 } 5421 5422 /** 5423 * @return {@link #step} (Each step of the process.) 5424 */ 5425 public List<ExampleScenarioProcessStepComponent> getStep() { 5426 if (this.step == null) 5427 this.step = new ArrayList<ExampleScenarioProcessStepComponent>(); 5428 return this.step; 5429 } 5430 5431 /** 5432 * @return Returns a reference to <code>this</code> for easy method chaining 5433 */ 5434 public ExampleScenarioProcessComponent setStep(List<ExampleScenarioProcessStepComponent> theStep) { 5435 this.step = theStep; 5436 return this; 5437 } 5438 5439 public boolean hasStep() { 5440 if (this.step == null) 5441 return false; 5442 for (ExampleScenarioProcessStepComponent item : this.step) 5443 if (!item.isEmpty()) 5444 return true; 5445 return false; 5446 } 5447 5448 public ExampleScenarioProcessStepComponent addStep() { // 3 5449 ExampleScenarioProcessStepComponent t = new ExampleScenarioProcessStepComponent(); 5450 if (this.step == null) 5451 this.step = new ArrayList<ExampleScenarioProcessStepComponent>(); 5452 this.step.add(t); 5453 return t; 5454 } 5455 5456 public ExampleScenarioProcessComponent addStep(ExampleScenarioProcessStepComponent t) { // 3 5457 if (t == null) 5458 return this; 5459 if (this.step == null) 5460 this.step = new ArrayList<ExampleScenarioProcessStepComponent>(); 5461 this.step.add(t); 5462 return this; 5463 } 5464 5465 /** 5466 * @return The first repetition of repeating field {@link #step}, creating it if 5467 * it does not already exist 5468 */ 5469 public ExampleScenarioProcessStepComponent getStepFirstRep() { 5470 if (getStep().isEmpty()) { 5471 addStep(); 5472 } 5473 return getStep().get(0); 5474 } 5475 5476 protected void listChildren(List<Property> children) { 5477 super.listChildren(children); 5478 children.add(new Property("title", "string", "The diagram title of the group of operations.", 0, 1, title)); 5479 children.add(new Property("description", "markdown", "A longer description of the group of operations.", 0, 1, 5480 description)); 5481 children.add(new Property("preConditions", "markdown", "Description of initial status before the process starts.", 5482 0, 1, preConditions)); 5483 children.add(new Property("postConditions", "markdown", "Description of final status after the process ends.", 0, 5484 1, postConditions)); 5485 children.add(new Property("step", "", "Each step of the process.", 0, java.lang.Integer.MAX_VALUE, step)); 5486 } 5487 5488 @Override 5489 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 5490 switch (_hash) { 5491 case 110371416: 5492 /* title */ return new Property("title", "string", "The diagram title of the group of operations.", 0, 1, 5493 title); 5494 case -1724546052: 5495 /* description */ return new Property("description", "markdown", 5496 "A longer description of the group of operations.", 0, 1, description); 5497 case -1006692933: 5498 /* preConditions */ return new Property("preConditions", "markdown", 5499 "Description of initial status before the process starts.", 0, 1, preConditions); 5500 case 1738302328: 5501 /* postConditions */ return new Property("postConditions", "markdown", 5502 "Description of final status after the process ends.", 0, 1, postConditions); 5503 case 3540684: 5504 /* step */ return new Property("step", "", "Each step of the process.", 0, java.lang.Integer.MAX_VALUE, step); 5505 default: 5506 return super.getNamedProperty(_hash, _name, _checkValid); 5507 } 5508 5509 } 5510 5511 @Override 5512 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 5513 switch (hash) { 5514 case 110371416: 5515 /* title */ return this.title == null ? new Base[0] : new Base[] { this.title }; // StringType 5516 case -1724546052: 5517 /* description */ return this.description == null ? new Base[0] : new Base[] { this.description }; // MarkdownType 5518 case -1006692933: 5519 /* preConditions */ return this.preConditions == null ? new Base[0] : new Base[] { this.preConditions }; // MarkdownType 5520 case 1738302328: 5521 /* postConditions */ return this.postConditions == null ? new Base[0] : new Base[] { this.postConditions }; // MarkdownType 5522 case 3540684: 5523 /* step */ return this.step == null ? new Base[0] : this.step.toArray(new Base[this.step.size()]); // ExampleScenarioProcessStepComponent 5524 default: 5525 return super.getProperty(hash, name, checkValid); 5526 } 5527 5528 } 5529 5530 @Override 5531 public Base setProperty(int hash, String name, Base value) throws FHIRException { 5532 switch (hash) { 5533 case 110371416: // title 5534 this.title = castToString(value); // StringType 5535 return value; 5536 case -1724546052: // description 5537 this.description = castToMarkdown(value); // MarkdownType 5538 return value; 5539 case -1006692933: // preConditions 5540 this.preConditions = castToMarkdown(value); // MarkdownType 5541 return value; 5542 case 1738302328: // postConditions 5543 this.postConditions = castToMarkdown(value); // MarkdownType 5544 return value; 5545 case 3540684: // step 5546 this.getStep().add((ExampleScenarioProcessStepComponent) value); // ExampleScenarioProcessStepComponent 5547 return value; 5548 default: 5549 return super.setProperty(hash, name, value); 5550 } 5551 5552 } 5553 5554 @Override 5555 public Base setProperty(String name, Base value) throws FHIRException { 5556 if (name.equals("title")) { 5557 this.title = castToString(value); // StringType 5558 } else if (name.equals("description")) { 5559 this.description = castToMarkdown(value); // MarkdownType 5560 } else if (name.equals("preConditions")) { 5561 this.preConditions = castToMarkdown(value); // MarkdownType 5562 } else if (name.equals("postConditions")) { 5563 this.postConditions = castToMarkdown(value); // MarkdownType 5564 } else if (name.equals("step")) { 5565 this.getStep().add((ExampleScenarioProcessStepComponent) value); 5566 } else 5567 return super.setProperty(name, value); 5568 return value; 5569 } 5570 5571 @Override 5572 public void removeChild(String name, Base value) throws FHIRException { 5573 if (name.equals("title")) { 5574 this.title = null; 5575 } else if (name.equals("description")) { 5576 this.description = null; 5577 } else if (name.equals("preConditions")) { 5578 this.preConditions = null; 5579 } else if (name.equals("postConditions")) { 5580 this.postConditions = null; 5581 } else if (name.equals("step")) { 5582 this.getStep().remove((ExampleScenarioProcessStepComponent) value); 5583 } else 5584 super.removeChild(name, value); 5585 5586 } 5587 5588 @Override 5589 public Base makeProperty(int hash, String name) throws FHIRException { 5590 switch (hash) { 5591 case 110371416: 5592 return getTitleElement(); 5593 case -1724546052: 5594 return getDescriptionElement(); 5595 case -1006692933: 5596 return getPreConditionsElement(); 5597 case 1738302328: 5598 return getPostConditionsElement(); 5599 case 3540684: 5600 return addStep(); 5601 default: 5602 return super.makeProperty(hash, name); 5603 } 5604 5605 } 5606 5607 @Override 5608 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 5609 switch (hash) { 5610 case 110371416: 5611 /* title */ return new String[] { "string" }; 5612 case -1724546052: 5613 /* description */ return new String[] { "markdown" }; 5614 case -1006692933: 5615 /* preConditions */ return new String[] { "markdown" }; 5616 case 1738302328: 5617 /* postConditions */ return new String[] { "markdown" }; 5618 case 3540684: 5619 /* step */ return new String[] {}; 5620 default: 5621 return super.getTypesForProperty(hash, name); 5622 } 5623 5624 } 5625 5626 @Override 5627 public Base addChild(String name) throws FHIRException { 5628 if (name.equals("title")) { 5629 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.title"); 5630 } else if (name.equals("description")) { 5631 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.description"); 5632 } else if (name.equals("preConditions")) { 5633 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.preConditions"); 5634 } else if (name.equals("postConditions")) { 5635 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.postConditions"); 5636 } else if (name.equals("step")) { 5637 return addStep(); 5638 } else 5639 return super.addChild(name); 5640 } 5641 5642 public ExampleScenarioProcessComponent copy() { 5643 ExampleScenarioProcessComponent dst = new ExampleScenarioProcessComponent(); 5644 copyValues(dst); 5645 return dst; 5646 } 5647 5648 public void copyValues(ExampleScenarioProcessComponent dst) { 5649 super.copyValues(dst); 5650 dst.title = title == null ? null : title.copy(); 5651 dst.description = description == null ? null : description.copy(); 5652 dst.preConditions = preConditions == null ? null : preConditions.copy(); 5653 dst.postConditions = postConditions == null ? null : postConditions.copy(); 5654 if (step != null) { 5655 dst.step = new ArrayList<ExampleScenarioProcessStepComponent>(); 5656 for (ExampleScenarioProcessStepComponent i : step) 5657 dst.step.add(i.copy()); 5658 } 5659 ; 5660 } 5661 5662 @Override 5663 public boolean equalsDeep(Base other_) { 5664 if (!super.equalsDeep(other_)) 5665 return false; 5666 if (!(other_ instanceof ExampleScenarioProcessComponent)) 5667 return false; 5668 ExampleScenarioProcessComponent o = (ExampleScenarioProcessComponent) other_; 5669 return compareDeep(title, o.title, true) && compareDeep(description, o.description, true) 5670 && compareDeep(preConditions, o.preConditions, true) && compareDeep(postConditions, o.postConditions, true) 5671 && compareDeep(step, o.step, true); 5672 } 5673 5674 @Override 5675 public boolean equalsShallow(Base other_) { 5676 if (!super.equalsShallow(other_)) 5677 return false; 5678 if (!(other_ instanceof ExampleScenarioProcessComponent)) 5679 return false; 5680 ExampleScenarioProcessComponent o = (ExampleScenarioProcessComponent) other_; 5681 return compareValues(title, o.title, true) && compareValues(description, o.description, true) 5682 && compareValues(preConditions, o.preConditions, true) 5683 && compareValues(postConditions, o.postConditions, true); 5684 } 5685 5686 public boolean isEmpty() { 5687 return super.isEmpty() 5688 && ca.uhn.fhir.util.ElementUtil.isEmpty(title, description, preConditions, postConditions, step); 5689 } 5690 5691 public String fhirType() { 5692 return "ExampleScenario.process"; 5693 5694 } 5695 5696 } 5697 5698 @Block() 5699 public static class ExampleScenarioProcessStepComponent extends BackboneElement implements IBaseBackboneElement { 5700 /** 5701 * Nested process. 5702 */ 5703 @Child(name = "process", type = { 5704 ExampleScenarioProcessComponent.class }, order = 1, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 5705 @Description(shortDefinition = "Nested process", formalDefinition = "Nested process.") 5706 protected List<ExampleScenarioProcessComponent> process; 5707 5708 /** 5709 * If there is a pause in the flow. 5710 */ 5711 @Child(name = "pause", type = { BooleanType.class }, order = 2, min = 0, max = 1, modifier = false, summary = false) 5712 @Description(shortDefinition = "If there is a pause in the flow", formalDefinition = "If there is a pause in the flow.") 5713 protected BooleanType pause; 5714 5715 /** 5716 * Each interaction or action. 5717 */ 5718 @Child(name = "operation", type = {}, order = 3, min = 0, max = 1, modifier = false, summary = false) 5719 @Description(shortDefinition = "Each interaction or action", formalDefinition = "Each interaction or action.") 5720 protected ExampleScenarioProcessStepOperationComponent operation; 5721 5722 /** 5723 * Indicates an alternative step that can be taken instead of the operations on 5724 * the base step in exceptional/atypical circumstances. 5725 */ 5726 @Child(name = "alternative", type = {}, order = 4, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 5727 @Description(shortDefinition = "Alternate non-typical step action", formalDefinition = "Indicates an alternative step that can be taken instead of the operations on the base step in exceptional/atypical circumstances.") 5728 protected List<ExampleScenarioProcessStepAlternativeComponent> alternative; 5729 5730 private static final long serialVersionUID = -894029605L; 5731 5732 /** 5733 * Constructor 5734 */ 5735 public ExampleScenarioProcessStepComponent() { 5736 super(); 5737 } 5738 5739 /** 5740 * @return {@link #process} (Nested process.) 5741 */ 5742 public List<ExampleScenarioProcessComponent> getProcess() { 5743 if (this.process == null) 5744 this.process = new ArrayList<ExampleScenarioProcessComponent>(); 5745 return this.process; 5746 } 5747 5748 /** 5749 * @return Returns a reference to <code>this</code> for easy method chaining 5750 */ 5751 public ExampleScenarioProcessStepComponent setProcess(List<ExampleScenarioProcessComponent> theProcess) { 5752 this.process = theProcess; 5753 return this; 5754 } 5755 5756 public boolean hasProcess() { 5757 if (this.process == null) 5758 return false; 5759 for (ExampleScenarioProcessComponent item : this.process) 5760 if (!item.isEmpty()) 5761 return true; 5762 return false; 5763 } 5764 5765 public ExampleScenarioProcessComponent addProcess() { // 3 5766 ExampleScenarioProcessComponent t = new ExampleScenarioProcessComponent(); 5767 if (this.process == null) 5768 this.process = new ArrayList<ExampleScenarioProcessComponent>(); 5769 this.process.add(t); 5770 return t; 5771 } 5772 5773 public ExampleScenarioProcessStepComponent addProcess(ExampleScenarioProcessComponent t) { // 3 5774 if (t == null) 5775 return this; 5776 if (this.process == null) 5777 this.process = new ArrayList<ExampleScenarioProcessComponent>(); 5778 this.process.add(t); 5779 return this; 5780 } 5781 5782 /** 5783 * @return The first repetition of repeating field {@link #process}, creating it 5784 * if it does not already exist 5785 */ 5786 public ExampleScenarioProcessComponent getProcessFirstRep() { 5787 if (getProcess().isEmpty()) { 5788 addProcess(); 5789 } 5790 return getProcess().get(0); 5791 } 5792 5793 /** 5794 * @return {@link #pause} (If there is a pause in the flow.). This is the 5795 * underlying object with id, value and extensions. The accessor 5796 * "getPause" gives direct access to the value 5797 */ 5798 public BooleanType getPauseElement() { 5799 if (this.pause == null) 5800 if (Configuration.errorOnAutoCreate()) 5801 throw new Error("Attempt to auto-create ExampleScenarioProcessStepComponent.pause"); 5802 else if (Configuration.doAutoCreate()) 5803 this.pause = new BooleanType(); // bb 5804 return this.pause; 5805 } 5806 5807 public boolean hasPauseElement() { 5808 return this.pause != null && !this.pause.isEmpty(); 5809 } 5810 5811 public boolean hasPause() { 5812 return this.pause != null && !this.pause.isEmpty(); 5813 } 5814 5815 /** 5816 * @param value {@link #pause} (If there is a pause in the flow.). This is the 5817 * underlying object with id, value and extensions. The accessor 5818 * "getPause" gives direct access to the value 5819 */ 5820 public ExampleScenarioProcessStepComponent setPauseElement(BooleanType value) { 5821 this.pause = value; 5822 return this; 5823 } 5824 5825 /** 5826 * @return If there is a pause in the flow. 5827 */ 5828 public boolean getPause() { 5829 return this.pause == null || this.pause.isEmpty() ? false : this.pause.getValue(); 5830 } 5831 5832 /** 5833 * @param value If there is a pause in the flow. 5834 */ 5835 public ExampleScenarioProcessStepComponent setPause(boolean value) { 5836 if (this.pause == null) 5837 this.pause = new BooleanType(); 5838 this.pause.setValue(value); 5839 return this; 5840 } 5841 5842 /** 5843 * @return {@link #operation} (Each interaction or action.) 5844 */ 5845 public ExampleScenarioProcessStepOperationComponent getOperation() { 5846 if (this.operation == null) 5847 if (Configuration.errorOnAutoCreate()) 5848 throw new Error("Attempt to auto-create ExampleScenarioProcessStepComponent.operation"); 5849 else if (Configuration.doAutoCreate()) 5850 this.operation = new ExampleScenarioProcessStepOperationComponent(); // cc 5851 return this.operation; 5852 } 5853 5854 public boolean hasOperation() { 5855 return this.operation != null && !this.operation.isEmpty(); 5856 } 5857 5858 /** 5859 * @param value {@link #operation} (Each interaction or action.) 5860 */ 5861 public ExampleScenarioProcessStepComponent setOperation(ExampleScenarioProcessStepOperationComponent value) { 5862 this.operation = value; 5863 return this; 5864 } 5865 5866 /** 5867 * @return {@link #alternative} (Indicates an alternative step that can be taken 5868 * instead of the operations on the base step in exceptional/atypical 5869 * circumstances.) 5870 */ 5871 public List<ExampleScenarioProcessStepAlternativeComponent> getAlternative() { 5872 if (this.alternative == null) 5873 this.alternative = new ArrayList<ExampleScenarioProcessStepAlternativeComponent>(); 5874 return this.alternative; 5875 } 5876 5877 /** 5878 * @return Returns a reference to <code>this</code> for easy method chaining 5879 */ 5880 public ExampleScenarioProcessStepComponent setAlternative( 5881 List<ExampleScenarioProcessStepAlternativeComponent> theAlternative) { 5882 this.alternative = theAlternative; 5883 return this; 5884 } 5885 5886 public boolean hasAlternative() { 5887 if (this.alternative == null) 5888 return false; 5889 for (ExampleScenarioProcessStepAlternativeComponent item : this.alternative) 5890 if (!item.isEmpty()) 5891 return true; 5892 return false; 5893 } 5894 5895 public ExampleScenarioProcessStepAlternativeComponent addAlternative() { // 3 5896 ExampleScenarioProcessStepAlternativeComponent t = new ExampleScenarioProcessStepAlternativeComponent(); 5897 if (this.alternative == null) 5898 this.alternative = new ArrayList<ExampleScenarioProcessStepAlternativeComponent>(); 5899 this.alternative.add(t); 5900 return t; 5901 } 5902 5903 public ExampleScenarioProcessStepComponent addAlternative(ExampleScenarioProcessStepAlternativeComponent t) { // 3 5904 if (t == null) 5905 return this; 5906 if (this.alternative == null) 5907 this.alternative = new ArrayList<ExampleScenarioProcessStepAlternativeComponent>(); 5908 this.alternative.add(t); 5909 return this; 5910 } 5911 5912 /** 5913 * @return The first repetition of repeating field {@link #alternative}, 5914 * creating it if it does not already exist 5915 */ 5916 public ExampleScenarioProcessStepAlternativeComponent getAlternativeFirstRep() { 5917 if (getAlternative().isEmpty()) { 5918 addAlternative(); 5919 } 5920 return getAlternative().get(0); 5921 } 5922 5923 protected void listChildren(List<Property> children) { 5924 super.listChildren(children); 5925 children.add(new Property("process", "@ExampleScenario.process", "Nested process.", 0, 5926 java.lang.Integer.MAX_VALUE, process)); 5927 children.add(new Property("pause", "boolean", "If there is a pause in the flow.", 0, 1, pause)); 5928 children.add(new Property("operation", "", "Each interaction or action.", 0, 1, operation)); 5929 children.add(new Property("alternative", "", 5930 "Indicates an alternative step that can be taken instead of the operations on the base step in exceptional/atypical circumstances.", 5931 0, java.lang.Integer.MAX_VALUE, alternative)); 5932 } 5933 5934 @Override 5935 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 5936 switch (_hash) { 5937 case -309518737: 5938 /* process */ return new Property("process", "@ExampleScenario.process", "Nested process.", 0, 5939 java.lang.Integer.MAX_VALUE, process); 5940 case 106440182: 5941 /* pause */ return new Property("pause", "boolean", "If there is a pause in the flow.", 0, 1, pause); 5942 case 1662702951: 5943 /* operation */ return new Property("operation", "", "Each interaction or action.", 0, 1, operation); 5944 case -196794451: 5945 /* alternative */ return new Property("alternative", "", 5946 "Indicates an alternative step that can be taken instead of the operations on the base step in exceptional/atypical circumstances.", 5947 0, java.lang.Integer.MAX_VALUE, alternative); 5948 default: 5949 return super.getNamedProperty(_hash, _name, _checkValid); 5950 } 5951 5952 } 5953 5954 @Override 5955 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 5956 switch (hash) { 5957 case -309518737: 5958 /* process */ return this.process == null ? new Base[0] : this.process.toArray(new Base[this.process.size()]); // ExampleScenarioProcessComponent 5959 case 106440182: 5960 /* pause */ return this.pause == null ? new Base[0] : new Base[] { this.pause }; // BooleanType 5961 case 1662702951: 5962 /* operation */ return this.operation == null ? new Base[0] : new Base[] { this.operation }; // ExampleScenarioProcessStepOperationComponent 5963 case -196794451: 5964 /* alternative */ return this.alternative == null ? new Base[0] 5965 : this.alternative.toArray(new Base[this.alternative.size()]); // ExampleScenarioProcessStepAlternativeComponent 5966 default: 5967 return super.getProperty(hash, name, checkValid); 5968 } 5969 5970 } 5971 5972 @Override 5973 public Base setProperty(int hash, String name, Base value) throws FHIRException { 5974 switch (hash) { 5975 case -309518737: // process 5976 this.getProcess().add((ExampleScenarioProcessComponent) value); // ExampleScenarioProcessComponent 5977 return value; 5978 case 106440182: // pause 5979 this.pause = castToBoolean(value); // BooleanType 5980 return value; 5981 case 1662702951: // operation 5982 this.operation = (ExampleScenarioProcessStepOperationComponent) value; // ExampleScenarioProcessStepOperationComponent 5983 return value; 5984 case -196794451: // alternative 5985 this.getAlternative().add((ExampleScenarioProcessStepAlternativeComponent) value); // ExampleScenarioProcessStepAlternativeComponent 5986 return value; 5987 default: 5988 return super.setProperty(hash, name, value); 5989 } 5990 5991 } 5992 5993 @Override 5994 public Base setProperty(String name, Base value) throws FHIRException { 5995 if (name.equals("process")) { 5996 this.getProcess().add((ExampleScenarioProcessComponent) value); 5997 } else if (name.equals("pause")) { 5998 this.pause = castToBoolean(value); // BooleanType 5999 } else if (name.equals("operation")) { 6000 this.operation = (ExampleScenarioProcessStepOperationComponent) value; // ExampleScenarioProcessStepOperationComponent 6001 } else if (name.equals("alternative")) { 6002 this.getAlternative().add((ExampleScenarioProcessStepAlternativeComponent) value); 6003 } else 6004 return super.setProperty(name, value); 6005 return value; 6006 } 6007 6008 @Override 6009 public void removeChild(String name, Base value) throws FHIRException { 6010 if (name.equals("process")) { 6011 this.getProcess().remove((ExampleScenarioProcessComponent) value); 6012 } else if (name.equals("pause")) { 6013 this.pause = null; 6014 } else if (name.equals("operation")) { 6015 this.operation = (ExampleScenarioProcessStepOperationComponent) value; // ExampleScenarioProcessStepOperationComponent 6016 } else if (name.equals("alternative")) { 6017 this.getAlternative().remove((ExampleScenarioProcessStepAlternativeComponent) value); 6018 } else 6019 super.removeChild(name, value); 6020 6021 } 6022 6023 @Override 6024 public Base makeProperty(int hash, String name) throws FHIRException { 6025 switch (hash) { 6026 case -309518737: 6027 return addProcess(); 6028 case 106440182: 6029 return getPauseElement(); 6030 case 1662702951: 6031 return getOperation(); 6032 case -196794451: 6033 return addAlternative(); 6034 default: 6035 return super.makeProperty(hash, name); 6036 } 6037 6038 } 6039 6040 @Override 6041 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 6042 switch (hash) { 6043 case -309518737: 6044 /* process */ return new String[] { "@ExampleScenario.process" }; 6045 case 106440182: 6046 /* pause */ return new String[] { "boolean" }; 6047 case 1662702951: 6048 /* operation */ return new String[] {}; 6049 case -196794451: 6050 /* alternative */ return new String[] {}; 6051 default: 6052 return super.getTypesForProperty(hash, name); 6053 } 6054 6055 } 6056 6057 @Override 6058 public Base addChild(String name) throws FHIRException { 6059 if (name.equals("process")) { 6060 return addProcess(); 6061 } else if (name.equals("pause")) { 6062 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.pause"); 6063 } else if (name.equals("operation")) { 6064 this.operation = new ExampleScenarioProcessStepOperationComponent(); 6065 return this.operation; 6066 } else if (name.equals("alternative")) { 6067 return addAlternative(); 6068 } else 6069 return super.addChild(name); 6070 } 6071 6072 public ExampleScenarioProcessStepComponent copy() { 6073 ExampleScenarioProcessStepComponent dst = new ExampleScenarioProcessStepComponent(); 6074 copyValues(dst); 6075 return dst; 6076 } 6077 6078 public void copyValues(ExampleScenarioProcessStepComponent dst) { 6079 super.copyValues(dst); 6080 if (process != null) { 6081 dst.process = new ArrayList<ExampleScenarioProcessComponent>(); 6082 for (ExampleScenarioProcessComponent i : process) 6083 dst.process.add(i.copy()); 6084 } 6085 ; 6086 dst.pause = pause == null ? null : pause.copy(); 6087 dst.operation = operation == null ? null : operation.copy(); 6088 if (alternative != null) { 6089 dst.alternative = new ArrayList<ExampleScenarioProcessStepAlternativeComponent>(); 6090 for (ExampleScenarioProcessStepAlternativeComponent i : alternative) 6091 dst.alternative.add(i.copy()); 6092 } 6093 ; 6094 } 6095 6096 @Override 6097 public boolean equalsDeep(Base other_) { 6098 if (!super.equalsDeep(other_)) 6099 return false; 6100 if (!(other_ instanceof ExampleScenarioProcessStepComponent)) 6101 return false; 6102 ExampleScenarioProcessStepComponent o = (ExampleScenarioProcessStepComponent) other_; 6103 return compareDeep(process, o.process, true) && compareDeep(pause, o.pause, true) 6104 && compareDeep(operation, o.operation, true) && compareDeep(alternative, o.alternative, true); 6105 } 6106 6107 @Override 6108 public boolean equalsShallow(Base other_) { 6109 if (!super.equalsShallow(other_)) 6110 return false; 6111 if (!(other_ instanceof ExampleScenarioProcessStepComponent)) 6112 return false; 6113 ExampleScenarioProcessStepComponent o = (ExampleScenarioProcessStepComponent) other_; 6114 return compareValues(pause, o.pause, true); 6115 } 6116 6117 public boolean isEmpty() { 6118 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(process, pause, operation, alternative); 6119 } 6120 6121 public String fhirType() { 6122 return "ExampleScenario.process.step"; 6123 6124 } 6125 6126 } 6127 6128 @Block() 6129 public static class ExampleScenarioProcessStepOperationComponent extends BackboneElement 6130 implements IBaseBackboneElement { 6131 /** 6132 * The sequential number of the interaction, e.g. 1.2.5. 6133 */ 6134 @Child(name = "number", type = { StringType.class }, order = 1, min = 1, max = 1, modifier = false, summary = false) 6135 @Description(shortDefinition = "The sequential number of the interaction", formalDefinition = "The sequential number of the interaction, e.g. 1.2.5.") 6136 protected StringType number; 6137 6138 /** 6139 * The type of operation - CRUD. 6140 */ 6141 @Child(name = "type", type = { StringType.class }, order = 2, min = 0, max = 1, modifier = false, summary = false) 6142 @Description(shortDefinition = "The type of operation - CRUD", formalDefinition = "The type of operation - CRUD.") 6143 protected StringType type; 6144 6145 /** 6146 * The human-friendly name of the interaction. 6147 */ 6148 @Child(name = "name", type = { StringType.class }, order = 3, min = 0, max = 1, modifier = false, summary = false) 6149 @Description(shortDefinition = "The human-friendly name of the interaction", formalDefinition = "The human-friendly name of the interaction.") 6150 protected StringType name; 6151 6152 /** 6153 * Who starts the transaction. 6154 */ 6155 @Child(name = "initiator", type = { 6156 StringType.class }, order = 4, min = 0, max = 1, modifier = false, summary = false) 6157 @Description(shortDefinition = "Who starts the transaction", formalDefinition = "Who starts the transaction.") 6158 protected StringType initiator; 6159 6160 /** 6161 * Who receives the transaction. 6162 */ 6163 @Child(name = "receiver", type = { 6164 StringType.class }, order = 5, min = 0, max = 1, modifier = false, summary = false) 6165 @Description(shortDefinition = "Who receives the transaction", formalDefinition = "Who receives the transaction.") 6166 protected StringType receiver; 6167 6168 /** 6169 * A comment to be inserted in the diagram. 6170 */ 6171 @Child(name = "description", type = { 6172 MarkdownType.class }, order = 6, min = 0, max = 1, modifier = false, summary = false) 6173 @Description(shortDefinition = "A comment to be inserted in the diagram", formalDefinition = "A comment to be inserted in the diagram.") 6174 protected MarkdownType description; 6175 6176 /** 6177 * Whether the initiator is deactivated right after the transaction. 6178 */ 6179 @Child(name = "initiatorActive", type = { 6180 BooleanType.class }, order = 7, min = 0, max = 1, modifier = false, summary = false) 6181 @Description(shortDefinition = "Whether the initiator is deactivated right after the transaction", formalDefinition = "Whether the initiator is deactivated right after the transaction.") 6182 protected BooleanType initiatorActive; 6183 6184 /** 6185 * Whether the receiver is deactivated right after the transaction. 6186 */ 6187 @Child(name = "receiverActive", type = { 6188 BooleanType.class }, order = 8, min = 0, max = 1, modifier = false, summary = false) 6189 @Description(shortDefinition = "Whether the receiver is deactivated right after the transaction", formalDefinition = "Whether the receiver is deactivated right after the transaction.") 6190 protected BooleanType receiverActive; 6191 6192 /** 6193 * Each resource instance used by the initiator. 6194 */ 6195 @Child(name = "request", type = { 6196 ExampleScenarioInstanceContainedInstanceComponent.class }, order = 9, min = 0, max = 1, modifier = false, summary = false) 6197 @Description(shortDefinition = "Each resource instance used by the initiator", formalDefinition = "Each resource instance used by the initiator.") 6198 protected ExampleScenarioInstanceContainedInstanceComponent request; 6199 6200 /** 6201 * Each resource instance used by the responder. 6202 */ 6203 @Child(name = "response", type = { 6204 ExampleScenarioInstanceContainedInstanceComponent.class }, order = 10, min = 0, max = 1, modifier = false, summary = false) 6205 @Description(shortDefinition = "Each resource instance used by the responder", formalDefinition = "Each resource instance used by the responder.") 6206 protected ExampleScenarioInstanceContainedInstanceComponent response; 6207 6208 private static final long serialVersionUID = 911241906L; 6209 6210 /** 6211 * Constructor 6212 */ 6213 public ExampleScenarioProcessStepOperationComponent() { 6214 super(); 6215 } 6216 6217 /** 6218 * Constructor 6219 */ 6220 public ExampleScenarioProcessStepOperationComponent(StringType number) { 6221 super(); 6222 this.number = number; 6223 } 6224 6225 /** 6226 * @return {@link #number} (The sequential number of the interaction, e.g. 6227 * 1.2.5.). This is the underlying object with id, value and extensions. 6228 * The accessor "getNumber" gives direct access to the value 6229 */ 6230 public StringType getNumberElement() { 6231 if (this.number == null) 6232 if (Configuration.errorOnAutoCreate()) 6233 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.number"); 6234 else if (Configuration.doAutoCreate()) 6235 this.number = new StringType(); // bb 6236 return this.number; 6237 } 6238 6239 public boolean hasNumberElement() { 6240 return this.number != null && !this.number.isEmpty(); 6241 } 6242 6243 public boolean hasNumber() { 6244 return this.number != null && !this.number.isEmpty(); 6245 } 6246 6247 /** 6248 * @param value {@link #number} (The sequential number of the interaction, e.g. 6249 * 1.2.5.). This is the underlying object with id, value and 6250 * extensions. The accessor "getNumber" gives direct access to the 6251 * value 6252 */ 6253 public ExampleScenarioProcessStepOperationComponent setNumberElement(StringType value) { 6254 this.number = value; 6255 return this; 6256 } 6257 6258 /** 6259 * @return The sequential number of the interaction, e.g. 1.2.5. 6260 */ 6261 public String getNumber() { 6262 return this.number == null ? null : this.number.getValue(); 6263 } 6264 6265 /** 6266 * @param value The sequential number of the interaction, e.g. 1.2.5. 6267 */ 6268 public ExampleScenarioProcessStepOperationComponent setNumber(String value) { 6269 if (this.number == null) 6270 this.number = new StringType(); 6271 this.number.setValue(value); 6272 return this; 6273 } 6274 6275 /** 6276 * @return {@link #type} (The type of operation - CRUD.). This is the underlying 6277 * object with id, value and extensions. The accessor "getType" gives 6278 * direct access to the value 6279 */ 6280 public StringType getTypeElement() { 6281 if (this.type == null) 6282 if (Configuration.errorOnAutoCreate()) 6283 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.type"); 6284 else if (Configuration.doAutoCreate()) 6285 this.type = new StringType(); // bb 6286 return this.type; 6287 } 6288 6289 public boolean hasTypeElement() { 6290 return this.type != null && !this.type.isEmpty(); 6291 } 6292 6293 public boolean hasType() { 6294 return this.type != null && !this.type.isEmpty(); 6295 } 6296 6297 /** 6298 * @param value {@link #type} (The type of operation - CRUD.). This is the 6299 * underlying object with id, value and extensions. The accessor 6300 * "getType" gives direct access to the value 6301 */ 6302 public ExampleScenarioProcessStepOperationComponent setTypeElement(StringType value) { 6303 this.type = value; 6304 return this; 6305 } 6306 6307 /** 6308 * @return The type of operation - CRUD. 6309 */ 6310 public String getType() { 6311 return this.type == null ? null : this.type.getValue(); 6312 } 6313 6314 /** 6315 * @param value The type of operation - CRUD. 6316 */ 6317 public ExampleScenarioProcessStepOperationComponent setType(String value) { 6318 if (Utilities.noString(value)) 6319 this.type = null; 6320 else { 6321 if (this.type == null) 6322 this.type = new StringType(); 6323 this.type.setValue(value); 6324 } 6325 return this; 6326 } 6327 6328 /** 6329 * @return {@link #name} (The human-friendly name of the interaction.). This is 6330 * the underlying object with id, value and extensions. The accessor 6331 * "getName" gives direct access to the value 6332 */ 6333 public StringType getNameElement() { 6334 if (this.name == null) 6335 if (Configuration.errorOnAutoCreate()) 6336 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.name"); 6337 else if (Configuration.doAutoCreate()) 6338 this.name = new StringType(); // bb 6339 return this.name; 6340 } 6341 6342 public boolean hasNameElement() { 6343 return this.name != null && !this.name.isEmpty(); 6344 } 6345 6346 public boolean hasName() { 6347 return this.name != null && !this.name.isEmpty(); 6348 } 6349 6350 /** 6351 * @param value {@link #name} (The human-friendly name of the interaction.). 6352 * This is the underlying object with id, value and extensions. The 6353 * accessor "getName" gives direct access to the value 6354 */ 6355 public ExampleScenarioProcessStepOperationComponent setNameElement(StringType value) { 6356 this.name = value; 6357 return this; 6358 } 6359 6360 /** 6361 * @return The human-friendly name of the interaction. 6362 */ 6363 public String getName() { 6364 return this.name == null ? null : this.name.getValue(); 6365 } 6366 6367 /** 6368 * @param value The human-friendly name of the interaction. 6369 */ 6370 public ExampleScenarioProcessStepOperationComponent setName(String value) { 6371 if (Utilities.noString(value)) 6372 this.name = null; 6373 else { 6374 if (this.name == null) 6375 this.name = new StringType(); 6376 this.name.setValue(value); 6377 } 6378 return this; 6379 } 6380 6381 /** 6382 * @return {@link #initiator} (Who starts the transaction.). This is the 6383 * underlying object with id, value and extensions. The accessor 6384 * "getInitiator" gives direct access to the value 6385 */ 6386 public StringType getInitiatorElement() { 6387 if (this.initiator == null) 6388 if (Configuration.errorOnAutoCreate()) 6389 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.initiator"); 6390 else if (Configuration.doAutoCreate()) 6391 this.initiator = new StringType(); // bb 6392 return this.initiator; 6393 } 6394 6395 public boolean hasInitiatorElement() { 6396 return this.initiator != null && !this.initiator.isEmpty(); 6397 } 6398 6399 public boolean hasInitiator() { 6400 return this.initiator != null && !this.initiator.isEmpty(); 6401 } 6402 6403 /** 6404 * @param value {@link #initiator} (Who starts the transaction.). This is the 6405 * underlying object with id, value and extensions. The accessor 6406 * "getInitiator" gives direct access to the value 6407 */ 6408 public ExampleScenarioProcessStepOperationComponent setInitiatorElement(StringType value) { 6409 this.initiator = value; 6410 return this; 6411 } 6412 6413 /** 6414 * @return Who starts the transaction. 6415 */ 6416 public String getInitiator() { 6417 return this.initiator == null ? null : this.initiator.getValue(); 6418 } 6419 6420 /** 6421 * @param value Who starts the transaction. 6422 */ 6423 public ExampleScenarioProcessStepOperationComponent setInitiator(String value) { 6424 if (Utilities.noString(value)) 6425 this.initiator = null; 6426 else { 6427 if (this.initiator == null) 6428 this.initiator = new StringType(); 6429 this.initiator.setValue(value); 6430 } 6431 return this; 6432 } 6433 6434 /** 6435 * @return {@link #receiver} (Who receives the transaction.). This is the 6436 * underlying object with id, value and extensions. The accessor 6437 * "getReceiver" gives direct access to the value 6438 */ 6439 public StringType getReceiverElement() { 6440 if (this.receiver == null) 6441 if (Configuration.errorOnAutoCreate()) 6442 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.receiver"); 6443 else if (Configuration.doAutoCreate()) 6444 this.receiver = new StringType(); // bb 6445 return this.receiver; 6446 } 6447 6448 public boolean hasReceiverElement() { 6449 return this.receiver != null && !this.receiver.isEmpty(); 6450 } 6451 6452 public boolean hasReceiver() { 6453 return this.receiver != null && !this.receiver.isEmpty(); 6454 } 6455 6456 /** 6457 * @param value {@link #receiver} (Who receives the transaction.). This is the 6458 * underlying object with id, value and extensions. The accessor 6459 * "getReceiver" gives direct access to the value 6460 */ 6461 public ExampleScenarioProcessStepOperationComponent setReceiverElement(StringType value) { 6462 this.receiver = value; 6463 return this; 6464 } 6465 6466 /** 6467 * @return Who receives the transaction. 6468 */ 6469 public String getReceiver() { 6470 return this.receiver == null ? null : this.receiver.getValue(); 6471 } 6472 6473 /** 6474 * @param value Who receives the transaction. 6475 */ 6476 public ExampleScenarioProcessStepOperationComponent setReceiver(String value) { 6477 if (Utilities.noString(value)) 6478 this.receiver = null; 6479 else { 6480 if (this.receiver == null) 6481 this.receiver = new StringType(); 6482 this.receiver.setValue(value); 6483 } 6484 return this; 6485 } 6486 6487 /** 6488 * @return {@link #description} (A comment to be inserted in the diagram.). This 6489 * is the underlying object with id, value and extensions. The accessor 6490 * "getDescription" gives direct access to the value 6491 */ 6492 public MarkdownType getDescriptionElement() { 6493 if (this.description == null) 6494 if (Configuration.errorOnAutoCreate()) 6495 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.description"); 6496 else if (Configuration.doAutoCreate()) 6497 this.description = new MarkdownType(); // bb 6498 return this.description; 6499 } 6500 6501 public boolean hasDescriptionElement() { 6502 return this.description != null && !this.description.isEmpty(); 6503 } 6504 6505 public boolean hasDescription() { 6506 return this.description != null && !this.description.isEmpty(); 6507 } 6508 6509 /** 6510 * @param value {@link #description} (A comment to be inserted in the diagram.). 6511 * This is the underlying object with id, value and extensions. The 6512 * accessor "getDescription" gives direct access to the value 6513 */ 6514 public ExampleScenarioProcessStepOperationComponent setDescriptionElement(MarkdownType value) { 6515 this.description = value; 6516 return this; 6517 } 6518 6519 /** 6520 * @return A comment to be inserted in the diagram. 6521 */ 6522 public String getDescription() { 6523 return this.description == null ? null : this.description.getValue(); 6524 } 6525 6526 /** 6527 * @param value A comment to be inserted in the diagram. 6528 */ 6529 public ExampleScenarioProcessStepOperationComponent setDescription(String value) { 6530 if (value == null) 6531 this.description = null; 6532 else { 6533 if (this.description == null) 6534 this.description = new MarkdownType(); 6535 this.description.setValue(value); 6536 } 6537 return this; 6538 } 6539 6540 /** 6541 * @return {@link #initiatorActive} (Whether the initiator is deactivated right 6542 * after the transaction.). This is the underlying object with id, value 6543 * and extensions. The accessor "getInitiatorActive" gives direct access 6544 * to the value 6545 */ 6546 public BooleanType getInitiatorActiveElement() { 6547 if (this.initiatorActive == null) 6548 if (Configuration.errorOnAutoCreate()) 6549 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.initiatorActive"); 6550 else if (Configuration.doAutoCreate()) 6551 this.initiatorActive = new BooleanType(); // bb 6552 return this.initiatorActive; 6553 } 6554 6555 public boolean hasInitiatorActiveElement() { 6556 return this.initiatorActive != null && !this.initiatorActive.isEmpty(); 6557 } 6558 6559 public boolean hasInitiatorActive() { 6560 return this.initiatorActive != null && !this.initiatorActive.isEmpty(); 6561 } 6562 6563 /** 6564 * @param value {@link #initiatorActive} (Whether the initiator is deactivated 6565 * right after the transaction.). This is the underlying object 6566 * with id, value and extensions. The accessor "getInitiatorActive" 6567 * gives direct access to the value 6568 */ 6569 public ExampleScenarioProcessStepOperationComponent setInitiatorActiveElement(BooleanType value) { 6570 this.initiatorActive = value; 6571 return this; 6572 } 6573 6574 /** 6575 * @return Whether the initiator is deactivated right after the transaction. 6576 */ 6577 public boolean getInitiatorActive() { 6578 return this.initiatorActive == null || this.initiatorActive.isEmpty() ? false : this.initiatorActive.getValue(); 6579 } 6580 6581 /** 6582 * @param value Whether the initiator is deactivated right after the 6583 * transaction. 6584 */ 6585 public ExampleScenarioProcessStepOperationComponent setInitiatorActive(boolean value) { 6586 if (this.initiatorActive == null) 6587 this.initiatorActive = new BooleanType(); 6588 this.initiatorActive.setValue(value); 6589 return this; 6590 } 6591 6592 /** 6593 * @return {@link #receiverActive} (Whether the receiver is deactivated right 6594 * after the transaction.). This is the underlying object with id, value 6595 * and extensions. The accessor "getReceiverActive" gives direct access 6596 * to the value 6597 */ 6598 public BooleanType getReceiverActiveElement() { 6599 if (this.receiverActive == null) 6600 if (Configuration.errorOnAutoCreate()) 6601 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.receiverActive"); 6602 else if (Configuration.doAutoCreate()) 6603 this.receiverActive = new BooleanType(); // bb 6604 return this.receiverActive; 6605 } 6606 6607 public boolean hasReceiverActiveElement() { 6608 return this.receiverActive != null && !this.receiverActive.isEmpty(); 6609 } 6610 6611 public boolean hasReceiverActive() { 6612 return this.receiverActive != null && !this.receiverActive.isEmpty(); 6613 } 6614 6615 /** 6616 * @param value {@link #receiverActive} (Whether the receiver is deactivated 6617 * right after the transaction.). This is the underlying object 6618 * with id, value and extensions. The accessor "getReceiverActive" 6619 * gives direct access to the value 6620 */ 6621 public ExampleScenarioProcessStepOperationComponent setReceiverActiveElement(BooleanType value) { 6622 this.receiverActive = value; 6623 return this; 6624 } 6625 6626 /** 6627 * @return Whether the receiver is deactivated right after the transaction. 6628 */ 6629 public boolean getReceiverActive() { 6630 return this.receiverActive == null || this.receiverActive.isEmpty() ? false : this.receiverActive.getValue(); 6631 } 6632 6633 /** 6634 * @param value Whether the receiver is deactivated right after the transaction. 6635 */ 6636 public ExampleScenarioProcessStepOperationComponent setReceiverActive(boolean value) { 6637 if (this.receiverActive == null) 6638 this.receiverActive = new BooleanType(); 6639 this.receiverActive.setValue(value); 6640 return this; 6641 } 6642 6643 /** 6644 * @return {@link #request} (Each resource instance used by the initiator.) 6645 */ 6646 public ExampleScenarioInstanceContainedInstanceComponent getRequest() { 6647 if (this.request == null) 6648 if (Configuration.errorOnAutoCreate()) 6649 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.request"); 6650 else if (Configuration.doAutoCreate()) 6651 this.request = new ExampleScenarioInstanceContainedInstanceComponent(); // cc 6652 return this.request; 6653 } 6654 6655 public boolean hasRequest() { 6656 return this.request != null && !this.request.isEmpty(); 6657 } 6658 6659 /** 6660 * @param value {@link #request} (Each resource instance used by the initiator.) 6661 */ 6662 public ExampleScenarioProcessStepOperationComponent setRequest( 6663 ExampleScenarioInstanceContainedInstanceComponent value) { 6664 this.request = value; 6665 return this; 6666 } 6667 6668 /** 6669 * @return {@link #response} (Each resource instance used by the responder.) 6670 */ 6671 public ExampleScenarioInstanceContainedInstanceComponent getResponse() { 6672 if (this.response == null) 6673 if (Configuration.errorOnAutoCreate()) 6674 throw new Error("Attempt to auto-create ExampleScenarioProcessStepOperationComponent.response"); 6675 else if (Configuration.doAutoCreate()) 6676 this.response = new ExampleScenarioInstanceContainedInstanceComponent(); // cc 6677 return this.response; 6678 } 6679 6680 public boolean hasResponse() { 6681 return this.response != null && !this.response.isEmpty(); 6682 } 6683 6684 /** 6685 * @param value {@link #response} (Each resource instance used by the 6686 * responder.) 6687 */ 6688 public ExampleScenarioProcessStepOperationComponent setResponse( 6689 ExampleScenarioInstanceContainedInstanceComponent value) { 6690 this.response = value; 6691 return this; 6692 } 6693 6694 protected void listChildren(List<Property> children) { 6695 super.listChildren(children); 6696 children 6697 .add(new Property("number", "string", "The sequential number of the interaction, e.g. 1.2.5.", 0, 1, number)); 6698 children.add(new Property("type", "string", "The type of operation - CRUD.", 0, 1, type)); 6699 children.add(new Property("name", "string", "The human-friendly name of the interaction.", 0, 1, name)); 6700 children.add(new Property("initiator", "string", "Who starts the transaction.", 0, 1, initiator)); 6701 children.add(new Property("receiver", "string", "Who receives the transaction.", 0, 1, receiver)); 6702 children 6703 .add(new Property("description", "markdown", "A comment to be inserted in the diagram.", 0, 1, description)); 6704 children.add(new Property("initiatorActive", "boolean", 6705 "Whether the initiator is deactivated right after the transaction.", 0, 1, initiatorActive)); 6706 children.add(new Property("receiverActive", "boolean", 6707 "Whether the receiver is deactivated right after the transaction.", 0, 1, receiverActive)); 6708 children.add(new Property("request", "@ExampleScenario.instance.containedInstance", 6709 "Each resource instance used by the initiator.", 0, 1, request)); 6710 children.add(new Property("response", "@ExampleScenario.instance.containedInstance", 6711 "Each resource instance used by the responder.", 0, 1, response)); 6712 } 6713 6714 @Override 6715 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 6716 switch (_hash) { 6717 case -1034364087: 6718 /* number */ return new Property("number", "string", "The sequential number of the interaction, e.g. 1.2.5.", 0, 6719 1, number); 6720 case 3575610: 6721 /* type */ return new Property("type", "string", "The type of operation - CRUD.", 0, 1, type); 6722 case 3373707: 6723 /* name */ return new Property("name", "string", "The human-friendly name of the interaction.", 0, 1, name); 6724 case -248987089: 6725 /* initiator */ return new Property("initiator", "string", "Who starts the transaction.", 0, 1, initiator); 6726 case -808719889: 6727 /* receiver */ return new Property("receiver", "string", "Who receives the transaction.", 0, 1, receiver); 6728 case -1724546052: 6729 /* description */ return new Property("description", "markdown", "A comment to be inserted in the diagram.", 0, 6730 1, description); 6731 case 384339477: 6732 /* initiatorActive */ return new Property("initiatorActive", "boolean", 6733 "Whether the initiator is deactivated right after the transaction.", 0, 1, initiatorActive); 6734 case -285284907: 6735 /* receiverActive */ return new Property("receiverActive", "boolean", 6736 "Whether the receiver is deactivated right after the transaction.", 0, 1, receiverActive); 6737 case 1095692943: 6738 /* request */ return new Property("request", "@ExampleScenario.instance.containedInstance", 6739 "Each resource instance used by the initiator.", 0, 1, request); 6740 case -340323263: 6741 /* response */ return new Property("response", "@ExampleScenario.instance.containedInstance", 6742 "Each resource instance used by the responder.", 0, 1, response); 6743 default: 6744 return super.getNamedProperty(_hash, _name, _checkValid); 6745 } 6746 6747 } 6748 6749 @Override 6750 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 6751 switch (hash) { 6752 case -1034364087: 6753 /* number */ return this.number == null ? new Base[0] : new Base[] { this.number }; // StringType 6754 case 3575610: 6755 /* type */ return this.type == null ? new Base[0] : new Base[] { this.type }; // StringType 6756 case 3373707: 6757 /* name */ return this.name == null ? new Base[0] : new Base[] { this.name }; // StringType 6758 case -248987089: 6759 /* initiator */ return this.initiator == null ? new Base[0] : new Base[] { this.initiator }; // StringType 6760 case -808719889: 6761 /* receiver */ return this.receiver == null ? new Base[0] : new Base[] { this.receiver }; // StringType 6762 case -1724546052: 6763 /* description */ return this.description == null ? new Base[0] : new Base[] { this.description }; // MarkdownType 6764 case 384339477: 6765 /* initiatorActive */ return this.initiatorActive == null ? new Base[0] : new Base[] { this.initiatorActive }; // BooleanType 6766 case -285284907: 6767 /* receiverActive */ return this.receiverActive == null ? new Base[0] : new Base[] { this.receiverActive }; // BooleanType 6768 case 1095692943: 6769 /* request */ return this.request == null ? new Base[0] : new Base[] { this.request }; // ExampleScenarioInstanceContainedInstanceComponent 6770 case -340323263: 6771 /* response */ return this.response == null ? new Base[0] : new Base[] { this.response }; // ExampleScenarioInstanceContainedInstanceComponent 6772 default: 6773 return super.getProperty(hash, name, checkValid); 6774 } 6775 6776 } 6777 6778 @Override 6779 public Base setProperty(int hash, String name, Base value) throws FHIRException { 6780 switch (hash) { 6781 case -1034364087: // number 6782 this.number = castToString(value); // StringType 6783 return value; 6784 case 3575610: // type 6785 this.type = castToString(value); // StringType 6786 return value; 6787 case 3373707: // name 6788 this.name = castToString(value); // StringType 6789 return value; 6790 case -248987089: // initiator 6791 this.initiator = castToString(value); // StringType 6792 return value; 6793 case -808719889: // receiver 6794 this.receiver = castToString(value); // StringType 6795 return value; 6796 case -1724546052: // description 6797 this.description = castToMarkdown(value); // MarkdownType 6798 return value; 6799 case 384339477: // initiatorActive 6800 this.initiatorActive = castToBoolean(value); // BooleanType 6801 return value; 6802 case -285284907: // receiverActive 6803 this.receiverActive = castToBoolean(value); // BooleanType 6804 return value; 6805 case 1095692943: // request 6806 this.request = (ExampleScenarioInstanceContainedInstanceComponent) value; // ExampleScenarioInstanceContainedInstanceComponent 6807 return value; 6808 case -340323263: // response 6809 this.response = (ExampleScenarioInstanceContainedInstanceComponent) value; // ExampleScenarioInstanceContainedInstanceComponent 6810 return value; 6811 default: 6812 return super.setProperty(hash, name, value); 6813 } 6814 6815 } 6816 6817 @Override 6818 public Base setProperty(String name, Base value) throws FHIRException { 6819 if (name.equals("number")) { 6820 this.number = castToString(value); // StringType 6821 } else if (name.equals("type")) { 6822 this.type = castToString(value); // StringType 6823 } else if (name.equals("name")) { 6824 this.name = castToString(value); // StringType 6825 } else if (name.equals("initiator")) { 6826 this.initiator = castToString(value); // StringType 6827 } else if (name.equals("receiver")) { 6828 this.receiver = castToString(value); // StringType 6829 } else if (name.equals("description")) { 6830 this.description = castToMarkdown(value); // MarkdownType 6831 } else if (name.equals("initiatorActive")) { 6832 this.initiatorActive = castToBoolean(value); // BooleanType 6833 } else if (name.equals("receiverActive")) { 6834 this.receiverActive = castToBoolean(value); // BooleanType 6835 } else if (name.equals("request")) { 6836 this.request = (ExampleScenarioInstanceContainedInstanceComponent) value; // ExampleScenarioInstanceContainedInstanceComponent 6837 } else if (name.equals("response")) { 6838 this.response = (ExampleScenarioInstanceContainedInstanceComponent) value; // ExampleScenarioInstanceContainedInstanceComponent 6839 } else 6840 return super.setProperty(name, value); 6841 return value; 6842 } 6843 6844 @Override 6845 public void removeChild(String name, Base value) throws FHIRException { 6846 if (name.equals("number")) { 6847 this.number = null; 6848 } else if (name.equals("type")) { 6849 this.type = null; 6850 } else if (name.equals("name")) { 6851 this.name = null; 6852 } else if (name.equals("initiator")) { 6853 this.initiator = null; 6854 } else if (name.equals("receiver")) { 6855 this.receiver = null; 6856 } else if (name.equals("description")) { 6857 this.description = null; 6858 } else if (name.equals("initiatorActive")) { 6859 this.initiatorActive = null; 6860 } else if (name.equals("receiverActive")) { 6861 this.receiverActive = null; 6862 } else if (name.equals("request")) { 6863 this.request = (ExampleScenarioInstanceContainedInstanceComponent) value; // ExampleScenarioInstanceContainedInstanceComponent 6864 } else if (name.equals("response")) { 6865 this.response = (ExampleScenarioInstanceContainedInstanceComponent) value; // ExampleScenarioInstanceContainedInstanceComponent 6866 } else 6867 super.removeChild(name, value); 6868 6869 } 6870 6871 @Override 6872 public Base makeProperty(int hash, String name) throws FHIRException { 6873 switch (hash) { 6874 case -1034364087: 6875 return getNumberElement(); 6876 case 3575610: 6877 return getTypeElement(); 6878 case 3373707: 6879 return getNameElement(); 6880 case -248987089: 6881 return getInitiatorElement(); 6882 case -808719889: 6883 return getReceiverElement(); 6884 case -1724546052: 6885 return getDescriptionElement(); 6886 case 384339477: 6887 return getInitiatorActiveElement(); 6888 case -285284907: 6889 return getReceiverActiveElement(); 6890 case 1095692943: 6891 return getRequest(); 6892 case -340323263: 6893 return getResponse(); 6894 default: 6895 return super.makeProperty(hash, name); 6896 } 6897 6898 } 6899 6900 @Override 6901 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 6902 switch (hash) { 6903 case -1034364087: 6904 /* number */ return new String[] { "string" }; 6905 case 3575610: 6906 /* type */ return new String[] { "string" }; 6907 case 3373707: 6908 /* name */ return new String[] { "string" }; 6909 case -248987089: 6910 /* initiator */ return new String[] { "string" }; 6911 case -808719889: 6912 /* receiver */ return new String[] { "string" }; 6913 case -1724546052: 6914 /* description */ return new String[] { "markdown" }; 6915 case 384339477: 6916 /* initiatorActive */ return new String[] { "boolean" }; 6917 case -285284907: 6918 /* receiverActive */ return new String[] { "boolean" }; 6919 case 1095692943: 6920 /* request */ return new String[] { "@ExampleScenario.instance.containedInstance" }; 6921 case -340323263: 6922 /* response */ return new String[] { "@ExampleScenario.instance.containedInstance" }; 6923 default: 6924 return super.getTypesForProperty(hash, name); 6925 } 6926 6927 } 6928 6929 @Override 6930 public Base addChild(String name) throws FHIRException { 6931 if (name.equals("number")) { 6932 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.number"); 6933 } else if (name.equals("type")) { 6934 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.type"); 6935 } else if (name.equals("name")) { 6936 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.name"); 6937 } else if (name.equals("initiator")) { 6938 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.initiator"); 6939 } else if (name.equals("receiver")) { 6940 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.receiver"); 6941 } else if (name.equals("description")) { 6942 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.description"); 6943 } else if (name.equals("initiatorActive")) { 6944 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.initiatorActive"); 6945 } else if (name.equals("receiverActive")) { 6946 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.receiverActive"); 6947 } else if (name.equals("request")) { 6948 this.request = new ExampleScenarioInstanceContainedInstanceComponent(); 6949 return this.request; 6950 } else if (name.equals("response")) { 6951 this.response = new ExampleScenarioInstanceContainedInstanceComponent(); 6952 return this.response; 6953 } else 6954 return super.addChild(name); 6955 } 6956 6957 public ExampleScenarioProcessStepOperationComponent copy() { 6958 ExampleScenarioProcessStepOperationComponent dst = new ExampleScenarioProcessStepOperationComponent(); 6959 copyValues(dst); 6960 return dst; 6961 } 6962 6963 public void copyValues(ExampleScenarioProcessStepOperationComponent dst) { 6964 super.copyValues(dst); 6965 dst.number = number == null ? null : number.copy(); 6966 dst.type = type == null ? null : type.copy(); 6967 dst.name = name == null ? null : name.copy(); 6968 dst.initiator = initiator == null ? null : initiator.copy(); 6969 dst.receiver = receiver == null ? null : receiver.copy(); 6970 dst.description = description == null ? null : description.copy(); 6971 dst.initiatorActive = initiatorActive == null ? null : initiatorActive.copy(); 6972 dst.receiverActive = receiverActive == null ? null : receiverActive.copy(); 6973 dst.request = request == null ? null : request.copy(); 6974 dst.response = response == null ? null : response.copy(); 6975 } 6976 6977 @Override 6978 public boolean equalsDeep(Base other_) { 6979 if (!super.equalsDeep(other_)) 6980 return false; 6981 if (!(other_ instanceof ExampleScenarioProcessStepOperationComponent)) 6982 return false; 6983 ExampleScenarioProcessStepOperationComponent o = (ExampleScenarioProcessStepOperationComponent) other_; 6984 return compareDeep(number, o.number, true) && compareDeep(type, o.type, true) && compareDeep(name, o.name, true) 6985 && compareDeep(initiator, o.initiator, true) && compareDeep(receiver, o.receiver, true) 6986 && compareDeep(description, o.description, true) && compareDeep(initiatorActive, o.initiatorActive, true) 6987 && compareDeep(receiverActive, o.receiverActive, true) && compareDeep(request, o.request, true) 6988 && compareDeep(response, o.response, true); 6989 } 6990 6991 @Override 6992 public boolean equalsShallow(Base other_) { 6993 if (!super.equalsShallow(other_)) 6994 return false; 6995 if (!(other_ instanceof ExampleScenarioProcessStepOperationComponent)) 6996 return false; 6997 ExampleScenarioProcessStepOperationComponent o = (ExampleScenarioProcessStepOperationComponent) other_; 6998 return compareValues(number, o.number, true) && compareValues(type, o.type, true) 6999 && compareValues(name, o.name, true) && compareValues(initiator, o.initiator, true) 7000 && compareValues(receiver, o.receiver, true) && compareValues(description, o.description, true) 7001 && compareValues(initiatorActive, o.initiatorActive, true) 7002 && compareValues(receiverActive, o.receiverActive, true); 7003 } 7004 7005 public boolean isEmpty() { 7006 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(number, type, name, initiator, receiver, 7007 description, initiatorActive, receiverActive, request, response); 7008 } 7009 7010 public String fhirType() { 7011 return "ExampleScenario.process.step.operation"; 7012 7013 } 7014 7015 } 7016 7017 @Block() 7018 public static class ExampleScenarioProcessStepAlternativeComponent extends BackboneElement 7019 implements IBaseBackboneElement { 7020 /** 7021 * The label to display for the alternative that gives a sense of the 7022 * circumstance in which the alternative should be invoked. 7023 */ 7024 @Child(name = "title", type = { StringType.class }, order = 1, min = 1, max = 1, modifier = false, summary = false) 7025 @Description(shortDefinition = "Label for alternative", formalDefinition = "The label to display for the alternative that gives a sense of the circumstance in which the alternative should be invoked.") 7026 protected StringType title; 7027 7028 /** 7029 * A human-readable description of the alternative explaining when the 7030 * alternative should occur rather than the base step. 7031 */ 7032 @Child(name = "description", type = { 7033 MarkdownType.class }, order = 2, min = 0, max = 1, modifier = false, summary = false) 7034 @Description(shortDefinition = "A human-readable description of each option", formalDefinition = "A human-readable description of the alternative explaining when the alternative should occur rather than the base step.") 7035 protected MarkdownType description; 7036 7037 /** 7038 * What happens in each alternative option. 7039 */ 7040 @Child(name = "step", type = { 7041 ExampleScenarioProcessStepComponent.class }, order = 3, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 7042 @Description(shortDefinition = "What happens in each alternative option", formalDefinition = "What happens in each alternative option.") 7043 protected List<ExampleScenarioProcessStepComponent> step; 7044 7045 private static final long serialVersionUID = -254687460L; 7046 7047 /** 7048 * Constructor 7049 */ 7050 public ExampleScenarioProcessStepAlternativeComponent() { 7051 super(); 7052 } 7053 7054 /** 7055 * Constructor 7056 */ 7057 public ExampleScenarioProcessStepAlternativeComponent(StringType title) { 7058 super(); 7059 this.title = title; 7060 } 7061 7062 /** 7063 * @return {@link #title} (The label to display for the alternative that gives a 7064 * sense of the circumstance in which the alternative should be 7065 * invoked.). This is the underlying object with id, value and 7066 * extensions. The accessor "getTitle" gives direct access to the value 7067 */ 7068 public StringType getTitleElement() { 7069 if (this.title == null) 7070 if (Configuration.errorOnAutoCreate()) 7071 throw new Error("Attempt to auto-create ExampleScenarioProcessStepAlternativeComponent.title"); 7072 else if (Configuration.doAutoCreate()) 7073 this.title = new StringType(); // bb 7074 return this.title; 7075 } 7076 7077 public boolean hasTitleElement() { 7078 return this.title != null && !this.title.isEmpty(); 7079 } 7080 7081 public boolean hasTitle() { 7082 return this.title != null && !this.title.isEmpty(); 7083 } 7084 7085 /** 7086 * @param value {@link #title} (The label to display for the alternative that 7087 * gives a sense of the circumstance in which the alternative 7088 * should be invoked.). This is the underlying object with id, 7089 * value and extensions. The accessor "getTitle" gives direct 7090 * access to the value 7091 */ 7092 public ExampleScenarioProcessStepAlternativeComponent setTitleElement(StringType value) { 7093 this.title = value; 7094 return this; 7095 } 7096 7097 /** 7098 * @return The label to display for the alternative that gives a sense of the 7099 * circumstance in which the alternative should be invoked. 7100 */ 7101 public String getTitle() { 7102 return this.title == null ? null : this.title.getValue(); 7103 } 7104 7105 /** 7106 * @param value The label to display for the alternative that gives a sense of 7107 * the circumstance in which the alternative should be invoked. 7108 */ 7109 public ExampleScenarioProcessStepAlternativeComponent setTitle(String value) { 7110 if (this.title == null) 7111 this.title = new StringType(); 7112 this.title.setValue(value); 7113 return this; 7114 } 7115 7116 /** 7117 * @return {@link #description} (A human-readable description of the alternative 7118 * explaining when the alternative should occur rather than the base 7119 * step.). This is the underlying object with id, value and extensions. 7120 * The accessor "getDescription" gives direct access to the value 7121 */ 7122 public MarkdownType getDescriptionElement() { 7123 if (this.description == null) 7124 if (Configuration.errorOnAutoCreate()) 7125 throw new Error("Attempt to auto-create ExampleScenarioProcessStepAlternativeComponent.description"); 7126 else if (Configuration.doAutoCreate()) 7127 this.description = new MarkdownType(); // bb 7128 return this.description; 7129 } 7130 7131 public boolean hasDescriptionElement() { 7132 return this.description != null && !this.description.isEmpty(); 7133 } 7134 7135 public boolean hasDescription() { 7136 return this.description != null && !this.description.isEmpty(); 7137 } 7138 7139 /** 7140 * @param value {@link #description} (A human-readable description of the 7141 * alternative explaining when the alternative should occur rather 7142 * than the base step.). This is the underlying object with id, 7143 * value and extensions. The accessor "getDescription" gives direct 7144 * access to the value 7145 */ 7146 public ExampleScenarioProcessStepAlternativeComponent setDescriptionElement(MarkdownType value) { 7147 this.description = value; 7148 return this; 7149 } 7150 7151 /** 7152 * @return A human-readable description of the alternative explaining when the 7153 * alternative should occur rather than the base step. 7154 */ 7155 public String getDescription() { 7156 return this.description == null ? null : this.description.getValue(); 7157 } 7158 7159 /** 7160 * @param value A human-readable description of the alternative explaining when 7161 * the alternative should occur rather than the base step. 7162 */ 7163 public ExampleScenarioProcessStepAlternativeComponent setDescription(String value) { 7164 if (value == null) 7165 this.description = null; 7166 else { 7167 if (this.description == null) 7168 this.description = new MarkdownType(); 7169 this.description.setValue(value); 7170 } 7171 return this; 7172 } 7173 7174 /** 7175 * @return {@link #step} (What happens in each alternative option.) 7176 */ 7177 public List<ExampleScenarioProcessStepComponent> getStep() { 7178 if (this.step == null) 7179 this.step = new ArrayList<ExampleScenarioProcessStepComponent>(); 7180 return this.step; 7181 } 7182 7183 /** 7184 * @return Returns a reference to <code>this</code> for easy method chaining 7185 */ 7186 public ExampleScenarioProcessStepAlternativeComponent setStep(List<ExampleScenarioProcessStepComponent> theStep) { 7187 this.step = theStep; 7188 return this; 7189 } 7190 7191 public boolean hasStep() { 7192 if (this.step == null) 7193 return false; 7194 for (ExampleScenarioProcessStepComponent item : this.step) 7195 if (!item.isEmpty()) 7196 return true; 7197 return false; 7198 } 7199 7200 public ExampleScenarioProcessStepComponent addStep() { // 3 7201 ExampleScenarioProcessStepComponent t = new ExampleScenarioProcessStepComponent(); 7202 if (this.step == null) 7203 this.step = new ArrayList<ExampleScenarioProcessStepComponent>(); 7204 this.step.add(t); 7205 return t; 7206 } 7207 7208 public ExampleScenarioProcessStepAlternativeComponent addStep(ExampleScenarioProcessStepComponent t) { // 3 7209 if (t == null) 7210 return this; 7211 if (this.step == null) 7212 this.step = new ArrayList<ExampleScenarioProcessStepComponent>(); 7213 this.step.add(t); 7214 return this; 7215 } 7216 7217 /** 7218 * @return The first repetition of repeating field {@link #step}, creating it if 7219 * it does not already exist 7220 */ 7221 public ExampleScenarioProcessStepComponent getStepFirstRep() { 7222 if (getStep().isEmpty()) { 7223 addStep(); 7224 } 7225 return getStep().get(0); 7226 } 7227 7228 protected void listChildren(List<Property> children) { 7229 super.listChildren(children); 7230 children.add(new Property("title", "string", 7231 "The label to display for the alternative that gives a sense of the circumstance in which the alternative should be invoked.", 7232 0, 1, title)); 7233 children.add(new Property("description", "markdown", 7234 "A human-readable description of the alternative explaining when the alternative should occur rather than the base step.", 7235 0, 1, description)); 7236 children.add(new Property("step", "@ExampleScenario.process.step", "What happens in each alternative option.", 0, 7237 java.lang.Integer.MAX_VALUE, step)); 7238 } 7239 7240 @Override 7241 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 7242 switch (_hash) { 7243 case 110371416: 7244 /* title */ return new Property("title", "string", 7245 "The label to display for the alternative that gives a sense of the circumstance in which the alternative should be invoked.", 7246 0, 1, title); 7247 case -1724546052: 7248 /* description */ return new Property("description", "markdown", 7249 "A human-readable description of the alternative explaining when the alternative should occur rather than the base step.", 7250 0, 1, description); 7251 case 3540684: 7252 /* step */ return new Property("step", "@ExampleScenario.process.step", 7253 "What happens in each alternative option.", 0, java.lang.Integer.MAX_VALUE, step); 7254 default: 7255 return super.getNamedProperty(_hash, _name, _checkValid); 7256 } 7257 7258 } 7259 7260 @Override 7261 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 7262 switch (hash) { 7263 case 110371416: 7264 /* title */ return this.title == null ? new Base[0] : new Base[] { this.title }; // StringType 7265 case -1724546052: 7266 /* description */ return this.description == null ? new Base[0] : new Base[] { this.description }; // MarkdownType 7267 case 3540684: 7268 /* step */ return this.step == null ? new Base[0] : this.step.toArray(new Base[this.step.size()]); // ExampleScenarioProcessStepComponent 7269 default: 7270 return super.getProperty(hash, name, checkValid); 7271 } 7272 7273 } 7274 7275 @Override 7276 public Base setProperty(int hash, String name, Base value) throws FHIRException { 7277 switch (hash) { 7278 case 110371416: // title 7279 this.title = castToString(value); // StringType 7280 return value; 7281 case -1724546052: // description 7282 this.description = castToMarkdown(value); // MarkdownType 7283 return value; 7284 case 3540684: // step 7285 this.getStep().add((ExampleScenarioProcessStepComponent) value); // ExampleScenarioProcessStepComponent 7286 return value; 7287 default: 7288 return super.setProperty(hash, name, value); 7289 } 7290 7291 } 7292 7293 @Override 7294 public Base setProperty(String name, Base value) throws FHIRException { 7295 if (name.equals("title")) { 7296 this.title = castToString(value); // StringType 7297 } else if (name.equals("description")) { 7298 this.description = castToMarkdown(value); // MarkdownType 7299 } else if (name.equals("step")) { 7300 this.getStep().add((ExampleScenarioProcessStepComponent) value); 7301 } else 7302 return super.setProperty(name, value); 7303 return value; 7304 } 7305 7306 @Override 7307 public void removeChild(String name, Base value) throws FHIRException { 7308 if (name.equals("title")) { 7309 this.title = null; 7310 } else if (name.equals("description")) { 7311 this.description = null; 7312 } else if (name.equals("step")) { 7313 this.getStep().remove((ExampleScenarioProcessStepComponent) value); 7314 } else 7315 super.removeChild(name, value); 7316 7317 } 7318 7319 @Override 7320 public Base makeProperty(int hash, String name) throws FHIRException { 7321 switch (hash) { 7322 case 110371416: 7323 return getTitleElement(); 7324 case -1724546052: 7325 return getDescriptionElement(); 7326 case 3540684: 7327 return addStep(); 7328 default: 7329 return super.makeProperty(hash, name); 7330 } 7331 7332 } 7333 7334 @Override 7335 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 7336 switch (hash) { 7337 case 110371416: 7338 /* title */ return new String[] { "string" }; 7339 case -1724546052: 7340 /* description */ return new String[] { "markdown" }; 7341 case 3540684: 7342 /* step */ return new String[] { "@ExampleScenario.process.step" }; 7343 default: 7344 return super.getTypesForProperty(hash, name); 7345 } 7346 7347 } 7348 7349 @Override 7350 public Base addChild(String name) throws FHIRException { 7351 if (name.equals("title")) { 7352 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.title"); 7353 } else if (name.equals("description")) { 7354 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.description"); 7355 } else if (name.equals("step")) { 7356 return addStep(); 7357 } else 7358 return super.addChild(name); 7359 } 7360 7361 public ExampleScenarioProcessStepAlternativeComponent copy() { 7362 ExampleScenarioProcessStepAlternativeComponent dst = new ExampleScenarioProcessStepAlternativeComponent(); 7363 copyValues(dst); 7364 return dst; 7365 } 7366 7367 public void copyValues(ExampleScenarioProcessStepAlternativeComponent dst) { 7368 super.copyValues(dst); 7369 dst.title = title == null ? null : title.copy(); 7370 dst.description = description == null ? null : description.copy(); 7371 if (step != null) { 7372 dst.step = new ArrayList<ExampleScenarioProcessStepComponent>(); 7373 for (ExampleScenarioProcessStepComponent i : step) 7374 dst.step.add(i.copy()); 7375 } 7376 ; 7377 } 7378 7379 @Override 7380 public boolean equalsDeep(Base other_) { 7381 if (!super.equalsDeep(other_)) 7382 return false; 7383 if (!(other_ instanceof ExampleScenarioProcessStepAlternativeComponent)) 7384 return false; 7385 ExampleScenarioProcessStepAlternativeComponent o = (ExampleScenarioProcessStepAlternativeComponent) other_; 7386 return compareDeep(title, o.title, true) && compareDeep(description, o.description, true) 7387 && compareDeep(step, o.step, true); 7388 } 7389 7390 @Override 7391 public boolean equalsShallow(Base other_) { 7392 if (!super.equalsShallow(other_)) 7393 return false; 7394 if (!(other_ instanceof ExampleScenarioProcessStepAlternativeComponent)) 7395 return false; 7396 ExampleScenarioProcessStepAlternativeComponent o = (ExampleScenarioProcessStepAlternativeComponent) other_; 7397 return compareValues(title, o.title, true) && compareValues(description, o.description, true); 7398 } 7399 7400 public boolean isEmpty() { 7401 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(title, description, step); 7402 } 7403 7404 public String fhirType() { 7405 return "ExampleScenario.process.step.alternative"; 7406 7407 } 7408 7409 } 7410 7411 /** 7412 * A formal identifier that is used to identify this example scenario when it is 7413 * represented in other formats, or referenced in a specification, model, design 7414 * or an instance. 7415 */ 7416 @Child(name = "identifier", type = { 7417 Identifier.class }, order = 0, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = true) 7418 @Description(shortDefinition = "Additional identifier for the example scenario", formalDefinition = "A formal identifier that is used to identify this example scenario when it is represented in other formats, or referenced in a specification, model, design or an instance.") 7419 protected List<Identifier> identifier; 7420 7421 /** 7422 * A copyright statement relating to the example scenario and/or its contents. 7423 * Copyright statements are generally legal restrictions on the use and 7424 * publishing of the example scenario. 7425 */ 7426 @Child(name = "copyright", type = { 7427 MarkdownType.class }, order = 1, min = 0, max = 1, modifier = false, summary = false) 7428 @Description(shortDefinition = "Use and/or publishing restrictions", formalDefinition = "A copyright statement relating to the example scenario and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the example scenario.") 7429 protected MarkdownType copyright; 7430 7431 /** 7432 * What the example scenario resource is created for. This should not be used to 7433 * show the business purpose of the scenario itself, but the purpose of 7434 * documenting a scenario. 7435 */ 7436 @Child(name = "purpose", type = { 7437 MarkdownType.class }, order = 2, min = 0, max = 1, modifier = false, summary = false) 7438 @Description(shortDefinition = "The purpose of the example, e.g. to illustrate a scenario", formalDefinition = "What the example scenario resource is created for. This should not be used to show the business purpose of the scenario itself, but the purpose of documenting a scenario.") 7439 protected MarkdownType purpose; 7440 7441 /** 7442 * Actor participating in the resource. 7443 */ 7444 @Child(name = "actor", type = {}, order = 3, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 7445 @Description(shortDefinition = "Actor participating in the resource", formalDefinition = "Actor participating in the resource.") 7446 protected List<ExampleScenarioActorComponent> actor; 7447 7448 /** 7449 * Each resource and each version that is present in the workflow. 7450 */ 7451 @Child(name = "instance", type = {}, order = 4, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 7452 @Description(shortDefinition = "Each resource and each version that is present in the workflow", formalDefinition = "Each resource and each version that is present in the workflow.") 7453 protected List<ExampleScenarioInstanceComponent> instance; 7454 7455 /** 7456 * Each major process - a group of operations. 7457 */ 7458 @Child(name = "process", type = {}, order = 5, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 7459 @Description(shortDefinition = "Each major process - a group of operations", formalDefinition = "Each major process - a group of operations.") 7460 protected List<ExampleScenarioProcessComponent> process; 7461 7462 /** 7463 * Another nested workflow. 7464 */ 7465 @Child(name = "workflow", type = { 7466 CanonicalType.class }, order = 6, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 7467 @Description(shortDefinition = "Another nested workflow", formalDefinition = "Another nested workflow.") 7468 protected List<CanonicalType> workflow; 7469 7470 private static final long serialVersionUID = 758248907L; 7471 7472 /** 7473 * Constructor 7474 */ 7475 public ExampleScenario() { 7476 super(); 7477 } 7478 7479 /** 7480 * Constructor 7481 */ 7482 public ExampleScenario(Enumeration<PublicationStatus> status) { 7483 super(); 7484 this.status = status; 7485 } 7486 7487 /** 7488 * @return {@link #url} (An absolute URI that is used to identify this example 7489 * scenario when it is referenced in a specification, model, design or 7490 * an instance; also called its canonical identifier. This SHOULD be 7491 * globally unique and SHOULD be a literal address at which at which an 7492 * authoritative instance of this example scenario is (or will be) 7493 * published. This URL can be the target of a canonical reference. It 7494 * SHALL remain the same when the example scenario is stored on 7495 * different servers.). This is the underlying object with id, value and 7496 * extensions. The accessor "getUrl" gives direct access to the value 7497 */ 7498 public UriType getUrlElement() { 7499 if (this.url == null) 7500 if (Configuration.errorOnAutoCreate()) 7501 throw new Error("Attempt to auto-create ExampleScenario.url"); 7502 else if (Configuration.doAutoCreate()) 7503 this.url = new UriType(); // bb 7504 return this.url; 7505 } 7506 7507 public boolean hasUrlElement() { 7508 return this.url != null && !this.url.isEmpty(); 7509 } 7510 7511 public boolean hasUrl() { 7512 return this.url != null && !this.url.isEmpty(); 7513 } 7514 7515 /** 7516 * @param value {@link #url} (An absolute URI that is used to identify this 7517 * example scenario when it is referenced in a specification, 7518 * model, design or an instance; also called its canonical 7519 * identifier. This SHOULD be globally unique and SHOULD be a 7520 * literal address at which at which an authoritative instance of 7521 * this example scenario is (or will be) published. This URL can be 7522 * the target of a canonical reference. It SHALL remain the same 7523 * when the example scenario is stored on different servers.). This 7524 * is the underlying object with id, value and extensions. The 7525 * accessor "getUrl" gives direct access to the value 7526 */ 7527 public ExampleScenario setUrlElement(UriType value) { 7528 this.url = value; 7529 return this; 7530 } 7531 7532 /** 7533 * @return An absolute URI that is used to identify this example scenario when 7534 * it is referenced in a specification, model, design or an instance; 7535 * also called its canonical identifier. This SHOULD be globally unique 7536 * and SHOULD be a literal address at which at which an authoritative 7537 * instance of this example scenario is (or will be) published. This URL 7538 * can be the target of a canonical reference. It SHALL remain the same 7539 * when the example scenario is stored on different servers. 7540 */ 7541 public String getUrl() { 7542 return this.url == null ? null : this.url.getValue(); 7543 } 7544 7545 /** 7546 * @param value An absolute URI that is used to identify this example scenario 7547 * when it is referenced in a specification, model, design or an 7548 * instance; also called its canonical identifier. This SHOULD be 7549 * globally unique and SHOULD be a literal address at which at 7550 * which an authoritative instance of this example scenario is (or 7551 * will be) published. This URL can be the target of a canonical 7552 * reference. It SHALL remain the same when the example scenario is 7553 * stored on different servers. 7554 */ 7555 public ExampleScenario setUrl(String value) { 7556 if (Utilities.noString(value)) 7557 this.url = null; 7558 else { 7559 if (this.url == null) 7560 this.url = new UriType(); 7561 this.url.setValue(value); 7562 } 7563 return this; 7564 } 7565 7566 /** 7567 * @return {@link #identifier} (A formal identifier that is used to identify 7568 * this example scenario when it is represented in other formats, or 7569 * referenced in a specification, model, design or an instance.) 7570 */ 7571 public List<Identifier> getIdentifier() { 7572 if (this.identifier == null) 7573 this.identifier = new ArrayList<Identifier>(); 7574 return this.identifier; 7575 } 7576 7577 /** 7578 * @return Returns a reference to <code>this</code> for easy method chaining 7579 */ 7580 public ExampleScenario setIdentifier(List<Identifier> theIdentifier) { 7581 this.identifier = theIdentifier; 7582 return this; 7583 } 7584 7585 public boolean hasIdentifier() { 7586 if (this.identifier == null) 7587 return false; 7588 for (Identifier item : this.identifier) 7589 if (!item.isEmpty()) 7590 return true; 7591 return false; 7592 } 7593 7594 public Identifier addIdentifier() { // 3 7595 Identifier t = new Identifier(); 7596 if (this.identifier == null) 7597 this.identifier = new ArrayList<Identifier>(); 7598 this.identifier.add(t); 7599 return t; 7600 } 7601 7602 public ExampleScenario addIdentifier(Identifier t) { // 3 7603 if (t == null) 7604 return this; 7605 if (this.identifier == null) 7606 this.identifier = new ArrayList<Identifier>(); 7607 this.identifier.add(t); 7608 return this; 7609 } 7610 7611 /** 7612 * @return The first repetition of repeating field {@link #identifier}, creating 7613 * it if it does not already exist 7614 */ 7615 public Identifier getIdentifierFirstRep() { 7616 if (getIdentifier().isEmpty()) { 7617 addIdentifier(); 7618 } 7619 return getIdentifier().get(0); 7620 } 7621 7622 /** 7623 * @return {@link #version} (The identifier that is used to identify this 7624 * version of the example scenario when it is referenced in a 7625 * specification, model, design or instance. This is an arbitrary value 7626 * managed by the example scenario author and is not expected to be 7627 * globally unique. For example, it might be a timestamp (e.g. yyyymmdd) 7628 * if a managed version is not available. There is also no expectation 7629 * that versions can be placed in a lexicographical sequence.). This is 7630 * the underlying object with id, value and extensions. The accessor 7631 * "getVersion" gives direct access to the value 7632 */ 7633 public StringType getVersionElement() { 7634 if (this.version == null) 7635 if (Configuration.errorOnAutoCreate()) 7636 throw new Error("Attempt to auto-create ExampleScenario.version"); 7637 else if (Configuration.doAutoCreate()) 7638 this.version = new StringType(); // bb 7639 return this.version; 7640 } 7641 7642 public boolean hasVersionElement() { 7643 return this.version != null && !this.version.isEmpty(); 7644 } 7645 7646 public boolean hasVersion() { 7647 return this.version != null && !this.version.isEmpty(); 7648 } 7649 7650 /** 7651 * @param value {@link #version} (The identifier that is used to identify this 7652 * version of the example scenario when it is referenced in a 7653 * specification, model, design or instance. This is an arbitrary 7654 * value managed by the example scenario author and is not expected 7655 * to be globally unique. For example, it might be a timestamp 7656 * (e.g. yyyymmdd) if a managed version is not available. There is 7657 * also no expectation that versions can be placed in a 7658 * lexicographical sequence.). This is the underlying object with 7659 * id, value and extensions. The accessor "getVersion" gives direct 7660 * access to the value 7661 */ 7662 public ExampleScenario setVersionElement(StringType value) { 7663 this.version = value; 7664 return this; 7665 } 7666 7667 /** 7668 * @return The identifier that is used to identify this version of the example 7669 * scenario when it is referenced in a specification, model, design or 7670 * instance. This is an arbitrary value managed by the example scenario 7671 * author and is not expected to be globally unique. For example, it 7672 * might be a timestamp (e.g. yyyymmdd) if a managed version is not 7673 * available. There is also no expectation that versions can be placed 7674 * in a lexicographical sequence. 7675 */ 7676 public String getVersion() { 7677 return this.version == null ? null : this.version.getValue(); 7678 } 7679 7680 /** 7681 * @param value The identifier that is used to identify this version of the 7682 * example scenario when it is referenced in a specification, 7683 * model, design or instance. This is an arbitrary value managed by 7684 * the example scenario author and is not expected to be globally 7685 * unique. For example, it might be a timestamp (e.g. yyyymmdd) if 7686 * a managed version is not available. There is also no expectation 7687 * that versions can be placed in a lexicographical sequence. 7688 */ 7689 public ExampleScenario setVersion(String value) { 7690 if (Utilities.noString(value)) 7691 this.version = null; 7692 else { 7693 if (this.version == null) 7694 this.version = new StringType(); 7695 this.version.setValue(value); 7696 } 7697 return this; 7698 } 7699 7700 /** 7701 * @return {@link #name} (A natural language name identifying the example 7702 * scenario. This name should be usable as an identifier for the module 7703 * by machine processing applications such as code generation.). This is 7704 * the underlying object with id, value and extensions. The accessor 7705 * "getName" gives direct access to the value 7706 */ 7707 public StringType getNameElement() { 7708 if (this.name == null) 7709 if (Configuration.errorOnAutoCreate()) 7710 throw new Error("Attempt to auto-create ExampleScenario.name"); 7711 else if (Configuration.doAutoCreate()) 7712 this.name = new StringType(); // bb 7713 return this.name; 7714 } 7715 7716 public boolean hasNameElement() { 7717 return this.name != null && !this.name.isEmpty(); 7718 } 7719 7720 public boolean hasName() { 7721 return this.name != null && !this.name.isEmpty(); 7722 } 7723 7724 /** 7725 * @param value {@link #name} (A natural language name identifying the example 7726 * scenario. This name should be usable as an identifier for the 7727 * module by machine processing applications such as code 7728 * generation.). This is the underlying object with id, value and 7729 * extensions. The accessor "getName" gives direct access to the 7730 * value 7731 */ 7732 public ExampleScenario setNameElement(StringType value) { 7733 this.name = value; 7734 return this; 7735 } 7736 7737 /** 7738 * @return A natural language name identifying the example scenario. This name 7739 * should be usable as an identifier for the module by machine 7740 * processing applications such as code generation. 7741 */ 7742 public String getName() { 7743 return this.name == null ? null : this.name.getValue(); 7744 } 7745 7746 /** 7747 * @param value A natural language name identifying the example scenario. This 7748 * name should be usable as an identifier for the module by machine 7749 * processing applications such as code generation. 7750 */ 7751 public ExampleScenario setName(String value) { 7752 if (Utilities.noString(value)) 7753 this.name = null; 7754 else { 7755 if (this.name == null) 7756 this.name = new StringType(); 7757 this.name.setValue(value); 7758 } 7759 return this; 7760 } 7761 7762 /** 7763 * @return {@link #status} (The status of this example scenario. Enables 7764 * tracking the life-cycle of the content.). This is the underlying 7765 * object with id, value and extensions. The accessor "getStatus" gives 7766 * direct access to the value 7767 */ 7768 public Enumeration<PublicationStatus> getStatusElement() { 7769 if (this.status == null) 7770 if (Configuration.errorOnAutoCreate()) 7771 throw new Error("Attempt to auto-create ExampleScenario.status"); 7772 else if (Configuration.doAutoCreate()) 7773 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); // bb 7774 return this.status; 7775 } 7776 7777 public boolean hasStatusElement() { 7778 return this.status != null && !this.status.isEmpty(); 7779 } 7780 7781 public boolean hasStatus() { 7782 return this.status != null && !this.status.isEmpty(); 7783 } 7784 7785 /** 7786 * @param value {@link #status} (The status of this example scenario. Enables 7787 * tracking the life-cycle of the content.). This is the underlying 7788 * object with id, value and extensions. The accessor "getStatus" 7789 * gives direct access to the value 7790 */ 7791 public ExampleScenario setStatusElement(Enumeration<PublicationStatus> value) { 7792 this.status = value; 7793 return this; 7794 } 7795 7796 /** 7797 * @return The status of this example scenario. Enables tracking the life-cycle 7798 * of the content. 7799 */ 7800 public PublicationStatus getStatus() { 7801 return this.status == null ? null : this.status.getValue(); 7802 } 7803 7804 /** 7805 * @param value The status of this example scenario. Enables tracking the 7806 * life-cycle of the content. 7807 */ 7808 public ExampleScenario setStatus(PublicationStatus value) { 7809 if (this.status == null) 7810 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); 7811 this.status.setValue(value); 7812 return this; 7813 } 7814 7815 /** 7816 * @return {@link #experimental} (A Boolean value to indicate that this example 7817 * scenario is authored for testing purposes (or 7818 * education/evaluation/marketing) and is not intended to be used for 7819 * genuine usage.). This is the underlying object with id, value and 7820 * extensions. The accessor "getExperimental" gives direct access to the 7821 * value 7822 */ 7823 public BooleanType getExperimentalElement() { 7824 if (this.experimental == null) 7825 if (Configuration.errorOnAutoCreate()) 7826 throw new Error("Attempt to auto-create ExampleScenario.experimental"); 7827 else if (Configuration.doAutoCreate()) 7828 this.experimental = new BooleanType(); // bb 7829 return this.experimental; 7830 } 7831 7832 public boolean hasExperimentalElement() { 7833 return this.experimental != null && !this.experimental.isEmpty(); 7834 } 7835 7836 public boolean hasExperimental() { 7837 return this.experimental != null && !this.experimental.isEmpty(); 7838 } 7839 7840 /** 7841 * @param value {@link #experimental} (A Boolean value to indicate that this 7842 * example scenario is authored for testing purposes (or 7843 * education/evaluation/marketing) and is not intended to be used 7844 * for genuine usage.). This is the underlying object with id, 7845 * value and extensions. The accessor "getExperimental" gives 7846 * direct access to the value 7847 */ 7848 public ExampleScenario setExperimentalElement(BooleanType value) { 7849 this.experimental = value; 7850 return this; 7851 } 7852 7853 /** 7854 * @return A Boolean value to indicate that this example scenario is authored 7855 * for testing purposes (or education/evaluation/marketing) and is not 7856 * intended to be used for genuine usage. 7857 */ 7858 public boolean getExperimental() { 7859 return this.experimental == null || this.experimental.isEmpty() ? false : this.experimental.getValue(); 7860 } 7861 7862 /** 7863 * @param value A Boolean value to indicate that this example scenario is 7864 * authored for testing purposes (or 7865 * education/evaluation/marketing) and is not intended to be used 7866 * for genuine usage. 7867 */ 7868 public ExampleScenario setExperimental(boolean value) { 7869 if (this.experimental == null) 7870 this.experimental = new BooleanType(); 7871 this.experimental.setValue(value); 7872 return this; 7873 } 7874 7875 /** 7876 * @return {@link #date} (The date (and optionally time) when the example 7877 * scenario was published. The date must change when the business 7878 * version changes and it must change if the status code changes. In 7879 * addition, it should change when the substantive content of the 7880 * example scenario changes. (e.g. the 'content logical definition').). 7881 * This is the underlying object with id, value and extensions. The 7882 * accessor "getDate" gives direct access to the value 7883 */ 7884 public DateTimeType getDateElement() { 7885 if (this.date == null) 7886 if (Configuration.errorOnAutoCreate()) 7887 throw new Error("Attempt to auto-create ExampleScenario.date"); 7888 else if (Configuration.doAutoCreate()) 7889 this.date = new DateTimeType(); // bb 7890 return this.date; 7891 } 7892 7893 public boolean hasDateElement() { 7894 return this.date != null && !this.date.isEmpty(); 7895 } 7896 7897 public boolean hasDate() { 7898 return this.date != null && !this.date.isEmpty(); 7899 } 7900 7901 /** 7902 * @param value {@link #date} (The date (and optionally time) when the example 7903 * scenario was published. The date must change when the business 7904 * version changes and it must change if the status code changes. 7905 * In addition, it should change when the substantive content of 7906 * the example scenario changes. (e.g. the 'content logical 7907 * definition').). This is the underlying object with id, value and 7908 * extensions. The accessor "getDate" gives direct access to the 7909 * value 7910 */ 7911 public ExampleScenario setDateElement(DateTimeType value) { 7912 this.date = value; 7913 return this; 7914 } 7915 7916 /** 7917 * @return The date (and optionally time) when the example scenario was 7918 * published. The date must change when the business version changes and 7919 * it must change if the status code changes. In addition, it should 7920 * change when the substantive content of the example scenario changes. 7921 * (e.g. the 'content logical definition'). 7922 */ 7923 public Date getDate() { 7924 return this.date == null ? null : this.date.getValue(); 7925 } 7926 7927 /** 7928 * @param value The date (and optionally time) when the example scenario was 7929 * published. The date must change when the business version 7930 * changes and it must change if the status code changes. In 7931 * addition, it should change when the substantive content of the 7932 * example scenario changes. (e.g. the 'content logical 7933 * definition'). 7934 */ 7935 public ExampleScenario setDate(Date value) { 7936 if (value == null) 7937 this.date = null; 7938 else { 7939 if (this.date == null) 7940 this.date = new DateTimeType(); 7941 this.date.setValue(value); 7942 } 7943 return this; 7944 } 7945 7946 /** 7947 * @return {@link #publisher} (The name of the organization or individual that 7948 * published the example scenario.). This is the underlying object with 7949 * id, value and extensions. The accessor "getPublisher" gives direct 7950 * access to the value 7951 */ 7952 public StringType getPublisherElement() { 7953 if (this.publisher == null) 7954 if (Configuration.errorOnAutoCreate()) 7955 throw new Error("Attempt to auto-create ExampleScenario.publisher"); 7956 else if (Configuration.doAutoCreate()) 7957 this.publisher = new StringType(); // bb 7958 return this.publisher; 7959 } 7960 7961 public boolean hasPublisherElement() { 7962 return this.publisher != null && !this.publisher.isEmpty(); 7963 } 7964 7965 public boolean hasPublisher() { 7966 return this.publisher != null && !this.publisher.isEmpty(); 7967 } 7968 7969 /** 7970 * @param value {@link #publisher} (The name of the organization or individual 7971 * that published the example scenario.). This is the underlying 7972 * object with id, value and extensions. The accessor 7973 * "getPublisher" gives direct access to the value 7974 */ 7975 public ExampleScenario setPublisherElement(StringType value) { 7976 this.publisher = value; 7977 return this; 7978 } 7979 7980 /** 7981 * @return The name of the organization or individual that published the example 7982 * scenario. 7983 */ 7984 public String getPublisher() { 7985 return this.publisher == null ? null : this.publisher.getValue(); 7986 } 7987 7988 /** 7989 * @param value The name of the organization or individual that published the 7990 * example scenario. 7991 */ 7992 public ExampleScenario setPublisher(String value) { 7993 if (Utilities.noString(value)) 7994 this.publisher = null; 7995 else { 7996 if (this.publisher == null) 7997 this.publisher = new StringType(); 7998 this.publisher.setValue(value); 7999 } 8000 return this; 8001 } 8002 8003 /** 8004 * @return {@link #contact} (Contact details to assist a user in finding and 8005 * communicating with the publisher.) 8006 */ 8007 public List<ContactDetail> getContact() { 8008 if (this.contact == null) 8009 this.contact = new ArrayList<ContactDetail>(); 8010 return this.contact; 8011 } 8012 8013 /** 8014 * @return Returns a reference to <code>this</code> for easy method chaining 8015 */ 8016 public ExampleScenario setContact(List<ContactDetail> theContact) { 8017 this.contact = theContact; 8018 return this; 8019 } 8020 8021 public boolean hasContact() { 8022 if (this.contact == null) 8023 return false; 8024 for (ContactDetail item : this.contact) 8025 if (!item.isEmpty()) 8026 return true; 8027 return false; 8028 } 8029 8030 public ContactDetail addContact() { // 3 8031 ContactDetail t = new ContactDetail(); 8032 if (this.contact == null) 8033 this.contact = new ArrayList<ContactDetail>(); 8034 this.contact.add(t); 8035 return t; 8036 } 8037 8038 public ExampleScenario addContact(ContactDetail t) { // 3 8039 if (t == null) 8040 return this; 8041 if (this.contact == null) 8042 this.contact = new ArrayList<ContactDetail>(); 8043 this.contact.add(t); 8044 return this; 8045 } 8046 8047 /** 8048 * @return The first repetition of repeating field {@link #contact}, creating it 8049 * if it does not already exist 8050 */ 8051 public ContactDetail getContactFirstRep() { 8052 if (getContact().isEmpty()) { 8053 addContact(); 8054 } 8055 return getContact().get(0); 8056 } 8057 8058 /** 8059 * @return {@link #useContext} (The content was developed with a focus and 8060 * intent of supporting the contexts that are listed. These contexts may 8061 * be general categories (gender, age, ...) or may be references to 8062 * specific programs (insurance plans, studies, ...) and may be used to 8063 * assist with indexing and searching for appropriate example scenario 8064 * instances.) 8065 */ 8066 public List<UsageContext> getUseContext() { 8067 if (this.useContext == null) 8068 this.useContext = new ArrayList<UsageContext>(); 8069 return this.useContext; 8070 } 8071 8072 /** 8073 * @return Returns a reference to <code>this</code> for easy method chaining 8074 */ 8075 public ExampleScenario setUseContext(List<UsageContext> theUseContext) { 8076 this.useContext = theUseContext; 8077 return this; 8078 } 8079 8080 public boolean hasUseContext() { 8081 if (this.useContext == null) 8082 return false; 8083 for (UsageContext item : this.useContext) 8084 if (!item.isEmpty()) 8085 return true; 8086 return false; 8087 } 8088 8089 public UsageContext addUseContext() { // 3 8090 UsageContext t = new UsageContext(); 8091 if (this.useContext == null) 8092 this.useContext = new ArrayList<UsageContext>(); 8093 this.useContext.add(t); 8094 return t; 8095 } 8096 8097 public ExampleScenario addUseContext(UsageContext t) { // 3 8098 if (t == null) 8099 return this; 8100 if (this.useContext == null) 8101 this.useContext = new ArrayList<UsageContext>(); 8102 this.useContext.add(t); 8103 return this; 8104 } 8105 8106 /** 8107 * @return The first repetition of repeating field {@link #useContext}, creating 8108 * it if it does not already exist 8109 */ 8110 public UsageContext getUseContextFirstRep() { 8111 if (getUseContext().isEmpty()) { 8112 addUseContext(); 8113 } 8114 return getUseContext().get(0); 8115 } 8116 8117 /** 8118 * @return {@link #jurisdiction} (A legal or geographic region in which the 8119 * example scenario is intended to be used.) 8120 */ 8121 public List<CodeableConcept> getJurisdiction() { 8122 if (this.jurisdiction == null) 8123 this.jurisdiction = new ArrayList<CodeableConcept>(); 8124 return this.jurisdiction; 8125 } 8126 8127 /** 8128 * @return Returns a reference to <code>this</code> for easy method chaining 8129 */ 8130 public ExampleScenario setJurisdiction(List<CodeableConcept> theJurisdiction) { 8131 this.jurisdiction = theJurisdiction; 8132 return this; 8133 } 8134 8135 public boolean hasJurisdiction() { 8136 if (this.jurisdiction == null) 8137 return false; 8138 for (CodeableConcept item : this.jurisdiction) 8139 if (!item.isEmpty()) 8140 return true; 8141 return false; 8142 } 8143 8144 public CodeableConcept addJurisdiction() { // 3 8145 CodeableConcept t = new CodeableConcept(); 8146 if (this.jurisdiction == null) 8147 this.jurisdiction = new ArrayList<CodeableConcept>(); 8148 this.jurisdiction.add(t); 8149 return t; 8150 } 8151 8152 public ExampleScenario addJurisdiction(CodeableConcept t) { // 3 8153 if (t == null) 8154 return this; 8155 if (this.jurisdiction == null) 8156 this.jurisdiction = new ArrayList<CodeableConcept>(); 8157 this.jurisdiction.add(t); 8158 return this; 8159 } 8160 8161 /** 8162 * @return The first repetition of repeating field {@link #jurisdiction}, 8163 * creating it if it does not already exist 8164 */ 8165 public CodeableConcept getJurisdictionFirstRep() { 8166 if (getJurisdiction().isEmpty()) { 8167 addJurisdiction(); 8168 } 8169 return getJurisdiction().get(0); 8170 } 8171 8172 /** 8173 * @return {@link #copyright} (A copyright statement relating to the example 8174 * scenario and/or its contents. Copyright statements are generally 8175 * legal restrictions on the use and publishing of the example 8176 * scenario.). This is the underlying object with id, value and 8177 * extensions. The accessor "getCopyright" gives direct access to the 8178 * value 8179 */ 8180 public MarkdownType getCopyrightElement() { 8181 if (this.copyright == null) 8182 if (Configuration.errorOnAutoCreate()) 8183 throw new Error("Attempt to auto-create ExampleScenario.copyright"); 8184 else if (Configuration.doAutoCreate()) 8185 this.copyright = new MarkdownType(); // bb 8186 return this.copyright; 8187 } 8188 8189 public boolean hasCopyrightElement() { 8190 return this.copyright != null && !this.copyright.isEmpty(); 8191 } 8192 8193 public boolean hasCopyright() { 8194 return this.copyright != null && !this.copyright.isEmpty(); 8195 } 8196 8197 /** 8198 * @param value {@link #copyright} (A copyright statement relating to the 8199 * example scenario and/or its contents. Copyright statements are 8200 * generally legal restrictions on the use and publishing of the 8201 * example scenario.). This is the underlying object with id, value 8202 * and extensions. The accessor "getCopyright" gives direct access 8203 * to the value 8204 */ 8205 public ExampleScenario setCopyrightElement(MarkdownType value) { 8206 this.copyright = value; 8207 return this; 8208 } 8209 8210 /** 8211 * @return A copyright statement relating to the example scenario and/or its 8212 * contents. Copyright statements are generally legal restrictions on 8213 * the use and publishing of the example scenario. 8214 */ 8215 public String getCopyright() { 8216 return this.copyright == null ? null : this.copyright.getValue(); 8217 } 8218 8219 /** 8220 * @param value A copyright statement relating to the example scenario and/or 8221 * its contents. Copyright statements are generally legal 8222 * restrictions on the use and publishing of the example scenario. 8223 */ 8224 public ExampleScenario setCopyright(String value) { 8225 if (value == null) 8226 this.copyright = null; 8227 else { 8228 if (this.copyright == null) 8229 this.copyright = new MarkdownType(); 8230 this.copyright.setValue(value); 8231 } 8232 return this; 8233 } 8234 8235 /** 8236 * @return {@link #purpose} (What the example scenario resource is created for. 8237 * This should not be used to show the business purpose of the scenario 8238 * itself, but the purpose of documenting a scenario.). This is the 8239 * underlying object with id, value and extensions. The accessor 8240 * "getPurpose" gives direct access to the value 8241 */ 8242 public MarkdownType getPurposeElement() { 8243 if (this.purpose == null) 8244 if (Configuration.errorOnAutoCreate()) 8245 throw new Error("Attempt to auto-create ExampleScenario.purpose"); 8246 else if (Configuration.doAutoCreate()) 8247 this.purpose = new MarkdownType(); // bb 8248 return this.purpose; 8249 } 8250 8251 public boolean hasPurposeElement() { 8252 return this.purpose != null && !this.purpose.isEmpty(); 8253 } 8254 8255 public boolean hasPurpose() { 8256 return this.purpose != null && !this.purpose.isEmpty(); 8257 } 8258 8259 /** 8260 * @param value {@link #purpose} (What the example scenario resource is created 8261 * for. This should not be used to show the business purpose of the 8262 * scenario itself, but the purpose of documenting a scenario.). 8263 * This is the underlying object with id, value and extensions. The 8264 * accessor "getPurpose" gives direct access to the value 8265 */ 8266 public ExampleScenario setPurposeElement(MarkdownType value) { 8267 this.purpose = value; 8268 return this; 8269 } 8270 8271 /** 8272 * @return What the example scenario resource is created for. This should not be 8273 * used to show the business purpose of the scenario itself, but the 8274 * purpose of documenting a scenario. 8275 */ 8276 public String getPurpose() { 8277 return this.purpose == null ? null : this.purpose.getValue(); 8278 } 8279 8280 /** 8281 * @param value What the example scenario resource is created for. This should 8282 * not be used to show the business purpose of the scenario itself, 8283 * but the purpose of documenting a scenario. 8284 */ 8285 public ExampleScenario setPurpose(String value) { 8286 if (value == null) 8287 this.purpose = null; 8288 else { 8289 if (this.purpose == null) 8290 this.purpose = new MarkdownType(); 8291 this.purpose.setValue(value); 8292 } 8293 return this; 8294 } 8295 8296 /** 8297 * @return {@link #actor} (Actor participating in the resource.) 8298 */ 8299 public List<ExampleScenarioActorComponent> getActor() { 8300 if (this.actor == null) 8301 this.actor = new ArrayList<ExampleScenarioActorComponent>(); 8302 return this.actor; 8303 } 8304 8305 /** 8306 * @return Returns a reference to <code>this</code> for easy method chaining 8307 */ 8308 public ExampleScenario setActor(List<ExampleScenarioActorComponent> theActor) { 8309 this.actor = theActor; 8310 return this; 8311 } 8312 8313 public boolean hasActor() { 8314 if (this.actor == null) 8315 return false; 8316 for (ExampleScenarioActorComponent item : this.actor) 8317 if (!item.isEmpty()) 8318 return true; 8319 return false; 8320 } 8321 8322 public ExampleScenarioActorComponent addActor() { // 3 8323 ExampleScenarioActorComponent t = new ExampleScenarioActorComponent(); 8324 if (this.actor == null) 8325 this.actor = new ArrayList<ExampleScenarioActorComponent>(); 8326 this.actor.add(t); 8327 return t; 8328 } 8329 8330 public ExampleScenario addActor(ExampleScenarioActorComponent t) { // 3 8331 if (t == null) 8332 return this; 8333 if (this.actor == null) 8334 this.actor = new ArrayList<ExampleScenarioActorComponent>(); 8335 this.actor.add(t); 8336 return this; 8337 } 8338 8339 /** 8340 * @return The first repetition of repeating field {@link #actor}, creating it 8341 * if it does not already exist 8342 */ 8343 public ExampleScenarioActorComponent getActorFirstRep() { 8344 if (getActor().isEmpty()) { 8345 addActor(); 8346 } 8347 return getActor().get(0); 8348 } 8349 8350 /** 8351 * @return {@link #instance} (Each resource and each version that is present in 8352 * the workflow.) 8353 */ 8354 public List<ExampleScenarioInstanceComponent> getInstance() { 8355 if (this.instance == null) 8356 this.instance = new ArrayList<ExampleScenarioInstanceComponent>(); 8357 return this.instance; 8358 } 8359 8360 /** 8361 * @return Returns a reference to <code>this</code> for easy method chaining 8362 */ 8363 public ExampleScenario setInstance(List<ExampleScenarioInstanceComponent> theInstance) { 8364 this.instance = theInstance; 8365 return this; 8366 } 8367 8368 public boolean hasInstance() { 8369 if (this.instance == null) 8370 return false; 8371 for (ExampleScenarioInstanceComponent item : this.instance) 8372 if (!item.isEmpty()) 8373 return true; 8374 return false; 8375 } 8376 8377 public ExampleScenarioInstanceComponent addInstance() { // 3 8378 ExampleScenarioInstanceComponent t = new ExampleScenarioInstanceComponent(); 8379 if (this.instance == null) 8380 this.instance = new ArrayList<ExampleScenarioInstanceComponent>(); 8381 this.instance.add(t); 8382 return t; 8383 } 8384 8385 public ExampleScenario addInstance(ExampleScenarioInstanceComponent t) { // 3 8386 if (t == null) 8387 return this; 8388 if (this.instance == null) 8389 this.instance = new ArrayList<ExampleScenarioInstanceComponent>(); 8390 this.instance.add(t); 8391 return this; 8392 } 8393 8394 /** 8395 * @return The first repetition of repeating field {@link #instance}, creating 8396 * it if it does not already exist 8397 */ 8398 public ExampleScenarioInstanceComponent getInstanceFirstRep() { 8399 if (getInstance().isEmpty()) { 8400 addInstance(); 8401 } 8402 return getInstance().get(0); 8403 } 8404 8405 /** 8406 * @return {@link #process} (Each major process - a group of operations.) 8407 */ 8408 public List<ExampleScenarioProcessComponent> getProcess() { 8409 if (this.process == null) 8410 this.process = new ArrayList<ExampleScenarioProcessComponent>(); 8411 return this.process; 8412 } 8413 8414 /** 8415 * @return Returns a reference to <code>this</code> for easy method chaining 8416 */ 8417 public ExampleScenario setProcess(List<ExampleScenarioProcessComponent> theProcess) { 8418 this.process = theProcess; 8419 return this; 8420 } 8421 8422 public boolean hasProcess() { 8423 if (this.process == null) 8424 return false; 8425 for (ExampleScenarioProcessComponent item : this.process) 8426 if (!item.isEmpty()) 8427 return true; 8428 return false; 8429 } 8430 8431 public ExampleScenarioProcessComponent addProcess() { // 3 8432 ExampleScenarioProcessComponent t = new ExampleScenarioProcessComponent(); 8433 if (this.process == null) 8434 this.process = new ArrayList<ExampleScenarioProcessComponent>(); 8435 this.process.add(t); 8436 return t; 8437 } 8438 8439 public ExampleScenario addProcess(ExampleScenarioProcessComponent t) { // 3 8440 if (t == null) 8441 return this; 8442 if (this.process == null) 8443 this.process = new ArrayList<ExampleScenarioProcessComponent>(); 8444 this.process.add(t); 8445 return this; 8446 } 8447 8448 /** 8449 * @return The first repetition of repeating field {@link #process}, creating it 8450 * if it does not already exist 8451 */ 8452 public ExampleScenarioProcessComponent getProcessFirstRep() { 8453 if (getProcess().isEmpty()) { 8454 addProcess(); 8455 } 8456 return getProcess().get(0); 8457 } 8458 8459 /** 8460 * @return {@link #workflow} (Another nested workflow.) 8461 */ 8462 public List<CanonicalType> getWorkflow() { 8463 if (this.workflow == null) 8464 this.workflow = new ArrayList<CanonicalType>(); 8465 return this.workflow; 8466 } 8467 8468 /** 8469 * @return Returns a reference to <code>this</code> for easy method chaining 8470 */ 8471 public ExampleScenario setWorkflow(List<CanonicalType> theWorkflow) { 8472 this.workflow = theWorkflow; 8473 return this; 8474 } 8475 8476 public boolean hasWorkflow() { 8477 if (this.workflow == null) 8478 return false; 8479 for (CanonicalType item : this.workflow) 8480 if (!item.isEmpty()) 8481 return true; 8482 return false; 8483 } 8484 8485 /** 8486 * @return {@link #workflow} (Another nested workflow.) 8487 */ 8488 public CanonicalType addWorkflowElement() {// 2 8489 CanonicalType t = new CanonicalType(); 8490 if (this.workflow == null) 8491 this.workflow = new ArrayList<CanonicalType>(); 8492 this.workflow.add(t); 8493 return t; 8494 } 8495 8496 /** 8497 * @param value {@link #workflow} (Another nested workflow.) 8498 */ 8499 public ExampleScenario addWorkflow(String value) { // 1 8500 CanonicalType t = new CanonicalType(); 8501 t.setValue(value); 8502 if (this.workflow == null) 8503 this.workflow = new ArrayList<CanonicalType>(); 8504 this.workflow.add(t); 8505 return this; 8506 } 8507 8508 /** 8509 * @param value {@link #workflow} (Another nested workflow.) 8510 */ 8511 public boolean hasWorkflow(String value) { 8512 if (this.workflow == null) 8513 return false; 8514 for (CanonicalType v : this.workflow) 8515 if (v.getValue().equals(value)) // canonical(ExampleScenario) 8516 return true; 8517 return false; 8518 } 8519 8520 protected void listChildren(List<Property> children) { 8521 super.listChildren(children); 8522 children.add(new Property("url", "uri", 8523 "An absolute URI that is used to identify this example scenario 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 example scenario is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the example scenario is stored on different servers.", 8524 0, 1, url)); 8525 children.add(new Property("identifier", "Identifier", 8526 "A formal identifier that is used to identify this example scenario when it is represented in other formats, or referenced in a specification, model, design or an instance.", 8527 0, java.lang.Integer.MAX_VALUE, identifier)); 8528 children.add(new Property("version", "string", 8529 "The identifier that is used to identify this version of the example scenario when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the example scenario 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.", 8530 0, 1, version)); 8531 children.add(new Property("name", "string", 8532 "A natural language name identifying the example scenario. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 8533 0, 1, name)); 8534 children.add(new Property("status", "code", 8535 "The status of this example scenario. Enables tracking the life-cycle of the content.", 0, 1, status)); 8536 children.add(new Property("experimental", "boolean", 8537 "A Boolean value to indicate that this example scenario is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.", 8538 0, 1, experimental)); 8539 children.add(new Property("date", "dateTime", 8540 "The date (and optionally time) when the example scenario 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 example scenario changes. (e.g. the 'content logical definition').", 8541 0, 1, date)); 8542 children.add(new Property("publisher", "string", 8543 "The name of the organization or individual that published the example scenario.", 0, 1, publisher)); 8544 children.add(new Property("contact", "ContactDetail", 8545 "Contact details to assist a user in finding and communicating with the publisher.", 0, 8546 java.lang.Integer.MAX_VALUE, contact)); 8547 children.add(new Property("useContext", "UsageContext", 8548 "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate example scenario instances.", 8549 0, java.lang.Integer.MAX_VALUE, useContext)); 8550 children.add(new Property("jurisdiction", "CodeableConcept", 8551 "A legal or geographic region in which the example scenario is intended to be used.", 0, 8552 java.lang.Integer.MAX_VALUE, jurisdiction)); 8553 children.add(new Property("copyright", "markdown", 8554 "A copyright statement relating to the example scenario and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the example scenario.", 8555 0, 1, copyright)); 8556 children.add(new Property("purpose", "markdown", 8557 "What the example scenario resource is created for. This should not be used to show the business purpose of the scenario itself, but the purpose of documenting a scenario.", 8558 0, 1, purpose)); 8559 children 8560 .add(new Property("actor", "", "Actor participating in the resource.", 0, java.lang.Integer.MAX_VALUE, actor)); 8561 children.add(new Property("instance", "", "Each resource and each version that is present in the workflow.", 0, 8562 java.lang.Integer.MAX_VALUE, instance)); 8563 children.add(new Property("process", "", "Each major process - a group of operations.", 0, 8564 java.lang.Integer.MAX_VALUE, process)); 8565 children.add(new Property("workflow", "canonical(ExampleScenario)", "Another nested workflow.", 0, 8566 java.lang.Integer.MAX_VALUE, workflow)); 8567 } 8568 8569 @Override 8570 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 8571 switch (_hash) { 8572 case 116079: 8573 /* url */ return new Property("url", "uri", 8574 "An absolute URI that is used to identify this example scenario 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 example scenario is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the example scenario is stored on different servers.", 8575 0, 1, url); 8576 case -1618432855: 8577 /* identifier */ return new Property("identifier", "Identifier", 8578 "A formal identifier that is used to identify this example scenario when it is represented in other formats, or referenced in a specification, model, design or an instance.", 8579 0, java.lang.Integer.MAX_VALUE, identifier); 8580 case 351608024: 8581 /* version */ return new Property("version", "string", 8582 "The identifier that is used to identify this version of the example scenario when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the example scenario 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.", 8583 0, 1, version); 8584 case 3373707: 8585 /* name */ return new Property("name", "string", 8586 "A natural language name identifying the example scenario. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 8587 0, 1, name); 8588 case -892481550: 8589 /* status */ return new Property("status", "code", 8590 "The status of this example scenario. Enables tracking the life-cycle of the content.", 0, 1, status); 8591 case -404562712: 8592 /* experimental */ return new Property("experimental", "boolean", 8593 "A Boolean value to indicate that this example scenario is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.", 8594 0, 1, experimental); 8595 case 3076014: 8596 /* date */ return new Property("date", "dateTime", 8597 "The date (and optionally time) when the example scenario 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 example scenario changes. (e.g. the 'content logical definition').", 8598 0, 1, date); 8599 case 1447404028: 8600 /* publisher */ return new Property("publisher", "string", 8601 "The name of the organization or individual that published the example scenario.", 0, 1, publisher); 8602 case 951526432: 8603 /* contact */ return new Property("contact", "ContactDetail", 8604 "Contact details to assist a user in finding and communicating with the publisher.", 0, 8605 java.lang.Integer.MAX_VALUE, contact); 8606 case -669707736: 8607 /* useContext */ return new Property("useContext", "UsageContext", 8608 "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate example scenario instances.", 8609 0, java.lang.Integer.MAX_VALUE, useContext); 8610 case -507075711: 8611 /* jurisdiction */ return new Property("jurisdiction", "CodeableConcept", 8612 "A legal or geographic region in which the example scenario is intended to be used.", 0, 8613 java.lang.Integer.MAX_VALUE, jurisdiction); 8614 case 1522889671: 8615 /* copyright */ return new Property("copyright", "markdown", 8616 "A copyright statement relating to the example scenario and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the example scenario.", 8617 0, 1, copyright); 8618 case -220463842: 8619 /* purpose */ return new Property("purpose", "markdown", 8620 "What the example scenario resource is created for. This should not be used to show the business purpose of the scenario itself, but the purpose of documenting a scenario.", 8621 0, 1, purpose); 8622 case 92645877: 8623 /* actor */ return new Property("actor", "", "Actor participating in the resource.", 0, 8624 java.lang.Integer.MAX_VALUE, actor); 8625 case 555127957: 8626 /* instance */ return new Property("instance", "", 8627 "Each resource and each version that is present in the workflow.", 0, java.lang.Integer.MAX_VALUE, instance); 8628 case -309518737: 8629 /* process */ return new Property("process", "", "Each major process - a group of operations.", 0, 8630 java.lang.Integer.MAX_VALUE, process); 8631 case 35379135: 8632 /* workflow */ return new Property("workflow", "canonical(ExampleScenario)", "Another nested workflow.", 0, 8633 java.lang.Integer.MAX_VALUE, workflow); 8634 default: 8635 return super.getNamedProperty(_hash, _name, _checkValid); 8636 } 8637 8638 } 8639 8640 @Override 8641 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 8642 switch (hash) { 8643 case 116079: 8644 /* url */ return this.url == null ? new Base[0] : new Base[] { this.url }; // UriType 8645 case -1618432855: 8646 /* identifier */ return this.identifier == null ? new Base[0] 8647 : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 8648 case 351608024: 8649 /* version */ return this.version == null ? new Base[0] : new Base[] { this.version }; // StringType 8650 case 3373707: 8651 /* name */ return this.name == null ? new Base[0] : new Base[] { this.name }; // StringType 8652 case -892481550: 8653 /* status */ return this.status == null ? new Base[0] : new Base[] { this.status }; // Enumeration<PublicationStatus> 8654 case -404562712: 8655 /* experimental */ return this.experimental == null ? new Base[0] : new Base[] { this.experimental }; // BooleanType 8656 case 3076014: 8657 /* date */ return this.date == null ? new Base[0] : new Base[] { this.date }; // DateTimeType 8658 case 1447404028: 8659 /* publisher */ return this.publisher == null ? new Base[0] : new Base[] { this.publisher }; // StringType 8660 case 951526432: 8661 /* contact */ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactDetail 8662 case -669707736: 8663 /* useContext */ return this.useContext == null ? new Base[0] 8664 : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 8665 case -507075711: 8666 /* jurisdiction */ return this.jurisdiction == null ? new Base[0] 8667 : this.jurisdiction.toArray(new Base[this.jurisdiction.size()]); // CodeableConcept 8668 case 1522889671: 8669 /* copyright */ return this.copyright == null ? new Base[0] : new Base[] { this.copyright }; // MarkdownType 8670 case -220463842: 8671 /* purpose */ return this.purpose == null ? new Base[0] : new Base[] { this.purpose }; // MarkdownType 8672 case 92645877: 8673 /* actor */ return this.actor == null ? new Base[0] : this.actor.toArray(new Base[this.actor.size()]); // ExampleScenarioActorComponent 8674 case 555127957: 8675 /* instance */ return this.instance == null ? new Base[0] : this.instance.toArray(new Base[this.instance.size()]); // ExampleScenarioInstanceComponent 8676 case -309518737: 8677 /* process */ return this.process == null ? new Base[0] : this.process.toArray(new Base[this.process.size()]); // ExampleScenarioProcessComponent 8678 case 35379135: 8679 /* workflow */ return this.workflow == null ? new Base[0] : this.workflow.toArray(new Base[this.workflow.size()]); // CanonicalType 8680 default: 8681 return super.getProperty(hash, name, checkValid); 8682 } 8683 8684 } 8685 8686 @Override 8687 public Base setProperty(int hash, String name, Base value) throws FHIRException { 8688 switch (hash) { 8689 case 116079: // url 8690 this.url = castToUri(value); // UriType 8691 return value; 8692 case -1618432855: // identifier 8693 this.getIdentifier().add(castToIdentifier(value)); // Identifier 8694 return value; 8695 case 351608024: // version 8696 this.version = castToString(value); // StringType 8697 return value; 8698 case 3373707: // name 8699 this.name = castToString(value); // StringType 8700 return value; 8701 case -892481550: // status 8702 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 8703 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 8704 return value; 8705 case -404562712: // experimental 8706 this.experimental = castToBoolean(value); // BooleanType 8707 return value; 8708 case 3076014: // date 8709 this.date = castToDateTime(value); // DateTimeType 8710 return value; 8711 case 1447404028: // publisher 8712 this.publisher = castToString(value); // StringType 8713 return value; 8714 case 951526432: // contact 8715 this.getContact().add(castToContactDetail(value)); // ContactDetail 8716 return value; 8717 case -669707736: // useContext 8718 this.getUseContext().add(castToUsageContext(value)); // UsageContext 8719 return value; 8720 case -507075711: // jurisdiction 8721 this.getJurisdiction().add(castToCodeableConcept(value)); // CodeableConcept 8722 return value; 8723 case 1522889671: // copyright 8724 this.copyright = castToMarkdown(value); // MarkdownType 8725 return value; 8726 case -220463842: // purpose 8727 this.purpose = castToMarkdown(value); // MarkdownType 8728 return value; 8729 case 92645877: // actor 8730 this.getActor().add((ExampleScenarioActorComponent) value); // ExampleScenarioActorComponent 8731 return value; 8732 case 555127957: // instance 8733 this.getInstance().add((ExampleScenarioInstanceComponent) value); // ExampleScenarioInstanceComponent 8734 return value; 8735 case -309518737: // process 8736 this.getProcess().add((ExampleScenarioProcessComponent) value); // ExampleScenarioProcessComponent 8737 return value; 8738 case 35379135: // workflow 8739 this.getWorkflow().add(castToCanonical(value)); // CanonicalType 8740 return value; 8741 default: 8742 return super.setProperty(hash, name, value); 8743 } 8744 8745 } 8746 8747 @Override 8748 public Base setProperty(String name, Base value) throws FHIRException { 8749 if (name.equals("url")) { 8750 this.url = castToUri(value); // UriType 8751 } else if (name.equals("identifier")) { 8752 this.getIdentifier().add(castToIdentifier(value)); 8753 } else if (name.equals("version")) { 8754 this.version = castToString(value); // StringType 8755 } else if (name.equals("name")) { 8756 this.name = castToString(value); // StringType 8757 } else if (name.equals("status")) { 8758 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 8759 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 8760 } else if (name.equals("experimental")) { 8761 this.experimental = castToBoolean(value); // BooleanType 8762 } else if (name.equals("date")) { 8763 this.date = castToDateTime(value); // DateTimeType 8764 } else if (name.equals("publisher")) { 8765 this.publisher = castToString(value); // StringType 8766 } else if (name.equals("contact")) { 8767 this.getContact().add(castToContactDetail(value)); 8768 } else if (name.equals("useContext")) { 8769 this.getUseContext().add(castToUsageContext(value)); 8770 } else if (name.equals("jurisdiction")) { 8771 this.getJurisdiction().add(castToCodeableConcept(value)); 8772 } else if (name.equals("copyright")) { 8773 this.copyright = castToMarkdown(value); // MarkdownType 8774 } else if (name.equals("purpose")) { 8775 this.purpose = castToMarkdown(value); // MarkdownType 8776 } else if (name.equals("actor")) { 8777 this.getActor().add((ExampleScenarioActorComponent) value); 8778 } else if (name.equals("instance")) { 8779 this.getInstance().add((ExampleScenarioInstanceComponent) value); 8780 } else if (name.equals("process")) { 8781 this.getProcess().add((ExampleScenarioProcessComponent) value); 8782 } else if (name.equals("workflow")) { 8783 this.getWorkflow().add(castToCanonical(value)); 8784 } else 8785 return super.setProperty(name, value); 8786 return value; 8787 } 8788 8789 @Override 8790 public void removeChild(String name, Base value) throws FHIRException { 8791 if (name.equals("url")) { 8792 this.url = null; 8793 } else if (name.equals("identifier")) { 8794 this.getIdentifier().remove(castToIdentifier(value)); 8795 } else if (name.equals("version")) { 8796 this.version = null; 8797 } else if (name.equals("name")) { 8798 this.name = null; 8799 } else if (name.equals("status")) { 8800 this.status = null; 8801 } else if (name.equals("experimental")) { 8802 this.experimental = null; 8803 } else if (name.equals("date")) { 8804 this.date = null; 8805 } else if (name.equals("publisher")) { 8806 this.publisher = null; 8807 } else if (name.equals("contact")) { 8808 this.getContact().remove(castToContactDetail(value)); 8809 } else if (name.equals("useContext")) { 8810 this.getUseContext().remove(castToUsageContext(value)); 8811 } else if (name.equals("jurisdiction")) { 8812 this.getJurisdiction().remove(castToCodeableConcept(value)); 8813 } else if (name.equals("copyright")) { 8814 this.copyright = null; 8815 } else if (name.equals("purpose")) { 8816 this.purpose = null; 8817 } else if (name.equals("actor")) { 8818 this.getActor().remove((ExampleScenarioActorComponent) value); 8819 } else if (name.equals("instance")) { 8820 this.getInstance().remove((ExampleScenarioInstanceComponent) value); 8821 } else if (name.equals("process")) { 8822 this.getProcess().remove((ExampleScenarioProcessComponent) value); 8823 } else if (name.equals("workflow")) { 8824 this.getWorkflow().remove(castToCanonical(value)); 8825 } else 8826 super.removeChild(name, value); 8827 8828 } 8829 8830 @Override 8831 public Base makeProperty(int hash, String name) throws FHIRException { 8832 switch (hash) { 8833 case 116079: 8834 return getUrlElement(); 8835 case -1618432855: 8836 return addIdentifier(); 8837 case 351608024: 8838 return getVersionElement(); 8839 case 3373707: 8840 return getNameElement(); 8841 case -892481550: 8842 return getStatusElement(); 8843 case -404562712: 8844 return getExperimentalElement(); 8845 case 3076014: 8846 return getDateElement(); 8847 case 1447404028: 8848 return getPublisherElement(); 8849 case 951526432: 8850 return addContact(); 8851 case -669707736: 8852 return addUseContext(); 8853 case -507075711: 8854 return addJurisdiction(); 8855 case 1522889671: 8856 return getCopyrightElement(); 8857 case -220463842: 8858 return getPurposeElement(); 8859 case 92645877: 8860 return addActor(); 8861 case 555127957: 8862 return addInstance(); 8863 case -309518737: 8864 return addProcess(); 8865 case 35379135: 8866 return addWorkflowElement(); 8867 default: 8868 return super.makeProperty(hash, name); 8869 } 8870 8871 } 8872 8873 @Override 8874 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 8875 switch (hash) { 8876 case 116079: 8877 /* url */ return new String[] { "uri" }; 8878 case -1618432855: 8879 /* identifier */ return new String[] { "Identifier" }; 8880 case 351608024: 8881 /* version */ return new String[] { "string" }; 8882 case 3373707: 8883 /* name */ return new String[] { "string" }; 8884 case -892481550: 8885 /* status */ return new String[] { "code" }; 8886 case -404562712: 8887 /* experimental */ return new String[] { "boolean" }; 8888 case 3076014: 8889 /* date */ return new String[] { "dateTime" }; 8890 case 1447404028: 8891 /* publisher */ return new String[] { "string" }; 8892 case 951526432: 8893 /* contact */ return new String[] { "ContactDetail" }; 8894 case -669707736: 8895 /* useContext */ return new String[] { "UsageContext" }; 8896 case -507075711: 8897 /* jurisdiction */ return new String[] { "CodeableConcept" }; 8898 case 1522889671: 8899 /* copyright */ return new String[] { "markdown" }; 8900 case -220463842: 8901 /* purpose */ return new String[] { "markdown" }; 8902 case 92645877: 8903 /* actor */ return new String[] {}; 8904 case 555127957: 8905 /* instance */ return new String[] {}; 8906 case -309518737: 8907 /* process */ return new String[] {}; 8908 case 35379135: 8909 /* workflow */ return new String[] { "canonical" }; 8910 default: 8911 return super.getTypesForProperty(hash, name); 8912 } 8913 8914 } 8915 8916 @Override 8917 public Base addChild(String name) throws FHIRException { 8918 if (name.equals("url")) { 8919 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.url"); 8920 } else if (name.equals("identifier")) { 8921 return addIdentifier(); 8922 } else if (name.equals("version")) { 8923 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.version"); 8924 } else if (name.equals("name")) { 8925 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.name"); 8926 } else if (name.equals("status")) { 8927 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.status"); 8928 } else if (name.equals("experimental")) { 8929 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.experimental"); 8930 } else if (name.equals("date")) { 8931 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.date"); 8932 } else if (name.equals("publisher")) { 8933 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.publisher"); 8934 } else if (name.equals("contact")) { 8935 return addContact(); 8936 } else if (name.equals("useContext")) { 8937 return addUseContext(); 8938 } else if (name.equals("jurisdiction")) { 8939 return addJurisdiction(); 8940 } else if (name.equals("copyright")) { 8941 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.copyright"); 8942 } else if (name.equals("purpose")) { 8943 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.purpose"); 8944 } else if (name.equals("actor")) { 8945 return addActor(); 8946 } else if (name.equals("instance")) { 8947 return addInstance(); 8948 } else if (name.equals("process")) { 8949 return addProcess(); 8950 } else if (name.equals("workflow")) { 8951 throw new FHIRException("Cannot call addChild on a singleton property ExampleScenario.workflow"); 8952 } else 8953 return super.addChild(name); 8954 } 8955 8956 public String fhirType() { 8957 return "ExampleScenario"; 8958 8959 } 8960 8961 public ExampleScenario copy() { 8962 ExampleScenario dst = new ExampleScenario(); 8963 copyValues(dst); 8964 return dst; 8965 } 8966 8967 public void copyValues(ExampleScenario dst) { 8968 super.copyValues(dst); 8969 dst.url = url == null ? null : url.copy(); 8970 if (identifier != null) { 8971 dst.identifier = new ArrayList<Identifier>(); 8972 for (Identifier i : identifier) 8973 dst.identifier.add(i.copy()); 8974 } 8975 ; 8976 dst.version = version == null ? null : version.copy(); 8977 dst.name = name == null ? null : name.copy(); 8978 dst.status = status == null ? null : status.copy(); 8979 dst.experimental = experimental == null ? null : experimental.copy(); 8980 dst.date = date == null ? null : date.copy(); 8981 dst.publisher = publisher == null ? null : publisher.copy(); 8982 if (contact != null) { 8983 dst.contact = new ArrayList<ContactDetail>(); 8984 for (ContactDetail i : contact) 8985 dst.contact.add(i.copy()); 8986 } 8987 ; 8988 if (useContext != null) { 8989 dst.useContext = new ArrayList<UsageContext>(); 8990 for (UsageContext i : useContext) 8991 dst.useContext.add(i.copy()); 8992 } 8993 ; 8994 if (jurisdiction != null) { 8995 dst.jurisdiction = new ArrayList<CodeableConcept>(); 8996 for (CodeableConcept i : jurisdiction) 8997 dst.jurisdiction.add(i.copy()); 8998 } 8999 ; 9000 dst.copyright = copyright == null ? null : copyright.copy(); 9001 dst.purpose = purpose == null ? null : purpose.copy(); 9002 if (actor != null) { 9003 dst.actor = new ArrayList<ExampleScenarioActorComponent>(); 9004 for (ExampleScenarioActorComponent i : actor) 9005 dst.actor.add(i.copy()); 9006 } 9007 ; 9008 if (instance != null) { 9009 dst.instance = new ArrayList<ExampleScenarioInstanceComponent>(); 9010 for (ExampleScenarioInstanceComponent i : instance) 9011 dst.instance.add(i.copy()); 9012 } 9013 ; 9014 if (process != null) { 9015 dst.process = new ArrayList<ExampleScenarioProcessComponent>(); 9016 for (ExampleScenarioProcessComponent i : process) 9017 dst.process.add(i.copy()); 9018 } 9019 ; 9020 if (workflow != null) { 9021 dst.workflow = new ArrayList<CanonicalType>(); 9022 for (CanonicalType i : workflow) 9023 dst.workflow.add(i.copy()); 9024 } 9025 ; 9026 } 9027 9028 protected ExampleScenario typedCopy() { 9029 return copy(); 9030 } 9031 9032 @Override 9033 public boolean equalsDeep(Base other_) { 9034 if (!super.equalsDeep(other_)) 9035 return false; 9036 if (!(other_ instanceof ExampleScenario)) 9037 return false; 9038 ExampleScenario o = (ExampleScenario) other_; 9039 return compareDeep(identifier, o.identifier, true) && compareDeep(copyright, o.copyright, true) 9040 && compareDeep(purpose, o.purpose, true) && compareDeep(actor, o.actor, true) 9041 && compareDeep(instance, o.instance, true) && compareDeep(process, o.process, true) 9042 && compareDeep(workflow, o.workflow, true); 9043 } 9044 9045 @Override 9046 public boolean equalsShallow(Base other_) { 9047 if (!super.equalsShallow(other_)) 9048 return false; 9049 if (!(other_ instanceof ExampleScenario)) 9050 return false; 9051 ExampleScenario o = (ExampleScenario) other_; 9052 return compareValues(copyright, o.copyright, true) && compareValues(purpose, o.purpose, true); 9053 } 9054 9055 public boolean isEmpty() { 9056 return super.isEmpty() 9057 && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, copyright, purpose, actor, instance, process, workflow); 9058 } 9059 9060 @Override 9061 public ResourceType getResourceType() { 9062 return ResourceType.ExampleScenario; 9063 } 9064 9065 /** 9066 * Search parameter: <b>date</b> 9067 * <p> 9068 * Description: <b>The example scenario publication date</b><br> 9069 * Type: <b>date</b><br> 9070 * Path: <b>ExampleScenario.date</b><br> 9071 * </p> 9072 */ 9073 @SearchParamDefinition(name = "date", path = "ExampleScenario.date", description = "The example scenario publication date", type = "date") 9074 public static final String SP_DATE = "date"; 9075 /** 9076 * <b>Fluent Client</b> search parameter constant for <b>date</b> 9077 * <p> 9078 * Description: <b>The example scenario publication date</b><br> 9079 * Type: <b>date</b><br> 9080 * Path: <b>ExampleScenario.date</b><br> 9081 * </p> 9082 */ 9083 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam( 9084 SP_DATE); 9085 9086 /** 9087 * Search parameter: <b>identifier</b> 9088 * <p> 9089 * Description: <b>External identifier for the example scenario</b><br> 9090 * Type: <b>token</b><br> 9091 * Path: <b>ExampleScenario.identifier</b><br> 9092 * </p> 9093 */ 9094 @SearchParamDefinition(name = "identifier", path = "ExampleScenario.identifier", description = "External identifier for the example scenario", type = "token") 9095 public static final String SP_IDENTIFIER = "identifier"; 9096 /** 9097 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 9098 * <p> 9099 * Description: <b>External identifier for the example scenario</b><br> 9100 * Type: <b>token</b><br> 9101 * Path: <b>ExampleScenario.identifier</b><br> 9102 * </p> 9103 */ 9104 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam( 9105 SP_IDENTIFIER); 9106 9107 /** 9108 * Search parameter: <b>context-type-value</b> 9109 * <p> 9110 * Description: <b>A use context type and value assigned to the example 9111 * scenario</b><br> 9112 * Type: <b>composite</b><br> 9113 * Path: <b></b><br> 9114 * </p> 9115 */ 9116 @SearchParamDefinition(name = "context-type-value", path = "ExampleScenario.useContext", description = "A use context type and value assigned to the example scenario", type = "composite", compositeOf = { 9117 "context-type", "context" }) 9118 public static final String SP_CONTEXT_TYPE_VALUE = "context-type-value"; 9119 /** 9120 * <b>Fluent Client</b> search parameter constant for <b>context-type-value</b> 9121 * <p> 9122 * Description: <b>A use context type and value assigned to the example 9123 * scenario</b><br> 9124 * Type: <b>composite</b><br> 9125 * Path: <b></b><br> 9126 * </p> 9127 */ 9128 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>( 9129 SP_CONTEXT_TYPE_VALUE); 9130 9131 /** 9132 * Search parameter: <b>jurisdiction</b> 9133 * <p> 9134 * Description: <b>Intended jurisdiction for the example scenario</b><br> 9135 * Type: <b>token</b><br> 9136 * Path: <b>ExampleScenario.jurisdiction</b><br> 9137 * </p> 9138 */ 9139 @SearchParamDefinition(name = "jurisdiction", path = "ExampleScenario.jurisdiction", description = "Intended jurisdiction for the example scenario", type = "token") 9140 public static final String SP_JURISDICTION = "jurisdiction"; 9141 /** 9142 * <b>Fluent Client</b> search parameter constant for <b>jurisdiction</b> 9143 * <p> 9144 * Description: <b>Intended jurisdiction for the example scenario</b><br> 9145 * Type: <b>token</b><br> 9146 * Path: <b>ExampleScenario.jurisdiction</b><br> 9147 * </p> 9148 */ 9149 public static final ca.uhn.fhir.rest.gclient.TokenClientParam JURISDICTION = new ca.uhn.fhir.rest.gclient.TokenClientParam( 9150 SP_JURISDICTION); 9151 9152 /** 9153 * Search parameter: <b>context-type</b> 9154 * <p> 9155 * Description: <b>A type of use context assigned to the example 9156 * scenario</b><br> 9157 * Type: <b>token</b><br> 9158 * Path: <b>ExampleScenario.useContext.code</b><br> 9159 * </p> 9160 */ 9161 @SearchParamDefinition(name = "context-type", path = "ExampleScenario.useContext.code", description = "A type of use context assigned to the example scenario", type = "token") 9162 public static final String SP_CONTEXT_TYPE = "context-type"; 9163 /** 9164 * <b>Fluent Client</b> search parameter constant for <b>context-type</b> 9165 * <p> 9166 * Description: <b>A type of use context assigned to the example 9167 * scenario</b><br> 9168 * Type: <b>token</b><br> 9169 * Path: <b>ExampleScenario.useContext.code</b><br> 9170 * </p> 9171 */ 9172 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam( 9173 SP_CONTEXT_TYPE); 9174 9175 /** 9176 * Search parameter: <b>version</b> 9177 * <p> 9178 * Description: <b>The business version of the example scenario</b><br> 9179 * Type: <b>token</b><br> 9180 * Path: <b>ExampleScenario.version</b><br> 9181 * </p> 9182 */ 9183 @SearchParamDefinition(name = "version", path = "ExampleScenario.version", description = "The business version of the example scenario", type = "token") 9184 public static final String SP_VERSION = "version"; 9185 /** 9186 * <b>Fluent Client</b> search parameter constant for <b>version</b> 9187 * <p> 9188 * Description: <b>The business version of the example scenario</b><br> 9189 * Type: <b>token</b><br> 9190 * Path: <b>ExampleScenario.version</b><br> 9191 * </p> 9192 */ 9193 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam( 9194 SP_VERSION); 9195 9196 /** 9197 * Search parameter: <b>url</b> 9198 * <p> 9199 * Description: <b>The uri that identifies the example scenario</b><br> 9200 * Type: <b>uri</b><br> 9201 * Path: <b>ExampleScenario.url</b><br> 9202 * </p> 9203 */ 9204 @SearchParamDefinition(name = "url", path = "ExampleScenario.url", description = "The uri that identifies the example scenario", type = "uri") 9205 public static final String SP_URL = "url"; 9206 /** 9207 * <b>Fluent Client</b> search parameter constant for <b>url</b> 9208 * <p> 9209 * Description: <b>The uri that identifies the example scenario</b><br> 9210 * Type: <b>uri</b><br> 9211 * Path: <b>ExampleScenario.url</b><br> 9212 * </p> 9213 */ 9214 public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); 9215 9216 /** 9217 * Search parameter: <b>context-quantity</b> 9218 * <p> 9219 * Description: <b>A quantity- or range-valued use context assigned to the 9220 * example scenario</b><br> 9221 * Type: <b>quantity</b><br> 9222 * Path: <b>ExampleScenario.useContext.valueQuantity, 9223 * ExampleScenario.useContext.valueRange</b><br> 9224 * </p> 9225 */ 9226 @SearchParamDefinition(name = "context-quantity", path = "(ExampleScenario.useContext.value as Quantity) | (ExampleScenario.useContext.value as Range)", description = "A quantity- or range-valued use context assigned to the example scenario", type = "quantity") 9227 public static final String SP_CONTEXT_QUANTITY = "context-quantity"; 9228 /** 9229 * <b>Fluent Client</b> search parameter constant for <b>context-quantity</b> 9230 * <p> 9231 * Description: <b>A quantity- or range-valued use context assigned to the 9232 * example scenario</b><br> 9233 * Type: <b>quantity</b><br> 9234 * Path: <b>ExampleScenario.useContext.valueQuantity, 9235 * ExampleScenario.useContext.valueRange</b><br> 9236 * </p> 9237 */ 9238 public static final ca.uhn.fhir.rest.gclient.QuantityClientParam CONTEXT_QUANTITY = new ca.uhn.fhir.rest.gclient.QuantityClientParam( 9239 SP_CONTEXT_QUANTITY); 9240 9241 /** 9242 * Search parameter: <b>name</b> 9243 * <p> 9244 * Description: <b>Computationally friendly name of the example scenario</b><br> 9245 * Type: <b>string</b><br> 9246 * Path: <b>ExampleScenario.name</b><br> 9247 * </p> 9248 */ 9249 @SearchParamDefinition(name = "name", path = "ExampleScenario.name", description = "Computationally friendly name of the example scenario", type = "string") 9250 public static final String SP_NAME = "name"; 9251 /** 9252 * <b>Fluent Client</b> search parameter constant for <b>name</b> 9253 * <p> 9254 * Description: <b>Computationally friendly name of the example scenario</b><br> 9255 * Type: <b>string</b><br> 9256 * Path: <b>ExampleScenario.name</b><br> 9257 * </p> 9258 */ 9259 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam( 9260 SP_NAME); 9261 9262 /** 9263 * Search parameter: <b>context</b> 9264 * <p> 9265 * Description: <b>A use context assigned to the example scenario</b><br> 9266 * Type: <b>token</b><br> 9267 * Path: <b>ExampleScenario.useContext.valueCodeableConcept</b><br> 9268 * </p> 9269 */ 9270 @SearchParamDefinition(name = "context", path = "(ExampleScenario.useContext.value as CodeableConcept)", description = "A use context assigned to the example scenario", type = "token") 9271 public static final String SP_CONTEXT = "context"; 9272 /** 9273 * <b>Fluent Client</b> search parameter constant for <b>context</b> 9274 * <p> 9275 * Description: <b>A use context assigned to the example scenario</b><br> 9276 * Type: <b>token</b><br> 9277 * Path: <b>ExampleScenario.useContext.valueCodeableConcept</b><br> 9278 * </p> 9279 */ 9280 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.TokenClientParam( 9281 SP_CONTEXT); 9282 9283 /** 9284 * Search parameter: <b>publisher</b> 9285 * <p> 9286 * Description: <b>Name of the publisher of the example scenario</b><br> 9287 * Type: <b>string</b><br> 9288 * Path: <b>ExampleScenario.publisher</b><br> 9289 * </p> 9290 */ 9291 @SearchParamDefinition(name = "publisher", path = "ExampleScenario.publisher", description = "Name of the publisher of the example scenario", type = "string") 9292 public static final String SP_PUBLISHER = "publisher"; 9293 /** 9294 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 9295 * <p> 9296 * Description: <b>Name of the publisher of the example scenario</b><br> 9297 * Type: <b>string</b><br> 9298 * Path: <b>ExampleScenario.publisher</b><br> 9299 * </p> 9300 */ 9301 public static final ca.uhn.fhir.rest.gclient.StringClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.StringClientParam( 9302 SP_PUBLISHER); 9303 9304 /** 9305 * Search parameter: <b>context-type-quantity</b> 9306 * <p> 9307 * Description: <b>A use context type and quantity- or range-based value 9308 * assigned to the example scenario</b><br> 9309 * Type: <b>composite</b><br> 9310 * Path: <b></b><br> 9311 * </p> 9312 */ 9313 @SearchParamDefinition(name = "context-type-quantity", path = "ExampleScenario.useContext", description = "A use context type and quantity- or range-based value assigned to the example scenario", type = "composite", compositeOf = { 9314 "context-type", "context-quantity" }) 9315 public static final String SP_CONTEXT_TYPE_QUANTITY = "context-type-quantity"; 9316 /** 9317 * <b>Fluent Client</b> search parameter constant for 9318 * <b>context-type-quantity</b> 9319 * <p> 9320 * Description: <b>A use context type and quantity- or range-based value 9321 * assigned to the example scenario</b><br> 9322 * Type: <b>composite</b><br> 9323 * Path: <b></b><br> 9324 * </p> 9325 */ 9326 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>( 9327 SP_CONTEXT_TYPE_QUANTITY); 9328 9329 /** 9330 * Search parameter: <b>status</b> 9331 * <p> 9332 * Description: <b>The current status of the example scenario</b><br> 9333 * Type: <b>token</b><br> 9334 * Path: <b>ExampleScenario.status</b><br> 9335 * </p> 9336 */ 9337 @SearchParamDefinition(name = "status", path = "ExampleScenario.status", description = "The current status of the example scenario", type = "token") 9338 public static final String SP_STATUS = "status"; 9339 /** 9340 * <b>Fluent Client</b> search parameter constant for <b>status</b> 9341 * <p> 9342 * Description: <b>The current status of the example scenario</b><br> 9343 * Type: <b>token</b><br> 9344 * Path: <b>ExampleScenario.status</b><br> 9345 * </p> 9346 */ 9347 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam( 9348 SP_STATUS); 9349 9350}