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