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