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