
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.r4.model.Enumerations.PublicationStatus; 039import org.hl7.fhir.r4.model.Enumerations.PublicationStatusEnumFactory; 040import org.hl7.fhir.utilities.Utilities; 041 042import ca.uhn.fhir.model.api.annotation.Child; 043import ca.uhn.fhir.model.api.annotation.ChildOrder; 044import ca.uhn.fhir.model.api.annotation.Description; 045import ca.uhn.fhir.model.api.annotation.ResourceDef; 046import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 047 048/** 049 * The Evidence resource describes the conditional state (population and any 050 * exposures being compared within the population) and outcome (if specified) 051 * that the knowledge (evidence, assertion, recommendation) is about. 052 */ 053@ResourceDef(name = "Evidence", profile = "http://hl7.org/fhir/StructureDefinition/Evidence") 054@ChildOrder(names = { "url", "identifier", "version", "name", "title", "shortTitle", "subtitle", "status", "date", 055 "publisher", "contact", "description", "note", "useContext", "jurisdiction", "copyright", "approvalDate", 056 "lastReviewDate", "effectivePeriod", "topic", "author", "editor", "reviewer", "endorser", "relatedArtifact", 057 "exposureBackground", "exposureVariant", "outcome" }) 058public class Evidence extends MetadataResource { 059 060 /** 061 * A formal identifier that is used to identify this evidence when it is 062 * represented in other formats, or referenced in a specification, model, design 063 * or an instance. 064 */ 065 @Child(name = "identifier", type = { 066 Identifier.class }, order = 0, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = true) 067 @Description(shortDefinition = "Additional identifier for the evidence", formalDefinition = "A formal identifier that is used to identify this evidence when it is represented in other formats, or referenced in a specification, model, design or an instance.") 068 protected List<Identifier> identifier; 069 070 /** 071 * The short title provides an alternate title for use in informal descriptive 072 * contexts where the full, formal title is not necessary. 073 */ 074 @Child(name = "shortTitle", type = { 075 StringType.class }, order = 1, min = 0, max = 1, modifier = false, summary = false) 076 @Description(shortDefinition = "Title for use in informal contexts", formalDefinition = "The short title provides an alternate title for use in informal descriptive contexts where the full, formal title is not necessary.") 077 protected StringType shortTitle; 078 079 /** 080 * An explanatory or alternate title for the Evidence giving additional 081 * information about its content. 082 */ 083 @Child(name = "subtitle", type = { StringType.class }, order = 2, min = 0, max = 1, modifier = false, summary = false) 084 @Description(shortDefinition = "Subordinate title of the Evidence", formalDefinition = "An explanatory or alternate title for the Evidence giving additional information about its content.") 085 protected StringType subtitle; 086 087 /** 088 * A human-readable string to clarify or explain concepts about the resource. 089 */ 090 @Child(name = "note", type = { 091 Annotation.class }, order = 3, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 092 @Description(shortDefinition = "Used for footnotes or explanatory notes", formalDefinition = "A human-readable string to clarify or explain concepts about the resource.") 093 protected List<Annotation> note; 094 095 /** 096 * A copyright statement relating to the evidence and/or its contents. Copyright 097 * statements are generally legal restrictions on the use and publishing of the 098 * evidence. 099 */ 100 @Child(name = "copyright", type = { 101 MarkdownType.class }, order = 4, min = 0, max = 1, modifier = false, summary = false) 102 @Description(shortDefinition = "Use and/or publishing restrictions", formalDefinition = "A copyright statement relating to the evidence and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence.") 103 protected MarkdownType copyright; 104 105 /** 106 * The date on which the resource content was approved by the publisher. 107 * Approval happens once when the content is officially approved for usage. 108 */ 109 @Child(name = "approvalDate", type = { 110 DateType.class }, order = 5, min = 0, max = 1, modifier = false, summary = false) 111 @Description(shortDefinition = "When the evidence was approved by publisher", formalDefinition = "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.") 112 protected DateType approvalDate; 113 114 /** 115 * The date on which the resource content was last reviewed. Review happens 116 * periodically after approval but does not change the original approval date. 117 */ 118 @Child(name = "lastReviewDate", type = { 119 DateType.class }, order = 6, min = 0, max = 1, modifier = false, summary = false) 120 @Description(shortDefinition = "When the evidence was last reviewed", formalDefinition = "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.") 121 protected DateType lastReviewDate; 122 123 /** 124 * The period during which the evidence content was or is planned to be in 125 * active use. 126 */ 127 @Child(name = "effectivePeriod", type = { 128 Period.class }, order = 7, min = 0, max = 1, modifier = false, summary = true) 129 @Description(shortDefinition = "When the evidence is expected to be used", formalDefinition = "The period during which the evidence content was or is planned to be in active use.") 130 protected Period effectivePeriod; 131 132 /** 133 * Descriptive topics related to the content of the Evidence. Topics provide a 134 * high-level categorization grouping types of Evidences that can be useful for 135 * filtering and searching. 136 */ 137 @Child(name = "topic", type = { 138 CodeableConcept.class }, order = 8, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 139 @Description(shortDefinition = "The category of the Evidence, such as Education, Treatment, Assessment, etc.", formalDefinition = "Descriptive topics related to the content of the Evidence. Topics provide a high-level categorization grouping types of Evidences that can be useful for filtering and searching.") 140 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/definition-topic") 141 protected List<CodeableConcept> topic; 142 143 /** 144 * An individiual or organization primarily involved in the creation and 145 * maintenance of the content. 146 */ 147 @Child(name = "author", type = { 148 ContactDetail.class }, order = 9, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 149 @Description(shortDefinition = "Who authored the content", formalDefinition = "An individiual or organization primarily involved in the creation and maintenance of the content.") 150 protected List<ContactDetail> author; 151 152 /** 153 * An individual or organization primarily responsible for internal coherence of 154 * the content. 155 */ 156 @Child(name = "editor", type = { 157 ContactDetail.class }, order = 10, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 158 @Description(shortDefinition = "Who edited the content", formalDefinition = "An individual or organization primarily responsible for internal coherence of the content.") 159 protected List<ContactDetail> editor; 160 161 /** 162 * An individual or organization primarily responsible for review of some aspect 163 * of the content. 164 */ 165 @Child(name = "reviewer", type = { 166 ContactDetail.class }, order = 11, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 167 @Description(shortDefinition = "Who reviewed the content", formalDefinition = "An individual or organization primarily responsible for review of some aspect of the content.") 168 protected List<ContactDetail> reviewer; 169 170 /** 171 * An individual or organization responsible for officially endorsing the 172 * content for use in some setting. 173 */ 174 @Child(name = "endorser", type = { 175 ContactDetail.class }, order = 12, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 176 @Description(shortDefinition = "Who endorsed the content", formalDefinition = "An individual or organization responsible for officially endorsing the content for use in some setting.") 177 protected List<ContactDetail> endorser; 178 179 /** 180 * Related artifacts such as additional documentation, justification, or 181 * bibliographic references. 182 */ 183 @Child(name = "relatedArtifact", type = { 184 RelatedArtifact.class }, order = 13, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = false) 185 @Description(shortDefinition = "Additional documentation, citations, etc.", formalDefinition = "Related artifacts such as additional documentation, justification, or bibliographic references.") 186 protected List<RelatedArtifact> relatedArtifact; 187 188 /** 189 * A reference to a EvidenceVariable resource that defines the population for 190 * the research. 191 */ 192 @Child(name = "exposureBackground", type = { 193 EvidenceVariable.class }, order = 14, min = 1, max = 1, modifier = false, summary = true) 194 @Description(shortDefinition = "What population?", formalDefinition = "A reference to a EvidenceVariable resource that defines the population for the research.") 195 protected Reference exposureBackground; 196 197 /** 198 * The actual object that is the target of the reference (A reference to a 199 * EvidenceVariable resource that defines the population for the research.) 200 */ 201 protected EvidenceVariable exposureBackgroundTarget; 202 203 /** 204 * A reference to a EvidenceVariable resource that defines the exposure for the 205 * research. 206 */ 207 @Child(name = "exposureVariant", type = { 208 EvidenceVariable.class }, order = 15, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = true) 209 @Description(shortDefinition = "What exposure?", formalDefinition = "A reference to a EvidenceVariable resource that defines the exposure for the research.") 210 protected List<Reference> exposureVariant; 211 /** 212 * The actual objects that are the target of the reference (A reference to a 213 * EvidenceVariable resource that defines the exposure for the research.) 214 */ 215 protected List<EvidenceVariable> exposureVariantTarget; 216 217 /** 218 * A reference to a EvidenceVariable resomece that defines the outcome for the 219 * research. 220 */ 221 @Child(name = "outcome", type = { 222 EvidenceVariable.class }, order = 16, min = 0, max = Child.MAX_UNLIMITED, modifier = false, summary = true) 223 @Description(shortDefinition = "What outcome?", formalDefinition = "A reference to a EvidenceVariable resomece that defines the outcome for the research.") 224 protected List<Reference> outcome; 225 /** 226 * The actual objects that are the target of the reference (A reference to a 227 * EvidenceVariable resomece that defines the outcome for the research.) 228 */ 229 protected List<EvidenceVariable> outcomeTarget; 230 231 private static final long serialVersionUID = 137844509L; 232 233 /** 234 * Constructor 235 */ 236 public Evidence() { 237 super(); 238 } 239 240 /** 241 * Constructor 242 */ 243 public Evidence(Enumeration<PublicationStatus> status, Reference exposureBackground) { 244 super(); 245 this.status = status; 246 this.exposureBackground = exposureBackground; 247 } 248 249 /** 250 * @return {@link #url} (An absolute URI that is used to identify this evidence 251 * when it is referenced in a specification, model, design or an 252 * instance; also called its canonical identifier. This SHOULD be 253 * globally unique and SHOULD be a literal address at which at which an 254 * authoritative instance of this evidence is (or will be) published. 255 * This URL can be the target of a canonical reference. It SHALL remain 256 * the same when the evidence is stored on different servers.). This is 257 * the underlying object with id, value and extensions. The accessor 258 * "getUrl" gives direct access to the value 259 */ 260 public UriType getUrlElement() { 261 if (this.url == null) 262 if (Configuration.errorOnAutoCreate()) 263 throw new Error("Attempt to auto-create Evidence.url"); 264 else if (Configuration.doAutoCreate()) 265 this.url = new UriType(); // bb 266 return this.url; 267 } 268 269 public boolean hasUrlElement() { 270 return this.url != null && !this.url.isEmpty(); 271 } 272 273 public boolean hasUrl() { 274 return this.url != null && !this.url.isEmpty(); 275 } 276 277 /** 278 * @param value {@link #url} (An absolute URI that is used to identify this 279 * evidence when it is referenced in a specification, model, design 280 * or an instance; also called its canonical identifier. This 281 * SHOULD be globally unique and SHOULD be a literal address at 282 * which at which an authoritative instance of this evidence is (or 283 * will be) published. This URL can be the target of a canonical 284 * reference. It SHALL remain the same when the evidence is stored 285 * on different servers.). This is the underlying object with id, 286 * value and extensions. The accessor "getUrl" gives direct access 287 * to the value 288 */ 289 public Evidence setUrlElement(UriType value) { 290 this.url = value; 291 return this; 292 } 293 294 /** 295 * @return An absolute URI that is used to identify this evidence when it is 296 * referenced in a specification, model, design or an instance; also 297 * called its canonical identifier. This SHOULD be globally unique and 298 * SHOULD be a literal address at which at which an authoritative 299 * instance of this evidence is (or will be) published. This URL can be 300 * the target of a canonical reference. It SHALL remain the same when 301 * the evidence is stored on different servers. 302 */ 303 public String getUrl() { 304 return this.url == null ? null : this.url.getValue(); 305 } 306 307 /** 308 * @param value An absolute URI that is used to identify this evidence when it 309 * is referenced in a specification, model, design or an instance; 310 * also called its canonical identifier. This SHOULD be globally 311 * unique and SHOULD be a literal address at which at which an 312 * authoritative instance of this evidence is (or will be) 313 * published. This URL can be the target of a canonical reference. 314 * It SHALL remain the same when the evidence is stored on 315 * different servers. 316 */ 317 public Evidence setUrl(String value) { 318 if (Utilities.noString(value)) 319 this.url = null; 320 else { 321 if (this.url == null) 322 this.url = new UriType(); 323 this.url.setValue(value); 324 } 325 return this; 326 } 327 328 /** 329 * @return {@link #identifier} (A formal identifier that is used to identify 330 * this evidence when it is represented in other formats, or referenced 331 * in a specification, model, design or an instance.) 332 */ 333 public List<Identifier> getIdentifier() { 334 if (this.identifier == null) 335 this.identifier = new ArrayList<Identifier>(); 336 return this.identifier; 337 } 338 339 /** 340 * @return Returns a reference to <code>this</code> for easy method chaining 341 */ 342 public Evidence setIdentifier(List<Identifier> theIdentifier) { 343 this.identifier = theIdentifier; 344 return this; 345 } 346 347 public boolean hasIdentifier() { 348 if (this.identifier == null) 349 return false; 350 for (Identifier item : this.identifier) 351 if (!item.isEmpty()) 352 return true; 353 return false; 354 } 355 356 public Identifier addIdentifier() { // 3 357 Identifier t = new Identifier(); 358 if (this.identifier == null) 359 this.identifier = new ArrayList<Identifier>(); 360 this.identifier.add(t); 361 return t; 362 } 363 364 public Evidence addIdentifier(Identifier t) { // 3 365 if (t == null) 366 return this; 367 if (this.identifier == null) 368 this.identifier = new ArrayList<Identifier>(); 369 this.identifier.add(t); 370 return this; 371 } 372 373 /** 374 * @return The first repetition of repeating field {@link #identifier}, creating 375 * it if it does not already exist 376 */ 377 public Identifier getIdentifierFirstRep() { 378 if (getIdentifier().isEmpty()) { 379 addIdentifier(); 380 } 381 return getIdentifier().get(0); 382 } 383 384 /** 385 * @return {@link #version} (The identifier that is used to identify this 386 * version of the evidence when it is referenced in a specification, 387 * model, design or instance. This is an arbitrary value managed by the 388 * evidence author and is not expected to be globally unique. For 389 * example, it might be a timestamp (e.g. yyyymmdd) if a managed version 390 * is not available. There is also no expectation that versions can be 391 * placed in a lexicographical sequence. To provide a version consistent 392 * with the Decision Support Service specification, use the format 393 * Major.Minor.Revision (e.g. 1.0.0). For more information on versioning 394 * knowledge assets, refer to the Decision Support Service 395 * specification. Note that a version is required for non-experimental 396 * active artifacts.). This is the underlying object with id, value and 397 * extensions. The accessor "getVersion" gives direct access to the 398 * value 399 */ 400 public StringType getVersionElement() { 401 if (this.version == null) 402 if (Configuration.errorOnAutoCreate()) 403 throw new Error("Attempt to auto-create Evidence.version"); 404 else if (Configuration.doAutoCreate()) 405 this.version = new StringType(); // bb 406 return this.version; 407 } 408 409 public boolean hasVersionElement() { 410 return this.version != null && !this.version.isEmpty(); 411 } 412 413 public boolean hasVersion() { 414 return this.version != null && !this.version.isEmpty(); 415 } 416 417 /** 418 * @param value {@link #version} (The identifier that is used to identify this 419 * version of the evidence when it is referenced in a 420 * specification, model, design or instance. This is an arbitrary 421 * value managed by the evidence author and is not expected to be 422 * globally unique. For example, it might be a timestamp (e.g. 423 * yyyymmdd) if a managed version is not available. There is also 424 * no expectation that versions can be placed in a lexicographical 425 * sequence. To provide a version consistent with the Decision 426 * Support Service specification, use the format 427 * Major.Minor.Revision (e.g. 1.0.0). For more information on 428 * versioning knowledge assets, refer to the Decision Support 429 * Service specification. Note that a version is required for 430 * non-experimental active artifacts.). This is the underlying 431 * object with id, value and extensions. The accessor "getVersion" 432 * gives direct access to the value 433 */ 434 public Evidence setVersionElement(StringType value) { 435 this.version = value; 436 return this; 437 } 438 439 /** 440 * @return The identifier that is used to identify this version of the evidence 441 * when it is referenced in a specification, model, design or instance. 442 * This is an arbitrary value managed by the evidence author and is not 443 * expected to be globally unique. For example, it might be a timestamp 444 * (e.g. yyyymmdd) if a managed version is not available. There is also 445 * no expectation that versions can be placed in a lexicographical 446 * sequence. To provide a version consistent with the Decision Support 447 * Service specification, use the format Major.Minor.Revision (e.g. 448 * 1.0.0). For more information on versioning knowledge assets, refer to 449 * the Decision Support Service specification. Note that a version is 450 * required for non-experimental active artifacts. 451 */ 452 public String getVersion() { 453 return this.version == null ? null : this.version.getValue(); 454 } 455 456 /** 457 * @param value The identifier that is used to identify this version of the 458 * evidence when it is referenced in a specification, model, design 459 * or instance. This is an arbitrary value managed by the evidence 460 * author and is not expected to be globally unique. For example, 461 * it might be a timestamp (e.g. yyyymmdd) if a managed version is 462 * not available. There is also no expectation that versions can be 463 * placed in a lexicographical sequence. To provide a version 464 * consistent with the Decision Support Service specification, use 465 * the format Major.Minor.Revision (e.g. 1.0.0). For more 466 * information on versioning knowledge assets, refer to the 467 * Decision Support Service specification. Note that a version is 468 * required for non-experimental active artifacts. 469 */ 470 public Evidence setVersion(String value) { 471 if (Utilities.noString(value)) 472 this.version = null; 473 else { 474 if (this.version == null) 475 this.version = new StringType(); 476 this.version.setValue(value); 477 } 478 return this; 479 } 480 481 /** 482 * @return {@link #name} (A natural language name identifying the evidence. This 483 * name should be usable as an identifier for the module by machine 484 * processing applications such as code generation.). This is the 485 * underlying object with id, value and extensions. The accessor 486 * "getName" gives direct access to the value 487 */ 488 public StringType getNameElement() { 489 if (this.name == null) 490 if (Configuration.errorOnAutoCreate()) 491 throw new Error("Attempt to auto-create Evidence.name"); 492 else if (Configuration.doAutoCreate()) 493 this.name = new StringType(); // bb 494 return this.name; 495 } 496 497 public boolean hasNameElement() { 498 return this.name != null && !this.name.isEmpty(); 499 } 500 501 public boolean hasName() { 502 return this.name != null && !this.name.isEmpty(); 503 } 504 505 /** 506 * @param value {@link #name} (A natural language name identifying the evidence. 507 * This name should be usable as an identifier for the module by 508 * machine processing applications such as code generation.). This 509 * is the underlying object with id, value and extensions. The 510 * accessor "getName" gives direct access to the value 511 */ 512 public Evidence setNameElement(StringType value) { 513 this.name = value; 514 return this; 515 } 516 517 /** 518 * @return A natural language name identifying the evidence. This name should be 519 * usable as an identifier for the module by machine processing 520 * applications such as code generation. 521 */ 522 public String getName() { 523 return this.name == null ? null : this.name.getValue(); 524 } 525 526 /** 527 * @param value A natural language name identifying the evidence. This name 528 * should be usable as an identifier for the module by machine 529 * processing applications such as code generation. 530 */ 531 public Evidence setName(String value) { 532 if (Utilities.noString(value)) 533 this.name = null; 534 else { 535 if (this.name == null) 536 this.name = new StringType(); 537 this.name.setValue(value); 538 } 539 return this; 540 } 541 542 /** 543 * @return {@link #title} (A short, descriptive, user-friendly title for the 544 * evidence.). This is the underlying object with id, value and 545 * extensions. The accessor "getTitle" gives direct access to the value 546 */ 547 public StringType getTitleElement() { 548 if (this.title == null) 549 if (Configuration.errorOnAutoCreate()) 550 throw new Error("Attempt to auto-create Evidence.title"); 551 else if (Configuration.doAutoCreate()) 552 this.title = new StringType(); // bb 553 return this.title; 554 } 555 556 public boolean hasTitleElement() { 557 return this.title != null && !this.title.isEmpty(); 558 } 559 560 public boolean hasTitle() { 561 return this.title != null && !this.title.isEmpty(); 562 } 563 564 /** 565 * @param value {@link #title} (A short, descriptive, user-friendly title for 566 * the evidence.). This is the underlying object with id, value and 567 * extensions. The accessor "getTitle" gives direct access to the 568 * value 569 */ 570 public Evidence setTitleElement(StringType value) { 571 this.title = value; 572 return this; 573 } 574 575 /** 576 * @return A short, descriptive, user-friendly title for the evidence. 577 */ 578 public String getTitle() { 579 return this.title == null ? null : this.title.getValue(); 580 } 581 582 /** 583 * @param value A short, descriptive, user-friendly title for the evidence. 584 */ 585 public Evidence setTitle(String value) { 586 if (Utilities.noString(value)) 587 this.title = null; 588 else { 589 if (this.title == null) 590 this.title = new StringType(); 591 this.title.setValue(value); 592 } 593 return this; 594 } 595 596 /** 597 * @return {@link #shortTitle} (The short title provides an alternate title for 598 * use in informal descriptive contexts where the full, formal title is 599 * not necessary.). This is the underlying object with id, value and 600 * extensions. The accessor "getShortTitle" gives direct access to the 601 * value 602 */ 603 public StringType getShortTitleElement() { 604 if (this.shortTitle == null) 605 if (Configuration.errorOnAutoCreate()) 606 throw new Error("Attempt to auto-create Evidence.shortTitle"); 607 else if (Configuration.doAutoCreate()) 608 this.shortTitle = new StringType(); // bb 609 return this.shortTitle; 610 } 611 612 public boolean hasShortTitleElement() { 613 return this.shortTitle != null && !this.shortTitle.isEmpty(); 614 } 615 616 public boolean hasShortTitle() { 617 return this.shortTitle != null && !this.shortTitle.isEmpty(); 618 } 619 620 /** 621 * @param value {@link #shortTitle} (The short title provides an alternate title 622 * for use in informal descriptive contexts where the full, formal 623 * title is not necessary.). This is the underlying object with id, 624 * value and extensions. The accessor "getShortTitle" gives direct 625 * access to the value 626 */ 627 public Evidence setShortTitleElement(StringType value) { 628 this.shortTitle = value; 629 return this; 630 } 631 632 /** 633 * @return The short title provides an alternate title for use in informal 634 * descriptive contexts where the full, formal title is not necessary. 635 */ 636 public String getShortTitle() { 637 return this.shortTitle == null ? null : this.shortTitle.getValue(); 638 } 639 640 /** 641 * @param value The short title provides an alternate title for use in informal 642 * descriptive contexts where the full, formal title is not 643 * necessary. 644 */ 645 public Evidence setShortTitle(String value) { 646 if (Utilities.noString(value)) 647 this.shortTitle = null; 648 else { 649 if (this.shortTitle == null) 650 this.shortTitle = new StringType(); 651 this.shortTitle.setValue(value); 652 } 653 return this; 654 } 655 656 /** 657 * @return {@link #subtitle} (An explanatory or alternate title for the Evidence 658 * giving additional information about its content.). This is the 659 * underlying object with id, value and extensions. The accessor 660 * "getSubtitle" gives direct access to the value 661 */ 662 public StringType getSubtitleElement() { 663 if (this.subtitle == null) 664 if (Configuration.errorOnAutoCreate()) 665 throw new Error("Attempt to auto-create Evidence.subtitle"); 666 else if (Configuration.doAutoCreate()) 667 this.subtitle = new StringType(); // bb 668 return this.subtitle; 669 } 670 671 public boolean hasSubtitleElement() { 672 return this.subtitle != null && !this.subtitle.isEmpty(); 673 } 674 675 public boolean hasSubtitle() { 676 return this.subtitle != null && !this.subtitle.isEmpty(); 677 } 678 679 /** 680 * @param value {@link #subtitle} (An explanatory or alternate title for the 681 * Evidence giving additional information about its content.). This 682 * is the underlying object with id, value and extensions. The 683 * accessor "getSubtitle" gives direct access to the value 684 */ 685 public Evidence setSubtitleElement(StringType value) { 686 this.subtitle = value; 687 return this; 688 } 689 690 /** 691 * @return An explanatory or alternate title for the Evidence giving additional 692 * information about its content. 693 */ 694 public String getSubtitle() { 695 return this.subtitle == null ? null : this.subtitle.getValue(); 696 } 697 698 /** 699 * @param value An explanatory or alternate title for the Evidence giving 700 * additional information about its content. 701 */ 702 public Evidence setSubtitle(String value) { 703 if (Utilities.noString(value)) 704 this.subtitle = null; 705 else { 706 if (this.subtitle == null) 707 this.subtitle = new StringType(); 708 this.subtitle.setValue(value); 709 } 710 return this; 711 } 712 713 /** 714 * @return {@link #status} (The status of this evidence. Enables tracking the 715 * life-cycle of the content.). This is the underlying object with id, 716 * value and extensions. The accessor "getStatus" gives direct access to 717 * the value 718 */ 719 public Enumeration<PublicationStatus> getStatusElement() { 720 if (this.status == null) 721 if (Configuration.errorOnAutoCreate()) 722 throw new Error("Attempt to auto-create Evidence.status"); 723 else if (Configuration.doAutoCreate()) 724 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); // bb 725 return this.status; 726 } 727 728 public boolean hasStatusElement() { 729 return this.status != null && !this.status.isEmpty(); 730 } 731 732 public boolean hasStatus() { 733 return this.status != null && !this.status.isEmpty(); 734 } 735 736 /** 737 * @param value {@link #status} (The status of this evidence. Enables tracking 738 * the life-cycle of the content.). This is the underlying object 739 * with id, value and extensions. The accessor "getStatus" gives 740 * direct access to the value 741 */ 742 public Evidence setStatusElement(Enumeration<PublicationStatus> value) { 743 this.status = value; 744 return this; 745 } 746 747 /** 748 * @return The status of this evidence. Enables tracking the life-cycle of the 749 * content. 750 */ 751 public PublicationStatus getStatus() { 752 return this.status == null ? null : this.status.getValue(); 753 } 754 755 /** 756 * @param value The status of this evidence. Enables tracking the life-cycle of 757 * the content. 758 */ 759 public Evidence setStatus(PublicationStatus value) { 760 if (this.status == null) 761 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); 762 this.status.setValue(value); 763 return this; 764 } 765 766 /** 767 * @return {@link #date} (The date (and optionally time) when the evidence was 768 * published. The date must change when the business version changes and 769 * it must change if the status code changes. In addition, it should 770 * change when the substantive content of the evidence changes.). This 771 * is the underlying object with id, value and extensions. The accessor 772 * "getDate" gives direct access to the value 773 */ 774 public DateTimeType getDateElement() { 775 if (this.date == null) 776 if (Configuration.errorOnAutoCreate()) 777 throw new Error("Attempt to auto-create Evidence.date"); 778 else if (Configuration.doAutoCreate()) 779 this.date = new DateTimeType(); // bb 780 return this.date; 781 } 782 783 public boolean hasDateElement() { 784 return this.date != null && !this.date.isEmpty(); 785 } 786 787 public boolean hasDate() { 788 return this.date != null && !this.date.isEmpty(); 789 } 790 791 /** 792 * @param value {@link #date} (The date (and optionally time) when the evidence 793 * was published. The date must change when the business version 794 * changes and it must change if the status code changes. In 795 * addition, it should change when the substantive content of the 796 * evidence changes.). This is the underlying object with id, value 797 * and extensions. The accessor "getDate" gives direct access to 798 * the value 799 */ 800 public Evidence setDateElement(DateTimeType value) { 801 this.date = value; 802 return this; 803 } 804 805 /** 806 * @return The date (and optionally time) when the evidence was published. The 807 * date must change when the business version changes and it must change 808 * if the status code changes. In addition, it should change when the 809 * substantive content of the evidence changes. 810 */ 811 public Date getDate() { 812 return this.date == null ? null : this.date.getValue(); 813 } 814 815 /** 816 * @param value The date (and optionally time) when the evidence was published. 817 * The date must change when the business version changes and it 818 * must change if the status code changes. In addition, it should 819 * change when the substantive content of the evidence changes. 820 */ 821 public Evidence setDate(Date value) { 822 if (value == null) 823 this.date = null; 824 else { 825 if (this.date == null) 826 this.date = new DateTimeType(); 827 this.date.setValue(value); 828 } 829 return this; 830 } 831 832 /** 833 * @return {@link #publisher} (The name of the organization or individual that 834 * published the evidence.). This is the underlying object with id, 835 * value and extensions. The accessor "getPublisher" gives direct access 836 * to the value 837 */ 838 public StringType getPublisherElement() { 839 if (this.publisher == null) 840 if (Configuration.errorOnAutoCreate()) 841 throw new Error("Attempt to auto-create Evidence.publisher"); 842 else if (Configuration.doAutoCreate()) 843 this.publisher = new StringType(); // bb 844 return this.publisher; 845 } 846 847 public boolean hasPublisherElement() { 848 return this.publisher != null && !this.publisher.isEmpty(); 849 } 850 851 public boolean hasPublisher() { 852 return this.publisher != null && !this.publisher.isEmpty(); 853 } 854 855 /** 856 * @param value {@link #publisher} (The name of the organization or individual 857 * that published the evidence.). This is the underlying object 858 * with id, value and extensions. The accessor "getPublisher" gives 859 * direct access to the value 860 */ 861 public Evidence setPublisherElement(StringType value) { 862 this.publisher = value; 863 return this; 864 } 865 866 /** 867 * @return The name of the organization or individual that published the 868 * evidence. 869 */ 870 public String getPublisher() { 871 return this.publisher == null ? null : this.publisher.getValue(); 872 } 873 874 /** 875 * @param value The name of the organization or individual that published the 876 * evidence. 877 */ 878 public Evidence setPublisher(String value) { 879 if (Utilities.noString(value)) 880 this.publisher = null; 881 else { 882 if (this.publisher == null) 883 this.publisher = new StringType(); 884 this.publisher.setValue(value); 885 } 886 return this; 887 } 888 889 /** 890 * @return {@link #contact} (Contact details to assist a user in finding and 891 * communicating with the publisher.) 892 */ 893 public List<ContactDetail> getContact() { 894 if (this.contact == null) 895 this.contact = new ArrayList<ContactDetail>(); 896 return this.contact; 897 } 898 899 /** 900 * @return Returns a reference to <code>this</code> for easy method chaining 901 */ 902 public Evidence setContact(List<ContactDetail> theContact) { 903 this.contact = theContact; 904 return this; 905 } 906 907 public boolean hasContact() { 908 if (this.contact == null) 909 return false; 910 for (ContactDetail item : this.contact) 911 if (!item.isEmpty()) 912 return true; 913 return false; 914 } 915 916 public ContactDetail addContact() { // 3 917 ContactDetail t = new ContactDetail(); 918 if (this.contact == null) 919 this.contact = new ArrayList<ContactDetail>(); 920 this.contact.add(t); 921 return t; 922 } 923 924 public Evidence addContact(ContactDetail t) { // 3 925 if (t == null) 926 return this; 927 if (this.contact == null) 928 this.contact = new ArrayList<ContactDetail>(); 929 this.contact.add(t); 930 return this; 931 } 932 933 /** 934 * @return The first repetition of repeating field {@link #contact}, creating it 935 * if it does not already exist 936 */ 937 public ContactDetail getContactFirstRep() { 938 if (getContact().isEmpty()) { 939 addContact(); 940 } 941 return getContact().get(0); 942 } 943 944 /** 945 * @return {@link #description} (A free text natural language description of the 946 * evidence from a consumer's perspective.). This is the underlying 947 * object with id, value and extensions. The accessor "getDescription" 948 * gives direct access to the value 949 */ 950 public MarkdownType getDescriptionElement() { 951 if (this.description == null) 952 if (Configuration.errorOnAutoCreate()) 953 throw new Error("Attempt to auto-create Evidence.description"); 954 else if (Configuration.doAutoCreate()) 955 this.description = new MarkdownType(); // bb 956 return this.description; 957 } 958 959 public boolean hasDescriptionElement() { 960 return this.description != null && !this.description.isEmpty(); 961 } 962 963 public boolean hasDescription() { 964 return this.description != null && !this.description.isEmpty(); 965 } 966 967 /** 968 * @param value {@link #description} (A free text natural language description 969 * of the evidence from a consumer's perspective.). This is the 970 * underlying object with id, value and extensions. The accessor 971 * "getDescription" gives direct access to the value 972 */ 973 public Evidence setDescriptionElement(MarkdownType value) { 974 this.description = value; 975 return this; 976 } 977 978 /** 979 * @return A free text natural language description of the evidence from a 980 * consumer's perspective. 981 */ 982 public String getDescription() { 983 return this.description == null ? null : this.description.getValue(); 984 } 985 986 /** 987 * @param value A free text natural language description of the evidence from a 988 * consumer's perspective. 989 */ 990 public Evidence setDescription(String value) { 991 if (value == null) 992 this.description = null; 993 else { 994 if (this.description == null) 995 this.description = new MarkdownType(); 996 this.description.setValue(value); 997 } 998 return this; 999 } 1000 1001 /** 1002 * @return {@link #note} (A human-readable string to clarify or explain concepts 1003 * about the resource.) 1004 */ 1005 public List<Annotation> getNote() { 1006 if (this.note == null) 1007 this.note = new ArrayList<Annotation>(); 1008 return this.note; 1009 } 1010 1011 /** 1012 * @return Returns a reference to <code>this</code> for easy method chaining 1013 */ 1014 public Evidence setNote(List<Annotation> theNote) { 1015 this.note = theNote; 1016 return this; 1017 } 1018 1019 public boolean hasNote() { 1020 if (this.note == null) 1021 return false; 1022 for (Annotation item : this.note) 1023 if (!item.isEmpty()) 1024 return true; 1025 return false; 1026 } 1027 1028 public Annotation addNote() { // 3 1029 Annotation t = new Annotation(); 1030 if (this.note == null) 1031 this.note = new ArrayList<Annotation>(); 1032 this.note.add(t); 1033 return t; 1034 } 1035 1036 public Evidence addNote(Annotation t) { // 3 1037 if (t == null) 1038 return this; 1039 if (this.note == null) 1040 this.note = new ArrayList<Annotation>(); 1041 this.note.add(t); 1042 return this; 1043 } 1044 1045 /** 1046 * @return The first repetition of repeating field {@link #note}, creating it if 1047 * it does not already exist 1048 */ 1049 public Annotation getNoteFirstRep() { 1050 if (getNote().isEmpty()) { 1051 addNote(); 1052 } 1053 return getNote().get(0); 1054 } 1055 1056 /** 1057 * @return {@link #useContext} (The content was developed with a focus and 1058 * intent of supporting the contexts that are listed. These contexts may 1059 * be general categories (gender, age, ...) or may be references to 1060 * specific programs (insurance plans, studies, ...) and may be used to 1061 * assist with indexing and searching for appropriate evidence 1062 * instances.) 1063 */ 1064 public List<UsageContext> getUseContext() { 1065 if (this.useContext == null) 1066 this.useContext = new ArrayList<UsageContext>(); 1067 return this.useContext; 1068 } 1069 1070 /** 1071 * @return Returns a reference to <code>this</code> for easy method chaining 1072 */ 1073 public Evidence setUseContext(List<UsageContext> theUseContext) { 1074 this.useContext = theUseContext; 1075 return this; 1076 } 1077 1078 public boolean hasUseContext() { 1079 if (this.useContext == null) 1080 return false; 1081 for (UsageContext item : this.useContext) 1082 if (!item.isEmpty()) 1083 return true; 1084 return false; 1085 } 1086 1087 public UsageContext addUseContext() { // 3 1088 UsageContext t = new UsageContext(); 1089 if (this.useContext == null) 1090 this.useContext = new ArrayList<UsageContext>(); 1091 this.useContext.add(t); 1092 return t; 1093 } 1094 1095 public Evidence addUseContext(UsageContext t) { // 3 1096 if (t == null) 1097 return this; 1098 if (this.useContext == null) 1099 this.useContext = new ArrayList<UsageContext>(); 1100 this.useContext.add(t); 1101 return this; 1102 } 1103 1104 /** 1105 * @return The first repetition of repeating field {@link #useContext}, creating 1106 * it if it does not already exist 1107 */ 1108 public UsageContext getUseContextFirstRep() { 1109 if (getUseContext().isEmpty()) { 1110 addUseContext(); 1111 } 1112 return getUseContext().get(0); 1113 } 1114 1115 /** 1116 * @return {@link #jurisdiction} (A legal or geographic region in which the 1117 * evidence is intended to be used.) 1118 */ 1119 public List<CodeableConcept> getJurisdiction() { 1120 if (this.jurisdiction == null) 1121 this.jurisdiction = new ArrayList<CodeableConcept>(); 1122 return this.jurisdiction; 1123 } 1124 1125 /** 1126 * @return Returns a reference to <code>this</code> for easy method chaining 1127 */ 1128 public Evidence setJurisdiction(List<CodeableConcept> theJurisdiction) { 1129 this.jurisdiction = theJurisdiction; 1130 return this; 1131 } 1132 1133 public boolean hasJurisdiction() { 1134 if (this.jurisdiction == null) 1135 return false; 1136 for (CodeableConcept item : this.jurisdiction) 1137 if (!item.isEmpty()) 1138 return true; 1139 return false; 1140 } 1141 1142 public CodeableConcept addJurisdiction() { // 3 1143 CodeableConcept t = new CodeableConcept(); 1144 if (this.jurisdiction == null) 1145 this.jurisdiction = new ArrayList<CodeableConcept>(); 1146 this.jurisdiction.add(t); 1147 return t; 1148 } 1149 1150 public Evidence addJurisdiction(CodeableConcept t) { // 3 1151 if (t == null) 1152 return this; 1153 if (this.jurisdiction == null) 1154 this.jurisdiction = new ArrayList<CodeableConcept>(); 1155 this.jurisdiction.add(t); 1156 return this; 1157 } 1158 1159 /** 1160 * @return The first repetition of repeating field {@link #jurisdiction}, 1161 * creating it if it does not already exist 1162 */ 1163 public CodeableConcept getJurisdictionFirstRep() { 1164 if (getJurisdiction().isEmpty()) { 1165 addJurisdiction(); 1166 } 1167 return getJurisdiction().get(0); 1168 } 1169 1170 /** 1171 * @return {@link #copyright} (A copyright statement relating to the evidence 1172 * and/or its contents. Copyright statements are generally legal 1173 * restrictions on the use and publishing of the evidence.). This is the 1174 * underlying object with id, value and extensions. The accessor 1175 * "getCopyright" gives direct access to the value 1176 */ 1177 public MarkdownType getCopyrightElement() { 1178 if (this.copyright == null) 1179 if (Configuration.errorOnAutoCreate()) 1180 throw new Error("Attempt to auto-create Evidence.copyright"); 1181 else if (Configuration.doAutoCreate()) 1182 this.copyright = new MarkdownType(); // bb 1183 return this.copyright; 1184 } 1185 1186 public boolean hasCopyrightElement() { 1187 return this.copyright != null && !this.copyright.isEmpty(); 1188 } 1189 1190 public boolean hasCopyright() { 1191 return this.copyright != null && !this.copyright.isEmpty(); 1192 } 1193 1194 /** 1195 * @param value {@link #copyright} (A copyright statement relating to the 1196 * evidence and/or its contents. Copyright statements are generally 1197 * legal restrictions on the use and publishing of the evidence.). 1198 * This is the underlying object with id, value and extensions. The 1199 * accessor "getCopyright" gives direct access to the value 1200 */ 1201 public Evidence setCopyrightElement(MarkdownType value) { 1202 this.copyright = value; 1203 return this; 1204 } 1205 1206 /** 1207 * @return A copyright statement relating to the evidence and/or its contents. 1208 * Copyright statements are generally legal restrictions on the use and 1209 * publishing of the evidence. 1210 */ 1211 public String getCopyright() { 1212 return this.copyright == null ? null : this.copyright.getValue(); 1213 } 1214 1215 /** 1216 * @param value A copyright statement relating to the evidence and/or its 1217 * contents. Copyright statements are generally legal restrictions 1218 * on the use and publishing of the evidence. 1219 */ 1220 public Evidence setCopyright(String value) { 1221 if (value == null) 1222 this.copyright = null; 1223 else { 1224 if (this.copyright == null) 1225 this.copyright = new MarkdownType(); 1226 this.copyright.setValue(value); 1227 } 1228 return this; 1229 } 1230 1231 /** 1232 * @return {@link #approvalDate} (The date on which the resource content was 1233 * approved by the publisher. Approval happens once when the content is 1234 * officially approved for usage.). This is the underlying object with 1235 * id, value and extensions. The accessor "getApprovalDate" gives direct 1236 * access to the value 1237 */ 1238 public DateType getApprovalDateElement() { 1239 if (this.approvalDate == null) 1240 if (Configuration.errorOnAutoCreate()) 1241 throw new Error("Attempt to auto-create Evidence.approvalDate"); 1242 else if (Configuration.doAutoCreate()) 1243 this.approvalDate = new DateType(); // bb 1244 return this.approvalDate; 1245 } 1246 1247 public boolean hasApprovalDateElement() { 1248 return this.approvalDate != null && !this.approvalDate.isEmpty(); 1249 } 1250 1251 public boolean hasApprovalDate() { 1252 return this.approvalDate != null && !this.approvalDate.isEmpty(); 1253 } 1254 1255 /** 1256 * @param value {@link #approvalDate} (The date on which the resource content 1257 * was approved by the publisher. Approval happens once when the 1258 * content is officially approved for usage.). This is the 1259 * underlying object with id, value and extensions. The accessor 1260 * "getApprovalDate" gives direct access to the value 1261 */ 1262 public Evidence setApprovalDateElement(DateType value) { 1263 this.approvalDate = value; 1264 return this; 1265 } 1266 1267 /** 1268 * @return The date on which the resource content was approved by the publisher. 1269 * Approval happens once when the content is officially approved for 1270 * usage. 1271 */ 1272 public Date getApprovalDate() { 1273 return this.approvalDate == null ? null : this.approvalDate.getValue(); 1274 } 1275 1276 /** 1277 * @param value The date on which the resource content was approved by the 1278 * publisher. Approval happens once when the content is officially 1279 * approved for usage. 1280 */ 1281 public Evidence setApprovalDate(Date value) { 1282 if (value == null) 1283 this.approvalDate = null; 1284 else { 1285 if (this.approvalDate == null) 1286 this.approvalDate = new DateType(); 1287 this.approvalDate.setValue(value); 1288 } 1289 return this; 1290 } 1291 1292 /** 1293 * @return {@link #lastReviewDate} (The date on which the resource content was 1294 * last reviewed. Review happens periodically after approval but does 1295 * not change the original approval date.). This is the underlying 1296 * object with id, value and extensions. The accessor 1297 * "getLastReviewDate" gives direct access to the value 1298 */ 1299 public DateType getLastReviewDateElement() { 1300 if (this.lastReviewDate == null) 1301 if (Configuration.errorOnAutoCreate()) 1302 throw new Error("Attempt to auto-create Evidence.lastReviewDate"); 1303 else if (Configuration.doAutoCreate()) 1304 this.lastReviewDate = new DateType(); // bb 1305 return this.lastReviewDate; 1306 } 1307 1308 public boolean hasLastReviewDateElement() { 1309 return this.lastReviewDate != null && !this.lastReviewDate.isEmpty(); 1310 } 1311 1312 public boolean hasLastReviewDate() { 1313 return this.lastReviewDate != null && !this.lastReviewDate.isEmpty(); 1314 } 1315 1316 /** 1317 * @param value {@link #lastReviewDate} (The date on which the resource content 1318 * was last reviewed. Review happens periodically after approval 1319 * but does not change the original approval date.). This is the 1320 * underlying object with id, value and extensions. The accessor 1321 * "getLastReviewDate" gives direct access to the value 1322 */ 1323 public Evidence setLastReviewDateElement(DateType value) { 1324 this.lastReviewDate = value; 1325 return this; 1326 } 1327 1328 /** 1329 * @return The date on which the resource content was last reviewed. Review 1330 * happens periodically after approval but does not change the original 1331 * approval date. 1332 */ 1333 public Date getLastReviewDate() { 1334 return this.lastReviewDate == null ? null : this.lastReviewDate.getValue(); 1335 } 1336 1337 /** 1338 * @param value The date on which the resource content was last reviewed. Review 1339 * happens periodically after approval but does not change the 1340 * original approval date. 1341 */ 1342 public Evidence setLastReviewDate(Date value) { 1343 if (value == null) 1344 this.lastReviewDate = null; 1345 else { 1346 if (this.lastReviewDate == null) 1347 this.lastReviewDate = new DateType(); 1348 this.lastReviewDate.setValue(value); 1349 } 1350 return this; 1351 } 1352 1353 /** 1354 * @return {@link #effectivePeriod} (The period during which the evidence 1355 * content was or is planned to be in active use.) 1356 */ 1357 public Period getEffectivePeriod() { 1358 if (this.effectivePeriod == null) 1359 if (Configuration.errorOnAutoCreate()) 1360 throw new Error("Attempt to auto-create Evidence.effectivePeriod"); 1361 else if (Configuration.doAutoCreate()) 1362 this.effectivePeriod = new Period(); // cc 1363 return this.effectivePeriod; 1364 } 1365 1366 public boolean hasEffectivePeriod() { 1367 return this.effectivePeriod != null && !this.effectivePeriod.isEmpty(); 1368 } 1369 1370 /** 1371 * @param value {@link #effectivePeriod} (The period during which the evidence 1372 * content was or is planned to be in active use.) 1373 */ 1374 public Evidence setEffectivePeriod(Period value) { 1375 this.effectivePeriod = value; 1376 return this; 1377 } 1378 1379 /** 1380 * @return {@link #topic} (Descriptive topics related to the content of the 1381 * Evidence. Topics provide a high-level categorization grouping types 1382 * of Evidences that can be useful for filtering and searching.) 1383 */ 1384 public List<CodeableConcept> getTopic() { 1385 if (this.topic == null) 1386 this.topic = new ArrayList<CodeableConcept>(); 1387 return this.topic; 1388 } 1389 1390 /** 1391 * @return Returns a reference to <code>this</code> for easy method chaining 1392 */ 1393 public Evidence setTopic(List<CodeableConcept> theTopic) { 1394 this.topic = theTopic; 1395 return this; 1396 } 1397 1398 public boolean hasTopic() { 1399 if (this.topic == null) 1400 return false; 1401 for (CodeableConcept item : this.topic) 1402 if (!item.isEmpty()) 1403 return true; 1404 return false; 1405 } 1406 1407 public CodeableConcept addTopic() { // 3 1408 CodeableConcept t = new CodeableConcept(); 1409 if (this.topic == null) 1410 this.topic = new ArrayList<CodeableConcept>(); 1411 this.topic.add(t); 1412 return t; 1413 } 1414 1415 public Evidence addTopic(CodeableConcept t) { // 3 1416 if (t == null) 1417 return this; 1418 if (this.topic == null) 1419 this.topic = new ArrayList<CodeableConcept>(); 1420 this.topic.add(t); 1421 return this; 1422 } 1423 1424 /** 1425 * @return The first repetition of repeating field {@link #topic}, creating it 1426 * if it does not already exist 1427 */ 1428 public CodeableConcept getTopicFirstRep() { 1429 if (getTopic().isEmpty()) { 1430 addTopic(); 1431 } 1432 return getTopic().get(0); 1433 } 1434 1435 /** 1436 * @return {@link #author} (An individiual or organization primarily involved in 1437 * the creation and maintenance of the content.) 1438 */ 1439 public List<ContactDetail> getAuthor() { 1440 if (this.author == null) 1441 this.author = new ArrayList<ContactDetail>(); 1442 return this.author; 1443 } 1444 1445 /** 1446 * @return Returns a reference to <code>this</code> for easy method chaining 1447 */ 1448 public Evidence setAuthor(List<ContactDetail> theAuthor) { 1449 this.author = theAuthor; 1450 return this; 1451 } 1452 1453 public boolean hasAuthor() { 1454 if (this.author == null) 1455 return false; 1456 for (ContactDetail item : this.author) 1457 if (!item.isEmpty()) 1458 return true; 1459 return false; 1460 } 1461 1462 public ContactDetail addAuthor() { // 3 1463 ContactDetail t = new ContactDetail(); 1464 if (this.author == null) 1465 this.author = new ArrayList<ContactDetail>(); 1466 this.author.add(t); 1467 return t; 1468 } 1469 1470 public Evidence addAuthor(ContactDetail t) { // 3 1471 if (t == null) 1472 return this; 1473 if (this.author == null) 1474 this.author = new ArrayList<ContactDetail>(); 1475 this.author.add(t); 1476 return this; 1477 } 1478 1479 /** 1480 * @return The first repetition of repeating field {@link #author}, creating it 1481 * if it does not already exist 1482 */ 1483 public ContactDetail getAuthorFirstRep() { 1484 if (getAuthor().isEmpty()) { 1485 addAuthor(); 1486 } 1487 return getAuthor().get(0); 1488 } 1489 1490 /** 1491 * @return {@link #editor} (An individual or organization primarily responsible 1492 * for internal coherence of the content.) 1493 */ 1494 public List<ContactDetail> getEditor() { 1495 if (this.editor == null) 1496 this.editor = new ArrayList<ContactDetail>(); 1497 return this.editor; 1498 } 1499 1500 /** 1501 * @return Returns a reference to <code>this</code> for easy method chaining 1502 */ 1503 public Evidence setEditor(List<ContactDetail> theEditor) { 1504 this.editor = theEditor; 1505 return this; 1506 } 1507 1508 public boolean hasEditor() { 1509 if (this.editor == null) 1510 return false; 1511 for (ContactDetail item : this.editor) 1512 if (!item.isEmpty()) 1513 return true; 1514 return false; 1515 } 1516 1517 public ContactDetail addEditor() { // 3 1518 ContactDetail t = new ContactDetail(); 1519 if (this.editor == null) 1520 this.editor = new ArrayList<ContactDetail>(); 1521 this.editor.add(t); 1522 return t; 1523 } 1524 1525 public Evidence addEditor(ContactDetail t) { // 3 1526 if (t == null) 1527 return this; 1528 if (this.editor == null) 1529 this.editor = new ArrayList<ContactDetail>(); 1530 this.editor.add(t); 1531 return this; 1532 } 1533 1534 /** 1535 * @return The first repetition of repeating field {@link #editor}, creating it 1536 * if it does not already exist 1537 */ 1538 public ContactDetail getEditorFirstRep() { 1539 if (getEditor().isEmpty()) { 1540 addEditor(); 1541 } 1542 return getEditor().get(0); 1543 } 1544 1545 /** 1546 * @return {@link #reviewer} (An individual or organization primarily 1547 * responsible for review of some aspect of the content.) 1548 */ 1549 public List<ContactDetail> getReviewer() { 1550 if (this.reviewer == null) 1551 this.reviewer = new ArrayList<ContactDetail>(); 1552 return this.reviewer; 1553 } 1554 1555 /** 1556 * @return Returns a reference to <code>this</code> for easy method chaining 1557 */ 1558 public Evidence setReviewer(List<ContactDetail> theReviewer) { 1559 this.reviewer = theReviewer; 1560 return this; 1561 } 1562 1563 public boolean hasReviewer() { 1564 if (this.reviewer == null) 1565 return false; 1566 for (ContactDetail item : this.reviewer) 1567 if (!item.isEmpty()) 1568 return true; 1569 return false; 1570 } 1571 1572 public ContactDetail addReviewer() { // 3 1573 ContactDetail t = new ContactDetail(); 1574 if (this.reviewer == null) 1575 this.reviewer = new ArrayList<ContactDetail>(); 1576 this.reviewer.add(t); 1577 return t; 1578 } 1579 1580 public Evidence addReviewer(ContactDetail t) { // 3 1581 if (t == null) 1582 return this; 1583 if (this.reviewer == null) 1584 this.reviewer = new ArrayList<ContactDetail>(); 1585 this.reviewer.add(t); 1586 return this; 1587 } 1588 1589 /** 1590 * @return The first repetition of repeating field {@link #reviewer}, creating 1591 * it if it does not already exist 1592 */ 1593 public ContactDetail getReviewerFirstRep() { 1594 if (getReviewer().isEmpty()) { 1595 addReviewer(); 1596 } 1597 return getReviewer().get(0); 1598 } 1599 1600 /** 1601 * @return {@link #endorser} (An individual or organization responsible for 1602 * officially endorsing the content for use in some setting.) 1603 */ 1604 public List<ContactDetail> getEndorser() { 1605 if (this.endorser == null) 1606 this.endorser = new ArrayList<ContactDetail>(); 1607 return this.endorser; 1608 } 1609 1610 /** 1611 * @return Returns a reference to <code>this</code> for easy method chaining 1612 */ 1613 public Evidence setEndorser(List<ContactDetail> theEndorser) { 1614 this.endorser = theEndorser; 1615 return this; 1616 } 1617 1618 public boolean hasEndorser() { 1619 if (this.endorser == null) 1620 return false; 1621 for (ContactDetail item : this.endorser) 1622 if (!item.isEmpty()) 1623 return true; 1624 return false; 1625 } 1626 1627 public ContactDetail addEndorser() { // 3 1628 ContactDetail t = new ContactDetail(); 1629 if (this.endorser == null) 1630 this.endorser = new ArrayList<ContactDetail>(); 1631 this.endorser.add(t); 1632 return t; 1633 } 1634 1635 public Evidence addEndorser(ContactDetail t) { // 3 1636 if (t == null) 1637 return this; 1638 if (this.endorser == null) 1639 this.endorser = new ArrayList<ContactDetail>(); 1640 this.endorser.add(t); 1641 return this; 1642 } 1643 1644 /** 1645 * @return The first repetition of repeating field {@link #endorser}, creating 1646 * it if it does not already exist 1647 */ 1648 public ContactDetail getEndorserFirstRep() { 1649 if (getEndorser().isEmpty()) { 1650 addEndorser(); 1651 } 1652 return getEndorser().get(0); 1653 } 1654 1655 /** 1656 * @return {@link #relatedArtifact} (Related artifacts such as additional 1657 * documentation, justification, or bibliographic references.) 1658 */ 1659 public List<RelatedArtifact> getRelatedArtifact() { 1660 if (this.relatedArtifact == null) 1661 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 1662 return this.relatedArtifact; 1663 } 1664 1665 /** 1666 * @return Returns a reference to <code>this</code> for easy method chaining 1667 */ 1668 public Evidence setRelatedArtifact(List<RelatedArtifact> theRelatedArtifact) { 1669 this.relatedArtifact = theRelatedArtifact; 1670 return this; 1671 } 1672 1673 public boolean hasRelatedArtifact() { 1674 if (this.relatedArtifact == null) 1675 return false; 1676 for (RelatedArtifact item : this.relatedArtifact) 1677 if (!item.isEmpty()) 1678 return true; 1679 return false; 1680 } 1681 1682 public RelatedArtifact addRelatedArtifact() { // 3 1683 RelatedArtifact t = new RelatedArtifact(); 1684 if (this.relatedArtifact == null) 1685 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 1686 this.relatedArtifact.add(t); 1687 return t; 1688 } 1689 1690 public Evidence addRelatedArtifact(RelatedArtifact t) { // 3 1691 if (t == null) 1692 return this; 1693 if (this.relatedArtifact == null) 1694 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 1695 this.relatedArtifact.add(t); 1696 return this; 1697 } 1698 1699 /** 1700 * @return The first repetition of repeating field {@link #relatedArtifact}, 1701 * creating it if it does not already exist 1702 */ 1703 public RelatedArtifact getRelatedArtifactFirstRep() { 1704 if (getRelatedArtifact().isEmpty()) { 1705 addRelatedArtifact(); 1706 } 1707 return getRelatedArtifact().get(0); 1708 } 1709 1710 /** 1711 * @return {@link #exposureBackground} (A reference to a EvidenceVariable 1712 * resource that defines the population for the research.) 1713 */ 1714 public Reference getExposureBackground() { 1715 if (this.exposureBackground == null) 1716 if (Configuration.errorOnAutoCreate()) 1717 throw new Error("Attempt to auto-create Evidence.exposureBackground"); 1718 else if (Configuration.doAutoCreate()) 1719 this.exposureBackground = new Reference(); // cc 1720 return this.exposureBackground; 1721 } 1722 1723 public boolean hasExposureBackground() { 1724 return this.exposureBackground != null && !this.exposureBackground.isEmpty(); 1725 } 1726 1727 /** 1728 * @param value {@link #exposureBackground} (A reference to a EvidenceVariable 1729 * resource that defines the population for the research.) 1730 */ 1731 public Evidence setExposureBackground(Reference value) { 1732 this.exposureBackground = value; 1733 return this; 1734 } 1735 1736 /** 1737 * @return {@link #exposureBackground} The actual object that is the target of 1738 * the reference. The reference library doesn't populate this, but you 1739 * can use it to hold the resource if you resolve it. (A reference to a 1740 * EvidenceVariable resource that defines the population for the 1741 * research.) 1742 */ 1743 public EvidenceVariable getExposureBackgroundTarget() { 1744 if (this.exposureBackgroundTarget == null) 1745 if (Configuration.errorOnAutoCreate()) 1746 throw new Error("Attempt to auto-create Evidence.exposureBackground"); 1747 else if (Configuration.doAutoCreate()) 1748 this.exposureBackgroundTarget = new EvidenceVariable(); // aa 1749 return this.exposureBackgroundTarget; 1750 } 1751 1752 /** 1753 * @param value {@link #exposureBackground} The actual object that is the target 1754 * of the reference. The reference library doesn't use these, but 1755 * you can use it to hold the resource if you resolve it. (A 1756 * reference to a EvidenceVariable resource that defines the 1757 * population for the research.) 1758 */ 1759 public Evidence setExposureBackgroundTarget(EvidenceVariable value) { 1760 this.exposureBackgroundTarget = value; 1761 return this; 1762 } 1763 1764 /** 1765 * @return {@link #exposureVariant} (A reference to a EvidenceVariable resource 1766 * that defines the exposure for the research.) 1767 */ 1768 public List<Reference> getExposureVariant() { 1769 if (this.exposureVariant == null) 1770 this.exposureVariant = new ArrayList<Reference>(); 1771 return this.exposureVariant; 1772 } 1773 1774 /** 1775 * @return Returns a reference to <code>this</code> for easy method chaining 1776 */ 1777 public Evidence setExposureVariant(List<Reference> theExposureVariant) { 1778 this.exposureVariant = theExposureVariant; 1779 return this; 1780 } 1781 1782 public boolean hasExposureVariant() { 1783 if (this.exposureVariant == null) 1784 return false; 1785 for (Reference item : this.exposureVariant) 1786 if (!item.isEmpty()) 1787 return true; 1788 return false; 1789 } 1790 1791 public Reference addExposureVariant() { // 3 1792 Reference t = new Reference(); 1793 if (this.exposureVariant == null) 1794 this.exposureVariant = new ArrayList<Reference>(); 1795 this.exposureVariant.add(t); 1796 return t; 1797 } 1798 1799 public Evidence addExposureVariant(Reference t) { // 3 1800 if (t == null) 1801 return this; 1802 if (this.exposureVariant == null) 1803 this.exposureVariant = new ArrayList<Reference>(); 1804 this.exposureVariant.add(t); 1805 return this; 1806 } 1807 1808 /** 1809 * @return The first repetition of repeating field {@link #exposureVariant}, 1810 * creating it if it does not already exist 1811 */ 1812 public Reference getExposureVariantFirstRep() { 1813 if (getExposureVariant().isEmpty()) { 1814 addExposureVariant(); 1815 } 1816 return getExposureVariant().get(0); 1817 } 1818 1819 /** 1820 * @return {@link #outcome} (A reference to a EvidenceVariable resomece that 1821 * defines the outcome for the research.) 1822 */ 1823 public List<Reference> getOutcome() { 1824 if (this.outcome == null) 1825 this.outcome = new ArrayList<Reference>(); 1826 return this.outcome; 1827 } 1828 1829 /** 1830 * @return Returns a reference to <code>this</code> for easy method chaining 1831 */ 1832 public Evidence setOutcome(List<Reference> theOutcome) { 1833 this.outcome = theOutcome; 1834 return this; 1835 } 1836 1837 public boolean hasOutcome() { 1838 if (this.outcome == null) 1839 return false; 1840 for (Reference item : this.outcome) 1841 if (!item.isEmpty()) 1842 return true; 1843 return false; 1844 } 1845 1846 public Reference addOutcome() { // 3 1847 Reference t = new Reference(); 1848 if (this.outcome == null) 1849 this.outcome = new ArrayList<Reference>(); 1850 this.outcome.add(t); 1851 return t; 1852 } 1853 1854 public Evidence addOutcome(Reference t) { // 3 1855 if (t == null) 1856 return this; 1857 if (this.outcome == null) 1858 this.outcome = new ArrayList<Reference>(); 1859 this.outcome.add(t); 1860 return this; 1861 } 1862 1863 /** 1864 * @return The first repetition of repeating field {@link #outcome}, creating it 1865 * if it does not already exist 1866 */ 1867 public Reference getOutcomeFirstRep() { 1868 if (getOutcome().isEmpty()) { 1869 addOutcome(); 1870 } 1871 return getOutcome().get(0); 1872 } 1873 1874 protected void listChildren(List<Property> children) { 1875 super.listChildren(children); 1876 children.add(new Property("url", "uri", 1877 "An absolute URI that is used to identify this evidence 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 evidence is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the evidence is stored on different servers.", 1878 0, 1, url)); 1879 children.add(new Property("identifier", "Identifier", 1880 "A formal identifier that is used to identify this evidence when it is represented in other formats, or referenced in a specification, model, design or an instance.", 1881 0, java.lang.Integer.MAX_VALUE, identifier)); 1882 children.add(new Property("version", "string", 1883 "The identifier that is used to identify this version of the evidence when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the evidence author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.", 1884 0, 1, version)); 1885 children.add(new Property("name", "string", 1886 "A natural language name identifying the evidence. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 1887 0, 1, name)); 1888 children.add( 1889 new Property("title", "string", "A short, descriptive, user-friendly title for the evidence.", 0, 1, title)); 1890 children.add(new Property("shortTitle", "string", 1891 "The short title provides an alternate title for use in informal descriptive contexts where the full, formal title is not necessary.", 1892 0, 1, shortTitle)); 1893 children.add(new Property("subtitle", "string", 1894 "An explanatory or alternate title for the Evidence giving additional information about its content.", 0, 1, 1895 subtitle)); 1896 children.add(new Property("status", "code", 1897 "The status of this evidence. Enables tracking the life-cycle of the content.", 0, 1, status)); 1898 children.add(new Property("date", "dateTime", 1899 "The date (and optionally time) when the evidence 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 evidence changes.", 1900 0, 1, date)); 1901 children.add(new Property("publisher", "string", 1902 "The name of the organization or individual that published the evidence.", 0, 1, publisher)); 1903 children.add(new Property("contact", "ContactDetail", 1904 "Contact details to assist a user in finding and communicating with the publisher.", 0, 1905 java.lang.Integer.MAX_VALUE, contact)); 1906 children.add(new Property("description", "markdown", 1907 "A free text natural language description of the evidence from a consumer's perspective.", 0, 1, description)); 1908 children.add( 1909 new Property("note", "Annotation", "A human-readable string to clarify or explain concepts about the resource.", 1910 0, java.lang.Integer.MAX_VALUE, note)); 1911 children.add(new Property("useContext", "UsageContext", 1912 "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 evidence instances.", 1913 0, java.lang.Integer.MAX_VALUE, useContext)); 1914 children.add(new Property("jurisdiction", "CodeableConcept", 1915 "A legal or geographic region in which the evidence is intended to be used.", 0, java.lang.Integer.MAX_VALUE, 1916 jurisdiction)); 1917 children.add(new Property("copyright", "markdown", 1918 "A copyright statement relating to the evidence and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence.", 1919 0, 1, copyright)); 1920 children.add(new Property("approvalDate", "date", 1921 "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 1922 0, 1, approvalDate)); 1923 children.add(new Property("lastReviewDate", "date", 1924 "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 1925 0, 1, lastReviewDate)); 1926 children.add(new Property("effectivePeriod", "Period", 1927 "The period during which the evidence content was or is planned to be in active use.", 0, 1, effectivePeriod)); 1928 children.add(new Property("topic", "CodeableConcept", 1929 "Descriptive topics related to the content of the Evidence. Topics provide a high-level categorization grouping types of Evidences that can be useful for filtering and searching.", 1930 0, java.lang.Integer.MAX_VALUE, topic)); 1931 children.add(new Property("author", "ContactDetail", 1932 "An individiual or organization primarily involved in the creation and maintenance of the content.", 0, 1933 java.lang.Integer.MAX_VALUE, author)); 1934 children.add(new Property("editor", "ContactDetail", 1935 "An individual or organization primarily responsible for internal coherence of the content.", 0, 1936 java.lang.Integer.MAX_VALUE, editor)); 1937 children.add(new Property("reviewer", "ContactDetail", 1938 "An individual or organization primarily responsible for review of some aspect of the content.", 0, 1939 java.lang.Integer.MAX_VALUE, reviewer)); 1940 children.add(new Property("endorser", "ContactDetail", 1941 "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, 1942 java.lang.Integer.MAX_VALUE, endorser)); 1943 children.add(new Property("relatedArtifact", "RelatedArtifact", 1944 "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, 1945 java.lang.Integer.MAX_VALUE, relatedArtifact)); 1946 children.add(new Property("exposureBackground", "Reference(EvidenceVariable)", 1947 "A reference to a EvidenceVariable resource that defines the population for the research.", 0, 1, 1948 exposureBackground)); 1949 children.add(new Property("exposureVariant", "Reference(EvidenceVariable)", 1950 "A reference to a EvidenceVariable resource that defines the exposure for the research.", 0, 1951 java.lang.Integer.MAX_VALUE, exposureVariant)); 1952 children.add(new Property("outcome", "Reference(EvidenceVariable)", 1953 "A reference to a EvidenceVariable resomece that defines the outcome for the research.", 0, 1954 java.lang.Integer.MAX_VALUE, outcome)); 1955 } 1956 1957 @Override 1958 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1959 switch (_hash) { 1960 case 116079: 1961 /* url */ return new Property("url", "uri", 1962 "An absolute URI that is used to identify this evidence 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 evidence is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the evidence is stored on different servers.", 1963 0, 1, url); 1964 case -1618432855: 1965 /* identifier */ return new Property("identifier", "Identifier", 1966 "A formal identifier that is used to identify this evidence when it is represented in other formats, or referenced in a specification, model, design or an instance.", 1967 0, java.lang.Integer.MAX_VALUE, identifier); 1968 case 351608024: 1969 /* version */ return new Property("version", "string", 1970 "The identifier that is used to identify this version of the evidence when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the evidence author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. To provide a version consistent with the Decision Support Service specification, use the format Major.Minor.Revision (e.g. 1.0.0). For more information on versioning knowledge assets, refer to the Decision Support Service specification. Note that a version is required for non-experimental active artifacts.", 1971 0, 1, version); 1972 case 3373707: 1973 /* name */ return new Property("name", "string", 1974 "A natural language name identifying the evidence. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 1975 0, 1, name); 1976 case 110371416: 1977 /* title */ return new Property("title", "string", "A short, descriptive, user-friendly title for the evidence.", 1978 0, 1, title); 1979 case 1555503932: 1980 /* shortTitle */ return new Property("shortTitle", "string", 1981 "The short title provides an alternate title for use in informal descriptive contexts where the full, formal title is not necessary.", 1982 0, 1, shortTitle); 1983 case -2060497896: 1984 /* subtitle */ return new Property("subtitle", "string", 1985 "An explanatory or alternate title for the Evidence giving additional information about its content.", 0, 1, 1986 subtitle); 1987 case -892481550: 1988 /* status */ return new Property("status", "code", 1989 "The status of this evidence. Enables tracking the life-cycle of the content.", 0, 1, status); 1990 case 3076014: 1991 /* date */ return new Property("date", "dateTime", 1992 "The date (and optionally time) when the evidence 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 evidence changes.", 1993 0, 1, date); 1994 case 1447404028: 1995 /* publisher */ return new Property("publisher", "string", 1996 "The name of the organization or individual that published the evidence.", 0, 1, publisher); 1997 case 951526432: 1998 /* contact */ return new Property("contact", "ContactDetail", 1999 "Contact details to assist a user in finding and communicating with the publisher.", 0, 2000 java.lang.Integer.MAX_VALUE, contact); 2001 case -1724546052: 2002 /* description */ return new Property("description", "markdown", 2003 "A free text natural language description of the evidence from a consumer's perspective.", 0, 1, description); 2004 case 3387378: 2005 /* note */ return new Property("note", "Annotation", 2006 "A human-readable string to clarify or explain concepts about the resource.", 0, java.lang.Integer.MAX_VALUE, 2007 note); 2008 case -669707736: 2009 /* useContext */ return new Property("useContext", "UsageContext", 2010 "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 evidence instances.", 2011 0, java.lang.Integer.MAX_VALUE, useContext); 2012 case -507075711: 2013 /* jurisdiction */ return new Property("jurisdiction", "CodeableConcept", 2014 "A legal or geographic region in which the evidence is intended to be used.", 0, java.lang.Integer.MAX_VALUE, 2015 jurisdiction); 2016 case 1522889671: 2017 /* copyright */ return new Property("copyright", "markdown", 2018 "A copyright statement relating to the evidence and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence.", 2019 0, 1, copyright); 2020 case 223539345: 2021 /* approvalDate */ return new Property("approvalDate", "date", 2022 "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 2023 0, 1, approvalDate); 2024 case -1687512484: 2025 /* lastReviewDate */ return new Property("lastReviewDate", "date", 2026 "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 2027 0, 1, lastReviewDate); 2028 case -403934648: 2029 /* effectivePeriod */ return new Property("effectivePeriod", "Period", 2030 "The period during which the evidence content was or is planned to be in active use.", 0, 1, effectivePeriod); 2031 case 110546223: 2032 /* topic */ return new Property("topic", "CodeableConcept", 2033 "Descriptive topics related to the content of the Evidence. Topics provide a high-level categorization grouping types of Evidences that can be useful for filtering and searching.", 2034 0, java.lang.Integer.MAX_VALUE, topic); 2035 case -1406328437: 2036 /* author */ return new Property("author", "ContactDetail", 2037 "An individiual or organization primarily involved in the creation and maintenance of the content.", 0, 2038 java.lang.Integer.MAX_VALUE, author); 2039 case -1307827859: 2040 /* editor */ return new Property("editor", "ContactDetail", 2041 "An individual or organization primarily responsible for internal coherence of the content.", 0, 2042 java.lang.Integer.MAX_VALUE, editor); 2043 case -261190139: 2044 /* reviewer */ return new Property("reviewer", "ContactDetail", 2045 "An individual or organization primarily responsible for review of some aspect of the content.", 0, 2046 java.lang.Integer.MAX_VALUE, reviewer); 2047 case 1740277666: 2048 /* endorser */ return new Property("endorser", "ContactDetail", 2049 "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, 2050 java.lang.Integer.MAX_VALUE, endorser); 2051 case 666807069: 2052 /* relatedArtifact */ return new Property("relatedArtifact", "RelatedArtifact", 2053 "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, 2054 java.lang.Integer.MAX_VALUE, relatedArtifact); 2055 case -832155243: 2056 /* exposureBackground */ return new Property("exposureBackground", "Reference(EvidenceVariable)", 2057 "A reference to a EvidenceVariable resource that defines the population for the research.", 0, 1, 2058 exposureBackground); 2059 case -19675778: 2060 /* exposureVariant */ return new Property("exposureVariant", "Reference(EvidenceVariable)", 2061 "A reference to a EvidenceVariable resource that defines the exposure for the research.", 0, 2062 java.lang.Integer.MAX_VALUE, exposureVariant); 2063 case -1106507950: 2064 /* outcome */ return new Property("outcome", "Reference(EvidenceVariable)", 2065 "A reference to a EvidenceVariable resomece that defines the outcome for the research.", 0, 2066 java.lang.Integer.MAX_VALUE, outcome); 2067 default: 2068 return super.getNamedProperty(_hash, _name, _checkValid); 2069 } 2070 2071 } 2072 2073 @Override 2074 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 2075 switch (hash) { 2076 case 116079: 2077 /* url */ return this.url == null ? new Base[0] : new Base[] { this.url }; // UriType 2078 case -1618432855: 2079 /* identifier */ return this.identifier == null ? new Base[0] 2080 : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 2081 case 351608024: 2082 /* version */ return this.version == null ? new Base[0] : new Base[] { this.version }; // StringType 2083 case 3373707: 2084 /* name */ return this.name == null ? new Base[0] : new Base[] { this.name }; // StringType 2085 case 110371416: 2086 /* title */ return this.title == null ? new Base[0] : new Base[] { this.title }; // StringType 2087 case 1555503932: 2088 /* shortTitle */ return this.shortTitle == null ? new Base[0] : new Base[] { this.shortTitle }; // StringType 2089 case -2060497896: 2090 /* subtitle */ return this.subtitle == null ? new Base[0] : new Base[] { this.subtitle }; // StringType 2091 case -892481550: 2092 /* status */ return this.status == null ? new Base[0] : new Base[] { this.status }; // Enumeration<PublicationStatus> 2093 case 3076014: 2094 /* date */ return this.date == null ? new Base[0] : new Base[] { this.date }; // DateTimeType 2095 case 1447404028: 2096 /* publisher */ return this.publisher == null ? new Base[0] : new Base[] { this.publisher }; // StringType 2097 case 951526432: 2098 /* contact */ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactDetail 2099 case -1724546052: 2100 /* description */ return this.description == null ? new Base[0] : new Base[] { this.description }; // MarkdownType 2101 case 3387378: 2102 /* note */ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 2103 case -669707736: 2104 /* useContext */ return this.useContext == null ? new Base[0] 2105 : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 2106 case -507075711: 2107 /* jurisdiction */ return this.jurisdiction == null ? new Base[0] 2108 : this.jurisdiction.toArray(new Base[this.jurisdiction.size()]); // CodeableConcept 2109 case 1522889671: 2110 /* copyright */ return this.copyright == null ? new Base[0] : new Base[] { this.copyright }; // MarkdownType 2111 case 223539345: 2112 /* approvalDate */ return this.approvalDate == null ? new Base[0] : new Base[] { this.approvalDate }; // DateType 2113 case -1687512484: 2114 /* lastReviewDate */ return this.lastReviewDate == null ? new Base[0] : new Base[] { this.lastReviewDate }; // DateType 2115 case -403934648: 2116 /* effectivePeriod */ return this.effectivePeriod == null ? new Base[0] : new Base[] { this.effectivePeriod }; // Period 2117 case 110546223: 2118 /* topic */ return this.topic == null ? new Base[0] : this.topic.toArray(new Base[this.topic.size()]); // CodeableConcept 2119 case -1406328437: 2120 /* author */ return this.author == null ? new Base[0] : this.author.toArray(new Base[this.author.size()]); // ContactDetail 2121 case -1307827859: 2122 /* editor */ return this.editor == null ? new Base[0] : this.editor.toArray(new Base[this.editor.size()]); // ContactDetail 2123 case -261190139: 2124 /* reviewer */ return this.reviewer == null ? new Base[0] : this.reviewer.toArray(new Base[this.reviewer.size()]); // ContactDetail 2125 case 1740277666: 2126 /* endorser */ return this.endorser == null ? new Base[0] : this.endorser.toArray(new Base[this.endorser.size()]); // ContactDetail 2127 case 666807069: 2128 /* relatedArtifact */ return this.relatedArtifact == null ? new Base[0] 2129 : this.relatedArtifact.toArray(new Base[this.relatedArtifact.size()]); // RelatedArtifact 2130 case -832155243: 2131 /* exposureBackground */ return this.exposureBackground == null ? new Base[0] 2132 : new Base[] { this.exposureBackground }; // Reference 2133 case -19675778: 2134 /* exposureVariant */ return this.exposureVariant == null ? new Base[0] 2135 : this.exposureVariant.toArray(new Base[this.exposureVariant.size()]); // Reference 2136 case -1106507950: 2137 /* outcome */ return this.outcome == null ? new Base[0] : this.outcome.toArray(new Base[this.outcome.size()]); // Reference 2138 default: 2139 return super.getProperty(hash, name, checkValid); 2140 } 2141 2142 } 2143 2144 @Override 2145 public Base setProperty(int hash, String name, Base value) throws FHIRException { 2146 switch (hash) { 2147 case 116079: // url 2148 this.url = castToUri(value); // UriType 2149 return value; 2150 case -1618432855: // identifier 2151 this.getIdentifier().add(castToIdentifier(value)); // Identifier 2152 return value; 2153 case 351608024: // version 2154 this.version = castToString(value); // StringType 2155 return value; 2156 case 3373707: // name 2157 this.name = castToString(value); // StringType 2158 return value; 2159 case 110371416: // title 2160 this.title = castToString(value); // StringType 2161 return value; 2162 case 1555503932: // shortTitle 2163 this.shortTitle = castToString(value); // StringType 2164 return value; 2165 case -2060497896: // subtitle 2166 this.subtitle = castToString(value); // StringType 2167 return value; 2168 case -892481550: // status 2169 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 2170 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 2171 return value; 2172 case 3076014: // date 2173 this.date = castToDateTime(value); // DateTimeType 2174 return value; 2175 case 1447404028: // publisher 2176 this.publisher = castToString(value); // StringType 2177 return value; 2178 case 951526432: // contact 2179 this.getContact().add(castToContactDetail(value)); // ContactDetail 2180 return value; 2181 case -1724546052: // description 2182 this.description = castToMarkdown(value); // MarkdownType 2183 return value; 2184 case 3387378: // note 2185 this.getNote().add(castToAnnotation(value)); // Annotation 2186 return value; 2187 case -669707736: // useContext 2188 this.getUseContext().add(castToUsageContext(value)); // UsageContext 2189 return value; 2190 case -507075711: // jurisdiction 2191 this.getJurisdiction().add(castToCodeableConcept(value)); // CodeableConcept 2192 return value; 2193 case 1522889671: // copyright 2194 this.copyright = castToMarkdown(value); // MarkdownType 2195 return value; 2196 case 223539345: // approvalDate 2197 this.approvalDate = castToDate(value); // DateType 2198 return value; 2199 case -1687512484: // lastReviewDate 2200 this.lastReviewDate = castToDate(value); // DateType 2201 return value; 2202 case -403934648: // effectivePeriod 2203 this.effectivePeriod = castToPeriod(value); // Period 2204 return value; 2205 case 110546223: // topic 2206 this.getTopic().add(castToCodeableConcept(value)); // CodeableConcept 2207 return value; 2208 case -1406328437: // author 2209 this.getAuthor().add(castToContactDetail(value)); // ContactDetail 2210 return value; 2211 case -1307827859: // editor 2212 this.getEditor().add(castToContactDetail(value)); // ContactDetail 2213 return value; 2214 case -261190139: // reviewer 2215 this.getReviewer().add(castToContactDetail(value)); // ContactDetail 2216 return value; 2217 case 1740277666: // endorser 2218 this.getEndorser().add(castToContactDetail(value)); // ContactDetail 2219 return value; 2220 case 666807069: // relatedArtifact 2221 this.getRelatedArtifact().add(castToRelatedArtifact(value)); // RelatedArtifact 2222 return value; 2223 case -832155243: // exposureBackground 2224 this.exposureBackground = castToReference(value); // Reference 2225 return value; 2226 case -19675778: // exposureVariant 2227 this.getExposureVariant().add(castToReference(value)); // Reference 2228 return value; 2229 case -1106507950: // outcome 2230 this.getOutcome().add(castToReference(value)); // Reference 2231 return value; 2232 default: 2233 return super.setProperty(hash, name, value); 2234 } 2235 2236 } 2237 2238 @Override 2239 public Base setProperty(String name, Base value) throws FHIRException { 2240 if (name.equals("url")) { 2241 this.url = castToUri(value); // UriType 2242 } else if (name.equals("identifier")) { 2243 this.getIdentifier().add(castToIdentifier(value)); 2244 } else if (name.equals("version")) { 2245 this.version = castToString(value); // StringType 2246 } else if (name.equals("name")) { 2247 this.name = castToString(value); // StringType 2248 } else if (name.equals("title")) { 2249 this.title = castToString(value); // StringType 2250 } else if (name.equals("shortTitle")) { 2251 this.shortTitle = castToString(value); // StringType 2252 } else if (name.equals("subtitle")) { 2253 this.subtitle = castToString(value); // StringType 2254 } else if (name.equals("status")) { 2255 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 2256 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 2257 } else if (name.equals("date")) { 2258 this.date = castToDateTime(value); // DateTimeType 2259 } else if (name.equals("publisher")) { 2260 this.publisher = castToString(value); // StringType 2261 } else if (name.equals("contact")) { 2262 this.getContact().add(castToContactDetail(value)); 2263 } else if (name.equals("description")) { 2264 this.description = castToMarkdown(value); // MarkdownType 2265 } else if (name.equals("note")) { 2266 this.getNote().add(castToAnnotation(value)); 2267 } else if (name.equals("useContext")) { 2268 this.getUseContext().add(castToUsageContext(value)); 2269 } else if (name.equals("jurisdiction")) { 2270 this.getJurisdiction().add(castToCodeableConcept(value)); 2271 } else if (name.equals("copyright")) { 2272 this.copyright = castToMarkdown(value); // MarkdownType 2273 } else if (name.equals("approvalDate")) { 2274 this.approvalDate = castToDate(value); // DateType 2275 } else if (name.equals("lastReviewDate")) { 2276 this.lastReviewDate = castToDate(value); // DateType 2277 } else if (name.equals("effectivePeriod")) { 2278 this.effectivePeriod = castToPeriod(value); // Period 2279 } else if (name.equals("topic")) { 2280 this.getTopic().add(castToCodeableConcept(value)); 2281 } else if (name.equals("author")) { 2282 this.getAuthor().add(castToContactDetail(value)); 2283 } else if (name.equals("editor")) { 2284 this.getEditor().add(castToContactDetail(value)); 2285 } else if (name.equals("reviewer")) { 2286 this.getReviewer().add(castToContactDetail(value)); 2287 } else if (name.equals("endorser")) { 2288 this.getEndorser().add(castToContactDetail(value)); 2289 } else if (name.equals("relatedArtifact")) { 2290 this.getRelatedArtifact().add(castToRelatedArtifact(value)); 2291 } else if (name.equals("exposureBackground")) { 2292 this.exposureBackground = castToReference(value); // Reference 2293 } else if (name.equals("exposureVariant")) { 2294 this.getExposureVariant().add(castToReference(value)); 2295 } else if (name.equals("outcome")) { 2296 this.getOutcome().add(castToReference(value)); 2297 } else 2298 return super.setProperty(name, value); 2299 return value; 2300 } 2301 2302 @Override 2303 public void removeChild(String name, Base value) throws FHIRException { 2304 if (name.equals("url")) { 2305 this.url = null; 2306 } else if (name.equals("identifier")) { 2307 this.getIdentifier().remove(castToIdentifier(value)); 2308 } else if (name.equals("version")) { 2309 this.version = null; 2310 } else if (name.equals("name")) { 2311 this.name = null; 2312 } else if (name.equals("title")) { 2313 this.title = null; 2314 } else if (name.equals("shortTitle")) { 2315 this.shortTitle = null; 2316 } else if (name.equals("subtitle")) { 2317 this.subtitle = null; 2318 } else if (name.equals("status")) { 2319 this.status = null; 2320 } else if (name.equals("date")) { 2321 this.date = null; 2322 } else if (name.equals("publisher")) { 2323 this.publisher = null; 2324 } else if (name.equals("contact")) { 2325 this.getContact().remove(castToContactDetail(value)); 2326 } else if (name.equals("description")) { 2327 this.description = null; 2328 } else if (name.equals("note")) { 2329 this.getNote().remove(castToAnnotation(value)); 2330 } else if (name.equals("useContext")) { 2331 this.getUseContext().remove(castToUsageContext(value)); 2332 } else if (name.equals("jurisdiction")) { 2333 this.getJurisdiction().remove(castToCodeableConcept(value)); 2334 } else if (name.equals("copyright")) { 2335 this.copyright = null; 2336 } else if (name.equals("approvalDate")) { 2337 this.approvalDate = null; 2338 } else if (name.equals("lastReviewDate")) { 2339 this.lastReviewDate = null; 2340 } else if (name.equals("effectivePeriod")) { 2341 this.effectivePeriod = null; 2342 } else if (name.equals("topic")) { 2343 this.getTopic().remove(castToCodeableConcept(value)); 2344 } else if (name.equals("author")) { 2345 this.getAuthor().remove(castToContactDetail(value)); 2346 } else if (name.equals("editor")) { 2347 this.getEditor().remove(castToContactDetail(value)); 2348 } else if (name.equals("reviewer")) { 2349 this.getReviewer().remove(castToContactDetail(value)); 2350 } else if (name.equals("endorser")) { 2351 this.getEndorser().remove(castToContactDetail(value)); 2352 } else if (name.equals("relatedArtifact")) { 2353 this.getRelatedArtifact().remove(castToRelatedArtifact(value)); 2354 } else if (name.equals("exposureBackground")) { 2355 this.exposureBackground = null; 2356 } else if (name.equals("exposureVariant")) { 2357 this.getExposureVariant().remove(castToReference(value)); 2358 } else if (name.equals("outcome")) { 2359 this.getOutcome().remove(castToReference(value)); 2360 } else 2361 super.removeChild(name, value); 2362 2363 } 2364 2365 @Override 2366 public Base makeProperty(int hash, String name) throws FHIRException { 2367 switch (hash) { 2368 case 116079: 2369 return getUrlElement(); 2370 case -1618432855: 2371 return addIdentifier(); 2372 case 351608024: 2373 return getVersionElement(); 2374 case 3373707: 2375 return getNameElement(); 2376 case 110371416: 2377 return getTitleElement(); 2378 case 1555503932: 2379 return getShortTitleElement(); 2380 case -2060497896: 2381 return getSubtitleElement(); 2382 case -892481550: 2383 return getStatusElement(); 2384 case 3076014: 2385 return getDateElement(); 2386 case 1447404028: 2387 return getPublisherElement(); 2388 case 951526432: 2389 return addContact(); 2390 case -1724546052: 2391 return getDescriptionElement(); 2392 case 3387378: 2393 return addNote(); 2394 case -669707736: 2395 return addUseContext(); 2396 case -507075711: 2397 return addJurisdiction(); 2398 case 1522889671: 2399 return getCopyrightElement(); 2400 case 223539345: 2401 return getApprovalDateElement(); 2402 case -1687512484: 2403 return getLastReviewDateElement(); 2404 case -403934648: 2405 return getEffectivePeriod(); 2406 case 110546223: 2407 return addTopic(); 2408 case -1406328437: 2409 return addAuthor(); 2410 case -1307827859: 2411 return addEditor(); 2412 case -261190139: 2413 return addReviewer(); 2414 case 1740277666: 2415 return addEndorser(); 2416 case 666807069: 2417 return addRelatedArtifact(); 2418 case -832155243: 2419 return getExposureBackground(); 2420 case -19675778: 2421 return addExposureVariant(); 2422 case -1106507950: 2423 return addOutcome(); 2424 default: 2425 return super.makeProperty(hash, name); 2426 } 2427 2428 } 2429 2430 @Override 2431 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 2432 switch (hash) { 2433 case 116079: 2434 /* url */ return new String[] { "uri" }; 2435 case -1618432855: 2436 /* identifier */ return new String[] { "Identifier" }; 2437 case 351608024: 2438 /* version */ return new String[] { "string" }; 2439 case 3373707: 2440 /* name */ return new String[] { "string" }; 2441 case 110371416: 2442 /* title */ return new String[] { "string" }; 2443 case 1555503932: 2444 /* shortTitle */ return new String[] { "string" }; 2445 case -2060497896: 2446 /* subtitle */ return new String[] { "string" }; 2447 case -892481550: 2448 /* status */ return new String[] { "code" }; 2449 case 3076014: 2450 /* date */ return new String[] { "dateTime" }; 2451 case 1447404028: 2452 /* publisher */ return new String[] { "string" }; 2453 case 951526432: 2454 /* contact */ return new String[] { "ContactDetail" }; 2455 case -1724546052: 2456 /* description */ return new String[] { "markdown" }; 2457 case 3387378: 2458 /* note */ return new String[] { "Annotation" }; 2459 case -669707736: 2460 /* useContext */ return new String[] { "UsageContext" }; 2461 case -507075711: 2462 /* jurisdiction */ return new String[] { "CodeableConcept" }; 2463 case 1522889671: 2464 /* copyright */ return new String[] { "markdown" }; 2465 case 223539345: 2466 /* approvalDate */ return new String[] { "date" }; 2467 case -1687512484: 2468 /* lastReviewDate */ return new String[] { "date" }; 2469 case -403934648: 2470 /* effectivePeriod */ return new String[] { "Period" }; 2471 case 110546223: 2472 /* topic */ return new String[] { "CodeableConcept" }; 2473 case -1406328437: 2474 /* author */ return new String[] { "ContactDetail" }; 2475 case -1307827859: 2476 /* editor */ return new String[] { "ContactDetail" }; 2477 case -261190139: 2478 /* reviewer */ return new String[] { "ContactDetail" }; 2479 case 1740277666: 2480 /* endorser */ return new String[] { "ContactDetail" }; 2481 case 666807069: 2482 /* relatedArtifact */ return new String[] { "RelatedArtifact" }; 2483 case -832155243: 2484 /* exposureBackground */ return new String[] { "Reference" }; 2485 case -19675778: 2486 /* exposureVariant */ return new String[] { "Reference" }; 2487 case -1106507950: 2488 /* outcome */ return new String[] { "Reference" }; 2489 default: 2490 return super.getTypesForProperty(hash, name); 2491 } 2492 2493 } 2494 2495 @Override 2496 public Base addChild(String name) throws FHIRException { 2497 if (name.equals("url")) { 2498 throw new FHIRException("Cannot call addChild on a singleton property Evidence.url"); 2499 } else if (name.equals("identifier")) { 2500 return addIdentifier(); 2501 } else if (name.equals("version")) { 2502 throw new FHIRException("Cannot call addChild on a singleton property Evidence.version"); 2503 } else if (name.equals("name")) { 2504 throw new FHIRException("Cannot call addChild on a singleton property Evidence.name"); 2505 } else if (name.equals("title")) { 2506 throw new FHIRException("Cannot call addChild on a singleton property Evidence.title"); 2507 } else if (name.equals("shortTitle")) { 2508 throw new FHIRException("Cannot call addChild on a singleton property Evidence.shortTitle"); 2509 } else if (name.equals("subtitle")) { 2510 throw new FHIRException("Cannot call addChild on a singleton property Evidence.subtitle"); 2511 } else if (name.equals("status")) { 2512 throw new FHIRException("Cannot call addChild on a singleton property Evidence.status"); 2513 } else if (name.equals("date")) { 2514 throw new FHIRException("Cannot call addChild on a singleton property Evidence.date"); 2515 } else if (name.equals("publisher")) { 2516 throw new FHIRException("Cannot call addChild on a singleton property Evidence.publisher"); 2517 } else if (name.equals("contact")) { 2518 return addContact(); 2519 } else if (name.equals("description")) { 2520 throw new FHIRException("Cannot call addChild on a singleton property Evidence.description"); 2521 } else if (name.equals("note")) { 2522 return addNote(); 2523 } else if (name.equals("useContext")) { 2524 return addUseContext(); 2525 } else if (name.equals("jurisdiction")) { 2526 return addJurisdiction(); 2527 } else if (name.equals("copyright")) { 2528 throw new FHIRException("Cannot call addChild on a singleton property Evidence.copyright"); 2529 } else if (name.equals("approvalDate")) { 2530 throw new FHIRException("Cannot call addChild on a singleton property Evidence.approvalDate"); 2531 } else if (name.equals("lastReviewDate")) { 2532 throw new FHIRException("Cannot call addChild on a singleton property Evidence.lastReviewDate"); 2533 } else if (name.equals("effectivePeriod")) { 2534 this.effectivePeriod = new Period(); 2535 return this.effectivePeriod; 2536 } else if (name.equals("topic")) { 2537 return addTopic(); 2538 } else if (name.equals("author")) { 2539 return addAuthor(); 2540 } else if (name.equals("editor")) { 2541 return addEditor(); 2542 } else if (name.equals("reviewer")) { 2543 return addReviewer(); 2544 } else if (name.equals("endorser")) { 2545 return addEndorser(); 2546 } else if (name.equals("relatedArtifact")) { 2547 return addRelatedArtifact(); 2548 } else if (name.equals("exposureBackground")) { 2549 this.exposureBackground = new Reference(); 2550 return this.exposureBackground; 2551 } else if (name.equals("exposureVariant")) { 2552 return addExposureVariant(); 2553 } else if (name.equals("outcome")) { 2554 return addOutcome(); 2555 } else 2556 return super.addChild(name); 2557 } 2558 2559 public String fhirType() { 2560 return "Evidence"; 2561 2562 } 2563 2564 public Evidence copy() { 2565 Evidence dst = new Evidence(); 2566 copyValues(dst); 2567 return dst; 2568 } 2569 2570 public void copyValues(Evidence dst) { 2571 super.copyValues(dst); 2572 dst.url = url == null ? null : url.copy(); 2573 if (identifier != null) { 2574 dst.identifier = new ArrayList<Identifier>(); 2575 for (Identifier i : identifier) 2576 dst.identifier.add(i.copy()); 2577 } 2578 ; 2579 dst.version = version == null ? null : version.copy(); 2580 dst.name = name == null ? null : name.copy(); 2581 dst.title = title == null ? null : title.copy(); 2582 dst.shortTitle = shortTitle == null ? null : shortTitle.copy(); 2583 dst.subtitle = subtitle == null ? null : subtitle.copy(); 2584 dst.status = status == null ? null : status.copy(); 2585 dst.date = date == null ? null : date.copy(); 2586 dst.publisher = publisher == null ? null : publisher.copy(); 2587 if (contact != null) { 2588 dst.contact = new ArrayList<ContactDetail>(); 2589 for (ContactDetail i : contact) 2590 dst.contact.add(i.copy()); 2591 } 2592 ; 2593 dst.description = description == null ? null : description.copy(); 2594 if (note != null) { 2595 dst.note = new ArrayList<Annotation>(); 2596 for (Annotation i : note) 2597 dst.note.add(i.copy()); 2598 } 2599 ; 2600 if (useContext != null) { 2601 dst.useContext = new ArrayList<UsageContext>(); 2602 for (UsageContext i : useContext) 2603 dst.useContext.add(i.copy()); 2604 } 2605 ; 2606 if (jurisdiction != null) { 2607 dst.jurisdiction = new ArrayList<CodeableConcept>(); 2608 for (CodeableConcept i : jurisdiction) 2609 dst.jurisdiction.add(i.copy()); 2610 } 2611 ; 2612 dst.copyright = copyright == null ? null : copyright.copy(); 2613 dst.approvalDate = approvalDate == null ? null : approvalDate.copy(); 2614 dst.lastReviewDate = lastReviewDate == null ? null : lastReviewDate.copy(); 2615 dst.effectivePeriod = effectivePeriod == null ? null : effectivePeriod.copy(); 2616 if (topic != null) { 2617 dst.topic = new ArrayList<CodeableConcept>(); 2618 for (CodeableConcept i : topic) 2619 dst.topic.add(i.copy()); 2620 } 2621 ; 2622 if (author != null) { 2623 dst.author = new ArrayList<ContactDetail>(); 2624 for (ContactDetail i : author) 2625 dst.author.add(i.copy()); 2626 } 2627 ; 2628 if (editor != null) { 2629 dst.editor = new ArrayList<ContactDetail>(); 2630 for (ContactDetail i : editor) 2631 dst.editor.add(i.copy()); 2632 } 2633 ; 2634 if (reviewer != null) { 2635 dst.reviewer = new ArrayList<ContactDetail>(); 2636 for (ContactDetail i : reviewer) 2637 dst.reviewer.add(i.copy()); 2638 } 2639 ; 2640 if (endorser != null) { 2641 dst.endorser = new ArrayList<ContactDetail>(); 2642 for (ContactDetail i : endorser) 2643 dst.endorser.add(i.copy()); 2644 } 2645 ; 2646 if (relatedArtifact != null) { 2647 dst.relatedArtifact = new ArrayList<RelatedArtifact>(); 2648 for (RelatedArtifact i : relatedArtifact) 2649 dst.relatedArtifact.add(i.copy()); 2650 } 2651 ; 2652 dst.exposureBackground = exposureBackground == null ? null : exposureBackground.copy(); 2653 if (exposureVariant != null) { 2654 dst.exposureVariant = new ArrayList<Reference>(); 2655 for (Reference i : exposureVariant) 2656 dst.exposureVariant.add(i.copy()); 2657 } 2658 ; 2659 if (outcome != null) { 2660 dst.outcome = new ArrayList<Reference>(); 2661 for (Reference i : outcome) 2662 dst.outcome.add(i.copy()); 2663 } 2664 ; 2665 } 2666 2667 protected Evidence typedCopy() { 2668 return copy(); 2669 } 2670 2671 @Override 2672 public boolean equalsDeep(Base other_) { 2673 if (!super.equalsDeep(other_)) 2674 return false; 2675 if (!(other_ instanceof Evidence)) 2676 return false; 2677 Evidence o = (Evidence) other_; 2678 return compareDeep(identifier, o.identifier, true) && compareDeep(shortTitle, o.shortTitle, true) 2679 && compareDeep(subtitle, o.subtitle, true) && compareDeep(note, o.note, true) 2680 && compareDeep(copyright, o.copyright, true) && compareDeep(approvalDate, o.approvalDate, true) 2681 && compareDeep(lastReviewDate, o.lastReviewDate, true) && compareDeep(effectivePeriod, o.effectivePeriod, true) 2682 && compareDeep(topic, o.topic, true) && compareDeep(author, o.author, true) 2683 && compareDeep(editor, o.editor, true) && compareDeep(reviewer, o.reviewer, true) 2684 && compareDeep(endorser, o.endorser, true) && compareDeep(relatedArtifact, o.relatedArtifact, true) 2685 && compareDeep(exposureBackground, o.exposureBackground, true) 2686 && compareDeep(exposureVariant, o.exposureVariant, true) && compareDeep(outcome, o.outcome, true); 2687 } 2688 2689 @Override 2690 public boolean equalsShallow(Base other_) { 2691 if (!super.equalsShallow(other_)) 2692 return false; 2693 if (!(other_ instanceof Evidence)) 2694 return false; 2695 Evidence o = (Evidence) other_; 2696 return compareValues(shortTitle, o.shortTitle, true) && compareValues(subtitle, o.subtitle, true) 2697 && compareValues(copyright, o.copyright, true) && compareValues(approvalDate, o.approvalDate, true) 2698 && compareValues(lastReviewDate, o.lastReviewDate, true); 2699 } 2700 2701 public boolean isEmpty() { 2702 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, shortTitle, subtitle, note, copyright, 2703 approvalDate, lastReviewDate, effectivePeriod, topic, author, editor, reviewer, endorser, relatedArtifact, 2704 exposureBackground, exposureVariant, outcome); 2705 } 2706 2707 @Override 2708 public ResourceType getResourceType() { 2709 return ResourceType.Evidence; 2710 } 2711 2712 /** 2713 * Search parameter: <b>date</b> 2714 * <p> 2715 * Description: <b>The evidence publication date</b><br> 2716 * Type: <b>date</b><br> 2717 * Path: <b>Evidence.date</b><br> 2718 * </p> 2719 */ 2720 @SearchParamDefinition(name = "date", path = "Evidence.date", description = "The evidence publication date", type = "date") 2721 public static final String SP_DATE = "date"; 2722 /** 2723 * <b>Fluent Client</b> search parameter constant for <b>date</b> 2724 * <p> 2725 * Description: <b>The evidence publication date</b><br> 2726 * Type: <b>date</b><br> 2727 * Path: <b>Evidence.date</b><br> 2728 * </p> 2729 */ 2730 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam( 2731 SP_DATE); 2732 2733 /** 2734 * Search parameter: <b>identifier</b> 2735 * <p> 2736 * Description: <b>External identifier for the evidence</b><br> 2737 * Type: <b>token</b><br> 2738 * Path: <b>Evidence.identifier</b><br> 2739 * </p> 2740 */ 2741 @SearchParamDefinition(name = "identifier", path = "Evidence.identifier", description = "External identifier for the evidence", type = "token") 2742 public static final String SP_IDENTIFIER = "identifier"; 2743 /** 2744 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 2745 * <p> 2746 * Description: <b>External identifier for the evidence</b><br> 2747 * Type: <b>token</b><br> 2748 * Path: <b>Evidence.identifier</b><br> 2749 * </p> 2750 */ 2751 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam( 2752 SP_IDENTIFIER); 2753 2754 /** 2755 * Search parameter: <b>successor</b> 2756 * <p> 2757 * Description: <b>What resource is being referenced</b><br> 2758 * Type: <b>reference</b><br> 2759 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2760 * </p> 2761 */ 2762 @SearchParamDefinition(name = "successor", path = "Evidence.relatedArtifact.where(type='successor').resource", description = "What resource is being referenced", type = "reference") 2763 public static final String SP_SUCCESSOR = "successor"; 2764 /** 2765 * <b>Fluent Client</b> search parameter constant for <b>successor</b> 2766 * <p> 2767 * Description: <b>What resource is being referenced</b><br> 2768 * Type: <b>reference</b><br> 2769 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2770 * </p> 2771 */ 2772 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUCCESSOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 2773 SP_SUCCESSOR); 2774 2775 /** 2776 * Constant for fluent queries to be used to add include statements. Specifies 2777 * the path value of "<b>Evidence:successor</b>". 2778 */ 2779 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUCCESSOR = new ca.uhn.fhir.model.api.Include( 2780 "Evidence:successor").toLocked(); 2781 2782 /** 2783 * Search parameter: <b>context-type-value</b> 2784 * <p> 2785 * Description: <b>A use context type and value assigned to the evidence</b><br> 2786 * Type: <b>composite</b><br> 2787 * Path: <b></b><br> 2788 * </p> 2789 */ 2790 @SearchParamDefinition(name = "context-type-value", path = "Evidence.useContext", description = "A use context type and value assigned to the evidence", type = "composite", compositeOf = { 2791 "context-type", "context" }) 2792 public static final String SP_CONTEXT_TYPE_VALUE = "context-type-value"; 2793 /** 2794 * <b>Fluent Client</b> search parameter constant for <b>context-type-value</b> 2795 * <p> 2796 * Description: <b>A use context type and value assigned to the evidence</b><br> 2797 * Type: <b>composite</b><br> 2798 * Path: <b></b><br> 2799 * </p> 2800 */ 2801 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>( 2802 SP_CONTEXT_TYPE_VALUE); 2803 2804 /** 2805 * Search parameter: <b>jurisdiction</b> 2806 * <p> 2807 * Description: <b>Intended jurisdiction for the evidence</b><br> 2808 * Type: <b>token</b><br> 2809 * Path: <b>Evidence.jurisdiction</b><br> 2810 * </p> 2811 */ 2812 @SearchParamDefinition(name = "jurisdiction", path = "Evidence.jurisdiction", description = "Intended jurisdiction for the evidence", type = "token") 2813 public static final String SP_JURISDICTION = "jurisdiction"; 2814 /** 2815 * <b>Fluent Client</b> search parameter constant for <b>jurisdiction</b> 2816 * <p> 2817 * Description: <b>Intended jurisdiction for the evidence</b><br> 2818 * Type: <b>token</b><br> 2819 * Path: <b>Evidence.jurisdiction</b><br> 2820 * </p> 2821 */ 2822 public static final ca.uhn.fhir.rest.gclient.TokenClientParam JURISDICTION = new ca.uhn.fhir.rest.gclient.TokenClientParam( 2823 SP_JURISDICTION); 2824 2825 /** 2826 * Search parameter: <b>description</b> 2827 * <p> 2828 * Description: <b>The description of the evidence</b><br> 2829 * Type: <b>string</b><br> 2830 * Path: <b>Evidence.description</b><br> 2831 * </p> 2832 */ 2833 @SearchParamDefinition(name = "description", path = "Evidence.description", description = "The description of the evidence", type = "string") 2834 public static final String SP_DESCRIPTION = "description"; 2835 /** 2836 * <b>Fluent Client</b> search parameter constant for <b>description</b> 2837 * <p> 2838 * Description: <b>The description of the evidence</b><br> 2839 * Type: <b>string</b><br> 2840 * Path: <b>Evidence.description</b><br> 2841 * </p> 2842 */ 2843 public static final ca.uhn.fhir.rest.gclient.StringClientParam DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam( 2844 SP_DESCRIPTION); 2845 2846 /** 2847 * Search parameter: <b>derived-from</b> 2848 * <p> 2849 * Description: <b>What resource is being referenced</b><br> 2850 * Type: <b>reference</b><br> 2851 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2852 * </p> 2853 */ 2854 @SearchParamDefinition(name = "derived-from", path = "Evidence.relatedArtifact.where(type='derived-from').resource", description = "What resource is being referenced", type = "reference") 2855 public static final String SP_DERIVED_FROM = "derived-from"; 2856 /** 2857 * <b>Fluent Client</b> search parameter constant for <b>derived-from</b> 2858 * <p> 2859 * Description: <b>What resource is being referenced</b><br> 2860 * Type: <b>reference</b><br> 2861 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2862 * </p> 2863 */ 2864 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DERIVED_FROM = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 2865 SP_DERIVED_FROM); 2866 2867 /** 2868 * Constant for fluent queries to be used to add include statements. Specifies 2869 * the path value of "<b>Evidence:derived-from</b>". 2870 */ 2871 public static final ca.uhn.fhir.model.api.Include INCLUDE_DERIVED_FROM = new ca.uhn.fhir.model.api.Include( 2872 "Evidence:derived-from").toLocked(); 2873 2874 /** 2875 * Search parameter: <b>context-type</b> 2876 * <p> 2877 * Description: <b>A type of use context assigned to the evidence</b><br> 2878 * Type: <b>token</b><br> 2879 * Path: <b>Evidence.useContext.code</b><br> 2880 * </p> 2881 */ 2882 @SearchParamDefinition(name = "context-type", path = "Evidence.useContext.code", description = "A type of use context assigned to the evidence", type = "token") 2883 public static final String SP_CONTEXT_TYPE = "context-type"; 2884 /** 2885 * <b>Fluent Client</b> search parameter constant for <b>context-type</b> 2886 * <p> 2887 * Description: <b>A type of use context assigned to the evidence</b><br> 2888 * Type: <b>token</b><br> 2889 * Path: <b>Evidence.useContext.code</b><br> 2890 * </p> 2891 */ 2892 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam( 2893 SP_CONTEXT_TYPE); 2894 2895 /** 2896 * Search parameter: <b>predecessor</b> 2897 * <p> 2898 * Description: <b>What resource is being referenced</b><br> 2899 * Type: <b>reference</b><br> 2900 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2901 * </p> 2902 */ 2903 @SearchParamDefinition(name = "predecessor", path = "Evidence.relatedArtifact.where(type='predecessor').resource", description = "What resource is being referenced", type = "reference") 2904 public static final String SP_PREDECESSOR = "predecessor"; 2905 /** 2906 * <b>Fluent Client</b> search parameter constant for <b>predecessor</b> 2907 * <p> 2908 * Description: <b>What resource is being referenced</b><br> 2909 * Type: <b>reference</b><br> 2910 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2911 * </p> 2912 */ 2913 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PREDECESSOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 2914 SP_PREDECESSOR); 2915 2916 /** 2917 * Constant for fluent queries to be used to add include statements. Specifies 2918 * the path value of "<b>Evidence:predecessor</b>". 2919 */ 2920 public static final ca.uhn.fhir.model.api.Include INCLUDE_PREDECESSOR = new ca.uhn.fhir.model.api.Include( 2921 "Evidence:predecessor").toLocked(); 2922 2923 /** 2924 * Search parameter: <b>title</b> 2925 * <p> 2926 * Description: <b>The human-friendly name of the evidence</b><br> 2927 * Type: <b>string</b><br> 2928 * Path: <b>Evidence.title</b><br> 2929 * </p> 2930 */ 2931 @SearchParamDefinition(name = "title", path = "Evidence.title", description = "The human-friendly name of the evidence", type = "string") 2932 public static final String SP_TITLE = "title"; 2933 /** 2934 * <b>Fluent Client</b> search parameter constant for <b>title</b> 2935 * <p> 2936 * Description: <b>The human-friendly name of the evidence</b><br> 2937 * Type: <b>string</b><br> 2938 * Path: <b>Evidence.title</b><br> 2939 * </p> 2940 */ 2941 public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam( 2942 SP_TITLE); 2943 2944 /** 2945 * Search parameter: <b>composed-of</b> 2946 * <p> 2947 * Description: <b>What resource is being referenced</b><br> 2948 * Type: <b>reference</b><br> 2949 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2950 * </p> 2951 */ 2952 @SearchParamDefinition(name = "composed-of", path = "Evidence.relatedArtifact.where(type='composed-of').resource", description = "What resource is being referenced", type = "reference") 2953 public static final String SP_COMPOSED_OF = "composed-of"; 2954 /** 2955 * <b>Fluent Client</b> search parameter constant for <b>composed-of</b> 2956 * <p> 2957 * Description: <b>What resource is being referenced</b><br> 2958 * Type: <b>reference</b><br> 2959 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2960 * </p> 2961 */ 2962 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam COMPOSED_OF = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 2963 SP_COMPOSED_OF); 2964 2965 /** 2966 * Constant for fluent queries to be used to add include statements. Specifies 2967 * the path value of "<b>Evidence:composed-of</b>". 2968 */ 2969 public static final ca.uhn.fhir.model.api.Include INCLUDE_COMPOSED_OF = new ca.uhn.fhir.model.api.Include( 2970 "Evidence:composed-of").toLocked(); 2971 2972 /** 2973 * Search parameter: <b>version</b> 2974 * <p> 2975 * Description: <b>The business version of the evidence</b><br> 2976 * Type: <b>token</b><br> 2977 * Path: <b>Evidence.version</b><br> 2978 * </p> 2979 */ 2980 @SearchParamDefinition(name = "version", path = "Evidence.version", description = "The business version of the evidence", type = "token") 2981 public static final String SP_VERSION = "version"; 2982 /** 2983 * <b>Fluent Client</b> search parameter constant for <b>version</b> 2984 * <p> 2985 * Description: <b>The business version of the evidence</b><br> 2986 * Type: <b>token</b><br> 2987 * Path: <b>Evidence.version</b><br> 2988 * </p> 2989 */ 2990 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam( 2991 SP_VERSION); 2992 2993 /** 2994 * Search parameter: <b>url</b> 2995 * <p> 2996 * Description: <b>The uri that identifies the evidence</b><br> 2997 * Type: <b>uri</b><br> 2998 * Path: <b>Evidence.url</b><br> 2999 * </p> 3000 */ 3001 @SearchParamDefinition(name = "url", path = "Evidence.url", description = "The uri that identifies the evidence", type = "uri") 3002 public static final String SP_URL = "url"; 3003 /** 3004 * <b>Fluent Client</b> search parameter constant for <b>url</b> 3005 * <p> 3006 * Description: <b>The uri that identifies the evidence</b><br> 3007 * Type: <b>uri</b><br> 3008 * Path: <b>Evidence.url</b><br> 3009 * </p> 3010 */ 3011 public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); 3012 3013 /** 3014 * Search parameter: <b>context-quantity</b> 3015 * <p> 3016 * Description: <b>A quantity- or range-valued use context assigned to the 3017 * evidence</b><br> 3018 * Type: <b>quantity</b><br> 3019 * Path: <b>Evidence.useContext.valueQuantity, 3020 * Evidence.useContext.valueRange</b><br> 3021 * </p> 3022 */ 3023 @SearchParamDefinition(name = "context-quantity", path = "(Evidence.useContext.value as Quantity) | (Evidence.useContext.value as Range)", description = "A quantity- or range-valued use context assigned to the evidence", type = "quantity") 3024 public static final String SP_CONTEXT_QUANTITY = "context-quantity"; 3025 /** 3026 * <b>Fluent Client</b> search parameter constant for <b>context-quantity</b> 3027 * <p> 3028 * Description: <b>A quantity- or range-valued use context assigned to the 3029 * evidence</b><br> 3030 * Type: <b>quantity</b><br> 3031 * Path: <b>Evidence.useContext.valueQuantity, 3032 * Evidence.useContext.valueRange</b><br> 3033 * </p> 3034 */ 3035 public static final ca.uhn.fhir.rest.gclient.QuantityClientParam CONTEXT_QUANTITY = new ca.uhn.fhir.rest.gclient.QuantityClientParam( 3036 SP_CONTEXT_QUANTITY); 3037 3038 /** 3039 * Search parameter: <b>effective</b> 3040 * <p> 3041 * Description: <b>The time during which the evidence is intended to be in 3042 * use</b><br> 3043 * Type: <b>date</b><br> 3044 * Path: <b>Evidence.effectivePeriod</b><br> 3045 * </p> 3046 */ 3047 @SearchParamDefinition(name = "effective", path = "Evidence.effectivePeriod", description = "The time during which the evidence is intended to be in use", type = "date") 3048 public static final String SP_EFFECTIVE = "effective"; 3049 /** 3050 * <b>Fluent Client</b> search parameter constant for <b>effective</b> 3051 * <p> 3052 * Description: <b>The time during which the evidence is intended to be in 3053 * use</b><br> 3054 * Type: <b>date</b><br> 3055 * Path: <b>Evidence.effectivePeriod</b><br> 3056 * </p> 3057 */ 3058 public static final ca.uhn.fhir.rest.gclient.DateClientParam EFFECTIVE = new ca.uhn.fhir.rest.gclient.DateClientParam( 3059 SP_EFFECTIVE); 3060 3061 /** 3062 * Search parameter: <b>depends-on</b> 3063 * <p> 3064 * Description: <b>What resource is being referenced</b><br> 3065 * Type: <b>reference</b><br> 3066 * Path: <b>Evidence.relatedArtifact.resource</b><br> 3067 * </p> 3068 */ 3069 @SearchParamDefinition(name = "depends-on", path = "Evidence.relatedArtifact.where(type='depends-on').resource", description = "What resource is being referenced", type = "reference") 3070 public static final String SP_DEPENDS_ON = "depends-on"; 3071 /** 3072 * <b>Fluent Client</b> search parameter constant for <b>depends-on</b> 3073 * <p> 3074 * Description: <b>What resource is being referenced</b><br> 3075 * Type: <b>reference</b><br> 3076 * Path: <b>Evidence.relatedArtifact.resource</b><br> 3077 * </p> 3078 */ 3079 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DEPENDS_ON = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 3080 SP_DEPENDS_ON); 3081 3082 /** 3083 * Constant for fluent queries to be used to add include statements. Specifies 3084 * the path value of "<b>Evidence:depends-on</b>". 3085 */ 3086 public static final ca.uhn.fhir.model.api.Include INCLUDE_DEPENDS_ON = new ca.uhn.fhir.model.api.Include( 3087 "Evidence:depends-on").toLocked(); 3088 3089 /** 3090 * Search parameter: <b>name</b> 3091 * <p> 3092 * Description: <b>Computationally friendly name of the evidence</b><br> 3093 * Type: <b>string</b><br> 3094 * Path: <b>Evidence.name</b><br> 3095 * </p> 3096 */ 3097 @SearchParamDefinition(name = "name", path = "Evidence.name", description = "Computationally friendly name of the evidence", type = "string") 3098 public static final String SP_NAME = "name"; 3099 /** 3100 * <b>Fluent Client</b> search parameter constant for <b>name</b> 3101 * <p> 3102 * Description: <b>Computationally friendly name of the evidence</b><br> 3103 * Type: <b>string</b><br> 3104 * Path: <b>Evidence.name</b><br> 3105 * </p> 3106 */ 3107 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam( 3108 SP_NAME); 3109 3110 /** 3111 * Search parameter: <b>context</b> 3112 * <p> 3113 * Description: <b>A use context assigned to the evidence</b><br> 3114 * Type: <b>token</b><br> 3115 * Path: <b>Evidence.useContext.valueCodeableConcept</b><br> 3116 * </p> 3117 */ 3118 @SearchParamDefinition(name = "context", path = "(Evidence.useContext.value as CodeableConcept)", description = "A use context assigned to the evidence", type = "token") 3119 public static final String SP_CONTEXT = "context"; 3120 /** 3121 * <b>Fluent Client</b> search parameter constant for <b>context</b> 3122 * <p> 3123 * Description: <b>A use context assigned to the evidence</b><br> 3124 * Type: <b>token</b><br> 3125 * Path: <b>Evidence.useContext.valueCodeableConcept</b><br> 3126 * </p> 3127 */ 3128 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.TokenClientParam( 3129 SP_CONTEXT); 3130 3131 /** 3132 * Search parameter: <b>publisher</b> 3133 * <p> 3134 * Description: <b>Name of the publisher of the evidence</b><br> 3135 * Type: <b>string</b><br> 3136 * Path: <b>Evidence.publisher</b><br> 3137 * </p> 3138 */ 3139 @SearchParamDefinition(name = "publisher", path = "Evidence.publisher", description = "Name of the publisher of the evidence", type = "string") 3140 public static final String SP_PUBLISHER = "publisher"; 3141 /** 3142 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 3143 * <p> 3144 * Description: <b>Name of the publisher of the evidence</b><br> 3145 * Type: <b>string</b><br> 3146 * Path: <b>Evidence.publisher</b><br> 3147 * </p> 3148 */ 3149 public static final ca.uhn.fhir.rest.gclient.StringClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.StringClientParam( 3150 SP_PUBLISHER); 3151 3152 /** 3153 * Search parameter: <b>topic</b> 3154 * <p> 3155 * Description: <b>Topics associated with the Evidence</b><br> 3156 * Type: <b>token</b><br> 3157 * Path: <b>Evidence.topic</b><br> 3158 * </p> 3159 */ 3160 @SearchParamDefinition(name = "topic", path = "Evidence.topic", description = "Topics associated with the Evidence", type = "token") 3161 public static final String SP_TOPIC = "topic"; 3162 /** 3163 * <b>Fluent Client</b> search parameter constant for <b>topic</b> 3164 * <p> 3165 * Description: <b>Topics associated with the Evidence</b><br> 3166 * Type: <b>token</b><br> 3167 * Path: <b>Evidence.topic</b><br> 3168 * </p> 3169 */ 3170 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TOPIC = new ca.uhn.fhir.rest.gclient.TokenClientParam( 3171 SP_TOPIC); 3172 3173 /** 3174 * Search parameter: <b>context-type-quantity</b> 3175 * <p> 3176 * Description: <b>A use context type and quantity- or range-based value 3177 * assigned to the evidence</b><br> 3178 * Type: <b>composite</b><br> 3179 * Path: <b></b><br> 3180 * </p> 3181 */ 3182 @SearchParamDefinition(name = "context-type-quantity", path = "Evidence.useContext", description = "A use context type and quantity- or range-based value assigned to the evidence", type = "composite", compositeOf = { 3183 "context-type", "context-quantity" }) 3184 public static final String SP_CONTEXT_TYPE_QUANTITY = "context-type-quantity"; 3185 /** 3186 * <b>Fluent Client</b> search parameter constant for 3187 * <b>context-type-quantity</b> 3188 * <p> 3189 * Description: <b>A use context type and quantity- or range-based value 3190 * assigned to the evidence</b><br> 3191 * Type: <b>composite</b><br> 3192 * Path: <b></b><br> 3193 * </p> 3194 */ 3195 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>( 3196 SP_CONTEXT_TYPE_QUANTITY); 3197 3198 /** 3199 * Search parameter: <b>status</b> 3200 * <p> 3201 * Description: <b>The current status of the evidence</b><br> 3202 * Type: <b>token</b><br> 3203 * Path: <b>Evidence.status</b><br> 3204 * </p> 3205 */ 3206 @SearchParamDefinition(name = "status", path = "Evidence.status", description = "The current status of the evidence", type = "token") 3207 public static final String SP_STATUS = "status"; 3208 /** 3209 * <b>Fluent Client</b> search parameter constant for <b>status</b> 3210 * <p> 3211 * Description: <b>The current status of the evidence</b><br> 3212 * Type: <b>token</b><br> 3213 * Path: <b>Evidence.status</b><br> 3214 * </p> 3215 */ 3216 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam( 3217 SP_STATUS); 3218 3219}