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 * @deprecated Use Reference#setResource(IBaseResource) instead 1821 */ 1822 @Deprecated 1823 public List<EvidenceVariable> getExposureVariantTarget() { 1824 if (this.exposureVariantTarget == null) 1825 this.exposureVariantTarget = new ArrayList<EvidenceVariable>(); 1826 return this.exposureVariantTarget; 1827 } 1828 1829 /** 1830 * @deprecated Use Reference#setResource(IBaseResource) instead 1831 */ 1832 @Deprecated 1833 public EvidenceVariable addExposureVariantTarget() { 1834 EvidenceVariable r = new EvidenceVariable(); 1835 if (this.exposureVariantTarget == null) 1836 this.exposureVariantTarget = new ArrayList<EvidenceVariable>(); 1837 this.exposureVariantTarget.add(r); 1838 return r; 1839 } 1840 1841 /** 1842 * @return {@link #outcome} (A reference to a EvidenceVariable resomece that 1843 * defines the outcome for the research.) 1844 */ 1845 public List<Reference> getOutcome() { 1846 if (this.outcome == null) 1847 this.outcome = new ArrayList<Reference>(); 1848 return this.outcome; 1849 } 1850 1851 /** 1852 * @return Returns a reference to <code>this</code> for easy method chaining 1853 */ 1854 public Evidence setOutcome(List<Reference> theOutcome) { 1855 this.outcome = theOutcome; 1856 return this; 1857 } 1858 1859 public boolean hasOutcome() { 1860 if (this.outcome == null) 1861 return false; 1862 for (Reference item : this.outcome) 1863 if (!item.isEmpty()) 1864 return true; 1865 return false; 1866 } 1867 1868 public Reference addOutcome() { // 3 1869 Reference t = new Reference(); 1870 if (this.outcome == null) 1871 this.outcome = new ArrayList<Reference>(); 1872 this.outcome.add(t); 1873 return t; 1874 } 1875 1876 public Evidence addOutcome(Reference t) { // 3 1877 if (t == null) 1878 return this; 1879 if (this.outcome == null) 1880 this.outcome = new ArrayList<Reference>(); 1881 this.outcome.add(t); 1882 return this; 1883 } 1884 1885 /** 1886 * @return The first repetition of repeating field {@link #outcome}, creating it 1887 * if it does not already exist 1888 */ 1889 public Reference getOutcomeFirstRep() { 1890 if (getOutcome().isEmpty()) { 1891 addOutcome(); 1892 } 1893 return getOutcome().get(0); 1894 } 1895 1896 /** 1897 * @deprecated Use Reference#setResource(IBaseResource) instead 1898 */ 1899 @Deprecated 1900 public List<EvidenceVariable> getOutcomeTarget() { 1901 if (this.outcomeTarget == null) 1902 this.outcomeTarget = new ArrayList<EvidenceVariable>(); 1903 return this.outcomeTarget; 1904 } 1905 1906 /** 1907 * @deprecated Use Reference#setResource(IBaseResource) instead 1908 */ 1909 @Deprecated 1910 public EvidenceVariable addOutcomeTarget() { 1911 EvidenceVariable r = new EvidenceVariable(); 1912 if (this.outcomeTarget == null) 1913 this.outcomeTarget = new ArrayList<EvidenceVariable>(); 1914 this.outcomeTarget.add(r); 1915 return r; 1916 } 1917 1918 protected void listChildren(List<Property> children) { 1919 super.listChildren(children); 1920 children.add(new Property("url", "uri", 1921 "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.", 1922 0, 1, url)); 1923 children.add(new Property("identifier", "Identifier", 1924 "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.", 1925 0, java.lang.Integer.MAX_VALUE, identifier)); 1926 children.add(new Property("version", "string", 1927 "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.", 1928 0, 1, version)); 1929 children.add(new Property("name", "string", 1930 "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.", 1931 0, 1, name)); 1932 children.add( 1933 new Property("title", "string", "A short, descriptive, user-friendly title for the evidence.", 0, 1, title)); 1934 children.add(new Property("shortTitle", "string", 1935 "The short title provides an alternate title for use in informal descriptive contexts where the full, formal title is not necessary.", 1936 0, 1, shortTitle)); 1937 children.add(new Property("subtitle", "string", 1938 "An explanatory or alternate title for the Evidence giving additional information about its content.", 0, 1, 1939 subtitle)); 1940 children.add(new Property("status", "code", 1941 "The status of this evidence. Enables tracking the life-cycle of the content.", 0, 1, status)); 1942 children.add(new Property("date", "dateTime", 1943 "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.", 1944 0, 1, date)); 1945 children.add(new Property("publisher", "string", 1946 "The name of the organization or individual that published the evidence.", 0, 1, publisher)); 1947 children.add(new Property("contact", "ContactDetail", 1948 "Contact details to assist a user in finding and communicating with the publisher.", 0, 1949 java.lang.Integer.MAX_VALUE, contact)); 1950 children.add(new Property("description", "markdown", 1951 "A free text natural language description of the evidence from a consumer's perspective.", 0, 1, description)); 1952 children.add( 1953 new Property("note", "Annotation", "A human-readable string to clarify or explain concepts about the resource.", 1954 0, java.lang.Integer.MAX_VALUE, note)); 1955 children.add(new Property("useContext", "UsageContext", 1956 "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.", 1957 0, java.lang.Integer.MAX_VALUE, useContext)); 1958 children.add(new Property("jurisdiction", "CodeableConcept", 1959 "A legal or geographic region in which the evidence is intended to be used.", 0, java.lang.Integer.MAX_VALUE, 1960 jurisdiction)); 1961 children.add(new Property("copyright", "markdown", 1962 "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.", 1963 0, 1, copyright)); 1964 children.add(new Property("approvalDate", "date", 1965 "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 1966 0, 1, approvalDate)); 1967 children.add(new Property("lastReviewDate", "date", 1968 "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 1969 0, 1, lastReviewDate)); 1970 children.add(new Property("effectivePeriod", "Period", 1971 "The period during which the evidence content was or is planned to be in active use.", 0, 1, effectivePeriod)); 1972 children.add(new Property("topic", "CodeableConcept", 1973 "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.", 1974 0, java.lang.Integer.MAX_VALUE, topic)); 1975 children.add(new Property("author", "ContactDetail", 1976 "An individiual or organization primarily involved in the creation and maintenance of the content.", 0, 1977 java.lang.Integer.MAX_VALUE, author)); 1978 children.add(new Property("editor", "ContactDetail", 1979 "An individual or organization primarily responsible for internal coherence of the content.", 0, 1980 java.lang.Integer.MAX_VALUE, editor)); 1981 children.add(new Property("reviewer", "ContactDetail", 1982 "An individual or organization primarily responsible for review of some aspect of the content.", 0, 1983 java.lang.Integer.MAX_VALUE, reviewer)); 1984 children.add(new Property("endorser", "ContactDetail", 1985 "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, 1986 java.lang.Integer.MAX_VALUE, endorser)); 1987 children.add(new Property("relatedArtifact", "RelatedArtifact", 1988 "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, 1989 java.lang.Integer.MAX_VALUE, relatedArtifact)); 1990 children.add(new Property("exposureBackground", "Reference(EvidenceVariable)", 1991 "A reference to a EvidenceVariable resource that defines the population for the research.", 0, 1, 1992 exposureBackground)); 1993 children.add(new Property("exposureVariant", "Reference(EvidenceVariable)", 1994 "A reference to a EvidenceVariable resource that defines the exposure for the research.", 0, 1995 java.lang.Integer.MAX_VALUE, exposureVariant)); 1996 children.add(new Property("outcome", "Reference(EvidenceVariable)", 1997 "A reference to a EvidenceVariable resomece that defines the outcome for the research.", 0, 1998 java.lang.Integer.MAX_VALUE, outcome)); 1999 } 2000 2001 @Override 2002 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 2003 switch (_hash) { 2004 case 116079: 2005 /* url */ return new Property("url", "uri", 2006 "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.", 2007 0, 1, url); 2008 case -1618432855: 2009 /* identifier */ return new Property("identifier", "Identifier", 2010 "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.", 2011 0, java.lang.Integer.MAX_VALUE, identifier); 2012 case 351608024: 2013 /* version */ return new Property("version", "string", 2014 "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.", 2015 0, 1, version); 2016 case 3373707: 2017 /* name */ return new Property("name", "string", 2018 "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.", 2019 0, 1, name); 2020 case 110371416: 2021 /* title */ return new Property("title", "string", "A short, descriptive, user-friendly title for the evidence.", 2022 0, 1, title); 2023 case 1555503932: 2024 /* shortTitle */ return new Property("shortTitle", "string", 2025 "The short title provides an alternate title for use in informal descriptive contexts where the full, formal title is not necessary.", 2026 0, 1, shortTitle); 2027 case -2060497896: 2028 /* subtitle */ return new Property("subtitle", "string", 2029 "An explanatory or alternate title for the Evidence giving additional information about its content.", 0, 1, 2030 subtitle); 2031 case -892481550: 2032 /* status */ return new Property("status", "code", 2033 "The status of this evidence. Enables tracking the life-cycle of the content.", 0, 1, status); 2034 case 3076014: 2035 /* date */ return new Property("date", "dateTime", 2036 "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.", 2037 0, 1, date); 2038 case 1447404028: 2039 /* publisher */ return new Property("publisher", "string", 2040 "The name of the organization or individual that published the evidence.", 0, 1, publisher); 2041 case 951526432: 2042 /* contact */ return new Property("contact", "ContactDetail", 2043 "Contact details to assist a user in finding and communicating with the publisher.", 0, 2044 java.lang.Integer.MAX_VALUE, contact); 2045 case -1724546052: 2046 /* description */ return new Property("description", "markdown", 2047 "A free text natural language description of the evidence from a consumer's perspective.", 0, 1, description); 2048 case 3387378: 2049 /* note */ return new Property("note", "Annotation", 2050 "A human-readable string to clarify or explain concepts about the resource.", 0, java.lang.Integer.MAX_VALUE, 2051 note); 2052 case -669707736: 2053 /* useContext */ return new Property("useContext", "UsageContext", 2054 "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.", 2055 0, java.lang.Integer.MAX_VALUE, useContext); 2056 case -507075711: 2057 /* jurisdiction */ return new Property("jurisdiction", "CodeableConcept", 2058 "A legal or geographic region in which the evidence is intended to be used.", 0, java.lang.Integer.MAX_VALUE, 2059 jurisdiction); 2060 case 1522889671: 2061 /* copyright */ return new Property("copyright", "markdown", 2062 "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.", 2063 0, 1, copyright); 2064 case 223539345: 2065 /* approvalDate */ return new Property("approvalDate", "date", 2066 "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 2067 0, 1, approvalDate); 2068 case -1687512484: 2069 /* lastReviewDate */ return new Property("lastReviewDate", "date", 2070 "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 2071 0, 1, lastReviewDate); 2072 case -403934648: 2073 /* effectivePeriod */ return new Property("effectivePeriod", "Period", 2074 "The period during which the evidence content was or is planned to be in active use.", 0, 1, effectivePeriod); 2075 case 110546223: 2076 /* topic */ return new Property("topic", "CodeableConcept", 2077 "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.", 2078 0, java.lang.Integer.MAX_VALUE, topic); 2079 case -1406328437: 2080 /* author */ return new Property("author", "ContactDetail", 2081 "An individiual or organization primarily involved in the creation and maintenance of the content.", 0, 2082 java.lang.Integer.MAX_VALUE, author); 2083 case -1307827859: 2084 /* editor */ return new Property("editor", "ContactDetail", 2085 "An individual or organization primarily responsible for internal coherence of the content.", 0, 2086 java.lang.Integer.MAX_VALUE, editor); 2087 case -261190139: 2088 /* reviewer */ return new Property("reviewer", "ContactDetail", 2089 "An individual or organization primarily responsible for review of some aspect of the content.", 0, 2090 java.lang.Integer.MAX_VALUE, reviewer); 2091 case 1740277666: 2092 /* endorser */ return new Property("endorser", "ContactDetail", 2093 "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, 2094 java.lang.Integer.MAX_VALUE, endorser); 2095 case 666807069: 2096 /* relatedArtifact */ return new Property("relatedArtifact", "RelatedArtifact", 2097 "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, 2098 java.lang.Integer.MAX_VALUE, relatedArtifact); 2099 case -832155243: 2100 /* exposureBackground */ return new Property("exposureBackground", "Reference(EvidenceVariable)", 2101 "A reference to a EvidenceVariable resource that defines the population for the research.", 0, 1, 2102 exposureBackground); 2103 case -19675778: 2104 /* exposureVariant */ return new Property("exposureVariant", "Reference(EvidenceVariable)", 2105 "A reference to a EvidenceVariable resource that defines the exposure for the research.", 0, 2106 java.lang.Integer.MAX_VALUE, exposureVariant); 2107 case -1106507950: 2108 /* outcome */ return new Property("outcome", "Reference(EvidenceVariable)", 2109 "A reference to a EvidenceVariable resomece that defines the outcome for the research.", 0, 2110 java.lang.Integer.MAX_VALUE, outcome); 2111 default: 2112 return super.getNamedProperty(_hash, _name, _checkValid); 2113 } 2114 2115 } 2116 2117 @Override 2118 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 2119 switch (hash) { 2120 case 116079: 2121 /* url */ return this.url == null ? new Base[0] : new Base[] { this.url }; // UriType 2122 case -1618432855: 2123 /* identifier */ return this.identifier == null ? new Base[0] 2124 : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 2125 case 351608024: 2126 /* version */ return this.version == null ? new Base[0] : new Base[] { this.version }; // StringType 2127 case 3373707: 2128 /* name */ return this.name == null ? new Base[0] : new Base[] { this.name }; // StringType 2129 case 110371416: 2130 /* title */ return this.title == null ? new Base[0] : new Base[] { this.title }; // StringType 2131 case 1555503932: 2132 /* shortTitle */ return this.shortTitle == null ? new Base[0] : new Base[] { this.shortTitle }; // StringType 2133 case -2060497896: 2134 /* subtitle */ return this.subtitle == null ? new Base[0] : new Base[] { this.subtitle }; // StringType 2135 case -892481550: 2136 /* status */ return this.status == null ? new Base[0] : new Base[] { this.status }; // Enumeration<PublicationStatus> 2137 case 3076014: 2138 /* date */ return this.date == null ? new Base[0] : new Base[] { this.date }; // DateTimeType 2139 case 1447404028: 2140 /* publisher */ return this.publisher == null ? new Base[0] : new Base[] { this.publisher }; // StringType 2141 case 951526432: 2142 /* contact */ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactDetail 2143 case -1724546052: 2144 /* description */ return this.description == null ? new Base[0] : new Base[] { this.description }; // MarkdownType 2145 case 3387378: 2146 /* note */ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 2147 case -669707736: 2148 /* useContext */ return this.useContext == null ? new Base[0] 2149 : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 2150 case -507075711: 2151 /* jurisdiction */ return this.jurisdiction == null ? new Base[0] 2152 : this.jurisdiction.toArray(new Base[this.jurisdiction.size()]); // CodeableConcept 2153 case 1522889671: 2154 /* copyright */ return this.copyright == null ? new Base[0] : new Base[] { this.copyright }; // MarkdownType 2155 case 223539345: 2156 /* approvalDate */ return this.approvalDate == null ? new Base[0] : new Base[] { this.approvalDate }; // DateType 2157 case -1687512484: 2158 /* lastReviewDate */ return this.lastReviewDate == null ? new Base[0] : new Base[] { this.lastReviewDate }; // DateType 2159 case -403934648: 2160 /* effectivePeriod */ return this.effectivePeriod == null ? new Base[0] : new Base[] { this.effectivePeriod }; // Period 2161 case 110546223: 2162 /* topic */ return this.topic == null ? new Base[0] : this.topic.toArray(new Base[this.topic.size()]); // CodeableConcept 2163 case -1406328437: 2164 /* author */ return this.author == null ? new Base[0] : this.author.toArray(new Base[this.author.size()]); // ContactDetail 2165 case -1307827859: 2166 /* editor */ return this.editor == null ? new Base[0] : this.editor.toArray(new Base[this.editor.size()]); // ContactDetail 2167 case -261190139: 2168 /* reviewer */ return this.reviewer == null ? new Base[0] : this.reviewer.toArray(new Base[this.reviewer.size()]); // ContactDetail 2169 case 1740277666: 2170 /* endorser */ return this.endorser == null ? new Base[0] : this.endorser.toArray(new Base[this.endorser.size()]); // ContactDetail 2171 case 666807069: 2172 /* relatedArtifact */ return this.relatedArtifact == null ? new Base[0] 2173 : this.relatedArtifact.toArray(new Base[this.relatedArtifact.size()]); // RelatedArtifact 2174 case -832155243: 2175 /* exposureBackground */ return this.exposureBackground == null ? new Base[0] 2176 : new Base[] { this.exposureBackground }; // Reference 2177 case -19675778: 2178 /* exposureVariant */ return this.exposureVariant == null ? new Base[0] 2179 : this.exposureVariant.toArray(new Base[this.exposureVariant.size()]); // Reference 2180 case -1106507950: 2181 /* outcome */ return this.outcome == null ? new Base[0] : this.outcome.toArray(new Base[this.outcome.size()]); // Reference 2182 default: 2183 return super.getProperty(hash, name, checkValid); 2184 } 2185 2186 } 2187 2188 @Override 2189 public Base setProperty(int hash, String name, Base value) throws FHIRException { 2190 switch (hash) { 2191 case 116079: // url 2192 this.url = castToUri(value); // UriType 2193 return value; 2194 case -1618432855: // identifier 2195 this.getIdentifier().add(castToIdentifier(value)); // Identifier 2196 return value; 2197 case 351608024: // version 2198 this.version = castToString(value); // StringType 2199 return value; 2200 case 3373707: // name 2201 this.name = castToString(value); // StringType 2202 return value; 2203 case 110371416: // title 2204 this.title = castToString(value); // StringType 2205 return value; 2206 case 1555503932: // shortTitle 2207 this.shortTitle = castToString(value); // StringType 2208 return value; 2209 case -2060497896: // subtitle 2210 this.subtitle = castToString(value); // StringType 2211 return value; 2212 case -892481550: // status 2213 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 2214 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 2215 return value; 2216 case 3076014: // date 2217 this.date = castToDateTime(value); // DateTimeType 2218 return value; 2219 case 1447404028: // publisher 2220 this.publisher = castToString(value); // StringType 2221 return value; 2222 case 951526432: // contact 2223 this.getContact().add(castToContactDetail(value)); // ContactDetail 2224 return value; 2225 case -1724546052: // description 2226 this.description = castToMarkdown(value); // MarkdownType 2227 return value; 2228 case 3387378: // note 2229 this.getNote().add(castToAnnotation(value)); // Annotation 2230 return value; 2231 case -669707736: // useContext 2232 this.getUseContext().add(castToUsageContext(value)); // UsageContext 2233 return value; 2234 case -507075711: // jurisdiction 2235 this.getJurisdiction().add(castToCodeableConcept(value)); // CodeableConcept 2236 return value; 2237 case 1522889671: // copyright 2238 this.copyright = castToMarkdown(value); // MarkdownType 2239 return value; 2240 case 223539345: // approvalDate 2241 this.approvalDate = castToDate(value); // DateType 2242 return value; 2243 case -1687512484: // lastReviewDate 2244 this.lastReviewDate = castToDate(value); // DateType 2245 return value; 2246 case -403934648: // effectivePeriod 2247 this.effectivePeriod = castToPeriod(value); // Period 2248 return value; 2249 case 110546223: // topic 2250 this.getTopic().add(castToCodeableConcept(value)); // CodeableConcept 2251 return value; 2252 case -1406328437: // author 2253 this.getAuthor().add(castToContactDetail(value)); // ContactDetail 2254 return value; 2255 case -1307827859: // editor 2256 this.getEditor().add(castToContactDetail(value)); // ContactDetail 2257 return value; 2258 case -261190139: // reviewer 2259 this.getReviewer().add(castToContactDetail(value)); // ContactDetail 2260 return value; 2261 case 1740277666: // endorser 2262 this.getEndorser().add(castToContactDetail(value)); // ContactDetail 2263 return value; 2264 case 666807069: // relatedArtifact 2265 this.getRelatedArtifact().add(castToRelatedArtifact(value)); // RelatedArtifact 2266 return value; 2267 case -832155243: // exposureBackground 2268 this.exposureBackground = castToReference(value); // Reference 2269 return value; 2270 case -19675778: // exposureVariant 2271 this.getExposureVariant().add(castToReference(value)); // Reference 2272 return value; 2273 case -1106507950: // outcome 2274 this.getOutcome().add(castToReference(value)); // Reference 2275 return value; 2276 default: 2277 return super.setProperty(hash, name, value); 2278 } 2279 2280 } 2281 2282 @Override 2283 public Base setProperty(String name, Base value) throws FHIRException { 2284 if (name.equals("url")) { 2285 this.url = castToUri(value); // UriType 2286 } else if (name.equals("identifier")) { 2287 this.getIdentifier().add(castToIdentifier(value)); 2288 } else if (name.equals("version")) { 2289 this.version = castToString(value); // StringType 2290 } else if (name.equals("name")) { 2291 this.name = castToString(value); // StringType 2292 } else if (name.equals("title")) { 2293 this.title = castToString(value); // StringType 2294 } else if (name.equals("shortTitle")) { 2295 this.shortTitle = castToString(value); // StringType 2296 } else if (name.equals("subtitle")) { 2297 this.subtitle = castToString(value); // StringType 2298 } else if (name.equals("status")) { 2299 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 2300 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 2301 } else if (name.equals("date")) { 2302 this.date = castToDateTime(value); // DateTimeType 2303 } else if (name.equals("publisher")) { 2304 this.publisher = castToString(value); // StringType 2305 } else if (name.equals("contact")) { 2306 this.getContact().add(castToContactDetail(value)); 2307 } else if (name.equals("description")) { 2308 this.description = castToMarkdown(value); // MarkdownType 2309 } else if (name.equals("note")) { 2310 this.getNote().add(castToAnnotation(value)); 2311 } else if (name.equals("useContext")) { 2312 this.getUseContext().add(castToUsageContext(value)); 2313 } else if (name.equals("jurisdiction")) { 2314 this.getJurisdiction().add(castToCodeableConcept(value)); 2315 } else if (name.equals("copyright")) { 2316 this.copyright = castToMarkdown(value); // MarkdownType 2317 } else if (name.equals("approvalDate")) { 2318 this.approvalDate = castToDate(value); // DateType 2319 } else if (name.equals("lastReviewDate")) { 2320 this.lastReviewDate = castToDate(value); // DateType 2321 } else if (name.equals("effectivePeriod")) { 2322 this.effectivePeriod = castToPeriod(value); // Period 2323 } else if (name.equals("topic")) { 2324 this.getTopic().add(castToCodeableConcept(value)); 2325 } else if (name.equals("author")) { 2326 this.getAuthor().add(castToContactDetail(value)); 2327 } else if (name.equals("editor")) { 2328 this.getEditor().add(castToContactDetail(value)); 2329 } else if (name.equals("reviewer")) { 2330 this.getReviewer().add(castToContactDetail(value)); 2331 } else if (name.equals("endorser")) { 2332 this.getEndorser().add(castToContactDetail(value)); 2333 } else if (name.equals("relatedArtifact")) { 2334 this.getRelatedArtifact().add(castToRelatedArtifact(value)); 2335 } else if (name.equals("exposureBackground")) { 2336 this.exposureBackground = castToReference(value); // Reference 2337 } else if (name.equals("exposureVariant")) { 2338 this.getExposureVariant().add(castToReference(value)); 2339 } else if (name.equals("outcome")) { 2340 this.getOutcome().add(castToReference(value)); 2341 } else 2342 return super.setProperty(name, value); 2343 return value; 2344 } 2345 2346 @Override 2347 public void removeChild(String name, Base value) throws FHIRException { 2348 if (name.equals("url")) { 2349 this.url = null; 2350 } else if (name.equals("identifier")) { 2351 this.getIdentifier().remove(castToIdentifier(value)); 2352 } else if (name.equals("version")) { 2353 this.version = null; 2354 } else if (name.equals("name")) { 2355 this.name = null; 2356 } else if (name.equals("title")) { 2357 this.title = null; 2358 } else if (name.equals("shortTitle")) { 2359 this.shortTitle = null; 2360 } else if (name.equals("subtitle")) { 2361 this.subtitle = null; 2362 } else if (name.equals("status")) { 2363 this.status = null; 2364 } else if (name.equals("date")) { 2365 this.date = null; 2366 } else if (name.equals("publisher")) { 2367 this.publisher = null; 2368 } else if (name.equals("contact")) { 2369 this.getContact().remove(castToContactDetail(value)); 2370 } else if (name.equals("description")) { 2371 this.description = null; 2372 } else if (name.equals("note")) { 2373 this.getNote().remove(castToAnnotation(value)); 2374 } else if (name.equals("useContext")) { 2375 this.getUseContext().remove(castToUsageContext(value)); 2376 } else if (name.equals("jurisdiction")) { 2377 this.getJurisdiction().remove(castToCodeableConcept(value)); 2378 } else if (name.equals("copyright")) { 2379 this.copyright = null; 2380 } else if (name.equals("approvalDate")) { 2381 this.approvalDate = null; 2382 } else if (name.equals("lastReviewDate")) { 2383 this.lastReviewDate = null; 2384 } else if (name.equals("effectivePeriod")) { 2385 this.effectivePeriod = null; 2386 } else if (name.equals("topic")) { 2387 this.getTopic().remove(castToCodeableConcept(value)); 2388 } else if (name.equals("author")) { 2389 this.getAuthor().remove(castToContactDetail(value)); 2390 } else if (name.equals("editor")) { 2391 this.getEditor().remove(castToContactDetail(value)); 2392 } else if (name.equals("reviewer")) { 2393 this.getReviewer().remove(castToContactDetail(value)); 2394 } else if (name.equals("endorser")) { 2395 this.getEndorser().remove(castToContactDetail(value)); 2396 } else if (name.equals("relatedArtifact")) { 2397 this.getRelatedArtifact().remove(castToRelatedArtifact(value)); 2398 } else if (name.equals("exposureBackground")) { 2399 this.exposureBackground = null; 2400 } else if (name.equals("exposureVariant")) { 2401 this.getExposureVariant().remove(castToReference(value)); 2402 } else if (name.equals("outcome")) { 2403 this.getOutcome().remove(castToReference(value)); 2404 } else 2405 super.removeChild(name, value); 2406 2407 } 2408 2409 @Override 2410 public Base makeProperty(int hash, String name) throws FHIRException { 2411 switch (hash) { 2412 case 116079: 2413 return getUrlElement(); 2414 case -1618432855: 2415 return addIdentifier(); 2416 case 351608024: 2417 return getVersionElement(); 2418 case 3373707: 2419 return getNameElement(); 2420 case 110371416: 2421 return getTitleElement(); 2422 case 1555503932: 2423 return getShortTitleElement(); 2424 case -2060497896: 2425 return getSubtitleElement(); 2426 case -892481550: 2427 return getStatusElement(); 2428 case 3076014: 2429 return getDateElement(); 2430 case 1447404028: 2431 return getPublisherElement(); 2432 case 951526432: 2433 return addContact(); 2434 case -1724546052: 2435 return getDescriptionElement(); 2436 case 3387378: 2437 return addNote(); 2438 case -669707736: 2439 return addUseContext(); 2440 case -507075711: 2441 return addJurisdiction(); 2442 case 1522889671: 2443 return getCopyrightElement(); 2444 case 223539345: 2445 return getApprovalDateElement(); 2446 case -1687512484: 2447 return getLastReviewDateElement(); 2448 case -403934648: 2449 return getEffectivePeriod(); 2450 case 110546223: 2451 return addTopic(); 2452 case -1406328437: 2453 return addAuthor(); 2454 case -1307827859: 2455 return addEditor(); 2456 case -261190139: 2457 return addReviewer(); 2458 case 1740277666: 2459 return addEndorser(); 2460 case 666807069: 2461 return addRelatedArtifact(); 2462 case -832155243: 2463 return getExposureBackground(); 2464 case -19675778: 2465 return addExposureVariant(); 2466 case -1106507950: 2467 return addOutcome(); 2468 default: 2469 return super.makeProperty(hash, name); 2470 } 2471 2472 } 2473 2474 @Override 2475 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 2476 switch (hash) { 2477 case 116079: 2478 /* url */ return new String[] { "uri" }; 2479 case -1618432855: 2480 /* identifier */ return new String[] { "Identifier" }; 2481 case 351608024: 2482 /* version */ return new String[] { "string" }; 2483 case 3373707: 2484 /* name */ return new String[] { "string" }; 2485 case 110371416: 2486 /* title */ return new String[] { "string" }; 2487 case 1555503932: 2488 /* shortTitle */ return new String[] { "string" }; 2489 case -2060497896: 2490 /* subtitle */ return new String[] { "string" }; 2491 case -892481550: 2492 /* status */ return new String[] { "code" }; 2493 case 3076014: 2494 /* date */ return new String[] { "dateTime" }; 2495 case 1447404028: 2496 /* publisher */ return new String[] { "string" }; 2497 case 951526432: 2498 /* contact */ return new String[] { "ContactDetail" }; 2499 case -1724546052: 2500 /* description */ return new String[] { "markdown" }; 2501 case 3387378: 2502 /* note */ return new String[] { "Annotation" }; 2503 case -669707736: 2504 /* useContext */ return new String[] { "UsageContext" }; 2505 case -507075711: 2506 /* jurisdiction */ return new String[] { "CodeableConcept" }; 2507 case 1522889671: 2508 /* copyright */ return new String[] { "markdown" }; 2509 case 223539345: 2510 /* approvalDate */ return new String[] { "date" }; 2511 case -1687512484: 2512 /* lastReviewDate */ return new String[] { "date" }; 2513 case -403934648: 2514 /* effectivePeriod */ return new String[] { "Period" }; 2515 case 110546223: 2516 /* topic */ return new String[] { "CodeableConcept" }; 2517 case -1406328437: 2518 /* author */ return new String[] { "ContactDetail" }; 2519 case -1307827859: 2520 /* editor */ return new String[] { "ContactDetail" }; 2521 case -261190139: 2522 /* reviewer */ return new String[] { "ContactDetail" }; 2523 case 1740277666: 2524 /* endorser */ return new String[] { "ContactDetail" }; 2525 case 666807069: 2526 /* relatedArtifact */ return new String[] { "RelatedArtifact" }; 2527 case -832155243: 2528 /* exposureBackground */ return new String[] { "Reference" }; 2529 case -19675778: 2530 /* exposureVariant */ return new String[] { "Reference" }; 2531 case -1106507950: 2532 /* outcome */ return new String[] { "Reference" }; 2533 default: 2534 return super.getTypesForProperty(hash, name); 2535 } 2536 2537 } 2538 2539 @Override 2540 public Base addChild(String name) throws FHIRException { 2541 if (name.equals("url")) { 2542 throw new FHIRException("Cannot call addChild on a singleton property Evidence.url"); 2543 } else if (name.equals("identifier")) { 2544 return addIdentifier(); 2545 } else if (name.equals("version")) { 2546 throw new FHIRException("Cannot call addChild on a singleton property Evidence.version"); 2547 } else if (name.equals("name")) { 2548 throw new FHIRException("Cannot call addChild on a singleton property Evidence.name"); 2549 } else if (name.equals("title")) { 2550 throw new FHIRException("Cannot call addChild on a singleton property Evidence.title"); 2551 } else if (name.equals("shortTitle")) { 2552 throw new FHIRException("Cannot call addChild on a singleton property Evidence.shortTitle"); 2553 } else if (name.equals("subtitle")) { 2554 throw new FHIRException("Cannot call addChild on a singleton property Evidence.subtitle"); 2555 } else if (name.equals("status")) { 2556 throw new FHIRException("Cannot call addChild on a singleton property Evidence.status"); 2557 } else if (name.equals("date")) { 2558 throw new FHIRException("Cannot call addChild on a singleton property Evidence.date"); 2559 } else if (name.equals("publisher")) { 2560 throw new FHIRException("Cannot call addChild on a singleton property Evidence.publisher"); 2561 } else if (name.equals("contact")) { 2562 return addContact(); 2563 } else if (name.equals("description")) { 2564 throw new FHIRException("Cannot call addChild on a singleton property Evidence.description"); 2565 } else if (name.equals("note")) { 2566 return addNote(); 2567 } else if (name.equals("useContext")) { 2568 return addUseContext(); 2569 } else if (name.equals("jurisdiction")) { 2570 return addJurisdiction(); 2571 } else if (name.equals("copyright")) { 2572 throw new FHIRException("Cannot call addChild on a singleton property Evidence.copyright"); 2573 } else if (name.equals("approvalDate")) { 2574 throw new FHIRException("Cannot call addChild on a singleton property Evidence.approvalDate"); 2575 } else if (name.equals("lastReviewDate")) { 2576 throw new FHIRException("Cannot call addChild on a singleton property Evidence.lastReviewDate"); 2577 } else if (name.equals("effectivePeriod")) { 2578 this.effectivePeriod = new Period(); 2579 return this.effectivePeriod; 2580 } else if (name.equals("topic")) { 2581 return addTopic(); 2582 } else if (name.equals("author")) { 2583 return addAuthor(); 2584 } else if (name.equals("editor")) { 2585 return addEditor(); 2586 } else if (name.equals("reviewer")) { 2587 return addReviewer(); 2588 } else if (name.equals("endorser")) { 2589 return addEndorser(); 2590 } else if (name.equals("relatedArtifact")) { 2591 return addRelatedArtifact(); 2592 } else if (name.equals("exposureBackground")) { 2593 this.exposureBackground = new Reference(); 2594 return this.exposureBackground; 2595 } else if (name.equals("exposureVariant")) { 2596 return addExposureVariant(); 2597 } else if (name.equals("outcome")) { 2598 return addOutcome(); 2599 } else 2600 return super.addChild(name); 2601 } 2602 2603 public String fhirType() { 2604 return "Evidence"; 2605 2606 } 2607 2608 public Evidence copy() { 2609 Evidence dst = new Evidence(); 2610 copyValues(dst); 2611 return dst; 2612 } 2613 2614 public void copyValues(Evidence dst) { 2615 super.copyValues(dst); 2616 dst.url = url == null ? null : url.copy(); 2617 if (identifier != null) { 2618 dst.identifier = new ArrayList<Identifier>(); 2619 for (Identifier i : identifier) 2620 dst.identifier.add(i.copy()); 2621 } 2622 ; 2623 dst.version = version == null ? null : version.copy(); 2624 dst.name = name == null ? null : name.copy(); 2625 dst.title = title == null ? null : title.copy(); 2626 dst.shortTitle = shortTitle == null ? null : shortTitle.copy(); 2627 dst.subtitle = subtitle == null ? null : subtitle.copy(); 2628 dst.status = status == null ? null : status.copy(); 2629 dst.date = date == null ? null : date.copy(); 2630 dst.publisher = publisher == null ? null : publisher.copy(); 2631 if (contact != null) { 2632 dst.contact = new ArrayList<ContactDetail>(); 2633 for (ContactDetail i : contact) 2634 dst.contact.add(i.copy()); 2635 } 2636 ; 2637 dst.description = description == null ? null : description.copy(); 2638 if (note != null) { 2639 dst.note = new ArrayList<Annotation>(); 2640 for (Annotation i : note) 2641 dst.note.add(i.copy()); 2642 } 2643 ; 2644 if (useContext != null) { 2645 dst.useContext = new ArrayList<UsageContext>(); 2646 for (UsageContext i : useContext) 2647 dst.useContext.add(i.copy()); 2648 } 2649 ; 2650 if (jurisdiction != null) { 2651 dst.jurisdiction = new ArrayList<CodeableConcept>(); 2652 for (CodeableConcept i : jurisdiction) 2653 dst.jurisdiction.add(i.copy()); 2654 } 2655 ; 2656 dst.copyright = copyright == null ? null : copyright.copy(); 2657 dst.approvalDate = approvalDate == null ? null : approvalDate.copy(); 2658 dst.lastReviewDate = lastReviewDate == null ? null : lastReviewDate.copy(); 2659 dst.effectivePeriod = effectivePeriod == null ? null : effectivePeriod.copy(); 2660 if (topic != null) { 2661 dst.topic = new ArrayList<CodeableConcept>(); 2662 for (CodeableConcept i : topic) 2663 dst.topic.add(i.copy()); 2664 } 2665 ; 2666 if (author != null) { 2667 dst.author = new ArrayList<ContactDetail>(); 2668 for (ContactDetail i : author) 2669 dst.author.add(i.copy()); 2670 } 2671 ; 2672 if (editor != null) { 2673 dst.editor = new ArrayList<ContactDetail>(); 2674 for (ContactDetail i : editor) 2675 dst.editor.add(i.copy()); 2676 } 2677 ; 2678 if (reviewer != null) { 2679 dst.reviewer = new ArrayList<ContactDetail>(); 2680 for (ContactDetail i : reviewer) 2681 dst.reviewer.add(i.copy()); 2682 } 2683 ; 2684 if (endorser != null) { 2685 dst.endorser = new ArrayList<ContactDetail>(); 2686 for (ContactDetail i : endorser) 2687 dst.endorser.add(i.copy()); 2688 } 2689 ; 2690 if (relatedArtifact != null) { 2691 dst.relatedArtifact = new ArrayList<RelatedArtifact>(); 2692 for (RelatedArtifact i : relatedArtifact) 2693 dst.relatedArtifact.add(i.copy()); 2694 } 2695 ; 2696 dst.exposureBackground = exposureBackground == null ? null : exposureBackground.copy(); 2697 if (exposureVariant != null) { 2698 dst.exposureVariant = new ArrayList<Reference>(); 2699 for (Reference i : exposureVariant) 2700 dst.exposureVariant.add(i.copy()); 2701 } 2702 ; 2703 if (outcome != null) { 2704 dst.outcome = new ArrayList<Reference>(); 2705 for (Reference i : outcome) 2706 dst.outcome.add(i.copy()); 2707 } 2708 ; 2709 } 2710 2711 protected Evidence typedCopy() { 2712 return copy(); 2713 } 2714 2715 @Override 2716 public boolean equalsDeep(Base other_) { 2717 if (!super.equalsDeep(other_)) 2718 return false; 2719 if (!(other_ instanceof Evidence)) 2720 return false; 2721 Evidence o = (Evidence) other_; 2722 return compareDeep(identifier, o.identifier, true) && compareDeep(shortTitle, o.shortTitle, true) 2723 && compareDeep(subtitle, o.subtitle, true) && compareDeep(note, o.note, true) 2724 && compareDeep(copyright, o.copyright, true) && compareDeep(approvalDate, o.approvalDate, true) 2725 && compareDeep(lastReviewDate, o.lastReviewDate, true) && compareDeep(effectivePeriod, o.effectivePeriod, true) 2726 && compareDeep(topic, o.topic, true) && compareDeep(author, o.author, true) 2727 && compareDeep(editor, o.editor, true) && compareDeep(reviewer, o.reviewer, true) 2728 && compareDeep(endorser, o.endorser, true) && compareDeep(relatedArtifact, o.relatedArtifact, true) 2729 && compareDeep(exposureBackground, o.exposureBackground, true) 2730 && compareDeep(exposureVariant, o.exposureVariant, true) && compareDeep(outcome, o.outcome, true); 2731 } 2732 2733 @Override 2734 public boolean equalsShallow(Base other_) { 2735 if (!super.equalsShallow(other_)) 2736 return false; 2737 if (!(other_ instanceof Evidence)) 2738 return false; 2739 Evidence o = (Evidence) other_; 2740 return compareValues(shortTitle, o.shortTitle, true) && compareValues(subtitle, o.subtitle, true) 2741 && compareValues(copyright, o.copyright, true) && compareValues(approvalDate, o.approvalDate, true) 2742 && compareValues(lastReviewDate, o.lastReviewDate, true); 2743 } 2744 2745 public boolean isEmpty() { 2746 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, shortTitle, subtitle, note, copyright, 2747 approvalDate, lastReviewDate, effectivePeriod, topic, author, editor, reviewer, endorser, relatedArtifact, 2748 exposureBackground, exposureVariant, outcome); 2749 } 2750 2751 @Override 2752 public ResourceType getResourceType() { 2753 return ResourceType.Evidence; 2754 } 2755 2756 /** 2757 * Search parameter: <b>date</b> 2758 * <p> 2759 * Description: <b>The evidence publication date</b><br> 2760 * Type: <b>date</b><br> 2761 * Path: <b>Evidence.date</b><br> 2762 * </p> 2763 */ 2764 @SearchParamDefinition(name = "date", path = "Evidence.date", description = "The evidence publication date", type = "date") 2765 public static final String SP_DATE = "date"; 2766 /** 2767 * <b>Fluent Client</b> search parameter constant for <b>date</b> 2768 * <p> 2769 * Description: <b>The evidence publication date</b><br> 2770 * Type: <b>date</b><br> 2771 * Path: <b>Evidence.date</b><br> 2772 * </p> 2773 */ 2774 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam( 2775 SP_DATE); 2776 2777 /** 2778 * Search parameter: <b>identifier</b> 2779 * <p> 2780 * Description: <b>External identifier for the evidence</b><br> 2781 * Type: <b>token</b><br> 2782 * Path: <b>Evidence.identifier</b><br> 2783 * </p> 2784 */ 2785 @SearchParamDefinition(name = "identifier", path = "Evidence.identifier", description = "External identifier for the evidence", type = "token") 2786 public static final String SP_IDENTIFIER = "identifier"; 2787 /** 2788 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 2789 * <p> 2790 * Description: <b>External identifier for the evidence</b><br> 2791 * Type: <b>token</b><br> 2792 * Path: <b>Evidence.identifier</b><br> 2793 * </p> 2794 */ 2795 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam( 2796 SP_IDENTIFIER); 2797 2798 /** 2799 * Search parameter: <b>successor</b> 2800 * <p> 2801 * Description: <b>What resource is being referenced</b><br> 2802 * Type: <b>reference</b><br> 2803 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2804 * </p> 2805 */ 2806 @SearchParamDefinition(name = "successor", path = "Evidence.relatedArtifact.where(type='successor').resource", description = "What resource is being referenced", type = "reference") 2807 public static final String SP_SUCCESSOR = "successor"; 2808 /** 2809 * <b>Fluent Client</b> search parameter constant for <b>successor</b> 2810 * <p> 2811 * Description: <b>What resource is being referenced</b><br> 2812 * Type: <b>reference</b><br> 2813 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2814 * </p> 2815 */ 2816 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUCCESSOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 2817 SP_SUCCESSOR); 2818 2819 /** 2820 * Constant for fluent queries to be used to add include statements. Specifies 2821 * the path value of "<b>Evidence:successor</b>". 2822 */ 2823 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUCCESSOR = new ca.uhn.fhir.model.api.Include( 2824 "Evidence:successor").toLocked(); 2825 2826 /** 2827 * Search parameter: <b>context-type-value</b> 2828 * <p> 2829 * Description: <b>A use context type and value assigned to the evidence</b><br> 2830 * Type: <b>composite</b><br> 2831 * Path: <b></b><br> 2832 * </p> 2833 */ 2834 @SearchParamDefinition(name = "context-type-value", path = "Evidence.useContext", description = "A use context type and value assigned to the evidence", type = "composite", compositeOf = { 2835 "context-type", "context" }) 2836 public static final String SP_CONTEXT_TYPE_VALUE = "context-type-value"; 2837 /** 2838 * <b>Fluent Client</b> search parameter constant for <b>context-type-value</b> 2839 * <p> 2840 * Description: <b>A use context type and value assigned to the evidence</b><br> 2841 * Type: <b>composite</b><br> 2842 * Path: <b></b><br> 2843 * </p> 2844 */ 2845 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>( 2846 SP_CONTEXT_TYPE_VALUE); 2847 2848 /** 2849 * Search parameter: <b>jurisdiction</b> 2850 * <p> 2851 * Description: <b>Intended jurisdiction for the evidence</b><br> 2852 * Type: <b>token</b><br> 2853 * Path: <b>Evidence.jurisdiction</b><br> 2854 * </p> 2855 */ 2856 @SearchParamDefinition(name = "jurisdiction", path = "Evidence.jurisdiction", description = "Intended jurisdiction for the evidence", type = "token") 2857 public static final String SP_JURISDICTION = "jurisdiction"; 2858 /** 2859 * <b>Fluent Client</b> search parameter constant for <b>jurisdiction</b> 2860 * <p> 2861 * Description: <b>Intended jurisdiction for the evidence</b><br> 2862 * Type: <b>token</b><br> 2863 * Path: <b>Evidence.jurisdiction</b><br> 2864 * </p> 2865 */ 2866 public static final ca.uhn.fhir.rest.gclient.TokenClientParam JURISDICTION = new ca.uhn.fhir.rest.gclient.TokenClientParam( 2867 SP_JURISDICTION); 2868 2869 /** 2870 * Search parameter: <b>description</b> 2871 * <p> 2872 * Description: <b>The description of the evidence</b><br> 2873 * Type: <b>string</b><br> 2874 * Path: <b>Evidence.description</b><br> 2875 * </p> 2876 */ 2877 @SearchParamDefinition(name = "description", path = "Evidence.description", description = "The description of the evidence", type = "string") 2878 public static final String SP_DESCRIPTION = "description"; 2879 /** 2880 * <b>Fluent Client</b> search parameter constant for <b>description</b> 2881 * <p> 2882 * Description: <b>The description of the evidence</b><br> 2883 * Type: <b>string</b><br> 2884 * Path: <b>Evidence.description</b><br> 2885 * </p> 2886 */ 2887 public static final ca.uhn.fhir.rest.gclient.StringClientParam DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam( 2888 SP_DESCRIPTION); 2889 2890 /** 2891 * Search parameter: <b>derived-from</b> 2892 * <p> 2893 * Description: <b>What resource is being referenced</b><br> 2894 * Type: <b>reference</b><br> 2895 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2896 * </p> 2897 */ 2898 @SearchParamDefinition(name = "derived-from", path = "Evidence.relatedArtifact.where(type='derived-from').resource", description = "What resource is being referenced", type = "reference") 2899 public static final String SP_DERIVED_FROM = "derived-from"; 2900 /** 2901 * <b>Fluent Client</b> search parameter constant for <b>derived-from</b> 2902 * <p> 2903 * Description: <b>What resource is being referenced</b><br> 2904 * Type: <b>reference</b><br> 2905 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2906 * </p> 2907 */ 2908 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DERIVED_FROM = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 2909 SP_DERIVED_FROM); 2910 2911 /** 2912 * Constant for fluent queries to be used to add include statements. Specifies 2913 * the path value of "<b>Evidence:derived-from</b>". 2914 */ 2915 public static final ca.uhn.fhir.model.api.Include INCLUDE_DERIVED_FROM = new ca.uhn.fhir.model.api.Include( 2916 "Evidence:derived-from").toLocked(); 2917 2918 /** 2919 * Search parameter: <b>context-type</b> 2920 * <p> 2921 * Description: <b>A type of use context assigned to the evidence</b><br> 2922 * Type: <b>token</b><br> 2923 * Path: <b>Evidence.useContext.code</b><br> 2924 * </p> 2925 */ 2926 @SearchParamDefinition(name = "context-type", path = "Evidence.useContext.code", description = "A type of use context assigned to the evidence", type = "token") 2927 public static final String SP_CONTEXT_TYPE = "context-type"; 2928 /** 2929 * <b>Fluent Client</b> search parameter constant for <b>context-type</b> 2930 * <p> 2931 * Description: <b>A type of use context assigned to the evidence</b><br> 2932 * Type: <b>token</b><br> 2933 * Path: <b>Evidence.useContext.code</b><br> 2934 * </p> 2935 */ 2936 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam( 2937 SP_CONTEXT_TYPE); 2938 2939 /** 2940 * Search parameter: <b>predecessor</b> 2941 * <p> 2942 * Description: <b>What resource is being referenced</b><br> 2943 * Type: <b>reference</b><br> 2944 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2945 * </p> 2946 */ 2947 @SearchParamDefinition(name = "predecessor", path = "Evidence.relatedArtifact.where(type='predecessor').resource", description = "What resource is being referenced", type = "reference") 2948 public static final String SP_PREDECESSOR = "predecessor"; 2949 /** 2950 * <b>Fluent Client</b> search parameter constant for <b>predecessor</b> 2951 * <p> 2952 * Description: <b>What resource is being referenced</b><br> 2953 * Type: <b>reference</b><br> 2954 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2955 * </p> 2956 */ 2957 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PREDECESSOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 2958 SP_PREDECESSOR); 2959 2960 /** 2961 * Constant for fluent queries to be used to add include statements. Specifies 2962 * the path value of "<b>Evidence:predecessor</b>". 2963 */ 2964 public static final ca.uhn.fhir.model.api.Include INCLUDE_PREDECESSOR = new ca.uhn.fhir.model.api.Include( 2965 "Evidence:predecessor").toLocked(); 2966 2967 /** 2968 * Search parameter: <b>title</b> 2969 * <p> 2970 * Description: <b>The human-friendly name of the evidence</b><br> 2971 * Type: <b>string</b><br> 2972 * Path: <b>Evidence.title</b><br> 2973 * </p> 2974 */ 2975 @SearchParamDefinition(name = "title", path = "Evidence.title", description = "The human-friendly name of the evidence", type = "string") 2976 public static final String SP_TITLE = "title"; 2977 /** 2978 * <b>Fluent Client</b> search parameter constant for <b>title</b> 2979 * <p> 2980 * Description: <b>The human-friendly name of the evidence</b><br> 2981 * Type: <b>string</b><br> 2982 * Path: <b>Evidence.title</b><br> 2983 * </p> 2984 */ 2985 public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam( 2986 SP_TITLE); 2987 2988 /** 2989 * Search parameter: <b>composed-of</b> 2990 * <p> 2991 * Description: <b>What resource is being referenced</b><br> 2992 * Type: <b>reference</b><br> 2993 * Path: <b>Evidence.relatedArtifact.resource</b><br> 2994 * </p> 2995 */ 2996 @SearchParamDefinition(name = "composed-of", path = "Evidence.relatedArtifact.where(type='composed-of').resource", description = "What resource is being referenced", type = "reference") 2997 public static final String SP_COMPOSED_OF = "composed-of"; 2998 /** 2999 * <b>Fluent Client</b> search parameter constant for <b>composed-of</b> 3000 * <p> 3001 * Description: <b>What resource is being referenced</b><br> 3002 * Type: <b>reference</b><br> 3003 * Path: <b>Evidence.relatedArtifact.resource</b><br> 3004 * </p> 3005 */ 3006 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam COMPOSED_OF = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 3007 SP_COMPOSED_OF); 3008 3009 /** 3010 * Constant for fluent queries to be used to add include statements. Specifies 3011 * the path value of "<b>Evidence:composed-of</b>". 3012 */ 3013 public static final ca.uhn.fhir.model.api.Include INCLUDE_COMPOSED_OF = new ca.uhn.fhir.model.api.Include( 3014 "Evidence:composed-of").toLocked(); 3015 3016 /** 3017 * Search parameter: <b>version</b> 3018 * <p> 3019 * Description: <b>The business version of the evidence</b><br> 3020 * Type: <b>token</b><br> 3021 * Path: <b>Evidence.version</b><br> 3022 * </p> 3023 */ 3024 @SearchParamDefinition(name = "version", path = "Evidence.version", description = "The business version of the evidence", type = "token") 3025 public static final String SP_VERSION = "version"; 3026 /** 3027 * <b>Fluent Client</b> search parameter constant for <b>version</b> 3028 * <p> 3029 * Description: <b>The business version of the evidence</b><br> 3030 * Type: <b>token</b><br> 3031 * Path: <b>Evidence.version</b><br> 3032 * </p> 3033 */ 3034 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam( 3035 SP_VERSION); 3036 3037 /** 3038 * Search parameter: <b>url</b> 3039 * <p> 3040 * Description: <b>The uri that identifies the evidence</b><br> 3041 * Type: <b>uri</b><br> 3042 * Path: <b>Evidence.url</b><br> 3043 * </p> 3044 */ 3045 @SearchParamDefinition(name = "url", path = "Evidence.url", description = "The uri that identifies the evidence", type = "uri") 3046 public static final String SP_URL = "url"; 3047 /** 3048 * <b>Fluent Client</b> search parameter constant for <b>url</b> 3049 * <p> 3050 * Description: <b>The uri that identifies the evidence</b><br> 3051 * Type: <b>uri</b><br> 3052 * Path: <b>Evidence.url</b><br> 3053 * </p> 3054 */ 3055 public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); 3056 3057 /** 3058 * Search parameter: <b>context-quantity</b> 3059 * <p> 3060 * Description: <b>A quantity- or range-valued use context assigned to the 3061 * evidence</b><br> 3062 * Type: <b>quantity</b><br> 3063 * Path: <b>Evidence.useContext.valueQuantity, 3064 * Evidence.useContext.valueRange</b><br> 3065 * </p> 3066 */ 3067 @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") 3068 public static final String SP_CONTEXT_QUANTITY = "context-quantity"; 3069 /** 3070 * <b>Fluent Client</b> search parameter constant for <b>context-quantity</b> 3071 * <p> 3072 * Description: <b>A quantity- or range-valued use context assigned to the 3073 * evidence</b><br> 3074 * Type: <b>quantity</b><br> 3075 * Path: <b>Evidence.useContext.valueQuantity, 3076 * Evidence.useContext.valueRange</b><br> 3077 * </p> 3078 */ 3079 public static final ca.uhn.fhir.rest.gclient.QuantityClientParam CONTEXT_QUANTITY = new ca.uhn.fhir.rest.gclient.QuantityClientParam( 3080 SP_CONTEXT_QUANTITY); 3081 3082 /** 3083 * Search parameter: <b>effective</b> 3084 * <p> 3085 * Description: <b>The time during which the evidence is intended to be in 3086 * use</b><br> 3087 * Type: <b>date</b><br> 3088 * Path: <b>Evidence.effectivePeriod</b><br> 3089 * </p> 3090 */ 3091 @SearchParamDefinition(name = "effective", path = "Evidence.effectivePeriod", description = "The time during which the evidence is intended to be in use", type = "date") 3092 public static final String SP_EFFECTIVE = "effective"; 3093 /** 3094 * <b>Fluent Client</b> search parameter constant for <b>effective</b> 3095 * <p> 3096 * Description: <b>The time during which the evidence is intended to be in 3097 * use</b><br> 3098 * Type: <b>date</b><br> 3099 * Path: <b>Evidence.effectivePeriod</b><br> 3100 * </p> 3101 */ 3102 public static final ca.uhn.fhir.rest.gclient.DateClientParam EFFECTIVE = new ca.uhn.fhir.rest.gclient.DateClientParam( 3103 SP_EFFECTIVE); 3104 3105 /** 3106 * Search parameter: <b>depends-on</b> 3107 * <p> 3108 * Description: <b>What resource is being referenced</b><br> 3109 * Type: <b>reference</b><br> 3110 * Path: <b>Evidence.relatedArtifact.resource</b><br> 3111 * </p> 3112 */ 3113 @SearchParamDefinition(name = "depends-on", path = "Evidence.relatedArtifact.where(type='depends-on').resource", description = "What resource is being referenced", type = "reference") 3114 public static final String SP_DEPENDS_ON = "depends-on"; 3115 /** 3116 * <b>Fluent Client</b> search parameter constant for <b>depends-on</b> 3117 * <p> 3118 * Description: <b>What resource is being referenced</b><br> 3119 * Type: <b>reference</b><br> 3120 * Path: <b>Evidence.relatedArtifact.resource</b><br> 3121 * </p> 3122 */ 3123 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DEPENDS_ON = new ca.uhn.fhir.rest.gclient.ReferenceClientParam( 3124 SP_DEPENDS_ON); 3125 3126 /** 3127 * Constant for fluent queries to be used to add include statements. Specifies 3128 * the path value of "<b>Evidence:depends-on</b>". 3129 */ 3130 public static final ca.uhn.fhir.model.api.Include INCLUDE_DEPENDS_ON = new ca.uhn.fhir.model.api.Include( 3131 "Evidence:depends-on").toLocked(); 3132 3133 /** 3134 * Search parameter: <b>name</b> 3135 * <p> 3136 * Description: <b>Computationally friendly name of the evidence</b><br> 3137 * Type: <b>string</b><br> 3138 * Path: <b>Evidence.name</b><br> 3139 * </p> 3140 */ 3141 @SearchParamDefinition(name = "name", path = "Evidence.name", description = "Computationally friendly name of the evidence", type = "string") 3142 public static final String SP_NAME = "name"; 3143 /** 3144 * <b>Fluent Client</b> search parameter constant for <b>name</b> 3145 * <p> 3146 * Description: <b>Computationally friendly name of the evidence</b><br> 3147 * Type: <b>string</b><br> 3148 * Path: <b>Evidence.name</b><br> 3149 * </p> 3150 */ 3151 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam( 3152 SP_NAME); 3153 3154 /** 3155 * Search parameter: <b>context</b> 3156 * <p> 3157 * Description: <b>A use context assigned to the evidence</b><br> 3158 * Type: <b>token</b><br> 3159 * Path: <b>Evidence.useContext.valueCodeableConcept</b><br> 3160 * </p> 3161 */ 3162 @SearchParamDefinition(name = "context", path = "(Evidence.useContext.value as CodeableConcept)", description = "A use context assigned to the evidence", type = "token") 3163 public static final String SP_CONTEXT = "context"; 3164 /** 3165 * <b>Fluent Client</b> search parameter constant for <b>context</b> 3166 * <p> 3167 * Description: <b>A use context assigned to the evidence</b><br> 3168 * Type: <b>token</b><br> 3169 * Path: <b>Evidence.useContext.valueCodeableConcept</b><br> 3170 * </p> 3171 */ 3172 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.TokenClientParam( 3173 SP_CONTEXT); 3174 3175 /** 3176 * Search parameter: <b>publisher</b> 3177 * <p> 3178 * Description: <b>Name of the publisher of the evidence</b><br> 3179 * Type: <b>string</b><br> 3180 * Path: <b>Evidence.publisher</b><br> 3181 * </p> 3182 */ 3183 @SearchParamDefinition(name = "publisher", path = "Evidence.publisher", description = "Name of the publisher of the evidence", type = "string") 3184 public static final String SP_PUBLISHER = "publisher"; 3185 /** 3186 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 3187 * <p> 3188 * Description: <b>Name of the publisher of the evidence</b><br> 3189 * Type: <b>string</b><br> 3190 * Path: <b>Evidence.publisher</b><br> 3191 * </p> 3192 */ 3193 public static final ca.uhn.fhir.rest.gclient.StringClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.StringClientParam( 3194 SP_PUBLISHER); 3195 3196 /** 3197 * Search parameter: <b>topic</b> 3198 * <p> 3199 * Description: <b>Topics associated with the Evidence</b><br> 3200 * Type: <b>token</b><br> 3201 * Path: <b>Evidence.topic</b><br> 3202 * </p> 3203 */ 3204 @SearchParamDefinition(name = "topic", path = "Evidence.topic", description = "Topics associated with the Evidence", type = "token") 3205 public static final String SP_TOPIC = "topic"; 3206 /** 3207 * <b>Fluent Client</b> search parameter constant for <b>topic</b> 3208 * <p> 3209 * Description: <b>Topics associated with the Evidence</b><br> 3210 * Type: <b>token</b><br> 3211 * Path: <b>Evidence.topic</b><br> 3212 * </p> 3213 */ 3214 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TOPIC = new ca.uhn.fhir.rest.gclient.TokenClientParam( 3215 SP_TOPIC); 3216 3217 /** 3218 * Search parameter: <b>context-type-quantity</b> 3219 * <p> 3220 * Description: <b>A use context type and quantity- or range-based value 3221 * assigned to the evidence</b><br> 3222 * Type: <b>composite</b><br> 3223 * Path: <b></b><br> 3224 * </p> 3225 */ 3226 @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 = { 3227 "context-type", "context-quantity" }) 3228 public static final String SP_CONTEXT_TYPE_QUANTITY = "context-type-quantity"; 3229 /** 3230 * <b>Fluent Client</b> search parameter constant for 3231 * <b>context-type-quantity</b> 3232 * <p> 3233 * Description: <b>A use context type and quantity- or range-based value 3234 * assigned to the evidence</b><br> 3235 * Type: <b>composite</b><br> 3236 * Path: <b></b><br> 3237 * </p> 3238 */ 3239 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>( 3240 SP_CONTEXT_TYPE_QUANTITY); 3241 3242 /** 3243 * Search parameter: <b>status</b> 3244 * <p> 3245 * Description: <b>The current status of the evidence</b><br> 3246 * Type: <b>token</b><br> 3247 * Path: <b>Evidence.status</b><br> 3248 * </p> 3249 */ 3250 @SearchParamDefinition(name = "status", path = "Evidence.status", description = "The current status of the evidence", type = "token") 3251 public static final String SP_STATUS = "status"; 3252 /** 3253 * <b>Fluent Client</b> search parameter constant for <b>status</b> 3254 * <p> 3255 * Description: <b>The current status of the evidence</b><br> 3256 * Type: <b>token</b><br> 3257 * Path: <b>Evidence.status</b><br> 3258 * </p> 3259 */ 3260 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam( 3261 SP_STATUS); 3262 3263}