001package org.hl7.fhir.r5.formats; 002 003 004// generated 005 006/* 007 Copyright (c) 2011+, HL7, Inc. 008 All rights reserved. 009 010 Redistribution and use in source and binary forms, with or without modification, \ 011 are permitted provided that the following conditions are met: 012 013 * Redistributions of source code must retain the above copyright notice, this \ 014 list of conditions and the following disclaimer. 015 * Redistributions in binary form must reproduce the above copyright notice, \ 016 this list of conditions and the following disclaimer in the documentation \ 017 and/or other materials provided with the distribution. 018 * Neither the name of HL7 nor the names of its contributors may be used to 019 endorse or promote products derived from this software without specific 020 prior written permission. 021 022 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ 023 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ 024 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ 025 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ 026 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ 027 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ 028 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ 029 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ 030 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ 031 POSSIBILITY OF SUCH DAMAGE. 032 */ 033 034// Generated on Thu, Mar 23, 2023 19:59+1100 for FHIR v5.0.0 035 036 037 038import org.hl7.fhir.r5.model.*; 039import org.hl7.fhir.r5.model.StringType; 040import org.hl7.fhir.utilities.Utilities; 041import org.hl7.fhir.exceptions.FHIRFormatError; 042import org.hl7.fhir.exceptions.FHIRException; 043import org.hl7.fhir.utilities.turtle.Turtle.*; 044import java.io.IOException; 045 046public class RdfParser extends RdfParserBase { 047 048 public RdfParser() { 049 super(); 050 } 051 052 public RdfParser(boolean allowUnknownContent) { 053 super(); 054 setAllowUnknownContent(allowUnknownContent); 055 } 056 057 private void composeEnum(Complex parent, String parentType, String name, Enumeration<? extends Enum> value, int index) { 058 if (value == null) 059 return; 060 Complex t = parent.predicate("fhir:"+name, index > -1); 061 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 062 composeElement(t, parentType, name, value, index); 063 decorateCode(t, value); 064 } 065 066 067 protected void composeDate(Complex parent, String parentType, String name, DateType value, int index) { 068 if (value == null) 069 return; 070 Complex t = parent.predicate("fhir:"+name, index > -1); 071 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 072 composeElement(t, parentType, name, value, index); 073 } 074 075 protected void composeDateTime(Complex parent, String parentType, String name, DateTimeType value, int index) { 076 if (value == null) 077 return; 078 Complex t = parent.predicate("fhir:"+name, index > -1); 079 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 080 composeElement(t, parentType, name, value, index); 081 } 082 083 protected void composeCode(Complex parent, String parentType, String name, CodeType value, int index) { 084 if (value == null) 085 return; 086 Complex t = parent.predicate("fhir:"+name, index > -1); 087 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 088 composeElement(t, parentType, name, value, index); 089 decorateCode(t, value); 090 } 091 092 protected void composeString(Complex parent, String parentType, String name, StringType value, int index) { 093 if (value == null) 094 return; 095 Complex t = parent.predicate("fhir:"+name, index > -1); 096 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 097 composeElement(t, parentType, name, value, index); 098 } 099 100 protected void composeInteger(Complex parent, String parentType, String name, IntegerType value, int index) { 101 if (value == null) 102 return; 103 Complex t = parent.predicate("fhir:"+name, index > -1); 104 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 105 composeElement(t, parentType, name, value, index); 106 } 107 108 protected void composeInteger64(Complex parent, String parentType, String name, Integer64Type value, int index) { 109 if (value == null) 110 return; 111 Complex t = parent.predicate("fhir:"+name, index > -1); 112 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 113 composeElement(t, parentType, name, value, index); 114 } 115 116 protected void composeOid(Complex parent, String parentType, String name, OidType value, int index) { 117 if (value == null) 118 return; 119 Complex t = parent.predicate("fhir:"+name, index > -1); 120 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 121 composeElement(t, parentType, name, value, index); 122 } 123 124 protected void composeCanonical(Complex parent, String parentType, String name, CanonicalType value, int index) { 125 if (value == null) 126 return; 127 Complex t = parent.predicate("fhir:"+name, index > -1); 128 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 129 composeElement(t, parentType, name, value, index); 130 } 131 132 protected void composeUri(Complex parent, String parentType, String name, UriType value, int index) { 133 if (value == null) 134 return; 135 Complex t = parent.predicate("fhir:"+name, index > -1); 136 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 137 composeElement(t, parentType, name, value, index); 138 } 139 140 protected void composeUuid(Complex parent, String parentType, String name, UuidType value, int index) { 141 if (value == null) 142 return; 143 Complex t = parent.predicate("fhir:"+name, index > -1); 144 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 145 composeElement(t, parentType, name, value, index); 146 } 147 148 protected void composeUrl(Complex parent, String parentType, String name, UrlType value, int index) { 149 if (value == null) 150 return; 151 Complex t = parent.predicate("fhir:"+name, index > -1); 152 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 153 composeElement(t, parentType, name, value, index); 154 } 155 156 protected void composeInstant(Complex parent, String parentType, String name, InstantType value, int index) { 157 if (value == null) 158 return; 159 Complex t = parent.predicate("fhir:"+name, index > -1); 160 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 161 composeElement(t, parentType, name, value, index); 162 } 163 164 protected void composeBoolean(Complex parent, String parentType, String name, BooleanType value, int index) { 165 if (value == null) 166 return; 167 Complex t = parent.predicate("fhir:"+name, index > -1); 168 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 169 composeElement(t, parentType, name, value, index); 170 } 171 172 protected void composeBase64Binary(Complex parent, String parentType, String name, Base64BinaryType value, int index) { 173 if (value == null) 174 return; 175 Complex t = parent.predicate("fhir:"+name, index > -1); 176 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 177 composeElement(t, parentType, name, value, index); 178 } 179 180 protected void composeUnsignedInt(Complex parent, String parentType, String name, UnsignedIntType value, int index) { 181 if (value == null) 182 return; 183 Complex t = parent.predicate("fhir:"+name, index > -1); 184 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 185 composeElement(t, parentType, name, value, index); 186 } 187 188 protected void composeMarkdown(Complex parent, String parentType, String name, MarkdownType value, int index) { 189 if (value == null) 190 return; 191 Complex t = parent.predicate("fhir:"+name, index > -1); 192 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 193 composeElement(t, parentType, name, value, index); 194 } 195 196 protected void composeTime(Complex parent, String parentType, String name, TimeType value, int index) { 197 if (value == null) 198 return; 199 Complex t = parent.predicate("fhir:"+name, index > -1); 200 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 201 composeElement(t, parentType, name, value, index); 202 } 203 204 protected void composeId(Complex parent, String parentType, String name, IdType value, int index) { 205 if (value == null) 206 return; 207 Complex t = parent.predicate("fhir:"+name, index > -1); 208 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 209 composeElement(t, parentType, name, value, index); 210 } 211 212 protected void composePositiveInt(Complex parent, String parentType, String name, PositiveIntType value, int index) { 213 if (value == null) 214 return; 215 Complex t = parent.predicate("fhir:"+name, index > -1); 216 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 217 composeElement(t, parentType, name, value, index); 218 } 219 220 protected void composeDecimal(Complex parent, String parentType, String name, DecimalType value, int index) { 221 if (value == null) 222 return; 223 Complex t = parent.predicate("fhir:"+name, index > -1); 224 t.predicate("fhir:v", ttlLiteral(value.asStringValue()), false); 225 composeElement(t, parentType, name, value, index); 226 } 227 228 protected void composeBackboneElement(Complex t, String parentType, String name, BackboneElement element, int index) { 229 composeElement(t, parentType, name, element, index); 230 for (int i = 0; i < element.getModifierExtension().size(); i++) { 231 composeExtension(t, "BackboneElement", "modifierExtension", element.getModifierExtension().get(i), i); 232 } 233 } 234 235 protected void composeBackboneType(Complex t, String parentType, String name, BackboneType element, int index) { 236 composeDataType(t, parentType, name, element, index); 237 for (int i = 0; i < element.getModifierExtension().size(); i++) { 238 composeExtension(t, "BackboneType", "modifierExtension", element.getModifierExtension().get(i), i); 239 } 240 } 241 242 protected void composeDataType(Complex t, String parentType, String name, DataType element, int index) { 243 composeElement(t, parentType, name, element, index); 244 } 245 246 protected void composeElement(Complex t, String parentType, String name, Element element, int index) { 247 composeBase(t, parentType, name, element, index); 248 if (element.hasIdElement()) { 249 composeString(t, "Element", "id", element.getIdElement(), -1); 250 } 251 for (int i = 0; i < element.getExtension().size(); i++) { 252 composeExtension(t, "Element", "extension", element.getExtension().get(i), i); 253 } 254 } 255 256 protected void composeAddress(Complex parent, String parentType, String name, Address element, int index) { 257 if (element == null) 258 return; 259 Complex t; 260 if (Utilities.noString(parentType)) 261 t = parent; 262 else { 263 t = parent.predicate("fhir:"+name,index > -1); 264 } 265 composeDataType(t, "Address", name, element, index); 266 if (element.hasUseElement()) { 267 composeEnum(t, "Address", "use", element.getUseElement(), -1); 268 } 269 if (element.hasTypeElement()) { 270 composeEnum(t, "Address", "type", element.getTypeElement(), -1); 271 } 272 if (element.hasTextElement()) { 273 composeString(t, "Address", "text", element.getTextElement(), -1); 274 } 275 for (int i = 0; i < element.getLine().size(); i++) { 276 composeString(t, "Address", "line", element.getLine().get(i), i); 277 } 278 if (element.hasCityElement()) { 279 composeString(t, "Address", "city", element.getCityElement(), -1); 280 } 281 if (element.hasDistrictElement()) { 282 composeString(t, "Address", "district", element.getDistrictElement(), -1); 283 } 284 if (element.hasStateElement()) { 285 composeString(t, "Address", "state", element.getStateElement(), -1); 286 } 287 if (element.hasPostalCodeElement()) { 288 composeString(t, "Address", "postalCode", element.getPostalCodeElement(), -1); 289 } 290 if (element.hasCountryElement()) { 291 composeString(t, "Address", "country", element.getCountryElement(), -1); 292 } 293 if (element.hasPeriod()) { 294 composePeriod(t, "Address", "period", element.getPeriod(), -1); 295 } 296 } 297 298 protected void composeAge(Complex parent, String parentType, String name, Age element, int index) { 299 if (element == null) 300 return; 301 Complex t; 302 if (Utilities.noString(parentType)) 303 t = parent; 304 else { 305 t = parent.predicate("fhir:"+name,index > -1); 306 } 307 composeQuantity(t, "Age", name, element, index); 308 } 309 310 protected void composeAnnotation(Complex parent, String parentType, String name, Annotation element, int index) { 311 if (element == null) 312 return; 313 Complex t; 314 if (Utilities.noString(parentType)) 315 t = parent; 316 else { 317 t = parent.predicate("fhir:"+name,index > -1); 318 } 319 composeDataType(t, "Annotation", name, element, index); 320 if (element.hasAuthor()) { 321 composeType(t, "Annotation", "author", element.getAuthor(), -1); 322 } 323 if (element.hasTimeElement()) { 324 composeDateTime(t, "Annotation", "time", element.getTimeElement(), -1); 325 } 326 if (element.hasTextElement()) { 327 composeMarkdown(t, "Annotation", "text", element.getTextElement(), -1); 328 } 329 } 330 331 protected void composeAttachment(Complex parent, String parentType, String name, Attachment element, int index) { 332 if (element == null) 333 return; 334 Complex t; 335 if (Utilities.noString(parentType)) 336 t = parent; 337 else { 338 t = parent.predicate("fhir:"+name,index > -1); 339 } 340 composeDataType(t, "Attachment", name, element, index); 341 if (element.hasContentTypeElement()) { 342 composeCode(t, "Attachment", "contentType", element.getContentTypeElement(), -1); 343 } 344 if (element.hasLanguageElement()) { 345 composeCode(t, "Attachment", "language", element.getLanguageElement(), -1); 346 } 347 if (element.hasDataElement()) { 348 composeBase64Binary(t, "Attachment", "data", element.getDataElement(), -1); 349 } 350 if (element.hasUrlElement()) { 351 composeUrl(t, "Attachment", "url", element.getUrlElement(), -1); 352 } 353 if (element.hasSizeElement()) { 354 composeInteger64(t, "Attachment", "size", element.getSizeElement(), -1); 355 } 356 if (element.hasHashElement()) { 357 composeBase64Binary(t, "Attachment", "hash", element.getHashElement(), -1); 358 } 359 if (element.hasTitleElement()) { 360 composeString(t, "Attachment", "title", element.getTitleElement(), -1); 361 } 362 if (element.hasCreationElement()) { 363 composeDateTime(t, "Attachment", "creation", element.getCreationElement(), -1); 364 } 365 if (element.hasHeightElement()) { 366 composePositiveInt(t, "Attachment", "height", element.getHeightElement(), -1); 367 } 368 if (element.hasWidthElement()) { 369 composePositiveInt(t, "Attachment", "width", element.getWidthElement(), -1); 370 } 371 if (element.hasFramesElement()) { 372 composePositiveInt(t, "Attachment", "frames", element.getFramesElement(), -1); 373 } 374 if (element.hasDurationElement()) { 375 composeDecimal(t, "Attachment", "duration", element.getDurationElement(), -1); 376 } 377 if (element.hasPagesElement()) { 378 composePositiveInt(t, "Attachment", "pages", element.getPagesElement(), -1); 379 } 380 } 381 382 protected void composeAvailability(Complex parent, String parentType, String name, Availability element, int index) { 383 if (element == null) 384 return; 385 Complex t; 386 if (Utilities.noString(parentType)) 387 t = parent; 388 else { 389 t = parent.predicate("fhir:"+name,index > -1); 390 } 391 composeDataType(t, "Availability", name, element, index); 392 for (int i = 0; i < element.getAvailableTime().size(); i++) { 393 composeAvailabilityAvailableTimeComponent(t, "Availability", "availableTime", element.getAvailableTime().get(i), i); 394 } 395 for (int i = 0; i < element.getNotAvailableTime().size(); i++) { 396 composeAvailabilityNotAvailableTimeComponent(t, "Availability", "notAvailableTime", element.getNotAvailableTime().get(i), i); 397 } 398 } 399 400 protected void composeAvailabilityAvailableTimeComponent(Complex parent, String parentType, String name, Availability.AvailabilityAvailableTimeComponent element, int index) { 401 if (element == null) 402 return; 403 Complex t; 404 if (Utilities.noString(parentType)) 405 t = parent; 406 else { 407 t = parent.predicate("fhir:"+name,index > -1); 408 } 409 composeElement(t, "availableTime", name, element, index); 410 for (int i = 0; i < element.getDaysOfWeek().size(); i++) { 411 composeEnum(t, "AvailabilityAvailableTimeComponent", "daysOfWeek", element.getDaysOfWeek().get(i), i); 412 } 413 if (element.hasAllDayElement()) { 414 composeBoolean(t, "AvailabilityAvailableTimeComponent", "allDay", element.getAllDayElement(), -1); 415 } 416 if (element.hasAvailableStartTimeElement()) { 417 composeTime(t, "AvailabilityAvailableTimeComponent", "availableStartTime", element.getAvailableStartTimeElement(), -1); 418 } 419 if (element.hasAvailableEndTimeElement()) { 420 composeTime(t, "AvailabilityAvailableTimeComponent", "availableEndTime", element.getAvailableEndTimeElement(), -1); 421 } 422 } 423 424 protected void composeAvailabilityNotAvailableTimeComponent(Complex parent, String parentType, String name, Availability.AvailabilityNotAvailableTimeComponent element, int index) { 425 if (element == null) 426 return; 427 Complex t; 428 if (Utilities.noString(parentType)) 429 t = parent; 430 else { 431 t = parent.predicate("fhir:"+name,index > -1); 432 } 433 composeElement(t, "notAvailableTime", name, element, index); 434 if (element.hasDescriptionElement()) { 435 composeString(t, "AvailabilityNotAvailableTimeComponent", "description", element.getDescriptionElement(), -1); 436 } 437 if (element.hasDuring()) { 438 composePeriod(t, "AvailabilityNotAvailableTimeComponent", "during", element.getDuring(), -1); 439 } 440 } 441 442 protected void composeCodeableConcept(Complex parent, String parentType, String name, CodeableConcept element, int index) { 443 if (element == null) 444 return; 445 Complex t; 446 if (Utilities.noString(parentType)) 447 t = parent; 448 else { 449 t = parent.predicate("fhir:"+name,index > -1); 450 } 451 composeDataType(t, "CodeableConcept", name, element, index); 452 decorateCodeableConcept(t, element); 453 for (int i = 0; i < element.getCoding().size(); i++) { 454 composeCoding(t, "CodeableConcept", "coding", element.getCoding().get(i), i); 455 } 456 if (element.hasTextElement()) { 457 composeString(t, "CodeableConcept", "text", element.getTextElement(), -1); 458 } 459 } 460 461 protected void composeCodeableReference(Complex parent, String parentType, String name, CodeableReference element, int index) { 462 if (element == null) 463 return; 464 Complex t; 465 if (Utilities.noString(parentType)) 466 t = parent; 467 else { 468 t = parent.predicate("fhir:"+name,index > -1); 469 } 470 composeDataType(t, "CodeableReference", name, element, index); 471 if (element.hasConcept()) { 472 composeCodeableConcept(t, "CodeableReference", "concept", element.getConcept(), -1); 473 } 474 if (element.hasReference()) { 475 composeReference(t, "CodeableReference", "reference", element.getReference(), -1); 476 } 477 } 478 479 protected void composeCoding(Complex parent, String parentType, String name, Coding element, int index) { 480 if (element == null) 481 return; 482 Complex t; 483 if (Utilities.noString(parentType)) 484 t = parent; 485 else { 486 t = parent.predicate("fhir:"+name,index > -1); 487 } 488 composeDataType(t, "Coding", name, element, index); 489 decorateCoding(t, element); 490 if (element.hasSystemElement()) { 491 composeUri(t, "Coding", "system", element.getSystemElement(), -1); 492 } 493 if (element.hasVersionElement()) { 494 composeString(t, "Coding", "version", element.getVersionElement(), -1); 495 } 496 if (element.hasCodeElement()) { 497 composeCode(t, "Coding", "code", element.getCodeElement(), -1); 498 } 499 if (element.hasDisplayElement()) { 500 composeString(t, "Coding", "display", element.getDisplayElement(), -1); 501 } 502 if (element.hasUserSelectedElement()) { 503 composeBoolean(t, "Coding", "userSelected", element.getUserSelectedElement(), -1); 504 } 505 } 506 507 protected void composeContactDetail(Complex parent, String parentType, String name, ContactDetail element, int index) { 508 if (element == null) 509 return; 510 Complex t; 511 if (Utilities.noString(parentType)) 512 t = parent; 513 else { 514 t = parent.predicate("fhir:"+name,index > -1); 515 } 516 composeDataType(t, "ContactDetail", name, element, index); 517 if (element.hasNameElement()) { 518 composeString(t, "ContactDetail", "name", element.getNameElement(), -1); 519 } 520 for (int i = 0; i < element.getTelecom().size(); i++) { 521 composeContactPoint(t, "ContactDetail", "telecom", element.getTelecom().get(i), i); 522 } 523 } 524 525 protected void composeContactPoint(Complex parent, String parentType, String name, ContactPoint element, int index) { 526 if (element == null) 527 return; 528 Complex t; 529 if (Utilities.noString(parentType)) 530 t = parent; 531 else { 532 t = parent.predicate("fhir:"+name,index > -1); 533 } 534 composeDataType(t, "ContactPoint", name, element, index); 535 if (element.hasSystemElement()) { 536 composeEnum(t, "ContactPoint", "system", element.getSystemElement(), -1); 537 } 538 if (element.hasValueElement()) { 539 composeString(t, "ContactPoint", "value", element.getValueElement(), -1); 540 } 541 if (element.hasUseElement()) { 542 composeEnum(t, "ContactPoint", "use", element.getUseElement(), -1); 543 } 544 if (element.hasRankElement()) { 545 composePositiveInt(t, "ContactPoint", "rank", element.getRankElement(), -1); 546 } 547 if (element.hasPeriod()) { 548 composePeriod(t, "ContactPoint", "period", element.getPeriod(), -1); 549 } 550 } 551 552 protected void composeContributor(Complex parent, String parentType, String name, Contributor element, int index) { 553 if (element == null) 554 return; 555 Complex t; 556 if (Utilities.noString(parentType)) 557 t = parent; 558 else { 559 t = parent.predicate("fhir:"+name,index > -1); 560 } 561 composeDataType(t, "Contributor", name, element, index); 562 if (element.hasTypeElement()) { 563 composeEnum(t, "Contributor", "type", element.getTypeElement(), -1); 564 } 565 if (element.hasNameElement()) { 566 composeString(t, "Contributor", "name", element.getNameElement(), -1); 567 } 568 for (int i = 0; i < element.getContact().size(); i++) { 569 composeContactDetail(t, "Contributor", "contact", element.getContact().get(i), i); 570 } 571 } 572 573 protected void composeCount(Complex parent, String parentType, String name, Count element, int index) { 574 if (element == null) 575 return; 576 Complex t; 577 if (Utilities.noString(parentType)) 578 t = parent; 579 else { 580 t = parent.predicate("fhir:"+name,index > -1); 581 } 582 composeQuantity(t, "Count", name, element, index); 583 } 584 585 protected void composeDataRequirement(Complex parent, String parentType, String name, DataRequirement element, int index) { 586 if (element == null) 587 return; 588 Complex t; 589 if (Utilities.noString(parentType)) 590 t = parent; 591 else { 592 t = parent.predicate("fhir:"+name,index > -1); 593 } 594 composeDataType(t, "DataRequirement", name, element, index); 595 if (element.hasTypeElement()) { 596 composeEnum(t, "DataRequirement", "type", element.getTypeElement(), -1); 597 } 598 for (int i = 0; i < element.getProfile().size(); i++) { 599 composeCanonical(t, "DataRequirement", "profile", element.getProfile().get(i), i); 600 } 601 if (element.hasSubject()) { 602 composeType(t, "DataRequirement", "subject", element.getSubject(), -1); 603 } 604 for (int i = 0; i < element.getMustSupport().size(); i++) { 605 composeString(t, "DataRequirement", "mustSupport", element.getMustSupport().get(i), i); 606 } 607 for (int i = 0; i < element.getCodeFilter().size(); i++) { 608 composeDataRequirementCodeFilterComponent(t, "DataRequirement", "codeFilter", element.getCodeFilter().get(i), i); 609 } 610 for (int i = 0; i < element.getDateFilter().size(); i++) { 611 composeDataRequirementDateFilterComponent(t, "DataRequirement", "dateFilter", element.getDateFilter().get(i), i); 612 } 613 for (int i = 0; i < element.getValueFilter().size(); i++) { 614 composeDataRequirementValueFilterComponent(t, "DataRequirement", "valueFilter", element.getValueFilter().get(i), i); 615 } 616 if (element.hasLimitElement()) { 617 composePositiveInt(t, "DataRequirement", "limit", element.getLimitElement(), -1); 618 } 619 for (int i = 0; i < element.getSort().size(); i++) { 620 composeDataRequirementSortComponent(t, "DataRequirement", "sort", element.getSort().get(i), i); 621 } 622 } 623 624 protected void composeDataRequirementCodeFilterComponent(Complex parent, String parentType, String name, DataRequirement.DataRequirementCodeFilterComponent element, int index) { 625 if (element == null) 626 return; 627 Complex t; 628 if (Utilities.noString(parentType)) 629 t = parent; 630 else { 631 t = parent.predicate("fhir:"+name,index > -1); 632 } 633 composeElement(t, "codeFilter", name, element, index); 634 if (element.hasPathElement()) { 635 composeString(t, "DataRequirementCodeFilterComponent", "path", element.getPathElement(), -1); 636 } 637 if (element.hasSearchParamElement()) { 638 composeString(t, "DataRequirementCodeFilterComponent", "searchParam", element.getSearchParamElement(), -1); 639 } 640 if (element.hasValueSetElement()) { 641 composeCanonical(t, "DataRequirementCodeFilterComponent", "valueSet", element.getValueSetElement(), -1); 642 } 643 for (int i = 0; i < element.getCode().size(); i++) { 644 composeCoding(t, "DataRequirementCodeFilterComponent", "code", element.getCode().get(i), i); 645 } 646 } 647 648 protected void composeDataRequirementDateFilterComponent(Complex parent, String parentType, String name, DataRequirement.DataRequirementDateFilterComponent element, int index) { 649 if (element == null) 650 return; 651 Complex t; 652 if (Utilities.noString(parentType)) 653 t = parent; 654 else { 655 t = parent.predicate("fhir:"+name,index > -1); 656 } 657 composeElement(t, "dateFilter", name, element, index); 658 if (element.hasPathElement()) { 659 composeString(t, "DataRequirementDateFilterComponent", "path", element.getPathElement(), -1); 660 } 661 if (element.hasSearchParamElement()) { 662 composeString(t, "DataRequirementDateFilterComponent", "searchParam", element.getSearchParamElement(), -1); 663 } 664 if (element.hasValue()) { 665 composeType(t, "DataRequirementDateFilterComponent", "value", element.getValue(), -1); 666 } 667 } 668 669 protected void composeDataRequirementValueFilterComponent(Complex parent, String parentType, String name, DataRequirement.DataRequirementValueFilterComponent element, int index) { 670 if (element == null) 671 return; 672 Complex t; 673 if (Utilities.noString(parentType)) 674 t = parent; 675 else { 676 t = parent.predicate("fhir:"+name,index > -1); 677 } 678 composeElement(t, "valueFilter", name, element, index); 679 if (element.hasPathElement()) { 680 composeString(t, "DataRequirementValueFilterComponent", "path", element.getPathElement(), -1); 681 } 682 if (element.hasSearchParamElement()) { 683 composeString(t, "DataRequirementValueFilterComponent", "searchParam", element.getSearchParamElement(), -1); 684 } 685 if (element.hasComparatorElement()) { 686 composeEnum(t, "DataRequirementValueFilterComponent", "comparator", element.getComparatorElement(), -1); 687 } 688 if (element.hasValue()) { 689 composeType(t, "DataRequirementValueFilterComponent", "value", element.getValue(), -1); 690 } 691 } 692 693 protected void composeDataRequirementSortComponent(Complex parent, String parentType, String name, DataRequirement.DataRequirementSortComponent element, int index) { 694 if (element == null) 695 return; 696 Complex t; 697 if (Utilities.noString(parentType)) 698 t = parent; 699 else { 700 t = parent.predicate("fhir:"+name,index > -1); 701 } 702 composeElement(t, "sort", name, element, index); 703 if (element.hasPathElement()) { 704 composeString(t, "DataRequirementSortComponent", "path", element.getPathElement(), -1); 705 } 706 if (element.hasDirectionElement()) { 707 composeEnum(t, "DataRequirementSortComponent", "direction", element.getDirectionElement(), -1); 708 } 709 } 710 711 protected void composeDistance(Complex parent, String parentType, String name, Distance element, int index) { 712 if (element == null) 713 return; 714 Complex t; 715 if (Utilities.noString(parentType)) 716 t = parent; 717 else { 718 t = parent.predicate("fhir:"+name,index > -1); 719 } 720 composeQuantity(t, "Distance", name, element, index); 721 } 722 723 protected void composeDosage(Complex parent, String parentType, String name, Dosage element, int index) { 724 if (element == null) 725 return; 726 Complex t; 727 if (Utilities.noString(parentType)) 728 t = parent; 729 else { 730 t = parent.predicate("fhir:"+name,index > -1); 731 } 732 composeBackboneType(t, "Dosage", name, element, index); 733 if (element.hasSequenceElement()) { 734 composeInteger(t, "Dosage", "sequence", element.getSequenceElement(), -1); 735 } 736 if (element.hasTextElement()) { 737 composeString(t, "Dosage", "text", element.getTextElement(), -1); 738 } 739 for (int i = 0; i < element.getAdditionalInstruction().size(); i++) { 740 composeCodeableConcept(t, "Dosage", "additionalInstruction", element.getAdditionalInstruction().get(i), i); 741 } 742 if (element.hasPatientInstructionElement()) { 743 composeString(t, "Dosage", "patientInstruction", element.getPatientInstructionElement(), -1); 744 } 745 if (element.hasTiming()) { 746 composeTiming(t, "Dosage", "timing", element.getTiming(), -1); 747 } 748 if (element.hasAsNeededElement()) { 749 composeBoolean(t, "Dosage", "asNeeded", element.getAsNeededElement(), -1); 750 } 751 for (int i = 0; i < element.getAsNeededFor().size(); i++) { 752 composeCodeableConcept(t, "Dosage", "asNeededFor", element.getAsNeededFor().get(i), i); 753 } 754 if (element.hasSite()) { 755 composeCodeableConcept(t, "Dosage", "site", element.getSite(), -1); 756 } 757 if (element.hasRoute()) { 758 composeCodeableConcept(t, "Dosage", "route", element.getRoute(), -1); 759 } 760 if (element.hasMethod()) { 761 composeCodeableConcept(t, "Dosage", "method", element.getMethod(), -1); 762 } 763 for (int i = 0; i < element.getDoseAndRate().size(); i++) { 764 composeDosageDoseAndRateComponent(t, "Dosage", "doseAndRate", element.getDoseAndRate().get(i), i); 765 } 766 for (int i = 0; i < element.getMaxDosePerPeriod().size(); i++) { 767 composeRatio(t, "Dosage", "maxDosePerPeriod", element.getMaxDosePerPeriod().get(i), i); 768 } 769 if (element.hasMaxDosePerAdministration()) { 770 composeQuantity(t, "Dosage", "maxDosePerAdministration", element.getMaxDosePerAdministration(), -1); 771 } 772 if (element.hasMaxDosePerLifetime()) { 773 composeQuantity(t, "Dosage", "maxDosePerLifetime", element.getMaxDosePerLifetime(), -1); 774 } 775 } 776 777 protected void composeDosageDoseAndRateComponent(Complex parent, String parentType, String name, Dosage.DosageDoseAndRateComponent element, int index) { 778 if (element == null) 779 return; 780 Complex t; 781 if (Utilities.noString(parentType)) 782 t = parent; 783 else { 784 t = parent.predicate("fhir:"+name,index > -1); 785 } 786 composeElement(t, "doseAndRate", name, element, index); 787 if (element.hasType()) { 788 composeCodeableConcept(t, "DosageDoseAndRateComponent", "type", element.getType(), -1); 789 } 790 if (element.hasDose()) { 791 composeType(t, "DosageDoseAndRateComponent", "dose", element.getDose(), -1); 792 } 793 if (element.hasRate()) { 794 composeType(t, "DosageDoseAndRateComponent", "rate", element.getRate(), -1); 795 } 796 } 797 798 protected void composeDuration(Complex parent, String parentType, String name, Duration element, int index) { 799 if (element == null) 800 return; 801 Complex t; 802 if (Utilities.noString(parentType)) 803 t = parent; 804 else { 805 t = parent.predicate("fhir:"+name,index > -1); 806 } 807 composeQuantity(t, "Duration", name, element, index); 808 } 809 810 protected void composeElementDefinition(Complex parent, String parentType, String name, ElementDefinition element, int index) { 811 if (element == null) 812 return; 813 Complex t; 814 if (Utilities.noString(parentType)) 815 t = parent; 816 else { 817 t = parent.predicate("fhir:"+name,index > -1); 818 } 819 composeBackboneType(t, "ElementDefinition", name, element, index); 820 if (element.hasPathElement()) { 821 composeString(t, "ElementDefinition", "path", element.getPathElement(), -1); 822 } 823 for (int i = 0; i < element.getRepresentation().size(); i++) { 824 composeEnum(t, "ElementDefinition", "representation", element.getRepresentation().get(i), i); 825 } 826 if (element.hasSliceNameElement()) { 827 composeString(t, "ElementDefinition", "sliceName", element.getSliceNameElement(), -1); 828 } 829 if (element.hasSliceIsConstrainingElement()) { 830 composeBoolean(t, "ElementDefinition", "sliceIsConstraining", element.getSliceIsConstrainingElement(), -1); 831 } 832 if (element.hasLabelElement()) { 833 composeString(t, "ElementDefinition", "label", element.getLabelElement(), -1); 834 } 835 for (int i = 0; i < element.getCode().size(); i++) { 836 composeCoding(t, "ElementDefinition", "code", element.getCode().get(i), i); 837 } 838 if (element.hasSlicing()) { 839 composeElementDefinitionSlicingComponent(t, "ElementDefinition", "slicing", element.getSlicing(), -1); 840 } 841 if (element.hasShortElement()) { 842 composeString(t, "ElementDefinition", "short", element.getShortElement(), -1); 843 } 844 if (element.hasDefinitionElement()) { 845 composeMarkdown(t, "ElementDefinition", "definition", element.getDefinitionElement(), -1); 846 } 847 if (element.hasCommentElement()) { 848 composeMarkdown(t, "ElementDefinition", "comment", element.getCommentElement(), -1); 849 } 850 if (element.hasRequirementsElement()) { 851 composeMarkdown(t, "ElementDefinition", "requirements", element.getRequirementsElement(), -1); 852 } 853 for (int i = 0; i < element.getAlias().size(); i++) { 854 composeString(t, "ElementDefinition", "alias", element.getAlias().get(i), i); 855 } 856 if (element.hasMinElement()) { 857 composeUnsignedInt(t, "ElementDefinition", "min", element.getMinElement(), -1); 858 } 859 if (element.hasMaxElement()) { 860 composeString(t, "ElementDefinition", "max", element.getMaxElement(), -1); 861 } 862 if (element.hasBase()) { 863 composeElementDefinitionBaseComponent(t, "ElementDefinition", "base", element.getBase(), -1); 864 } 865 if (element.hasContentReferenceElement()) { 866 composeUri(t, "ElementDefinition", "contentReference", element.getContentReferenceElement(), -1); 867 } 868 for (int i = 0; i < element.getType().size(); i++) { 869 composeElementDefinitionTypeRefComponent(t, "ElementDefinition", "type", element.getType().get(i), i); 870 } 871 if (element.hasDefaultValue()) { 872 composeType(t, "ElementDefinition", "defaultValue", element.getDefaultValue(), -1); 873 } 874 if (element.hasMeaningWhenMissingElement()) { 875 composeMarkdown(t, "ElementDefinition", "meaningWhenMissing", element.getMeaningWhenMissingElement(), -1); 876 } 877 if (element.hasOrderMeaningElement()) { 878 composeString(t, "ElementDefinition", "orderMeaning", element.getOrderMeaningElement(), -1); 879 } 880 if (element.hasFixed()) { 881 composeType(t, "ElementDefinition", "fixed", element.getFixed(), -1); 882 } 883 if (element.hasPattern()) { 884 composeType(t, "ElementDefinition", "pattern", element.getPattern(), -1); 885 } 886 for (int i = 0; i < element.getExample().size(); i++) { 887 composeElementDefinitionExampleComponent(t, "ElementDefinition", "example", element.getExample().get(i), i); 888 } 889 if (element.hasMinValue()) { 890 composeType(t, "ElementDefinition", "minValue", element.getMinValue(), -1); 891 } 892 if (element.hasMaxValue()) { 893 composeType(t, "ElementDefinition", "maxValue", element.getMaxValue(), -1); 894 } 895 if (element.hasMaxLengthElement()) { 896 composeInteger(t, "ElementDefinition", "maxLength", element.getMaxLengthElement(), -1); 897 } 898 for (int i = 0; i < element.getCondition().size(); i++) { 899 composeId(t, "ElementDefinition", "condition", element.getCondition().get(i), i); 900 } 901 for (int i = 0; i < element.getConstraint().size(); i++) { 902 composeElementDefinitionConstraintComponent(t, "ElementDefinition", "constraint", element.getConstraint().get(i), i); 903 } 904 if (element.hasMustHaveValueElement()) { 905 composeBoolean(t, "ElementDefinition", "mustHaveValue", element.getMustHaveValueElement(), -1); 906 } 907 for (int i = 0; i < element.getValueAlternatives().size(); i++) { 908 composeCanonical(t, "ElementDefinition", "valueAlternatives", element.getValueAlternatives().get(i), i); 909 } 910 if (element.hasMustSupportElement()) { 911 composeBoolean(t, "ElementDefinition", "mustSupport", element.getMustSupportElement(), -1); 912 } 913 if (element.hasIsModifierElement()) { 914 composeBoolean(t, "ElementDefinition", "isModifier", element.getIsModifierElement(), -1); 915 } 916 if (element.hasIsModifierReasonElement()) { 917 composeString(t, "ElementDefinition", "isModifierReason", element.getIsModifierReasonElement(), -1); 918 } 919 if (element.hasIsSummaryElement()) { 920 composeBoolean(t, "ElementDefinition", "isSummary", element.getIsSummaryElement(), -1); 921 } 922 if (element.hasBinding()) { 923 composeElementDefinitionBindingComponent(t, "ElementDefinition", "binding", element.getBinding(), -1); 924 } 925 for (int i = 0; i < element.getMapping().size(); i++) { 926 composeElementDefinitionMappingComponent(t, "ElementDefinition", "mapping", element.getMapping().get(i), i); 927 } 928 } 929 930 protected void composeElementDefinitionSlicingComponent(Complex parent, String parentType, String name, ElementDefinition.ElementDefinitionSlicingComponent element, int index) { 931 if (element == null) 932 return; 933 Complex t; 934 if (Utilities.noString(parentType)) 935 t = parent; 936 else { 937 t = parent.predicate("fhir:"+name,index > -1); 938 } 939 composeElement(t, "slicing", name, element, index); 940 for (int i = 0; i < element.getDiscriminator().size(); i++) { 941 composeElementDefinitionSlicingDiscriminatorComponent(t, "ElementDefinitionSlicingComponent", "discriminator", element.getDiscriminator().get(i), i); 942 } 943 if (element.hasDescriptionElement()) { 944 composeString(t, "ElementDefinitionSlicingComponent", "description", element.getDescriptionElement(), -1); 945 } 946 if (element.hasOrderedElement()) { 947 composeBoolean(t, "ElementDefinitionSlicingComponent", "ordered", element.getOrderedElement(), -1); 948 } 949 if (element.hasRulesElement()) { 950 composeEnum(t, "ElementDefinitionSlicingComponent", "rules", element.getRulesElement(), -1); 951 } 952 } 953 954 protected void composeElementDefinitionSlicingDiscriminatorComponent(Complex parent, String parentType, String name, ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent element, int index) { 955 if (element == null) 956 return; 957 Complex t; 958 if (Utilities.noString(parentType)) 959 t = parent; 960 else { 961 t = parent.predicate("fhir:"+name,index > -1); 962 } 963 composeElement(t, "discriminator", name, element, index); 964 if (element.hasTypeElement()) { 965 composeEnum(t, "ElementDefinitionSlicingDiscriminatorComponent", "type", element.getTypeElement(), -1); 966 } 967 if (element.hasPathElement()) { 968 composeString(t, "ElementDefinitionSlicingDiscriminatorComponent", "path", element.getPathElement(), -1); 969 } 970 } 971 972 protected void composeElementDefinitionBaseComponent(Complex parent, String parentType, String name, ElementDefinition.ElementDefinitionBaseComponent element, int index) { 973 if (element == null) 974 return; 975 Complex t; 976 if (Utilities.noString(parentType)) 977 t = parent; 978 else { 979 t = parent.predicate("fhir:"+name,index > -1); 980 } 981 composeElement(t, "base", name, element, index); 982 if (element.hasPathElement()) { 983 composeString(t, "ElementDefinitionBaseComponent", "path", element.getPathElement(), -1); 984 } 985 if (element.hasMinElement()) { 986 composeUnsignedInt(t, "ElementDefinitionBaseComponent", "min", element.getMinElement(), -1); 987 } 988 if (element.hasMaxElement()) { 989 composeString(t, "ElementDefinitionBaseComponent", "max", element.getMaxElement(), -1); 990 } 991 } 992 993 protected void composeElementDefinitionTypeRefComponent(Complex parent, String parentType, String name, ElementDefinition.TypeRefComponent element, int index) { 994 if (element == null) 995 return; 996 Complex t; 997 if (Utilities.noString(parentType)) 998 t = parent; 999 else { 1000 t = parent.predicate("fhir:"+name,index > -1); 1001 } 1002 composeElement(t, "type", name, element, index); 1003 if (element.hasCodeElement()) { 1004 composeUri(t, "TypeRefComponent", "code", element.getCodeElement(), -1); 1005 } 1006 for (int i = 0; i < element.getProfile().size(); i++) { 1007 composeCanonical(t, "TypeRefComponent", "profile", element.getProfile().get(i), i); 1008 } 1009 for (int i = 0; i < element.getTargetProfile().size(); i++) { 1010 composeCanonical(t, "TypeRefComponent", "targetProfile", element.getTargetProfile().get(i), i); 1011 } 1012 for (int i = 0; i < element.getAggregation().size(); i++) { 1013 composeEnum(t, "TypeRefComponent", "aggregation", element.getAggregation().get(i), i); 1014 } 1015 if (element.hasVersioningElement()) { 1016 composeEnum(t, "TypeRefComponent", "versioning", element.getVersioningElement(), -1); 1017 } 1018 } 1019 1020 protected void composeElementDefinitionExampleComponent(Complex parent, String parentType, String name, ElementDefinition.ElementDefinitionExampleComponent element, int index) { 1021 if (element == null) 1022 return; 1023 Complex t; 1024 if (Utilities.noString(parentType)) 1025 t = parent; 1026 else { 1027 t = parent.predicate("fhir:"+name,index > -1); 1028 } 1029 composeElement(t, "example", name, element, index); 1030 if (element.hasLabelElement()) { 1031 composeString(t, "ElementDefinitionExampleComponent", "label", element.getLabelElement(), -1); 1032 } 1033 if (element.hasValue()) { 1034 composeType(t, "ElementDefinitionExampleComponent", "value", element.getValue(), -1); 1035 } 1036 } 1037 1038 protected void composeElementDefinitionConstraintComponent(Complex parent, String parentType, String name, ElementDefinition.ElementDefinitionConstraintComponent element, int index) { 1039 if (element == null) 1040 return; 1041 Complex t; 1042 if (Utilities.noString(parentType)) 1043 t = parent; 1044 else { 1045 t = parent.predicate("fhir:"+name,index > -1); 1046 } 1047 composeElement(t, "constraint", name, element, index); 1048 if (element.hasKeyElement()) { 1049 composeId(t, "ElementDefinitionConstraintComponent", "key", element.getKeyElement(), -1); 1050 } 1051 if (element.hasRequirementsElement()) { 1052 composeMarkdown(t, "ElementDefinitionConstraintComponent", "requirements", element.getRequirementsElement(), -1); 1053 } 1054 if (element.hasSeverityElement()) { 1055 composeEnum(t, "ElementDefinitionConstraintComponent", "severity", element.getSeverityElement(), -1); 1056 } 1057 if (element.hasSuppressElement()) { 1058 composeBoolean(t, "ElementDefinitionConstraintComponent", "suppress", element.getSuppressElement(), -1); 1059 } 1060 if (element.hasHumanElement()) { 1061 composeString(t, "ElementDefinitionConstraintComponent", "human", element.getHumanElement(), -1); 1062 } 1063 if (element.hasExpressionElement()) { 1064 composeString(t, "ElementDefinitionConstraintComponent", "expression", element.getExpressionElement(), -1); 1065 } 1066 if (element.hasSourceElement()) { 1067 composeCanonical(t, "ElementDefinitionConstraintComponent", "source", element.getSourceElement(), -1); 1068 } 1069 } 1070 1071 protected void composeElementDefinitionBindingComponent(Complex parent, String parentType, String name, ElementDefinition.ElementDefinitionBindingComponent element, int index) { 1072 if (element == null) 1073 return; 1074 Complex t; 1075 if (Utilities.noString(parentType)) 1076 t = parent; 1077 else { 1078 t = parent.predicate("fhir:"+name,index > -1); 1079 } 1080 composeElement(t, "binding", name, element, index); 1081 if (element.hasStrengthElement()) { 1082 composeEnum(t, "ElementDefinitionBindingComponent", "strength", element.getStrengthElement(), -1); 1083 } 1084 if (element.hasDescriptionElement()) { 1085 composeMarkdown(t, "ElementDefinitionBindingComponent", "description", element.getDescriptionElement(), -1); 1086 } 1087 if (element.hasValueSetElement()) { 1088 composeCanonical(t, "ElementDefinitionBindingComponent", "valueSet", element.getValueSetElement(), -1); 1089 } 1090 for (int i = 0; i < element.getAdditional().size(); i++) { 1091 composeElementDefinitionBindingAdditionalComponent(t, "ElementDefinitionBindingComponent", "additional", element.getAdditional().get(i), i); 1092 } 1093 } 1094 1095 protected void composeElementDefinitionBindingAdditionalComponent(Complex parent, String parentType, String name, ElementDefinition.ElementDefinitionBindingAdditionalComponent element, int index) { 1096 if (element == null) 1097 return; 1098 Complex t; 1099 if (Utilities.noString(parentType)) 1100 t = parent; 1101 else { 1102 t = parent.predicate("fhir:"+name,index > -1); 1103 } 1104 composeElement(t, "additional", name, element, index); 1105 if (element.hasPurposeElement()) { 1106 composeEnum(t, "ElementDefinitionBindingAdditionalComponent", "purpose", element.getPurposeElement(), -1); 1107 } 1108 if (element.hasValueSetElement()) { 1109 composeCanonical(t, "ElementDefinitionBindingAdditionalComponent", "valueSet", element.getValueSetElement(), -1); 1110 } 1111 if (element.hasDocumentationElement()) { 1112 composeMarkdown(t, "ElementDefinitionBindingAdditionalComponent", "documentation", element.getDocumentationElement(), -1); 1113 } 1114 if (element.hasShortDocoElement()) { 1115 composeString(t, "ElementDefinitionBindingAdditionalComponent", "shortDoco", element.getShortDocoElement(), -1); 1116 } 1117 for (int i = 0; i < element.getUsage().size(); i++) { 1118 composeUsageContext(t, "ElementDefinitionBindingAdditionalComponent", "usage", element.getUsage().get(i), i); 1119 } 1120 if (element.hasAnyElement()) { 1121 composeBoolean(t, "ElementDefinitionBindingAdditionalComponent", "any", element.getAnyElement(), -1); 1122 } 1123 } 1124 1125 protected void composeElementDefinitionMappingComponent(Complex parent, String parentType, String name, ElementDefinition.ElementDefinitionMappingComponent element, int index) { 1126 if (element == null) 1127 return; 1128 Complex t; 1129 if (Utilities.noString(parentType)) 1130 t = parent; 1131 else { 1132 t = parent.predicate("fhir:"+name,index > -1); 1133 } 1134 composeElement(t, "mapping", name, element, index); 1135 if (element.hasIdentityElement()) { 1136 composeId(t, "ElementDefinitionMappingComponent", "identity", element.getIdentityElement(), -1); 1137 } 1138 if (element.hasLanguageElement()) { 1139 composeCode(t, "ElementDefinitionMappingComponent", "language", element.getLanguageElement(), -1); 1140 } 1141 if (element.hasMapElement()) { 1142 composeString(t, "ElementDefinitionMappingComponent", "map", element.getMapElement(), -1); 1143 } 1144 if (element.hasCommentElement()) { 1145 composeMarkdown(t, "ElementDefinitionMappingComponent", "comment", element.getCommentElement(), -1); 1146 } 1147 } 1148 1149 protected void composeExpression(Complex parent, String parentType, String name, Expression element, int index) { 1150 if (element == null) 1151 return; 1152 Complex t; 1153 if (Utilities.noString(parentType)) 1154 t = parent; 1155 else { 1156 t = parent.predicate("fhir:"+name,index > -1); 1157 } 1158 composeDataType(t, "Expression", name, element, index); 1159 if (element.hasDescriptionElement()) { 1160 composeString(t, "Expression", "description", element.getDescriptionElement(), -1); 1161 } 1162 if (element.hasNameElement()) { 1163 composeCode(t, "Expression", "name", element.getNameElement(), -1); 1164 } 1165 if (element.hasLanguageElement()) { 1166 composeCode(t, "Expression", "language", element.getLanguageElement(), -1); 1167 } 1168 if (element.hasExpressionElement()) { 1169 composeString(t, "Expression", "expression", element.getExpressionElement(), -1); 1170 } 1171 if (element.hasReferenceElement()) { 1172 composeUri(t, "Expression", "reference", element.getReferenceElement(), -1); 1173 } 1174 } 1175 1176 protected void composeExtendedContactDetail(Complex parent, String parentType, String name, ExtendedContactDetail element, int index) { 1177 if (element == null) 1178 return; 1179 Complex t; 1180 if (Utilities.noString(parentType)) 1181 t = parent; 1182 else { 1183 t = parent.predicate("fhir:"+name,index > -1); 1184 } 1185 composeDataType(t, "ExtendedContactDetail", name, element, index); 1186 if (element.hasPurpose()) { 1187 composeCodeableConcept(t, "ExtendedContactDetail", "purpose", element.getPurpose(), -1); 1188 } 1189 for (int i = 0; i < element.getName().size(); i++) { 1190 composeHumanName(t, "ExtendedContactDetail", "name", element.getName().get(i), i); 1191 } 1192 for (int i = 0; i < element.getTelecom().size(); i++) { 1193 composeContactPoint(t, "ExtendedContactDetail", "telecom", element.getTelecom().get(i), i); 1194 } 1195 if (element.hasAddress()) { 1196 composeAddress(t, "ExtendedContactDetail", "address", element.getAddress(), -1); 1197 } 1198 if (element.hasOrganization()) { 1199 composeReference(t, "ExtendedContactDetail", "organization", element.getOrganization(), -1); 1200 } 1201 if (element.hasPeriod()) { 1202 composePeriod(t, "ExtendedContactDetail", "period", element.getPeriod(), -1); 1203 } 1204 } 1205 1206 protected void composeExtension(Complex parent, String parentType, String name, Extension element, int index) { 1207 if (element == null) 1208 return; 1209 Complex t; 1210 if (Utilities.noString(parentType)) 1211 t = parent; 1212 else { 1213 t = parent.predicate("fhir:"+name,index > -1); 1214 } 1215 composeDataType(t, "Extension", name, element, index); 1216 if (element.hasUrlElement()) { 1217 composeUri(t, "Extension", "url", element.getUrlElement(), -1); 1218 } 1219 if (element.hasValue()) { 1220 composeType(t, "Extension", "value", element.getValue(), -1); 1221 } 1222 } 1223 1224 protected void composeHumanName(Complex parent, String parentType, String name, HumanName element, int index) { 1225 if (element == null) 1226 return; 1227 Complex t; 1228 if (Utilities.noString(parentType)) 1229 t = parent; 1230 else { 1231 t = parent.predicate("fhir:"+name,index > -1); 1232 } 1233 composeDataType(t, "HumanName", name, element, index); 1234 if (element.hasUseElement()) { 1235 composeEnum(t, "HumanName", "use", element.getUseElement(), -1); 1236 } 1237 if (element.hasTextElement()) { 1238 composeString(t, "HumanName", "text", element.getTextElement(), -1); 1239 } 1240 if (element.hasFamilyElement()) { 1241 composeString(t, "HumanName", "family", element.getFamilyElement(), -1); 1242 } 1243 for (int i = 0; i < element.getGiven().size(); i++) { 1244 composeString(t, "HumanName", "given", element.getGiven().get(i), i); 1245 } 1246 for (int i = 0; i < element.getPrefix().size(); i++) { 1247 composeString(t, "HumanName", "prefix", element.getPrefix().get(i), i); 1248 } 1249 for (int i = 0; i < element.getSuffix().size(); i++) { 1250 composeString(t, "HumanName", "suffix", element.getSuffix().get(i), i); 1251 } 1252 if (element.hasPeriod()) { 1253 composePeriod(t, "HumanName", "period", element.getPeriod(), -1); 1254 } 1255 } 1256 1257 protected void composeIdentifier(Complex parent, String parentType, String name, Identifier element, int index) { 1258 if (element == null) 1259 return; 1260 Complex t; 1261 if (Utilities.noString(parentType)) 1262 t = parent; 1263 else { 1264 t = parent.predicate("fhir:"+name,index > -1); 1265 } 1266 composeDataType(t, "Identifier", name, element, index); 1267 if (element.hasUseElement()) { 1268 composeEnum(t, "Identifier", "use", element.getUseElement(), -1); 1269 } 1270 if (element.hasType()) { 1271 composeCodeableConcept(t, "Identifier", "type", element.getType(), -1); 1272 } 1273 if (element.hasSystemElement()) { 1274 composeUri(t, "Identifier", "system", element.getSystemElement(), -1); 1275 } 1276 if (element.hasValueElement()) { 1277 composeString(t, "Identifier", "value", element.getValueElement(), -1); 1278 } 1279 if (element.hasPeriod()) { 1280 composePeriod(t, "Identifier", "period", element.getPeriod(), -1); 1281 } 1282 if (element.hasAssigner()) { 1283 composeReference(t, "Identifier", "assigner", element.getAssigner(), -1); 1284 } 1285 } 1286 1287 protected void composeMarketingStatus(Complex parent, String parentType, String name, MarketingStatus element, int index) { 1288 if (element == null) 1289 return; 1290 Complex t; 1291 if (Utilities.noString(parentType)) 1292 t = parent; 1293 else { 1294 t = parent.predicate("fhir:"+name,index > -1); 1295 } 1296 composeBackboneType(t, "MarketingStatus", name, element, index); 1297 if (element.hasCountry()) { 1298 composeCodeableConcept(t, "MarketingStatus", "country", element.getCountry(), -1); 1299 } 1300 if (element.hasJurisdiction()) { 1301 composeCodeableConcept(t, "MarketingStatus", "jurisdiction", element.getJurisdiction(), -1); 1302 } 1303 if (element.hasStatus()) { 1304 composeCodeableConcept(t, "MarketingStatus", "status", element.getStatus(), -1); 1305 } 1306 if (element.hasDateRange()) { 1307 composePeriod(t, "MarketingStatus", "dateRange", element.getDateRange(), -1); 1308 } 1309 if (element.hasRestoreDateElement()) { 1310 composeDateTime(t, "MarketingStatus", "restoreDate", element.getRestoreDateElement(), -1); 1311 } 1312 } 1313 1314 protected void composeMeta(Complex parent, String parentType, String name, Meta element, int index) { 1315 if (element == null) 1316 return; 1317 Complex t; 1318 if (Utilities.noString(parentType)) 1319 t = parent; 1320 else { 1321 t = parent.predicate("fhir:"+name,index > -1); 1322 } 1323 composeDataType(t, "Meta", name, element, index); 1324 if (element.hasVersionIdElement()) { 1325 composeId(t, "Meta", "versionId", element.getVersionIdElement(), -1); 1326 } 1327 if (element.hasLastUpdatedElement()) { 1328 composeInstant(t, "Meta", "lastUpdated", element.getLastUpdatedElement(), -1); 1329 } 1330 if (element.hasSourceElement()) { 1331 composeUri(t, "Meta", "source", element.getSourceElement(), -1); 1332 } 1333 for (int i = 0; i < element.getProfile().size(); i++) { 1334 composeCanonical(t, "Meta", "profile", element.getProfile().get(i), i); 1335 } 1336 for (int i = 0; i < element.getSecurity().size(); i++) { 1337 composeCoding(t, "Meta", "security", element.getSecurity().get(i), i); 1338 } 1339 for (int i = 0; i < element.getTag().size(); i++) { 1340 composeCoding(t, "Meta", "tag", element.getTag().get(i), i); 1341 } 1342 } 1343 1344 protected void composeMonetaryComponent(Complex parent, String parentType, String name, MonetaryComponent element, int index) { 1345 if (element == null) 1346 return; 1347 Complex t; 1348 if (Utilities.noString(parentType)) 1349 t = parent; 1350 else { 1351 t = parent.predicate("fhir:"+name,index > -1); 1352 } 1353 composeDataType(t, "MonetaryComponent", name, element, index); 1354 if (element.hasTypeElement()) { 1355 composeEnum(t, "MonetaryComponent", "type", element.getTypeElement(), -1); 1356 } 1357 if (element.hasCode()) { 1358 composeCodeableConcept(t, "MonetaryComponent", "code", element.getCode(), -1); 1359 } 1360 if (element.hasFactorElement()) { 1361 composeDecimal(t, "MonetaryComponent", "factor", element.getFactorElement(), -1); 1362 } 1363 if (element.hasAmount()) { 1364 composeMoney(t, "MonetaryComponent", "amount", element.getAmount(), -1); 1365 } 1366 } 1367 1368 protected void composeMoney(Complex parent, String parentType, String name, Money element, int index) { 1369 if (element == null) 1370 return; 1371 Complex t; 1372 if (Utilities.noString(parentType)) 1373 t = parent; 1374 else { 1375 t = parent.predicate("fhir:"+name,index > -1); 1376 } 1377 composeDataType(t, "Money", name, element, index); 1378 if (element.hasValueElement()) { 1379 composeDecimal(t, "Money", "value", element.getValueElement(), -1); 1380 } 1381 if (element.hasCurrencyElement()) { 1382 composeCode(t, "Money", "currency", element.getCurrencyElement(), -1); 1383 } 1384 } 1385 1386 protected void composeNarrative(Complex parent, String parentType, String name, Narrative element, int index) { 1387 if (element == null) 1388 return; 1389 Complex t; 1390 if (Utilities.noString(parentType)) 1391 t = parent; 1392 else { 1393 t = parent.predicate("fhir:"+name,index > -1); 1394 } 1395 composeDataType(t, "Narrative", name, element, index); 1396 if (element.hasStatusElement()) { 1397 composeEnum(t, "Narrative", "status", element.getStatusElement(), -1); 1398 } 1399 if (element.hasDiv()) { 1400 composeXhtmlNode(t, "Narrative", "div", element.getDiv(), -1); 1401 } 1402 } 1403 1404 protected void composeParameterDefinition(Complex parent, String parentType, String name, ParameterDefinition element, int index) { 1405 if (element == null) 1406 return; 1407 Complex t; 1408 if (Utilities.noString(parentType)) 1409 t = parent; 1410 else { 1411 t = parent.predicate("fhir:"+name,index > -1); 1412 } 1413 composeDataType(t, "ParameterDefinition", name, element, index); 1414 if (element.hasNameElement()) { 1415 composeCode(t, "ParameterDefinition", "name", element.getNameElement(), -1); 1416 } 1417 if (element.hasUseElement()) { 1418 composeEnum(t, "ParameterDefinition", "use", element.getUseElement(), -1); 1419 } 1420 if (element.hasMinElement()) { 1421 composeInteger(t, "ParameterDefinition", "min", element.getMinElement(), -1); 1422 } 1423 if (element.hasMaxElement()) { 1424 composeString(t, "ParameterDefinition", "max", element.getMaxElement(), -1); 1425 } 1426 if (element.hasDocumentationElement()) { 1427 composeString(t, "ParameterDefinition", "documentation", element.getDocumentationElement(), -1); 1428 } 1429 if (element.hasTypeElement()) { 1430 composeEnum(t, "ParameterDefinition", "type", element.getTypeElement(), -1); 1431 } 1432 if (element.hasProfileElement()) { 1433 composeCanonical(t, "ParameterDefinition", "profile", element.getProfileElement(), -1); 1434 } 1435 } 1436 1437 protected void composePeriod(Complex parent, String parentType, String name, Period element, int index) { 1438 if (element == null) 1439 return; 1440 Complex t; 1441 if (Utilities.noString(parentType)) 1442 t = parent; 1443 else { 1444 t = parent.predicate("fhir:"+name,index > -1); 1445 } 1446 composeDataType(t, "Period", name, element, index); 1447 if (element.hasStartElement()) { 1448 composeDateTime(t, "Period", "start", element.getStartElement(), -1); 1449 } 1450 if (element.hasEndElement()) { 1451 composeDateTime(t, "Period", "end", element.getEndElement(), -1); 1452 } 1453 } 1454 1455 protected void composeProductShelfLife(Complex parent, String parentType, String name, ProductShelfLife element, int index) { 1456 if (element == null) 1457 return; 1458 Complex t; 1459 if (Utilities.noString(parentType)) 1460 t = parent; 1461 else { 1462 t = parent.predicate("fhir:"+name,index > -1); 1463 } 1464 composeBackboneType(t, "ProductShelfLife", name, element, index); 1465 if (element.hasType()) { 1466 composeCodeableConcept(t, "ProductShelfLife", "type", element.getType(), -1); 1467 } 1468 if (element.hasPeriod()) { 1469 composeType(t, "ProductShelfLife", "period", element.getPeriod(), -1); 1470 } 1471 for (int i = 0; i < element.getSpecialPrecautionsForStorage().size(); i++) { 1472 composeCodeableConcept(t, "ProductShelfLife", "specialPrecautionsForStorage", element.getSpecialPrecautionsForStorage().get(i), i); 1473 } 1474 } 1475 1476 protected void composeQuantity(Complex parent, String parentType, String name, Quantity element, int index) { 1477 if (element == null) 1478 return; 1479 Complex t; 1480 if (Utilities.noString(parentType)) 1481 t = parent; 1482 else { 1483 t = parent.predicate("fhir:"+name,index > -1); 1484 } 1485 composeDataType(t, "Quantity", name, element, index); 1486 if (element.hasValueElement()) { 1487 composeDecimal(t, "Quantity", "value", element.getValueElement(), -1); 1488 } 1489 if (element.hasComparatorElement()) { 1490 composeEnum(t, "Quantity", "comparator", element.getComparatorElement(), -1); 1491 } 1492 if (element.hasUnitElement()) { 1493 composeString(t, "Quantity", "unit", element.getUnitElement(), -1); 1494 } 1495 if (element.hasSystemElement()) { 1496 composeUri(t, "Quantity", "system", element.getSystemElement(), -1); 1497 } 1498 if (element.hasCodeElement()) { 1499 composeCode(t, "Quantity", "code", element.getCodeElement(), -1); 1500 } 1501 } 1502 1503 protected void composeRange(Complex parent, String parentType, String name, Range element, int index) { 1504 if (element == null) 1505 return; 1506 Complex t; 1507 if (Utilities.noString(parentType)) 1508 t = parent; 1509 else { 1510 t = parent.predicate("fhir:"+name,index > -1); 1511 } 1512 composeDataType(t, "Range", name, element, index); 1513 if (element.hasLow()) { 1514 composeQuantity(t, "Range", "low", element.getLow(), -1); 1515 } 1516 if (element.hasHigh()) { 1517 composeQuantity(t, "Range", "high", element.getHigh(), -1); 1518 } 1519 } 1520 1521 protected void composeRatio(Complex parent, String parentType, String name, Ratio element, int index) { 1522 if (element == null) 1523 return; 1524 Complex t; 1525 if (Utilities.noString(parentType)) 1526 t = parent; 1527 else { 1528 t = parent.predicate("fhir:"+name,index > -1); 1529 } 1530 composeDataType(t, "Ratio", name, element, index); 1531 if (element.hasNumerator()) { 1532 composeQuantity(t, "Ratio", "numerator", element.getNumerator(), -1); 1533 } 1534 if (element.hasDenominator()) { 1535 composeQuantity(t, "Ratio", "denominator", element.getDenominator(), -1); 1536 } 1537 } 1538 1539 protected void composeRatioRange(Complex parent, String parentType, String name, RatioRange element, int index) { 1540 if (element == null) 1541 return; 1542 Complex t; 1543 if (Utilities.noString(parentType)) 1544 t = parent; 1545 else { 1546 t = parent.predicate("fhir:"+name,index > -1); 1547 } 1548 composeDataType(t, "RatioRange", name, element, index); 1549 if (element.hasLowNumerator()) { 1550 composeQuantity(t, "RatioRange", "lowNumerator", element.getLowNumerator(), -1); 1551 } 1552 if (element.hasHighNumerator()) { 1553 composeQuantity(t, "RatioRange", "highNumerator", element.getHighNumerator(), -1); 1554 } 1555 if (element.hasDenominator()) { 1556 composeQuantity(t, "RatioRange", "denominator", element.getDenominator(), -1); 1557 } 1558 } 1559 1560 protected void composeReference(Complex parent, String parentType, String name, Reference element, int index) { 1561 if (element == null) 1562 return; 1563 Complex t; 1564 if (Utilities.noString(parentType)) 1565 t = parent; 1566 else { 1567 t = parent.predicate("fhir:"+name,index > -1); 1568 } 1569 composeDataType(t, "Reference", name, element, index); 1570 if (element.hasReferenceElement()) { 1571 composeString(t, "Reference", "reference", element.getReferenceElement_(), -1); 1572 } 1573 if (element.hasTypeElement()) { 1574 composeUri(t, "Reference", "type", element.getTypeElement(), -1); 1575 } 1576 if (element.hasIdentifier()) { 1577 composeIdentifier(t, "Reference", "identifier", element.getIdentifier(), -1); 1578 } 1579 if (element.hasDisplayElement()) { 1580 composeString(t, "Reference", "display", element.getDisplayElement(), -1); 1581 } 1582 } 1583 1584 protected void composeRelatedArtifact(Complex parent, String parentType, String name, RelatedArtifact element, int index) { 1585 if (element == null) 1586 return; 1587 Complex t; 1588 if (Utilities.noString(parentType)) 1589 t = parent; 1590 else { 1591 t = parent.predicate("fhir:"+name,index > -1); 1592 } 1593 composeDataType(t, "RelatedArtifact", name, element, index); 1594 if (element.hasTypeElement()) { 1595 composeEnum(t, "RelatedArtifact", "type", element.getTypeElement(), -1); 1596 } 1597 for (int i = 0; i < element.getClassifier().size(); i++) { 1598 composeCodeableConcept(t, "RelatedArtifact", "classifier", element.getClassifier().get(i), i); 1599 } 1600 if (element.hasLabelElement()) { 1601 composeString(t, "RelatedArtifact", "label", element.getLabelElement(), -1); 1602 } 1603 if (element.hasDisplayElement()) { 1604 composeString(t, "RelatedArtifact", "display", element.getDisplayElement(), -1); 1605 } 1606 if (element.hasCitationElement()) { 1607 composeMarkdown(t, "RelatedArtifact", "citation", element.getCitationElement(), -1); 1608 } 1609 if (element.hasDocument()) { 1610 composeAttachment(t, "RelatedArtifact", "document", element.getDocument(), -1); 1611 } 1612 if (element.hasResourceElement()) { 1613 composeCanonical(t, "RelatedArtifact", "resource", element.getResourceElement(), -1); 1614 } 1615 if (element.hasResourceReference()) { 1616 composeReference(t, "RelatedArtifact", "resourceReference", element.getResourceReference(), -1); 1617 } 1618 if (element.hasPublicationStatusElement()) { 1619 composeEnum(t, "RelatedArtifact", "publicationStatus", element.getPublicationStatusElement(), -1); 1620 } 1621 if (element.hasPublicationDateElement()) { 1622 composeDate(t, "RelatedArtifact", "publicationDate", element.getPublicationDateElement(), -1); 1623 } 1624 } 1625 1626 protected void composeSampledData(Complex parent, String parentType, String name, SampledData element, int index) { 1627 if (element == null) 1628 return; 1629 Complex t; 1630 if (Utilities.noString(parentType)) 1631 t = parent; 1632 else { 1633 t = parent.predicate("fhir:"+name,index > -1); 1634 } 1635 composeDataType(t, "SampledData", name, element, index); 1636 if (element.hasOrigin()) { 1637 composeQuantity(t, "SampledData", "origin", element.getOrigin(), -1); 1638 } 1639 if (element.hasIntervalElement()) { 1640 composeDecimal(t, "SampledData", "interval", element.getIntervalElement(), -1); 1641 } 1642 if (element.hasIntervalUnitElement()) { 1643 composeCode(t, "SampledData", "intervalUnit", element.getIntervalUnitElement(), -1); 1644 } 1645 if (element.hasFactorElement()) { 1646 composeDecimal(t, "SampledData", "factor", element.getFactorElement(), -1); 1647 } 1648 if (element.hasLowerLimitElement()) { 1649 composeDecimal(t, "SampledData", "lowerLimit", element.getLowerLimitElement(), -1); 1650 } 1651 if (element.hasUpperLimitElement()) { 1652 composeDecimal(t, "SampledData", "upperLimit", element.getUpperLimitElement(), -1); 1653 } 1654 if (element.hasDimensionsElement()) { 1655 composePositiveInt(t, "SampledData", "dimensions", element.getDimensionsElement(), -1); 1656 } 1657 if (element.hasCodeMapElement()) { 1658 composeCanonical(t, "SampledData", "codeMap", element.getCodeMapElement(), -1); 1659 } 1660 if (element.hasOffsetsElement()) { 1661 composeString(t, "SampledData", "offsets", element.getOffsetsElement(), -1); 1662 } 1663 if (element.hasDataElement()) { 1664 composeString(t, "SampledData", "data", element.getDataElement(), -1); 1665 } 1666 } 1667 1668 protected void composeSignature(Complex parent, String parentType, String name, Signature element, int index) { 1669 if (element == null) 1670 return; 1671 Complex t; 1672 if (Utilities.noString(parentType)) 1673 t = parent; 1674 else { 1675 t = parent.predicate("fhir:"+name,index > -1); 1676 } 1677 composeDataType(t, "Signature", name, element, index); 1678 for (int i = 0; i < element.getType().size(); i++) { 1679 composeCoding(t, "Signature", "type", element.getType().get(i), i); 1680 } 1681 if (element.hasWhenElement()) { 1682 composeInstant(t, "Signature", "when", element.getWhenElement(), -1); 1683 } 1684 if (element.hasWho()) { 1685 composeReference(t, "Signature", "who", element.getWho(), -1); 1686 } 1687 if (element.hasOnBehalfOf()) { 1688 composeReference(t, "Signature", "onBehalfOf", element.getOnBehalfOf(), -1); 1689 } 1690 if (element.hasTargetFormatElement()) { 1691 composeCode(t, "Signature", "targetFormat", element.getTargetFormatElement(), -1); 1692 } 1693 if (element.hasSigFormatElement()) { 1694 composeCode(t, "Signature", "sigFormat", element.getSigFormatElement(), -1); 1695 } 1696 if (element.hasDataElement()) { 1697 composeBase64Binary(t, "Signature", "data", element.getDataElement(), -1); 1698 } 1699 } 1700 1701 protected void composeTiming(Complex parent, String parentType, String name, Timing element, int index) { 1702 if (element == null) 1703 return; 1704 Complex t; 1705 if (Utilities.noString(parentType)) 1706 t = parent; 1707 else { 1708 t = parent.predicate("fhir:"+name,index > -1); 1709 } 1710 composeBackboneType(t, "Timing", name, element, index); 1711 for (int i = 0; i < element.getEvent().size(); i++) { 1712 composeDateTime(t, "Timing", "event", element.getEvent().get(i), i); 1713 } 1714 if (element.hasRepeat()) { 1715 composeTimingRepeatComponent(t, "Timing", "repeat", element.getRepeat(), -1); 1716 } 1717 if (element.hasCode()) { 1718 composeCodeableConcept(t, "Timing", "code", element.getCode(), -1); 1719 } 1720 } 1721 1722 protected void composeTimingRepeatComponent(Complex parent, String parentType, String name, Timing.TimingRepeatComponent element, int index) { 1723 if (element == null) 1724 return; 1725 Complex t; 1726 if (Utilities.noString(parentType)) 1727 t = parent; 1728 else { 1729 t = parent.predicate("fhir:"+name,index > -1); 1730 } 1731 composeElement(t, "repeat", name, element, index); 1732 if (element.hasBounds()) { 1733 composeType(t, "TimingRepeatComponent", "bounds", element.getBounds(), -1); 1734 } 1735 if (element.hasCountElement()) { 1736 composePositiveInt(t, "TimingRepeatComponent", "count", element.getCountElement(), -1); 1737 } 1738 if (element.hasCountMaxElement()) { 1739 composePositiveInt(t, "TimingRepeatComponent", "countMax", element.getCountMaxElement(), -1); 1740 } 1741 if (element.hasDurationElement()) { 1742 composeDecimal(t, "TimingRepeatComponent", "duration", element.getDurationElement(), -1); 1743 } 1744 if (element.hasDurationMaxElement()) { 1745 composeDecimal(t, "TimingRepeatComponent", "durationMax", element.getDurationMaxElement(), -1); 1746 } 1747 if (element.hasDurationUnitElement()) { 1748 composeEnum(t, "TimingRepeatComponent", "durationUnit", element.getDurationUnitElement(), -1); 1749 } 1750 if (element.hasFrequencyElement()) { 1751 composePositiveInt(t, "TimingRepeatComponent", "frequency", element.getFrequencyElement(), -1); 1752 } 1753 if (element.hasFrequencyMaxElement()) { 1754 composePositiveInt(t, "TimingRepeatComponent", "frequencyMax", element.getFrequencyMaxElement(), -1); 1755 } 1756 if (element.hasPeriodElement()) { 1757 composeDecimal(t, "TimingRepeatComponent", "period", element.getPeriodElement(), -1); 1758 } 1759 if (element.hasPeriodMaxElement()) { 1760 composeDecimal(t, "TimingRepeatComponent", "periodMax", element.getPeriodMaxElement(), -1); 1761 } 1762 if (element.hasPeriodUnitElement()) { 1763 composeEnum(t, "TimingRepeatComponent", "periodUnit", element.getPeriodUnitElement(), -1); 1764 } 1765 for (int i = 0; i < element.getDayOfWeek().size(); i++) { 1766 composeEnum(t, "TimingRepeatComponent", "dayOfWeek", element.getDayOfWeek().get(i), i); 1767 } 1768 for (int i = 0; i < element.getTimeOfDay().size(); i++) { 1769 composeTime(t, "TimingRepeatComponent", "timeOfDay", element.getTimeOfDay().get(i), i); 1770 } 1771 for (int i = 0; i < element.getWhen().size(); i++) { 1772 composeEnum(t, "TimingRepeatComponent", "when", element.getWhen().get(i), i); 1773 } 1774 if (element.hasOffsetElement()) { 1775 composeUnsignedInt(t, "TimingRepeatComponent", "offset", element.getOffsetElement(), -1); 1776 } 1777 } 1778 1779 protected void composeTriggerDefinition(Complex parent, String parentType, String name, TriggerDefinition element, int index) { 1780 if (element == null) 1781 return; 1782 Complex t; 1783 if (Utilities.noString(parentType)) 1784 t = parent; 1785 else { 1786 t = parent.predicate("fhir:"+name,index > -1); 1787 } 1788 composeDataType(t, "TriggerDefinition", name, element, index); 1789 if (element.hasTypeElement()) { 1790 composeEnum(t, "TriggerDefinition", "type", element.getTypeElement(), -1); 1791 } 1792 if (element.hasNameElement()) { 1793 composeString(t, "TriggerDefinition", "name", element.getNameElement(), -1); 1794 } 1795 if (element.hasCode()) { 1796 composeCodeableConcept(t, "TriggerDefinition", "code", element.getCode(), -1); 1797 } 1798 if (element.hasSubscriptionTopicElement()) { 1799 composeCanonical(t, "TriggerDefinition", "subscriptionTopic", element.getSubscriptionTopicElement(), -1); 1800 } 1801 if (element.hasTiming()) { 1802 composeType(t, "TriggerDefinition", "timing", element.getTiming(), -1); 1803 } 1804 for (int i = 0; i < element.getData().size(); i++) { 1805 composeDataRequirement(t, "TriggerDefinition", "data", element.getData().get(i), i); 1806 } 1807 if (element.hasCondition()) { 1808 composeExpression(t, "TriggerDefinition", "condition", element.getCondition(), -1); 1809 } 1810 } 1811 1812 protected void composeUsageContext(Complex parent, String parentType, String name, UsageContext element, int index) { 1813 if (element == null) 1814 return; 1815 Complex t; 1816 if (Utilities.noString(parentType)) 1817 t = parent; 1818 else { 1819 t = parent.predicate("fhir:"+name,index > -1); 1820 } 1821 composeDataType(t, "UsageContext", name, element, index); 1822 if (element.hasCode()) { 1823 composeCoding(t, "UsageContext", "code", element.getCode(), -1); 1824 } 1825 if (element.hasValue()) { 1826 composeType(t, "UsageContext", "value", element.getValue(), -1); 1827 } 1828 } 1829 1830 protected void composeVirtualServiceDetail(Complex parent, String parentType, String name, VirtualServiceDetail element, int index) { 1831 if (element == null) 1832 return; 1833 Complex t; 1834 if (Utilities.noString(parentType)) 1835 t = parent; 1836 else { 1837 t = parent.predicate("fhir:"+name,index > -1); 1838 } 1839 composeDataType(t, "VirtualServiceDetail", name, element, index); 1840 if (element.hasChannelType()) { 1841 composeCoding(t, "VirtualServiceDetail", "channelType", element.getChannelType(), -1); 1842 } 1843 if (element.hasAddress()) { 1844 composeType(t, "VirtualServiceDetail", "address", element.getAddress(), -1); 1845 } 1846 for (int i = 0; i < element.getAdditionalInfo().size(); i++) { 1847 composeUrl(t, "VirtualServiceDetail", "additionalInfo", element.getAdditionalInfo().get(i), i); 1848 } 1849 if (element.hasMaxParticipantsElement()) { 1850 composePositiveInt(t, "VirtualServiceDetail", "maxParticipants", element.getMaxParticipantsElement(), -1); 1851 } 1852 if (element.hasSessionKeyElement()) { 1853 composeString(t, "VirtualServiceDetail", "sessionKey", element.getSessionKeyElement(), -1); 1854 } 1855 } 1856 1857 protected void composeCanonicalResource(Complex t, String parentType, String name, CanonicalResource element, int index) { 1858 composeDomainResource(t, parentType, name, element, index); 1859 if (element.hasUrlElement()) { 1860 composeUri(t, "CanonicalResource", "url", element.getUrlElement(), -1); 1861 } 1862 for (int i = 0; i < element.getIdentifier().size(); i++) { 1863 composeIdentifier(t, "CanonicalResource", "identifier", element.getIdentifier().get(i), i); 1864 } 1865 if (element.hasVersionElement()) { 1866 composeString(t, "CanonicalResource", "version", element.getVersionElement(), -1); 1867 } 1868 if (element.hasVersionAlgorithm()) { 1869 composeType(t, "CanonicalResource", "versionAlgorithm", element.getVersionAlgorithm(), -1); 1870 } 1871 if (element.hasNameElement()) { 1872 composeString(t, "CanonicalResource", "name", element.getNameElement(), -1); 1873 } 1874 if (element.hasTitleElement()) { 1875 composeString(t, "CanonicalResource", "title", element.getTitleElement(), -1); 1876 } 1877 if (element.hasStatusElement()) { 1878 composeEnum(t, "CanonicalResource", "status", element.getStatusElement(), -1); 1879 } 1880 if (element.hasExperimentalElement()) { 1881 composeBoolean(t, "CanonicalResource", "experimental", element.getExperimentalElement(), -1); 1882 } 1883 if (element.hasDateElement()) { 1884 composeDateTime(t, "CanonicalResource", "date", element.getDateElement(), -1); 1885 } 1886 if (element.hasPublisherElement()) { 1887 composeString(t, "CanonicalResource", "publisher", element.getPublisherElement(), -1); 1888 } 1889 for (int i = 0; i < element.getContact().size(); i++) { 1890 composeContactDetail(t, "CanonicalResource", "contact", element.getContact().get(i), i); 1891 } 1892 if (element.hasDescriptionElement()) { 1893 composeMarkdown(t, "CanonicalResource", "description", element.getDescriptionElement(), -1); 1894 } 1895 for (int i = 0; i < element.getUseContext().size(); i++) { 1896 composeUsageContext(t, "CanonicalResource", "useContext", element.getUseContext().get(i), i); 1897 } 1898 for (int i = 0; i < element.getJurisdiction().size(); i++) { 1899 composeCodeableConcept(t, "CanonicalResource", "jurisdiction", element.getJurisdiction().get(i), i); 1900 } 1901 if (element.hasPurposeElement()) { 1902 composeMarkdown(t, "CanonicalResource", "purpose", element.getPurposeElement(), -1); 1903 } 1904 if (element.hasCopyrightElement()) { 1905 composeMarkdown(t, "CanonicalResource", "copyright", element.getCopyrightElement(), -1); 1906 } 1907 if (element.hasCopyrightLabelElement()) { 1908 composeString(t, "CanonicalResource", "copyrightLabel", element.getCopyrightLabelElement(), -1); 1909 } 1910 } 1911 1912 protected void composeDomainResource(Complex t, String parentType, String name, DomainResource element, int index) { 1913 composeResource(t, parentType, name, element, index); 1914 if (element.hasText()) { 1915 composeNarrative(t, "DomainResource", "text", element.getText(), -1); 1916 } 1917 for (int i = 0; i < element.getContained().size(); i++) { 1918 composeResource(t, "DomainResource", "contained", element.getContained().get(i), i); 1919 } 1920 for (int i = 0; i < element.getExtension().size(); i++) { 1921 composeExtension(t, "DomainResource", "extension", element.getExtension().get(i), i); 1922 } 1923 for (int i = 0; i < element.getModifierExtension().size(); i++) { 1924 composeExtension(t, "DomainResource", "modifierExtension", element.getModifierExtension().get(i), i); 1925 } 1926 } 1927 1928 protected void composeMetadataResource(Complex t, String parentType, String name, MetadataResource element, int index) { 1929 composeCanonicalResource(t, parentType, name, element, index); 1930 if (element.hasApprovalDateElement()) { 1931 composeDate(t, "MetadataResource", "approvalDate", element.getApprovalDateElement(), -1); 1932 } 1933 if (element.hasLastReviewDateElement()) { 1934 composeDate(t, "MetadataResource", "lastReviewDate", element.getLastReviewDateElement(), -1); 1935 } 1936 if (element.hasEffectivePeriod()) { 1937 composePeriod(t, "MetadataResource", "effectivePeriod", element.getEffectivePeriod(), -1); 1938 } 1939 for (int i = 0; i < element.getTopic().size(); i++) { 1940 composeCodeableConcept(t, "MetadataResource", "topic", element.getTopic().get(i), i); 1941 } 1942 for (int i = 0; i < element.getAuthor().size(); i++) { 1943 composeContactDetail(t, "MetadataResource", "author", element.getAuthor().get(i), i); 1944 } 1945 for (int i = 0; i < element.getEditor().size(); i++) { 1946 composeContactDetail(t, "MetadataResource", "editor", element.getEditor().get(i), i); 1947 } 1948 for (int i = 0; i < element.getReviewer().size(); i++) { 1949 composeContactDetail(t, "MetadataResource", "reviewer", element.getReviewer().get(i), i); 1950 } 1951 for (int i = 0; i < element.getEndorser().size(); i++) { 1952 composeContactDetail(t, "MetadataResource", "endorser", element.getEndorser().get(i), i); 1953 } 1954 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 1955 composeRelatedArtifact(t, "MetadataResource", "relatedArtifact", element.getRelatedArtifact().get(i), i); 1956 } 1957 } 1958 1959 protected void composeResource(Complex t, String parentType, String name, Resource element, int index) { 1960 composeBase(t, parentType, name, element, index); 1961 if (element.hasIdElement()) { 1962 composeId(t, "Resource", "id", element.getIdElement(), -1); 1963 } 1964 if (element.hasMeta()) { 1965 composeMeta(t, "Resource", "meta", element.getMeta(), -1); 1966 } 1967 if (element.hasImplicitRulesElement()) { 1968 composeUri(t, "Resource", "implicitRules", element.getImplicitRulesElement(), -1); 1969 } 1970 if (element.hasLanguageElement()) { 1971 composeCode(t, "Resource", "language", element.getLanguageElement(), -1); 1972 } 1973 } 1974 1975 protected void composeAccount(Complex parent, String parentType, String name, Account element, int index) { 1976 if (element == null) 1977 return; 1978 Complex t; 1979 if (Utilities.noString(parentType)) 1980 t = parent; 1981 else { 1982 t = parent.predicate("fhir:"+name,index > -1); 1983 } 1984 composeDomainResource(t, "Account", name, element, index); 1985 for (int i = 0; i < element.getIdentifier().size(); i++) { 1986 composeIdentifier(t, "Account", "identifier", element.getIdentifier().get(i), i); 1987 } 1988 if (element.hasStatusElement()) { 1989 composeEnum(t, "Account", "status", element.getStatusElement(), -1); 1990 } 1991 if (element.hasBillingStatus()) { 1992 composeCodeableConcept(t, "Account", "billingStatus", element.getBillingStatus(), -1); 1993 } 1994 if (element.hasType()) { 1995 composeCodeableConcept(t, "Account", "type", element.getType(), -1); 1996 } 1997 if (element.hasNameElement()) { 1998 composeString(t, "Account", "name", element.getNameElement(), -1); 1999 } 2000 for (int i = 0; i < element.getSubject().size(); i++) { 2001 composeReference(t, "Account", "subject", element.getSubject().get(i), i); 2002 } 2003 if (element.hasServicePeriod()) { 2004 composePeriod(t, "Account", "servicePeriod", element.getServicePeriod(), -1); 2005 } 2006 for (int i = 0; i < element.getCoverage().size(); i++) { 2007 composeAccountCoverageComponent(t, "Account", "coverage", element.getCoverage().get(i), i); 2008 } 2009 if (element.hasOwner()) { 2010 composeReference(t, "Account", "owner", element.getOwner(), -1); 2011 } 2012 if (element.hasDescriptionElement()) { 2013 composeMarkdown(t, "Account", "description", element.getDescriptionElement(), -1); 2014 } 2015 for (int i = 0; i < element.getGuarantor().size(); i++) { 2016 composeAccountGuarantorComponent(t, "Account", "guarantor", element.getGuarantor().get(i), i); 2017 } 2018 for (int i = 0; i < element.getDiagnosis().size(); i++) { 2019 composeAccountDiagnosisComponent(t, "Account", "diagnosis", element.getDiagnosis().get(i), i); 2020 } 2021 for (int i = 0; i < element.getProcedure().size(); i++) { 2022 composeAccountProcedureComponent(t, "Account", "procedure", element.getProcedure().get(i), i); 2023 } 2024 for (int i = 0; i < element.getRelatedAccount().size(); i++) { 2025 composeAccountRelatedAccountComponent(t, "Account", "relatedAccount", element.getRelatedAccount().get(i), i); 2026 } 2027 if (element.hasCurrency()) { 2028 composeCodeableConcept(t, "Account", "currency", element.getCurrency(), -1); 2029 } 2030 for (int i = 0; i < element.getBalance().size(); i++) { 2031 composeAccountBalanceComponent(t, "Account", "balance", element.getBalance().get(i), i); 2032 } 2033 if (element.hasCalculatedAtElement()) { 2034 composeInstant(t, "Account", "calculatedAt", element.getCalculatedAtElement(), -1); 2035 } 2036 } 2037 2038 protected void composeAccountCoverageComponent(Complex parent, String parentType, String name, Account.CoverageComponent element, int index) { 2039 if (element == null) 2040 return; 2041 Complex t; 2042 if (Utilities.noString(parentType)) 2043 t = parent; 2044 else { 2045 t = parent.predicate("fhir:"+name,index > -1); 2046 } 2047 composeBackboneElement(t, "coverage", name, element, index); 2048 if (element.hasCoverage()) { 2049 composeReference(t, "CoverageComponent", "coverage", element.getCoverage(), -1); 2050 } 2051 if (element.hasPriorityElement()) { 2052 composePositiveInt(t, "CoverageComponent", "priority", element.getPriorityElement(), -1); 2053 } 2054 } 2055 2056 protected void composeAccountGuarantorComponent(Complex parent, String parentType, String name, Account.GuarantorComponent element, int index) { 2057 if (element == null) 2058 return; 2059 Complex t; 2060 if (Utilities.noString(parentType)) 2061 t = parent; 2062 else { 2063 t = parent.predicate("fhir:"+name,index > -1); 2064 } 2065 composeBackboneElement(t, "guarantor", name, element, index); 2066 if (element.hasParty()) { 2067 composeReference(t, "GuarantorComponent", "party", element.getParty(), -1); 2068 } 2069 if (element.hasOnHoldElement()) { 2070 composeBoolean(t, "GuarantorComponent", "onHold", element.getOnHoldElement(), -1); 2071 } 2072 if (element.hasPeriod()) { 2073 composePeriod(t, "GuarantorComponent", "period", element.getPeriod(), -1); 2074 } 2075 } 2076 2077 protected void composeAccountDiagnosisComponent(Complex parent, String parentType, String name, Account.AccountDiagnosisComponent element, int index) { 2078 if (element == null) 2079 return; 2080 Complex t; 2081 if (Utilities.noString(parentType)) 2082 t = parent; 2083 else { 2084 t = parent.predicate("fhir:"+name,index > -1); 2085 } 2086 composeBackboneElement(t, "diagnosis", name, element, index); 2087 if (element.hasSequenceElement()) { 2088 composePositiveInt(t, "AccountDiagnosisComponent", "sequence", element.getSequenceElement(), -1); 2089 } 2090 if (element.hasCondition()) { 2091 composeCodeableReference(t, "AccountDiagnosisComponent", "condition", element.getCondition(), -1); 2092 } 2093 if (element.hasDateOfDiagnosisElement()) { 2094 composeDateTime(t, "AccountDiagnosisComponent", "dateOfDiagnosis", element.getDateOfDiagnosisElement(), -1); 2095 } 2096 for (int i = 0; i < element.getType().size(); i++) { 2097 composeCodeableConcept(t, "AccountDiagnosisComponent", "type", element.getType().get(i), i); 2098 } 2099 if (element.hasOnAdmissionElement()) { 2100 composeBoolean(t, "AccountDiagnosisComponent", "onAdmission", element.getOnAdmissionElement(), -1); 2101 } 2102 for (int i = 0; i < element.getPackageCode().size(); i++) { 2103 composeCodeableConcept(t, "AccountDiagnosisComponent", "packageCode", element.getPackageCode().get(i), i); 2104 } 2105 } 2106 2107 protected void composeAccountProcedureComponent(Complex parent, String parentType, String name, Account.AccountProcedureComponent element, int index) { 2108 if (element == null) 2109 return; 2110 Complex t; 2111 if (Utilities.noString(parentType)) 2112 t = parent; 2113 else { 2114 t = parent.predicate("fhir:"+name,index > -1); 2115 } 2116 composeBackboneElement(t, "procedure", name, element, index); 2117 if (element.hasSequenceElement()) { 2118 composePositiveInt(t, "AccountProcedureComponent", "sequence", element.getSequenceElement(), -1); 2119 } 2120 if (element.hasCode()) { 2121 composeCodeableReference(t, "AccountProcedureComponent", "code", element.getCode(), -1); 2122 } 2123 if (element.hasDateOfServiceElement()) { 2124 composeDateTime(t, "AccountProcedureComponent", "dateOfService", element.getDateOfServiceElement(), -1); 2125 } 2126 for (int i = 0; i < element.getType().size(); i++) { 2127 composeCodeableConcept(t, "AccountProcedureComponent", "type", element.getType().get(i), i); 2128 } 2129 for (int i = 0; i < element.getPackageCode().size(); i++) { 2130 composeCodeableConcept(t, "AccountProcedureComponent", "packageCode", element.getPackageCode().get(i), i); 2131 } 2132 for (int i = 0; i < element.getDevice().size(); i++) { 2133 composeReference(t, "AccountProcedureComponent", "device", element.getDevice().get(i), i); 2134 } 2135 } 2136 2137 protected void composeAccountRelatedAccountComponent(Complex parent, String parentType, String name, Account.AccountRelatedAccountComponent element, int index) { 2138 if (element == null) 2139 return; 2140 Complex t; 2141 if (Utilities.noString(parentType)) 2142 t = parent; 2143 else { 2144 t = parent.predicate("fhir:"+name,index > -1); 2145 } 2146 composeBackboneElement(t, "relatedAccount", name, element, index); 2147 if (element.hasRelationship()) { 2148 composeCodeableConcept(t, "AccountRelatedAccountComponent", "relationship", element.getRelationship(), -1); 2149 } 2150 if (element.hasAccount()) { 2151 composeReference(t, "AccountRelatedAccountComponent", "account", element.getAccount(), -1); 2152 } 2153 } 2154 2155 protected void composeAccountBalanceComponent(Complex parent, String parentType, String name, Account.AccountBalanceComponent element, int index) { 2156 if (element == null) 2157 return; 2158 Complex t; 2159 if (Utilities.noString(parentType)) 2160 t = parent; 2161 else { 2162 t = parent.predicate("fhir:"+name,index > -1); 2163 } 2164 composeBackboneElement(t, "balance", name, element, index); 2165 if (element.hasAggregate()) { 2166 composeCodeableConcept(t, "AccountBalanceComponent", "aggregate", element.getAggregate(), -1); 2167 } 2168 if (element.hasTerm()) { 2169 composeCodeableConcept(t, "AccountBalanceComponent", "term", element.getTerm(), -1); 2170 } 2171 if (element.hasEstimateElement()) { 2172 composeBoolean(t, "AccountBalanceComponent", "estimate", element.getEstimateElement(), -1); 2173 } 2174 if (element.hasAmount()) { 2175 composeMoney(t, "AccountBalanceComponent", "amount", element.getAmount(), -1); 2176 } 2177 } 2178 2179 protected void composeActivityDefinition(Complex parent, String parentType, String name, ActivityDefinition element, int index) { 2180 if (element == null) 2181 return; 2182 Complex t; 2183 if (Utilities.noString(parentType)) 2184 t = parent; 2185 else { 2186 t = parent.predicate("fhir:"+name,index > -1); 2187 } 2188 composeMetadataResource(t, "ActivityDefinition", name, element, index); 2189 if (element.hasUrlElement()) { 2190 composeUri(t, "ActivityDefinition", "url", element.getUrlElement(), -1); 2191 } 2192 for (int i = 0; i < element.getIdentifier().size(); i++) { 2193 composeIdentifier(t, "ActivityDefinition", "identifier", element.getIdentifier().get(i), i); 2194 } 2195 if (element.hasVersionElement()) { 2196 composeString(t, "ActivityDefinition", "version", element.getVersionElement(), -1); 2197 } 2198 if (element.hasVersionAlgorithm()) { 2199 composeType(t, "ActivityDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 2200 } 2201 if (element.hasNameElement()) { 2202 composeString(t, "ActivityDefinition", "name", element.getNameElement(), -1); 2203 } 2204 if (element.hasTitleElement()) { 2205 composeString(t, "ActivityDefinition", "title", element.getTitleElement(), -1); 2206 } 2207 if (element.hasSubtitleElement()) { 2208 composeString(t, "ActivityDefinition", "subtitle", element.getSubtitleElement(), -1); 2209 } 2210 if (element.hasStatusElement()) { 2211 composeEnum(t, "ActivityDefinition", "status", element.getStatusElement(), -1); 2212 } 2213 if (element.hasExperimentalElement()) { 2214 composeBoolean(t, "ActivityDefinition", "experimental", element.getExperimentalElement(), -1); 2215 } 2216 if (element.hasSubject()) { 2217 composeType(t, "ActivityDefinition", "subject", element.getSubject(), -1); 2218 } 2219 if (element.hasDateElement()) { 2220 composeDateTime(t, "ActivityDefinition", "date", element.getDateElement(), -1); 2221 } 2222 if (element.hasPublisherElement()) { 2223 composeString(t, "ActivityDefinition", "publisher", element.getPublisherElement(), -1); 2224 } 2225 for (int i = 0; i < element.getContact().size(); i++) { 2226 composeContactDetail(t, "ActivityDefinition", "contact", element.getContact().get(i), i); 2227 } 2228 if (element.hasDescriptionElement()) { 2229 composeMarkdown(t, "ActivityDefinition", "description", element.getDescriptionElement(), -1); 2230 } 2231 for (int i = 0; i < element.getUseContext().size(); i++) { 2232 composeUsageContext(t, "ActivityDefinition", "useContext", element.getUseContext().get(i), i); 2233 } 2234 for (int i = 0; i < element.getJurisdiction().size(); i++) { 2235 composeCodeableConcept(t, "ActivityDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 2236 } 2237 if (element.hasPurposeElement()) { 2238 composeMarkdown(t, "ActivityDefinition", "purpose", element.getPurposeElement(), -1); 2239 } 2240 if (element.hasUsageElement()) { 2241 composeMarkdown(t, "ActivityDefinition", "usage", element.getUsageElement(), -1); 2242 } 2243 if (element.hasCopyrightElement()) { 2244 composeMarkdown(t, "ActivityDefinition", "copyright", element.getCopyrightElement(), -1); 2245 } 2246 if (element.hasCopyrightLabelElement()) { 2247 composeString(t, "ActivityDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 2248 } 2249 if (element.hasApprovalDateElement()) { 2250 composeDate(t, "ActivityDefinition", "approvalDate", element.getApprovalDateElement(), -1); 2251 } 2252 if (element.hasLastReviewDateElement()) { 2253 composeDate(t, "ActivityDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 2254 } 2255 if (element.hasEffectivePeriod()) { 2256 composePeriod(t, "ActivityDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 2257 } 2258 for (int i = 0; i < element.getTopic().size(); i++) { 2259 composeCodeableConcept(t, "ActivityDefinition", "topic", element.getTopic().get(i), i); 2260 } 2261 for (int i = 0; i < element.getAuthor().size(); i++) { 2262 composeContactDetail(t, "ActivityDefinition", "author", element.getAuthor().get(i), i); 2263 } 2264 for (int i = 0; i < element.getEditor().size(); i++) { 2265 composeContactDetail(t, "ActivityDefinition", "editor", element.getEditor().get(i), i); 2266 } 2267 for (int i = 0; i < element.getReviewer().size(); i++) { 2268 composeContactDetail(t, "ActivityDefinition", "reviewer", element.getReviewer().get(i), i); 2269 } 2270 for (int i = 0; i < element.getEndorser().size(); i++) { 2271 composeContactDetail(t, "ActivityDefinition", "endorser", element.getEndorser().get(i), i); 2272 } 2273 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 2274 composeRelatedArtifact(t, "ActivityDefinition", "relatedArtifact", element.getRelatedArtifact().get(i), i); 2275 } 2276 for (int i = 0; i < element.getLibrary().size(); i++) { 2277 composeCanonical(t, "ActivityDefinition", "library", element.getLibrary().get(i), i); 2278 } 2279 if (element.hasKindElement()) { 2280 composeEnum(t, "ActivityDefinition", "kind", element.getKindElement(), -1); 2281 } 2282 if (element.hasProfileElement()) { 2283 composeCanonical(t, "ActivityDefinition", "profile", element.getProfileElement(), -1); 2284 } 2285 if (element.hasCode()) { 2286 composeCodeableConcept(t, "ActivityDefinition", "code", element.getCode(), -1); 2287 } 2288 if (element.hasIntentElement()) { 2289 composeEnum(t, "ActivityDefinition", "intent", element.getIntentElement(), -1); 2290 } 2291 if (element.hasPriorityElement()) { 2292 composeEnum(t, "ActivityDefinition", "priority", element.getPriorityElement(), -1); 2293 } 2294 if (element.hasDoNotPerformElement()) { 2295 composeBoolean(t, "ActivityDefinition", "doNotPerform", element.getDoNotPerformElement(), -1); 2296 } 2297 if (element.hasTiming()) { 2298 composeType(t, "ActivityDefinition", "timing", element.getTiming(), -1); 2299 } 2300 if (element.hasAsNeeded()) { 2301 composeType(t, "ActivityDefinition", "asNeeded", element.getAsNeeded(), -1); 2302 } 2303 if (element.hasLocation()) { 2304 composeCodeableReference(t, "ActivityDefinition", "location", element.getLocation(), -1); 2305 } 2306 for (int i = 0; i < element.getParticipant().size(); i++) { 2307 composeActivityDefinitionParticipantComponent(t, "ActivityDefinition", "participant", element.getParticipant().get(i), i); 2308 } 2309 if (element.hasProduct()) { 2310 composeType(t, "ActivityDefinition", "product", element.getProduct(), -1); 2311 } 2312 if (element.hasQuantity()) { 2313 composeQuantity(t, "ActivityDefinition", "quantity", element.getQuantity(), -1); 2314 } 2315 for (int i = 0; i < element.getDosage().size(); i++) { 2316 composeDosage(t, "ActivityDefinition", "dosage", element.getDosage().get(i), i); 2317 } 2318 for (int i = 0; i < element.getBodySite().size(); i++) { 2319 composeCodeableConcept(t, "ActivityDefinition", "bodySite", element.getBodySite().get(i), i); 2320 } 2321 for (int i = 0; i < element.getSpecimenRequirement().size(); i++) { 2322 composeCanonical(t, "ActivityDefinition", "specimenRequirement", element.getSpecimenRequirement().get(i), i); 2323 } 2324 for (int i = 0; i < element.getObservationRequirement().size(); i++) { 2325 composeCanonical(t, "ActivityDefinition", "observationRequirement", element.getObservationRequirement().get(i), i); 2326 } 2327 for (int i = 0; i < element.getObservationResultRequirement().size(); i++) { 2328 composeCanonical(t, "ActivityDefinition", "observationResultRequirement", element.getObservationResultRequirement().get(i), i); 2329 } 2330 if (element.hasTransformElement()) { 2331 composeCanonical(t, "ActivityDefinition", "transform", element.getTransformElement(), -1); 2332 } 2333 for (int i = 0; i < element.getDynamicValue().size(); i++) { 2334 composeActivityDefinitionDynamicValueComponent(t, "ActivityDefinition", "dynamicValue", element.getDynamicValue().get(i), i); 2335 } 2336 } 2337 2338 protected void composeActivityDefinitionParticipantComponent(Complex parent, String parentType, String name, ActivityDefinition.ActivityDefinitionParticipantComponent element, int index) { 2339 if (element == null) 2340 return; 2341 Complex t; 2342 if (Utilities.noString(parentType)) 2343 t = parent; 2344 else { 2345 t = parent.predicate("fhir:"+name,index > -1); 2346 } 2347 composeBackboneElement(t, "participant", name, element, index); 2348 if (element.hasTypeElement()) { 2349 composeEnum(t, "ActivityDefinitionParticipantComponent", "type", element.getTypeElement(), -1); 2350 } 2351 if (element.hasTypeCanonicalElement()) { 2352 composeCanonical(t, "ActivityDefinitionParticipantComponent", "typeCanonical", element.getTypeCanonicalElement(), -1); 2353 } 2354 if (element.hasTypeReference()) { 2355 composeReference(t, "ActivityDefinitionParticipantComponent", "typeReference", element.getTypeReference(), -1); 2356 } 2357 if (element.hasRole()) { 2358 composeCodeableConcept(t, "ActivityDefinitionParticipantComponent", "role", element.getRole(), -1); 2359 } 2360 if (element.hasFunction()) { 2361 composeCodeableConcept(t, "ActivityDefinitionParticipantComponent", "function", element.getFunction(), -1); 2362 } 2363 } 2364 2365 protected void composeActivityDefinitionDynamicValueComponent(Complex parent, String parentType, String name, ActivityDefinition.ActivityDefinitionDynamicValueComponent element, int index) { 2366 if (element == null) 2367 return; 2368 Complex t; 2369 if (Utilities.noString(parentType)) 2370 t = parent; 2371 else { 2372 t = parent.predicate("fhir:"+name,index > -1); 2373 } 2374 composeBackboneElement(t, "dynamicValue", name, element, index); 2375 if (element.hasPathElement()) { 2376 composeString(t, "ActivityDefinitionDynamicValueComponent", "path", element.getPathElement(), -1); 2377 } 2378 if (element.hasExpression()) { 2379 composeExpression(t, "ActivityDefinitionDynamicValueComponent", "expression", element.getExpression(), -1); 2380 } 2381 } 2382 2383 protected void composeActorDefinition(Complex parent, String parentType, String name, ActorDefinition element, int index) { 2384 if (element == null) 2385 return; 2386 Complex t; 2387 if (Utilities.noString(parentType)) 2388 t = parent; 2389 else { 2390 t = parent.predicate("fhir:"+name,index > -1); 2391 } 2392 composeCanonicalResource(t, "ActorDefinition", name, element, index); 2393 if (element.hasUrlElement()) { 2394 composeUri(t, "ActorDefinition", "url", element.getUrlElement(), -1); 2395 } 2396 for (int i = 0; i < element.getIdentifier().size(); i++) { 2397 composeIdentifier(t, "ActorDefinition", "identifier", element.getIdentifier().get(i), i); 2398 } 2399 if (element.hasVersionElement()) { 2400 composeString(t, "ActorDefinition", "version", element.getVersionElement(), -1); 2401 } 2402 if (element.hasVersionAlgorithm()) { 2403 composeType(t, "ActorDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 2404 } 2405 if (element.hasNameElement()) { 2406 composeString(t, "ActorDefinition", "name", element.getNameElement(), -1); 2407 } 2408 if (element.hasTitleElement()) { 2409 composeString(t, "ActorDefinition", "title", element.getTitleElement(), -1); 2410 } 2411 if (element.hasStatusElement()) { 2412 composeEnum(t, "ActorDefinition", "status", element.getStatusElement(), -1); 2413 } 2414 if (element.hasExperimentalElement()) { 2415 composeBoolean(t, "ActorDefinition", "experimental", element.getExperimentalElement(), -1); 2416 } 2417 if (element.hasDateElement()) { 2418 composeDateTime(t, "ActorDefinition", "date", element.getDateElement(), -1); 2419 } 2420 if (element.hasPublisherElement()) { 2421 composeString(t, "ActorDefinition", "publisher", element.getPublisherElement(), -1); 2422 } 2423 for (int i = 0; i < element.getContact().size(); i++) { 2424 composeContactDetail(t, "ActorDefinition", "contact", element.getContact().get(i), i); 2425 } 2426 if (element.hasDescriptionElement()) { 2427 composeMarkdown(t, "ActorDefinition", "description", element.getDescriptionElement(), -1); 2428 } 2429 for (int i = 0; i < element.getUseContext().size(); i++) { 2430 composeUsageContext(t, "ActorDefinition", "useContext", element.getUseContext().get(i), i); 2431 } 2432 for (int i = 0; i < element.getJurisdiction().size(); i++) { 2433 composeCodeableConcept(t, "ActorDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 2434 } 2435 if (element.hasPurposeElement()) { 2436 composeMarkdown(t, "ActorDefinition", "purpose", element.getPurposeElement(), -1); 2437 } 2438 if (element.hasCopyrightElement()) { 2439 composeMarkdown(t, "ActorDefinition", "copyright", element.getCopyrightElement(), -1); 2440 } 2441 if (element.hasCopyrightLabelElement()) { 2442 composeString(t, "ActorDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 2443 } 2444 if (element.hasTypeElement()) { 2445 composeEnum(t, "ActorDefinition", "type", element.getTypeElement(), -1); 2446 } 2447 if (element.hasDocumentationElement()) { 2448 composeMarkdown(t, "ActorDefinition", "documentation", element.getDocumentationElement(), -1); 2449 } 2450 for (int i = 0; i < element.getReference().size(); i++) { 2451 composeUrl(t, "ActorDefinition", "reference", element.getReference().get(i), i); 2452 } 2453 if (element.hasCapabilitiesElement()) { 2454 composeCanonical(t, "ActorDefinition", "capabilities", element.getCapabilitiesElement(), -1); 2455 } 2456 for (int i = 0; i < element.getDerivedFrom().size(); i++) { 2457 composeCanonical(t, "ActorDefinition", "derivedFrom", element.getDerivedFrom().get(i), i); 2458 } 2459 } 2460 2461 protected void composeAdministrableProductDefinition(Complex parent, String parentType, String name, AdministrableProductDefinition element, int index) { 2462 if (element == null) 2463 return; 2464 Complex t; 2465 if (Utilities.noString(parentType)) 2466 t = parent; 2467 else { 2468 t = parent.predicate("fhir:"+name,index > -1); 2469 } 2470 composeDomainResource(t, "AdministrableProductDefinition", name, element, index); 2471 for (int i = 0; i < element.getIdentifier().size(); i++) { 2472 composeIdentifier(t, "AdministrableProductDefinition", "identifier", element.getIdentifier().get(i), i); 2473 } 2474 if (element.hasStatusElement()) { 2475 composeEnum(t, "AdministrableProductDefinition", "status", element.getStatusElement(), -1); 2476 } 2477 for (int i = 0; i < element.getFormOf().size(); i++) { 2478 composeReference(t, "AdministrableProductDefinition", "formOf", element.getFormOf().get(i), i); 2479 } 2480 if (element.hasAdministrableDoseForm()) { 2481 composeCodeableConcept(t, "AdministrableProductDefinition", "administrableDoseForm", element.getAdministrableDoseForm(), -1); 2482 } 2483 if (element.hasUnitOfPresentation()) { 2484 composeCodeableConcept(t, "AdministrableProductDefinition", "unitOfPresentation", element.getUnitOfPresentation(), -1); 2485 } 2486 for (int i = 0; i < element.getProducedFrom().size(); i++) { 2487 composeReference(t, "AdministrableProductDefinition", "producedFrom", element.getProducedFrom().get(i), i); 2488 } 2489 for (int i = 0; i < element.getIngredient().size(); i++) { 2490 composeCodeableConcept(t, "AdministrableProductDefinition", "ingredient", element.getIngredient().get(i), i); 2491 } 2492 if (element.hasDevice()) { 2493 composeReference(t, "AdministrableProductDefinition", "device", element.getDevice(), -1); 2494 } 2495 if (element.hasDescriptionElement()) { 2496 composeMarkdown(t, "AdministrableProductDefinition", "description", element.getDescriptionElement(), -1); 2497 } 2498 for (int i = 0; i < element.getProperty().size(); i++) { 2499 composeAdministrableProductDefinitionPropertyComponent(t, "AdministrableProductDefinition", "property", element.getProperty().get(i), i); 2500 } 2501 for (int i = 0; i < element.getRouteOfAdministration().size(); i++) { 2502 composeAdministrableProductDefinitionRouteOfAdministrationComponent(t, "AdministrableProductDefinition", "routeOfAdministration", element.getRouteOfAdministration().get(i), i); 2503 } 2504 } 2505 2506 protected void composeAdministrableProductDefinitionPropertyComponent(Complex parent, String parentType, String name, AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent element, int index) { 2507 if (element == null) 2508 return; 2509 Complex t; 2510 if (Utilities.noString(parentType)) 2511 t = parent; 2512 else { 2513 t = parent.predicate("fhir:"+name,index > -1); 2514 } 2515 composeBackboneElement(t, "property", name, element, index); 2516 if (element.hasType()) { 2517 composeCodeableConcept(t, "AdministrableProductDefinitionPropertyComponent", "type", element.getType(), -1); 2518 } 2519 if (element.hasValue()) { 2520 composeType(t, "AdministrableProductDefinitionPropertyComponent", "value", element.getValue(), -1); 2521 } 2522 if (element.hasStatus()) { 2523 composeCodeableConcept(t, "AdministrableProductDefinitionPropertyComponent", "status", element.getStatus(), -1); 2524 } 2525 } 2526 2527 protected void composeAdministrableProductDefinitionRouteOfAdministrationComponent(Complex parent, String parentType, String name, AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationComponent element, int index) { 2528 if (element == null) 2529 return; 2530 Complex t; 2531 if (Utilities.noString(parentType)) 2532 t = parent; 2533 else { 2534 t = parent.predicate("fhir:"+name,index > -1); 2535 } 2536 composeBackboneElement(t, "routeOfAdministration", name, element, index); 2537 if (element.hasCode()) { 2538 composeCodeableConcept(t, "AdministrableProductDefinitionRouteOfAdministrationComponent", "code", element.getCode(), -1); 2539 } 2540 if (element.hasFirstDose()) { 2541 composeQuantity(t, "AdministrableProductDefinitionRouteOfAdministrationComponent", "firstDose", element.getFirstDose(), -1); 2542 } 2543 if (element.hasMaxSingleDose()) { 2544 composeQuantity(t, "AdministrableProductDefinitionRouteOfAdministrationComponent", "maxSingleDose", element.getMaxSingleDose(), -1); 2545 } 2546 if (element.hasMaxDosePerDay()) { 2547 composeQuantity(t, "AdministrableProductDefinitionRouteOfAdministrationComponent", "maxDosePerDay", element.getMaxDosePerDay(), -1); 2548 } 2549 if (element.hasMaxDosePerTreatmentPeriod()) { 2550 composeRatio(t, "AdministrableProductDefinitionRouteOfAdministrationComponent", "maxDosePerTreatmentPeriod", element.getMaxDosePerTreatmentPeriod(), -1); 2551 } 2552 if (element.hasMaxTreatmentPeriod()) { 2553 composeDuration(t, "AdministrableProductDefinitionRouteOfAdministrationComponent", "maxTreatmentPeriod", element.getMaxTreatmentPeriod(), -1); 2554 } 2555 for (int i = 0; i < element.getTargetSpecies().size(); i++) { 2556 composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent(t, "AdministrableProductDefinitionRouteOfAdministrationComponent", "targetSpecies", element.getTargetSpecies().get(i), i); 2557 } 2558 } 2559 2560 protected void composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent(Complex parent, String parentType, String name, AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent element, int index) { 2561 if (element == null) 2562 return; 2563 Complex t; 2564 if (Utilities.noString(parentType)) 2565 t = parent; 2566 else { 2567 t = parent.predicate("fhir:"+name,index > -1); 2568 } 2569 composeBackboneElement(t, "targetSpecies", name, element, index); 2570 if (element.hasCode()) { 2571 composeCodeableConcept(t, "AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent", "code", element.getCode(), -1); 2572 } 2573 for (int i = 0; i < element.getWithdrawalPeriod().size(); i++) { 2574 composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent(t, "AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesComponent", "withdrawalPeriod", element.getWithdrawalPeriod().get(i), i); 2575 } 2576 } 2577 2578 protected void composeAdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent(Complex parent, String parentType, String name, AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent element, int index) { 2579 if (element == null) 2580 return; 2581 Complex t; 2582 if (Utilities.noString(parentType)) 2583 t = parent; 2584 else { 2585 t = parent.predicate("fhir:"+name,index > -1); 2586 } 2587 composeBackboneElement(t, "withdrawalPeriod", name, element, index); 2588 if (element.hasTissue()) { 2589 composeCodeableConcept(t, "AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent", "tissue", element.getTissue(), -1); 2590 } 2591 if (element.hasValue()) { 2592 composeQuantity(t, "AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent", "value", element.getValue(), -1); 2593 } 2594 if (element.hasSupportingInformationElement()) { 2595 composeString(t, "AdministrableProductDefinitionRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent", "supportingInformation", element.getSupportingInformationElement(), -1); 2596 } 2597 } 2598 2599 protected void composeAdverseEvent(Complex parent, String parentType, String name, AdverseEvent element, int index) { 2600 if (element == null) 2601 return; 2602 Complex t; 2603 if (Utilities.noString(parentType)) 2604 t = parent; 2605 else { 2606 t = parent.predicate("fhir:"+name,index > -1); 2607 } 2608 composeDomainResource(t, "AdverseEvent", name, element, index); 2609 for (int i = 0; i < element.getIdentifier().size(); i++) { 2610 composeIdentifier(t, "AdverseEvent", "identifier", element.getIdentifier().get(i), i); 2611 } 2612 if (element.hasStatusElement()) { 2613 composeEnum(t, "AdverseEvent", "status", element.getStatusElement(), -1); 2614 } 2615 if (element.hasActualityElement()) { 2616 composeEnum(t, "AdverseEvent", "actuality", element.getActualityElement(), -1); 2617 } 2618 for (int i = 0; i < element.getCategory().size(); i++) { 2619 composeCodeableConcept(t, "AdverseEvent", "category", element.getCategory().get(i), i); 2620 } 2621 if (element.hasCode()) { 2622 composeCodeableConcept(t, "AdverseEvent", "code", element.getCode(), -1); 2623 } 2624 if (element.hasSubject()) { 2625 composeReference(t, "AdverseEvent", "subject", element.getSubject(), -1); 2626 } 2627 if (element.hasEncounter()) { 2628 composeReference(t, "AdverseEvent", "encounter", element.getEncounter(), -1); 2629 } 2630 if (element.hasOccurrence()) { 2631 composeType(t, "AdverseEvent", "occurrence", element.getOccurrence(), -1); 2632 } 2633 if (element.hasDetectedElement()) { 2634 composeDateTime(t, "AdverseEvent", "detected", element.getDetectedElement(), -1); 2635 } 2636 if (element.hasRecordedDateElement()) { 2637 composeDateTime(t, "AdverseEvent", "recordedDate", element.getRecordedDateElement(), -1); 2638 } 2639 for (int i = 0; i < element.getResultingEffect().size(); i++) { 2640 composeReference(t, "AdverseEvent", "resultingEffect", element.getResultingEffect().get(i), i); 2641 } 2642 if (element.hasLocation()) { 2643 composeReference(t, "AdverseEvent", "location", element.getLocation(), -1); 2644 } 2645 if (element.hasSeriousness()) { 2646 composeCodeableConcept(t, "AdverseEvent", "seriousness", element.getSeriousness(), -1); 2647 } 2648 for (int i = 0; i < element.getOutcome().size(); i++) { 2649 composeCodeableConcept(t, "AdverseEvent", "outcome", element.getOutcome().get(i), i); 2650 } 2651 if (element.hasRecorder()) { 2652 composeReference(t, "AdverseEvent", "recorder", element.getRecorder(), -1); 2653 } 2654 for (int i = 0; i < element.getParticipant().size(); i++) { 2655 composeAdverseEventParticipantComponent(t, "AdverseEvent", "participant", element.getParticipant().get(i), i); 2656 } 2657 for (int i = 0; i < element.getStudy().size(); i++) { 2658 composeReference(t, "AdverseEvent", "study", element.getStudy().get(i), i); 2659 } 2660 if (element.hasExpectedInResearchStudyElement()) { 2661 composeBoolean(t, "AdverseEvent", "expectedInResearchStudy", element.getExpectedInResearchStudyElement(), -1); 2662 } 2663 for (int i = 0; i < element.getSuspectEntity().size(); i++) { 2664 composeAdverseEventSuspectEntityComponent(t, "AdverseEvent", "suspectEntity", element.getSuspectEntity().get(i), i); 2665 } 2666 for (int i = 0; i < element.getContributingFactor().size(); i++) { 2667 composeAdverseEventContributingFactorComponent(t, "AdverseEvent", "contributingFactor", element.getContributingFactor().get(i), i); 2668 } 2669 for (int i = 0; i < element.getPreventiveAction().size(); i++) { 2670 composeAdverseEventPreventiveActionComponent(t, "AdverseEvent", "preventiveAction", element.getPreventiveAction().get(i), i); 2671 } 2672 for (int i = 0; i < element.getMitigatingAction().size(); i++) { 2673 composeAdverseEventMitigatingActionComponent(t, "AdverseEvent", "mitigatingAction", element.getMitigatingAction().get(i), i); 2674 } 2675 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 2676 composeAdverseEventSupportingInfoComponent(t, "AdverseEvent", "supportingInfo", element.getSupportingInfo().get(i), i); 2677 } 2678 for (int i = 0; i < element.getNote().size(); i++) { 2679 composeAnnotation(t, "AdverseEvent", "note", element.getNote().get(i), i); 2680 } 2681 } 2682 2683 protected void composeAdverseEventParticipantComponent(Complex parent, String parentType, String name, AdverseEvent.AdverseEventParticipantComponent element, int index) { 2684 if (element == null) 2685 return; 2686 Complex t; 2687 if (Utilities.noString(parentType)) 2688 t = parent; 2689 else { 2690 t = parent.predicate("fhir:"+name,index > -1); 2691 } 2692 composeBackboneElement(t, "participant", name, element, index); 2693 if (element.hasFunction()) { 2694 composeCodeableConcept(t, "AdverseEventParticipantComponent", "function", element.getFunction(), -1); 2695 } 2696 if (element.hasActor()) { 2697 composeReference(t, "AdverseEventParticipantComponent", "actor", element.getActor(), -1); 2698 } 2699 } 2700 2701 protected void composeAdverseEventSuspectEntityComponent(Complex parent, String parentType, String name, AdverseEvent.AdverseEventSuspectEntityComponent element, int index) { 2702 if (element == null) 2703 return; 2704 Complex t; 2705 if (Utilities.noString(parentType)) 2706 t = parent; 2707 else { 2708 t = parent.predicate("fhir:"+name,index > -1); 2709 } 2710 composeBackboneElement(t, "suspectEntity", name, element, index); 2711 if (element.hasInstance()) { 2712 composeType(t, "AdverseEventSuspectEntityComponent", "instance", element.getInstance(), -1); 2713 } 2714 if (element.hasCausality()) { 2715 composeAdverseEventSuspectEntityCausalityComponent(t, "AdverseEventSuspectEntityComponent", "causality", element.getCausality(), -1); 2716 } 2717 } 2718 2719 protected void composeAdverseEventSuspectEntityCausalityComponent(Complex parent, String parentType, String name, AdverseEvent.AdverseEventSuspectEntityCausalityComponent element, int index) { 2720 if (element == null) 2721 return; 2722 Complex t; 2723 if (Utilities.noString(parentType)) 2724 t = parent; 2725 else { 2726 t = parent.predicate("fhir:"+name,index > -1); 2727 } 2728 composeBackboneElement(t, "causality", name, element, index); 2729 if (element.hasAssessmentMethod()) { 2730 composeCodeableConcept(t, "AdverseEventSuspectEntityCausalityComponent", "assessmentMethod", element.getAssessmentMethod(), -1); 2731 } 2732 if (element.hasEntityRelatedness()) { 2733 composeCodeableConcept(t, "AdverseEventSuspectEntityCausalityComponent", "entityRelatedness", element.getEntityRelatedness(), -1); 2734 } 2735 if (element.hasAuthor()) { 2736 composeReference(t, "AdverseEventSuspectEntityCausalityComponent", "author", element.getAuthor(), -1); 2737 } 2738 } 2739 2740 protected void composeAdverseEventContributingFactorComponent(Complex parent, String parentType, String name, AdverseEvent.AdverseEventContributingFactorComponent element, int index) { 2741 if (element == null) 2742 return; 2743 Complex t; 2744 if (Utilities.noString(parentType)) 2745 t = parent; 2746 else { 2747 t = parent.predicate("fhir:"+name,index > -1); 2748 } 2749 composeBackboneElement(t, "contributingFactor", name, element, index); 2750 if (element.hasItem()) { 2751 composeType(t, "AdverseEventContributingFactorComponent", "item", element.getItem(), -1); 2752 } 2753 } 2754 2755 protected void composeAdverseEventPreventiveActionComponent(Complex parent, String parentType, String name, AdverseEvent.AdverseEventPreventiveActionComponent element, int index) { 2756 if (element == null) 2757 return; 2758 Complex t; 2759 if (Utilities.noString(parentType)) 2760 t = parent; 2761 else { 2762 t = parent.predicate("fhir:"+name,index > -1); 2763 } 2764 composeBackboneElement(t, "preventiveAction", name, element, index); 2765 if (element.hasItem()) { 2766 composeType(t, "AdverseEventPreventiveActionComponent", "item", element.getItem(), -1); 2767 } 2768 } 2769 2770 protected void composeAdverseEventMitigatingActionComponent(Complex parent, String parentType, String name, AdverseEvent.AdverseEventMitigatingActionComponent element, int index) { 2771 if (element == null) 2772 return; 2773 Complex t; 2774 if (Utilities.noString(parentType)) 2775 t = parent; 2776 else { 2777 t = parent.predicate("fhir:"+name,index > -1); 2778 } 2779 composeBackboneElement(t, "mitigatingAction", name, element, index); 2780 if (element.hasItem()) { 2781 composeType(t, "AdverseEventMitigatingActionComponent", "item", element.getItem(), -1); 2782 } 2783 } 2784 2785 protected void composeAdverseEventSupportingInfoComponent(Complex parent, String parentType, String name, AdverseEvent.AdverseEventSupportingInfoComponent element, int index) { 2786 if (element == null) 2787 return; 2788 Complex t; 2789 if (Utilities.noString(parentType)) 2790 t = parent; 2791 else { 2792 t = parent.predicate("fhir:"+name,index > -1); 2793 } 2794 composeBackboneElement(t, "supportingInfo", name, element, index); 2795 if (element.hasItem()) { 2796 composeType(t, "AdverseEventSupportingInfoComponent", "item", element.getItem(), -1); 2797 } 2798 } 2799 2800 protected void composeAllergyIntolerance(Complex parent, String parentType, String name, AllergyIntolerance element, int index) { 2801 if (element == null) 2802 return; 2803 Complex t; 2804 if (Utilities.noString(parentType)) 2805 t = parent; 2806 else { 2807 t = parent.predicate("fhir:"+name,index > -1); 2808 } 2809 composeDomainResource(t, "AllergyIntolerance", name, element, index); 2810 for (int i = 0; i < element.getIdentifier().size(); i++) { 2811 composeIdentifier(t, "AllergyIntolerance", "identifier", element.getIdentifier().get(i), i); 2812 } 2813 if (element.hasClinicalStatus()) { 2814 composeCodeableConcept(t, "AllergyIntolerance", "clinicalStatus", element.getClinicalStatus(), -1); 2815 } 2816 if (element.hasVerificationStatus()) { 2817 composeCodeableConcept(t, "AllergyIntolerance", "verificationStatus", element.getVerificationStatus(), -1); 2818 } 2819 if (element.hasType()) { 2820 composeCodeableConcept(t, "AllergyIntolerance", "type", element.getType(), -1); 2821 } 2822 for (int i = 0; i < element.getCategory().size(); i++) { 2823 composeEnum(t, "AllergyIntolerance", "category", element.getCategory().get(i), i); 2824 } 2825 if (element.hasCriticalityElement()) { 2826 composeEnum(t, "AllergyIntolerance", "criticality", element.getCriticalityElement(), -1); 2827 } 2828 if (element.hasCode()) { 2829 composeCodeableConcept(t, "AllergyIntolerance", "code", element.getCode(), -1); 2830 } 2831 if (element.hasPatient()) { 2832 composeReference(t, "AllergyIntolerance", "patient", element.getPatient(), -1); 2833 } 2834 if (element.hasEncounter()) { 2835 composeReference(t, "AllergyIntolerance", "encounter", element.getEncounter(), -1); 2836 } 2837 if (element.hasOnset()) { 2838 composeType(t, "AllergyIntolerance", "onset", element.getOnset(), -1); 2839 } 2840 if (element.hasRecordedDateElement()) { 2841 composeDateTime(t, "AllergyIntolerance", "recordedDate", element.getRecordedDateElement(), -1); 2842 } 2843 for (int i = 0; i < element.getParticipant().size(); i++) { 2844 composeAllergyIntoleranceParticipantComponent(t, "AllergyIntolerance", "participant", element.getParticipant().get(i), i); 2845 } 2846 if (element.hasLastOccurrenceElement()) { 2847 composeDateTime(t, "AllergyIntolerance", "lastOccurrence", element.getLastOccurrenceElement(), -1); 2848 } 2849 for (int i = 0; i < element.getNote().size(); i++) { 2850 composeAnnotation(t, "AllergyIntolerance", "note", element.getNote().get(i), i); 2851 } 2852 for (int i = 0; i < element.getReaction().size(); i++) { 2853 composeAllergyIntoleranceReactionComponent(t, "AllergyIntolerance", "reaction", element.getReaction().get(i), i); 2854 } 2855 } 2856 2857 protected void composeAllergyIntoleranceParticipantComponent(Complex parent, String parentType, String name, AllergyIntolerance.AllergyIntoleranceParticipantComponent element, int index) { 2858 if (element == null) 2859 return; 2860 Complex t; 2861 if (Utilities.noString(parentType)) 2862 t = parent; 2863 else { 2864 t = parent.predicate("fhir:"+name,index > -1); 2865 } 2866 composeBackboneElement(t, "participant", name, element, index); 2867 if (element.hasFunction()) { 2868 composeCodeableConcept(t, "AllergyIntoleranceParticipantComponent", "function", element.getFunction(), -1); 2869 } 2870 if (element.hasActor()) { 2871 composeReference(t, "AllergyIntoleranceParticipantComponent", "actor", element.getActor(), -1); 2872 } 2873 } 2874 2875 protected void composeAllergyIntoleranceReactionComponent(Complex parent, String parentType, String name, AllergyIntolerance.AllergyIntoleranceReactionComponent element, int index) { 2876 if (element == null) 2877 return; 2878 Complex t; 2879 if (Utilities.noString(parentType)) 2880 t = parent; 2881 else { 2882 t = parent.predicate("fhir:"+name,index > -1); 2883 } 2884 composeBackboneElement(t, "reaction", name, element, index); 2885 if (element.hasSubstance()) { 2886 composeCodeableConcept(t, "AllergyIntoleranceReactionComponent", "substance", element.getSubstance(), -1); 2887 } 2888 for (int i = 0; i < element.getManifestation().size(); i++) { 2889 composeCodeableReference(t, "AllergyIntoleranceReactionComponent", "manifestation", element.getManifestation().get(i), i); 2890 } 2891 if (element.hasDescriptionElement()) { 2892 composeString(t, "AllergyIntoleranceReactionComponent", "description", element.getDescriptionElement(), -1); 2893 } 2894 if (element.hasOnsetElement()) { 2895 composeDateTime(t, "AllergyIntoleranceReactionComponent", "onset", element.getOnsetElement(), -1); 2896 } 2897 if (element.hasSeverityElement()) { 2898 composeEnum(t, "AllergyIntoleranceReactionComponent", "severity", element.getSeverityElement(), -1); 2899 } 2900 if (element.hasExposureRoute()) { 2901 composeCodeableConcept(t, "AllergyIntoleranceReactionComponent", "exposureRoute", element.getExposureRoute(), -1); 2902 } 2903 for (int i = 0; i < element.getNote().size(); i++) { 2904 composeAnnotation(t, "AllergyIntoleranceReactionComponent", "note", element.getNote().get(i), i); 2905 } 2906 } 2907 2908 protected void composeAppointment(Complex parent, String parentType, String name, Appointment element, int index) { 2909 if (element == null) 2910 return; 2911 Complex t; 2912 if (Utilities.noString(parentType)) 2913 t = parent; 2914 else { 2915 t = parent.predicate("fhir:"+name,index > -1); 2916 } 2917 composeDomainResource(t, "Appointment", name, element, index); 2918 for (int i = 0; i < element.getIdentifier().size(); i++) { 2919 composeIdentifier(t, "Appointment", "identifier", element.getIdentifier().get(i), i); 2920 } 2921 if (element.hasStatusElement()) { 2922 composeEnum(t, "Appointment", "status", element.getStatusElement(), -1); 2923 } 2924 if (element.hasCancellationReason()) { 2925 composeCodeableConcept(t, "Appointment", "cancellationReason", element.getCancellationReason(), -1); 2926 } 2927 for (int i = 0; i < element.getClass_().size(); i++) { 2928 composeCodeableConcept(t, "Appointment", "class", element.getClass_().get(i), i); 2929 } 2930 for (int i = 0; i < element.getServiceCategory().size(); i++) { 2931 composeCodeableConcept(t, "Appointment", "serviceCategory", element.getServiceCategory().get(i), i); 2932 } 2933 for (int i = 0; i < element.getServiceType().size(); i++) { 2934 composeCodeableReference(t, "Appointment", "serviceType", element.getServiceType().get(i), i); 2935 } 2936 for (int i = 0; i < element.getSpecialty().size(); i++) { 2937 composeCodeableConcept(t, "Appointment", "specialty", element.getSpecialty().get(i), i); 2938 } 2939 if (element.hasAppointmentType()) { 2940 composeCodeableConcept(t, "Appointment", "appointmentType", element.getAppointmentType(), -1); 2941 } 2942 for (int i = 0; i < element.getReason().size(); i++) { 2943 composeCodeableReference(t, "Appointment", "reason", element.getReason().get(i), i); 2944 } 2945 if (element.hasPriority()) { 2946 composeCodeableConcept(t, "Appointment", "priority", element.getPriority(), -1); 2947 } 2948 if (element.hasDescriptionElement()) { 2949 composeString(t, "Appointment", "description", element.getDescriptionElement(), -1); 2950 } 2951 for (int i = 0; i < element.getReplaces().size(); i++) { 2952 composeReference(t, "Appointment", "replaces", element.getReplaces().get(i), i); 2953 } 2954 for (int i = 0; i < element.getVirtualService().size(); i++) { 2955 composeVirtualServiceDetail(t, "Appointment", "virtualService", element.getVirtualService().get(i), i); 2956 } 2957 for (int i = 0; i < element.getSupportingInformation().size(); i++) { 2958 composeReference(t, "Appointment", "supportingInformation", element.getSupportingInformation().get(i), i); 2959 } 2960 if (element.hasPreviousAppointment()) { 2961 composeReference(t, "Appointment", "previousAppointment", element.getPreviousAppointment(), -1); 2962 } 2963 if (element.hasOriginatingAppointment()) { 2964 composeReference(t, "Appointment", "originatingAppointment", element.getOriginatingAppointment(), -1); 2965 } 2966 if (element.hasStartElement()) { 2967 composeInstant(t, "Appointment", "start", element.getStartElement(), -1); 2968 } 2969 if (element.hasEndElement()) { 2970 composeInstant(t, "Appointment", "end", element.getEndElement(), -1); 2971 } 2972 if (element.hasMinutesDurationElement()) { 2973 composePositiveInt(t, "Appointment", "minutesDuration", element.getMinutesDurationElement(), -1); 2974 } 2975 for (int i = 0; i < element.getRequestedPeriod().size(); i++) { 2976 composePeriod(t, "Appointment", "requestedPeriod", element.getRequestedPeriod().get(i), i); 2977 } 2978 for (int i = 0; i < element.getSlot().size(); i++) { 2979 composeReference(t, "Appointment", "slot", element.getSlot().get(i), i); 2980 } 2981 for (int i = 0; i < element.getAccount().size(); i++) { 2982 composeReference(t, "Appointment", "account", element.getAccount().get(i), i); 2983 } 2984 if (element.hasCreatedElement()) { 2985 composeDateTime(t, "Appointment", "created", element.getCreatedElement(), -1); 2986 } 2987 if (element.hasCancellationDateElement()) { 2988 composeDateTime(t, "Appointment", "cancellationDate", element.getCancellationDateElement(), -1); 2989 } 2990 for (int i = 0; i < element.getNote().size(); i++) { 2991 composeAnnotation(t, "Appointment", "note", element.getNote().get(i), i); 2992 } 2993 for (int i = 0; i < element.getPatientInstruction().size(); i++) { 2994 composeCodeableReference(t, "Appointment", "patientInstruction", element.getPatientInstruction().get(i), i); 2995 } 2996 for (int i = 0; i < element.getBasedOn().size(); i++) { 2997 composeReference(t, "Appointment", "basedOn", element.getBasedOn().get(i), i); 2998 } 2999 if (element.hasSubject()) { 3000 composeReference(t, "Appointment", "subject", element.getSubject(), -1); 3001 } 3002 for (int i = 0; i < element.getParticipant().size(); i++) { 3003 composeAppointmentParticipantComponent(t, "Appointment", "participant", element.getParticipant().get(i), i); 3004 } 3005 if (element.hasRecurrenceIdElement()) { 3006 composePositiveInt(t, "Appointment", "recurrenceId", element.getRecurrenceIdElement(), -1); 3007 } 3008 if (element.hasOccurrenceChangedElement()) { 3009 composeBoolean(t, "Appointment", "occurrenceChanged", element.getOccurrenceChangedElement(), -1); 3010 } 3011 for (int i = 0; i < element.getRecurrenceTemplate().size(); i++) { 3012 composeAppointmentRecurrenceTemplateComponent(t, "Appointment", "recurrenceTemplate", element.getRecurrenceTemplate().get(i), i); 3013 } 3014 } 3015 3016 protected void composeAppointmentParticipantComponent(Complex parent, String parentType, String name, Appointment.AppointmentParticipantComponent element, int index) { 3017 if (element == null) 3018 return; 3019 Complex t; 3020 if (Utilities.noString(parentType)) 3021 t = parent; 3022 else { 3023 t = parent.predicate("fhir:"+name,index > -1); 3024 } 3025 composeBackboneElement(t, "participant", name, element, index); 3026 for (int i = 0; i < element.getType().size(); i++) { 3027 composeCodeableConcept(t, "AppointmentParticipantComponent", "type", element.getType().get(i), i); 3028 } 3029 if (element.hasPeriod()) { 3030 composePeriod(t, "AppointmentParticipantComponent", "period", element.getPeriod(), -1); 3031 } 3032 if (element.hasActor()) { 3033 composeReference(t, "AppointmentParticipantComponent", "actor", element.getActor(), -1); 3034 } 3035 if (element.hasRequiredElement()) { 3036 composeBoolean(t, "AppointmentParticipantComponent", "required", element.getRequiredElement(), -1); 3037 } 3038 if (element.hasStatusElement()) { 3039 composeEnum(t, "AppointmentParticipantComponent", "status", element.getStatusElement(), -1); 3040 } 3041 } 3042 3043 protected void composeAppointmentRecurrenceTemplateComponent(Complex parent, String parentType, String name, Appointment.AppointmentRecurrenceTemplateComponent element, int index) { 3044 if (element == null) 3045 return; 3046 Complex t; 3047 if (Utilities.noString(parentType)) 3048 t = parent; 3049 else { 3050 t = parent.predicate("fhir:"+name,index > -1); 3051 } 3052 composeBackboneElement(t, "recurrenceTemplate", name, element, index); 3053 if (element.hasTimezone()) { 3054 composeCodeableConcept(t, "AppointmentRecurrenceTemplateComponent", "timezone", element.getTimezone(), -1); 3055 } 3056 if (element.hasRecurrenceType()) { 3057 composeCodeableConcept(t, "AppointmentRecurrenceTemplateComponent", "recurrenceType", element.getRecurrenceType(), -1); 3058 } 3059 if (element.hasLastOccurrenceDateElement()) { 3060 composeDate(t, "AppointmentRecurrenceTemplateComponent", "lastOccurrenceDate", element.getLastOccurrenceDateElement(), -1); 3061 } 3062 if (element.hasOccurrenceCountElement()) { 3063 composePositiveInt(t, "AppointmentRecurrenceTemplateComponent", "occurrenceCount", element.getOccurrenceCountElement(), -1); 3064 } 3065 for (int i = 0; i < element.getOccurrenceDate().size(); i++) { 3066 composeDate(t, "AppointmentRecurrenceTemplateComponent", "occurrenceDate", element.getOccurrenceDate().get(i), i); 3067 } 3068 if (element.hasWeeklyTemplate()) { 3069 composeAppointmentRecurrenceTemplateWeeklyTemplateComponent(t, "AppointmentRecurrenceTemplateComponent", "weeklyTemplate", element.getWeeklyTemplate(), -1); 3070 } 3071 if (element.hasMonthlyTemplate()) { 3072 composeAppointmentRecurrenceTemplateMonthlyTemplateComponent(t, "AppointmentRecurrenceTemplateComponent", "monthlyTemplate", element.getMonthlyTemplate(), -1); 3073 } 3074 if (element.hasYearlyTemplate()) { 3075 composeAppointmentRecurrenceTemplateYearlyTemplateComponent(t, "AppointmentRecurrenceTemplateComponent", "yearlyTemplate", element.getYearlyTemplate(), -1); 3076 } 3077 for (int i = 0; i < element.getExcludingDate().size(); i++) { 3078 composeDate(t, "AppointmentRecurrenceTemplateComponent", "excludingDate", element.getExcludingDate().get(i), i); 3079 } 3080 for (int i = 0; i < element.getExcludingRecurrenceId().size(); i++) { 3081 composePositiveInt(t, "AppointmentRecurrenceTemplateComponent", "excludingRecurrenceId", element.getExcludingRecurrenceId().get(i), i); 3082 } 3083 } 3084 3085 protected void composeAppointmentRecurrenceTemplateWeeklyTemplateComponent(Complex parent, String parentType, String name, Appointment.AppointmentRecurrenceTemplateWeeklyTemplateComponent element, int index) { 3086 if (element == null) 3087 return; 3088 Complex t; 3089 if (Utilities.noString(parentType)) 3090 t = parent; 3091 else { 3092 t = parent.predicate("fhir:"+name,index > -1); 3093 } 3094 composeBackboneElement(t, "weeklyTemplate", name, element, index); 3095 if (element.hasMondayElement()) { 3096 composeBoolean(t, "AppointmentRecurrenceTemplateWeeklyTemplateComponent", "monday", element.getMondayElement(), -1); 3097 } 3098 if (element.hasTuesdayElement()) { 3099 composeBoolean(t, "AppointmentRecurrenceTemplateWeeklyTemplateComponent", "tuesday", element.getTuesdayElement(), -1); 3100 } 3101 if (element.hasWednesdayElement()) { 3102 composeBoolean(t, "AppointmentRecurrenceTemplateWeeklyTemplateComponent", "wednesday", element.getWednesdayElement(), -1); 3103 } 3104 if (element.hasThursdayElement()) { 3105 composeBoolean(t, "AppointmentRecurrenceTemplateWeeklyTemplateComponent", "thursday", element.getThursdayElement(), -1); 3106 } 3107 if (element.hasFridayElement()) { 3108 composeBoolean(t, "AppointmentRecurrenceTemplateWeeklyTemplateComponent", "friday", element.getFridayElement(), -1); 3109 } 3110 if (element.hasSaturdayElement()) { 3111 composeBoolean(t, "AppointmentRecurrenceTemplateWeeklyTemplateComponent", "saturday", element.getSaturdayElement(), -1); 3112 } 3113 if (element.hasSundayElement()) { 3114 composeBoolean(t, "AppointmentRecurrenceTemplateWeeklyTemplateComponent", "sunday", element.getSundayElement(), -1); 3115 } 3116 if (element.hasWeekIntervalElement()) { 3117 composePositiveInt(t, "AppointmentRecurrenceTemplateWeeklyTemplateComponent", "weekInterval", element.getWeekIntervalElement(), -1); 3118 } 3119 } 3120 3121 protected void composeAppointmentRecurrenceTemplateMonthlyTemplateComponent(Complex parent, String parentType, String name, Appointment.AppointmentRecurrenceTemplateMonthlyTemplateComponent element, int index) { 3122 if (element == null) 3123 return; 3124 Complex t; 3125 if (Utilities.noString(parentType)) 3126 t = parent; 3127 else { 3128 t = parent.predicate("fhir:"+name,index > -1); 3129 } 3130 composeBackboneElement(t, "monthlyTemplate", name, element, index); 3131 if (element.hasDayOfMonthElement()) { 3132 composePositiveInt(t, "AppointmentRecurrenceTemplateMonthlyTemplateComponent", "dayOfMonth", element.getDayOfMonthElement(), -1); 3133 } 3134 if (element.hasNthWeekOfMonth()) { 3135 composeCoding(t, "AppointmentRecurrenceTemplateMonthlyTemplateComponent", "nthWeekOfMonth", element.getNthWeekOfMonth(), -1); 3136 } 3137 if (element.hasDayOfWeek()) { 3138 composeCoding(t, "AppointmentRecurrenceTemplateMonthlyTemplateComponent", "dayOfWeek", element.getDayOfWeek(), -1); 3139 } 3140 if (element.hasMonthIntervalElement()) { 3141 composePositiveInt(t, "AppointmentRecurrenceTemplateMonthlyTemplateComponent", "monthInterval", element.getMonthIntervalElement(), -1); 3142 } 3143 } 3144 3145 protected void composeAppointmentRecurrenceTemplateYearlyTemplateComponent(Complex parent, String parentType, String name, Appointment.AppointmentRecurrenceTemplateYearlyTemplateComponent element, int index) { 3146 if (element == null) 3147 return; 3148 Complex t; 3149 if (Utilities.noString(parentType)) 3150 t = parent; 3151 else { 3152 t = parent.predicate("fhir:"+name,index > -1); 3153 } 3154 composeBackboneElement(t, "yearlyTemplate", name, element, index); 3155 if (element.hasYearIntervalElement()) { 3156 composePositiveInt(t, "AppointmentRecurrenceTemplateYearlyTemplateComponent", "yearInterval", element.getYearIntervalElement(), -1); 3157 } 3158 } 3159 3160 protected void composeAppointmentResponse(Complex parent, String parentType, String name, AppointmentResponse element, int index) { 3161 if (element == null) 3162 return; 3163 Complex t; 3164 if (Utilities.noString(parentType)) 3165 t = parent; 3166 else { 3167 t = parent.predicate("fhir:"+name,index > -1); 3168 } 3169 composeDomainResource(t, "AppointmentResponse", name, element, index); 3170 for (int i = 0; i < element.getIdentifier().size(); i++) { 3171 composeIdentifier(t, "AppointmentResponse", "identifier", element.getIdentifier().get(i), i); 3172 } 3173 if (element.hasAppointment()) { 3174 composeReference(t, "AppointmentResponse", "appointment", element.getAppointment(), -1); 3175 } 3176 if (element.hasProposedNewTimeElement()) { 3177 composeBoolean(t, "AppointmentResponse", "proposedNewTime", element.getProposedNewTimeElement(), -1); 3178 } 3179 if (element.hasStartElement()) { 3180 composeInstant(t, "AppointmentResponse", "start", element.getStartElement(), -1); 3181 } 3182 if (element.hasEndElement()) { 3183 composeInstant(t, "AppointmentResponse", "end", element.getEndElement(), -1); 3184 } 3185 for (int i = 0; i < element.getParticipantType().size(); i++) { 3186 composeCodeableConcept(t, "AppointmentResponse", "participantType", element.getParticipantType().get(i), i); 3187 } 3188 if (element.hasActor()) { 3189 composeReference(t, "AppointmentResponse", "actor", element.getActor(), -1); 3190 } 3191 if (element.hasParticipantStatusElement()) { 3192 composeEnum(t, "AppointmentResponse", "participantStatus", element.getParticipantStatusElement(), -1); 3193 } 3194 if (element.hasCommentElement()) { 3195 composeMarkdown(t, "AppointmentResponse", "comment", element.getCommentElement(), -1); 3196 } 3197 if (element.hasRecurringElement()) { 3198 composeBoolean(t, "AppointmentResponse", "recurring", element.getRecurringElement(), -1); 3199 } 3200 if (element.hasOccurrenceDateElement()) { 3201 composeDate(t, "AppointmentResponse", "occurrenceDate", element.getOccurrenceDateElement(), -1); 3202 } 3203 if (element.hasRecurrenceIdElement()) { 3204 composePositiveInt(t, "AppointmentResponse", "recurrenceId", element.getRecurrenceIdElement(), -1); 3205 } 3206 } 3207 3208 protected void composeArtifactAssessment(Complex parent, String parentType, String name, ArtifactAssessment element, int index) { 3209 if (element == null) 3210 return; 3211 Complex t; 3212 if (Utilities.noString(parentType)) 3213 t = parent; 3214 else { 3215 t = parent.predicate("fhir:"+name,index > -1); 3216 } 3217 composeDomainResource(t, "ArtifactAssessment", name, element, index); 3218 for (int i = 0; i < element.getIdentifier().size(); i++) { 3219 composeIdentifier(t, "ArtifactAssessment", "identifier", element.getIdentifier().get(i), i); 3220 } 3221 if (element.hasTitleElement()) { 3222 composeString(t, "ArtifactAssessment", "title", element.getTitleElement(), -1); 3223 } 3224 if (element.hasCiteAs()) { 3225 composeType(t, "ArtifactAssessment", "citeAs", element.getCiteAs(), -1); 3226 } 3227 if (element.hasDateElement()) { 3228 composeDateTime(t, "ArtifactAssessment", "date", element.getDateElement(), -1); 3229 } 3230 if (element.hasCopyrightElement()) { 3231 composeMarkdown(t, "ArtifactAssessment", "copyright", element.getCopyrightElement(), -1); 3232 } 3233 if (element.hasApprovalDateElement()) { 3234 composeDate(t, "ArtifactAssessment", "approvalDate", element.getApprovalDateElement(), -1); 3235 } 3236 if (element.hasLastReviewDateElement()) { 3237 composeDate(t, "ArtifactAssessment", "lastReviewDate", element.getLastReviewDateElement(), -1); 3238 } 3239 if (element.hasArtifact()) { 3240 composeType(t, "ArtifactAssessment", "artifact", element.getArtifact(), -1); 3241 } 3242 for (int i = 0; i < element.getContent().size(); i++) { 3243 composeArtifactAssessmentContentComponent(t, "ArtifactAssessment", "content", element.getContent().get(i), i); 3244 } 3245 if (element.hasWorkflowStatusElement()) { 3246 composeEnum(t, "ArtifactAssessment", "workflowStatus", element.getWorkflowStatusElement(), -1); 3247 } 3248 if (element.hasDispositionElement()) { 3249 composeEnum(t, "ArtifactAssessment", "disposition", element.getDispositionElement(), -1); 3250 } 3251 } 3252 3253 protected void composeArtifactAssessmentContentComponent(Complex parent, String parentType, String name, ArtifactAssessment.ArtifactAssessmentContentComponent element, int index) { 3254 if (element == null) 3255 return; 3256 Complex t; 3257 if (Utilities.noString(parentType)) 3258 t = parent; 3259 else { 3260 t = parent.predicate("fhir:"+name,index > -1); 3261 } 3262 composeBackboneElement(t, "content", name, element, index); 3263 if (element.hasInformationTypeElement()) { 3264 composeEnum(t, "ArtifactAssessmentContentComponent", "informationType", element.getInformationTypeElement(), -1); 3265 } 3266 if (element.hasSummaryElement()) { 3267 composeMarkdown(t, "ArtifactAssessmentContentComponent", "summary", element.getSummaryElement(), -1); 3268 } 3269 if (element.hasType()) { 3270 composeCodeableConcept(t, "ArtifactAssessmentContentComponent", "type", element.getType(), -1); 3271 } 3272 for (int i = 0; i < element.getClassifier().size(); i++) { 3273 composeCodeableConcept(t, "ArtifactAssessmentContentComponent", "classifier", element.getClassifier().get(i), i); 3274 } 3275 if (element.hasQuantity()) { 3276 composeQuantity(t, "ArtifactAssessmentContentComponent", "quantity", element.getQuantity(), -1); 3277 } 3278 if (element.hasAuthor()) { 3279 composeReference(t, "ArtifactAssessmentContentComponent", "author", element.getAuthor(), -1); 3280 } 3281 for (int i = 0; i < element.getPath().size(); i++) { 3282 composeUri(t, "ArtifactAssessmentContentComponent", "path", element.getPath().get(i), i); 3283 } 3284 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 3285 composeRelatedArtifact(t, "ArtifactAssessmentContentComponent", "relatedArtifact", element.getRelatedArtifact().get(i), i); 3286 } 3287 if (element.hasFreeToShareElement()) { 3288 composeBoolean(t, "ArtifactAssessmentContentComponent", "freeToShare", element.getFreeToShareElement(), -1); 3289 } 3290 for (int i = 0; i < element.getComponent().size(); i++) { 3291 composeArtifactAssessmentContentComponent(t, "ArtifactAssessmentContentComponent", "component", element.getComponent().get(i), i); 3292 } 3293 } 3294 3295 protected void composeAuditEvent(Complex parent, String parentType, String name, AuditEvent element, int index) { 3296 if (element == null) 3297 return; 3298 Complex t; 3299 if (Utilities.noString(parentType)) 3300 t = parent; 3301 else { 3302 t = parent.predicate("fhir:"+name,index > -1); 3303 } 3304 composeDomainResource(t, "AuditEvent", name, element, index); 3305 for (int i = 0; i < element.getCategory().size(); i++) { 3306 composeCodeableConcept(t, "AuditEvent", "category", element.getCategory().get(i), i); 3307 } 3308 if (element.hasCode()) { 3309 composeCodeableConcept(t, "AuditEvent", "code", element.getCode(), -1); 3310 } 3311 if (element.hasActionElement()) { 3312 composeEnum(t, "AuditEvent", "action", element.getActionElement(), -1); 3313 } 3314 if (element.hasSeverityElement()) { 3315 composeEnum(t, "AuditEvent", "severity", element.getSeverityElement(), -1); 3316 } 3317 if (element.hasOccurred()) { 3318 composeType(t, "AuditEvent", "occurred", element.getOccurred(), -1); 3319 } 3320 if (element.hasRecordedElement()) { 3321 composeInstant(t, "AuditEvent", "recorded", element.getRecordedElement(), -1); 3322 } 3323 if (element.hasOutcome()) { 3324 composeAuditEventOutcomeComponent(t, "AuditEvent", "outcome", element.getOutcome(), -1); 3325 } 3326 for (int i = 0; i < element.getAuthorization().size(); i++) { 3327 composeCodeableConcept(t, "AuditEvent", "authorization", element.getAuthorization().get(i), i); 3328 } 3329 for (int i = 0; i < element.getBasedOn().size(); i++) { 3330 composeReference(t, "AuditEvent", "basedOn", element.getBasedOn().get(i), i); 3331 } 3332 if (element.hasPatient()) { 3333 composeReference(t, "AuditEvent", "patient", element.getPatient(), -1); 3334 } 3335 if (element.hasEncounter()) { 3336 composeReference(t, "AuditEvent", "encounter", element.getEncounter(), -1); 3337 } 3338 for (int i = 0; i < element.getAgent().size(); i++) { 3339 composeAuditEventAgentComponent(t, "AuditEvent", "agent", element.getAgent().get(i), i); 3340 } 3341 if (element.hasSource()) { 3342 composeAuditEventSourceComponent(t, "AuditEvent", "source", element.getSource(), -1); 3343 } 3344 for (int i = 0; i < element.getEntity().size(); i++) { 3345 composeAuditEventEntityComponent(t, "AuditEvent", "entity", element.getEntity().get(i), i); 3346 } 3347 } 3348 3349 protected void composeAuditEventOutcomeComponent(Complex parent, String parentType, String name, AuditEvent.AuditEventOutcomeComponent element, int index) { 3350 if (element == null) 3351 return; 3352 Complex t; 3353 if (Utilities.noString(parentType)) 3354 t = parent; 3355 else { 3356 t = parent.predicate("fhir:"+name,index > -1); 3357 } 3358 composeBackboneElement(t, "outcome", name, element, index); 3359 if (element.hasCode()) { 3360 composeCoding(t, "AuditEventOutcomeComponent", "code", element.getCode(), -1); 3361 } 3362 for (int i = 0; i < element.getDetail().size(); i++) { 3363 composeCodeableConcept(t, "AuditEventOutcomeComponent", "detail", element.getDetail().get(i), i); 3364 } 3365 } 3366 3367 protected void composeAuditEventAgentComponent(Complex parent, String parentType, String name, AuditEvent.AuditEventAgentComponent element, int index) { 3368 if (element == null) 3369 return; 3370 Complex t; 3371 if (Utilities.noString(parentType)) 3372 t = parent; 3373 else { 3374 t = parent.predicate("fhir:"+name,index > -1); 3375 } 3376 composeBackboneElement(t, "agent", name, element, index); 3377 if (element.hasType()) { 3378 composeCodeableConcept(t, "AuditEventAgentComponent", "type", element.getType(), -1); 3379 } 3380 for (int i = 0; i < element.getRole().size(); i++) { 3381 composeCodeableConcept(t, "AuditEventAgentComponent", "role", element.getRole().get(i), i); 3382 } 3383 if (element.hasWho()) { 3384 composeReference(t, "AuditEventAgentComponent", "who", element.getWho(), -1); 3385 } 3386 if (element.hasRequestorElement()) { 3387 composeBoolean(t, "AuditEventAgentComponent", "requestor", element.getRequestorElement(), -1); 3388 } 3389 if (element.hasLocation()) { 3390 composeReference(t, "AuditEventAgentComponent", "location", element.getLocation(), -1); 3391 } 3392 for (int i = 0; i < element.getPolicy().size(); i++) { 3393 composeUri(t, "AuditEventAgentComponent", "policy", element.getPolicy().get(i), i); 3394 } 3395 if (element.hasNetwork()) { 3396 composeType(t, "AuditEventAgentComponent", "network", element.getNetwork(), -1); 3397 } 3398 for (int i = 0; i < element.getAuthorization().size(); i++) { 3399 composeCodeableConcept(t, "AuditEventAgentComponent", "authorization", element.getAuthorization().get(i), i); 3400 } 3401 } 3402 3403 protected void composeAuditEventSourceComponent(Complex parent, String parentType, String name, AuditEvent.AuditEventSourceComponent element, int index) { 3404 if (element == null) 3405 return; 3406 Complex t; 3407 if (Utilities.noString(parentType)) 3408 t = parent; 3409 else { 3410 t = parent.predicate("fhir:"+name,index > -1); 3411 } 3412 composeBackboneElement(t, "source", name, element, index); 3413 if (element.hasSite()) { 3414 composeReference(t, "AuditEventSourceComponent", "site", element.getSite(), -1); 3415 } 3416 if (element.hasObserver()) { 3417 composeReference(t, "AuditEventSourceComponent", "observer", element.getObserver(), -1); 3418 } 3419 for (int i = 0; i < element.getType().size(); i++) { 3420 composeCodeableConcept(t, "AuditEventSourceComponent", "type", element.getType().get(i), i); 3421 } 3422 } 3423 3424 protected void composeAuditEventEntityComponent(Complex parent, String parentType, String name, AuditEvent.AuditEventEntityComponent element, int index) { 3425 if (element == null) 3426 return; 3427 Complex t; 3428 if (Utilities.noString(parentType)) 3429 t = parent; 3430 else { 3431 t = parent.predicate("fhir:"+name,index > -1); 3432 } 3433 composeBackboneElement(t, "entity", name, element, index); 3434 if (element.hasWhat()) { 3435 composeReference(t, "AuditEventEntityComponent", "what", element.getWhat(), -1); 3436 } 3437 if (element.hasRole()) { 3438 composeCodeableConcept(t, "AuditEventEntityComponent", "role", element.getRole(), -1); 3439 } 3440 for (int i = 0; i < element.getSecurityLabel().size(); i++) { 3441 composeCodeableConcept(t, "AuditEventEntityComponent", "securityLabel", element.getSecurityLabel().get(i), i); 3442 } 3443 if (element.hasQueryElement()) { 3444 composeBase64Binary(t, "AuditEventEntityComponent", "query", element.getQueryElement(), -1); 3445 } 3446 for (int i = 0; i < element.getDetail().size(); i++) { 3447 composeAuditEventEntityDetailComponent(t, "AuditEventEntityComponent", "detail", element.getDetail().get(i), i); 3448 } 3449 for (int i = 0; i < element.getAgent().size(); i++) { 3450 composeAuditEventAgentComponent(t, "AuditEventEntityComponent", "agent", element.getAgent().get(i), i); 3451 } 3452 } 3453 3454 protected void composeAuditEventEntityDetailComponent(Complex parent, String parentType, String name, AuditEvent.AuditEventEntityDetailComponent element, int index) { 3455 if (element == null) 3456 return; 3457 Complex t; 3458 if (Utilities.noString(parentType)) 3459 t = parent; 3460 else { 3461 t = parent.predicate("fhir:"+name,index > -1); 3462 } 3463 composeBackboneElement(t, "detail", name, element, index); 3464 if (element.hasType()) { 3465 composeCodeableConcept(t, "AuditEventEntityDetailComponent", "type", element.getType(), -1); 3466 } 3467 if (element.hasValue()) { 3468 composeType(t, "AuditEventEntityDetailComponent", "value", element.getValue(), -1); 3469 } 3470 } 3471 3472 protected void composeBasic(Complex parent, String parentType, String name, Basic element, int index) { 3473 if (element == null) 3474 return; 3475 Complex t; 3476 if (Utilities.noString(parentType)) 3477 t = parent; 3478 else { 3479 t = parent.predicate("fhir:"+name,index > -1); 3480 } 3481 composeDomainResource(t, "Basic", name, element, index); 3482 for (int i = 0; i < element.getIdentifier().size(); i++) { 3483 composeIdentifier(t, "Basic", "identifier", element.getIdentifier().get(i), i); 3484 } 3485 if (element.hasCode()) { 3486 composeCodeableConcept(t, "Basic", "code", element.getCode(), -1); 3487 } 3488 if (element.hasSubject()) { 3489 composeReference(t, "Basic", "subject", element.getSubject(), -1); 3490 } 3491 if (element.hasCreatedElement()) { 3492 composeDateTime(t, "Basic", "created", element.getCreatedElement(), -1); 3493 } 3494 if (element.hasAuthor()) { 3495 composeReference(t, "Basic", "author", element.getAuthor(), -1); 3496 } 3497 } 3498 3499 protected void composeBinary(Complex parent, String parentType, String name, Binary element, int index) { 3500 if (element == null) 3501 return; 3502 Complex t; 3503 if (Utilities.noString(parentType)) 3504 t = parent; 3505 else { 3506 t = parent.predicate("fhir:"+name,index > -1); 3507 } 3508 composeResource(t, "Binary", name, element, index); 3509 if (element.hasContentTypeElement()) { 3510 composeCode(t, "Binary", "contentType", element.getContentTypeElement(), -1); 3511 } 3512 if (element.hasSecurityContext()) { 3513 composeReference(t, "Binary", "securityContext", element.getSecurityContext(), -1); 3514 } 3515 if (element.hasDataElement()) { 3516 composeBase64Binary(t, "Binary", "data", element.getDataElement(), -1); 3517 } 3518 } 3519 3520 protected void composeBiologicallyDerivedProduct(Complex parent, String parentType, String name, BiologicallyDerivedProduct element, int index) { 3521 if (element == null) 3522 return; 3523 Complex t; 3524 if (Utilities.noString(parentType)) 3525 t = parent; 3526 else { 3527 t = parent.predicate("fhir:"+name,index > -1); 3528 } 3529 composeDomainResource(t, "BiologicallyDerivedProduct", name, element, index); 3530 if (element.hasProductCategory()) { 3531 composeCoding(t, "BiologicallyDerivedProduct", "productCategory", element.getProductCategory(), -1); 3532 } 3533 if (element.hasProductCode()) { 3534 composeCodeableConcept(t, "BiologicallyDerivedProduct", "productCode", element.getProductCode(), -1); 3535 } 3536 for (int i = 0; i < element.getParent().size(); i++) { 3537 composeReference(t, "BiologicallyDerivedProduct", "parent", element.getParent().get(i), i); 3538 } 3539 for (int i = 0; i < element.getRequest().size(); i++) { 3540 composeReference(t, "BiologicallyDerivedProduct", "request", element.getRequest().get(i), i); 3541 } 3542 for (int i = 0; i < element.getIdentifier().size(); i++) { 3543 composeIdentifier(t, "BiologicallyDerivedProduct", "identifier", element.getIdentifier().get(i), i); 3544 } 3545 if (element.hasBiologicalSourceEvent()) { 3546 composeIdentifier(t, "BiologicallyDerivedProduct", "biologicalSourceEvent", element.getBiologicalSourceEvent(), -1); 3547 } 3548 for (int i = 0; i < element.getProcessingFacility().size(); i++) { 3549 composeReference(t, "BiologicallyDerivedProduct", "processingFacility", element.getProcessingFacility().get(i), i); 3550 } 3551 if (element.hasDivisionElement()) { 3552 composeString(t, "BiologicallyDerivedProduct", "division", element.getDivisionElement(), -1); 3553 } 3554 if (element.hasProductStatus()) { 3555 composeCoding(t, "BiologicallyDerivedProduct", "productStatus", element.getProductStatus(), -1); 3556 } 3557 if (element.hasExpirationDateElement()) { 3558 composeDateTime(t, "BiologicallyDerivedProduct", "expirationDate", element.getExpirationDateElement(), -1); 3559 } 3560 if (element.hasCollection()) { 3561 composeBiologicallyDerivedProductCollectionComponent(t, "BiologicallyDerivedProduct", "collection", element.getCollection(), -1); 3562 } 3563 if (element.hasStorageTempRequirements()) { 3564 composeRange(t, "BiologicallyDerivedProduct", "storageTempRequirements", element.getStorageTempRequirements(), -1); 3565 } 3566 for (int i = 0; i < element.getProperty().size(); i++) { 3567 composeBiologicallyDerivedProductPropertyComponent(t, "BiologicallyDerivedProduct", "property", element.getProperty().get(i), i); 3568 } 3569 } 3570 3571 protected void composeBiologicallyDerivedProductCollectionComponent(Complex parent, String parentType, String name, BiologicallyDerivedProduct.BiologicallyDerivedProductCollectionComponent element, int index) { 3572 if (element == null) 3573 return; 3574 Complex t; 3575 if (Utilities.noString(parentType)) 3576 t = parent; 3577 else { 3578 t = parent.predicate("fhir:"+name,index > -1); 3579 } 3580 composeBackboneElement(t, "collection", name, element, index); 3581 if (element.hasCollector()) { 3582 composeReference(t, "BiologicallyDerivedProductCollectionComponent", "collector", element.getCollector(), -1); 3583 } 3584 if (element.hasSource()) { 3585 composeReference(t, "BiologicallyDerivedProductCollectionComponent", "source", element.getSource(), -1); 3586 } 3587 if (element.hasCollected()) { 3588 composeType(t, "BiologicallyDerivedProductCollectionComponent", "collected", element.getCollected(), -1); 3589 } 3590 } 3591 3592 protected void composeBiologicallyDerivedProductPropertyComponent(Complex parent, String parentType, String name, BiologicallyDerivedProduct.BiologicallyDerivedProductPropertyComponent element, int index) { 3593 if (element == null) 3594 return; 3595 Complex t; 3596 if (Utilities.noString(parentType)) 3597 t = parent; 3598 else { 3599 t = parent.predicate("fhir:"+name,index > -1); 3600 } 3601 composeBackboneElement(t, "property", name, element, index); 3602 if (element.hasType()) { 3603 composeCodeableConcept(t, "BiologicallyDerivedProductPropertyComponent", "type", element.getType(), -1); 3604 } 3605 if (element.hasValue()) { 3606 composeType(t, "BiologicallyDerivedProductPropertyComponent", "value", element.getValue(), -1); 3607 } 3608 } 3609 3610 protected void composeBiologicallyDerivedProductDispense(Complex parent, String parentType, String name, BiologicallyDerivedProductDispense element, int index) { 3611 if (element == null) 3612 return; 3613 Complex t; 3614 if (Utilities.noString(parentType)) 3615 t = parent; 3616 else { 3617 t = parent.predicate("fhir:"+name,index > -1); 3618 } 3619 composeDomainResource(t, "BiologicallyDerivedProductDispense", name, element, index); 3620 for (int i = 0; i < element.getIdentifier().size(); i++) { 3621 composeIdentifier(t, "BiologicallyDerivedProductDispense", "identifier", element.getIdentifier().get(i), i); 3622 } 3623 for (int i = 0; i < element.getBasedOn().size(); i++) { 3624 composeReference(t, "BiologicallyDerivedProductDispense", "basedOn", element.getBasedOn().get(i), i); 3625 } 3626 for (int i = 0; i < element.getPartOf().size(); i++) { 3627 composeReference(t, "BiologicallyDerivedProductDispense", "partOf", element.getPartOf().get(i), i); 3628 } 3629 if (element.hasStatusElement()) { 3630 composeEnum(t, "BiologicallyDerivedProductDispense", "status", element.getStatusElement(), -1); 3631 } 3632 if (element.hasOriginRelationshipType()) { 3633 composeCodeableConcept(t, "BiologicallyDerivedProductDispense", "originRelationshipType", element.getOriginRelationshipType(), -1); 3634 } 3635 if (element.hasProduct()) { 3636 composeReference(t, "BiologicallyDerivedProductDispense", "product", element.getProduct(), -1); 3637 } 3638 if (element.hasPatient()) { 3639 composeReference(t, "BiologicallyDerivedProductDispense", "patient", element.getPatient(), -1); 3640 } 3641 if (element.hasMatchStatus()) { 3642 composeCodeableConcept(t, "BiologicallyDerivedProductDispense", "matchStatus", element.getMatchStatus(), -1); 3643 } 3644 for (int i = 0; i < element.getPerformer().size(); i++) { 3645 composeBiologicallyDerivedProductDispensePerformerComponent(t, "BiologicallyDerivedProductDispense", "performer", element.getPerformer().get(i), i); 3646 } 3647 if (element.hasLocation()) { 3648 composeReference(t, "BiologicallyDerivedProductDispense", "location", element.getLocation(), -1); 3649 } 3650 if (element.hasQuantity()) { 3651 composeQuantity(t, "BiologicallyDerivedProductDispense", "quantity", element.getQuantity(), -1); 3652 } 3653 if (element.hasPreparedDateElement()) { 3654 composeDateTime(t, "BiologicallyDerivedProductDispense", "preparedDate", element.getPreparedDateElement(), -1); 3655 } 3656 if (element.hasWhenHandedOverElement()) { 3657 composeDateTime(t, "BiologicallyDerivedProductDispense", "whenHandedOver", element.getWhenHandedOverElement(), -1); 3658 } 3659 if (element.hasDestination()) { 3660 composeReference(t, "BiologicallyDerivedProductDispense", "destination", element.getDestination(), -1); 3661 } 3662 for (int i = 0; i < element.getNote().size(); i++) { 3663 composeAnnotation(t, "BiologicallyDerivedProductDispense", "note", element.getNote().get(i), i); 3664 } 3665 if (element.hasUsageInstructionElement()) { 3666 composeString(t, "BiologicallyDerivedProductDispense", "usageInstruction", element.getUsageInstructionElement(), -1); 3667 } 3668 } 3669 3670 protected void composeBiologicallyDerivedProductDispensePerformerComponent(Complex parent, String parentType, String name, BiologicallyDerivedProductDispense.BiologicallyDerivedProductDispensePerformerComponent element, int index) { 3671 if (element == null) 3672 return; 3673 Complex t; 3674 if (Utilities.noString(parentType)) 3675 t = parent; 3676 else { 3677 t = parent.predicate("fhir:"+name,index > -1); 3678 } 3679 composeBackboneElement(t, "performer", name, element, index); 3680 if (element.hasFunction()) { 3681 composeCodeableConcept(t, "BiologicallyDerivedProductDispensePerformerComponent", "function", element.getFunction(), -1); 3682 } 3683 if (element.hasActor()) { 3684 composeReference(t, "BiologicallyDerivedProductDispensePerformerComponent", "actor", element.getActor(), -1); 3685 } 3686 } 3687 3688 protected void composeBodyStructure(Complex parent, String parentType, String name, BodyStructure element, int index) { 3689 if (element == null) 3690 return; 3691 Complex t; 3692 if (Utilities.noString(parentType)) 3693 t = parent; 3694 else { 3695 t = parent.predicate("fhir:"+name,index > -1); 3696 } 3697 composeDomainResource(t, "BodyStructure", name, element, index); 3698 for (int i = 0; i < element.getIdentifier().size(); i++) { 3699 composeIdentifier(t, "BodyStructure", "identifier", element.getIdentifier().get(i), i); 3700 } 3701 if (element.hasActiveElement()) { 3702 composeBoolean(t, "BodyStructure", "active", element.getActiveElement(), -1); 3703 } 3704 if (element.hasMorphology()) { 3705 composeCodeableConcept(t, "BodyStructure", "morphology", element.getMorphology(), -1); 3706 } 3707 for (int i = 0; i < element.getIncludedStructure().size(); i++) { 3708 composeBodyStructureIncludedStructureComponent(t, "BodyStructure", "includedStructure", element.getIncludedStructure().get(i), i); 3709 } 3710 for (int i = 0; i < element.getExcludedStructure().size(); i++) { 3711 composeBodyStructureIncludedStructureComponent(t, "BodyStructure", "excludedStructure", element.getExcludedStructure().get(i), i); 3712 } 3713 if (element.hasDescriptionElement()) { 3714 composeMarkdown(t, "BodyStructure", "description", element.getDescriptionElement(), -1); 3715 } 3716 for (int i = 0; i < element.getImage().size(); i++) { 3717 composeAttachment(t, "BodyStructure", "image", element.getImage().get(i), i); 3718 } 3719 if (element.hasPatient()) { 3720 composeReference(t, "BodyStructure", "patient", element.getPatient(), -1); 3721 } 3722 } 3723 3724 protected void composeBodyStructureIncludedStructureComponent(Complex parent, String parentType, String name, BodyStructure.BodyStructureIncludedStructureComponent element, int index) { 3725 if (element == null) 3726 return; 3727 Complex t; 3728 if (Utilities.noString(parentType)) 3729 t = parent; 3730 else { 3731 t = parent.predicate("fhir:"+name,index > -1); 3732 } 3733 composeBackboneElement(t, "includedStructure", name, element, index); 3734 if (element.hasStructure()) { 3735 composeCodeableConcept(t, "BodyStructureIncludedStructureComponent", "structure", element.getStructure(), -1); 3736 } 3737 if (element.hasLaterality()) { 3738 composeCodeableConcept(t, "BodyStructureIncludedStructureComponent", "laterality", element.getLaterality(), -1); 3739 } 3740 for (int i = 0; i < element.getBodyLandmarkOrientation().size(); i++) { 3741 composeBodyStructureIncludedStructureBodyLandmarkOrientationComponent(t, "BodyStructureIncludedStructureComponent", "bodyLandmarkOrientation", element.getBodyLandmarkOrientation().get(i), i); 3742 } 3743 for (int i = 0; i < element.getSpatialReference().size(); i++) { 3744 composeReference(t, "BodyStructureIncludedStructureComponent", "spatialReference", element.getSpatialReference().get(i), i); 3745 } 3746 for (int i = 0; i < element.getQualifier().size(); i++) { 3747 composeCodeableConcept(t, "BodyStructureIncludedStructureComponent", "qualifier", element.getQualifier().get(i), i); 3748 } 3749 } 3750 3751 protected void composeBodyStructureIncludedStructureBodyLandmarkOrientationComponent(Complex parent, String parentType, String name, BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationComponent element, int index) { 3752 if (element == null) 3753 return; 3754 Complex t; 3755 if (Utilities.noString(parentType)) 3756 t = parent; 3757 else { 3758 t = parent.predicate("fhir:"+name,index > -1); 3759 } 3760 composeBackboneElement(t, "bodyLandmarkOrientation", name, element, index); 3761 for (int i = 0; i < element.getLandmarkDescription().size(); i++) { 3762 composeCodeableConcept(t, "BodyStructureIncludedStructureBodyLandmarkOrientationComponent", "landmarkDescription", element.getLandmarkDescription().get(i), i); 3763 } 3764 for (int i = 0; i < element.getClockFacePosition().size(); i++) { 3765 composeCodeableConcept(t, "BodyStructureIncludedStructureBodyLandmarkOrientationComponent", "clockFacePosition", element.getClockFacePosition().get(i), i); 3766 } 3767 for (int i = 0; i < element.getDistanceFromLandmark().size(); i++) { 3768 composeBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent(t, "BodyStructureIncludedStructureBodyLandmarkOrientationComponent", "distanceFromLandmark", element.getDistanceFromLandmark().get(i), i); 3769 } 3770 for (int i = 0; i < element.getSurfaceOrientation().size(); i++) { 3771 composeCodeableConcept(t, "BodyStructureIncludedStructureBodyLandmarkOrientationComponent", "surfaceOrientation", element.getSurfaceOrientation().get(i), i); 3772 } 3773 } 3774 3775 protected void composeBodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent(Complex parent, String parentType, String name, BodyStructure.BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent element, int index) { 3776 if (element == null) 3777 return; 3778 Complex t; 3779 if (Utilities.noString(parentType)) 3780 t = parent; 3781 else { 3782 t = parent.predicate("fhir:"+name,index > -1); 3783 } 3784 composeBackboneElement(t, "distanceFromLandmark", name, element, index); 3785 for (int i = 0; i < element.getDevice().size(); i++) { 3786 composeCodeableReference(t, "BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent", "device", element.getDevice().get(i), i); 3787 } 3788 for (int i = 0; i < element.getValue().size(); i++) { 3789 composeQuantity(t, "BodyStructureIncludedStructureBodyLandmarkOrientationDistanceFromLandmarkComponent", "value", element.getValue().get(i), i); 3790 } 3791 } 3792 3793 protected void composeBundle(Complex parent, String parentType, String name, Bundle element, int index) { 3794 if (element == null) 3795 return; 3796 Complex t; 3797 if (Utilities.noString(parentType)) 3798 t = parent; 3799 else { 3800 t = parent.predicate("fhir:"+name,index > -1); 3801 } 3802 composeResource(t, "Bundle", name, element, index); 3803 if (element.hasIdentifier()) { 3804 composeIdentifier(t, "Bundle", "identifier", element.getIdentifier(), -1); 3805 } 3806 if (element.hasTypeElement()) { 3807 composeEnum(t, "Bundle", "type", element.getTypeElement(), -1); 3808 } 3809 if (element.hasTimestampElement()) { 3810 composeInstant(t, "Bundle", "timestamp", element.getTimestampElement(), -1); 3811 } 3812 if (element.hasTotalElement()) { 3813 composeUnsignedInt(t, "Bundle", "total", element.getTotalElement(), -1); 3814 } 3815 for (int i = 0; i < element.getLink().size(); i++) { 3816 composeBundleLinkComponent(t, "Bundle", "link", element.getLink().get(i), i); 3817 } 3818 for (int i = 0; i < element.getEntry().size(); i++) { 3819 composeBundleEntryComponent(t, "Bundle", "entry", element.getEntry().get(i), i); 3820 } 3821 if (element.hasSignature()) { 3822 composeSignature(t, "Bundle", "signature", element.getSignature(), -1); 3823 } 3824 if (element.hasIssues()) { 3825 composeResource(t, "Bundle", "issues", element.getIssues(), -1); 3826 } 3827 } 3828 3829 protected void composeBundleLinkComponent(Complex parent, String parentType, String name, Bundle.BundleLinkComponent element, int index) { 3830 if (element == null) 3831 return; 3832 Complex t; 3833 if (Utilities.noString(parentType)) 3834 t = parent; 3835 else { 3836 t = parent.predicate("fhir:"+name,index > -1); 3837 } 3838 composeBackboneElement(t, "link", name, element, index); 3839 if (element.hasRelationElement()) { 3840 composeEnum(t, "BundleLinkComponent", "relation", element.getRelationElement(), -1); 3841 } 3842 if (element.hasUrlElement()) { 3843 composeUri(t, "BundleLinkComponent", "url", element.getUrlElement(), -1); 3844 } 3845 } 3846 3847 protected void composeBundleEntryComponent(Complex parent, String parentType, String name, Bundle.BundleEntryComponent element, int index) { 3848 if (element == null) 3849 return; 3850 Complex t; 3851 if (Utilities.noString(parentType)) 3852 t = parent; 3853 else { 3854 t = parent.predicate("fhir:"+name,index > -1); 3855 } 3856 composeBackboneElement(t, "entry", name, element, index); 3857 for (int i = 0; i < element.getLink().size(); i++) { 3858 composeBundleLinkComponent(t, "BundleEntryComponent", "link", element.getLink().get(i), i); 3859 } 3860 if (element.hasFullUrlElement()) { 3861 composeUri(t, "BundleEntryComponent", "fullUrl", element.getFullUrlElement(), -1); 3862 } 3863 if (element.hasResource()) { 3864 composeResource(t, "BundleEntryComponent", "resource", element.getResource(), -1); 3865 } 3866 if (element.hasSearch()) { 3867 composeBundleEntrySearchComponent(t, "BundleEntryComponent", "search", element.getSearch(), -1); 3868 } 3869 if (element.hasRequest()) { 3870 composeBundleEntryRequestComponent(t, "BundleEntryComponent", "request", element.getRequest(), -1); 3871 } 3872 if (element.hasResponse()) { 3873 composeBundleEntryResponseComponent(t, "BundleEntryComponent", "response", element.getResponse(), -1); 3874 } 3875 } 3876 3877 protected void composeBundleEntrySearchComponent(Complex parent, String parentType, String name, Bundle.BundleEntrySearchComponent element, int index) { 3878 if (element == null) 3879 return; 3880 Complex t; 3881 if (Utilities.noString(parentType)) 3882 t = parent; 3883 else { 3884 t = parent.predicate("fhir:"+name,index > -1); 3885 } 3886 composeBackboneElement(t, "search", name, element, index); 3887 if (element.hasModeElement()) { 3888 composeEnum(t, "BundleEntrySearchComponent", "mode", element.getModeElement(), -1); 3889 } 3890 if (element.hasScoreElement()) { 3891 composeDecimal(t, "BundleEntrySearchComponent", "score", element.getScoreElement(), -1); 3892 } 3893 } 3894 3895 protected void composeBundleEntryRequestComponent(Complex parent, String parentType, String name, Bundle.BundleEntryRequestComponent element, int index) { 3896 if (element == null) 3897 return; 3898 Complex t; 3899 if (Utilities.noString(parentType)) 3900 t = parent; 3901 else { 3902 t = parent.predicate("fhir:"+name,index > -1); 3903 } 3904 composeBackboneElement(t, "request", name, element, index); 3905 if (element.hasMethodElement()) { 3906 composeEnum(t, "BundleEntryRequestComponent", "method", element.getMethodElement(), -1); 3907 } 3908 if (element.hasUrlElement()) { 3909 composeUri(t, "BundleEntryRequestComponent", "url", element.getUrlElement(), -1); 3910 } 3911 if (element.hasIfNoneMatchElement()) { 3912 composeString(t, "BundleEntryRequestComponent", "ifNoneMatch", element.getIfNoneMatchElement(), -1); 3913 } 3914 if (element.hasIfModifiedSinceElement()) { 3915 composeInstant(t, "BundleEntryRequestComponent", "ifModifiedSince", element.getIfModifiedSinceElement(), -1); 3916 } 3917 if (element.hasIfMatchElement()) { 3918 composeString(t, "BundleEntryRequestComponent", "ifMatch", element.getIfMatchElement(), -1); 3919 } 3920 if (element.hasIfNoneExistElement()) { 3921 composeString(t, "BundleEntryRequestComponent", "ifNoneExist", element.getIfNoneExistElement(), -1); 3922 } 3923 } 3924 3925 protected void composeBundleEntryResponseComponent(Complex parent, String parentType, String name, Bundle.BundleEntryResponseComponent element, int index) { 3926 if (element == null) 3927 return; 3928 Complex t; 3929 if (Utilities.noString(parentType)) 3930 t = parent; 3931 else { 3932 t = parent.predicate("fhir:"+name,index > -1); 3933 } 3934 composeBackboneElement(t, "response", name, element, index); 3935 if (element.hasStatusElement()) { 3936 composeString(t, "BundleEntryResponseComponent", "status", element.getStatusElement(), -1); 3937 } 3938 if (element.hasLocationElement()) { 3939 composeUri(t, "BundleEntryResponseComponent", "location", element.getLocationElement(), -1); 3940 } 3941 if (element.hasEtagElement()) { 3942 composeString(t, "BundleEntryResponseComponent", "etag", element.getEtagElement(), -1); 3943 } 3944 if (element.hasLastModifiedElement()) { 3945 composeInstant(t, "BundleEntryResponseComponent", "lastModified", element.getLastModifiedElement(), -1); 3946 } 3947 if (element.hasOutcome()) { 3948 composeResource(t, "BundleEntryResponseComponent", "outcome", element.getOutcome(), -1); 3949 } 3950 } 3951 3952 protected void composeCapabilityStatement(Complex parent, String parentType, String name, CapabilityStatement element, int index) { 3953 if (element == null) 3954 return; 3955 Complex t; 3956 if (Utilities.noString(parentType)) 3957 t = parent; 3958 else { 3959 t = parent.predicate("fhir:"+name,index > -1); 3960 } 3961 composeCanonicalResource(t, "CapabilityStatement", name, element, index); 3962 if (element.hasUrlElement()) { 3963 composeUri(t, "CapabilityStatement", "url", element.getUrlElement(), -1); 3964 } 3965 for (int i = 0; i < element.getIdentifier().size(); i++) { 3966 composeIdentifier(t, "CapabilityStatement", "identifier", element.getIdentifier().get(i), i); 3967 } 3968 if (element.hasVersionElement()) { 3969 composeString(t, "CapabilityStatement", "version", element.getVersionElement(), -1); 3970 } 3971 if (element.hasVersionAlgorithm()) { 3972 composeType(t, "CapabilityStatement", "versionAlgorithm", element.getVersionAlgorithm(), -1); 3973 } 3974 if (element.hasNameElement()) { 3975 composeString(t, "CapabilityStatement", "name", element.getNameElement(), -1); 3976 } 3977 if (element.hasTitleElement()) { 3978 composeString(t, "CapabilityStatement", "title", element.getTitleElement(), -1); 3979 } 3980 if (element.hasStatusElement()) { 3981 composeEnum(t, "CapabilityStatement", "status", element.getStatusElement(), -1); 3982 } 3983 if (element.hasExperimentalElement()) { 3984 composeBoolean(t, "CapabilityStatement", "experimental", element.getExperimentalElement(), -1); 3985 } 3986 if (element.hasDateElement()) { 3987 composeDateTime(t, "CapabilityStatement", "date", element.getDateElement(), -1); 3988 } 3989 if (element.hasPublisherElement()) { 3990 composeString(t, "CapabilityStatement", "publisher", element.getPublisherElement(), -1); 3991 } 3992 for (int i = 0; i < element.getContact().size(); i++) { 3993 composeContactDetail(t, "CapabilityStatement", "contact", element.getContact().get(i), i); 3994 } 3995 if (element.hasDescriptionElement()) { 3996 composeMarkdown(t, "CapabilityStatement", "description", element.getDescriptionElement(), -1); 3997 } 3998 for (int i = 0; i < element.getUseContext().size(); i++) { 3999 composeUsageContext(t, "CapabilityStatement", "useContext", element.getUseContext().get(i), i); 4000 } 4001 for (int i = 0; i < element.getJurisdiction().size(); i++) { 4002 composeCodeableConcept(t, "CapabilityStatement", "jurisdiction", element.getJurisdiction().get(i), i); 4003 } 4004 if (element.hasPurposeElement()) { 4005 composeMarkdown(t, "CapabilityStatement", "purpose", element.getPurposeElement(), -1); 4006 } 4007 if (element.hasCopyrightElement()) { 4008 composeMarkdown(t, "CapabilityStatement", "copyright", element.getCopyrightElement(), -1); 4009 } 4010 if (element.hasCopyrightLabelElement()) { 4011 composeString(t, "CapabilityStatement", "copyrightLabel", element.getCopyrightLabelElement(), -1); 4012 } 4013 if (element.hasKindElement()) { 4014 composeEnum(t, "CapabilityStatement", "kind", element.getKindElement(), -1); 4015 } 4016 for (int i = 0; i < element.getInstantiates().size(); i++) { 4017 composeCanonical(t, "CapabilityStatement", "instantiates", element.getInstantiates().get(i), i); 4018 } 4019 for (int i = 0; i < element.getImports().size(); i++) { 4020 composeCanonical(t, "CapabilityStatement", "imports", element.getImports().get(i), i); 4021 } 4022 if (element.hasSoftware()) { 4023 composeCapabilityStatementSoftwareComponent(t, "CapabilityStatement", "software", element.getSoftware(), -1); 4024 } 4025 if (element.hasImplementation()) { 4026 composeCapabilityStatementImplementationComponent(t, "CapabilityStatement", "implementation", element.getImplementation(), -1); 4027 } 4028 if (element.hasFhirVersionElement()) { 4029 composeEnum(t, "CapabilityStatement", "fhirVersion", element.getFhirVersionElement(), -1); 4030 } 4031 for (int i = 0; i < element.getFormat().size(); i++) { 4032 composeCode(t, "CapabilityStatement", "format", element.getFormat().get(i), i); 4033 } 4034 for (int i = 0; i < element.getPatchFormat().size(); i++) { 4035 composeCode(t, "CapabilityStatement", "patchFormat", element.getPatchFormat().get(i), i); 4036 } 4037 for (int i = 0; i < element.getAcceptLanguage().size(); i++) { 4038 composeCode(t, "CapabilityStatement", "acceptLanguage", element.getAcceptLanguage().get(i), i); 4039 } 4040 for (int i = 0; i < element.getImplementationGuide().size(); i++) { 4041 composeCanonical(t, "CapabilityStatement", "implementationGuide", element.getImplementationGuide().get(i), i); 4042 } 4043 for (int i = 0; i < element.getRest().size(); i++) { 4044 composeCapabilityStatementRestComponent(t, "CapabilityStatement", "rest", element.getRest().get(i), i); 4045 } 4046 for (int i = 0; i < element.getMessaging().size(); i++) { 4047 composeCapabilityStatementMessagingComponent(t, "CapabilityStatement", "messaging", element.getMessaging().get(i), i); 4048 } 4049 for (int i = 0; i < element.getDocument().size(); i++) { 4050 composeCapabilityStatementDocumentComponent(t, "CapabilityStatement", "document", element.getDocument().get(i), i); 4051 } 4052 } 4053 4054 protected void composeCapabilityStatementSoftwareComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementSoftwareComponent element, int index) { 4055 if (element == null) 4056 return; 4057 Complex t; 4058 if (Utilities.noString(parentType)) 4059 t = parent; 4060 else { 4061 t = parent.predicate("fhir:"+name,index > -1); 4062 } 4063 composeBackboneElement(t, "software", name, element, index); 4064 if (element.hasNameElement()) { 4065 composeString(t, "CapabilityStatementSoftwareComponent", "name", element.getNameElement(), -1); 4066 } 4067 if (element.hasVersionElement()) { 4068 composeString(t, "CapabilityStatementSoftwareComponent", "version", element.getVersionElement(), -1); 4069 } 4070 if (element.hasReleaseDateElement()) { 4071 composeDateTime(t, "CapabilityStatementSoftwareComponent", "releaseDate", element.getReleaseDateElement(), -1); 4072 } 4073 } 4074 4075 protected void composeCapabilityStatementImplementationComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementImplementationComponent element, int index) { 4076 if (element == null) 4077 return; 4078 Complex t; 4079 if (Utilities.noString(parentType)) 4080 t = parent; 4081 else { 4082 t = parent.predicate("fhir:"+name,index > -1); 4083 } 4084 composeBackboneElement(t, "implementation", name, element, index); 4085 if (element.hasDescriptionElement()) { 4086 composeMarkdown(t, "CapabilityStatementImplementationComponent", "description", element.getDescriptionElement(), -1); 4087 } 4088 if (element.hasUrlElement()) { 4089 composeUrl(t, "CapabilityStatementImplementationComponent", "url", element.getUrlElement(), -1); 4090 } 4091 if (element.hasCustodian()) { 4092 composeReference(t, "CapabilityStatementImplementationComponent", "custodian", element.getCustodian(), -1); 4093 } 4094 } 4095 4096 protected void composeCapabilityStatementRestComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementRestComponent element, int index) { 4097 if (element == null) 4098 return; 4099 Complex t; 4100 if (Utilities.noString(parentType)) 4101 t = parent; 4102 else { 4103 t = parent.predicate("fhir:"+name,index > -1); 4104 } 4105 composeBackboneElement(t, "rest", name, element, index); 4106 if (element.hasModeElement()) { 4107 composeEnum(t, "CapabilityStatementRestComponent", "mode", element.getModeElement(), -1); 4108 } 4109 if (element.hasDocumentationElement()) { 4110 composeMarkdown(t, "CapabilityStatementRestComponent", "documentation", element.getDocumentationElement(), -1); 4111 } 4112 if (element.hasSecurity()) { 4113 composeCapabilityStatementRestSecurityComponent(t, "CapabilityStatementRestComponent", "security", element.getSecurity(), -1); 4114 } 4115 for (int i = 0; i < element.getResource().size(); i++) { 4116 composeCapabilityStatementRestResourceComponent(t, "CapabilityStatementRestComponent", "resource", element.getResource().get(i), i); 4117 } 4118 for (int i = 0; i < element.getInteraction().size(); i++) { 4119 composeCapabilityStatementSystemInteractionComponent(t, "CapabilityStatementRestComponent", "interaction", element.getInteraction().get(i), i); 4120 } 4121 for (int i = 0; i < element.getSearchParam().size(); i++) { 4122 composeCapabilityStatementRestResourceSearchParamComponent(t, "CapabilityStatementRestComponent", "searchParam", element.getSearchParam().get(i), i); 4123 } 4124 for (int i = 0; i < element.getOperation().size(); i++) { 4125 composeCapabilityStatementRestResourceOperationComponent(t, "CapabilityStatementRestComponent", "operation", element.getOperation().get(i), i); 4126 } 4127 for (int i = 0; i < element.getCompartment().size(); i++) { 4128 composeCanonical(t, "CapabilityStatementRestComponent", "compartment", element.getCompartment().get(i), i); 4129 } 4130 } 4131 4132 protected void composeCapabilityStatementRestSecurityComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementRestSecurityComponent element, int index) { 4133 if (element == null) 4134 return; 4135 Complex t; 4136 if (Utilities.noString(parentType)) 4137 t = parent; 4138 else { 4139 t = parent.predicate("fhir:"+name,index > -1); 4140 } 4141 composeBackboneElement(t, "security", name, element, index); 4142 if (element.hasCorsElement()) { 4143 composeBoolean(t, "CapabilityStatementRestSecurityComponent", "cors", element.getCorsElement(), -1); 4144 } 4145 for (int i = 0; i < element.getService().size(); i++) { 4146 composeCodeableConcept(t, "CapabilityStatementRestSecurityComponent", "service", element.getService().get(i), i); 4147 } 4148 if (element.hasDescriptionElement()) { 4149 composeMarkdown(t, "CapabilityStatementRestSecurityComponent", "description", element.getDescriptionElement(), -1); 4150 } 4151 } 4152 4153 protected void composeCapabilityStatementRestResourceComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementRestResourceComponent element, int index) { 4154 if (element == null) 4155 return; 4156 Complex t; 4157 if (Utilities.noString(parentType)) 4158 t = parent; 4159 else { 4160 t = parent.predicate("fhir:"+name,index > -1); 4161 } 4162 composeBackboneElement(t, "resource", name, element, index); 4163 if (element.hasTypeElement()) { 4164 composeCode(t, "CapabilityStatementRestResourceComponent", "type", element.getTypeElement(), -1); 4165 } 4166 if (element.hasProfileElement()) { 4167 composeCanonical(t, "CapabilityStatementRestResourceComponent", "profile", element.getProfileElement(), -1); 4168 } 4169 for (int i = 0; i < element.getSupportedProfile().size(); i++) { 4170 composeCanonical(t, "CapabilityStatementRestResourceComponent", "supportedProfile", element.getSupportedProfile().get(i), i); 4171 } 4172 if (element.hasDocumentationElement()) { 4173 composeMarkdown(t, "CapabilityStatementRestResourceComponent", "documentation", element.getDocumentationElement(), -1); 4174 } 4175 for (int i = 0; i < element.getInteraction().size(); i++) { 4176 composeCapabilityStatementResourceInteractionComponent(t, "CapabilityStatementRestResourceComponent", "interaction", element.getInteraction().get(i), i); 4177 } 4178 if (element.hasVersioningElement()) { 4179 composeEnum(t, "CapabilityStatementRestResourceComponent", "versioning", element.getVersioningElement(), -1); 4180 } 4181 if (element.hasReadHistoryElement()) { 4182 composeBoolean(t, "CapabilityStatementRestResourceComponent", "readHistory", element.getReadHistoryElement(), -1); 4183 } 4184 if (element.hasUpdateCreateElement()) { 4185 composeBoolean(t, "CapabilityStatementRestResourceComponent", "updateCreate", element.getUpdateCreateElement(), -1); 4186 } 4187 if (element.hasConditionalCreateElement()) { 4188 composeBoolean(t, "CapabilityStatementRestResourceComponent", "conditionalCreate", element.getConditionalCreateElement(), -1); 4189 } 4190 if (element.hasConditionalReadElement()) { 4191 composeEnum(t, "CapabilityStatementRestResourceComponent", "conditionalRead", element.getConditionalReadElement(), -1); 4192 } 4193 if (element.hasConditionalUpdateElement()) { 4194 composeBoolean(t, "CapabilityStatementRestResourceComponent", "conditionalUpdate", element.getConditionalUpdateElement(), -1); 4195 } 4196 if (element.hasConditionalPatchElement()) { 4197 composeBoolean(t, "CapabilityStatementRestResourceComponent", "conditionalPatch", element.getConditionalPatchElement(), -1); 4198 } 4199 if (element.hasConditionalDeleteElement()) { 4200 composeEnum(t, "CapabilityStatementRestResourceComponent", "conditionalDelete", element.getConditionalDeleteElement(), -1); 4201 } 4202 for (int i = 0; i < element.getReferencePolicy().size(); i++) { 4203 composeEnum(t, "CapabilityStatementRestResourceComponent", "referencePolicy", element.getReferencePolicy().get(i), i); 4204 } 4205 for (int i = 0; i < element.getSearchInclude().size(); i++) { 4206 composeString(t, "CapabilityStatementRestResourceComponent", "searchInclude", element.getSearchInclude().get(i), i); 4207 } 4208 for (int i = 0; i < element.getSearchRevInclude().size(); i++) { 4209 composeString(t, "CapabilityStatementRestResourceComponent", "searchRevInclude", element.getSearchRevInclude().get(i), i); 4210 } 4211 for (int i = 0; i < element.getSearchParam().size(); i++) { 4212 composeCapabilityStatementRestResourceSearchParamComponent(t, "CapabilityStatementRestResourceComponent", "searchParam", element.getSearchParam().get(i), i); 4213 } 4214 for (int i = 0; i < element.getOperation().size(); i++) { 4215 composeCapabilityStatementRestResourceOperationComponent(t, "CapabilityStatementRestResourceComponent", "operation", element.getOperation().get(i), i); 4216 } 4217 } 4218 4219 protected void composeCapabilityStatementResourceInteractionComponent(Complex parent, String parentType, String name, CapabilityStatement.ResourceInteractionComponent element, int index) { 4220 if (element == null) 4221 return; 4222 Complex t; 4223 if (Utilities.noString(parentType)) 4224 t = parent; 4225 else { 4226 t = parent.predicate("fhir:"+name,index > -1); 4227 } 4228 composeBackboneElement(t, "interaction", name, element, index); 4229 if (element.hasCodeElement()) { 4230 composeEnum(t, "ResourceInteractionComponent", "code", element.getCodeElement(), -1); 4231 } 4232 if (element.hasDocumentationElement()) { 4233 composeMarkdown(t, "ResourceInteractionComponent", "documentation", element.getDocumentationElement(), -1); 4234 } 4235 } 4236 4237 protected void composeCapabilityStatementRestResourceSearchParamComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent element, int index) { 4238 if (element == null) 4239 return; 4240 Complex t; 4241 if (Utilities.noString(parentType)) 4242 t = parent; 4243 else { 4244 t = parent.predicate("fhir:"+name,index > -1); 4245 } 4246 composeBackboneElement(t, "searchParam", name, element, index); 4247 if (element.hasNameElement()) { 4248 composeString(t, "CapabilityStatementRestResourceSearchParamComponent", "name", element.getNameElement(), -1); 4249 } 4250 if (element.hasDefinitionElement()) { 4251 composeCanonical(t, "CapabilityStatementRestResourceSearchParamComponent", "definition", element.getDefinitionElement(), -1); 4252 } 4253 if (element.hasTypeElement()) { 4254 composeEnum(t, "CapabilityStatementRestResourceSearchParamComponent", "type", element.getTypeElement(), -1); 4255 } 4256 if (element.hasDocumentationElement()) { 4257 composeMarkdown(t, "CapabilityStatementRestResourceSearchParamComponent", "documentation", element.getDocumentationElement(), -1); 4258 } 4259 } 4260 4261 protected void composeCapabilityStatementRestResourceOperationComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementRestResourceOperationComponent element, int index) { 4262 if (element == null) 4263 return; 4264 Complex t; 4265 if (Utilities.noString(parentType)) 4266 t = parent; 4267 else { 4268 t = parent.predicate("fhir:"+name,index > -1); 4269 } 4270 composeBackboneElement(t, "operation", name, element, index); 4271 if (element.hasNameElement()) { 4272 composeString(t, "CapabilityStatementRestResourceOperationComponent", "name", element.getNameElement(), -1); 4273 } 4274 if (element.hasDefinitionElement()) { 4275 composeCanonical(t, "CapabilityStatementRestResourceOperationComponent", "definition", element.getDefinitionElement(), -1); 4276 } 4277 if (element.hasDocumentationElement()) { 4278 composeMarkdown(t, "CapabilityStatementRestResourceOperationComponent", "documentation", element.getDocumentationElement(), -1); 4279 } 4280 } 4281 4282 protected void composeCapabilityStatementSystemInteractionComponent(Complex parent, String parentType, String name, CapabilityStatement.SystemInteractionComponent element, int index) { 4283 if (element == null) 4284 return; 4285 Complex t; 4286 if (Utilities.noString(parentType)) 4287 t = parent; 4288 else { 4289 t = parent.predicate("fhir:"+name,index > -1); 4290 } 4291 composeBackboneElement(t, "interaction", name, element, index); 4292 if (element.hasCodeElement()) { 4293 composeEnum(t, "SystemInteractionComponent", "code", element.getCodeElement(), -1); 4294 } 4295 if (element.hasDocumentationElement()) { 4296 composeMarkdown(t, "SystemInteractionComponent", "documentation", element.getDocumentationElement(), -1); 4297 } 4298 } 4299 4300 protected void composeCapabilityStatementMessagingComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementMessagingComponent element, int index) { 4301 if (element == null) 4302 return; 4303 Complex t; 4304 if (Utilities.noString(parentType)) 4305 t = parent; 4306 else { 4307 t = parent.predicate("fhir:"+name,index > -1); 4308 } 4309 composeBackboneElement(t, "messaging", name, element, index); 4310 for (int i = 0; i < element.getEndpoint().size(); i++) { 4311 composeCapabilityStatementMessagingEndpointComponent(t, "CapabilityStatementMessagingComponent", "endpoint", element.getEndpoint().get(i), i); 4312 } 4313 if (element.hasReliableCacheElement()) { 4314 composeUnsignedInt(t, "CapabilityStatementMessagingComponent", "reliableCache", element.getReliableCacheElement(), -1); 4315 } 4316 if (element.hasDocumentationElement()) { 4317 composeMarkdown(t, "CapabilityStatementMessagingComponent", "documentation", element.getDocumentationElement(), -1); 4318 } 4319 for (int i = 0; i < element.getSupportedMessage().size(); i++) { 4320 composeCapabilityStatementMessagingSupportedMessageComponent(t, "CapabilityStatementMessagingComponent", "supportedMessage", element.getSupportedMessage().get(i), i); 4321 } 4322 } 4323 4324 protected void composeCapabilityStatementMessagingEndpointComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementMessagingEndpointComponent element, int index) { 4325 if (element == null) 4326 return; 4327 Complex t; 4328 if (Utilities.noString(parentType)) 4329 t = parent; 4330 else { 4331 t = parent.predicate("fhir:"+name,index > -1); 4332 } 4333 composeBackboneElement(t, "endpoint", name, element, index); 4334 if (element.hasProtocol()) { 4335 composeCoding(t, "CapabilityStatementMessagingEndpointComponent", "protocol", element.getProtocol(), -1); 4336 } 4337 if (element.hasAddressElement()) { 4338 composeUrl(t, "CapabilityStatementMessagingEndpointComponent", "address", element.getAddressElement(), -1); 4339 } 4340 } 4341 4342 protected void composeCapabilityStatementMessagingSupportedMessageComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent element, int index) { 4343 if (element == null) 4344 return; 4345 Complex t; 4346 if (Utilities.noString(parentType)) 4347 t = parent; 4348 else { 4349 t = parent.predicate("fhir:"+name,index > -1); 4350 } 4351 composeBackboneElement(t, "supportedMessage", name, element, index); 4352 if (element.hasModeElement()) { 4353 composeEnum(t, "CapabilityStatementMessagingSupportedMessageComponent", "mode", element.getModeElement(), -1); 4354 } 4355 if (element.hasDefinitionElement()) { 4356 composeCanonical(t, "CapabilityStatementMessagingSupportedMessageComponent", "definition", element.getDefinitionElement(), -1); 4357 } 4358 } 4359 4360 protected void composeCapabilityStatementDocumentComponent(Complex parent, String parentType, String name, CapabilityStatement.CapabilityStatementDocumentComponent element, int index) { 4361 if (element == null) 4362 return; 4363 Complex t; 4364 if (Utilities.noString(parentType)) 4365 t = parent; 4366 else { 4367 t = parent.predicate("fhir:"+name,index > -1); 4368 } 4369 composeBackboneElement(t, "document", name, element, index); 4370 if (element.hasModeElement()) { 4371 composeEnum(t, "CapabilityStatementDocumentComponent", "mode", element.getModeElement(), -1); 4372 } 4373 if (element.hasDocumentationElement()) { 4374 composeMarkdown(t, "CapabilityStatementDocumentComponent", "documentation", element.getDocumentationElement(), -1); 4375 } 4376 if (element.hasProfileElement()) { 4377 composeCanonical(t, "CapabilityStatementDocumentComponent", "profile", element.getProfileElement(), -1); 4378 } 4379 } 4380 4381 protected void composeCarePlan(Complex parent, String parentType, String name, CarePlan element, int index) { 4382 if (element == null) 4383 return; 4384 Complex t; 4385 if (Utilities.noString(parentType)) 4386 t = parent; 4387 else { 4388 t = parent.predicate("fhir:"+name,index > -1); 4389 } 4390 composeDomainResource(t, "CarePlan", name, element, index); 4391 for (int i = 0; i < element.getIdentifier().size(); i++) { 4392 composeIdentifier(t, "CarePlan", "identifier", element.getIdentifier().get(i), i); 4393 } 4394 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { 4395 composeCanonical(t, "CarePlan", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 4396 } 4397 for (int i = 0; i < element.getInstantiatesUri().size(); i++) { 4398 composeUri(t, "CarePlan", "instantiatesUri", element.getInstantiatesUri().get(i), i); 4399 } 4400 for (int i = 0; i < element.getBasedOn().size(); i++) { 4401 composeReference(t, "CarePlan", "basedOn", element.getBasedOn().get(i), i); 4402 } 4403 for (int i = 0; i < element.getReplaces().size(); i++) { 4404 composeReference(t, "CarePlan", "replaces", element.getReplaces().get(i), i); 4405 } 4406 for (int i = 0; i < element.getPartOf().size(); i++) { 4407 composeReference(t, "CarePlan", "partOf", element.getPartOf().get(i), i); 4408 } 4409 if (element.hasStatusElement()) { 4410 composeEnum(t, "CarePlan", "status", element.getStatusElement(), -1); 4411 } 4412 if (element.hasIntentElement()) { 4413 composeEnum(t, "CarePlan", "intent", element.getIntentElement(), -1); 4414 } 4415 for (int i = 0; i < element.getCategory().size(); i++) { 4416 composeCodeableConcept(t, "CarePlan", "category", element.getCategory().get(i), i); 4417 } 4418 if (element.hasTitleElement()) { 4419 composeString(t, "CarePlan", "title", element.getTitleElement(), -1); 4420 } 4421 if (element.hasDescriptionElement()) { 4422 composeString(t, "CarePlan", "description", element.getDescriptionElement(), -1); 4423 } 4424 if (element.hasSubject()) { 4425 composeReference(t, "CarePlan", "subject", element.getSubject(), -1); 4426 } 4427 if (element.hasEncounter()) { 4428 composeReference(t, "CarePlan", "encounter", element.getEncounter(), -1); 4429 } 4430 if (element.hasPeriod()) { 4431 composePeriod(t, "CarePlan", "period", element.getPeriod(), -1); 4432 } 4433 if (element.hasCreatedElement()) { 4434 composeDateTime(t, "CarePlan", "created", element.getCreatedElement(), -1); 4435 } 4436 if (element.hasCustodian()) { 4437 composeReference(t, "CarePlan", "custodian", element.getCustodian(), -1); 4438 } 4439 for (int i = 0; i < element.getContributor().size(); i++) { 4440 composeReference(t, "CarePlan", "contributor", element.getContributor().get(i), i); 4441 } 4442 for (int i = 0; i < element.getCareTeam().size(); i++) { 4443 composeReference(t, "CarePlan", "careTeam", element.getCareTeam().get(i), i); 4444 } 4445 for (int i = 0; i < element.getAddresses().size(); i++) { 4446 composeCodeableReference(t, "CarePlan", "addresses", element.getAddresses().get(i), i); 4447 } 4448 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 4449 composeReference(t, "CarePlan", "supportingInfo", element.getSupportingInfo().get(i), i); 4450 } 4451 for (int i = 0; i < element.getGoal().size(); i++) { 4452 composeReference(t, "CarePlan", "goal", element.getGoal().get(i), i); 4453 } 4454 for (int i = 0; i < element.getActivity().size(); i++) { 4455 composeCarePlanActivityComponent(t, "CarePlan", "activity", element.getActivity().get(i), i); 4456 } 4457 for (int i = 0; i < element.getNote().size(); i++) { 4458 composeAnnotation(t, "CarePlan", "note", element.getNote().get(i), i); 4459 } 4460 } 4461 4462 protected void composeCarePlanActivityComponent(Complex parent, String parentType, String name, CarePlan.CarePlanActivityComponent element, int index) { 4463 if (element == null) 4464 return; 4465 Complex t; 4466 if (Utilities.noString(parentType)) 4467 t = parent; 4468 else { 4469 t = parent.predicate("fhir:"+name,index > -1); 4470 } 4471 composeBackboneElement(t, "activity", name, element, index); 4472 for (int i = 0; i < element.getPerformedActivity().size(); i++) { 4473 composeCodeableReference(t, "CarePlanActivityComponent", "performedActivity", element.getPerformedActivity().get(i), i); 4474 } 4475 for (int i = 0; i < element.getProgress().size(); i++) { 4476 composeAnnotation(t, "CarePlanActivityComponent", "progress", element.getProgress().get(i), i); 4477 } 4478 if (element.hasPlannedActivityReference()) { 4479 composeReference(t, "CarePlanActivityComponent", "plannedActivityReference", element.getPlannedActivityReference(), -1); 4480 } 4481 } 4482 4483 protected void composeCareTeam(Complex parent, String parentType, String name, CareTeam element, int index) { 4484 if (element == null) 4485 return; 4486 Complex t; 4487 if (Utilities.noString(parentType)) 4488 t = parent; 4489 else { 4490 t = parent.predicate("fhir:"+name,index > -1); 4491 } 4492 composeDomainResource(t, "CareTeam", name, element, index); 4493 for (int i = 0; i < element.getIdentifier().size(); i++) { 4494 composeIdentifier(t, "CareTeam", "identifier", element.getIdentifier().get(i), i); 4495 } 4496 if (element.hasStatusElement()) { 4497 composeEnum(t, "CareTeam", "status", element.getStatusElement(), -1); 4498 } 4499 for (int i = 0; i < element.getCategory().size(); i++) { 4500 composeCodeableConcept(t, "CareTeam", "category", element.getCategory().get(i), i); 4501 } 4502 if (element.hasNameElement()) { 4503 composeString(t, "CareTeam", "name", element.getNameElement(), -1); 4504 } 4505 if (element.hasSubject()) { 4506 composeReference(t, "CareTeam", "subject", element.getSubject(), -1); 4507 } 4508 if (element.hasPeriod()) { 4509 composePeriod(t, "CareTeam", "period", element.getPeriod(), -1); 4510 } 4511 for (int i = 0; i < element.getParticipant().size(); i++) { 4512 composeCareTeamParticipantComponent(t, "CareTeam", "participant", element.getParticipant().get(i), i); 4513 } 4514 for (int i = 0; i < element.getReason().size(); i++) { 4515 composeCodeableReference(t, "CareTeam", "reason", element.getReason().get(i), i); 4516 } 4517 for (int i = 0; i < element.getManagingOrganization().size(); i++) { 4518 composeReference(t, "CareTeam", "managingOrganization", element.getManagingOrganization().get(i), i); 4519 } 4520 for (int i = 0; i < element.getTelecom().size(); i++) { 4521 composeContactPoint(t, "CareTeam", "telecom", element.getTelecom().get(i), i); 4522 } 4523 for (int i = 0; i < element.getNote().size(); i++) { 4524 composeAnnotation(t, "CareTeam", "note", element.getNote().get(i), i); 4525 } 4526 } 4527 4528 protected void composeCareTeamParticipantComponent(Complex parent, String parentType, String name, CareTeam.CareTeamParticipantComponent element, int index) { 4529 if (element == null) 4530 return; 4531 Complex t; 4532 if (Utilities.noString(parentType)) 4533 t = parent; 4534 else { 4535 t = parent.predicate("fhir:"+name,index > -1); 4536 } 4537 composeBackboneElement(t, "participant", name, element, index); 4538 if (element.hasRole()) { 4539 composeCodeableConcept(t, "CareTeamParticipantComponent", "role", element.getRole(), -1); 4540 } 4541 if (element.hasMember()) { 4542 composeReference(t, "CareTeamParticipantComponent", "member", element.getMember(), -1); 4543 } 4544 if (element.hasOnBehalfOf()) { 4545 composeReference(t, "CareTeamParticipantComponent", "onBehalfOf", element.getOnBehalfOf(), -1); 4546 } 4547 if (element.hasCoverage()) { 4548 composeType(t, "CareTeamParticipantComponent", "coverage", element.getCoverage(), -1); 4549 } 4550 } 4551 4552 protected void composeChargeItem(Complex parent, String parentType, String name, ChargeItem element, int index) { 4553 if (element == null) 4554 return; 4555 Complex t; 4556 if (Utilities.noString(parentType)) 4557 t = parent; 4558 else { 4559 t = parent.predicate("fhir:"+name,index > -1); 4560 } 4561 composeDomainResource(t, "ChargeItem", name, element, index); 4562 for (int i = 0; i < element.getIdentifier().size(); i++) { 4563 composeIdentifier(t, "ChargeItem", "identifier", element.getIdentifier().get(i), i); 4564 } 4565 for (int i = 0; i < element.getDefinitionUri().size(); i++) { 4566 composeUri(t, "ChargeItem", "definitionUri", element.getDefinitionUri().get(i), i); 4567 } 4568 for (int i = 0; i < element.getDefinitionCanonical().size(); i++) { 4569 composeCanonical(t, "ChargeItem", "definitionCanonical", element.getDefinitionCanonical().get(i), i); 4570 } 4571 if (element.hasStatusElement()) { 4572 composeEnum(t, "ChargeItem", "status", element.getStatusElement(), -1); 4573 } 4574 for (int i = 0; i < element.getPartOf().size(); i++) { 4575 composeReference(t, "ChargeItem", "partOf", element.getPartOf().get(i), i); 4576 } 4577 if (element.hasCode()) { 4578 composeCodeableConcept(t, "ChargeItem", "code", element.getCode(), -1); 4579 } 4580 if (element.hasSubject()) { 4581 composeReference(t, "ChargeItem", "subject", element.getSubject(), -1); 4582 } 4583 if (element.hasEncounter()) { 4584 composeReference(t, "ChargeItem", "encounter", element.getEncounter(), -1); 4585 } 4586 if (element.hasOccurrence()) { 4587 composeType(t, "ChargeItem", "occurrence", element.getOccurrence(), -1); 4588 } 4589 for (int i = 0; i < element.getPerformer().size(); i++) { 4590 composeChargeItemPerformerComponent(t, "ChargeItem", "performer", element.getPerformer().get(i), i); 4591 } 4592 if (element.hasPerformingOrganization()) { 4593 composeReference(t, "ChargeItem", "performingOrganization", element.getPerformingOrganization(), -1); 4594 } 4595 if (element.hasRequestingOrganization()) { 4596 composeReference(t, "ChargeItem", "requestingOrganization", element.getRequestingOrganization(), -1); 4597 } 4598 if (element.hasCostCenter()) { 4599 composeReference(t, "ChargeItem", "costCenter", element.getCostCenter(), -1); 4600 } 4601 if (element.hasQuantity()) { 4602 composeQuantity(t, "ChargeItem", "quantity", element.getQuantity(), -1); 4603 } 4604 for (int i = 0; i < element.getBodysite().size(); i++) { 4605 composeCodeableConcept(t, "ChargeItem", "bodysite", element.getBodysite().get(i), i); 4606 } 4607 if (element.hasUnitPriceComponent()) { 4608 composeMonetaryComponent(t, "ChargeItem", "unitPriceComponent", element.getUnitPriceComponent(), -1); 4609 } 4610 if (element.hasTotalPriceComponent()) { 4611 composeMonetaryComponent(t, "ChargeItem", "totalPriceComponent", element.getTotalPriceComponent(), -1); 4612 } 4613 if (element.hasOverrideReason()) { 4614 composeCodeableConcept(t, "ChargeItem", "overrideReason", element.getOverrideReason(), -1); 4615 } 4616 if (element.hasEnterer()) { 4617 composeReference(t, "ChargeItem", "enterer", element.getEnterer(), -1); 4618 } 4619 if (element.hasEnteredDateElement()) { 4620 composeDateTime(t, "ChargeItem", "enteredDate", element.getEnteredDateElement(), -1); 4621 } 4622 for (int i = 0; i < element.getReason().size(); i++) { 4623 composeCodeableConcept(t, "ChargeItem", "reason", element.getReason().get(i), i); 4624 } 4625 for (int i = 0; i < element.getService().size(); i++) { 4626 composeCodeableReference(t, "ChargeItem", "service", element.getService().get(i), i); 4627 } 4628 for (int i = 0; i < element.getProduct().size(); i++) { 4629 composeCodeableReference(t, "ChargeItem", "product", element.getProduct().get(i), i); 4630 } 4631 for (int i = 0; i < element.getAccount().size(); i++) { 4632 composeReference(t, "ChargeItem", "account", element.getAccount().get(i), i); 4633 } 4634 for (int i = 0; i < element.getNote().size(); i++) { 4635 composeAnnotation(t, "ChargeItem", "note", element.getNote().get(i), i); 4636 } 4637 for (int i = 0; i < element.getSupportingInformation().size(); i++) { 4638 composeReference(t, "ChargeItem", "supportingInformation", element.getSupportingInformation().get(i), i); 4639 } 4640 } 4641 4642 protected void composeChargeItemPerformerComponent(Complex parent, String parentType, String name, ChargeItem.ChargeItemPerformerComponent element, int index) { 4643 if (element == null) 4644 return; 4645 Complex t; 4646 if (Utilities.noString(parentType)) 4647 t = parent; 4648 else { 4649 t = parent.predicate("fhir:"+name,index > -1); 4650 } 4651 composeBackboneElement(t, "performer", name, element, index); 4652 if (element.hasFunction()) { 4653 composeCodeableConcept(t, "ChargeItemPerformerComponent", "function", element.getFunction(), -1); 4654 } 4655 if (element.hasActor()) { 4656 composeReference(t, "ChargeItemPerformerComponent", "actor", element.getActor(), -1); 4657 } 4658 } 4659 4660 protected void composeChargeItemDefinition(Complex parent, String parentType, String name, ChargeItemDefinition element, int index) { 4661 if (element == null) 4662 return; 4663 Complex t; 4664 if (Utilities.noString(parentType)) 4665 t = parent; 4666 else { 4667 t = parent.predicate("fhir:"+name,index > -1); 4668 } 4669 composeMetadataResource(t, "ChargeItemDefinition", name, element, index); 4670 if (element.hasUrlElement()) { 4671 composeUri(t, "ChargeItemDefinition", "url", element.getUrlElement(), -1); 4672 } 4673 for (int i = 0; i < element.getIdentifier().size(); i++) { 4674 composeIdentifier(t, "ChargeItemDefinition", "identifier", element.getIdentifier().get(i), i); 4675 } 4676 if (element.hasVersionElement()) { 4677 composeString(t, "ChargeItemDefinition", "version", element.getVersionElement(), -1); 4678 } 4679 if (element.hasVersionAlgorithm()) { 4680 composeType(t, "ChargeItemDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 4681 } 4682 if (element.hasNameElement()) { 4683 composeString(t, "ChargeItemDefinition", "name", element.getNameElement(), -1); 4684 } 4685 if (element.hasTitleElement()) { 4686 composeString(t, "ChargeItemDefinition", "title", element.getTitleElement(), -1); 4687 } 4688 for (int i = 0; i < element.getDerivedFromUri().size(); i++) { 4689 composeUri(t, "ChargeItemDefinition", "derivedFromUri", element.getDerivedFromUri().get(i), i); 4690 } 4691 for (int i = 0; i < element.getPartOf().size(); i++) { 4692 composeCanonical(t, "ChargeItemDefinition", "partOf", element.getPartOf().get(i), i); 4693 } 4694 for (int i = 0; i < element.getReplaces().size(); i++) { 4695 composeCanonical(t, "ChargeItemDefinition", "replaces", element.getReplaces().get(i), i); 4696 } 4697 if (element.hasStatusElement()) { 4698 composeEnum(t, "ChargeItemDefinition", "status", element.getStatusElement(), -1); 4699 } 4700 if (element.hasExperimentalElement()) { 4701 composeBoolean(t, "ChargeItemDefinition", "experimental", element.getExperimentalElement(), -1); 4702 } 4703 if (element.hasDateElement()) { 4704 composeDateTime(t, "ChargeItemDefinition", "date", element.getDateElement(), -1); 4705 } 4706 if (element.hasPublisherElement()) { 4707 composeString(t, "ChargeItemDefinition", "publisher", element.getPublisherElement(), -1); 4708 } 4709 for (int i = 0; i < element.getContact().size(); i++) { 4710 composeContactDetail(t, "ChargeItemDefinition", "contact", element.getContact().get(i), i); 4711 } 4712 if (element.hasDescriptionElement()) { 4713 composeMarkdown(t, "ChargeItemDefinition", "description", element.getDescriptionElement(), -1); 4714 } 4715 for (int i = 0; i < element.getUseContext().size(); i++) { 4716 composeUsageContext(t, "ChargeItemDefinition", "useContext", element.getUseContext().get(i), i); 4717 } 4718 for (int i = 0; i < element.getJurisdiction().size(); i++) { 4719 composeCodeableConcept(t, "ChargeItemDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 4720 } 4721 if (element.hasPurposeElement()) { 4722 composeMarkdown(t, "ChargeItemDefinition", "purpose", element.getPurposeElement(), -1); 4723 } 4724 if (element.hasCopyrightElement()) { 4725 composeMarkdown(t, "ChargeItemDefinition", "copyright", element.getCopyrightElement(), -1); 4726 } 4727 if (element.hasCopyrightLabelElement()) { 4728 composeString(t, "ChargeItemDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 4729 } 4730 if (element.hasApprovalDateElement()) { 4731 composeDate(t, "ChargeItemDefinition", "approvalDate", element.getApprovalDateElement(), -1); 4732 } 4733 if (element.hasLastReviewDateElement()) { 4734 composeDate(t, "ChargeItemDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 4735 } 4736 if (element.hasCode()) { 4737 composeCodeableConcept(t, "ChargeItemDefinition", "code", element.getCode(), -1); 4738 } 4739 for (int i = 0; i < element.getInstance().size(); i++) { 4740 composeReference(t, "ChargeItemDefinition", "instance", element.getInstance().get(i), i); 4741 } 4742 for (int i = 0; i < element.getApplicability().size(); i++) { 4743 composeChargeItemDefinitionApplicabilityComponent(t, "ChargeItemDefinition", "applicability", element.getApplicability().get(i), i); 4744 } 4745 for (int i = 0; i < element.getPropertyGroup().size(); i++) { 4746 composeChargeItemDefinitionPropertyGroupComponent(t, "ChargeItemDefinition", "propertyGroup", element.getPropertyGroup().get(i), i); 4747 } 4748 } 4749 4750 protected void composeChargeItemDefinitionApplicabilityComponent(Complex parent, String parentType, String name, ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent element, int index) { 4751 if (element == null) 4752 return; 4753 Complex t; 4754 if (Utilities.noString(parentType)) 4755 t = parent; 4756 else { 4757 t = parent.predicate("fhir:"+name,index > -1); 4758 } 4759 composeBackboneElement(t, "applicability", name, element, index); 4760 if (element.hasCondition()) { 4761 composeExpression(t, "ChargeItemDefinitionApplicabilityComponent", "condition", element.getCondition(), -1); 4762 } 4763 if (element.hasEffectivePeriod()) { 4764 composePeriod(t, "ChargeItemDefinitionApplicabilityComponent", "effectivePeriod", element.getEffectivePeriod(), -1); 4765 } 4766 if (element.hasRelatedArtifact()) { 4767 composeRelatedArtifact(t, "ChargeItemDefinitionApplicabilityComponent", "relatedArtifact", element.getRelatedArtifact(), -1); 4768 } 4769 } 4770 4771 protected void composeChargeItemDefinitionPropertyGroupComponent(Complex parent, String parentType, String name, ChargeItemDefinition.ChargeItemDefinitionPropertyGroupComponent element, int index) { 4772 if (element == null) 4773 return; 4774 Complex t; 4775 if (Utilities.noString(parentType)) 4776 t = parent; 4777 else { 4778 t = parent.predicate("fhir:"+name,index > -1); 4779 } 4780 composeBackboneElement(t, "propertyGroup", name, element, index); 4781 for (int i = 0; i < element.getApplicability().size(); i++) { 4782 composeChargeItemDefinitionApplicabilityComponent(t, "ChargeItemDefinitionPropertyGroupComponent", "applicability", element.getApplicability().get(i), i); 4783 } 4784 for (int i = 0; i < element.getPriceComponent().size(); i++) { 4785 composeMonetaryComponent(t, "ChargeItemDefinitionPropertyGroupComponent", "priceComponent", element.getPriceComponent().get(i), i); 4786 } 4787 } 4788 4789 protected void composeCitation(Complex parent, String parentType, String name, Citation element, int index) { 4790 if (element == null) 4791 return; 4792 Complex t; 4793 if (Utilities.noString(parentType)) 4794 t = parent; 4795 else { 4796 t = parent.predicate("fhir:"+name,index > -1); 4797 } 4798 composeMetadataResource(t, "Citation", name, element, index); 4799 if (element.hasUrlElement()) { 4800 composeUri(t, "Citation", "url", element.getUrlElement(), -1); 4801 } 4802 for (int i = 0; i < element.getIdentifier().size(); i++) { 4803 composeIdentifier(t, "Citation", "identifier", element.getIdentifier().get(i), i); 4804 } 4805 if (element.hasVersionElement()) { 4806 composeString(t, "Citation", "version", element.getVersionElement(), -1); 4807 } 4808 if (element.hasVersionAlgorithm()) { 4809 composeType(t, "Citation", "versionAlgorithm", element.getVersionAlgorithm(), -1); 4810 } 4811 if (element.hasNameElement()) { 4812 composeString(t, "Citation", "name", element.getNameElement(), -1); 4813 } 4814 if (element.hasTitleElement()) { 4815 composeString(t, "Citation", "title", element.getTitleElement(), -1); 4816 } 4817 if (element.hasStatusElement()) { 4818 composeEnum(t, "Citation", "status", element.getStatusElement(), -1); 4819 } 4820 if (element.hasExperimentalElement()) { 4821 composeBoolean(t, "Citation", "experimental", element.getExperimentalElement(), -1); 4822 } 4823 if (element.hasDateElement()) { 4824 composeDateTime(t, "Citation", "date", element.getDateElement(), -1); 4825 } 4826 if (element.hasPublisherElement()) { 4827 composeString(t, "Citation", "publisher", element.getPublisherElement(), -1); 4828 } 4829 for (int i = 0; i < element.getContact().size(); i++) { 4830 composeContactDetail(t, "Citation", "contact", element.getContact().get(i), i); 4831 } 4832 if (element.hasDescriptionElement()) { 4833 composeMarkdown(t, "Citation", "description", element.getDescriptionElement(), -1); 4834 } 4835 for (int i = 0; i < element.getUseContext().size(); i++) { 4836 composeUsageContext(t, "Citation", "useContext", element.getUseContext().get(i), i); 4837 } 4838 for (int i = 0; i < element.getJurisdiction().size(); i++) { 4839 composeCodeableConcept(t, "Citation", "jurisdiction", element.getJurisdiction().get(i), i); 4840 } 4841 if (element.hasPurposeElement()) { 4842 composeMarkdown(t, "Citation", "purpose", element.getPurposeElement(), -1); 4843 } 4844 if (element.hasCopyrightElement()) { 4845 composeMarkdown(t, "Citation", "copyright", element.getCopyrightElement(), -1); 4846 } 4847 if (element.hasCopyrightLabelElement()) { 4848 composeString(t, "Citation", "copyrightLabel", element.getCopyrightLabelElement(), -1); 4849 } 4850 if (element.hasApprovalDateElement()) { 4851 composeDate(t, "Citation", "approvalDate", element.getApprovalDateElement(), -1); 4852 } 4853 if (element.hasLastReviewDateElement()) { 4854 composeDate(t, "Citation", "lastReviewDate", element.getLastReviewDateElement(), -1); 4855 } 4856 if (element.hasEffectivePeriod()) { 4857 composePeriod(t, "Citation", "effectivePeriod", element.getEffectivePeriod(), -1); 4858 } 4859 for (int i = 0; i < element.getAuthor().size(); i++) { 4860 composeContactDetail(t, "Citation", "author", element.getAuthor().get(i), i); 4861 } 4862 for (int i = 0; i < element.getEditor().size(); i++) { 4863 composeContactDetail(t, "Citation", "editor", element.getEditor().get(i), i); 4864 } 4865 for (int i = 0; i < element.getReviewer().size(); i++) { 4866 composeContactDetail(t, "Citation", "reviewer", element.getReviewer().get(i), i); 4867 } 4868 for (int i = 0; i < element.getEndorser().size(); i++) { 4869 composeContactDetail(t, "Citation", "endorser", element.getEndorser().get(i), i); 4870 } 4871 for (int i = 0; i < element.getSummary().size(); i++) { 4872 composeCitationSummaryComponent(t, "Citation", "summary", element.getSummary().get(i), i); 4873 } 4874 for (int i = 0; i < element.getClassification().size(); i++) { 4875 composeCitationClassificationComponent(t, "Citation", "classification", element.getClassification().get(i), i); 4876 } 4877 for (int i = 0; i < element.getNote().size(); i++) { 4878 composeAnnotation(t, "Citation", "note", element.getNote().get(i), i); 4879 } 4880 for (int i = 0; i < element.getCurrentState().size(); i++) { 4881 composeCodeableConcept(t, "Citation", "currentState", element.getCurrentState().get(i), i); 4882 } 4883 for (int i = 0; i < element.getStatusDate().size(); i++) { 4884 composeCitationStatusDateComponent(t, "Citation", "statusDate", element.getStatusDate().get(i), i); 4885 } 4886 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 4887 composeRelatedArtifact(t, "Citation", "relatedArtifact", element.getRelatedArtifact().get(i), i); 4888 } 4889 if (element.hasCitedArtifact()) { 4890 composeCitationCitedArtifactComponent(t, "Citation", "citedArtifact", element.getCitedArtifact(), -1); 4891 } 4892 } 4893 4894 protected void composeCitationSummaryComponent(Complex parent, String parentType, String name, Citation.CitationSummaryComponent element, int index) { 4895 if (element == null) 4896 return; 4897 Complex t; 4898 if (Utilities.noString(parentType)) 4899 t = parent; 4900 else { 4901 t = parent.predicate("fhir:"+name,index > -1); 4902 } 4903 composeBackboneElement(t, "summary", name, element, index); 4904 if (element.hasStyle()) { 4905 composeCodeableConcept(t, "CitationSummaryComponent", "style", element.getStyle(), -1); 4906 } 4907 if (element.hasTextElement()) { 4908 composeMarkdown(t, "CitationSummaryComponent", "text", element.getTextElement(), -1); 4909 } 4910 } 4911 4912 protected void composeCitationClassificationComponent(Complex parent, String parentType, String name, Citation.CitationClassificationComponent element, int index) { 4913 if (element == null) 4914 return; 4915 Complex t; 4916 if (Utilities.noString(parentType)) 4917 t = parent; 4918 else { 4919 t = parent.predicate("fhir:"+name,index > -1); 4920 } 4921 composeBackboneElement(t, "classification", name, element, index); 4922 if (element.hasType()) { 4923 composeCodeableConcept(t, "CitationClassificationComponent", "type", element.getType(), -1); 4924 } 4925 for (int i = 0; i < element.getClassifier().size(); i++) { 4926 composeCodeableConcept(t, "CitationClassificationComponent", "classifier", element.getClassifier().get(i), i); 4927 } 4928 } 4929 4930 protected void composeCitationStatusDateComponent(Complex parent, String parentType, String name, Citation.CitationStatusDateComponent element, int index) { 4931 if (element == null) 4932 return; 4933 Complex t; 4934 if (Utilities.noString(parentType)) 4935 t = parent; 4936 else { 4937 t = parent.predicate("fhir:"+name,index > -1); 4938 } 4939 composeBackboneElement(t, "statusDate", name, element, index); 4940 if (element.hasActivity()) { 4941 composeCodeableConcept(t, "CitationStatusDateComponent", "activity", element.getActivity(), -1); 4942 } 4943 if (element.hasActualElement()) { 4944 composeBoolean(t, "CitationStatusDateComponent", "actual", element.getActualElement(), -1); 4945 } 4946 if (element.hasPeriod()) { 4947 composePeriod(t, "CitationStatusDateComponent", "period", element.getPeriod(), -1); 4948 } 4949 } 4950 4951 protected void composeCitationCitedArtifactComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactComponent element, int index) { 4952 if (element == null) 4953 return; 4954 Complex t; 4955 if (Utilities.noString(parentType)) 4956 t = parent; 4957 else { 4958 t = parent.predicate("fhir:"+name,index > -1); 4959 } 4960 composeBackboneElement(t, "citedArtifact", name, element, index); 4961 for (int i = 0; i < element.getIdentifier().size(); i++) { 4962 composeIdentifier(t, "CitationCitedArtifactComponent", "identifier", element.getIdentifier().get(i), i); 4963 } 4964 for (int i = 0; i < element.getRelatedIdentifier().size(); i++) { 4965 composeIdentifier(t, "CitationCitedArtifactComponent", "relatedIdentifier", element.getRelatedIdentifier().get(i), i); 4966 } 4967 if (element.hasDateAccessedElement()) { 4968 composeDateTime(t, "CitationCitedArtifactComponent", "dateAccessed", element.getDateAccessedElement(), -1); 4969 } 4970 if (element.hasVersion()) { 4971 composeCitationCitedArtifactVersionComponent(t, "CitationCitedArtifactComponent", "version", element.getVersion(), -1); 4972 } 4973 for (int i = 0; i < element.getCurrentState().size(); i++) { 4974 composeCodeableConcept(t, "CitationCitedArtifactComponent", "currentState", element.getCurrentState().get(i), i); 4975 } 4976 for (int i = 0; i < element.getStatusDate().size(); i++) { 4977 composeCitationCitedArtifactStatusDateComponent(t, "CitationCitedArtifactComponent", "statusDate", element.getStatusDate().get(i), i); 4978 } 4979 for (int i = 0; i < element.getTitle().size(); i++) { 4980 composeCitationCitedArtifactTitleComponent(t, "CitationCitedArtifactComponent", "title", element.getTitle().get(i), i); 4981 } 4982 for (int i = 0; i < element.getAbstract().size(); i++) { 4983 composeCitationCitedArtifactAbstractComponent(t, "CitationCitedArtifactComponent", "abstract", element.getAbstract().get(i), i); 4984 } 4985 if (element.hasPart()) { 4986 composeCitationCitedArtifactPartComponent(t, "CitationCitedArtifactComponent", "part", element.getPart(), -1); 4987 } 4988 for (int i = 0; i < element.getRelatesTo().size(); i++) { 4989 composeCitationCitedArtifactRelatesToComponent(t, "CitationCitedArtifactComponent", "relatesTo", element.getRelatesTo().get(i), i); 4990 } 4991 for (int i = 0; i < element.getPublicationForm().size(); i++) { 4992 composeCitationCitedArtifactPublicationFormComponent(t, "CitationCitedArtifactComponent", "publicationForm", element.getPublicationForm().get(i), i); 4993 } 4994 for (int i = 0; i < element.getWebLocation().size(); i++) { 4995 composeCitationCitedArtifactWebLocationComponent(t, "CitationCitedArtifactComponent", "webLocation", element.getWebLocation().get(i), i); 4996 } 4997 for (int i = 0; i < element.getClassification().size(); i++) { 4998 composeCitationCitedArtifactClassificationComponent(t, "CitationCitedArtifactComponent", "classification", element.getClassification().get(i), i); 4999 } 5000 if (element.hasContributorship()) { 5001 composeCitationCitedArtifactContributorshipComponent(t, "CitationCitedArtifactComponent", "contributorship", element.getContributorship(), -1); 5002 } 5003 for (int i = 0; i < element.getNote().size(); i++) { 5004 composeAnnotation(t, "CitationCitedArtifactComponent", "note", element.getNote().get(i), i); 5005 } 5006 } 5007 5008 protected void composeCitationCitedArtifactVersionComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactVersionComponent element, int index) { 5009 if (element == null) 5010 return; 5011 Complex t; 5012 if (Utilities.noString(parentType)) 5013 t = parent; 5014 else { 5015 t = parent.predicate("fhir:"+name,index > -1); 5016 } 5017 composeBackboneElement(t, "version", name, element, index); 5018 if (element.hasValueElement()) { 5019 composeString(t, "CitationCitedArtifactVersionComponent", "value", element.getValueElement(), -1); 5020 } 5021 if (element.hasBaseCitation()) { 5022 composeReference(t, "CitationCitedArtifactVersionComponent", "baseCitation", element.getBaseCitation(), -1); 5023 } 5024 } 5025 5026 protected void composeCitationCitedArtifactStatusDateComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactStatusDateComponent element, int index) { 5027 if (element == null) 5028 return; 5029 Complex t; 5030 if (Utilities.noString(parentType)) 5031 t = parent; 5032 else { 5033 t = parent.predicate("fhir:"+name,index > -1); 5034 } 5035 composeBackboneElement(t, "statusDate", name, element, index); 5036 if (element.hasActivity()) { 5037 composeCodeableConcept(t, "CitationCitedArtifactStatusDateComponent", "activity", element.getActivity(), -1); 5038 } 5039 if (element.hasActualElement()) { 5040 composeBoolean(t, "CitationCitedArtifactStatusDateComponent", "actual", element.getActualElement(), -1); 5041 } 5042 if (element.hasPeriod()) { 5043 composePeriod(t, "CitationCitedArtifactStatusDateComponent", "period", element.getPeriod(), -1); 5044 } 5045 } 5046 5047 protected void composeCitationCitedArtifactTitleComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactTitleComponent element, int index) { 5048 if (element == null) 5049 return; 5050 Complex t; 5051 if (Utilities.noString(parentType)) 5052 t = parent; 5053 else { 5054 t = parent.predicate("fhir:"+name,index > -1); 5055 } 5056 composeBackboneElement(t, "title", name, element, index); 5057 for (int i = 0; i < element.getType().size(); i++) { 5058 composeCodeableConcept(t, "CitationCitedArtifactTitleComponent", "type", element.getType().get(i), i); 5059 } 5060 if (element.hasLanguage()) { 5061 composeCodeableConcept(t, "CitationCitedArtifactTitleComponent", "language", element.getLanguage(), -1); 5062 } 5063 if (element.hasTextElement()) { 5064 composeMarkdown(t, "CitationCitedArtifactTitleComponent", "text", element.getTextElement(), -1); 5065 } 5066 } 5067 5068 protected void composeCitationCitedArtifactAbstractComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactAbstractComponent element, int index) { 5069 if (element == null) 5070 return; 5071 Complex t; 5072 if (Utilities.noString(parentType)) 5073 t = parent; 5074 else { 5075 t = parent.predicate("fhir:"+name,index > -1); 5076 } 5077 composeBackboneElement(t, "abstract", name, element, index); 5078 if (element.hasType()) { 5079 composeCodeableConcept(t, "CitationCitedArtifactAbstractComponent", "type", element.getType(), -1); 5080 } 5081 if (element.hasLanguage()) { 5082 composeCodeableConcept(t, "CitationCitedArtifactAbstractComponent", "language", element.getLanguage(), -1); 5083 } 5084 if (element.hasTextElement()) { 5085 composeMarkdown(t, "CitationCitedArtifactAbstractComponent", "text", element.getTextElement(), -1); 5086 } 5087 if (element.hasCopyrightElement()) { 5088 composeMarkdown(t, "CitationCitedArtifactAbstractComponent", "copyright", element.getCopyrightElement(), -1); 5089 } 5090 } 5091 5092 protected void composeCitationCitedArtifactPartComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactPartComponent element, int index) { 5093 if (element == null) 5094 return; 5095 Complex t; 5096 if (Utilities.noString(parentType)) 5097 t = parent; 5098 else { 5099 t = parent.predicate("fhir:"+name,index > -1); 5100 } 5101 composeBackboneElement(t, "part", name, element, index); 5102 if (element.hasType()) { 5103 composeCodeableConcept(t, "CitationCitedArtifactPartComponent", "type", element.getType(), -1); 5104 } 5105 if (element.hasValueElement()) { 5106 composeString(t, "CitationCitedArtifactPartComponent", "value", element.getValueElement(), -1); 5107 } 5108 if (element.hasBaseCitation()) { 5109 composeReference(t, "CitationCitedArtifactPartComponent", "baseCitation", element.getBaseCitation(), -1); 5110 } 5111 } 5112 5113 protected void composeCitationCitedArtifactRelatesToComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactRelatesToComponent element, int index) { 5114 if (element == null) 5115 return; 5116 Complex t; 5117 if (Utilities.noString(parentType)) 5118 t = parent; 5119 else { 5120 t = parent.predicate("fhir:"+name,index > -1); 5121 } 5122 composeBackboneElement(t, "relatesTo", name, element, index); 5123 if (element.hasTypeElement()) { 5124 composeEnum(t, "CitationCitedArtifactRelatesToComponent", "type", element.getTypeElement(), -1); 5125 } 5126 for (int i = 0; i < element.getClassifier().size(); i++) { 5127 composeCodeableConcept(t, "CitationCitedArtifactRelatesToComponent", "classifier", element.getClassifier().get(i), i); 5128 } 5129 if (element.hasLabelElement()) { 5130 composeString(t, "CitationCitedArtifactRelatesToComponent", "label", element.getLabelElement(), -1); 5131 } 5132 if (element.hasDisplayElement()) { 5133 composeString(t, "CitationCitedArtifactRelatesToComponent", "display", element.getDisplayElement(), -1); 5134 } 5135 if (element.hasCitationElement()) { 5136 composeMarkdown(t, "CitationCitedArtifactRelatesToComponent", "citation", element.getCitationElement(), -1); 5137 } 5138 if (element.hasDocument()) { 5139 composeAttachment(t, "CitationCitedArtifactRelatesToComponent", "document", element.getDocument(), -1); 5140 } 5141 if (element.hasResourceElement()) { 5142 composeCanonical(t, "CitationCitedArtifactRelatesToComponent", "resource", element.getResourceElement(), -1); 5143 } 5144 if (element.hasResourceReference()) { 5145 composeReference(t, "CitationCitedArtifactRelatesToComponent", "resourceReference", element.getResourceReference(), -1); 5146 } 5147 } 5148 5149 protected void composeCitationCitedArtifactPublicationFormComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactPublicationFormComponent element, int index) { 5150 if (element == null) 5151 return; 5152 Complex t; 5153 if (Utilities.noString(parentType)) 5154 t = parent; 5155 else { 5156 t = parent.predicate("fhir:"+name,index > -1); 5157 } 5158 composeBackboneElement(t, "publicationForm", name, element, index); 5159 if (element.hasPublishedIn()) { 5160 composeCitationCitedArtifactPublicationFormPublishedInComponent(t, "CitationCitedArtifactPublicationFormComponent", "publishedIn", element.getPublishedIn(), -1); 5161 } 5162 if (element.hasCitedMedium()) { 5163 composeCodeableConcept(t, "CitationCitedArtifactPublicationFormComponent", "citedMedium", element.getCitedMedium(), -1); 5164 } 5165 if (element.hasVolumeElement()) { 5166 composeString(t, "CitationCitedArtifactPublicationFormComponent", "volume", element.getVolumeElement(), -1); 5167 } 5168 if (element.hasIssueElement()) { 5169 composeString(t, "CitationCitedArtifactPublicationFormComponent", "issue", element.getIssueElement(), -1); 5170 } 5171 if (element.hasArticleDateElement()) { 5172 composeDateTime(t, "CitationCitedArtifactPublicationFormComponent", "articleDate", element.getArticleDateElement(), -1); 5173 } 5174 if (element.hasPublicationDateTextElement()) { 5175 composeString(t, "CitationCitedArtifactPublicationFormComponent", "publicationDateText", element.getPublicationDateTextElement(), -1); 5176 } 5177 if (element.hasPublicationDateSeasonElement()) { 5178 composeString(t, "CitationCitedArtifactPublicationFormComponent", "publicationDateSeason", element.getPublicationDateSeasonElement(), -1); 5179 } 5180 if (element.hasLastRevisionDateElement()) { 5181 composeDateTime(t, "CitationCitedArtifactPublicationFormComponent", "lastRevisionDate", element.getLastRevisionDateElement(), -1); 5182 } 5183 for (int i = 0; i < element.getLanguage().size(); i++) { 5184 composeCodeableConcept(t, "CitationCitedArtifactPublicationFormComponent", "language", element.getLanguage().get(i), i); 5185 } 5186 if (element.hasAccessionNumberElement()) { 5187 composeString(t, "CitationCitedArtifactPublicationFormComponent", "accessionNumber", element.getAccessionNumberElement(), -1); 5188 } 5189 if (element.hasPageStringElement()) { 5190 composeString(t, "CitationCitedArtifactPublicationFormComponent", "pageString", element.getPageStringElement(), -1); 5191 } 5192 if (element.hasFirstPageElement()) { 5193 composeString(t, "CitationCitedArtifactPublicationFormComponent", "firstPage", element.getFirstPageElement(), -1); 5194 } 5195 if (element.hasLastPageElement()) { 5196 composeString(t, "CitationCitedArtifactPublicationFormComponent", "lastPage", element.getLastPageElement(), -1); 5197 } 5198 if (element.hasPageCountElement()) { 5199 composeString(t, "CitationCitedArtifactPublicationFormComponent", "pageCount", element.getPageCountElement(), -1); 5200 } 5201 if (element.hasCopyrightElement()) { 5202 composeMarkdown(t, "CitationCitedArtifactPublicationFormComponent", "copyright", element.getCopyrightElement(), -1); 5203 } 5204 } 5205 5206 protected void composeCitationCitedArtifactPublicationFormPublishedInComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactPublicationFormPublishedInComponent element, int index) { 5207 if (element == null) 5208 return; 5209 Complex t; 5210 if (Utilities.noString(parentType)) 5211 t = parent; 5212 else { 5213 t = parent.predicate("fhir:"+name,index > -1); 5214 } 5215 composeBackboneElement(t, "publishedIn", name, element, index); 5216 if (element.hasType()) { 5217 composeCodeableConcept(t, "CitationCitedArtifactPublicationFormPublishedInComponent", "type", element.getType(), -1); 5218 } 5219 for (int i = 0; i < element.getIdentifier().size(); i++) { 5220 composeIdentifier(t, "CitationCitedArtifactPublicationFormPublishedInComponent", "identifier", element.getIdentifier().get(i), i); 5221 } 5222 if (element.hasTitleElement()) { 5223 composeString(t, "CitationCitedArtifactPublicationFormPublishedInComponent", "title", element.getTitleElement(), -1); 5224 } 5225 if (element.hasPublisher()) { 5226 composeReference(t, "CitationCitedArtifactPublicationFormPublishedInComponent", "publisher", element.getPublisher(), -1); 5227 } 5228 if (element.hasPublisherLocationElement()) { 5229 composeString(t, "CitationCitedArtifactPublicationFormPublishedInComponent", "publisherLocation", element.getPublisherLocationElement(), -1); 5230 } 5231 } 5232 5233 protected void composeCitationCitedArtifactWebLocationComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactWebLocationComponent element, int index) { 5234 if (element == null) 5235 return; 5236 Complex t; 5237 if (Utilities.noString(parentType)) 5238 t = parent; 5239 else { 5240 t = parent.predicate("fhir:"+name,index > -1); 5241 } 5242 composeBackboneElement(t, "webLocation", name, element, index); 5243 for (int i = 0; i < element.getClassifier().size(); i++) { 5244 composeCodeableConcept(t, "CitationCitedArtifactWebLocationComponent", "classifier", element.getClassifier().get(i), i); 5245 } 5246 if (element.hasUrlElement()) { 5247 composeUri(t, "CitationCitedArtifactWebLocationComponent", "url", element.getUrlElement(), -1); 5248 } 5249 } 5250 5251 protected void composeCitationCitedArtifactClassificationComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactClassificationComponent element, int index) { 5252 if (element == null) 5253 return; 5254 Complex t; 5255 if (Utilities.noString(parentType)) 5256 t = parent; 5257 else { 5258 t = parent.predicate("fhir:"+name,index > -1); 5259 } 5260 composeBackboneElement(t, "classification", name, element, index); 5261 if (element.hasType()) { 5262 composeCodeableConcept(t, "CitationCitedArtifactClassificationComponent", "type", element.getType(), -1); 5263 } 5264 for (int i = 0; i < element.getClassifier().size(); i++) { 5265 composeCodeableConcept(t, "CitationCitedArtifactClassificationComponent", "classifier", element.getClassifier().get(i), i); 5266 } 5267 for (int i = 0; i < element.getArtifactAssessment().size(); i++) { 5268 composeReference(t, "CitationCitedArtifactClassificationComponent", "artifactAssessment", element.getArtifactAssessment().get(i), i); 5269 } 5270 } 5271 5272 protected void composeCitationCitedArtifactContributorshipComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactContributorshipComponent element, int index) { 5273 if (element == null) 5274 return; 5275 Complex t; 5276 if (Utilities.noString(parentType)) 5277 t = parent; 5278 else { 5279 t = parent.predicate("fhir:"+name,index > -1); 5280 } 5281 composeBackboneElement(t, "contributorship", name, element, index); 5282 if (element.hasCompleteElement()) { 5283 composeBoolean(t, "CitationCitedArtifactContributorshipComponent", "complete", element.getCompleteElement(), -1); 5284 } 5285 for (int i = 0; i < element.getEntry().size(); i++) { 5286 composeCitationCitedArtifactContributorshipEntryComponent(t, "CitationCitedArtifactContributorshipComponent", "entry", element.getEntry().get(i), i); 5287 } 5288 for (int i = 0; i < element.getSummary().size(); i++) { 5289 composeCitationContributorshipSummaryComponent(t, "CitationCitedArtifactContributorshipComponent", "summary", element.getSummary().get(i), i); 5290 } 5291 } 5292 5293 protected void composeCitationCitedArtifactContributorshipEntryComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactContributorshipEntryComponent element, int index) { 5294 if (element == null) 5295 return; 5296 Complex t; 5297 if (Utilities.noString(parentType)) 5298 t = parent; 5299 else { 5300 t = parent.predicate("fhir:"+name,index > -1); 5301 } 5302 composeBackboneElement(t, "entry", name, element, index); 5303 if (element.hasContributor()) { 5304 composeReference(t, "CitationCitedArtifactContributorshipEntryComponent", "contributor", element.getContributor(), -1); 5305 } 5306 if (element.hasForenameInitialsElement()) { 5307 composeString(t, "CitationCitedArtifactContributorshipEntryComponent", "forenameInitials", element.getForenameInitialsElement(), -1); 5308 } 5309 for (int i = 0; i < element.getAffiliation().size(); i++) { 5310 composeReference(t, "CitationCitedArtifactContributorshipEntryComponent", "affiliation", element.getAffiliation().get(i), i); 5311 } 5312 for (int i = 0; i < element.getContributionType().size(); i++) { 5313 composeCodeableConcept(t, "CitationCitedArtifactContributorshipEntryComponent", "contributionType", element.getContributionType().get(i), i); 5314 } 5315 if (element.hasRole()) { 5316 composeCodeableConcept(t, "CitationCitedArtifactContributorshipEntryComponent", "role", element.getRole(), -1); 5317 } 5318 for (int i = 0; i < element.getContributionInstance().size(); i++) { 5319 composeCitationCitedArtifactContributorshipEntryContributionInstanceComponent(t, "CitationCitedArtifactContributorshipEntryComponent", "contributionInstance", element.getContributionInstance().get(i), i); 5320 } 5321 if (element.hasCorrespondingContactElement()) { 5322 composeBoolean(t, "CitationCitedArtifactContributorshipEntryComponent", "correspondingContact", element.getCorrespondingContactElement(), -1); 5323 } 5324 if (element.hasRankingOrderElement()) { 5325 composePositiveInt(t, "CitationCitedArtifactContributorshipEntryComponent", "rankingOrder", element.getRankingOrderElement(), -1); 5326 } 5327 } 5328 5329 protected void composeCitationCitedArtifactContributorshipEntryContributionInstanceComponent(Complex parent, String parentType, String name, Citation.CitationCitedArtifactContributorshipEntryContributionInstanceComponent element, int index) { 5330 if (element == null) 5331 return; 5332 Complex t; 5333 if (Utilities.noString(parentType)) 5334 t = parent; 5335 else { 5336 t = parent.predicate("fhir:"+name,index > -1); 5337 } 5338 composeBackboneElement(t, "contributionInstance", name, element, index); 5339 if (element.hasType()) { 5340 composeCodeableConcept(t, "CitationCitedArtifactContributorshipEntryContributionInstanceComponent", "type", element.getType(), -1); 5341 } 5342 if (element.hasTimeElement()) { 5343 composeDateTime(t, "CitationCitedArtifactContributorshipEntryContributionInstanceComponent", "time", element.getTimeElement(), -1); 5344 } 5345 } 5346 5347 protected void composeCitationContributorshipSummaryComponent(Complex parent, String parentType, String name, Citation.ContributorshipSummaryComponent element, int index) { 5348 if (element == null) 5349 return; 5350 Complex t; 5351 if (Utilities.noString(parentType)) 5352 t = parent; 5353 else { 5354 t = parent.predicate("fhir:"+name,index > -1); 5355 } 5356 composeBackboneElement(t, "summary", name, element, index); 5357 if (element.hasType()) { 5358 composeCodeableConcept(t, "ContributorshipSummaryComponent", "type", element.getType(), -1); 5359 } 5360 if (element.hasStyle()) { 5361 composeCodeableConcept(t, "ContributorshipSummaryComponent", "style", element.getStyle(), -1); 5362 } 5363 if (element.hasSource()) { 5364 composeCodeableConcept(t, "ContributorshipSummaryComponent", "source", element.getSource(), -1); 5365 } 5366 if (element.hasValueElement()) { 5367 composeMarkdown(t, "ContributorshipSummaryComponent", "value", element.getValueElement(), -1); 5368 } 5369 } 5370 5371 protected void composeClaim(Complex parent, String parentType, String name, Claim element, int index) { 5372 if (element == null) 5373 return; 5374 Complex t; 5375 if (Utilities.noString(parentType)) 5376 t = parent; 5377 else { 5378 t = parent.predicate("fhir:"+name,index > -1); 5379 } 5380 composeDomainResource(t, "Claim", name, element, index); 5381 for (int i = 0; i < element.getIdentifier().size(); i++) { 5382 composeIdentifier(t, "Claim", "identifier", element.getIdentifier().get(i), i); 5383 } 5384 for (int i = 0; i < element.getTraceNumber().size(); i++) { 5385 composeIdentifier(t, "Claim", "traceNumber", element.getTraceNumber().get(i), i); 5386 } 5387 if (element.hasStatusElement()) { 5388 composeEnum(t, "Claim", "status", element.getStatusElement(), -1); 5389 } 5390 if (element.hasType()) { 5391 composeCodeableConcept(t, "Claim", "type", element.getType(), -1); 5392 } 5393 if (element.hasSubType()) { 5394 composeCodeableConcept(t, "Claim", "subType", element.getSubType(), -1); 5395 } 5396 if (element.hasUseElement()) { 5397 composeEnum(t, "Claim", "use", element.getUseElement(), -1); 5398 } 5399 if (element.hasPatient()) { 5400 composeReference(t, "Claim", "patient", element.getPatient(), -1); 5401 } 5402 if (element.hasBillablePeriod()) { 5403 composePeriod(t, "Claim", "billablePeriod", element.getBillablePeriod(), -1); 5404 } 5405 if (element.hasCreatedElement()) { 5406 composeDateTime(t, "Claim", "created", element.getCreatedElement(), -1); 5407 } 5408 if (element.hasEnterer()) { 5409 composeReference(t, "Claim", "enterer", element.getEnterer(), -1); 5410 } 5411 if (element.hasInsurer()) { 5412 composeReference(t, "Claim", "insurer", element.getInsurer(), -1); 5413 } 5414 if (element.hasProvider()) { 5415 composeReference(t, "Claim", "provider", element.getProvider(), -1); 5416 } 5417 if (element.hasPriority()) { 5418 composeCodeableConcept(t, "Claim", "priority", element.getPriority(), -1); 5419 } 5420 if (element.hasFundsReserve()) { 5421 composeCodeableConcept(t, "Claim", "fundsReserve", element.getFundsReserve(), -1); 5422 } 5423 for (int i = 0; i < element.getRelated().size(); i++) { 5424 composeClaimRelatedClaimComponent(t, "Claim", "related", element.getRelated().get(i), i); 5425 } 5426 if (element.hasPrescription()) { 5427 composeReference(t, "Claim", "prescription", element.getPrescription(), -1); 5428 } 5429 if (element.hasOriginalPrescription()) { 5430 composeReference(t, "Claim", "originalPrescription", element.getOriginalPrescription(), -1); 5431 } 5432 if (element.hasPayee()) { 5433 composeClaimPayeeComponent(t, "Claim", "payee", element.getPayee(), -1); 5434 } 5435 if (element.hasReferral()) { 5436 composeReference(t, "Claim", "referral", element.getReferral(), -1); 5437 } 5438 for (int i = 0; i < element.getEncounter().size(); i++) { 5439 composeReference(t, "Claim", "encounter", element.getEncounter().get(i), i); 5440 } 5441 if (element.hasFacility()) { 5442 composeReference(t, "Claim", "facility", element.getFacility(), -1); 5443 } 5444 if (element.hasDiagnosisRelatedGroup()) { 5445 composeCodeableConcept(t, "Claim", "diagnosisRelatedGroup", element.getDiagnosisRelatedGroup(), -1); 5446 } 5447 for (int i = 0; i < element.getEvent().size(); i++) { 5448 composeClaimEventComponent(t, "Claim", "event", element.getEvent().get(i), i); 5449 } 5450 for (int i = 0; i < element.getCareTeam().size(); i++) { 5451 composeClaimCareTeamComponent(t, "Claim", "careTeam", element.getCareTeam().get(i), i); 5452 } 5453 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 5454 composeClaimSupportingInformationComponent(t, "Claim", "supportingInfo", element.getSupportingInfo().get(i), i); 5455 } 5456 for (int i = 0; i < element.getDiagnosis().size(); i++) { 5457 composeClaimDiagnosisComponent(t, "Claim", "diagnosis", element.getDiagnosis().get(i), i); 5458 } 5459 for (int i = 0; i < element.getProcedure().size(); i++) { 5460 composeClaimProcedureComponent(t, "Claim", "procedure", element.getProcedure().get(i), i); 5461 } 5462 for (int i = 0; i < element.getInsurance().size(); i++) { 5463 composeClaimInsuranceComponent(t, "Claim", "insurance", element.getInsurance().get(i), i); 5464 } 5465 if (element.hasAccident()) { 5466 composeClaimAccidentComponent(t, "Claim", "accident", element.getAccident(), -1); 5467 } 5468 if (element.hasPatientPaid()) { 5469 composeMoney(t, "Claim", "patientPaid", element.getPatientPaid(), -1); 5470 } 5471 for (int i = 0; i < element.getItem().size(); i++) { 5472 composeClaimItemComponent(t, "Claim", "item", element.getItem().get(i), i); 5473 } 5474 if (element.hasTotal()) { 5475 composeMoney(t, "Claim", "total", element.getTotal(), -1); 5476 } 5477 } 5478 5479 protected void composeClaimRelatedClaimComponent(Complex parent, String parentType, String name, Claim.RelatedClaimComponent element, int index) { 5480 if (element == null) 5481 return; 5482 Complex t; 5483 if (Utilities.noString(parentType)) 5484 t = parent; 5485 else { 5486 t = parent.predicate("fhir:"+name,index > -1); 5487 } 5488 composeBackboneElement(t, "related", name, element, index); 5489 if (element.hasClaim()) { 5490 composeReference(t, "RelatedClaimComponent", "claim", element.getClaim(), -1); 5491 } 5492 if (element.hasRelationship()) { 5493 composeCodeableConcept(t, "RelatedClaimComponent", "relationship", element.getRelationship(), -1); 5494 } 5495 if (element.hasReference()) { 5496 composeIdentifier(t, "RelatedClaimComponent", "reference", element.getReference(), -1); 5497 } 5498 } 5499 5500 protected void composeClaimPayeeComponent(Complex parent, String parentType, String name, Claim.PayeeComponent element, int index) { 5501 if (element == null) 5502 return; 5503 Complex t; 5504 if (Utilities.noString(parentType)) 5505 t = parent; 5506 else { 5507 t = parent.predicate("fhir:"+name,index > -1); 5508 } 5509 composeBackboneElement(t, "payee", name, element, index); 5510 if (element.hasType()) { 5511 composeCodeableConcept(t, "PayeeComponent", "type", element.getType(), -1); 5512 } 5513 if (element.hasParty()) { 5514 composeReference(t, "PayeeComponent", "party", element.getParty(), -1); 5515 } 5516 } 5517 5518 protected void composeClaimEventComponent(Complex parent, String parentType, String name, Claim.ClaimEventComponent element, int index) { 5519 if (element == null) 5520 return; 5521 Complex t; 5522 if (Utilities.noString(parentType)) 5523 t = parent; 5524 else { 5525 t = parent.predicate("fhir:"+name,index > -1); 5526 } 5527 composeBackboneElement(t, "event", name, element, index); 5528 if (element.hasType()) { 5529 composeCodeableConcept(t, "ClaimEventComponent", "type", element.getType(), -1); 5530 } 5531 if (element.hasWhen()) { 5532 composeType(t, "ClaimEventComponent", "when", element.getWhen(), -1); 5533 } 5534 } 5535 5536 protected void composeClaimCareTeamComponent(Complex parent, String parentType, String name, Claim.CareTeamComponent element, int index) { 5537 if (element == null) 5538 return; 5539 Complex t; 5540 if (Utilities.noString(parentType)) 5541 t = parent; 5542 else { 5543 t = parent.predicate("fhir:"+name,index > -1); 5544 } 5545 composeBackboneElement(t, "careTeam", name, element, index); 5546 if (element.hasSequenceElement()) { 5547 composePositiveInt(t, "CareTeamComponent", "sequence", element.getSequenceElement(), -1); 5548 } 5549 if (element.hasProvider()) { 5550 composeReference(t, "CareTeamComponent", "provider", element.getProvider(), -1); 5551 } 5552 if (element.hasResponsibleElement()) { 5553 composeBoolean(t, "CareTeamComponent", "responsible", element.getResponsibleElement(), -1); 5554 } 5555 if (element.hasRole()) { 5556 composeCodeableConcept(t, "CareTeamComponent", "role", element.getRole(), -1); 5557 } 5558 if (element.hasSpecialty()) { 5559 composeCodeableConcept(t, "CareTeamComponent", "specialty", element.getSpecialty(), -1); 5560 } 5561 } 5562 5563 protected void composeClaimSupportingInformationComponent(Complex parent, String parentType, String name, Claim.SupportingInformationComponent element, int index) { 5564 if (element == null) 5565 return; 5566 Complex t; 5567 if (Utilities.noString(parentType)) 5568 t = parent; 5569 else { 5570 t = parent.predicate("fhir:"+name,index > -1); 5571 } 5572 composeBackboneElement(t, "supportingInfo", name, element, index); 5573 if (element.hasSequenceElement()) { 5574 composePositiveInt(t, "SupportingInformationComponent", "sequence", element.getSequenceElement(), -1); 5575 } 5576 if (element.hasCategory()) { 5577 composeCodeableConcept(t, "SupportingInformationComponent", "category", element.getCategory(), -1); 5578 } 5579 if (element.hasCode()) { 5580 composeCodeableConcept(t, "SupportingInformationComponent", "code", element.getCode(), -1); 5581 } 5582 if (element.hasTiming()) { 5583 composeType(t, "SupportingInformationComponent", "timing", element.getTiming(), -1); 5584 } 5585 if (element.hasValue()) { 5586 composeType(t, "SupportingInformationComponent", "value", element.getValue(), -1); 5587 } 5588 if (element.hasReason()) { 5589 composeCodeableConcept(t, "SupportingInformationComponent", "reason", element.getReason(), -1); 5590 } 5591 } 5592 5593 protected void composeClaimDiagnosisComponent(Complex parent, String parentType, String name, Claim.DiagnosisComponent element, int index) { 5594 if (element == null) 5595 return; 5596 Complex t; 5597 if (Utilities.noString(parentType)) 5598 t = parent; 5599 else { 5600 t = parent.predicate("fhir:"+name,index > -1); 5601 } 5602 composeBackboneElement(t, "diagnosis", name, element, index); 5603 if (element.hasSequenceElement()) { 5604 composePositiveInt(t, "DiagnosisComponent", "sequence", element.getSequenceElement(), -1); 5605 } 5606 if (element.hasDiagnosis()) { 5607 composeType(t, "DiagnosisComponent", "diagnosis", element.getDiagnosis(), -1); 5608 } 5609 for (int i = 0; i < element.getType().size(); i++) { 5610 composeCodeableConcept(t, "DiagnosisComponent", "type", element.getType().get(i), i); 5611 } 5612 if (element.hasOnAdmission()) { 5613 composeCodeableConcept(t, "DiagnosisComponent", "onAdmission", element.getOnAdmission(), -1); 5614 } 5615 } 5616 5617 protected void composeClaimProcedureComponent(Complex parent, String parentType, String name, Claim.ProcedureComponent element, int index) { 5618 if (element == null) 5619 return; 5620 Complex t; 5621 if (Utilities.noString(parentType)) 5622 t = parent; 5623 else { 5624 t = parent.predicate("fhir:"+name,index > -1); 5625 } 5626 composeBackboneElement(t, "procedure", name, element, index); 5627 if (element.hasSequenceElement()) { 5628 composePositiveInt(t, "ProcedureComponent", "sequence", element.getSequenceElement(), -1); 5629 } 5630 for (int i = 0; i < element.getType().size(); i++) { 5631 composeCodeableConcept(t, "ProcedureComponent", "type", element.getType().get(i), i); 5632 } 5633 if (element.hasDateElement()) { 5634 composeDateTime(t, "ProcedureComponent", "date", element.getDateElement(), -1); 5635 } 5636 if (element.hasProcedure()) { 5637 composeType(t, "ProcedureComponent", "procedure", element.getProcedure(), -1); 5638 } 5639 for (int i = 0; i < element.getUdi().size(); i++) { 5640 composeReference(t, "ProcedureComponent", "udi", element.getUdi().get(i), i); 5641 } 5642 } 5643 5644 protected void composeClaimInsuranceComponent(Complex parent, String parentType, String name, Claim.InsuranceComponent element, int index) { 5645 if (element == null) 5646 return; 5647 Complex t; 5648 if (Utilities.noString(parentType)) 5649 t = parent; 5650 else { 5651 t = parent.predicate("fhir:"+name,index > -1); 5652 } 5653 composeBackboneElement(t, "insurance", name, element, index); 5654 if (element.hasSequenceElement()) { 5655 composePositiveInt(t, "InsuranceComponent", "sequence", element.getSequenceElement(), -1); 5656 } 5657 if (element.hasFocalElement()) { 5658 composeBoolean(t, "InsuranceComponent", "focal", element.getFocalElement(), -1); 5659 } 5660 if (element.hasIdentifier()) { 5661 composeIdentifier(t, "InsuranceComponent", "identifier", element.getIdentifier(), -1); 5662 } 5663 if (element.hasCoverage()) { 5664 composeReference(t, "InsuranceComponent", "coverage", element.getCoverage(), -1); 5665 } 5666 if (element.hasBusinessArrangementElement()) { 5667 composeString(t, "InsuranceComponent", "businessArrangement", element.getBusinessArrangementElement(), -1); 5668 } 5669 for (int i = 0; i < element.getPreAuthRef().size(); i++) { 5670 composeString(t, "InsuranceComponent", "preAuthRef", element.getPreAuthRef().get(i), i); 5671 } 5672 if (element.hasClaimResponse()) { 5673 composeReference(t, "InsuranceComponent", "claimResponse", element.getClaimResponse(), -1); 5674 } 5675 } 5676 5677 protected void composeClaimAccidentComponent(Complex parent, String parentType, String name, Claim.AccidentComponent element, int index) { 5678 if (element == null) 5679 return; 5680 Complex t; 5681 if (Utilities.noString(parentType)) 5682 t = parent; 5683 else { 5684 t = parent.predicate("fhir:"+name,index > -1); 5685 } 5686 composeBackboneElement(t, "accident", name, element, index); 5687 if (element.hasDateElement()) { 5688 composeDate(t, "AccidentComponent", "date", element.getDateElement(), -1); 5689 } 5690 if (element.hasType()) { 5691 composeCodeableConcept(t, "AccidentComponent", "type", element.getType(), -1); 5692 } 5693 if (element.hasLocation()) { 5694 composeType(t, "AccidentComponent", "location", element.getLocation(), -1); 5695 } 5696 } 5697 5698 protected void composeClaimItemComponent(Complex parent, String parentType, String name, Claim.ItemComponent element, int index) { 5699 if (element == null) 5700 return; 5701 Complex t; 5702 if (Utilities.noString(parentType)) 5703 t = parent; 5704 else { 5705 t = parent.predicate("fhir:"+name,index > -1); 5706 } 5707 composeBackboneElement(t, "item", name, element, index); 5708 if (element.hasSequenceElement()) { 5709 composePositiveInt(t, "ItemComponent", "sequence", element.getSequenceElement(), -1); 5710 } 5711 for (int i = 0; i < element.getTraceNumber().size(); i++) { 5712 composeIdentifier(t, "ItemComponent", "traceNumber", element.getTraceNumber().get(i), i); 5713 } 5714 for (int i = 0; i < element.getCareTeamSequence().size(); i++) { 5715 composePositiveInt(t, "ItemComponent", "careTeamSequence", element.getCareTeamSequence().get(i), i); 5716 } 5717 for (int i = 0; i < element.getDiagnosisSequence().size(); i++) { 5718 composePositiveInt(t, "ItemComponent", "diagnosisSequence", element.getDiagnosisSequence().get(i), i); 5719 } 5720 for (int i = 0; i < element.getProcedureSequence().size(); i++) { 5721 composePositiveInt(t, "ItemComponent", "procedureSequence", element.getProcedureSequence().get(i), i); 5722 } 5723 for (int i = 0; i < element.getInformationSequence().size(); i++) { 5724 composePositiveInt(t, "ItemComponent", "informationSequence", element.getInformationSequence().get(i), i); 5725 } 5726 if (element.hasRevenue()) { 5727 composeCodeableConcept(t, "ItemComponent", "revenue", element.getRevenue(), -1); 5728 } 5729 if (element.hasCategory()) { 5730 composeCodeableConcept(t, "ItemComponent", "category", element.getCategory(), -1); 5731 } 5732 if (element.hasProductOrService()) { 5733 composeCodeableConcept(t, "ItemComponent", "productOrService", element.getProductOrService(), -1); 5734 } 5735 if (element.hasProductOrServiceEnd()) { 5736 composeCodeableConcept(t, "ItemComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 5737 } 5738 for (int i = 0; i < element.getRequest().size(); i++) { 5739 composeReference(t, "ItemComponent", "request", element.getRequest().get(i), i); 5740 } 5741 for (int i = 0; i < element.getModifier().size(); i++) { 5742 composeCodeableConcept(t, "ItemComponent", "modifier", element.getModifier().get(i), i); 5743 } 5744 for (int i = 0; i < element.getProgramCode().size(); i++) { 5745 composeCodeableConcept(t, "ItemComponent", "programCode", element.getProgramCode().get(i), i); 5746 } 5747 if (element.hasServiced()) { 5748 composeType(t, "ItemComponent", "serviced", element.getServiced(), -1); 5749 } 5750 if (element.hasLocation()) { 5751 composeType(t, "ItemComponent", "location", element.getLocation(), -1); 5752 } 5753 if (element.hasPatientPaid()) { 5754 composeMoney(t, "ItemComponent", "patientPaid", element.getPatientPaid(), -1); 5755 } 5756 if (element.hasQuantity()) { 5757 composeQuantity(t, "ItemComponent", "quantity", element.getQuantity(), -1); 5758 } 5759 if (element.hasUnitPrice()) { 5760 composeMoney(t, "ItemComponent", "unitPrice", element.getUnitPrice(), -1); 5761 } 5762 if (element.hasFactorElement()) { 5763 composeDecimal(t, "ItemComponent", "factor", element.getFactorElement(), -1); 5764 } 5765 if (element.hasTax()) { 5766 composeMoney(t, "ItemComponent", "tax", element.getTax(), -1); 5767 } 5768 if (element.hasNet()) { 5769 composeMoney(t, "ItemComponent", "net", element.getNet(), -1); 5770 } 5771 for (int i = 0; i < element.getUdi().size(); i++) { 5772 composeReference(t, "ItemComponent", "udi", element.getUdi().get(i), i); 5773 } 5774 for (int i = 0; i < element.getBodySite().size(); i++) { 5775 composeClaimBodySiteComponent(t, "ItemComponent", "bodySite", element.getBodySite().get(i), i); 5776 } 5777 for (int i = 0; i < element.getEncounter().size(); i++) { 5778 composeReference(t, "ItemComponent", "encounter", element.getEncounter().get(i), i); 5779 } 5780 for (int i = 0; i < element.getDetail().size(); i++) { 5781 composeClaimDetailComponent(t, "ItemComponent", "detail", element.getDetail().get(i), i); 5782 } 5783 } 5784 5785 protected void composeClaimBodySiteComponent(Complex parent, String parentType, String name, Claim.BodySiteComponent element, int index) { 5786 if (element == null) 5787 return; 5788 Complex t; 5789 if (Utilities.noString(parentType)) 5790 t = parent; 5791 else { 5792 t = parent.predicate("fhir:"+name,index > -1); 5793 } 5794 composeBackboneElement(t, "bodySite", name, element, index); 5795 for (int i = 0; i < element.getSite().size(); i++) { 5796 composeCodeableReference(t, "BodySiteComponent", "site", element.getSite().get(i), i); 5797 } 5798 for (int i = 0; i < element.getSubSite().size(); i++) { 5799 composeCodeableConcept(t, "BodySiteComponent", "subSite", element.getSubSite().get(i), i); 5800 } 5801 } 5802 5803 protected void composeClaimDetailComponent(Complex parent, String parentType, String name, Claim.DetailComponent element, int index) { 5804 if (element == null) 5805 return; 5806 Complex t; 5807 if (Utilities.noString(parentType)) 5808 t = parent; 5809 else { 5810 t = parent.predicate("fhir:"+name,index > -1); 5811 } 5812 composeBackboneElement(t, "detail", name, element, index); 5813 if (element.hasSequenceElement()) { 5814 composePositiveInt(t, "DetailComponent", "sequence", element.getSequenceElement(), -1); 5815 } 5816 for (int i = 0; i < element.getTraceNumber().size(); i++) { 5817 composeIdentifier(t, "DetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 5818 } 5819 if (element.hasRevenue()) { 5820 composeCodeableConcept(t, "DetailComponent", "revenue", element.getRevenue(), -1); 5821 } 5822 if (element.hasCategory()) { 5823 composeCodeableConcept(t, "DetailComponent", "category", element.getCategory(), -1); 5824 } 5825 if (element.hasProductOrService()) { 5826 composeCodeableConcept(t, "DetailComponent", "productOrService", element.getProductOrService(), -1); 5827 } 5828 if (element.hasProductOrServiceEnd()) { 5829 composeCodeableConcept(t, "DetailComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 5830 } 5831 for (int i = 0; i < element.getModifier().size(); i++) { 5832 composeCodeableConcept(t, "DetailComponent", "modifier", element.getModifier().get(i), i); 5833 } 5834 for (int i = 0; i < element.getProgramCode().size(); i++) { 5835 composeCodeableConcept(t, "DetailComponent", "programCode", element.getProgramCode().get(i), i); 5836 } 5837 if (element.hasPatientPaid()) { 5838 composeMoney(t, "DetailComponent", "patientPaid", element.getPatientPaid(), -1); 5839 } 5840 if (element.hasQuantity()) { 5841 composeQuantity(t, "DetailComponent", "quantity", element.getQuantity(), -1); 5842 } 5843 if (element.hasUnitPrice()) { 5844 composeMoney(t, "DetailComponent", "unitPrice", element.getUnitPrice(), -1); 5845 } 5846 if (element.hasFactorElement()) { 5847 composeDecimal(t, "DetailComponent", "factor", element.getFactorElement(), -1); 5848 } 5849 if (element.hasTax()) { 5850 composeMoney(t, "DetailComponent", "tax", element.getTax(), -1); 5851 } 5852 if (element.hasNet()) { 5853 composeMoney(t, "DetailComponent", "net", element.getNet(), -1); 5854 } 5855 for (int i = 0; i < element.getUdi().size(); i++) { 5856 composeReference(t, "DetailComponent", "udi", element.getUdi().get(i), i); 5857 } 5858 for (int i = 0; i < element.getSubDetail().size(); i++) { 5859 composeClaimSubDetailComponent(t, "DetailComponent", "subDetail", element.getSubDetail().get(i), i); 5860 } 5861 } 5862 5863 protected void composeClaimSubDetailComponent(Complex parent, String parentType, String name, Claim.SubDetailComponent element, int index) { 5864 if (element == null) 5865 return; 5866 Complex t; 5867 if (Utilities.noString(parentType)) 5868 t = parent; 5869 else { 5870 t = parent.predicate("fhir:"+name,index > -1); 5871 } 5872 composeBackboneElement(t, "subDetail", name, element, index); 5873 if (element.hasSequenceElement()) { 5874 composePositiveInt(t, "SubDetailComponent", "sequence", element.getSequenceElement(), -1); 5875 } 5876 for (int i = 0; i < element.getTraceNumber().size(); i++) { 5877 composeIdentifier(t, "SubDetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 5878 } 5879 if (element.hasRevenue()) { 5880 composeCodeableConcept(t, "SubDetailComponent", "revenue", element.getRevenue(), -1); 5881 } 5882 if (element.hasCategory()) { 5883 composeCodeableConcept(t, "SubDetailComponent", "category", element.getCategory(), -1); 5884 } 5885 if (element.hasProductOrService()) { 5886 composeCodeableConcept(t, "SubDetailComponent", "productOrService", element.getProductOrService(), -1); 5887 } 5888 if (element.hasProductOrServiceEnd()) { 5889 composeCodeableConcept(t, "SubDetailComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 5890 } 5891 for (int i = 0; i < element.getModifier().size(); i++) { 5892 composeCodeableConcept(t, "SubDetailComponent", "modifier", element.getModifier().get(i), i); 5893 } 5894 for (int i = 0; i < element.getProgramCode().size(); i++) { 5895 composeCodeableConcept(t, "SubDetailComponent", "programCode", element.getProgramCode().get(i), i); 5896 } 5897 if (element.hasPatientPaid()) { 5898 composeMoney(t, "SubDetailComponent", "patientPaid", element.getPatientPaid(), -1); 5899 } 5900 if (element.hasQuantity()) { 5901 composeQuantity(t, "SubDetailComponent", "quantity", element.getQuantity(), -1); 5902 } 5903 if (element.hasUnitPrice()) { 5904 composeMoney(t, "SubDetailComponent", "unitPrice", element.getUnitPrice(), -1); 5905 } 5906 if (element.hasFactorElement()) { 5907 composeDecimal(t, "SubDetailComponent", "factor", element.getFactorElement(), -1); 5908 } 5909 if (element.hasTax()) { 5910 composeMoney(t, "SubDetailComponent", "tax", element.getTax(), -1); 5911 } 5912 if (element.hasNet()) { 5913 composeMoney(t, "SubDetailComponent", "net", element.getNet(), -1); 5914 } 5915 for (int i = 0; i < element.getUdi().size(); i++) { 5916 composeReference(t, "SubDetailComponent", "udi", element.getUdi().get(i), i); 5917 } 5918 } 5919 5920 protected void composeClaimResponse(Complex parent, String parentType, String name, ClaimResponse element, int index) { 5921 if (element == null) 5922 return; 5923 Complex t; 5924 if (Utilities.noString(parentType)) 5925 t = parent; 5926 else { 5927 t = parent.predicate("fhir:"+name,index > -1); 5928 } 5929 composeDomainResource(t, "ClaimResponse", name, element, index); 5930 for (int i = 0; i < element.getIdentifier().size(); i++) { 5931 composeIdentifier(t, "ClaimResponse", "identifier", element.getIdentifier().get(i), i); 5932 } 5933 for (int i = 0; i < element.getTraceNumber().size(); i++) { 5934 composeIdentifier(t, "ClaimResponse", "traceNumber", element.getTraceNumber().get(i), i); 5935 } 5936 if (element.hasStatusElement()) { 5937 composeEnum(t, "ClaimResponse", "status", element.getStatusElement(), -1); 5938 } 5939 if (element.hasType()) { 5940 composeCodeableConcept(t, "ClaimResponse", "type", element.getType(), -1); 5941 } 5942 if (element.hasSubType()) { 5943 composeCodeableConcept(t, "ClaimResponse", "subType", element.getSubType(), -1); 5944 } 5945 if (element.hasUseElement()) { 5946 composeEnum(t, "ClaimResponse", "use", element.getUseElement(), -1); 5947 } 5948 if (element.hasPatient()) { 5949 composeReference(t, "ClaimResponse", "patient", element.getPatient(), -1); 5950 } 5951 if (element.hasCreatedElement()) { 5952 composeDateTime(t, "ClaimResponse", "created", element.getCreatedElement(), -1); 5953 } 5954 if (element.hasInsurer()) { 5955 composeReference(t, "ClaimResponse", "insurer", element.getInsurer(), -1); 5956 } 5957 if (element.hasRequestor()) { 5958 composeReference(t, "ClaimResponse", "requestor", element.getRequestor(), -1); 5959 } 5960 if (element.hasRequest()) { 5961 composeReference(t, "ClaimResponse", "request", element.getRequest(), -1); 5962 } 5963 if (element.hasOutcomeElement()) { 5964 composeEnum(t, "ClaimResponse", "outcome", element.getOutcomeElement(), -1); 5965 } 5966 if (element.hasDecision()) { 5967 composeCodeableConcept(t, "ClaimResponse", "decision", element.getDecision(), -1); 5968 } 5969 if (element.hasDispositionElement()) { 5970 composeString(t, "ClaimResponse", "disposition", element.getDispositionElement(), -1); 5971 } 5972 if (element.hasPreAuthRefElement()) { 5973 composeString(t, "ClaimResponse", "preAuthRef", element.getPreAuthRefElement(), -1); 5974 } 5975 if (element.hasPreAuthPeriod()) { 5976 composePeriod(t, "ClaimResponse", "preAuthPeriod", element.getPreAuthPeriod(), -1); 5977 } 5978 for (int i = 0; i < element.getEvent().size(); i++) { 5979 composeClaimResponseEventComponent(t, "ClaimResponse", "event", element.getEvent().get(i), i); 5980 } 5981 if (element.hasPayeeType()) { 5982 composeCodeableConcept(t, "ClaimResponse", "payeeType", element.getPayeeType(), -1); 5983 } 5984 for (int i = 0; i < element.getEncounter().size(); i++) { 5985 composeReference(t, "ClaimResponse", "encounter", element.getEncounter().get(i), i); 5986 } 5987 if (element.hasDiagnosisRelatedGroup()) { 5988 composeCodeableConcept(t, "ClaimResponse", "diagnosisRelatedGroup", element.getDiagnosisRelatedGroup(), -1); 5989 } 5990 for (int i = 0; i < element.getItem().size(); i++) { 5991 composeClaimResponseItemComponent(t, "ClaimResponse", "item", element.getItem().get(i), i); 5992 } 5993 for (int i = 0; i < element.getAddItem().size(); i++) { 5994 composeClaimResponseAddedItemComponent(t, "ClaimResponse", "addItem", element.getAddItem().get(i), i); 5995 } 5996 for (int i = 0; i < element.getAdjudication().size(); i++) { 5997 composeClaimResponseAdjudicationComponent(t, "ClaimResponse", "adjudication", element.getAdjudication().get(i), i); 5998 } 5999 for (int i = 0; i < element.getTotal().size(); i++) { 6000 composeClaimResponseTotalComponent(t, "ClaimResponse", "total", element.getTotal().get(i), i); 6001 } 6002 if (element.hasPayment()) { 6003 composeClaimResponsePaymentComponent(t, "ClaimResponse", "payment", element.getPayment(), -1); 6004 } 6005 if (element.hasFundsReserve()) { 6006 composeCodeableConcept(t, "ClaimResponse", "fundsReserve", element.getFundsReserve(), -1); 6007 } 6008 if (element.hasFormCode()) { 6009 composeCodeableConcept(t, "ClaimResponse", "formCode", element.getFormCode(), -1); 6010 } 6011 if (element.hasForm()) { 6012 composeAttachment(t, "ClaimResponse", "form", element.getForm(), -1); 6013 } 6014 for (int i = 0; i < element.getProcessNote().size(); i++) { 6015 composeClaimResponseNoteComponent(t, "ClaimResponse", "processNote", element.getProcessNote().get(i), i); 6016 } 6017 for (int i = 0; i < element.getCommunicationRequest().size(); i++) { 6018 composeReference(t, "ClaimResponse", "communicationRequest", element.getCommunicationRequest().get(i), i); 6019 } 6020 for (int i = 0; i < element.getInsurance().size(); i++) { 6021 composeClaimResponseInsuranceComponent(t, "ClaimResponse", "insurance", element.getInsurance().get(i), i); 6022 } 6023 for (int i = 0; i < element.getError().size(); i++) { 6024 composeClaimResponseErrorComponent(t, "ClaimResponse", "error", element.getError().get(i), i); 6025 } 6026 } 6027 6028 protected void composeClaimResponseEventComponent(Complex parent, String parentType, String name, ClaimResponse.ClaimResponseEventComponent element, int index) { 6029 if (element == null) 6030 return; 6031 Complex t; 6032 if (Utilities.noString(parentType)) 6033 t = parent; 6034 else { 6035 t = parent.predicate("fhir:"+name,index > -1); 6036 } 6037 composeBackboneElement(t, "event", name, element, index); 6038 if (element.hasType()) { 6039 composeCodeableConcept(t, "ClaimResponseEventComponent", "type", element.getType(), -1); 6040 } 6041 if (element.hasWhen()) { 6042 composeType(t, "ClaimResponseEventComponent", "when", element.getWhen(), -1); 6043 } 6044 } 6045 6046 protected void composeClaimResponseItemComponent(Complex parent, String parentType, String name, ClaimResponse.ItemComponent element, int index) { 6047 if (element == null) 6048 return; 6049 Complex t; 6050 if (Utilities.noString(parentType)) 6051 t = parent; 6052 else { 6053 t = parent.predicate("fhir:"+name,index > -1); 6054 } 6055 composeBackboneElement(t, "item", name, element, index); 6056 if (element.hasItemSequenceElement()) { 6057 composePositiveInt(t, "ItemComponent", "itemSequence", element.getItemSequenceElement(), -1); 6058 } 6059 for (int i = 0; i < element.getTraceNumber().size(); i++) { 6060 composeIdentifier(t, "ItemComponent", "traceNumber", element.getTraceNumber().get(i), i); 6061 } 6062 for (int i = 0; i < element.getNoteNumber().size(); i++) { 6063 composePositiveInt(t, "ItemComponent", "noteNumber", element.getNoteNumber().get(i), i); 6064 } 6065 if (element.hasReviewOutcome()) { 6066 composeClaimResponseReviewOutcomeComponent(t, "ItemComponent", "reviewOutcome", element.getReviewOutcome(), -1); 6067 } 6068 for (int i = 0; i < element.getAdjudication().size(); i++) { 6069 composeClaimResponseAdjudicationComponent(t, "ItemComponent", "adjudication", element.getAdjudication().get(i), i); 6070 } 6071 for (int i = 0; i < element.getDetail().size(); i++) { 6072 composeClaimResponseItemDetailComponent(t, "ItemComponent", "detail", element.getDetail().get(i), i); 6073 } 6074 } 6075 6076 protected void composeClaimResponseReviewOutcomeComponent(Complex parent, String parentType, String name, ClaimResponse.ReviewOutcomeComponent element, int index) { 6077 if (element == null) 6078 return; 6079 Complex t; 6080 if (Utilities.noString(parentType)) 6081 t = parent; 6082 else { 6083 t = parent.predicate("fhir:"+name,index > -1); 6084 } 6085 composeBackboneElement(t, "reviewOutcome", name, element, index); 6086 if (element.hasDecision()) { 6087 composeCodeableConcept(t, "ReviewOutcomeComponent", "decision", element.getDecision(), -1); 6088 } 6089 for (int i = 0; i < element.getReason().size(); i++) { 6090 composeCodeableConcept(t, "ReviewOutcomeComponent", "reason", element.getReason().get(i), i); 6091 } 6092 if (element.hasPreAuthRefElement()) { 6093 composeString(t, "ReviewOutcomeComponent", "preAuthRef", element.getPreAuthRefElement(), -1); 6094 } 6095 if (element.hasPreAuthPeriod()) { 6096 composePeriod(t, "ReviewOutcomeComponent", "preAuthPeriod", element.getPreAuthPeriod(), -1); 6097 } 6098 } 6099 6100 protected void composeClaimResponseAdjudicationComponent(Complex parent, String parentType, String name, ClaimResponse.AdjudicationComponent element, int index) { 6101 if (element == null) 6102 return; 6103 Complex t; 6104 if (Utilities.noString(parentType)) 6105 t = parent; 6106 else { 6107 t = parent.predicate("fhir:"+name,index > -1); 6108 } 6109 composeBackboneElement(t, "adjudication", name, element, index); 6110 if (element.hasCategory()) { 6111 composeCodeableConcept(t, "AdjudicationComponent", "category", element.getCategory(), -1); 6112 } 6113 if (element.hasReason()) { 6114 composeCodeableConcept(t, "AdjudicationComponent", "reason", element.getReason(), -1); 6115 } 6116 if (element.hasAmount()) { 6117 composeMoney(t, "AdjudicationComponent", "amount", element.getAmount(), -1); 6118 } 6119 if (element.hasQuantity()) { 6120 composeQuantity(t, "AdjudicationComponent", "quantity", element.getQuantity(), -1); 6121 } 6122 } 6123 6124 protected void composeClaimResponseItemDetailComponent(Complex parent, String parentType, String name, ClaimResponse.ItemDetailComponent element, int index) { 6125 if (element == null) 6126 return; 6127 Complex t; 6128 if (Utilities.noString(parentType)) 6129 t = parent; 6130 else { 6131 t = parent.predicate("fhir:"+name,index > -1); 6132 } 6133 composeBackboneElement(t, "detail", name, element, index); 6134 if (element.hasDetailSequenceElement()) { 6135 composePositiveInt(t, "ItemDetailComponent", "detailSequence", element.getDetailSequenceElement(), -1); 6136 } 6137 for (int i = 0; i < element.getTraceNumber().size(); i++) { 6138 composeIdentifier(t, "ItemDetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 6139 } 6140 for (int i = 0; i < element.getNoteNumber().size(); i++) { 6141 composePositiveInt(t, "ItemDetailComponent", "noteNumber", element.getNoteNumber().get(i), i); 6142 } 6143 if (element.hasReviewOutcome()) { 6144 composeClaimResponseReviewOutcomeComponent(t, "ItemDetailComponent", "reviewOutcome", element.getReviewOutcome(), -1); 6145 } 6146 for (int i = 0; i < element.getAdjudication().size(); i++) { 6147 composeClaimResponseAdjudicationComponent(t, "ItemDetailComponent", "adjudication", element.getAdjudication().get(i), i); 6148 } 6149 for (int i = 0; i < element.getSubDetail().size(); i++) { 6150 composeClaimResponseSubDetailComponent(t, "ItemDetailComponent", "subDetail", element.getSubDetail().get(i), i); 6151 } 6152 } 6153 6154 protected void composeClaimResponseSubDetailComponent(Complex parent, String parentType, String name, ClaimResponse.SubDetailComponent element, int index) { 6155 if (element == null) 6156 return; 6157 Complex t; 6158 if (Utilities.noString(parentType)) 6159 t = parent; 6160 else { 6161 t = parent.predicate("fhir:"+name,index > -1); 6162 } 6163 composeBackboneElement(t, "subDetail", name, element, index); 6164 if (element.hasSubDetailSequenceElement()) { 6165 composePositiveInt(t, "SubDetailComponent", "subDetailSequence", element.getSubDetailSequenceElement(), -1); 6166 } 6167 for (int i = 0; i < element.getTraceNumber().size(); i++) { 6168 composeIdentifier(t, "SubDetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 6169 } 6170 for (int i = 0; i < element.getNoteNumber().size(); i++) { 6171 composePositiveInt(t, "SubDetailComponent", "noteNumber", element.getNoteNumber().get(i), i); 6172 } 6173 if (element.hasReviewOutcome()) { 6174 composeClaimResponseReviewOutcomeComponent(t, "SubDetailComponent", "reviewOutcome", element.getReviewOutcome(), -1); 6175 } 6176 for (int i = 0; i < element.getAdjudication().size(); i++) { 6177 composeClaimResponseAdjudicationComponent(t, "SubDetailComponent", "adjudication", element.getAdjudication().get(i), i); 6178 } 6179 } 6180 6181 protected void composeClaimResponseAddedItemComponent(Complex parent, String parentType, String name, ClaimResponse.AddedItemComponent element, int index) { 6182 if (element == null) 6183 return; 6184 Complex t; 6185 if (Utilities.noString(parentType)) 6186 t = parent; 6187 else { 6188 t = parent.predicate("fhir:"+name,index > -1); 6189 } 6190 composeBackboneElement(t, "addItem", name, element, index); 6191 for (int i = 0; i < element.getItemSequence().size(); i++) { 6192 composePositiveInt(t, "AddedItemComponent", "itemSequence", element.getItemSequence().get(i), i); 6193 } 6194 for (int i = 0; i < element.getDetailSequence().size(); i++) { 6195 composePositiveInt(t, "AddedItemComponent", "detailSequence", element.getDetailSequence().get(i), i); 6196 } 6197 for (int i = 0; i < element.getSubdetailSequence().size(); i++) { 6198 composePositiveInt(t, "AddedItemComponent", "subdetailSequence", element.getSubdetailSequence().get(i), i); 6199 } 6200 for (int i = 0; i < element.getTraceNumber().size(); i++) { 6201 composeIdentifier(t, "AddedItemComponent", "traceNumber", element.getTraceNumber().get(i), i); 6202 } 6203 for (int i = 0; i < element.getProvider().size(); i++) { 6204 composeReference(t, "AddedItemComponent", "provider", element.getProvider().get(i), i); 6205 } 6206 if (element.hasRevenue()) { 6207 composeCodeableConcept(t, "AddedItemComponent", "revenue", element.getRevenue(), -1); 6208 } 6209 if (element.hasProductOrService()) { 6210 composeCodeableConcept(t, "AddedItemComponent", "productOrService", element.getProductOrService(), -1); 6211 } 6212 if (element.hasProductOrServiceEnd()) { 6213 composeCodeableConcept(t, "AddedItemComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 6214 } 6215 for (int i = 0; i < element.getRequest().size(); i++) { 6216 composeReference(t, "AddedItemComponent", "request", element.getRequest().get(i), i); 6217 } 6218 for (int i = 0; i < element.getModifier().size(); i++) { 6219 composeCodeableConcept(t, "AddedItemComponent", "modifier", element.getModifier().get(i), i); 6220 } 6221 for (int i = 0; i < element.getProgramCode().size(); i++) { 6222 composeCodeableConcept(t, "AddedItemComponent", "programCode", element.getProgramCode().get(i), i); 6223 } 6224 if (element.hasServiced()) { 6225 composeType(t, "AddedItemComponent", "serviced", element.getServiced(), -1); 6226 } 6227 if (element.hasLocation()) { 6228 composeType(t, "AddedItemComponent", "location", element.getLocation(), -1); 6229 } 6230 if (element.hasQuantity()) { 6231 composeQuantity(t, "AddedItemComponent", "quantity", element.getQuantity(), -1); 6232 } 6233 if (element.hasUnitPrice()) { 6234 composeMoney(t, "AddedItemComponent", "unitPrice", element.getUnitPrice(), -1); 6235 } 6236 if (element.hasFactorElement()) { 6237 composeDecimal(t, "AddedItemComponent", "factor", element.getFactorElement(), -1); 6238 } 6239 if (element.hasTax()) { 6240 composeMoney(t, "AddedItemComponent", "tax", element.getTax(), -1); 6241 } 6242 if (element.hasNet()) { 6243 composeMoney(t, "AddedItemComponent", "net", element.getNet(), -1); 6244 } 6245 for (int i = 0; i < element.getBodySite().size(); i++) { 6246 composeClaimResponseBodySiteComponent(t, "AddedItemComponent", "bodySite", element.getBodySite().get(i), i); 6247 } 6248 for (int i = 0; i < element.getNoteNumber().size(); i++) { 6249 composePositiveInt(t, "AddedItemComponent", "noteNumber", element.getNoteNumber().get(i), i); 6250 } 6251 if (element.hasReviewOutcome()) { 6252 composeClaimResponseReviewOutcomeComponent(t, "AddedItemComponent", "reviewOutcome", element.getReviewOutcome(), -1); 6253 } 6254 for (int i = 0; i < element.getAdjudication().size(); i++) { 6255 composeClaimResponseAdjudicationComponent(t, "AddedItemComponent", "adjudication", element.getAdjudication().get(i), i); 6256 } 6257 for (int i = 0; i < element.getDetail().size(); i++) { 6258 composeClaimResponseAddedItemDetailComponent(t, "AddedItemComponent", "detail", element.getDetail().get(i), i); 6259 } 6260 } 6261 6262 protected void composeClaimResponseBodySiteComponent(Complex parent, String parentType, String name, ClaimResponse.BodySiteComponent element, int index) { 6263 if (element == null) 6264 return; 6265 Complex t; 6266 if (Utilities.noString(parentType)) 6267 t = parent; 6268 else { 6269 t = parent.predicate("fhir:"+name,index > -1); 6270 } 6271 composeBackboneElement(t, "bodySite", name, element, index); 6272 for (int i = 0; i < element.getSite().size(); i++) { 6273 composeCodeableReference(t, "BodySiteComponent", "site", element.getSite().get(i), i); 6274 } 6275 for (int i = 0; i < element.getSubSite().size(); i++) { 6276 composeCodeableConcept(t, "BodySiteComponent", "subSite", element.getSubSite().get(i), i); 6277 } 6278 } 6279 6280 protected void composeClaimResponseAddedItemDetailComponent(Complex parent, String parentType, String name, ClaimResponse.AddedItemDetailComponent element, int index) { 6281 if (element == null) 6282 return; 6283 Complex t; 6284 if (Utilities.noString(parentType)) 6285 t = parent; 6286 else { 6287 t = parent.predicate("fhir:"+name,index > -1); 6288 } 6289 composeBackboneElement(t, "detail", name, element, index); 6290 for (int i = 0; i < element.getTraceNumber().size(); i++) { 6291 composeIdentifier(t, "AddedItemDetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 6292 } 6293 if (element.hasRevenue()) { 6294 composeCodeableConcept(t, "AddedItemDetailComponent", "revenue", element.getRevenue(), -1); 6295 } 6296 if (element.hasProductOrService()) { 6297 composeCodeableConcept(t, "AddedItemDetailComponent", "productOrService", element.getProductOrService(), -1); 6298 } 6299 if (element.hasProductOrServiceEnd()) { 6300 composeCodeableConcept(t, "AddedItemDetailComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 6301 } 6302 for (int i = 0; i < element.getModifier().size(); i++) { 6303 composeCodeableConcept(t, "AddedItemDetailComponent", "modifier", element.getModifier().get(i), i); 6304 } 6305 if (element.hasQuantity()) { 6306 composeQuantity(t, "AddedItemDetailComponent", "quantity", element.getQuantity(), -1); 6307 } 6308 if (element.hasUnitPrice()) { 6309 composeMoney(t, "AddedItemDetailComponent", "unitPrice", element.getUnitPrice(), -1); 6310 } 6311 if (element.hasFactorElement()) { 6312 composeDecimal(t, "AddedItemDetailComponent", "factor", element.getFactorElement(), -1); 6313 } 6314 if (element.hasTax()) { 6315 composeMoney(t, "AddedItemDetailComponent", "tax", element.getTax(), -1); 6316 } 6317 if (element.hasNet()) { 6318 composeMoney(t, "AddedItemDetailComponent", "net", element.getNet(), -1); 6319 } 6320 for (int i = 0; i < element.getNoteNumber().size(); i++) { 6321 composePositiveInt(t, "AddedItemDetailComponent", "noteNumber", element.getNoteNumber().get(i), i); 6322 } 6323 if (element.hasReviewOutcome()) { 6324 composeClaimResponseReviewOutcomeComponent(t, "AddedItemDetailComponent", "reviewOutcome", element.getReviewOutcome(), -1); 6325 } 6326 for (int i = 0; i < element.getAdjudication().size(); i++) { 6327 composeClaimResponseAdjudicationComponent(t, "AddedItemDetailComponent", "adjudication", element.getAdjudication().get(i), i); 6328 } 6329 for (int i = 0; i < element.getSubDetail().size(); i++) { 6330 composeClaimResponseAddedItemSubDetailComponent(t, "AddedItemDetailComponent", "subDetail", element.getSubDetail().get(i), i); 6331 } 6332 } 6333 6334 protected void composeClaimResponseAddedItemSubDetailComponent(Complex parent, String parentType, String name, ClaimResponse.AddedItemSubDetailComponent element, int index) { 6335 if (element == null) 6336 return; 6337 Complex t; 6338 if (Utilities.noString(parentType)) 6339 t = parent; 6340 else { 6341 t = parent.predicate("fhir:"+name,index > -1); 6342 } 6343 composeBackboneElement(t, "subDetail", name, element, index); 6344 for (int i = 0; i < element.getTraceNumber().size(); i++) { 6345 composeIdentifier(t, "AddedItemSubDetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 6346 } 6347 if (element.hasRevenue()) { 6348 composeCodeableConcept(t, "AddedItemSubDetailComponent", "revenue", element.getRevenue(), -1); 6349 } 6350 if (element.hasProductOrService()) { 6351 composeCodeableConcept(t, "AddedItemSubDetailComponent", "productOrService", element.getProductOrService(), -1); 6352 } 6353 if (element.hasProductOrServiceEnd()) { 6354 composeCodeableConcept(t, "AddedItemSubDetailComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 6355 } 6356 for (int i = 0; i < element.getModifier().size(); i++) { 6357 composeCodeableConcept(t, "AddedItemSubDetailComponent", "modifier", element.getModifier().get(i), i); 6358 } 6359 if (element.hasQuantity()) { 6360 composeQuantity(t, "AddedItemSubDetailComponent", "quantity", element.getQuantity(), -1); 6361 } 6362 if (element.hasUnitPrice()) { 6363 composeMoney(t, "AddedItemSubDetailComponent", "unitPrice", element.getUnitPrice(), -1); 6364 } 6365 if (element.hasFactorElement()) { 6366 composeDecimal(t, "AddedItemSubDetailComponent", "factor", element.getFactorElement(), -1); 6367 } 6368 if (element.hasTax()) { 6369 composeMoney(t, "AddedItemSubDetailComponent", "tax", element.getTax(), -1); 6370 } 6371 if (element.hasNet()) { 6372 composeMoney(t, "AddedItemSubDetailComponent", "net", element.getNet(), -1); 6373 } 6374 for (int i = 0; i < element.getNoteNumber().size(); i++) { 6375 composePositiveInt(t, "AddedItemSubDetailComponent", "noteNumber", element.getNoteNumber().get(i), i); 6376 } 6377 if (element.hasReviewOutcome()) { 6378 composeClaimResponseReviewOutcomeComponent(t, "AddedItemSubDetailComponent", "reviewOutcome", element.getReviewOutcome(), -1); 6379 } 6380 for (int i = 0; i < element.getAdjudication().size(); i++) { 6381 composeClaimResponseAdjudicationComponent(t, "AddedItemSubDetailComponent", "adjudication", element.getAdjudication().get(i), i); 6382 } 6383 } 6384 6385 protected void composeClaimResponseTotalComponent(Complex parent, String parentType, String name, ClaimResponse.TotalComponent element, int index) { 6386 if (element == null) 6387 return; 6388 Complex t; 6389 if (Utilities.noString(parentType)) 6390 t = parent; 6391 else { 6392 t = parent.predicate("fhir:"+name,index > -1); 6393 } 6394 composeBackboneElement(t, "total", name, element, index); 6395 if (element.hasCategory()) { 6396 composeCodeableConcept(t, "TotalComponent", "category", element.getCategory(), -1); 6397 } 6398 if (element.hasAmount()) { 6399 composeMoney(t, "TotalComponent", "amount", element.getAmount(), -1); 6400 } 6401 } 6402 6403 protected void composeClaimResponsePaymentComponent(Complex parent, String parentType, String name, ClaimResponse.PaymentComponent element, int index) { 6404 if (element == null) 6405 return; 6406 Complex t; 6407 if (Utilities.noString(parentType)) 6408 t = parent; 6409 else { 6410 t = parent.predicate("fhir:"+name,index > -1); 6411 } 6412 composeBackboneElement(t, "payment", name, element, index); 6413 if (element.hasType()) { 6414 composeCodeableConcept(t, "PaymentComponent", "type", element.getType(), -1); 6415 } 6416 if (element.hasAdjustment()) { 6417 composeMoney(t, "PaymentComponent", "adjustment", element.getAdjustment(), -1); 6418 } 6419 if (element.hasAdjustmentReason()) { 6420 composeCodeableConcept(t, "PaymentComponent", "adjustmentReason", element.getAdjustmentReason(), -1); 6421 } 6422 if (element.hasDateElement()) { 6423 composeDate(t, "PaymentComponent", "date", element.getDateElement(), -1); 6424 } 6425 if (element.hasAmount()) { 6426 composeMoney(t, "PaymentComponent", "amount", element.getAmount(), -1); 6427 } 6428 if (element.hasIdentifier()) { 6429 composeIdentifier(t, "PaymentComponent", "identifier", element.getIdentifier(), -1); 6430 } 6431 } 6432 6433 protected void composeClaimResponseNoteComponent(Complex parent, String parentType, String name, ClaimResponse.NoteComponent element, int index) { 6434 if (element == null) 6435 return; 6436 Complex t; 6437 if (Utilities.noString(parentType)) 6438 t = parent; 6439 else { 6440 t = parent.predicate("fhir:"+name,index > -1); 6441 } 6442 composeBackboneElement(t, "processNote", name, element, index); 6443 if (element.hasNumberElement()) { 6444 composePositiveInt(t, "NoteComponent", "number", element.getNumberElement(), -1); 6445 } 6446 if (element.hasType()) { 6447 composeCodeableConcept(t, "NoteComponent", "type", element.getType(), -1); 6448 } 6449 if (element.hasTextElement()) { 6450 composeString(t, "NoteComponent", "text", element.getTextElement(), -1); 6451 } 6452 if (element.hasLanguage()) { 6453 composeCodeableConcept(t, "NoteComponent", "language", element.getLanguage(), -1); 6454 } 6455 } 6456 6457 protected void composeClaimResponseInsuranceComponent(Complex parent, String parentType, String name, ClaimResponse.InsuranceComponent element, int index) { 6458 if (element == null) 6459 return; 6460 Complex t; 6461 if (Utilities.noString(parentType)) 6462 t = parent; 6463 else { 6464 t = parent.predicate("fhir:"+name,index > -1); 6465 } 6466 composeBackboneElement(t, "insurance", name, element, index); 6467 if (element.hasSequenceElement()) { 6468 composePositiveInt(t, "InsuranceComponent", "sequence", element.getSequenceElement(), -1); 6469 } 6470 if (element.hasFocalElement()) { 6471 composeBoolean(t, "InsuranceComponent", "focal", element.getFocalElement(), -1); 6472 } 6473 if (element.hasCoverage()) { 6474 composeReference(t, "InsuranceComponent", "coverage", element.getCoverage(), -1); 6475 } 6476 if (element.hasBusinessArrangementElement()) { 6477 composeString(t, "InsuranceComponent", "businessArrangement", element.getBusinessArrangementElement(), -1); 6478 } 6479 if (element.hasClaimResponse()) { 6480 composeReference(t, "InsuranceComponent", "claimResponse", element.getClaimResponse(), -1); 6481 } 6482 } 6483 6484 protected void composeClaimResponseErrorComponent(Complex parent, String parentType, String name, ClaimResponse.ErrorComponent element, int index) { 6485 if (element == null) 6486 return; 6487 Complex t; 6488 if (Utilities.noString(parentType)) 6489 t = parent; 6490 else { 6491 t = parent.predicate("fhir:"+name,index > -1); 6492 } 6493 composeBackboneElement(t, "error", name, element, index); 6494 if (element.hasItemSequenceElement()) { 6495 composePositiveInt(t, "ErrorComponent", "itemSequence", element.getItemSequenceElement(), -1); 6496 } 6497 if (element.hasDetailSequenceElement()) { 6498 composePositiveInt(t, "ErrorComponent", "detailSequence", element.getDetailSequenceElement(), -1); 6499 } 6500 if (element.hasSubDetailSequenceElement()) { 6501 composePositiveInt(t, "ErrorComponent", "subDetailSequence", element.getSubDetailSequenceElement(), -1); 6502 } 6503 if (element.hasCode()) { 6504 composeCodeableConcept(t, "ErrorComponent", "code", element.getCode(), -1); 6505 } 6506 for (int i = 0; i < element.getExpression().size(); i++) { 6507 composeString(t, "ErrorComponent", "expression", element.getExpression().get(i), i); 6508 } 6509 } 6510 6511 protected void composeClinicalImpression(Complex parent, String parentType, String name, ClinicalImpression element, int index) { 6512 if (element == null) 6513 return; 6514 Complex t; 6515 if (Utilities.noString(parentType)) 6516 t = parent; 6517 else { 6518 t = parent.predicate("fhir:"+name,index > -1); 6519 } 6520 composeDomainResource(t, "ClinicalImpression", name, element, index); 6521 for (int i = 0; i < element.getIdentifier().size(); i++) { 6522 composeIdentifier(t, "ClinicalImpression", "identifier", element.getIdentifier().get(i), i); 6523 } 6524 if (element.hasStatusElement()) { 6525 composeEnum(t, "ClinicalImpression", "status", element.getStatusElement(), -1); 6526 } 6527 if (element.hasStatusReason()) { 6528 composeCodeableConcept(t, "ClinicalImpression", "statusReason", element.getStatusReason(), -1); 6529 } 6530 if (element.hasDescriptionElement()) { 6531 composeString(t, "ClinicalImpression", "description", element.getDescriptionElement(), -1); 6532 } 6533 if (element.hasSubject()) { 6534 composeReference(t, "ClinicalImpression", "subject", element.getSubject(), -1); 6535 } 6536 if (element.hasEncounter()) { 6537 composeReference(t, "ClinicalImpression", "encounter", element.getEncounter(), -1); 6538 } 6539 if (element.hasEffective()) { 6540 composeType(t, "ClinicalImpression", "effective", element.getEffective(), -1); 6541 } 6542 if (element.hasDateElement()) { 6543 composeDateTime(t, "ClinicalImpression", "date", element.getDateElement(), -1); 6544 } 6545 if (element.hasPerformer()) { 6546 composeReference(t, "ClinicalImpression", "performer", element.getPerformer(), -1); 6547 } 6548 if (element.hasPrevious()) { 6549 composeReference(t, "ClinicalImpression", "previous", element.getPrevious(), -1); 6550 } 6551 for (int i = 0; i < element.getProblem().size(); i++) { 6552 composeReference(t, "ClinicalImpression", "problem", element.getProblem().get(i), i); 6553 } 6554 if (element.hasChangePattern()) { 6555 composeCodeableConcept(t, "ClinicalImpression", "changePattern", element.getChangePattern(), -1); 6556 } 6557 for (int i = 0; i < element.getProtocol().size(); i++) { 6558 composeUri(t, "ClinicalImpression", "protocol", element.getProtocol().get(i), i); 6559 } 6560 if (element.hasSummaryElement()) { 6561 composeString(t, "ClinicalImpression", "summary", element.getSummaryElement(), -1); 6562 } 6563 for (int i = 0; i < element.getFinding().size(); i++) { 6564 composeClinicalImpressionFindingComponent(t, "ClinicalImpression", "finding", element.getFinding().get(i), i); 6565 } 6566 for (int i = 0; i < element.getPrognosisCodeableConcept().size(); i++) { 6567 composeCodeableConcept(t, "ClinicalImpression", "prognosisCodeableConcept", element.getPrognosisCodeableConcept().get(i), i); 6568 } 6569 for (int i = 0; i < element.getPrognosisReference().size(); i++) { 6570 composeReference(t, "ClinicalImpression", "prognosisReference", element.getPrognosisReference().get(i), i); 6571 } 6572 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 6573 composeReference(t, "ClinicalImpression", "supportingInfo", element.getSupportingInfo().get(i), i); 6574 } 6575 for (int i = 0; i < element.getNote().size(); i++) { 6576 composeAnnotation(t, "ClinicalImpression", "note", element.getNote().get(i), i); 6577 } 6578 } 6579 6580 protected void composeClinicalImpressionFindingComponent(Complex parent, String parentType, String name, ClinicalImpression.ClinicalImpressionFindingComponent element, int index) { 6581 if (element == null) 6582 return; 6583 Complex t; 6584 if (Utilities.noString(parentType)) 6585 t = parent; 6586 else { 6587 t = parent.predicate("fhir:"+name,index > -1); 6588 } 6589 composeBackboneElement(t, "finding", name, element, index); 6590 if (element.hasItem()) { 6591 composeCodeableReference(t, "ClinicalImpressionFindingComponent", "item", element.getItem(), -1); 6592 } 6593 if (element.hasBasisElement()) { 6594 composeString(t, "ClinicalImpressionFindingComponent", "basis", element.getBasisElement(), -1); 6595 } 6596 } 6597 6598 protected void composeClinicalUseDefinition(Complex parent, String parentType, String name, ClinicalUseDefinition element, int index) { 6599 if (element == null) 6600 return; 6601 Complex t; 6602 if (Utilities.noString(parentType)) 6603 t = parent; 6604 else { 6605 t = parent.predicate("fhir:"+name,index > -1); 6606 } 6607 composeDomainResource(t, "ClinicalUseDefinition", name, element, index); 6608 for (int i = 0; i < element.getIdentifier().size(); i++) { 6609 composeIdentifier(t, "ClinicalUseDefinition", "identifier", element.getIdentifier().get(i), i); 6610 } 6611 if (element.hasTypeElement()) { 6612 composeEnum(t, "ClinicalUseDefinition", "type", element.getTypeElement(), -1); 6613 } 6614 for (int i = 0; i < element.getCategory().size(); i++) { 6615 composeCodeableConcept(t, "ClinicalUseDefinition", "category", element.getCategory().get(i), i); 6616 } 6617 for (int i = 0; i < element.getSubject().size(); i++) { 6618 composeReference(t, "ClinicalUseDefinition", "subject", element.getSubject().get(i), i); 6619 } 6620 if (element.hasStatus()) { 6621 composeCodeableConcept(t, "ClinicalUseDefinition", "status", element.getStatus(), -1); 6622 } 6623 if (element.hasContraindication()) { 6624 composeClinicalUseDefinitionContraindicationComponent(t, "ClinicalUseDefinition", "contraindication", element.getContraindication(), -1); 6625 } 6626 if (element.hasIndication()) { 6627 composeClinicalUseDefinitionIndicationComponent(t, "ClinicalUseDefinition", "indication", element.getIndication(), -1); 6628 } 6629 if (element.hasInteraction()) { 6630 composeClinicalUseDefinitionInteractionComponent(t, "ClinicalUseDefinition", "interaction", element.getInteraction(), -1); 6631 } 6632 for (int i = 0; i < element.getPopulation().size(); i++) { 6633 composeReference(t, "ClinicalUseDefinition", "population", element.getPopulation().get(i), i); 6634 } 6635 for (int i = 0; i < element.getLibrary().size(); i++) { 6636 composeCanonical(t, "ClinicalUseDefinition", "library", element.getLibrary().get(i), i); 6637 } 6638 if (element.hasUndesirableEffect()) { 6639 composeClinicalUseDefinitionUndesirableEffectComponent(t, "ClinicalUseDefinition", "undesirableEffect", element.getUndesirableEffect(), -1); 6640 } 6641 if (element.hasWarning()) { 6642 composeClinicalUseDefinitionWarningComponent(t, "ClinicalUseDefinition", "warning", element.getWarning(), -1); 6643 } 6644 } 6645 6646 protected void composeClinicalUseDefinitionContraindicationComponent(Complex parent, String parentType, String name, ClinicalUseDefinition.ClinicalUseDefinitionContraindicationComponent element, int index) { 6647 if (element == null) 6648 return; 6649 Complex t; 6650 if (Utilities.noString(parentType)) 6651 t = parent; 6652 else { 6653 t = parent.predicate("fhir:"+name,index > -1); 6654 } 6655 composeBackboneElement(t, "contraindication", name, element, index); 6656 if (element.hasDiseaseSymptomProcedure()) { 6657 composeCodeableReference(t, "ClinicalUseDefinitionContraindicationComponent", "diseaseSymptomProcedure", element.getDiseaseSymptomProcedure(), -1); 6658 } 6659 if (element.hasDiseaseStatus()) { 6660 composeCodeableReference(t, "ClinicalUseDefinitionContraindicationComponent", "diseaseStatus", element.getDiseaseStatus(), -1); 6661 } 6662 for (int i = 0; i < element.getComorbidity().size(); i++) { 6663 composeCodeableReference(t, "ClinicalUseDefinitionContraindicationComponent", "comorbidity", element.getComorbidity().get(i), i); 6664 } 6665 for (int i = 0; i < element.getIndication().size(); i++) { 6666 composeReference(t, "ClinicalUseDefinitionContraindicationComponent", "indication", element.getIndication().get(i), i); 6667 } 6668 if (element.hasApplicability()) { 6669 composeExpression(t, "ClinicalUseDefinitionContraindicationComponent", "applicability", element.getApplicability(), -1); 6670 } 6671 for (int i = 0; i < element.getOtherTherapy().size(); i++) { 6672 composeClinicalUseDefinitionContraindicationOtherTherapyComponent(t, "ClinicalUseDefinitionContraindicationComponent", "otherTherapy", element.getOtherTherapy().get(i), i); 6673 } 6674 } 6675 6676 protected void composeClinicalUseDefinitionContraindicationOtherTherapyComponent(Complex parent, String parentType, String name, ClinicalUseDefinition.ClinicalUseDefinitionContraindicationOtherTherapyComponent element, int index) { 6677 if (element == null) 6678 return; 6679 Complex t; 6680 if (Utilities.noString(parentType)) 6681 t = parent; 6682 else { 6683 t = parent.predicate("fhir:"+name,index > -1); 6684 } 6685 composeBackboneElement(t, "otherTherapy", name, element, index); 6686 if (element.hasRelationshipType()) { 6687 composeCodeableConcept(t, "ClinicalUseDefinitionContraindicationOtherTherapyComponent", "relationshipType", element.getRelationshipType(), -1); 6688 } 6689 if (element.hasTreatment()) { 6690 composeCodeableReference(t, "ClinicalUseDefinitionContraindicationOtherTherapyComponent", "treatment", element.getTreatment(), -1); 6691 } 6692 } 6693 6694 protected void composeClinicalUseDefinitionIndicationComponent(Complex parent, String parentType, String name, ClinicalUseDefinition.ClinicalUseDefinitionIndicationComponent element, int index) { 6695 if (element == null) 6696 return; 6697 Complex t; 6698 if (Utilities.noString(parentType)) 6699 t = parent; 6700 else { 6701 t = parent.predicate("fhir:"+name,index > -1); 6702 } 6703 composeBackboneElement(t, "indication", name, element, index); 6704 if (element.hasDiseaseSymptomProcedure()) { 6705 composeCodeableReference(t, "ClinicalUseDefinitionIndicationComponent", "diseaseSymptomProcedure", element.getDiseaseSymptomProcedure(), -1); 6706 } 6707 if (element.hasDiseaseStatus()) { 6708 composeCodeableReference(t, "ClinicalUseDefinitionIndicationComponent", "diseaseStatus", element.getDiseaseStatus(), -1); 6709 } 6710 for (int i = 0; i < element.getComorbidity().size(); i++) { 6711 composeCodeableReference(t, "ClinicalUseDefinitionIndicationComponent", "comorbidity", element.getComorbidity().get(i), i); 6712 } 6713 if (element.hasIntendedEffect()) { 6714 composeCodeableReference(t, "ClinicalUseDefinitionIndicationComponent", "intendedEffect", element.getIntendedEffect(), -1); 6715 } 6716 if (element.hasDuration()) { 6717 composeType(t, "ClinicalUseDefinitionIndicationComponent", "duration", element.getDuration(), -1); 6718 } 6719 for (int i = 0; i < element.getUndesirableEffect().size(); i++) { 6720 composeReference(t, "ClinicalUseDefinitionIndicationComponent", "undesirableEffect", element.getUndesirableEffect().get(i), i); 6721 } 6722 if (element.hasApplicability()) { 6723 composeExpression(t, "ClinicalUseDefinitionIndicationComponent", "applicability", element.getApplicability(), -1); 6724 } 6725 for (int i = 0; i < element.getOtherTherapy().size(); i++) { 6726 composeClinicalUseDefinitionContraindicationOtherTherapyComponent(t, "ClinicalUseDefinitionIndicationComponent", "otherTherapy", element.getOtherTherapy().get(i), i); 6727 } 6728 } 6729 6730 protected void composeClinicalUseDefinitionInteractionComponent(Complex parent, String parentType, String name, ClinicalUseDefinition.ClinicalUseDefinitionInteractionComponent element, int index) { 6731 if (element == null) 6732 return; 6733 Complex t; 6734 if (Utilities.noString(parentType)) 6735 t = parent; 6736 else { 6737 t = parent.predicate("fhir:"+name,index > -1); 6738 } 6739 composeBackboneElement(t, "interaction", name, element, index); 6740 for (int i = 0; i < element.getInteractant().size(); i++) { 6741 composeClinicalUseDefinitionInteractionInteractantComponent(t, "ClinicalUseDefinitionInteractionComponent", "interactant", element.getInteractant().get(i), i); 6742 } 6743 if (element.hasType()) { 6744 composeCodeableConcept(t, "ClinicalUseDefinitionInteractionComponent", "type", element.getType(), -1); 6745 } 6746 if (element.hasEffect()) { 6747 composeCodeableReference(t, "ClinicalUseDefinitionInteractionComponent", "effect", element.getEffect(), -1); 6748 } 6749 if (element.hasIncidence()) { 6750 composeCodeableConcept(t, "ClinicalUseDefinitionInteractionComponent", "incidence", element.getIncidence(), -1); 6751 } 6752 for (int i = 0; i < element.getManagement().size(); i++) { 6753 composeCodeableConcept(t, "ClinicalUseDefinitionInteractionComponent", "management", element.getManagement().get(i), i); 6754 } 6755 } 6756 6757 protected void composeClinicalUseDefinitionInteractionInteractantComponent(Complex parent, String parentType, String name, ClinicalUseDefinition.ClinicalUseDefinitionInteractionInteractantComponent element, int index) { 6758 if (element == null) 6759 return; 6760 Complex t; 6761 if (Utilities.noString(parentType)) 6762 t = parent; 6763 else { 6764 t = parent.predicate("fhir:"+name,index > -1); 6765 } 6766 composeBackboneElement(t, "interactant", name, element, index); 6767 if (element.hasItem()) { 6768 composeType(t, "ClinicalUseDefinitionInteractionInteractantComponent", "item", element.getItem(), -1); 6769 } 6770 } 6771 6772 protected void composeClinicalUseDefinitionUndesirableEffectComponent(Complex parent, String parentType, String name, ClinicalUseDefinition.ClinicalUseDefinitionUndesirableEffectComponent element, int index) { 6773 if (element == null) 6774 return; 6775 Complex t; 6776 if (Utilities.noString(parentType)) 6777 t = parent; 6778 else { 6779 t = parent.predicate("fhir:"+name,index > -1); 6780 } 6781 composeBackboneElement(t, "undesirableEffect", name, element, index); 6782 if (element.hasSymptomConditionEffect()) { 6783 composeCodeableReference(t, "ClinicalUseDefinitionUndesirableEffectComponent", "symptomConditionEffect", element.getSymptomConditionEffect(), -1); 6784 } 6785 if (element.hasClassification()) { 6786 composeCodeableConcept(t, "ClinicalUseDefinitionUndesirableEffectComponent", "classification", element.getClassification(), -1); 6787 } 6788 if (element.hasFrequencyOfOccurrence()) { 6789 composeCodeableConcept(t, "ClinicalUseDefinitionUndesirableEffectComponent", "frequencyOfOccurrence", element.getFrequencyOfOccurrence(), -1); 6790 } 6791 } 6792 6793 protected void composeClinicalUseDefinitionWarningComponent(Complex parent, String parentType, String name, ClinicalUseDefinition.ClinicalUseDefinitionWarningComponent element, int index) { 6794 if (element == null) 6795 return; 6796 Complex t; 6797 if (Utilities.noString(parentType)) 6798 t = parent; 6799 else { 6800 t = parent.predicate("fhir:"+name,index > -1); 6801 } 6802 composeBackboneElement(t, "warning", name, element, index); 6803 if (element.hasDescriptionElement()) { 6804 composeMarkdown(t, "ClinicalUseDefinitionWarningComponent", "description", element.getDescriptionElement(), -1); 6805 } 6806 if (element.hasCode()) { 6807 composeCodeableConcept(t, "ClinicalUseDefinitionWarningComponent", "code", element.getCode(), -1); 6808 } 6809 } 6810 6811 protected void composeCodeSystem(Complex parent, String parentType, String name, CodeSystem element, int index) { 6812 if (element == null) 6813 return; 6814 Complex t; 6815 if (Utilities.noString(parentType)) 6816 t = parent; 6817 else { 6818 t = parent.predicate("fhir:"+name,index > -1); 6819 } 6820 composeMetadataResource(t, "CodeSystem", name, element, index); 6821 if (element.hasUrlElement()) { 6822 composeUri(t, "CodeSystem", "url", element.getUrlElement(), -1); 6823 } 6824 for (int i = 0; i < element.getIdentifier().size(); i++) { 6825 composeIdentifier(t, "CodeSystem", "identifier", element.getIdentifier().get(i), i); 6826 } 6827 if (element.hasVersionElement()) { 6828 composeString(t, "CodeSystem", "version", element.getVersionElement(), -1); 6829 } 6830 if (element.hasVersionAlgorithm()) { 6831 composeType(t, "CodeSystem", "versionAlgorithm", element.getVersionAlgorithm(), -1); 6832 } 6833 if (element.hasNameElement()) { 6834 composeString(t, "CodeSystem", "name", element.getNameElement(), -1); 6835 } 6836 if (element.hasTitleElement()) { 6837 composeString(t, "CodeSystem", "title", element.getTitleElement(), -1); 6838 } 6839 if (element.hasStatusElement()) { 6840 composeEnum(t, "CodeSystem", "status", element.getStatusElement(), -1); 6841 } 6842 if (element.hasExperimentalElement()) { 6843 composeBoolean(t, "CodeSystem", "experimental", element.getExperimentalElement(), -1); 6844 } 6845 if (element.hasDateElement()) { 6846 composeDateTime(t, "CodeSystem", "date", element.getDateElement(), -1); 6847 } 6848 if (element.hasPublisherElement()) { 6849 composeString(t, "CodeSystem", "publisher", element.getPublisherElement(), -1); 6850 } 6851 for (int i = 0; i < element.getContact().size(); i++) { 6852 composeContactDetail(t, "CodeSystem", "contact", element.getContact().get(i), i); 6853 } 6854 if (element.hasDescriptionElement()) { 6855 composeMarkdown(t, "CodeSystem", "description", element.getDescriptionElement(), -1); 6856 } 6857 for (int i = 0; i < element.getUseContext().size(); i++) { 6858 composeUsageContext(t, "CodeSystem", "useContext", element.getUseContext().get(i), i); 6859 } 6860 for (int i = 0; i < element.getJurisdiction().size(); i++) { 6861 composeCodeableConcept(t, "CodeSystem", "jurisdiction", element.getJurisdiction().get(i), i); 6862 } 6863 if (element.hasPurposeElement()) { 6864 composeMarkdown(t, "CodeSystem", "purpose", element.getPurposeElement(), -1); 6865 } 6866 if (element.hasCopyrightElement()) { 6867 composeMarkdown(t, "CodeSystem", "copyright", element.getCopyrightElement(), -1); 6868 } 6869 if (element.hasCopyrightLabelElement()) { 6870 composeString(t, "CodeSystem", "copyrightLabel", element.getCopyrightLabelElement(), -1); 6871 } 6872 if (element.hasApprovalDateElement()) { 6873 composeDate(t, "CodeSystem", "approvalDate", element.getApprovalDateElement(), -1); 6874 } 6875 if (element.hasLastReviewDateElement()) { 6876 composeDate(t, "CodeSystem", "lastReviewDate", element.getLastReviewDateElement(), -1); 6877 } 6878 if (element.hasEffectivePeriod()) { 6879 composePeriod(t, "CodeSystem", "effectivePeriod", element.getEffectivePeriod(), -1); 6880 } 6881 for (int i = 0; i < element.getTopic().size(); i++) { 6882 composeCodeableConcept(t, "CodeSystem", "topic", element.getTopic().get(i), i); 6883 } 6884 for (int i = 0; i < element.getAuthor().size(); i++) { 6885 composeContactDetail(t, "CodeSystem", "author", element.getAuthor().get(i), i); 6886 } 6887 for (int i = 0; i < element.getEditor().size(); i++) { 6888 composeContactDetail(t, "CodeSystem", "editor", element.getEditor().get(i), i); 6889 } 6890 for (int i = 0; i < element.getReviewer().size(); i++) { 6891 composeContactDetail(t, "CodeSystem", "reviewer", element.getReviewer().get(i), i); 6892 } 6893 for (int i = 0; i < element.getEndorser().size(); i++) { 6894 composeContactDetail(t, "CodeSystem", "endorser", element.getEndorser().get(i), i); 6895 } 6896 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 6897 composeRelatedArtifact(t, "CodeSystem", "relatedArtifact", element.getRelatedArtifact().get(i), i); 6898 } 6899 if (element.hasCaseSensitiveElement()) { 6900 composeBoolean(t, "CodeSystem", "caseSensitive", element.getCaseSensitiveElement(), -1); 6901 } 6902 if (element.hasValueSetElement()) { 6903 composeCanonical(t, "CodeSystem", "valueSet", element.getValueSetElement(), -1); 6904 } 6905 if (element.hasHierarchyMeaningElement()) { 6906 composeEnum(t, "CodeSystem", "hierarchyMeaning", element.getHierarchyMeaningElement(), -1); 6907 } 6908 if (element.hasCompositionalElement()) { 6909 composeBoolean(t, "CodeSystem", "compositional", element.getCompositionalElement(), -1); 6910 } 6911 if (element.hasVersionNeededElement()) { 6912 composeBoolean(t, "CodeSystem", "versionNeeded", element.getVersionNeededElement(), -1); 6913 } 6914 if (element.hasContentElement()) { 6915 composeEnum(t, "CodeSystem", "content", element.getContentElement(), -1); 6916 } 6917 if (element.hasSupplementsElement()) { 6918 composeCanonical(t, "CodeSystem", "supplements", element.getSupplementsElement(), -1); 6919 } 6920 if (element.hasCountElement()) { 6921 composeUnsignedInt(t, "CodeSystem", "count", element.getCountElement(), -1); 6922 } 6923 for (int i = 0; i < element.getFilter().size(); i++) { 6924 composeCodeSystemFilterComponent(t, "CodeSystem", "filter", element.getFilter().get(i), i); 6925 } 6926 for (int i = 0; i < element.getProperty().size(); i++) { 6927 composeCodeSystemPropertyComponent(t, "CodeSystem", "property", element.getProperty().get(i), i); 6928 } 6929 for (int i = 0; i < element.getConcept().size(); i++) { 6930 composeCodeSystemConceptDefinitionComponent(t, "CodeSystem", "concept", element.getConcept().get(i), i); 6931 } 6932 } 6933 6934 protected void composeCodeSystemFilterComponent(Complex parent, String parentType, String name, CodeSystem.CodeSystemFilterComponent element, int index) { 6935 if (element == null) 6936 return; 6937 Complex t; 6938 if (Utilities.noString(parentType)) 6939 t = parent; 6940 else { 6941 t = parent.predicate("fhir:"+name,index > -1); 6942 } 6943 composeBackboneElement(t, "filter", name, element, index); 6944 if (element.hasCodeElement()) { 6945 composeCode(t, "CodeSystemFilterComponent", "code", element.getCodeElement(), -1); 6946 } 6947 if (element.hasDescriptionElement()) { 6948 composeString(t, "CodeSystemFilterComponent", "description", element.getDescriptionElement(), -1); 6949 } 6950 for (int i = 0; i < element.getOperator().size(); i++) { 6951 composeEnum(t, "CodeSystemFilterComponent", "operator", element.getOperator().get(i), i); 6952 } 6953 if (element.hasValueElement()) { 6954 composeString(t, "CodeSystemFilterComponent", "value", element.getValueElement(), -1); 6955 } 6956 } 6957 6958 protected void composeCodeSystemPropertyComponent(Complex parent, String parentType, String name, CodeSystem.PropertyComponent element, int index) { 6959 if (element == null) 6960 return; 6961 Complex t; 6962 if (Utilities.noString(parentType)) 6963 t = parent; 6964 else { 6965 t = parent.predicate("fhir:"+name,index > -1); 6966 } 6967 composeBackboneElement(t, "property", name, element, index); 6968 if (element.hasCodeElement()) { 6969 composeCode(t, "PropertyComponent", "code", element.getCodeElement(), -1); 6970 } 6971 if (element.hasUriElement()) { 6972 composeUri(t, "PropertyComponent", "uri", element.getUriElement(), -1); 6973 } 6974 if (element.hasDescriptionElement()) { 6975 composeString(t, "PropertyComponent", "description", element.getDescriptionElement(), -1); 6976 } 6977 if (element.hasTypeElement()) { 6978 composeEnum(t, "PropertyComponent", "type", element.getTypeElement(), -1); 6979 } 6980 } 6981 6982 protected void composeCodeSystemConceptDefinitionComponent(Complex parent, String parentType, String name, CodeSystem.ConceptDefinitionComponent element, int index) { 6983 if (element == null) 6984 return; 6985 Complex t; 6986 if (Utilities.noString(parentType)) 6987 t = parent; 6988 else { 6989 t = parent.predicate("fhir:"+name,index > -1); 6990 } 6991 composeBackboneElement(t, "concept", name, element, index); 6992 if (element.hasCodeElement()) { 6993 composeCode(t, "ConceptDefinitionComponent", "code", element.getCodeElement(), -1); 6994 } 6995 if (element.hasDisplayElement()) { 6996 composeString(t, "ConceptDefinitionComponent", "display", element.getDisplayElement(), -1); 6997 } 6998 if (element.hasDefinitionElement()) { 6999 composeString(t, "ConceptDefinitionComponent", "definition", element.getDefinitionElement(), -1); 7000 } 7001 for (int i = 0; i < element.getDesignation().size(); i++) { 7002 composeCodeSystemConceptDefinitionDesignationComponent(t, "ConceptDefinitionComponent", "designation", element.getDesignation().get(i), i); 7003 } 7004 for (int i = 0; i < element.getProperty().size(); i++) { 7005 composeCodeSystemConceptPropertyComponent(t, "ConceptDefinitionComponent", "property", element.getProperty().get(i), i); 7006 } 7007 for (int i = 0; i < element.getConcept().size(); i++) { 7008 composeCodeSystemConceptDefinitionComponent(t, "ConceptDefinitionComponent", "concept", element.getConcept().get(i), i); 7009 } 7010 } 7011 7012 protected void composeCodeSystemConceptDefinitionDesignationComponent(Complex parent, String parentType, String name, CodeSystem.ConceptDefinitionDesignationComponent element, int index) { 7013 if (element == null) 7014 return; 7015 Complex t; 7016 if (Utilities.noString(parentType)) 7017 t = parent; 7018 else { 7019 t = parent.predicate("fhir:"+name,index > -1); 7020 } 7021 composeBackboneElement(t, "designation", name, element, index); 7022 if (element.hasLanguageElement()) { 7023 composeCode(t, "ConceptDefinitionDesignationComponent", "language", element.getLanguageElement(), -1); 7024 } 7025 if (element.hasUse()) { 7026 composeCoding(t, "ConceptDefinitionDesignationComponent", "use", element.getUse(), -1); 7027 } 7028 for (int i = 0; i < element.getAdditionalUse().size(); i++) { 7029 composeCoding(t, "ConceptDefinitionDesignationComponent", "additionalUse", element.getAdditionalUse().get(i), i); 7030 } 7031 if (element.hasValueElement()) { 7032 composeString(t, "ConceptDefinitionDesignationComponent", "value", element.getValueElement(), -1); 7033 } 7034 } 7035 7036 protected void composeCodeSystemConceptPropertyComponent(Complex parent, String parentType, String name, CodeSystem.ConceptPropertyComponent element, int index) { 7037 if (element == null) 7038 return; 7039 Complex t; 7040 if (Utilities.noString(parentType)) 7041 t = parent; 7042 else { 7043 t = parent.predicate("fhir:"+name,index > -1); 7044 } 7045 composeBackboneElement(t, "property", name, element, index); 7046 if (element.hasCodeElement()) { 7047 composeCode(t, "ConceptPropertyComponent", "code", element.getCodeElement(), -1); 7048 } 7049 if (element.hasValue()) { 7050 composeType(t, "ConceptPropertyComponent", "value", element.getValue(), -1); 7051 } 7052 } 7053 7054 protected void composeCommunication(Complex parent, String parentType, String name, Communication element, int index) { 7055 if (element == null) 7056 return; 7057 Complex t; 7058 if (Utilities.noString(parentType)) 7059 t = parent; 7060 else { 7061 t = parent.predicate("fhir:"+name,index > -1); 7062 } 7063 composeDomainResource(t, "Communication", name, element, index); 7064 for (int i = 0; i < element.getIdentifier().size(); i++) { 7065 composeIdentifier(t, "Communication", "identifier", element.getIdentifier().get(i), i); 7066 } 7067 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { 7068 composeCanonical(t, "Communication", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 7069 } 7070 for (int i = 0; i < element.getInstantiatesUri().size(); i++) { 7071 composeUri(t, "Communication", "instantiatesUri", element.getInstantiatesUri().get(i), i); 7072 } 7073 for (int i = 0; i < element.getBasedOn().size(); i++) { 7074 composeReference(t, "Communication", "basedOn", element.getBasedOn().get(i), i); 7075 } 7076 for (int i = 0; i < element.getPartOf().size(); i++) { 7077 composeReference(t, "Communication", "partOf", element.getPartOf().get(i), i); 7078 } 7079 for (int i = 0; i < element.getInResponseTo().size(); i++) { 7080 composeReference(t, "Communication", "inResponseTo", element.getInResponseTo().get(i), i); 7081 } 7082 if (element.hasStatusElement()) { 7083 composeEnum(t, "Communication", "status", element.getStatusElement(), -1); 7084 } 7085 if (element.hasStatusReason()) { 7086 composeCodeableConcept(t, "Communication", "statusReason", element.getStatusReason(), -1); 7087 } 7088 for (int i = 0; i < element.getCategory().size(); i++) { 7089 composeCodeableConcept(t, "Communication", "category", element.getCategory().get(i), i); 7090 } 7091 if (element.hasPriorityElement()) { 7092 composeEnum(t, "Communication", "priority", element.getPriorityElement(), -1); 7093 } 7094 for (int i = 0; i < element.getMedium().size(); i++) { 7095 composeCodeableConcept(t, "Communication", "medium", element.getMedium().get(i), i); 7096 } 7097 if (element.hasSubject()) { 7098 composeReference(t, "Communication", "subject", element.getSubject(), -1); 7099 } 7100 if (element.hasTopic()) { 7101 composeCodeableConcept(t, "Communication", "topic", element.getTopic(), -1); 7102 } 7103 for (int i = 0; i < element.getAbout().size(); i++) { 7104 composeReference(t, "Communication", "about", element.getAbout().get(i), i); 7105 } 7106 if (element.hasEncounter()) { 7107 composeReference(t, "Communication", "encounter", element.getEncounter(), -1); 7108 } 7109 if (element.hasSentElement()) { 7110 composeDateTime(t, "Communication", "sent", element.getSentElement(), -1); 7111 } 7112 if (element.hasReceivedElement()) { 7113 composeDateTime(t, "Communication", "received", element.getReceivedElement(), -1); 7114 } 7115 for (int i = 0; i < element.getRecipient().size(); i++) { 7116 composeReference(t, "Communication", "recipient", element.getRecipient().get(i), i); 7117 } 7118 if (element.hasSender()) { 7119 composeReference(t, "Communication", "sender", element.getSender(), -1); 7120 } 7121 for (int i = 0; i < element.getReason().size(); i++) { 7122 composeCodeableReference(t, "Communication", "reason", element.getReason().get(i), i); 7123 } 7124 for (int i = 0; i < element.getPayload().size(); i++) { 7125 composeCommunicationPayloadComponent(t, "Communication", "payload", element.getPayload().get(i), i); 7126 } 7127 for (int i = 0; i < element.getNote().size(); i++) { 7128 composeAnnotation(t, "Communication", "note", element.getNote().get(i), i); 7129 } 7130 } 7131 7132 protected void composeCommunicationPayloadComponent(Complex parent, String parentType, String name, Communication.CommunicationPayloadComponent element, int index) { 7133 if (element == null) 7134 return; 7135 Complex t; 7136 if (Utilities.noString(parentType)) 7137 t = parent; 7138 else { 7139 t = parent.predicate("fhir:"+name,index > -1); 7140 } 7141 composeBackboneElement(t, "payload", name, element, index); 7142 if (element.hasContent()) { 7143 composeType(t, "CommunicationPayloadComponent", "content", element.getContent(), -1); 7144 } 7145 } 7146 7147 protected void composeCommunicationRequest(Complex parent, String parentType, String name, CommunicationRequest element, int index) { 7148 if (element == null) 7149 return; 7150 Complex t; 7151 if (Utilities.noString(parentType)) 7152 t = parent; 7153 else { 7154 t = parent.predicate("fhir:"+name,index > -1); 7155 } 7156 composeDomainResource(t, "CommunicationRequest", name, element, index); 7157 for (int i = 0; i < element.getIdentifier().size(); i++) { 7158 composeIdentifier(t, "CommunicationRequest", "identifier", element.getIdentifier().get(i), i); 7159 } 7160 for (int i = 0; i < element.getBasedOn().size(); i++) { 7161 composeReference(t, "CommunicationRequest", "basedOn", element.getBasedOn().get(i), i); 7162 } 7163 for (int i = 0; i < element.getReplaces().size(); i++) { 7164 composeReference(t, "CommunicationRequest", "replaces", element.getReplaces().get(i), i); 7165 } 7166 if (element.hasGroupIdentifier()) { 7167 composeIdentifier(t, "CommunicationRequest", "groupIdentifier", element.getGroupIdentifier(), -1); 7168 } 7169 if (element.hasStatusElement()) { 7170 composeEnum(t, "CommunicationRequest", "status", element.getStatusElement(), -1); 7171 } 7172 if (element.hasStatusReason()) { 7173 composeCodeableConcept(t, "CommunicationRequest", "statusReason", element.getStatusReason(), -1); 7174 } 7175 if (element.hasIntentElement()) { 7176 composeEnum(t, "CommunicationRequest", "intent", element.getIntentElement(), -1); 7177 } 7178 for (int i = 0; i < element.getCategory().size(); i++) { 7179 composeCodeableConcept(t, "CommunicationRequest", "category", element.getCategory().get(i), i); 7180 } 7181 if (element.hasPriorityElement()) { 7182 composeEnum(t, "CommunicationRequest", "priority", element.getPriorityElement(), -1); 7183 } 7184 if (element.hasDoNotPerformElement()) { 7185 composeBoolean(t, "CommunicationRequest", "doNotPerform", element.getDoNotPerformElement(), -1); 7186 } 7187 for (int i = 0; i < element.getMedium().size(); i++) { 7188 composeCodeableConcept(t, "CommunicationRequest", "medium", element.getMedium().get(i), i); 7189 } 7190 if (element.hasSubject()) { 7191 composeReference(t, "CommunicationRequest", "subject", element.getSubject(), -1); 7192 } 7193 for (int i = 0; i < element.getAbout().size(); i++) { 7194 composeReference(t, "CommunicationRequest", "about", element.getAbout().get(i), i); 7195 } 7196 if (element.hasEncounter()) { 7197 composeReference(t, "CommunicationRequest", "encounter", element.getEncounter(), -1); 7198 } 7199 for (int i = 0; i < element.getPayload().size(); i++) { 7200 composeCommunicationRequestPayloadComponent(t, "CommunicationRequest", "payload", element.getPayload().get(i), i); 7201 } 7202 if (element.hasOccurrence()) { 7203 composeType(t, "CommunicationRequest", "occurrence", element.getOccurrence(), -1); 7204 } 7205 if (element.hasAuthoredOnElement()) { 7206 composeDateTime(t, "CommunicationRequest", "authoredOn", element.getAuthoredOnElement(), -1); 7207 } 7208 if (element.hasRequester()) { 7209 composeReference(t, "CommunicationRequest", "requester", element.getRequester(), -1); 7210 } 7211 for (int i = 0; i < element.getRecipient().size(); i++) { 7212 composeReference(t, "CommunicationRequest", "recipient", element.getRecipient().get(i), i); 7213 } 7214 for (int i = 0; i < element.getInformationProvider().size(); i++) { 7215 composeReference(t, "CommunicationRequest", "informationProvider", element.getInformationProvider().get(i), i); 7216 } 7217 for (int i = 0; i < element.getReason().size(); i++) { 7218 composeCodeableReference(t, "CommunicationRequest", "reason", element.getReason().get(i), i); 7219 } 7220 for (int i = 0; i < element.getNote().size(); i++) { 7221 composeAnnotation(t, "CommunicationRequest", "note", element.getNote().get(i), i); 7222 } 7223 } 7224 7225 protected void composeCommunicationRequestPayloadComponent(Complex parent, String parentType, String name, CommunicationRequest.CommunicationRequestPayloadComponent element, int index) { 7226 if (element == null) 7227 return; 7228 Complex t; 7229 if (Utilities.noString(parentType)) 7230 t = parent; 7231 else { 7232 t = parent.predicate("fhir:"+name,index > -1); 7233 } 7234 composeBackboneElement(t, "payload", name, element, index); 7235 if (element.hasContent()) { 7236 composeType(t, "CommunicationRequestPayloadComponent", "content", element.getContent(), -1); 7237 } 7238 } 7239 7240 protected void composeCompartmentDefinition(Complex parent, String parentType, String name, CompartmentDefinition element, int index) { 7241 if (element == null) 7242 return; 7243 Complex t; 7244 if (Utilities.noString(parentType)) 7245 t = parent; 7246 else { 7247 t = parent.predicate("fhir:"+name,index > -1); 7248 } 7249 composeCanonicalResource(t, "CompartmentDefinition", name, element, index); 7250 if (element.hasUrlElement()) { 7251 composeUri(t, "CompartmentDefinition", "url", element.getUrlElement(), -1); 7252 } 7253 if (element.hasVersionElement()) { 7254 composeString(t, "CompartmentDefinition", "version", element.getVersionElement(), -1); 7255 } 7256 if (element.hasVersionAlgorithm()) { 7257 composeType(t, "CompartmentDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 7258 } 7259 if (element.hasNameElement()) { 7260 composeString(t, "CompartmentDefinition", "name", element.getNameElement(), -1); 7261 } 7262 if (element.hasTitleElement()) { 7263 composeString(t, "CompartmentDefinition", "title", element.getTitleElement(), -1); 7264 } 7265 if (element.hasStatusElement()) { 7266 composeEnum(t, "CompartmentDefinition", "status", element.getStatusElement(), -1); 7267 } 7268 if (element.hasExperimentalElement()) { 7269 composeBoolean(t, "CompartmentDefinition", "experimental", element.getExperimentalElement(), -1); 7270 } 7271 if (element.hasDateElement()) { 7272 composeDateTime(t, "CompartmentDefinition", "date", element.getDateElement(), -1); 7273 } 7274 if (element.hasPublisherElement()) { 7275 composeString(t, "CompartmentDefinition", "publisher", element.getPublisherElement(), -1); 7276 } 7277 for (int i = 0; i < element.getContact().size(); i++) { 7278 composeContactDetail(t, "CompartmentDefinition", "contact", element.getContact().get(i), i); 7279 } 7280 if (element.hasDescriptionElement()) { 7281 composeMarkdown(t, "CompartmentDefinition", "description", element.getDescriptionElement(), -1); 7282 } 7283 for (int i = 0; i < element.getUseContext().size(); i++) { 7284 composeUsageContext(t, "CompartmentDefinition", "useContext", element.getUseContext().get(i), i); 7285 } 7286 if (element.hasPurposeElement()) { 7287 composeMarkdown(t, "CompartmentDefinition", "purpose", element.getPurposeElement(), -1); 7288 } 7289 if (element.hasCodeElement()) { 7290 composeEnum(t, "CompartmentDefinition", "code", element.getCodeElement(), -1); 7291 } 7292 if (element.hasSearchElement()) { 7293 composeBoolean(t, "CompartmentDefinition", "search", element.getSearchElement(), -1); 7294 } 7295 for (int i = 0; i < element.getResource().size(); i++) { 7296 composeCompartmentDefinitionResourceComponent(t, "CompartmentDefinition", "resource", element.getResource().get(i), i); 7297 } 7298 } 7299 7300 protected void composeCompartmentDefinitionResourceComponent(Complex parent, String parentType, String name, CompartmentDefinition.CompartmentDefinitionResourceComponent element, int index) { 7301 if (element == null) 7302 return; 7303 Complex t; 7304 if (Utilities.noString(parentType)) 7305 t = parent; 7306 else { 7307 t = parent.predicate("fhir:"+name,index > -1); 7308 } 7309 composeBackboneElement(t, "resource", name, element, index); 7310 if (element.hasCodeElement()) { 7311 composeCode(t, "CompartmentDefinitionResourceComponent", "code", element.getCodeElement(), -1); 7312 } 7313 for (int i = 0; i < element.getParam().size(); i++) { 7314 composeString(t, "CompartmentDefinitionResourceComponent", "param", element.getParam().get(i), i); 7315 } 7316 if (element.hasDocumentationElement()) { 7317 composeString(t, "CompartmentDefinitionResourceComponent", "documentation", element.getDocumentationElement(), -1); 7318 } 7319 if (element.hasStartParamElement()) { 7320 composeUri(t, "CompartmentDefinitionResourceComponent", "startParam", element.getStartParamElement(), -1); 7321 } 7322 if (element.hasEndParamElement()) { 7323 composeUri(t, "CompartmentDefinitionResourceComponent", "endParam", element.getEndParamElement(), -1); 7324 } 7325 } 7326 7327 protected void composeComposition(Complex parent, String parentType, String name, Composition element, int index) { 7328 if (element == null) 7329 return; 7330 Complex t; 7331 if (Utilities.noString(parentType)) 7332 t = parent; 7333 else { 7334 t = parent.predicate("fhir:"+name,index > -1); 7335 } 7336 composeDomainResource(t, "Composition", name, element, index); 7337 if (element.hasUrlElement()) { 7338 composeUri(t, "Composition", "url", element.getUrlElement(), -1); 7339 } 7340 for (int i = 0; i < element.getIdentifier().size(); i++) { 7341 composeIdentifier(t, "Composition", "identifier", element.getIdentifier().get(i), i); 7342 } 7343 if (element.hasVersionElement()) { 7344 composeString(t, "Composition", "version", element.getVersionElement(), -1); 7345 } 7346 if (element.hasStatusElement()) { 7347 composeEnum(t, "Composition", "status", element.getStatusElement(), -1); 7348 } 7349 if (element.hasType()) { 7350 composeCodeableConcept(t, "Composition", "type", element.getType(), -1); 7351 } 7352 for (int i = 0; i < element.getCategory().size(); i++) { 7353 composeCodeableConcept(t, "Composition", "category", element.getCategory().get(i), i); 7354 } 7355 for (int i = 0; i < element.getSubject().size(); i++) { 7356 composeReference(t, "Composition", "subject", element.getSubject().get(i), i); 7357 } 7358 if (element.hasEncounter()) { 7359 composeReference(t, "Composition", "encounter", element.getEncounter(), -1); 7360 } 7361 if (element.hasDateElement()) { 7362 composeDateTime(t, "Composition", "date", element.getDateElement(), -1); 7363 } 7364 for (int i = 0; i < element.getUseContext().size(); i++) { 7365 composeUsageContext(t, "Composition", "useContext", element.getUseContext().get(i), i); 7366 } 7367 for (int i = 0; i < element.getAuthor().size(); i++) { 7368 composeReference(t, "Composition", "author", element.getAuthor().get(i), i); 7369 } 7370 if (element.hasNameElement()) { 7371 composeString(t, "Composition", "name", element.getNameElement(), -1); 7372 } 7373 if (element.hasTitleElement()) { 7374 composeString(t, "Composition", "title", element.getTitleElement(), -1); 7375 } 7376 for (int i = 0; i < element.getNote().size(); i++) { 7377 composeAnnotation(t, "Composition", "note", element.getNote().get(i), i); 7378 } 7379 for (int i = 0; i < element.getAttester().size(); i++) { 7380 composeCompositionAttesterComponent(t, "Composition", "attester", element.getAttester().get(i), i); 7381 } 7382 if (element.hasCustodian()) { 7383 composeReference(t, "Composition", "custodian", element.getCustodian(), -1); 7384 } 7385 for (int i = 0; i < element.getRelatesTo().size(); i++) { 7386 composeRelatedArtifact(t, "Composition", "relatesTo", element.getRelatesTo().get(i), i); 7387 } 7388 for (int i = 0; i < element.getEvent().size(); i++) { 7389 composeCompositionEventComponent(t, "Composition", "event", element.getEvent().get(i), i); 7390 } 7391 for (int i = 0; i < element.getSection().size(); i++) { 7392 composeCompositionSectionComponent(t, "Composition", "section", element.getSection().get(i), i); 7393 } 7394 } 7395 7396 protected void composeCompositionAttesterComponent(Complex parent, String parentType, String name, Composition.CompositionAttesterComponent element, int index) { 7397 if (element == null) 7398 return; 7399 Complex t; 7400 if (Utilities.noString(parentType)) 7401 t = parent; 7402 else { 7403 t = parent.predicate("fhir:"+name,index > -1); 7404 } 7405 composeBackboneElement(t, "attester", name, element, index); 7406 if (element.hasMode()) { 7407 composeCodeableConcept(t, "CompositionAttesterComponent", "mode", element.getMode(), -1); 7408 } 7409 if (element.hasTimeElement()) { 7410 composeDateTime(t, "CompositionAttesterComponent", "time", element.getTimeElement(), -1); 7411 } 7412 if (element.hasParty()) { 7413 composeReference(t, "CompositionAttesterComponent", "party", element.getParty(), -1); 7414 } 7415 } 7416 7417 protected void composeCompositionEventComponent(Complex parent, String parentType, String name, Composition.CompositionEventComponent element, int index) { 7418 if (element == null) 7419 return; 7420 Complex t; 7421 if (Utilities.noString(parentType)) 7422 t = parent; 7423 else { 7424 t = parent.predicate("fhir:"+name,index > -1); 7425 } 7426 composeBackboneElement(t, "event", name, element, index); 7427 if (element.hasPeriod()) { 7428 composePeriod(t, "CompositionEventComponent", "period", element.getPeriod(), -1); 7429 } 7430 for (int i = 0; i < element.getDetail().size(); i++) { 7431 composeCodeableReference(t, "CompositionEventComponent", "detail", element.getDetail().get(i), i); 7432 } 7433 } 7434 7435 protected void composeCompositionSectionComponent(Complex parent, String parentType, String name, Composition.SectionComponent element, int index) { 7436 if (element == null) 7437 return; 7438 Complex t; 7439 if (Utilities.noString(parentType)) 7440 t = parent; 7441 else { 7442 t = parent.predicate("fhir:"+name,index > -1); 7443 } 7444 composeBackboneElement(t, "section", name, element, index); 7445 if (element.hasTitleElement()) { 7446 composeString(t, "SectionComponent", "title", element.getTitleElement(), -1); 7447 } 7448 if (element.hasCode()) { 7449 composeCodeableConcept(t, "SectionComponent", "code", element.getCode(), -1); 7450 } 7451 for (int i = 0; i < element.getAuthor().size(); i++) { 7452 composeReference(t, "SectionComponent", "author", element.getAuthor().get(i), i); 7453 } 7454 if (element.hasFocus()) { 7455 composeReference(t, "SectionComponent", "focus", element.getFocus(), -1); 7456 } 7457 if (element.hasText()) { 7458 composeNarrative(t, "SectionComponent", "text", element.getText(), -1); 7459 } 7460 if (element.hasOrderedBy()) { 7461 composeCodeableConcept(t, "SectionComponent", "orderedBy", element.getOrderedBy(), -1); 7462 } 7463 for (int i = 0; i < element.getEntry().size(); i++) { 7464 composeReference(t, "SectionComponent", "entry", element.getEntry().get(i), i); 7465 } 7466 if (element.hasEmptyReason()) { 7467 composeCodeableConcept(t, "SectionComponent", "emptyReason", element.getEmptyReason(), -1); 7468 } 7469 for (int i = 0; i < element.getSection().size(); i++) { 7470 composeCompositionSectionComponent(t, "SectionComponent", "section", element.getSection().get(i), i); 7471 } 7472 } 7473 7474 protected void composeConceptMap(Complex parent, String parentType, String name, ConceptMap element, int index) { 7475 if (element == null) 7476 return; 7477 Complex t; 7478 if (Utilities.noString(parentType)) 7479 t = parent; 7480 else { 7481 t = parent.predicate("fhir:"+name,index > -1); 7482 } 7483 composeMetadataResource(t, "ConceptMap", name, element, index); 7484 if (element.hasUrlElement()) { 7485 composeUri(t, "ConceptMap", "url", element.getUrlElement(), -1); 7486 } 7487 for (int i = 0; i < element.getIdentifier().size(); i++) { 7488 composeIdentifier(t, "ConceptMap", "identifier", element.getIdentifier().get(i), i); 7489 } 7490 if (element.hasVersionElement()) { 7491 composeString(t, "ConceptMap", "version", element.getVersionElement(), -1); 7492 } 7493 if (element.hasVersionAlgorithm()) { 7494 composeType(t, "ConceptMap", "versionAlgorithm", element.getVersionAlgorithm(), -1); 7495 } 7496 if (element.hasNameElement()) { 7497 composeString(t, "ConceptMap", "name", element.getNameElement(), -1); 7498 } 7499 if (element.hasTitleElement()) { 7500 composeString(t, "ConceptMap", "title", element.getTitleElement(), -1); 7501 } 7502 if (element.hasStatusElement()) { 7503 composeEnum(t, "ConceptMap", "status", element.getStatusElement(), -1); 7504 } 7505 if (element.hasExperimentalElement()) { 7506 composeBoolean(t, "ConceptMap", "experimental", element.getExperimentalElement(), -1); 7507 } 7508 if (element.hasDateElement()) { 7509 composeDateTime(t, "ConceptMap", "date", element.getDateElement(), -1); 7510 } 7511 if (element.hasPublisherElement()) { 7512 composeString(t, "ConceptMap", "publisher", element.getPublisherElement(), -1); 7513 } 7514 for (int i = 0; i < element.getContact().size(); i++) { 7515 composeContactDetail(t, "ConceptMap", "contact", element.getContact().get(i), i); 7516 } 7517 if (element.hasDescriptionElement()) { 7518 composeMarkdown(t, "ConceptMap", "description", element.getDescriptionElement(), -1); 7519 } 7520 for (int i = 0; i < element.getUseContext().size(); i++) { 7521 composeUsageContext(t, "ConceptMap", "useContext", element.getUseContext().get(i), i); 7522 } 7523 for (int i = 0; i < element.getJurisdiction().size(); i++) { 7524 composeCodeableConcept(t, "ConceptMap", "jurisdiction", element.getJurisdiction().get(i), i); 7525 } 7526 if (element.hasPurposeElement()) { 7527 composeMarkdown(t, "ConceptMap", "purpose", element.getPurposeElement(), -1); 7528 } 7529 if (element.hasCopyrightElement()) { 7530 composeMarkdown(t, "ConceptMap", "copyright", element.getCopyrightElement(), -1); 7531 } 7532 if (element.hasCopyrightLabelElement()) { 7533 composeString(t, "ConceptMap", "copyrightLabel", element.getCopyrightLabelElement(), -1); 7534 } 7535 if (element.hasApprovalDateElement()) { 7536 composeDate(t, "ConceptMap", "approvalDate", element.getApprovalDateElement(), -1); 7537 } 7538 if (element.hasLastReviewDateElement()) { 7539 composeDate(t, "ConceptMap", "lastReviewDate", element.getLastReviewDateElement(), -1); 7540 } 7541 if (element.hasEffectivePeriod()) { 7542 composePeriod(t, "ConceptMap", "effectivePeriod", element.getEffectivePeriod(), -1); 7543 } 7544 for (int i = 0; i < element.getTopic().size(); i++) { 7545 composeCodeableConcept(t, "ConceptMap", "topic", element.getTopic().get(i), i); 7546 } 7547 for (int i = 0; i < element.getAuthor().size(); i++) { 7548 composeContactDetail(t, "ConceptMap", "author", element.getAuthor().get(i), i); 7549 } 7550 for (int i = 0; i < element.getEditor().size(); i++) { 7551 composeContactDetail(t, "ConceptMap", "editor", element.getEditor().get(i), i); 7552 } 7553 for (int i = 0; i < element.getReviewer().size(); i++) { 7554 composeContactDetail(t, "ConceptMap", "reviewer", element.getReviewer().get(i), i); 7555 } 7556 for (int i = 0; i < element.getEndorser().size(); i++) { 7557 composeContactDetail(t, "ConceptMap", "endorser", element.getEndorser().get(i), i); 7558 } 7559 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 7560 composeRelatedArtifact(t, "ConceptMap", "relatedArtifact", element.getRelatedArtifact().get(i), i); 7561 } 7562 for (int i = 0; i < element.getProperty().size(); i++) { 7563 composeConceptMapPropertyComponent(t, "ConceptMap", "property", element.getProperty().get(i), i); 7564 } 7565 for (int i = 0; i < element.getAdditionalAttribute().size(); i++) { 7566 composeConceptMapAdditionalAttributeComponent(t, "ConceptMap", "additionalAttribute", element.getAdditionalAttribute().get(i), i); 7567 } 7568 if (element.hasSourceScope()) { 7569 composeType(t, "ConceptMap", "sourceScope", element.getSourceScope(), -1); 7570 } 7571 if (element.hasTargetScope()) { 7572 composeType(t, "ConceptMap", "targetScope", element.getTargetScope(), -1); 7573 } 7574 for (int i = 0; i < element.getGroup().size(); i++) { 7575 composeConceptMapGroupComponent(t, "ConceptMap", "group", element.getGroup().get(i), i); 7576 } 7577 } 7578 7579 protected void composeConceptMapPropertyComponent(Complex parent, String parentType, String name, ConceptMap.PropertyComponent element, int index) { 7580 if (element == null) 7581 return; 7582 Complex t; 7583 if (Utilities.noString(parentType)) 7584 t = parent; 7585 else { 7586 t = parent.predicate("fhir:"+name,index > -1); 7587 } 7588 composeBackboneElement(t, "property", name, element, index); 7589 if (element.hasCodeElement()) { 7590 composeCode(t, "PropertyComponent", "code", element.getCodeElement(), -1); 7591 } 7592 if (element.hasUriElement()) { 7593 composeUri(t, "PropertyComponent", "uri", element.getUriElement(), -1); 7594 } 7595 if (element.hasDescriptionElement()) { 7596 composeString(t, "PropertyComponent", "description", element.getDescriptionElement(), -1); 7597 } 7598 if (element.hasTypeElement()) { 7599 composeEnum(t, "PropertyComponent", "type", element.getTypeElement(), -1); 7600 } 7601 if (element.hasSystemElement()) { 7602 composeCanonical(t, "PropertyComponent", "system", element.getSystemElement(), -1); 7603 } 7604 } 7605 7606 protected void composeConceptMapAdditionalAttributeComponent(Complex parent, String parentType, String name, ConceptMap.AdditionalAttributeComponent element, int index) { 7607 if (element == null) 7608 return; 7609 Complex t; 7610 if (Utilities.noString(parentType)) 7611 t = parent; 7612 else { 7613 t = parent.predicate("fhir:"+name,index > -1); 7614 } 7615 composeBackboneElement(t, "additionalAttribute", name, element, index); 7616 if (element.hasCodeElement()) { 7617 composeCode(t, "AdditionalAttributeComponent", "code", element.getCodeElement(), -1); 7618 } 7619 if (element.hasUriElement()) { 7620 composeUri(t, "AdditionalAttributeComponent", "uri", element.getUriElement(), -1); 7621 } 7622 if (element.hasDescriptionElement()) { 7623 composeString(t, "AdditionalAttributeComponent", "description", element.getDescriptionElement(), -1); 7624 } 7625 if (element.hasTypeElement()) { 7626 composeEnum(t, "AdditionalAttributeComponent", "type", element.getTypeElement(), -1); 7627 } 7628 } 7629 7630 protected void composeConceptMapGroupComponent(Complex parent, String parentType, String name, ConceptMap.ConceptMapGroupComponent element, int index) { 7631 if (element == null) 7632 return; 7633 Complex t; 7634 if (Utilities.noString(parentType)) 7635 t = parent; 7636 else { 7637 t = parent.predicate("fhir:"+name,index > -1); 7638 } 7639 composeBackboneElement(t, "group", name, element, index); 7640 if (element.hasSourceElement()) { 7641 composeCanonical(t, "ConceptMapGroupComponent", "source", element.getSourceElement(), -1); 7642 } 7643 if (element.hasTargetElement()) { 7644 composeCanonical(t, "ConceptMapGroupComponent", "target", element.getTargetElement(), -1); 7645 } 7646 for (int i = 0; i < element.getElement().size(); i++) { 7647 composeConceptMapSourceElementComponent(t, "ConceptMapGroupComponent", "element", element.getElement().get(i), i); 7648 } 7649 if (element.hasUnmapped()) { 7650 composeConceptMapGroupUnmappedComponent(t, "ConceptMapGroupComponent", "unmapped", element.getUnmapped(), -1); 7651 } 7652 } 7653 7654 protected void composeConceptMapSourceElementComponent(Complex parent, String parentType, String name, ConceptMap.SourceElementComponent element, int index) { 7655 if (element == null) 7656 return; 7657 Complex t; 7658 if (Utilities.noString(parentType)) 7659 t = parent; 7660 else { 7661 t = parent.predicate("fhir:"+name,index > -1); 7662 } 7663 composeBackboneElement(t, "element", name, element, index); 7664 if (element.hasCodeElement()) { 7665 composeCode(t, "SourceElementComponent", "code", element.getCodeElement(), -1); 7666 } 7667 if (element.hasDisplayElement()) { 7668 composeString(t, "SourceElementComponent", "display", element.getDisplayElement(), -1); 7669 } 7670 if (element.hasValueSetElement()) { 7671 composeCanonical(t, "SourceElementComponent", "valueSet", element.getValueSetElement(), -1); 7672 } 7673 if (element.hasNoMapElement()) { 7674 composeBoolean(t, "SourceElementComponent", "noMap", element.getNoMapElement(), -1); 7675 } 7676 for (int i = 0; i < element.getTarget().size(); i++) { 7677 composeConceptMapTargetElementComponent(t, "SourceElementComponent", "target", element.getTarget().get(i), i); 7678 } 7679 } 7680 7681 protected void composeConceptMapTargetElementComponent(Complex parent, String parentType, String name, ConceptMap.TargetElementComponent element, int index) { 7682 if (element == null) 7683 return; 7684 Complex t; 7685 if (Utilities.noString(parentType)) 7686 t = parent; 7687 else { 7688 t = parent.predicate("fhir:"+name,index > -1); 7689 } 7690 composeBackboneElement(t, "target", name, element, index); 7691 if (element.hasCodeElement()) { 7692 composeCode(t, "TargetElementComponent", "code", element.getCodeElement(), -1); 7693 } 7694 if (element.hasDisplayElement()) { 7695 composeString(t, "TargetElementComponent", "display", element.getDisplayElement(), -1); 7696 } 7697 if (element.hasValueSetElement()) { 7698 composeCanonical(t, "TargetElementComponent", "valueSet", element.getValueSetElement(), -1); 7699 } 7700 if (element.hasRelationshipElement()) { 7701 composeEnum(t, "TargetElementComponent", "relationship", element.getRelationshipElement(), -1); 7702 } 7703 if (element.hasCommentElement()) { 7704 composeString(t, "TargetElementComponent", "comment", element.getCommentElement(), -1); 7705 } 7706 for (int i = 0; i < element.getProperty().size(); i++) { 7707 composeConceptMapMappingPropertyComponent(t, "TargetElementComponent", "property", element.getProperty().get(i), i); 7708 } 7709 for (int i = 0; i < element.getDependsOn().size(); i++) { 7710 composeConceptMapOtherElementComponent(t, "TargetElementComponent", "dependsOn", element.getDependsOn().get(i), i); 7711 } 7712 for (int i = 0; i < element.getProduct().size(); i++) { 7713 composeConceptMapOtherElementComponent(t, "TargetElementComponent", "product", element.getProduct().get(i), i); 7714 } 7715 } 7716 7717 protected void composeConceptMapMappingPropertyComponent(Complex parent, String parentType, String name, ConceptMap.MappingPropertyComponent element, int index) { 7718 if (element == null) 7719 return; 7720 Complex t; 7721 if (Utilities.noString(parentType)) 7722 t = parent; 7723 else { 7724 t = parent.predicate("fhir:"+name,index > -1); 7725 } 7726 composeBackboneElement(t, "property", name, element, index); 7727 if (element.hasCodeElement()) { 7728 composeCode(t, "MappingPropertyComponent", "code", element.getCodeElement(), -1); 7729 } 7730 if (element.hasValue()) { 7731 composeType(t, "MappingPropertyComponent", "value", element.getValue(), -1); 7732 } 7733 } 7734 7735 protected void composeConceptMapOtherElementComponent(Complex parent, String parentType, String name, ConceptMap.OtherElementComponent element, int index) { 7736 if (element == null) 7737 return; 7738 Complex t; 7739 if (Utilities.noString(parentType)) 7740 t = parent; 7741 else { 7742 t = parent.predicate("fhir:"+name,index > -1); 7743 } 7744 composeBackboneElement(t, "dependsOn", name, element, index); 7745 if (element.hasAttributeElement()) { 7746 composeCode(t, "OtherElementComponent", "attribute", element.getAttributeElement(), -1); 7747 } 7748 if (element.hasValue()) { 7749 composeType(t, "OtherElementComponent", "value", element.getValue(), -1); 7750 } 7751 if (element.hasValueSetElement()) { 7752 composeCanonical(t, "OtherElementComponent", "valueSet", element.getValueSetElement(), -1); 7753 } 7754 } 7755 7756 protected void composeConceptMapGroupUnmappedComponent(Complex parent, String parentType, String name, ConceptMap.ConceptMapGroupUnmappedComponent element, int index) { 7757 if (element == null) 7758 return; 7759 Complex t; 7760 if (Utilities.noString(parentType)) 7761 t = parent; 7762 else { 7763 t = parent.predicate("fhir:"+name,index > -1); 7764 } 7765 composeBackboneElement(t, "unmapped", name, element, index); 7766 if (element.hasModeElement()) { 7767 composeEnum(t, "ConceptMapGroupUnmappedComponent", "mode", element.getModeElement(), -1); 7768 } 7769 if (element.hasCodeElement()) { 7770 composeCode(t, "ConceptMapGroupUnmappedComponent", "code", element.getCodeElement(), -1); 7771 } 7772 if (element.hasDisplayElement()) { 7773 composeString(t, "ConceptMapGroupUnmappedComponent", "display", element.getDisplayElement(), -1); 7774 } 7775 if (element.hasValueSetElement()) { 7776 composeCanonical(t, "ConceptMapGroupUnmappedComponent", "valueSet", element.getValueSetElement(), -1); 7777 } 7778 if (element.hasRelationshipElement()) { 7779 composeEnum(t, "ConceptMapGroupUnmappedComponent", "relationship", element.getRelationshipElement(), -1); 7780 } 7781 if (element.hasOtherMapElement()) { 7782 composeCanonical(t, "ConceptMapGroupUnmappedComponent", "otherMap", element.getOtherMapElement(), -1); 7783 } 7784 } 7785 7786 protected void composeCondition(Complex parent, String parentType, String name, Condition element, int index) { 7787 if (element == null) 7788 return; 7789 Complex t; 7790 if (Utilities.noString(parentType)) 7791 t = parent; 7792 else { 7793 t = parent.predicate("fhir:"+name,index > -1); 7794 } 7795 composeDomainResource(t, "Condition", name, element, index); 7796 for (int i = 0; i < element.getIdentifier().size(); i++) { 7797 composeIdentifier(t, "Condition", "identifier", element.getIdentifier().get(i), i); 7798 } 7799 if (element.hasClinicalStatus()) { 7800 composeCodeableConcept(t, "Condition", "clinicalStatus", element.getClinicalStatus(), -1); 7801 } 7802 if (element.hasVerificationStatus()) { 7803 composeCodeableConcept(t, "Condition", "verificationStatus", element.getVerificationStatus(), -1); 7804 } 7805 for (int i = 0; i < element.getCategory().size(); i++) { 7806 composeCodeableConcept(t, "Condition", "category", element.getCategory().get(i), i); 7807 } 7808 if (element.hasSeverity()) { 7809 composeCodeableConcept(t, "Condition", "severity", element.getSeverity(), -1); 7810 } 7811 if (element.hasCode()) { 7812 composeCodeableConcept(t, "Condition", "code", element.getCode(), -1); 7813 } 7814 for (int i = 0; i < element.getBodySite().size(); i++) { 7815 composeCodeableConcept(t, "Condition", "bodySite", element.getBodySite().get(i), i); 7816 } 7817 if (element.hasSubject()) { 7818 composeReference(t, "Condition", "subject", element.getSubject(), -1); 7819 } 7820 if (element.hasEncounter()) { 7821 composeReference(t, "Condition", "encounter", element.getEncounter(), -1); 7822 } 7823 if (element.hasOnset()) { 7824 composeType(t, "Condition", "onset", element.getOnset(), -1); 7825 } 7826 if (element.hasAbatement()) { 7827 composeType(t, "Condition", "abatement", element.getAbatement(), -1); 7828 } 7829 if (element.hasRecordedDateElement()) { 7830 composeDateTime(t, "Condition", "recordedDate", element.getRecordedDateElement(), -1); 7831 } 7832 for (int i = 0; i < element.getParticipant().size(); i++) { 7833 composeConditionParticipantComponent(t, "Condition", "participant", element.getParticipant().get(i), i); 7834 } 7835 for (int i = 0; i < element.getStage().size(); i++) { 7836 composeConditionStageComponent(t, "Condition", "stage", element.getStage().get(i), i); 7837 } 7838 for (int i = 0; i < element.getEvidence().size(); i++) { 7839 composeCodeableReference(t, "Condition", "evidence", element.getEvidence().get(i), i); 7840 } 7841 for (int i = 0; i < element.getNote().size(); i++) { 7842 composeAnnotation(t, "Condition", "note", element.getNote().get(i), i); 7843 } 7844 } 7845 7846 protected void composeConditionParticipantComponent(Complex parent, String parentType, String name, Condition.ConditionParticipantComponent element, int index) { 7847 if (element == null) 7848 return; 7849 Complex t; 7850 if (Utilities.noString(parentType)) 7851 t = parent; 7852 else { 7853 t = parent.predicate("fhir:"+name,index > -1); 7854 } 7855 composeBackboneElement(t, "participant", name, element, index); 7856 if (element.hasFunction()) { 7857 composeCodeableConcept(t, "ConditionParticipantComponent", "function", element.getFunction(), -1); 7858 } 7859 if (element.hasActor()) { 7860 composeReference(t, "ConditionParticipantComponent", "actor", element.getActor(), -1); 7861 } 7862 } 7863 7864 protected void composeConditionStageComponent(Complex parent, String parentType, String name, Condition.ConditionStageComponent element, int index) { 7865 if (element == null) 7866 return; 7867 Complex t; 7868 if (Utilities.noString(parentType)) 7869 t = parent; 7870 else { 7871 t = parent.predicate("fhir:"+name,index > -1); 7872 } 7873 composeBackboneElement(t, "stage", name, element, index); 7874 if (element.hasSummary()) { 7875 composeCodeableConcept(t, "ConditionStageComponent", "summary", element.getSummary(), -1); 7876 } 7877 for (int i = 0; i < element.getAssessment().size(); i++) { 7878 composeReference(t, "ConditionStageComponent", "assessment", element.getAssessment().get(i), i); 7879 } 7880 if (element.hasType()) { 7881 composeCodeableConcept(t, "ConditionStageComponent", "type", element.getType(), -1); 7882 } 7883 } 7884 7885 protected void composeConditionDefinition(Complex parent, String parentType, String name, ConditionDefinition element, int index) { 7886 if (element == null) 7887 return; 7888 Complex t; 7889 if (Utilities.noString(parentType)) 7890 t = parent; 7891 else { 7892 t = parent.predicate("fhir:"+name,index > -1); 7893 } 7894 composeMetadataResource(t, "ConditionDefinition", name, element, index); 7895 if (element.hasUrlElement()) { 7896 composeUri(t, "ConditionDefinition", "url", element.getUrlElement(), -1); 7897 } 7898 for (int i = 0; i < element.getIdentifier().size(); i++) { 7899 composeIdentifier(t, "ConditionDefinition", "identifier", element.getIdentifier().get(i), i); 7900 } 7901 if (element.hasVersionElement()) { 7902 composeString(t, "ConditionDefinition", "version", element.getVersionElement(), -1); 7903 } 7904 if (element.hasVersionAlgorithm()) { 7905 composeType(t, "ConditionDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 7906 } 7907 if (element.hasNameElement()) { 7908 composeString(t, "ConditionDefinition", "name", element.getNameElement(), -1); 7909 } 7910 if (element.hasTitleElement()) { 7911 composeString(t, "ConditionDefinition", "title", element.getTitleElement(), -1); 7912 } 7913 if (element.hasSubtitleElement()) { 7914 composeString(t, "ConditionDefinition", "subtitle", element.getSubtitleElement(), -1); 7915 } 7916 if (element.hasStatusElement()) { 7917 composeEnum(t, "ConditionDefinition", "status", element.getStatusElement(), -1); 7918 } 7919 if (element.hasExperimentalElement()) { 7920 composeBoolean(t, "ConditionDefinition", "experimental", element.getExperimentalElement(), -1); 7921 } 7922 if (element.hasDateElement()) { 7923 composeDateTime(t, "ConditionDefinition", "date", element.getDateElement(), -1); 7924 } 7925 if (element.hasPublisherElement()) { 7926 composeString(t, "ConditionDefinition", "publisher", element.getPublisherElement(), -1); 7927 } 7928 for (int i = 0; i < element.getContact().size(); i++) { 7929 composeContactDetail(t, "ConditionDefinition", "contact", element.getContact().get(i), i); 7930 } 7931 if (element.hasDescriptionElement()) { 7932 composeMarkdown(t, "ConditionDefinition", "description", element.getDescriptionElement(), -1); 7933 } 7934 for (int i = 0; i < element.getUseContext().size(); i++) { 7935 composeUsageContext(t, "ConditionDefinition", "useContext", element.getUseContext().get(i), i); 7936 } 7937 for (int i = 0; i < element.getJurisdiction().size(); i++) { 7938 composeCodeableConcept(t, "ConditionDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 7939 } 7940 if (element.hasCode()) { 7941 composeCodeableConcept(t, "ConditionDefinition", "code", element.getCode(), -1); 7942 } 7943 if (element.hasSeverity()) { 7944 composeCodeableConcept(t, "ConditionDefinition", "severity", element.getSeverity(), -1); 7945 } 7946 if (element.hasBodySite()) { 7947 composeCodeableConcept(t, "ConditionDefinition", "bodySite", element.getBodySite(), -1); 7948 } 7949 if (element.hasStage()) { 7950 composeCodeableConcept(t, "ConditionDefinition", "stage", element.getStage(), -1); 7951 } 7952 if (element.hasHasSeverityElement()) { 7953 composeBoolean(t, "ConditionDefinition", "hasSeverity", element.getHasSeverityElement(), -1); 7954 } 7955 if (element.hasHasBodySiteElement()) { 7956 composeBoolean(t, "ConditionDefinition", "hasBodySite", element.getHasBodySiteElement(), -1); 7957 } 7958 if (element.hasHasStageElement()) { 7959 composeBoolean(t, "ConditionDefinition", "hasStage", element.getHasStageElement(), -1); 7960 } 7961 for (int i = 0; i < element.getDefinition().size(); i++) { 7962 composeUri(t, "ConditionDefinition", "definition", element.getDefinition().get(i), i); 7963 } 7964 for (int i = 0; i < element.getObservation().size(); i++) { 7965 composeConditionDefinitionObservationComponent(t, "ConditionDefinition", "observation", element.getObservation().get(i), i); 7966 } 7967 for (int i = 0; i < element.getMedication().size(); i++) { 7968 composeConditionDefinitionMedicationComponent(t, "ConditionDefinition", "medication", element.getMedication().get(i), i); 7969 } 7970 for (int i = 0; i < element.getPrecondition().size(); i++) { 7971 composeConditionDefinitionPreconditionComponent(t, "ConditionDefinition", "precondition", element.getPrecondition().get(i), i); 7972 } 7973 for (int i = 0; i < element.getTeam().size(); i++) { 7974 composeReference(t, "ConditionDefinition", "team", element.getTeam().get(i), i); 7975 } 7976 for (int i = 0; i < element.getQuestionnaire().size(); i++) { 7977 composeConditionDefinitionQuestionnaireComponent(t, "ConditionDefinition", "questionnaire", element.getQuestionnaire().get(i), i); 7978 } 7979 for (int i = 0; i < element.getPlan().size(); i++) { 7980 composeConditionDefinitionPlanComponent(t, "ConditionDefinition", "plan", element.getPlan().get(i), i); 7981 } 7982 } 7983 7984 protected void composeConditionDefinitionObservationComponent(Complex parent, String parentType, String name, ConditionDefinition.ConditionDefinitionObservationComponent element, int index) { 7985 if (element == null) 7986 return; 7987 Complex t; 7988 if (Utilities.noString(parentType)) 7989 t = parent; 7990 else { 7991 t = parent.predicate("fhir:"+name,index > -1); 7992 } 7993 composeBackboneElement(t, "observation", name, element, index); 7994 if (element.hasCategory()) { 7995 composeCodeableConcept(t, "ConditionDefinitionObservationComponent", "category", element.getCategory(), -1); 7996 } 7997 if (element.hasCode()) { 7998 composeCodeableConcept(t, "ConditionDefinitionObservationComponent", "code", element.getCode(), -1); 7999 } 8000 } 8001 8002 protected void composeConditionDefinitionMedicationComponent(Complex parent, String parentType, String name, ConditionDefinition.ConditionDefinitionMedicationComponent element, int index) { 8003 if (element == null) 8004 return; 8005 Complex t; 8006 if (Utilities.noString(parentType)) 8007 t = parent; 8008 else { 8009 t = parent.predicate("fhir:"+name,index > -1); 8010 } 8011 composeBackboneElement(t, "medication", name, element, index); 8012 if (element.hasCategory()) { 8013 composeCodeableConcept(t, "ConditionDefinitionMedicationComponent", "category", element.getCategory(), -1); 8014 } 8015 if (element.hasCode()) { 8016 composeCodeableConcept(t, "ConditionDefinitionMedicationComponent", "code", element.getCode(), -1); 8017 } 8018 } 8019 8020 protected void composeConditionDefinitionPreconditionComponent(Complex parent, String parentType, String name, ConditionDefinition.ConditionDefinitionPreconditionComponent element, int index) { 8021 if (element == null) 8022 return; 8023 Complex t; 8024 if (Utilities.noString(parentType)) 8025 t = parent; 8026 else { 8027 t = parent.predicate("fhir:"+name,index > -1); 8028 } 8029 composeBackboneElement(t, "precondition", name, element, index); 8030 if (element.hasTypeElement()) { 8031 composeEnum(t, "ConditionDefinitionPreconditionComponent", "type", element.getTypeElement(), -1); 8032 } 8033 if (element.hasCode()) { 8034 composeCodeableConcept(t, "ConditionDefinitionPreconditionComponent", "code", element.getCode(), -1); 8035 } 8036 if (element.hasValue()) { 8037 composeType(t, "ConditionDefinitionPreconditionComponent", "value", element.getValue(), -1); 8038 } 8039 } 8040 8041 protected void composeConditionDefinitionQuestionnaireComponent(Complex parent, String parentType, String name, ConditionDefinition.ConditionDefinitionQuestionnaireComponent element, int index) { 8042 if (element == null) 8043 return; 8044 Complex t; 8045 if (Utilities.noString(parentType)) 8046 t = parent; 8047 else { 8048 t = parent.predicate("fhir:"+name,index > -1); 8049 } 8050 composeBackboneElement(t, "questionnaire", name, element, index); 8051 if (element.hasPurposeElement()) { 8052 composeEnum(t, "ConditionDefinitionQuestionnaireComponent", "purpose", element.getPurposeElement(), -1); 8053 } 8054 if (element.hasReference()) { 8055 composeReference(t, "ConditionDefinitionQuestionnaireComponent", "reference", element.getReference(), -1); 8056 } 8057 } 8058 8059 protected void composeConditionDefinitionPlanComponent(Complex parent, String parentType, String name, ConditionDefinition.ConditionDefinitionPlanComponent element, int index) { 8060 if (element == null) 8061 return; 8062 Complex t; 8063 if (Utilities.noString(parentType)) 8064 t = parent; 8065 else { 8066 t = parent.predicate("fhir:"+name,index > -1); 8067 } 8068 composeBackboneElement(t, "plan", name, element, index); 8069 if (element.hasRole()) { 8070 composeCodeableConcept(t, "ConditionDefinitionPlanComponent", "role", element.getRole(), -1); 8071 } 8072 if (element.hasReference()) { 8073 composeReference(t, "ConditionDefinitionPlanComponent", "reference", element.getReference(), -1); 8074 } 8075 } 8076 8077 protected void composeConsent(Complex parent, String parentType, String name, Consent element, int index) { 8078 if (element == null) 8079 return; 8080 Complex t; 8081 if (Utilities.noString(parentType)) 8082 t = parent; 8083 else { 8084 t = parent.predicate("fhir:"+name,index > -1); 8085 } 8086 composeDomainResource(t, "Consent", name, element, index); 8087 for (int i = 0; i < element.getIdentifier().size(); i++) { 8088 composeIdentifier(t, "Consent", "identifier", element.getIdentifier().get(i), i); 8089 } 8090 if (element.hasStatusElement()) { 8091 composeEnum(t, "Consent", "status", element.getStatusElement(), -1); 8092 } 8093 for (int i = 0; i < element.getCategory().size(); i++) { 8094 composeCodeableConcept(t, "Consent", "category", element.getCategory().get(i), i); 8095 } 8096 if (element.hasSubject()) { 8097 composeReference(t, "Consent", "subject", element.getSubject(), -1); 8098 } 8099 if (element.hasDateElement()) { 8100 composeDate(t, "Consent", "date", element.getDateElement(), -1); 8101 } 8102 if (element.hasPeriod()) { 8103 composePeriod(t, "Consent", "period", element.getPeriod(), -1); 8104 } 8105 for (int i = 0; i < element.getGrantor().size(); i++) { 8106 composeReference(t, "Consent", "grantor", element.getGrantor().get(i), i); 8107 } 8108 for (int i = 0; i < element.getGrantee().size(); i++) { 8109 composeReference(t, "Consent", "grantee", element.getGrantee().get(i), i); 8110 } 8111 for (int i = 0; i < element.getManager().size(); i++) { 8112 composeReference(t, "Consent", "manager", element.getManager().get(i), i); 8113 } 8114 for (int i = 0; i < element.getController().size(); i++) { 8115 composeReference(t, "Consent", "controller", element.getController().get(i), i); 8116 } 8117 for (int i = 0; i < element.getSourceAttachment().size(); i++) { 8118 composeAttachment(t, "Consent", "sourceAttachment", element.getSourceAttachment().get(i), i); 8119 } 8120 for (int i = 0; i < element.getSourceReference().size(); i++) { 8121 composeReference(t, "Consent", "sourceReference", element.getSourceReference().get(i), i); 8122 } 8123 for (int i = 0; i < element.getRegulatoryBasis().size(); i++) { 8124 composeCodeableConcept(t, "Consent", "regulatoryBasis", element.getRegulatoryBasis().get(i), i); 8125 } 8126 if (element.hasPolicyBasis()) { 8127 composeConsentPolicyBasisComponent(t, "Consent", "policyBasis", element.getPolicyBasis(), -1); 8128 } 8129 for (int i = 0; i < element.getPolicyText().size(); i++) { 8130 composeReference(t, "Consent", "policyText", element.getPolicyText().get(i), i); 8131 } 8132 for (int i = 0; i < element.getVerification().size(); i++) { 8133 composeConsentVerificationComponent(t, "Consent", "verification", element.getVerification().get(i), i); 8134 } 8135 if (element.hasDecisionElement()) { 8136 composeEnum(t, "Consent", "decision", element.getDecisionElement(), -1); 8137 } 8138 for (int i = 0; i < element.getProvision().size(); i++) { 8139 composeConsentProvisionComponent(t, "Consent", "provision", element.getProvision().get(i), i); 8140 } 8141 } 8142 8143 protected void composeConsentPolicyBasisComponent(Complex parent, String parentType, String name, Consent.ConsentPolicyBasisComponent element, int index) { 8144 if (element == null) 8145 return; 8146 Complex t; 8147 if (Utilities.noString(parentType)) 8148 t = parent; 8149 else { 8150 t = parent.predicate("fhir:"+name,index > -1); 8151 } 8152 composeBackboneElement(t, "policyBasis", name, element, index); 8153 if (element.hasReference()) { 8154 composeReference(t, "ConsentPolicyBasisComponent", "reference", element.getReference(), -1); 8155 } 8156 if (element.hasUrlElement()) { 8157 composeUrl(t, "ConsentPolicyBasisComponent", "url", element.getUrlElement(), -1); 8158 } 8159 } 8160 8161 protected void composeConsentVerificationComponent(Complex parent, String parentType, String name, Consent.ConsentVerificationComponent element, int index) { 8162 if (element == null) 8163 return; 8164 Complex t; 8165 if (Utilities.noString(parentType)) 8166 t = parent; 8167 else { 8168 t = parent.predicate("fhir:"+name,index > -1); 8169 } 8170 composeBackboneElement(t, "verification", name, element, index); 8171 if (element.hasVerifiedElement()) { 8172 composeBoolean(t, "ConsentVerificationComponent", "verified", element.getVerifiedElement(), -1); 8173 } 8174 if (element.hasVerificationType()) { 8175 composeCodeableConcept(t, "ConsentVerificationComponent", "verificationType", element.getVerificationType(), -1); 8176 } 8177 if (element.hasVerifiedBy()) { 8178 composeReference(t, "ConsentVerificationComponent", "verifiedBy", element.getVerifiedBy(), -1); 8179 } 8180 if (element.hasVerifiedWith()) { 8181 composeReference(t, "ConsentVerificationComponent", "verifiedWith", element.getVerifiedWith(), -1); 8182 } 8183 for (int i = 0; i < element.getVerificationDate().size(); i++) { 8184 composeDateTime(t, "ConsentVerificationComponent", "verificationDate", element.getVerificationDate().get(i), i); 8185 } 8186 } 8187 8188 protected void composeConsentProvisionComponent(Complex parent, String parentType, String name, Consent.ProvisionComponent element, int index) { 8189 if (element == null) 8190 return; 8191 Complex t; 8192 if (Utilities.noString(parentType)) 8193 t = parent; 8194 else { 8195 t = parent.predicate("fhir:"+name,index > -1); 8196 } 8197 composeBackboneElement(t, "provision", name, element, index); 8198 if (element.hasPeriod()) { 8199 composePeriod(t, "ProvisionComponent", "period", element.getPeriod(), -1); 8200 } 8201 for (int i = 0; i < element.getActor().size(); i++) { 8202 composeConsentProvisionActorComponent(t, "ProvisionComponent", "actor", element.getActor().get(i), i); 8203 } 8204 for (int i = 0; i < element.getAction().size(); i++) { 8205 composeCodeableConcept(t, "ProvisionComponent", "action", element.getAction().get(i), i); 8206 } 8207 for (int i = 0; i < element.getSecurityLabel().size(); i++) { 8208 composeCoding(t, "ProvisionComponent", "securityLabel", element.getSecurityLabel().get(i), i); 8209 } 8210 for (int i = 0; i < element.getPurpose().size(); i++) { 8211 composeCoding(t, "ProvisionComponent", "purpose", element.getPurpose().get(i), i); 8212 } 8213 for (int i = 0; i < element.getDocumentType().size(); i++) { 8214 composeCoding(t, "ProvisionComponent", "documentType", element.getDocumentType().get(i), i); 8215 } 8216 for (int i = 0; i < element.getResourceType().size(); i++) { 8217 composeCoding(t, "ProvisionComponent", "resourceType", element.getResourceType().get(i), i); 8218 } 8219 for (int i = 0; i < element.getCode().size(); i++) { 8220 composeCodeableConcept(t, "ProvisionComponent", "code", element.getCode().get(i), i); 8221 } 8222 if (element.hasDataPeriod()) { 8223 composePeriod(t, "ProvisionComponent", "dataPeriod", element.getDataPeriod(), -1); 8224 } 8225 for (int i = 0; i < element.getData().size(); i++) { 8226 composeConsentProvisionDataComponent(t, "ProvisionComponent", "data", element.getData().get(i), i); 8227 } 8228 if (element.hasExpression()) { 8229 composeExpression(t, "ProvisionComponent", "expression", element.getExpression(), -1); 8230 } 8231 for (int i = 0; i < element.getProvision().size(); i++) { 8232 composeConsentProvisionComponent(t, "ProvisionComponent", "provision", element.getProvision().get(i), i); 8233 } 8234 } 8235 8236 protected void composeConsentProvisionActorComponent(Complex parent, String parentType, String name, Consent.ProvisionActorComponent element, int index) { 8237 if (element == null) 8238 return; 8239 Complex t; 8240 if (Utilities.noString(parentType)) 8241 t = parent; 8242 else { 8243 t = parent.predicate("fhir:"+name,index > -1); 8244 } 8245 composeBackboneElement(t, "actor", name, element, index); 8246 if (element.hasRole()) { 8247 composeCodeableConcept(t, "ProvisionActorComponent", "role", element.getRole(), -1); 8248 } 8249 if (element.hasReference()) { 8250 composeReference(t, "ProvisionActorComponent", "reference", element.getReference(), -1); 8251 } 8252 } 8253 8254 protected void composeConsentProvisionDataComponent(Complex parent, String parentType, String name, Consent.ProvisionDataComponent element, int index) { 8255 if (element == null) 8256 return; 8257 Complex t; 8258 if (Utilities.noString(parentType)) 8259 t = parent; 8260 else { 8261 t = parent.predicate("fhir:"+name,index > -1); 8262 } 8263 composeBackboneElement(t, "data", name, element, index); 8264 if (element.hasMeaningElement()) { 8265 composeEnum(t, "ProvisionDataComponent", "meaning", element.getMeaningElement(), -1); 8266 } 8267 if (element.hasReference()) { 8268 composeReference(t, "ProvisionDataComponent", "reference", element.getReference(), -1); 8269 } 8270 } 8271 8272 protected void composeContract(Complex parent, String parentType, String name, Contract element, int index) { 8273 if (element == null) 8274 return; 8275 Complex t; 8276 if (Utilities.noString(parentType)) 8277 t = parent; 8278 else { 8279 t = parent.predicate("fhir:"+name,index > -1); 8280 } 8281 composeDomainResource(t, "Contract", name, element, index); 8282 for (int i = 0; i < element.getIdentifier().size(); i++) { 8283 composeIdentifier(t, "Contract", "identifier", element.getIdentifier().get(i), i); 8284 } 8285 if (element.hasUrlElement()) { 8286 composeUri(t, "Contract", "url", element.getUrlElement(), -1); 8287 } 8288 if (element.hasVersionElement()) { 8289 composeString(t, "Contract", "version", element.getVersionElement(), -1); 8290 } 8291 if (element.hasStatusElement()) { 8292 composeEnum(t, "Contract", "status", element.getStatusElement(), -1); 8293 } 8294 if (element.hasLegalState()) { 8295 composeCodeableConcept(t, "Contract", "legalState", element.getLegalState(), -1); 8296 } 8297 if (element.hasInstantiatesCanonical()) { 8298 composeReference(t, "Contract", "instantiatesCanonical", element.getInstantiatesCanonical(), -1); 8299 } 8300 if (element.hasInstantiatesUriElement()) { 8301 composeUri(t, "Contract", "instantiatesUri", element.getInstantiatesUriElement(), -1); 8302 } 8303 if (element.hasContentDerivative()) { 8304 composeCodeableConcept(t, "Contract", "contentDerivative", element.getContentDerivative(), -1); 8305 } 8306 if (element.hasIssuedElement()) { 8307 composeDateTime(t, "Contract", "issued", element.getIssuedElement(), -1); 8308 } 8309 if (element.hasApplies()) { 8310 composePeriod(t, "Contract", "applies", element.getApplies(), -1); 8311 } 8312 if (element.hasExpirationType()) { 8313 composeCodeableConcept(t, "Contract", "expirationType", element.getExpirationType(), -1); 8314 } 8315 for (int i = 0; i < element.getSubject().size(); i++) { 8316 composeReference(t, "Contract", "subject", element.getSubject().get(i), i); 8317 } 8318 for (int i = 0; i < element.getAuthority().size(); i++) { 8319 composeReference(t, "Contract", "authority", element.getAuthority().get(i), i); 8320 } 8321 for (int i = 0; i < element.getDomain().size(); i++) { 8322 composeReference(t, "Contract", "domain", element.getDomain().get(i), i); 8323 } 8324 for (int i = 0; i < element.getSite().size(); i++) { 8325 composeReference(t, "Contract", "site", element.getSite().get(i), i); 8326 } 8327 if (element.hasNameElement()) { 8328 composeString(t, "Contract", "name", element.getNameElement(), -1); 8329 } 8330 if (element.hasTitleElement()) { 8331 composeString(t, "Contract", "title", element.getTitleElement(), -1); 8332 } 8333 if (element.hasSubtitleElement()) { 8334 composeString(t, "Contract", "subtitle", element.getSubtitleElement(), -1); 8335 } 8336 for (int i = 0; i < element.getAlias().size(); i++) { 8337 composeString(t, "Contract", "alias", element.getAlias().get(i), i); 8338 } 8339 if (element.hasAuthor()) { 8340 composeReference(t, "Contract", "author", element.getAuthor(), -1); 8341 } 8342 if (element.hasScope()) { 8343 composeCodeableConcept(t, "Contract", "scope", element.getScope(), -1); 8344 } 8345 if (element.hasTopic()) { 8346 composeType(t, "Contract", "topic", element.getTopic(), -1); 8347 } 8348 if (element.hasType()) { 8349 composeCodeableConcept(t, "Contract", "type", element.getType(), -1); 8350 } 8351 for (int i = 0; i < element.getSubType().size(); i++) { 8352 composeCodeableConcept(t, "Contract", "subType", element.getSubType().get(i), i); 8353 } 8354 if (element.hasContentDefinition()) { 8355 composeContractContentDefinitionComponent(t, "Contract", "contentDefinition", element.getContentDefinition(), -1); 8356 } 8357 for (int i = 0; i < element.getTerm().size(); i++) { 8358 composeContractTermComponent(t, "Contract", "term", element.getTerm().get(i), i); 8359 } 8360 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 8361 composeReference(t, "Contract", "supportingInfo", element.getSupportingInfo().get(i), i); 8362 } 8363 for (int i = 0; i < element.getRelevantHistory().size(); i++) { 8364 composeReference(t, "Contract", "relevantHistory", element.getRelevantHistory().get(i), i); 8365 } 8366 for (int i = 0; i < element.getSigner().size(); i++) { 8367 composeContractSignatoryComponent(t, "Contract", "signer", element.getSigner().get(i), i); 8368 } 8369 for (int i = 0; i < element.getFriendly().size(); i++) { 8370 composeContractFriendlyLanguageComponent(t, "Contract", "friendly", element.getFriendly().get(i), i); 8371 } 8372 for (int i = 0; i < element.getLegal().size(); i++) { 8373 composeContractLegalLanguageComponent(t, "Contract", "legal", element.getLegal().get(i), i); 8374 } 8375 for (int i = 0; i < element.getRule().size(); i++) { 8376 composeContractComputableLanguageComponent(t, "Contract", "rule", element.getRule().get(i), i); 8377 } 8378 if (element.hasLegallyBinding()) { 8379 composeType(t, "Contract", "legallyBinding", element.getLegallyBinding(), -1); 8380 } 8381 } 8382 8383 protected void composeContractContentDefinitionComponent(Complex parent, String parentType, String name, Contract.ContentDefinitionComponent element, int index) { 8384 if (element == null) 8385 return; 8386 Complex t; 8387 if (Utilities.noString(parentType)) 8388 t = parent; 8389 else { 8390 t = parent.predicate("fhir:"+name,index > -1); 8391 } 8392 composeBackboneElement(t, "contentDefinition", name, element, index); 8393 if (element.hasType()) { 8394 composeCodeableConcept(t, "ContentDefinitionComponent", "type", element.getType(), -1); 8395 } 8396 if (element.hasSubType()) { 8397 composeCodeableConcept(t, "ContentDefinitionComponent", "subType", element.getSubType(), -1); 8398 } 8399 if (element.hasPublisher()) { 8400 composeReference(t, "ContentDefinitionComponent", "publisher", element.getPublisher(), -1); 8401 } 8402 if (element.hasPublicationDateElement()) { 8403 composeDateTime(t, "ContentDefinitionComponent", "publicationDate", element.getPublicationDateElement(), -1); 8404 } 8405 if (element.hasPublicationStatusElement()) { 8406 composeEnum(t, "ContentDefinitionComponent", "publicationStatus", element.getPublicationStatusElement(), -1); 8407 } 8408 if (element.hasCopyrightElement()) { 8409 composeMarkdown(t, "ContentDefinitionComponent", "copyright", element.getCopyrightElement(), -1); 8410 } 8411 } 8412 8413 protected void composeContractTermComponent(Complex parent, String parentType, String name, Contract.TermComponent element, int index) { 8414 if (element == null) 8415 return; 8416 Complex t; 8417 if (Utilities.noString(parentType)) 8418 t = parent; 8419 else { 8420 t = parent.predicate("fhir:"+name,index > -1); 8421 } 8422 composeBackboneElement(t, "term", name, element, index); 8423 if (element.hasIdentifier()) { 8424 composeIdentifier(t, "TermComponent", "identifier", element.getIdentifier(), -1); 8425 } 8426 if (element.hasIssuedElement()) { 8427 composeDateTime(t, "TermComponent", "issued", element.getIssuedElement(), -1); 8428 } 8429 if (element.hasApplies()) { 8430 composePeriod(t, "TermComponent", "applies", element.getApplies(), -1); 8431 } 8432 if (element.hasTopic()) { 8433 composeType(t, "TermComponent", "topic", element.getTopic(), -1); 8434 } 8435 if (element.hasType()) { 8436 composeCodeableConcept(t, "TermComponent", "type", element.getType(), -1); 8437 } 8438 if (element.hasSubType()) { 8439 composeCodeableConcept(t, "TermComponent", "subType", element.getSubType(), -1); 8440 } 8441 if (element.hasTextElement()) { 8442 composeString(t, "TermComponent", "text", element.getTextElement(), -1); 8443 } 8444 for (int i = 0; i < element.getSecurityLabel().size(); i++) { 8445 composeContractSecurityLabelComponent(t, "TermComponent", "securityLabel", element.getSecurityLabel().get(i), i); 8446 } 8447 if (element.hasOffer()) { 8448 composeContractOfferComponent(t, "TermComponent", "offer", element.getOffer(), -1); 8449 } 8450 for (int i = 0; i < element.getAsset().size(); i++) { 8451 composeContractAssetComponent(t, "TermComponent", "asset", element.getAsset().get(i), i); 8452 } 8453 for (int i = 0; i < element.getAction().size(); i++) { 8454 composeContractActionComponent(t, "TermComponent", "action", element.getAction().get(i), i); 8455 } 8456 for (int i = 0; i < element.getGroup().size(); i++) { 8457 composeContractTermComponent(t, "TermComponent", "group", element.getGroup().get(i), i); 8458 } 8459 } 8460 8461 protected void composeContractSecurityLabelComponent(Complex parent, String parentType, String name, Contract.SecurityLabelComponent element, int index) { 8462 if (element == null) 8463 return; 8464 Complex t; 8465 if (Utilities.noString(parentType)) 8466 t = parent; 8467 else { 8468 t = parent.predicate("fhir:"+name,index > -1); 8469 } 8470 composeBackboneElement(t, "securityLabel", name, element, index); 8471 for (int i = 0; i < element.getNumber().size(); i++) { 8472 composeUnsignedInt(t, "SecurityLabelComponent", "number", element.getNumber().get(i), i); 8473 } 8474 if (element.hasClassification()) { 8475 composeCoding(t, "SecurityLabelComponent", "classification", element.getClassification(), -1); 8476 } 8477 for (int i = 0; i < element.getCategory().size(); i++) { 8478 composeCoding(t, "SecurityLabelComponent", "category", element.getCategory().get(i), i); 8479 } 8480 for (int i = 0; i < element.getControl().size(); i++) { 8481 composeCoding(t, "SecurityLabelComponent", "control", element.getControl().get(i), i); 8482 } 8483 } 8484 8485 protected void composeContractOfferComponent(Complex parent, String parentType, String name, Contract.ContractOfferComponent element, int index) { 8486 if (element == null) 8487 return; 8488 Complex t; 8489 if (Utilities.noString(parentType)) 8490 t = parent; 8491 else { 8492 t = parent.predicate("fhir:"+name,index > -1); 8493 } 8494 composeBackboneElement(t, "offer", name, element, index); 8495 for (int i = 0; i < element.getIdentifier().size(); i++) { 8496 composeIdentifier(t, "ContractOfferComponent", "identifier", element.getIdentifier().get(i), i); 8497 } 8498 for (int i = 0; i < element.getParty().size(); i++) { 8499 composeContractPartyComponent(t, "ContractOfferComponent", "party", element.getParty().get(i), i); 8500 } 8501 if (element.hasTopic()) { 8502 composeReference(t, "ContractOfferComponent", "topic", element.getTopic(), -1); 8503 } 8504 if (element.hasType()) { 8505 composeCodeableConcept(t, "ContractOfferComponent", "type", element.getType(), -1); 8506 } 8507 if (element.hasDecision()) { 8508 composeCodeableConcept(t, "ContractOfferComponent", "decision", element.getDecision(), -1); 8509 } 8510 for (int i = 0; i < element.getDecisionMode().size(); i++) { 8511 composeCodeableConcept(t, "ContractOfferComponent", "decisionMode", element.getDecisionMode().get(i), i); 8512 } 8513 for (int i = 0; i < element.getAnswer().size(); i++) { 8514 composeContractAnswerComponent(t, "ContractOfferComponent", "answer", element.getAnswer().get(i), i); 8515 } 8516 if (element.hasTextElement()) { 8517 composeString(t, "ContractOfferComponent", "text", element.getTextElement(), -1); 8518 } 8519 for (int i = 0; i < element.getLinkId().size(); i++) { 8520 composeString(t, "ContractOfferComponent", "linkId", element.getLinkId().get(i), i); 8521 } 8522 for (int i = 0; i < element.getSecurityLabelNumber().size(); i++) { 8523 composeUnsignedInt(t, "ContractOfferComponent", "securityLabelNumber", element.getSecurityLabelNumber().get(i), i); 8524 } 8525 } 8526 8527 protected void composeContractPartyComponent(Complex parent, String parentType, String name, Contract.ContractPartyComponent element, int index) { 8528 if (element == null) 8529 return; 8530 Complex t; 8531 if (Utilities.noString(parentType)) 8532 t = parent; 8533 else { 8534 t = parent.predicate("fhir:"+name,index > -1); 8535 } 8536 composeBackboneElement(t, "party", name, element, index); 8537 for (int i = 0; i < element.getReference().size(); i++) { 8538 composeReference(t, "ContractPartyComponent", "reference", element.getReference().get(i), i); 8539 } 8540 if (element.hasRole()) { 8541 composeCodeableConcept(t, "ContractPartyComponent", "role", element.getRole(), -1); 8542 } 8543 } 8544 8545 protected void composeContractAnswerComponent(Complex parent, String parentType, String name, Contract.AnswerComponent element, int index) { 8546 if (element == null) 8547 return; 8548 Complex t; 8549 if (Utilities.noString(parentType)) 8550 t = parent; 8551 else { 8552 t = parent.predicate("fhir:"+name,index > -1); 8553 } 8554 composeBackboneElement(t, "answer", name, element, index); 8555 if (element.hasValue()) { 8556 composeType(t, "AnswerComponent", "value", element.getValue(), -1); 8557 } 8558 } 8559 8560 protected void composeContractAssetComponent(Complex parent, String parentType, String name, Contract.ContractAssetComponent element, int index) { 8561 if (element == null) 8562 return; 8563 Complex t; 8564 if (Utilities.noString(parentType)) 8565 t = parent; 8566 else { 8567 t = parent.predicate("fhir:"+name,index > -1); 8568 } 8569 composeBackboneElement(t, "asset", name, element, index); 8570 if (element.hasScope()) { 8571 composeCodeableConcept(t, "ContractAssetComponent", "scope", element.getScope(), -1); 8572 } 8573 for (int i = 0; i < element.getType().size(); i++) { 8574 composeCodeableConcept(t, "ContractAssetComponent", "type", element.getType().get(i), i); 8575 } 8576 for (int i = 0; i < element.getTypeReference().size(); i++) { 8577 composeReference(t, "ContractAssetComponent", "typeReference", element.getTypeReference().get(i), i); 8578 } 8579 for (int i = 0; i < element.getSubtype().size(); i++) { 8580 composeCodeableConcept(t, "ContractAssetComponent", "subtype", element.getSubtype().get(i), i); 8581 } 8582 if (element.hasRelationship()) { 8583 composeCoding(t, "ContractAssetComponent", "relationship", element.getRelationship(), -1); 8584 } 8585 for (int i = 0; i < element.getContext().size(); i++) { 8586 composeContractAssetContextComponent(t, "ContractAssetComponent", "context", element.getContext().get(i), i); 8587 } 8588 if (element.hasConditionElement()) { 8589 composeString(t, "ContractAssetComponent", "condition", element.getConditionElement(), -1); 8590 } 8591 for (int i = 0; i < element.getPeriodType().size(); i++) { 8592 composeCodeableConcept(t, "ContractAssetComponent", "periodType", element.getPeriodType().get(i), i); 8593 } 8594 for (int i = 0; i < element.getPeriod().size(); i++) { 8595 composePeriod(t, "ContractAssetComponent", "period", element.getPeriod().get(i), i); 8596 } 8597 for (int i = 0; i < element.getUsePeriod().size(); i++) { 8598 composePeriod(t, "ContractAssetComponent", "usePeriod", element.getUsePeriod().get(i), i); 8599 } 8600 if (element.hasTextElement()) { 8601 composeString(t, "ContractAssetComponent", "text", element.getTextElement(), -1); 8602 } 8603 for (int i = 0; i < element.getLinkId().size(); i++) { 8604 composeString(t, "ContractAssetComponent", "linkId", element.getLinkId().get(i), i); 8605 } 8606 for (int i = 0; i < element.getAnswer().size(); i++) { 8607 composeContractAnswerComponent(t, "ContractAssetComponent", "answer", element.getAnswer().get(i), i); 8608 } 8609 for (int i = 0; i < element.getSecurityLabelNumber().size(); i++) { 8610 composeUnsignedInt(t, "ContractAssetComponent", "securityLabelNumber", element.getSecurityLabelNumber().get(i), i); 8611 } 8612 for (int i = 0; i < element.getValuedItem().size(); i++) { 8613 composeContractValuedItemComponent(t, "ContractAssetComponent", "valuedItem", element.getValuedItem().get(i), i); 8614 } 8615 } 8616 8617 protected void composeContractAssetContextComponent(Complex parent, String parentType, String name, Contract.AssetContextComponent element, int index) { 8618 if (element == null) 8619 return; 8620 Complex t; 8621 if (Utilities.noString(parentType)) 8622 t = parent; 8623 else { 8624 t = parent.predicate("fhir:"+name,index > -1); 8625 } 8626 composeBackboneElement(t, "context", name, element, index); 8627 if (element.hasReference()) { 8628 composeReference(t, "AssetContextComponent", "reference", element.getReference(), -1); 8629 } 8630 for (int i = 0; i < element.getCode().size(); i++) { 8631 composeCodeableConcept(t, "AssetContextComponent", "code", element.getCode().get(i), i); 8632 } 8633 if (element.hasTextElement()) { 8634 composeString(t, "AssetContextComponent", "text", element.getTextElement(), -1); 8635 } 8636 } 8637 8638 protected void composeContractValuedItemComponent(Complex parent, String parentType, String name, Contract.ValuedItemComponent element, int index) { 8639 if (element == null) 8640 return; 8641 Complex t; 8642 if (Utilities.noString(parentType)) 8643 t = parent; 8644 else { 8645 t = parent.predicate("fhir:"+name,index > -1); 8646 } 8647 composeBackboneElement(t, "valuedItem", name, element, index); 8648 if (element.hasEntity()) { 8649 composeType(t, "ValuedItemComponent", "entity", element.getEntity(), -1); 8650 } 8651 if (element.hasIdentifier()) { 8652 composeIdentifier(t, "ValuedItemComponent", "identifier", element.getIdentifier(), -1); 8653 } 8654 if (element.hasEffectiveTimeElement()) { 8655 composeDateTime(t, "ValuedItemComponent", "effectiveTime", element.getEffectiveTimeElement(), -1); 8656 } 8657 if (element.hasQuantity()) { 8658 composeQuantity(t, "ValuedItemComponent", "quantity", element.getQuantity(), -1); 8659 } 8660 if (element.hasUnitPrice()) { 8661 composeMoney(t, "ValuedItemComponent", "unitPrice", element.getUnitPrice(), -1); 8662 } 8663 if (element.hasFactorElement()) { 8664 composeDecimal(t, "ValuedItemComponent", "factor", element.getFactorElement(), -1); 8665 } 8666 if (element.hasPointsElement()) { 8667 composeDecimal(t, "ValuedItemComponent", "points", element.getPointsElement(), -1); 8668 } 8669 if (element.hasNet()) { 8670 composeMoney(t, "ValuedItemComponent", "net", element.getNet(), -1); 8671 } 8672 if (element.hasPaymentElement()) { 8673 composeString(t, "ValuedItemComponent", "payment", element.getPaymentElement(), -1); 8674 } 8675 if (element.hasPaymentDateElement()) { 8676 composeDateTime(t, "ValuedItemComponent", "paymentDate", element.getPaymentDateElement(), -1); 8677 } 8678 if (element.hasResponsible()) { 8679 composeReference(t, "ValuedItemComponent", "responsible", element.getResponsible(), -1); 8680 } 8681 if (element.hasRecipient()) { 8682 composeReference(t, "ValuedItemComponent", "recipient", element.getRecipient(), -1); 8683 } 8684 for (int i = 0; i < element.getLinkId().size(); i++) { 8685 composeString(t, "ValuedItemComponent", "linkId", element.getLinkId().get(i), i); 8686 } 8687 for (int i = 0; i < element.getSecurityLabelNumber().size(); i++) { 8688 composeUnsignedInt(t, "ValuedItemComponent", "securityLabelNumber", element.getSecurityLabelNumber().get(i), i); 8689 } 8690 } 8691 8692 protected void composeContractActionComponent(Complex parent, String parentType, String name, Contract.ActionComponent element, int index) { 8693 if (element == null) 8694 return; 8695 Complex t; 8696 if (Utilities.noString(parentType)) 8697 t = parent; 8698 else { 8699 t = parent.predicate("fhir:"+name,index > -1); 8700 } 8701 composeBackboneElement(t, "action", name, element, index); 8702 if (element.hasDoNotPerformElement()) { 8703 composeBoolean(t, "ActionComponent", "doNotPerform", element.getDoNotPerformElement(), -1); 8704 } 8705 if (element.hasType()) { 8706 composeCodeableConcept(t, "ActionComponent", "type", element.getType(), -1); 8707 } 8708 for (int i = 0; i < element.getSubject().size(); i++) { 8709 composeContractActionSubjectComponent(t, "ActionComponent", "subject", element.getSubject().get(i), i); 8710 } 8711 if (element.hasIntent()) { 8712 composeCodeableConcept(t, "ActionComponent", "intent", element.getIntent(), -1); 8713 } 8714 for (int i = 0; i < element.getLinkId().size(); i++) { 8715 composeString(t, "ActionComponent", "linkId", element.getLinkId().get(i), i); 8716 } 8717 if (element.hasStatus()) { 8718 composeCodeableConcept(t, "ActionComponent", "status", element.getStatus(), -1); 8719 } 8720 if (element.hasContext()) { 8721 composeReference(t, "ActionComponent", "context", element.getContext(), -1); 8722 } 8723 for (int i = 0; i < element.getContextLinkId().size(); i++) { 8724 composeString(t, "ActionComponent", "contextLinkId", element.getContextLinkId().get(i), i); 8725 } 8726 if (element.hasOccurrence()) { 8727 composeType(t, "ActionComponent", "occurrence", element.getOccurrence(), -1); 8728 } 8729 for (int i = 0; i < element.getRequester().size(); i++) { 8730 composeReference(t, "ActionComponent", "requester", element.getRequester().get(i), i); 8731 } 8732 for (int i = 0; i < element.getRequesterLinkId().size(); i++) { 8733 composeString(t, "ActionComponent", "requesterLinkId", element.getRequesterLinkId().get(i), i); 8734 } 8735 for (int i = 0; i < element.getPerformerType().size(); i++) { 8736 composeCodeableConcept(t, "ActionComponent", "performerType", element.getPerformerType().get(i), i); 8737 } 8738 if (element.hasPerformerRole()) { 8739 composeCodeableConcept(t, "ActionComponent", "performerRole", element.getPerformerRole(), -1); 8740 } 8741 if (element.hasPerformer()) { 8742 composeReference(t, "ActionComponent", "performer", element.getPerformer(), -1); 8743 } 8744 for (int i = 0; i < element.getPerformerLinkId().size(); i++) { 8745 composeString(t, "ActionComponent", "performerLinkId", element.getPerformerLinkId().get(i), i); 8746 } 8747 for (int i = 0; i < element.getReason().size(); i++) { 8748 composeCodeableReference(t, "ActionComponent", "reason", element.getReason().get(i), i); 8749 } 8750 for (int i = 0; i < element.getReasonLinkId().size(); i++) { 8751 composeString(t, "ActionComponent", "reasonLinkId", element.getReasonLinkId().get(i), i); 8752 } 8753 for (int i = 0; i < element.getNote().size(); i++) { 8754 composeAnnotation(t, "ActionComponent", "note", element.getNote().get(i), i); 8755 } 8756 for (int i = 0; i < element.getSecurityLabelNumber().size(); i++) { 8757 composeUnsignedInt(t, "ActionComponent", "securityLabelNumber", element.getSecurityLabelNumber().get(i), i); 8758 } 8759 } 8760 8761 protected void composeContractActionSubjectComponent(Complex parent, String parentType, String name, Contract.ActionSubjectComponent element, int index) { 8762 if (element == null) 8763 return; 8764 Complex t; 8765 if (Utilities.noString(parentType)) 8766 t = parent; 8767 else { 8768 t = parent.predicate("fhir:"+name,index > -1); 8769 } 8770 composeBackboneElement(t, "subject", name, element, index); 8771 for (int i = 0; i < element.getReference().size(); i++) { 8772 composeReference(t, "ActionSubjectComponent", "reference", element.getReference().get(i), i); 8773 } 8774 if (element.hasRole()) { 8775 composeCodeableConcept(t, "ActionSubjectComponent", "role", element.getRole(), -1); 8776 } 8777 } 8778 8779 protected void composeContractSignatoryComponent(Complex parent, String parentType, String name, Contract.SignatoryComponent element, int index) { 8780 if (element == null) 8781 return; 8782 Complex t; 8783 if (Utilities.noString(parentType)) 8784 t = parent; 8785 else { 8786 t = parent.predicate("fhir:"+name,index > -1); 8787 } 8788 composeBackboneElement(t, "signer", name, element, index); 8789 if (element.hasType()) { 8790 composeCoding(t, "SignatoryComponent", "type", element.getType(), -1); 8791 } 8792 if (element.hasParty()) { 8793 composeReference(t, "SignatoryComponent", "party", element.getParty(), -1); 8794 } 8795 for (int i = 0; i < element.getSignature().size(); i++) { 8796 composeSignature(t, "SignatoryComponent", "signature", element.getSignature().get(i), i); 8797 } 8798 } 8799 8800 protected void composeContractFriendlyLanguageComponent(Complex parent, String parentType, String name, Contract.FriendlyLanguageComponent element, int index) { 8801 if (element == null) 8802 return; 8803 Complex t; 8804 if (Utilities.noString(parentType)) 8805 t = parent; 8806 else { 8807 t = parent.predicate("fhir:"+name,index > -1); 8808 } 8809 composeBackboneElement(t, "friendly", name, element, index); 8810 if (element.hasContent()) { 8811 composeType(t, "FriendlyLanguageComponent", "content", element.getContent(), -1); 8812 } 8813 } 8814 8815 protected void composeContractLegalLanguageComponent(Complex parent, String parentType, String name, Contract.LegalLanguageComponent element, int index) { 8816 if (element == null) 8817 return; 8818 Complex t; 8819 if (Utilities.noString(parentType)) 8820 t = parent; 8821 else { 8822 t = parent.predicate("fhir:"+name,index > -1); 8823 } 8824 composeBackboneElement(t, "legal", name, element, index); 8825 if (element.hasContent()) { 8826 composeType(t, "LegalLanguageComponent", "content", element.getContent(), -1); 8827 } 8828 } 8829 8830 protected void composeContractComputableLanguageComponent(Complex parent, String parentType, String name, Contract.ComputableLanguageComponent element, int index) { 8831 if (element == null) 8832 return; 8833 Complex t; 8834 if (Utilities.noString(parentType)) 8835 t = parent; 8836 else { 8837 t = parent.predicate("fhir:"+name,index > -1); 8838 } 8839 composeBackboneElement(t, "rule", name, element, index); 8840 if (element.hasContent()) { 8841 composeType(t, "ComputableLanguageComponent", "content", element.getContent(), -1); 8842 } 8843 } 8844 8845 protected void composeCoverage(Complex parent, String parentType, String name, Coverage element, int index) { 8846 if (element == null) 8847 return; 8848 Complex t; 8849 if (Utilities.noString(parentType)) 8850 t = parent; 8851 else { 8852 t = parent.predicate("fhir:"+name,index > -1); 8853 } 8854 composeDomainResource(t, "Coverage", name, element, index); 8855 for (int i = 0; i < element.getIdentifier().size(); i++) { 8856 composeIdentifier(t, "Coverage", "identifier", element.getIdentifier().get(i), i); 8857 } 8858 if (element.hasStatusElement()) { 8859 composeEnum(t, "Coverage", "status", element.getStatusElement(), -1); 8860 } 8861 if (element.hasKindElement()) { 8862 composeEnum(t, "Coverage", "kind", element.getKindElement(), -1); 8863 } 8864 for (int i = 0; i < element.getPaymentBy().size(); i++) { 8865 composeCoveragePaymentByComponent(t, "Coverage", "paymentBy", element.getPaymentBy().get(i), i); 8866 } 8867 if (element.hasType()) { 8868 composeCodeableConcept(t, "Coverage", "type", element.getType(), -1); 8869 } 8870 if (element.hasPolicyHolder()) { 8871 composeReference(t, "Coverage", "policyHolder", element.getPolicyHolder(), -1); 8872 } 8873 if (element.hasSubscriber()) { 8874 composeReference(t, "Coverage", "subscriber", element.getSubscriber(), -1); 8875 } 8876 for (int i = 0; i < element.getSubscriberId().size(); i++) { 8877 composeIdentifier(t, "Coverage", "subscriberId", element.getSubscriberId().get(i), i); 8878 } 8879 if (element.hasBeneficiary()) { 8880 composeReference(t, "Coverage", "beneficiary", element.getBeneficiary(), -1); 8881 } 8882 if (element.hasDependentElement()) { 8883 composeString(t, "Coverage", "dependent", element.getDependentElement(), -1); 8884 } 8885 if (element.hasRelationship()) { 8886 composeCodeableConcept(t, "Coverage", "relationship", element.getRelationship(), -1); 8887 } 8888 if (element.hasPeriod()) { 8889 composePeriod(t, "Coverage", "period", element.getPeriod(), -1); 8890 } 8891 if (element.hasInsurer()) { 8892 composeReference(t, "Coverage", "insurer", element.getInsurer(), -1); 8893 } 8894 for (int i = 0; i < element.getClass_().size(); i++) { 8895 composeCoverageClassComponent(t, "Coverage", "class", element.getClass_().get(i), i); 8896 } 8897 if (element.hasOrderElement()) { 8898 composePositiveInt(t, "Coverage", "order", element.getOrderElement(), -1); 8899 } 8900 if (element.hasNetworkElement()) { 8901 composeString(t, "Coverage", "network", element.getNetworkElement(), -1); 8902 } 8903 for (int i = 0; i < element.getCostToBeneficiary().size(); i++) { 8904 composeCoverageCostToBeneficiaryComponent(t, "Coverage", "costToBeneficiary", element.getCostToBeneficiary().get(i), i); 8905 } 8906 if (element.hasSubrogationElement()) { 8907 composeBoolean(t, "Coverage", "subrogation", element.getSubrogationElement(), -1); 8908 } 8909 for (int i = 0; i < element.getContract().size(); i++) { 8910 composeReference(t, "Coverage", "contract", element.getContract().get(i), i); 8911 } 8912 if (element.hasInsurancePlan()) { 8913 composeReference(t, "Coverage", "insurancePlan", element.getInsurancePlan(), -1); 8914 } 8915 } 8916 8917 protected void composeCoveragePaymentByComponent(Complex parent, String parentType, String name, Coverage.CoveragePaymentByComponent element, int index) { 8918 if (element == null) 8919 return; 8920 Complex t; 8921 if (Utilities.noString(parentType)) 8922 t = parent; 8923 else { 8924 t = parent.predicate("fhir:"+name,index > -1); 8925 } 8926 composeBackboneElement(t, "paymentBy", name, element, index); 8927 if (element.hasParty()) { 8928 composeReference(t, "CoveragePaymentByComponent", "party", element.getParty(), -1); 8929 } 8930 if (element.hasResponsibilityElement()) { 8931 composeString(t, "CoveragePaymentByComponent", "responsibility", element.getResponsibilityElement(), -1); 8932 } 8933 } 8934 8935 protected void composeCoverageClassComponent(Complex parent, String parentType, String name, Coverage.ClassComponent element, int index) { 8936 if (element == null) 8937 return; 8938 Complex t; 8939 if (Utilities.noString(parentType)) 8940 t = parent; 8941 else { 8942 t = parent.predicate("fhir:"+name,index > -1); 8943 } 8944 composeBackboneElement(t, "class", name, element, index); 8945 if (element.hasType()) { 8946 composeCodeableConcept(t, "ClassComponent", "type", element.getType(), -1); 8947 } 8948 if (element.hasValue()) { 8949 composeIdentifier(t, "ClassComponent", "value", element.getValue(), -1); 8950 } 8951 if (element.hasNameElement()) { 8952 composeString(t, "ClassComponent", "name", element.getNameElement(), -1); 8953 } 8954 } 8955 8956 protected void composeCoverageCostToBeneficiaryComponent(Complex parent, String parentType, String name, Coverage.CostToBeneficiaryComponent element, int index) { 8957 if (element == null) 8958 return; 8959 Complex t; 8960 if (Utilities.noString(parentType)) 8961 t = parent; 8962 else { 8963 t = parent.predicate("fhir:"+name,index > -1); 8964 } 8965 composeBackboneElement(t, "costToBeneficiary", name, element, index); 8966 if (element.hasType()) { 8967 composeCodeableConcept(t, "CostToBeneficiaryComponent", "type", element.getType(), -1); 8968 } 8969 if (element.hasCategory()) { 8970 composeCodeableConcept(t, "CostToBeneficiaryComponent", "category", element.getCategory(), -1); 8971 } 8972 if (element.hasNetwork()) { 8973 composeCodeableConcept(t, "CostToBeneficiaryComponent", "network", element.getNetwork(), -1); 8974 } 8975 if (element.hasUnit()) { 8976 composeCodeableConcept(t, "CostToBeneficiaryComponent", "unit", element.getUnit(), -1); 8977 } 8978 if (element.hasTerm()) { 8979 composeCodeableConcept(t, "CostToBeneficiaryComponent", "term", element.getTerm(), -1); 8980 } 8981 if (element.hasValue()) { 8982 composeType(t, "CostToBeneficiaryComponent", "value", element.getValue(), -1); 8983 } 8984 for (int i = 0; i < element.getException().size(); i++) { 8985 composeCoverageExemptionComponent(t, "CostToBeneficiaryComponent", "exception", element.getException().get(i), i); 8986 } 8987 } 8988 8989 protected void composeCoverageExemptionComponent(Complex parent, String parentType, String name, Coverage.ExemptionComponent element, int index) { 8990 if (element == null) 8991 return; 8992 Complex t; 8993 if (Utilities.noString(parentType)) 8994 t = parent; 8995 else { 8996 t = parent.predicate("fhir:"+name,index > -1); 8997 } 8998 composeBackboneElement(t, "exception", name, element, index); 8999 if (element.hasType()) { 9000 composeCodeableConcept(t, "ExemptionComponent", "type", element.getType(), -1); 9001 } 9002 if (element.hasPeriod()) { 9003 composePeriod(t, "ExemptionComponent", "period", element.getPeriod(), -1); 9004 } 9005 } 9006 9007 protected void composeCoverageEligibilityRequest(Complex parent, String parentType, String name, CoverageEligibilityRequest element, int index) { 9008 if (element == null) 9009 return; 9010 Complex t; 9011 if (Utilities.noString(parentType)) 9012 t = parent; 9013 else { 9014 t = parent.predicate("fhir:"+name,index > -1); 9015 } 9016 composeDomainResource(t, "CoverageEligibilityRequest", name, element, index); 9017 for (int i = 0; i < element.getIdentifier().size(); i++) { 9018 composeIdentifier(t, "CoverageEligibilityRequest", "identifier", element.getIdentifier().get(i), i); 9019 } 9020 if (element.hasStatusElement()) { 9021 composeEnum(t, "CoverageEligibilityRequest", "status", element.getStatusElement(), -1); 9022 } 9023 if (element.hasPriority()) { 9024 composeCodeableConcept(t, "CoverageEligibilityRequest", "priority", element.getPriority(), -1); 9025 } 9026 for (int i = 0; i < element.getPurpose().size(); i++) { 9027 composeEnum(t, "CoverageEligibilityRequest", "purpose", element.getPurpose().get(i), i); 9028 } 9029 if (element.hasPatient()) { 9030 composeReference(t, "CoverageEligibilityRequest", "patient", element.getPatient(), -1); 9031 } 9032 for (int i = 0; i < element.getEvent().size(); i++) { 9033 composeCoverageEligibilityRequestEventComponent(t, "CoverageEligibilityRequest", "event", element.getEvent().get(i), i); 9034 } 9035 if (element.hasServiced()) { 9036 composeType(t, "CoverageEligibilityRequest", "serviced", element.getServiced(), -1); 9037 } 9038 if (element.hasCreatedElement()) { 9039 composeDateTime(t, "CoverageEligibilityRequest", "created", element.getCreatedElement(), -1); 9040 } 9041 if (element.hasEnterer()) { 9042 composeReference(t, "CoverageEligibilityRequest", "enterer", element.getEnterer(), -1); 9043 } 9044 if (element.hasProvider()) { 9045 composeReference(t, "CoverageEligibilityRequest", "provider", element.getProvider(), -1); 9046 } 9047 if (element.hasInsurer()) { 9048 composeReference(t, "CoverageEligibilityRequest", "insurer", element.getInsurer(), -1); 9049 } 9050 if (element.hasFacility()) { 9051 composeReference(t, "CoverageEligibilityRequest", "facility", element.getFacility(), -1); 9052 } 9053 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 9054 composeCoverageEligibilityRequestSupportingInformationComponent(t, "CoverageEligibilityRequest", "supportingInfo", element.getSupportingInfo().get(i), i); 9055 } 9056 for (int i = 0; i < element.getInsurance().size(); i++) { 9057 composeCoverageEligibilityRequestInsuranceComponent(t, "CoverageEligibilityRequest", "insurance", element.getInsurance().get(i), i); 9058 } 9059 for (int i = 0; i < element.getItem().size(); i++) { 9060 composeCoverageEligibilityRequestDetailsComponent(t, "CoverageEligibilityRequest", "item", element.getItem().get(i), i); 9061 } 9062 } 9063 9064 protected void composeCoverageEligibilityRequestEventComponent(Complex parent, String parentType, String name, CoverageEligibilityRequest.CoverageEligibilityRequestEventComponent element, int index) { 9065 if (element == null) 9066 return; 9067 Complex t; 9068 if (Utilities.noString(parentType)) 9069 t = parent; 9070 else { 9071 t = parent.predicate("fhir:"+name,index > -1); 9072 } 9073 composeBackboneElement(t, "event", name, element, index); 9074 if (element.hasType()) { 9075 composeCodeableConcept(t, "CoverageEligibilityRequestEventComponent", "type", element.getType(), -1); 9076 } 9077 if (element.hasWhen()) { 9078 composeType(t, "CoverageEligibilityRequestEventComponent", "when", element.getWhen(), -1); 9079 } 9080 } 9081 9082 protected void composeCoverageEligibilityRequestSupportingInformationComponent(Complex parent, String parentType, String name, CoverageEligibilityRequest.SupportingInformationComponent element, int index) { 9083 if (element == null) 9084 return; 9085 Complex t; 9086 if (Utilities.noString(parentType)) 9087 t = parent; 9088 else { 9089 t = parent.predicate("fhir:"+name,index > -1); 9090 } 9091 composeBackboneElement(t, "supportingInfo", name, element, index); 9092 if (element.hasSequenceElement()) { 9093 composePositiveInt(t, "SupportingInformationComponent", "sequence", element.getSequenceElement(), -1); 9094 } 9095 if (element.hasInformation()) { 9096 composeReference(t, "SupportingInformationComponent", "information", element.getInformation(), -1); 9097 } 9098 if (element.hasAppliesToAllElement()) { 9099 composeBoolean(t, "SupportingInformationComponent", "appliesToAll", element.getAppliesToAllElement(), -1); 9100 } 9101 } 9102 9103 protected void composeCoverageEligibilityRequestInsuranceComponent(Complex parent, String parentType, String name, CoverageEligibilityRequest.InsuranceComponent element, int index) { 9104 if (element == null) 9105 return; 9106 Complex t; 9107 if (Utilities.noString(parentType)) 9108 t = parent; 9109 else { 9110 t = parent.predicate("fhir:"+name,index > -1); 9111 } 9112 composeBackboneElement(t, "insurance", name, element, index); 9113 if (element.hasFocalElement()) { 9114 composeBoolean(t, "InsuranceComponent", "focal", element.getFocalElement(), -1); 9115 } 9116 if (element.hasCoverage()) { 9117 composeReference(t, "InsuranceComponent", "coverage", element.getCoverage(), -1); 9118 } 9119 if (element.hasBusinessArrangementElement()) { 9120 composeString(t, "InsuranceComponent", "businessArrangement", element.getBusinessArrangementElement(), -1); 9121 } 9122 } 9123 9124 protected void composeCoverageEligibilityRequestDetailsComponent(Complex parent, String parentType, String name, CoverageEligibilityRequest.DetailsComponent element, int index) { 9125 if (element == null) 9126 return; 9127 Complex t; 9128 if (Utilities.noString(parentType)) 9129 t = parent; 9130 else { 9131 t = parent.predicate("fhir:"+name,index > -1); 9132 } 9133 composeBackboneElement(t, "item", name, element, index); 9134 for (int i = 0; i < element.getSupportingInfoSequence().size(); i++) { 9135 composePositiveInt(t, "DetailsComponent", "supportingInfoSequence", element.getSupportingInfoSequence().get(i), i); 9136 } 9137 if (element.hasCategory()) { 9138 composeCodeableConcept(t, "DetailsComponent", "category", element.getCategory(), -1); 9139 } 9140 if (element.hasProductOrService()) { 9141 composeCodeableConcept(t, "DetailsComponent", "productOrService", element.getProductOrService(), -1); 9142 } 9143 for (int i = 0; i < element.getModifier().size(); i++) { 9144 composeCodeableConcept(t, "DetailsComponent", "modifier", element.getModifier().get(i), i); 9145 } 9146 if (element.hasProvider()) { 9147 composeReference(t, "DetailsComponent", "provider", element.getProvider(), -1); 9148 } 9149 if (element.hasQuantity()) { 9150 composeQuantity(t, "DetailsComponent", "quantity", element.getQuantity(), -1); 9151 } 9152 if (element.hasUnitPrice()) { 9153 composeMoney(t, "DetailsComponent", "unitPrice", element.getUnitPrice(), -1); 9154 } 9155 if (element.hasFacility()) { 9156 composeReference(t, "DetailsComponent", "facility", element.getFacility(), -1); 9157 } 9158 for (int i = 0; i < element.getDiagnosis().size(); i++) { 9159 composeCoverageEligibilityRequestDiagnosisComponent(t, "DetailsComponent", "diagnosis", element.getDiagnosis().get(i), i); 9160 } 9161 for (int i = 0; i < element.getDetail().size(); i++) { 9162 composeReference(t, "DetailsComponent", "detail", element.getDetail().get(i), i); 9163 } 9164 } 9165 9166 protected void composeCoverageEligibilityRequestDiagnosisComponent(Complex parent, String parentType, String name, CoverageEligibilityRequest.DiagnosisComponent element, int index) { 9167 if (element == null) 9168 return; 9169 Complex t; 9170 if (Utilities.noString(parentType)) 9171 t = parent; 9172 else { 9173 t = parent.predicate("fhir:"+name,index > -1); 9174 } 9175 composeBackboneElement(t, "diagnosis", name, element, index); 9176 if (element.hasDiagnosis()) { 9177 composeType(t, "DiagnosisComponent", "diagnosis", element.getDiagnosis(), -1); 9178 } 9179 } 9180 9181 protected void composeCoverageEligibilityResponse(Complex parent, String parentType, String name, CoverageEligibilityResponse element, int index) { 9182 if (element == null) 9183 return; 9184 Complex t; 9185 if (Utilities.noString(parentType)) 9186 t = parent; 9187 else { 9188 t = parent.predicate("fhir:"+name,index > -1); 9189 } 9190 composeDomainResource(t, "CoverageEligibilityResponse", name, element, index); 9191 for (int i = 0; i < element.getIdentifier().size(); i++) { 9192 composeIdentifier(t, "CoverageEligibilityResponse", "identifier", element.getIdentifier().get(i), i); 9193 } 9194 if (element.hasStatusElement()) { 9195 composeEnum(t, "CoverageEligibilityResponse", "status", element.getStatusElement(), -1); 9196 } 9197 for (int i = 0; i < element.getPurpose().size(); i++) { 9198 composeEnum(t, "CoverageEligibilityResponse", "purpose", element.getPurpose().get(i), i); 9199 } 9200 if (element.hasPatient()) { 9201 composeReference(t, "CoverageEligibilityResponse", "patient", element.getPatient(), -1); 9202 } 9203 for (int i = 0; i < element.getEvent().size(); i++) { 9204 composeCoverageEligibilityResponseEventComponent(t, "CoverageEligibilityResponse", "event", element.getEvent().get(i), i); 9205 } 9206 if (element.hasServiced()) { 9207 composeType(t, "CoverageEligibilityResponse", "serviced", element.getServiced(), -1); 9208 } 9209 if (element.hasCreatedElement()) { 9210 composeDateTime(t, "CoverageEligibilityResponse", "created", element.getCreatedElement(), -1); 9211 } 9212 if (element.hasRequestor()) { 9213 composeReference(t, "CoverageEligibilityResponse", "requestor", element.getRequestor(), -1); 9214 } 9215 if (element.hasRequest()) { 9216 composeReference(t, "CoverageEligibilityResponse", "request", element.getRequest(), -1); 9217 } 9218 if (element.hasOutcomeElement()) { 9219 composeEnum(t, "CoverageEligibilityResponse", "outcome", element.getOutcomeElement(), -1); 9220 } 9221 if (element.hasDispositionElement()) { 9222 composeString(t, "CoverageEligibilityResponse", "disposition", element.getDispositionElement(), -1); 9223 } 9224 if (element.hasInsurer()) { 9225 composeReference(t, "CoverageEligibilityResponse", "insurer", element.getInsurer(), -1); 9226 } 9227 for (int i = 0; i < element.getInsurance().size(); i++) { 9228 composeCoverageEligibilityResponseInsuranceComponent(t, "CoverageEligibilityResponse", "insurance", element.getInsurance().get(i), i); 9229 } 9230 if (element.hasPreAuthRefElement()) { 9231 composeString(t, "CoverageEligibilityResponse", "preAuthRef", element.getPreAuthRefElement(), -1); 9232 } 9233 if (element.hasForm()) { 9234 composeCodeableConcept(t, "CoverageEligibilityResponse", "form", element.getForm(), -1); 9235 } 9236 for (int i = 0; i < element.getError().size(); i++) { 9237 composeCoverageEligibilityResponseErrorsComponent(t, "CoverageEligibilityResponse", "error", element.getError().get(i), i); 9238 } 9239 } 9240 9241 protected void composeCoverageEligibilityResponseEventComponent(Complex parent, String parentType, String name, CoverageEligibilityResponse.CoverageEligibilityResponseEventComponent element, int index) { 9242 if (element == null) 9243 return; 9244 Complex t; 9245 if (Utilities.noString(parentType)) 9246 t = parent; 9247 else { 9248 t = parent.predicate("fhir:"+name,index > -1); 9249 } 9250 composeBackboneElement(t, "event", name, element, index); 9251 if (element.hasType()) { 9252 composeCodeableConcept(t, "CoverageEligibilityResponseEventComponent", "type", element.getType(), -1); 9253 } 9254 if (element.hasWhen()) { 9255 composeType(t, "CoverageEligibilityResponseEventComponent", "when", element.getWhen(), -1); 9256 } 9257 } 9258 9259 protected void composeCoverageEligibilityResponseInsuranceComponent(Complex parent, String parentType, String name, CoverageEligibilityResponse.InsuranceComponent element, int index) { 9260 if (element == null) 9261 return; 9262 Complex t; 9263 if (Utilities.noString(parentType)) 9264 t = parent; 9265 else { 9266 t = parent.predicate("fhir:"+name,index > -1); 9267 } 9268 composeBackboneElement(t, "insurance", name, element, index); 9269 if (element.hasCoverage()) { 9270 composeReference(t, "InsuranceComponent", "coverage", element.getCoverage(), -1); 9271 } 9272 if (element.hasInforceElement()) { 9273 composeBoolean(t, "InsuranceComponent", "inforce", element.getInforceElement(), -1); 9274 } 9275 if (element.hasBenefitPeriod()) { 9276 composePeriod(t, "InsuranceComponent", "benefitPeriod", element.getBenefitPeriod(), -1); 9277 } 9278 for (int i = 0; i < element.getItem().size(); i++) { 9279 composeCoverageEligibilityResponseItemsComponent(t, "InsuranceComponent", "item", element.getItem().get(i), i); 9280 } 9281 } 9282 9283 protected void composeCoverageEligibilityResponseItemsComponent(Complex parent, String parentType, String name, CoverageEligibilityResponse.ItemsComponent element, int index) { 9284 if (element == null) 9285 return; 9286 Complex t; 9287 if (Utilities.noString(parentType)) 9288 t = parent; 9289 else { 9290 t = parent.predicate("fhir:"+name,index > -1); 9291 } 9292 composeBackboneElement(t, "item", name, element, index); 9293 if (element.hasCategory()) { 9294 composeCodeableConcept(t, "ItemsComponent", "category", element.getCategory(), -1); 9295 } 9296 if (element.hasProductOrService()) { 9297 composeCodeableConcept(t, "ItemsComponent", "productOrService", element.getProductOrService(), -1); 9298 } 9299 for (int i = 0; i < element.getModifier().size(); i++) { 9300 composeCodeableConcept(t, "ItemsComponent", "modifier", element.getModifier().get(i), i); 9301 } 9302 if (element.hasProvider()) { 9303 composeReference(t, "ItemsComponent", "provider", element.getProvider(), -1); 9304 } 9305 if (element.hasExcludedElement()) { 9306 composeBoolean(t, "ItemsComponent", "excluded", element.getExcludedElement(), -1); 9307 } 9308 if (element.hasNameElement()) { 9309 composeString(t, "ItemsComponent", "name", element.getNameElement(), -1); 9310 } 9311 if (element.hasDescriptionElement()) { 9312 composeString(t, "ItemsComponent", "description", element.getDescriptionElement(), -1); 9313 } 9314 if (element.hasNetwork()) { 9315 composeCodeableConcept(t, "ItemsComponent", "network", element.getNetwork(), -1); 9316 } 9317 if (element.hasUnit()) { 9318 composeCodeableConcept(t, "ItemsComponent", "unit", element.getUnit(), -1); 9319 } 9320 if (element.hasTerm()) { 9321 composeCodeableConcept(t, "ItemsComponent", "term", element.getTerm(), -1); 9322 } 9323 for (int i = 0; i < element.getBenefit().size(); i++) { 9324 composeCoverageEligibilityResponseBenefitComponent(t, "ItemsComponent", "benefit", element.getBenefit().get(i), i); 9325 } 9326 if (element.hasAuthorizationRequiredElement()) { 9327 composeBoolean(t, "ItemsComponent", "authorizationRequired", element.getAuthorizationRequiredElement(), -1); 9328 } 9329 for (int i = 0; i < element.getAuthorizationSupporting().size(); i++) { 9330 composeCodeableConcept(t, "ItemsComponent", "authorizationSupporting", element.getAuthorizationSupporting().get(i), i); 9331 } 9332 if (element.hasAuthorizationUrlElement()) { 9333 composeUri(t, "ItemsComponent", "authorizationUrl", element.getAuthorizationUrlElement(), -1); 9334 } 9335 } 9336 9337 protected void composeCoverageEligibilityResponseBenefitComponent(Complex parent, String parentType, String name, CoverageEligibilityResponse.BenefitComponent element, int index) { 9338 if (element == null) 9339 return; 9340 Complex t; 9341 if (Utilities.noString(parentType)) 9342 t = parent; 9343 else { 9344 t = parent.predicate("fhir:"+name,index > -1); 9345 } 9346 composeBackboneElement(t, "benefit", name, element, index); 9347 if (element.hasType()) { 9348 composeCodeableConcept(t, "BenefitComponent", "type", element.getType(), -1); 9349 } 9350 if (element.hasAllowed()) { 9351 composeType(t, "BenefitComponent", "allowed", element.getAllowed(), -1); 9352 } 9353 if (element.hasUsed()) { 9354 composeType(t, "BenefitComponent", "used", element.getUsed(), -1); 9355 } 9356 } 9357 9358 protected void composeCoverageEligibilityResponseErrorsComponent(Complex parent, String parentType, String name, CoverageEligibilityResponse.ErrorsComponent element, int index) { 9359 if (element == null) 9360 return; 9361 Complex t; 9362 if (Utilities.noString(parentType)) 9363 t = parent; 9364 else { 9365 t = parent.predicate("fhir:"+name,index > -1); 9366 } 9367 composeBackboneElement(t, "error", name, element, index); 9368 if (element.hasCode()) { 9369 composeCodeableConcept(t, "ErrorsComponent", "code", element.getCode(), -1); 9370 } 9371 for (int i = 0; i < element.getExpression().size(); i++) { 9372 composeString(t, "ErrorsComponent", "expression", element.getExpression().get(i), i); 9373 } 9374 } 9375 9376 protected void composeDetectedIssue(Complex parent, String parentType, String name, DetectedIssue element, int index) { 9377 if (element == null) 9378 return; 9379 Complex t; 9380 if (Utilities.noString(parentType)) 9381 t = parent; 9382 else { 9383 t = parent.predicate("fhir:"+name,index > -1); 9384 } 9385 composeDomainResource(t, "DetectedIssue", name, element, index); 9386 for (int i = 0; i < element.getIdentifier().size(); i++) { 9387 composeIdentifier(t, "DetectedIssue", "identifier", element.getIdentifier().get(i), i); 9388 } 9389 if (element.hasStatusElement()) { 9390 composeEnum(t, "DetectedIssue", "status", element.getStatusElement(), -1); 9391 } 9392 for (int i = 0; i < element.getCategory().size(); i++) { 9393 composeCodeableConcept(t, "DetectedIssue", "category", element.getCategory().get(i), i); 9394 } 9395 if (element.hasCode()) { 9396 composeCodeableConcept(t, "DetectedIssue", "code", element.getCode(), -1); 9397 } 9398 if (element.hasSeverityElement()) { 9399 composeEnum(t, "DetectedIssue", "severity", element.getSeverityElement(), -1); 9400 } 9401 if (element.hasSubject()) { 9402 composeReference(t, "DetectedIssue", "subject", element.getSubject(), -1); 9403 } 9404 if (element.hasEncounter()) { 9405 composeReference(t, "DetectedIssue", "encounter", element.getEncounter(), -1); 9406 } 9407 if (element.hasIdentified()) { 9408 composeType(t, "DetectedIssue", "identified", element.getIdentified(), -1); 9409 } 9410 if (element.hasAuthor()) { 9411 composeReference(t, "DetectedIssue", "author", element.getAuthor(), -1); 9412 } 9413 for (int i = 0; i < element.getImplicated().size(); i++) { 9414 composeReference(t, "DetectedIssue", "implicated", element.getImplicated().get(i), i); 9415 } 9416 for (int i = 0; i < element.getEvidence().size(); i++) { 9417 composeDetectedIssueEvidenceComponent(t, "DetectedIssue", "evidence", element.getEvidence().get(i), i); 9418 } 9419 if (element.hasDetailElement()) { 9420 composeMarkdown(t, "DetectedIssue", "detail", element.getDetailElement(), -1); 9421 } 9422 if (element.hasReferenceElement()) { 9423 composeUri(t, "DetectedIssue", "reference", element.getReferenceElement(), -1); 9424 } 9425 for (int i = 0; i < element.getMitigation().size(); i++) { 9426 composeDetectedIssueMitigationComponent(t, "DetectedIssue", "mitigation", element.getMitigation().get(i), i); 9427 } 9428 } 9429 9430 protected void composeDetectedIssueEvidenceComponent(Complex parent, String parentType, String name, DetectedIssue.DetectedIssueEvidenceComponent element, int index) { 9431 if (element == null) 9432 return; 9433 Complex t; 9434 if (Utilities.noString(parentType)) 9435 t = parent; 9436 else { 9437 t = parent.predicate("fhir:"+name,index > -1); 9438 } 9439 composeBackboneElement(t, "evidence", name, element, index); 9440 for (int i = 0; i < element.getCode().size(); i++) { 9441 composeCodeableConcept(t, "DetectedIssueEvidenceComponent", "code", element.getCode().get(i), i); 9442 } 9443 for (int i = 0; i < element.getDetail().size(); i++) { 9444 composeReference(t, "DetectedIssueEvidenceComponent", "detail", element.getDetail().get(i), i); 9445 } 9446 } 9447 9448 protected void composeDetectedIssueMitigationComponent(Complex parent, String parentType, String name, DetectedIssue.DetectedIssueMitigationComponent element, int index) { 9449 if (element == null) 9450 return; 9451 Complex t; 9452 if (Utilities.noString(parentType)) 9453 t = parent; 9454 else { 9455 t = parent.predicate("fhir:"+name,index > -1); 9456 } 9457 composeBackboneElement(t, "mitigation", name, element, index); 9458 if (element.hasAction()) { 9459 composeCodeableConcept(t, "DetectedIssueMitigationComponent", "action", element.getAction(), -1); 9460 } 9461 if (element.hasDateElement()) { 9462 composeDateTime(t, "DetectedIssueMitigationComponent", "date", element.getDateElement(), -1); 9463 } 9464 if (element.hasAuthor()) { 9465 composeReference(t, "DetectedIssueMitigationComponent", "author", element.getAuthor(), -1); 9466 } 9467 for (int i = 0; i < element.getNote().size(); i++) { 9468 composeAnnotation(t, "DetectedIssueMitigationComponent", "note", element.getNote().get(i), i); 9469 } 9470 } 9471 9472 protected void composeDevice(Complex parent, String parentType, String name, Device element, int index) { 9473 if (element == null) 9474 return; 9475 Complex t; 9476 if (Utilities.noString(parentType)) 9477 t = parent; 9478 else { 9479 t = parent.predicate("fhir:"+name,index > -1); 9480 } 9481 composeDomainResource(t, "Device", name, element, index); 9482 for (int i = 0; i < element.getIdentifier().size(); i++) { 9483 composeIdentifier(t, "Device", "identifier", element.getIdentifier().get(i), i); 9484 } 9485 if (element.hasDisplayNameElement()) { 9486 composeString(t, "Device", "displayName", element.getDisplayNameElement(), -1); 9487 } 9488 if (element.hasDefinition()) { 9489 composeCodeableReference(t, "Device", "definition", element.getDefinition(), -1); 9490 } 9491 for (int i = 0; i < element.getUdiCarrier().size(); i++) { 9492 composeDeviceUdiCarrierComponent(t, "Device", "udiCarrier", element.getUdiCarrier().get(i), i); 9493 } 9494 if (element.hasStatusElement()) { 9495 composeEnum(t, "Device", "status", element.getStatusElement(), -1); 9496 } 9497 if (element.hasAvailabilityStatus()) { 9498 composeCodeableConcept(t, "Device", "availabilityStatus", element.getAvailabilityStatus(), -1); 9499 } 9500 if (element.hasBiologicalSourceEvent()) { 9501 composeIdentifier(t, "Device", "biologicalSourceEvent", element.getBiologicalSourceEvent(), -1); 9502 } 9503 if (element.hasManufacturerElement()) { 9504 composeString(t, "Device", "manufacturer", element.getManufacturerElement(), -1); 9505 } 9506 if (element.hasManufactureDateElement()) { 9507 composeDateTime(t, "Device", "manufactureDate", element.getManufactureDateElement(), -1); 9508 } 9509 if (element.hasExpirationDateElement()) { 9510 composeDateTime(t, "Device", "expirationDate", element.getExpirationDateElement(), -1); 9511 } 9512 if (element.hasLotNumberElement()) { 9513 composeString(t, "Device", "lotNumber", element.getLotNumberElement(), -1); 9514 } 9515 if (element.hasSerialNumberElement()) { 9516 composeString(t, "Device", "serialNumber", element.getSerialNumberElement(), -1); 9517 } 9518 for (int i = 0; i < element.getName().size(); i++) { 9519 composeDeviceNameComponent(t, "Device", "name", element.getName().get(i), i); 9520 } 9521 if (element.hasModelNumberElement()) { 9522 composeString(t, "Device", "modelNumber", element.getModelNumberElement(), -1); 9523 } 9524 if (element.hasPartNumberElement()) { 9525 composeString(t, "Device", "partNumber", element.getPartNumberElement(), -1); 9526 } 9527 for (int i = 0; i < element.getCategory().size(); i++) { 9528 composeCodeableConcept(t, "Device", "category", element.getCategory().get(i), i); 9529 } 9530 for (int i = 0; i < element.getType().size(); i++) { 9531 composeCodeableConcept(t, "Device", "type", element.getType().get(i), i); 9532 } 9533 for (int i = 0; i < element.getVersion().size(); i++) { 9534 composeDeviceVersionComponent(t, "Device", "version", element.getVersion().get(i), i); 9535 } 9536 for (int i = 0; i < element.getConformsTo().size(); i++) { 9537 composeDeviceConformsToComponent(t, "Device", "conformsTo", element.getConformsTo().get(i), i); 9538 } 9539 for (int i = 0; i < element.getProperty().size(); i++) { 9540 composeDevicePropertyComponent(t, "Device", "property", element.getProperty().get(i), i); 9541 } 9542 if (element.hasMode()) { 9543 composeCodeableConcept(t, "Device", "mode", element.getMode(), -1); 9544 } 9545 if (element.hasCycle()) { 9546 composeCount(t, "Device", "cycle", element.getCycle(), -1); 9547 } 9548 if (element.hasDuration()) { 9549 composeDuration(t, "Device", "duration", element.getDuration(), -1); 9550 } 9551 if (element.hasOwner()) { 9552 composeReference(t, "Device", "owner", element.getOwner(), -1); 9553 } 9554 for (int i = 0; i < element.getContact().size(); i++) { 9555 composeContactPoint(t, "Device", "contact", element.getContact().get(i), i); 9556 } 9557 if (element.hasLocation()) { 9558 composeReference(t, "Device", "location", element.getLocation(), -1); 9559 } 9560 if (element.hasUrlElement()) { 9561 composeUri(t, "Device", "url", element.getUrlElement(), -1); 9562 } 9563 for (int i = 0; i < element.getEndpoint().size(); i++) { 9564 composeReference(t, "Device", "endpoint", element.getEndpoint().get(i), i); 9565 } 9566 for (int i = 0; i < element.getGateway().size(); i++) { 9567 composeCodeableReference(t, "Device", "gateway", element.getGateway().get(i), i); 9568 } 9569 for (int i = 0; i < element.getNote().size(); i++) { 9570 composeAnnotation(t, "Device", "note", element.getNote().get(i), i); 9571 } 9572 for (int i = 0; i < element.getSafety().size(); i++) { 9573 composeCodeableConcept(t, "Device", "safety", element.getSafety().get(i), i); 9574 } 9575 if (element.hasParent()) { 9576 composeReference(t, "Device", "parent", element.getParent(), -1); 9577 } 9578 } 9579 9580 protected void composeDeviceUdiCarrierComponent(Complex parent, String parentType, String name, Device.DeviceUdiCarrierComponent element, int index) { 9581 if (element == null) 9582 return; 9583 Complex t; 9584 if (Utilities.noString(parentType)) 9585 t = parent; 9586 else { 9587 t = parent.predicate("fhir:"+name,index > -1); 9588 } 9589 composeBackboneElement(t, "udiCarrier", name, element, index); 9590 if (element.hasDeviceIdentifierElement()) { 9591 composeString(t, "DeviceUdiCarrierComponent", "deviceIdentifier", element.getDeviceIdentifierElement(), -1); 9592 } 9593 if (element.hasIssuerElement()) { 9594 composeUri(t, "DeviceUdiCarrierComponent", "issuer", element.getIssuerElement(), -1); 9595 } 9596 if (element.hasJurisdictionElement()) { 9597 composeUri(t, "DeviceUdiCarrierComponent", "jurisdiction", element.getJurisdictionElement(), -1); 9598 } 9599 if (element.hasCarrierAIDCElement()) { 9600 composeBase64Binary(t, "DeviceUdiCarrierComponent", "carrierAIDC", element.getCarrierAIDCElement(), -1); 9601 } 9602 if (element.hasCarrierHRFElement()) { 9603 composeString(t, "DeviceUdiCarrierComponent", "carrierHRF", element.getCarrierHRFElement(), -1); 9604 } 9605 if (element.hasEntryTypeElement()) { 9606 composeEnum(t, "DeviceUdiCarrierComponent", "entryType", element.getEntryTypeElement(), -1); 9607 } 9608 } 9609 9610 protected void composeDeviceNameComponent(Complex parent, String parentType, String name, Device.DeviceNameComponent element, int index) { 9611 if (element == null) 9612 return; 9613 Complex t; 9614 if (Utilities.noString(parentType)) 9615 t = parent; 9616 else { 9617 t = parent.predicate("fhir:"+name,index > -1); 9618 } 9619 composeBackboneElement(t, "name", name, element, index); 9620 if (element.hasValueElement()) { 9621 composeString(t, "DeviceNameComponent", "value", element.getValueElement(), -1); 9622 } 9623 if (element.hasTypeElement()) { 9624 composeEnum(t, "DeviceNameComponent", "type", element.getTypeElement(), -1); 9625 } 9626 if (element.hasDisplayElement()) { 9627 composeBoolean(t, "DeviceNameComponent", "display", element.getDisplayElement(), -1); 9628 } 9629 } 9630 9631 protected void composeDeviceVersionComponent(Complex parent, String parentType, String name, Device.DeviceVersionComponent element, int index) { 9632 if (element == null) 9633 return; 9634 Complex t; 9635 if (Utilities.noString(parentType)) 9636 t = parent; 9637 else { 9638 t = parent.predicate("fhir:"+name,index > -1); 9639 } 9640 composeBackboneElement(t, "version", name, element, index); 9641 if (element.hasType()) { 9642 composeCodeableConcept(t, "DeviceVersionComponent", "type", element.getType(), -1); 9643 } 9644 if (element.hasComponent()) { 9645 composeIdentifier(t, "DeviceVersionComponent", "component", element.getComponent(), -1); 9646 } 9647 if (element.hasInstallDateElement()) { 9648 composeDateTime(t, "DeviceVersionComponent", "installDate", element.getInstallDateElement(), -1); 9649 } 9650 if (element.hasValueElement()) { 9651 composeString(t, "DeviceVersionComponent", "value", element.getValueElement(), -1); 9652 } 9653 } 9654 9655 protected void composeDeviceConformsToComponent(Complex parent, String parentType, String name, Device.DeviceConformsToComponent element, int index) { 9656 if (element == null) 9657 return; 9658 Complex t; 9659 if (Utilities.noString(parentType)) 9660 t = parent; 9661 else { 9662 t = parent.predicate("fhir:"+name,index > -1); 9663 } 9664 composeBackboneElement(t, "conformsTo", name, element, index); 9665 if (element.hasCategory()) { 9666 composeCodeableConcept(t, "DeviceConformsToComponent", "category", element.getCategory(), -1); 9667 } 9668 if (element.hasSpecification()) { 9669 composeCodeableConcept(t, "DeviceConformsToComponent", "specification", element.getSpecification(), -1); 9670 } 9671 if (element.hasVersionElement()) { 9672 composeString(t, "DeviceConformsToComponent", "version", element.getVersionElement(), -1); 9673 } 9674 } 9675 9676 protected void composeDevicePropertyComponent(Complex parent, String parentType, String name, Device.DevicePropertyComponent element, int index) { 9677 if (element == null) 9678 return; 9679 Complex t; 9680 if (Utilities.noString(parentType)) 9681 t = parent; 9682 else { 9683 t = parent.predicate("fhir:"+name,index > -1); 9684 } 9685 composeBackboneElement(t, "property", name, element, index); 9686 if (element.hasType()) { 9687 composeCodeableConcept(t, "DevicePropertyComponent", "type", element.getType(), -1); 9688 } 9689 if (element.hasValue()) { 9690 composeType(t, "DevicePropertyComponent", "value", element.getValue(), -1); 9691 } 9692 } 9693 9694 protected void composeDeviceAssociation(Complex parent, String parentType, String name, DeviceAssociation element, int index) { 9695 if (element == null) 9696 return; 9697 Complex t; 9698 if (Utilities.noString(parentType)) 9699 t = parent; 9700 else { 9701 t = parent.predicate("fhir:"+name,index > -1); 9702 } 9703 composeDomainResource(t, "DeviceAssociation", name, element, index); 9704 for (int i = 0; i < element.getIdentifier().size(); i++) { 9705 composeIdentifier(t, "DeviceAssociation", "identifier", element.getIdentifier().get(i), i); 9706 } 9707 if (element.hasDevice()) { 9708 composeReference(t, "DeviceAssociation", "device", element.getDevice(), -1); 9709 } 9710 for (int i = 0; i < element.getCategory().size(); i++) { 9711 composeCodeableConcept(t, "DeviceAssociation", "category", element.getCategory().get(i), i); 9712 } 9713 if (element.hasStatus()) { 9714 composeCodeableConcept(t, "DeviceAssociation", "status", element.getStatus(), -1); 9715 } 9716 for (int i = 0; i < element.getStatusReason().size(); i++) { 9717 composeCodeableConcept(t, "DeviceAssociation", "statusReason", element.getStatusReason().get(i), i); 9718 } 9719 if (element.hasSubject()) { 9720 composeReference(t, "DeviceAssociation", "subject", element.getSubject(), -1); 9721 } 9722 if (element.hasBodyStructure()) { 9723 composeReference(t, "DeviceAssociation", "bodyStructure", element.getBodyStructure(), -1); 9724 } 9725 if (element.hasPeriod()) { 9726 composePeriod(t, "DeviceAssociation", "period", element.getPeriod(), -1); 9727 } 9728 for (int i = 0; i < element.getOperation().size(); i++) { 9729 composeDeviceAssociationOperationComponent(t, "DeviceAssociation", "operation", element.getOperation().get(i), i); 9730 } 9731 } 9732 9733 protected void composeDeviceAssociationOperationComponent(Complex parent, String parentType, String name, DeviceAssociation.DeviceAssociationOperationComponent element, int index) { 9734 if (element == null) 9735 return; 9736 Complex t; 9737 if (Utilities.noString(parentType)) 9738 t = parent; 9739 else { 9740 t = parent.predicate("fhir:"+name,index > -1); 9741 } 9742 composeBackboneElement(t, "operation", name, element, index); 9743 if (element.hasStatus()) { 9744 composeCodeableConcept(t, "DeviceAssociationOperationComponent", "status", element.getStatus(), -1); 9745 } 9746 for (int i = 0; i < element.getOperator().size(); i++) { 9747 composeReference(t, "DeviceAssociationOperationComponent", "operator", element.getOperator().get(i), i); 9748 } 9749 if (element.hasPeriod()) { 9750 composePeriod(t, "DeviceAssociationOperationComponent", "period", element.getPeriod(), -1); 9751 } 9752 } 9753 9754 protected void composeDeviceDefinition(Complex parent, String parentType, String name, DeviceDefinition element, int index) { 9755 if (element == null) 9756 return; 9757 Complex t; 9758 if (Utilities.noString(parentType)) 9759 t = parent; 9760 else { 9761 t = parent.predicate("fhir:"+name,index > -1); 9762 } 9763 composeDomainResource(t, "DeviceDefinition", name, element, index); 9764 if (element.hasDescriptionElement()) { 9765 composeMarkdown(t, "DeviceDefinition", "description", element.getDescriptionElement(), -1); 9766 } 9767 for (int i = 0; i < element.getIdentifier().size(); i++) { 9768 composeIdentifier(t, "DeviceDefinition", "identifier", element.getIdentifier().get(i), i); 9769 } 9770 for (int i = 0; i < element.getUdiDeviceIdentifier().size(); i++) { 9771 composeDeviceDefinitionUdiDeviceIdentifierComponent(t, "DeviceDefinition", "udiDeviceIdentifier", element.getUdiDeviceIdentifier().get(i), i); 9772 } 9773 for (int i = 0; i < element.getRegulatoryIdentifier().size(); i++) { 9774 composeDeviceDefinitionRegulatoryIdentifierComponent(t, "DeviceDefinition", "regulatoryIdentifier", element.getRegulatoryIdentifier().get(i), i); 9775 } 9776 if (element.hasPartNumberElement()) { 9777 composeString(t, "DeviceDefinition", "partNumber", element.getPartNumberElement(), -1); 9778 } 9779 if (element.hasManufacturer()) { 9780 composeReference(t, "DeviceDefinition", "manufacturer", element.getManufacturer(), -1); 9781 } 9782 for (int i = 0; i < element.getDeviceName().size(); i++) { 9783 composeDeviceDefinitionDeviceNameComponent(t, "DeviceDefinition", "deviceName", element.getDeviceName().get(i), i); 9784 } 9785 if (element.hasModelNumberElement()) { 9786 composeString(t, "DeviceDefinition", "modelNumber", element.getModelNumberElement(), -1); 9787 } 9788 for (int i = 0; i < element.getClassification().size(); i++) { 9789 composeDeviceDefinitionClassificationComponent(t, "DeviceDefinition", "classification", element.getClassification().get(i), i); 9790 } 9791 for (int i = 0; i < element.getConformsTo().size(); i++) { 9792 composeDeviceDefinitionConformsToComponent(t, "DeviceDefinition", "conformsTo", element.getConformsTo().get(i), i); 9793 } 9794 for (int i = 0; i < element.getHasPart().size(); i++) { 9795 composeDeviceDefinitionHasPartComponent(t, "DeviceDefinition", "hasPart", element.getHasPart().get(i), i); 9796 } 9797 for (int i = 0; i < element.getPackaging().size(); i++) { 9798 composeDeviceDefinitionPackagingComponent(t, "DeviceDefinition", "packaging", element.getPackaging().get(i), i); 9799 } 9800 for (int i = 0; i < element.getVersion().size(); i++) { 9801 composeDeviceDefinitionVersionComponent(t, "DeviceDefinition", "version", element.getVersion().get(i), i); 9802 } 9803 for (int i = 0; i < element.getSafety().size(); i++) { 9804 composeCodeableConcept(t, "DeviceDefinition", "safety", element.getSafety().get(i), i); 9805 } 9806 for (int i = 0; i < element.getShelfLifeStorage().size(); i++) { 9807 composeProductShelfLife(t, "DeviceDefinition", "shelfLifeStorage", element.getShelfLifeStorage().get(i), i); 9808 } 9809 for (int i = 0; i < element.getLanguageCode().size(); i++) { 9810 composeCodeableConcept(t, "DeviceDefinition", "languageCode", element.getLanguageCode().get(i), i); 9811 } 9812 for (int i = 0; i < element.getProperty().size(); i++) { 9813 composeDeviceDefinitionPropertyComponent(t, "DeviceDefinition", "property", element.getProperty().get(i), i); 9814 } 9815 if (element.hasOwner()) { 9816 composeReference(t, "DeviceDefinition", "owner", element.getOwner(), -1); 9817 } 9818 for (int i = 0; i < element.getContact().size(); i++) { 9819 composeContactPoint(t, "DeviceDefinition", "contact", element.getContact().get(i), i); 9820 } 9821 for (int i = 0; i < element.getLink().size(); i++) { 9822 composeDeviceDefinitionLinkComponent(t, "DeviceDefinition", "link", element.getLink().get(i), i); 9823 } 9824 for (int i = 0; i < element.getNote().size(); i++) { 9825 composeAnnotation(t, "DeviceDefinition", "note", element.getNote().get(i), i); 9826 } 9827 for (int i = 0; i < element.getMaterial().size(); i++) { 9828 composeDeviceDefinitionMaterialComponent(t, "DeviceDefinition", "material", element.getMaterial().get(i), i); 9829 } 9830 for (int i = 0; i < element.getProductionIdentifierInUDI().size(); i++) { 9831 composeEnum(t, "DeviceDefinition", "productionIdentifierInUDI", element.getProductionIdentifierInUDI().get(i), i); 9832 } 9833 if (element.hasGuideline()) { 9834 composeDeviceDefinitionGuidelineComponent(t, "DeviceDefinition", "guideline", element.getGuideline(), -1); 9835 } 9836 if (element.hasCorrectiveAction()) { 9837 composeDeviceDefinitionCorrectiveActionComponent(t, "DeviceDefinition", "correctiveAction", element.getCorrectiveAction(), -1); 9838 } 9839 for (int i = 0; i < element.getChargeItem().size(); i++) { 9840 composeDeviceDefinitionChargeItemComponent(t, "DeviceDefinition", "chargeItem", element.getChargeItem().get(i), i); 9841 } 9842 } 9843 9844 protected void composeDeviceDefinitionUdiDeviceIdentifierComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent element, int index) { 9845 if (element == null) 9846 return; 9847 Complex t; 9848 if (Utilities.noString(parentType)) 9849 t = parent; 9850 else { 9851 t = parent.predicate("fhir:"+name,index > -1); 9852 } 9853 composeBackboneElement(t, "udiDeviceIdentifier", name, element, index); 9854 if (element.hasDeviceIdentifierElement()) { 9855 composeString(t, "DeviceDefinitionUdiDeviceIdentifierComponent", "deviceIdentifier", element.getDeviceIdentifierElement(), -1); 9856 } 9857 if (element.hasIssuerElement()) { 9858 composeUri(t, "DeviceDefinitionUdiDeviceIdentifierComponent", "issuer", element.getIssuerElement(), -1); 9859 } 9860 if (element.hasJurisdictionElement()) { 9861 composeUri(t, "DeviceDefinitionUdiDeviceIdentifierComponent", "jurisdiction", element.getJurisdictionElement(), -1); 9862 } 9863 for (int i = 0; i < element.getMarketDistribution().size(); i++) { 9864 composeDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponent(t, "DeviceDefinitionUdiDeviceIdentifierComponent", "marketDistribution", element.getMarketDistribution().get(i), i); 9865 } 9866 } 9867 9868 protected void composeDeviceDefinitionUdiDeviceIdentifierMarketDistributionComponent(Complex parent, String parentType, String name, DeviceDefinition.UdiDeviceIdentifierMarketDistributionComponent element, int index) { 9869 if (element == null) 9870 return; 9871 Complex t; 9872 if (Utilities.noString(parentType)) 9873 t = parent; 9874 else { 9875 t = parent.predicate("fhir:"+name,index > -1); 9876 } 9877 composeBackboneElement(t, "marketDistribution", name, element, index); 9878 if (element.hasMarketPeriod()) { 9879 composePeriod(t, "UdiDeviceIdentifierMarketDistributionComponent", "marketPeriod", element.getMarketPeriod(), -1); 9880 } 9881 if (element.hasSubJurisdictionElement()) { 9882 composeUri(t, "UdiDeviceIdentifierMarketDistributionComponent", "subJurisdiction", element.getSubJurisdictionElement(), -1); 9883 } 9884 } 9885 9886 protected void composeDeviceDefinitionRegulatoryIdentifierComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionRegulatoryIdentifierComponent element, int index) { 9887 if (element == null) 9888 return; 9889 Complex t; 9890 if (Utilities.noString(parentType)) 9891 t = parent; 9892 else { 9893 t = parent.predicate("fhir:"+name,index > -1); 9894 } 9895 composeBackboneElement(t, "regulatoryIdentifier", name, element, index); 9896 if (element.hasTypeElement()) { 9897 composeEnum(t, "DeviceDefinitionRegulatoryIdentifierComponent", "type", element.getTypeElement(), -1); 9898 } 9899 if (element.hasDeviceIdentifierElement()) { 9900 composeString(t, "DeviceDefinitionRegulatoryIdentifierComponent", "deviceIdentifier", element.getDeviceIdentifierElement(), -1); 9901 } 9902 if (element.hasIssuerElement()) { 9903 composeUri(t, "DeviceDefinitionRegulatoryIdentifierComponent", "issuer", element.getIssuerElement(), -1); 9904 } 9905 if (element.hasJurisdictionElement()) { 9906 composeUri(t, "DeviceDefinitionRegulatoryIdentifierComponent", "jurisdiction", element.getJurisdictionElement(), -1); 9907 } 9908 } 9909 9910 protected void composeDeviceDefinitionDeviceNameComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionDeviceNameComponent element, int index) { 9911 if (element == null) 9912 return; 9913 Complex t; 9914 if (Utilities.noString(parentType)) 9915 t = parent; 9916 else { 9917 t = parent.predicate("fhir:"+name,index > -1); 9918 } 9919 composeBackboneElement(t, "deviceName", name, element, index); 9920 if (element.hasNameElement()) { 9921 composeString(t, "DeviceDefinitionDeviceNameComponent", "name", element.getNameElement(), -1); 9922 } 9923 if (element.hasTypeElement()) { 9924 composeEnum(t, "DeviceDefinitionDeviceNameComponent", "type", element.getTypeElement(), -1); 9925 } 9926 } 9927 9928 protected void composeDeviceDefinitionClassificationComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionClassificationComponent element, int index) { 9929 if (element == null) 9930 return; 9931 Complex t; 9932 if (Utilities.noString(parentType)) 9933 t = parent; 9934 else { 9935 t = parent.predicate("fhir:"+name,index > -1); 9936 } 9937 composeBackboneElement(t, "classification", name, element, index); 9938 if (element.hasType()) { 9939 composeCodeableConcept(t, "DeviceDefinitionClassificationComponent", "type", element.getType(), -1); 9940 } 9941 for (int i = 0; i < element.getJustification().size(); i++) { 9942 composeRelatedArtifact(t, "DeviceDefinitionClassificationComponent", "justification", element.getJustification().get(i), i); 9943 } 9944 } 9945 9946 protected void composeDeviceDefinitionConformsToComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionConformsToComponent element, int index) { 9947 if (element == null) 9948 return; 9949 Complex t; 9950 if (Utilities.noString(parentType)) 9951 t = parent; 9952 else { 9953 t = parent.predicate("fhir:"+name,index > -1); 9954 } 9955 composeBackboneElement(t, "conformsTo", name, element, index); 9956 if (element.hasCategory()) { 9957 composeCodeableConcept(t, "DeviceDefinitionConformsToComponent", "category", element.getCategory(), -1); 9958 } 9959 if (element.hasSpecification()) { 9960 composeCodeableConcept(t, "DeviceDefinitionConformsToComponent", "specification", element.getSpecification(), -1); 9961 } 9962 for (int i = 0; i < element.getVersion().size(); i++) { 9963 composeString(t, "DeviceDefinitionConformsToComponent", "version", element.getVersion().get(i), i); 9964 } 9965 for (int i = 0; i < element.getSource().size(); i++) { 9966 composeRelatedArtifact(t, "DeviceDefinitionConformsToComponent", "source", element.getSource().get(i), i); 9967 } 9968 } 9969 9970 protected void composeDeviceDefinitionHasPartComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionHasPartComponent element, int index) { 9971 if (element == null) 9972 return; 9973 Complex t; 9974 if (Utilities.noString(parentType)) 9975 t = parent; 9976 else { 9977 t = parent.predicate("fhir:"+name,index > -1); 9978 } 9979 composeBackboneElement(t, "hasPart", name, element, index); 9980 if (element.hasReference()) { 9981 composeReference(t, "DeviceDefinitionHasPartComponent", "reference", element.getReference(), -1); 9982 } 9983 if (element.hasCountElement()) { 9984 composeInteger(t, "DeviceDefinitionHasPartComponent", "count", element.getCountElement(), -1); 9985 } 9986 } 9987 9988 protected void composeDeviceDefinitionPackagingComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionPackagingComponent element, int index) { 9989 if (element == null) 9990 return; 9991 Complex t; 9992 if (Utilities.noString(parentType)) 9993 t = parent; 9994 else { 9995 t = parent.predicate("fhir:"+name,index > -1); 9996 } 9997 composeBackboneElement(t, "packaging", name, element, index); 9998 if (element.hasIdentifier()) { 9999 composeIdentifier(t, "DeviceDefinitionPackagingComponent", "identifier", element.getIdentifier(), -1); 10000 } 10001 if (element.hasType()) { 10002 composeCodeableConcept(t, "DeviceDefinitionPackagingComponent", "type", element.getType(), -1); 10003 } 10004 if (element.hasCountElement()) { 10005 composeInteger(t, "DeviceDefinitionPackagingComponent", "count", element.getCountElement(), -1); 10006 } 10007 for (int i = 0; i < element.getDistributor().size(); i++) { 10008 composeDeviceDefinitionPackagingDistributorComponent(t, "DeviceDefinitionPackagingComponent", "distributor", element.getDistributor().get(i), i); 10009 } 10010 for (int i = 0; i < element.getUdiDeviceIdentifier().size(); i++) { 10011 composeDeviceDefinitionUdiDeviceIdentifierComponent(t, "DeviceDefinitionPackagingComponent", "udiDeviceIdentifier", element.getUdiDeviceIdentifier().get(i), i); 10012 } 10013 for (int i = 0; i < element.getPackaging().size(); i++) { 10014 composeDeviceDefinitionPackagingComponent(t, "DeviceDefinitionPackagingComponent", "packaging", element.getPackaging().get(i), i); 10015 } 10016 } 10017 10018 protected void composeDeviceDefinitionPackagingDistributorComponent(Complex parent, String parentType, String name, DeviceDefinition.PackagingDistributorComponent element, int index) { 10019 if (element == null) 10020 return; 10021 Complex t; 10022 if (Utilities.noString(parentType)) 10023 t = parent; 10024 else { 10025 t = parent.predicate("fhir:"+name,index > -1); 10026 } 10027 composeBackboneElement(t, "distributor", name, element, index); 10028 if (element.hasNameElement()) { 10029 composeString(t, "PackagingDistributorComponent", "name", element.getNameElement(), -1); 10030 } 10031 for (int i = 0; i < element.getOrganizationReference().size(); i++) { 10032 composeReference(t, "PackagingDistributorComponent", "organizationReference", element.getOrganizationReference().get(i), i); 10033 } 10034 } 10035 10036 protected void composeDeviceDefinitionVersionComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionVersionComponent element, int index) { 10037 if (element == null) 10038 return; 10039 Complex t; 10040 if (Utilities.noString(parentType)) 10041 t = parent; 10042 else { 10043 t = parent.predicate("fhir:"+name,index > -1); 10044 } 10045 composeBackboneElement(t, "version", name, element, index); 10046 if (element.hasType()) { 10047 composeCodeableConcept(t, "DeviceDefinitionVersionComponent", "type", element.getType(), -1); 10048 } 10049 if (element.hasComponent()) { 10050 composeIdentifier(t, "DeviceDefinitionVersionComponent", "component", element.getComponent(), -1); 10051 } 10052 if (element.hasValueElement()) { 10053 composeString(t, "DeviceDefinitionVersionComponent", "value", element.getValueElement(), -1); 10054 } 10055 } 10056 10057 protected void composeDeviceDefinitionPropertyComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionPropertyComponent element, int index) { 10058 if (element == null) 10059 return; 10060 Complex t; 10061 if (Utilities.noString(parentType)) 10062 t = parent; 10063 else { 10064 t = parent.predicate("fhir:"+name,index > -1); 10065 } 10066 composeBackboneElement(t, "property", name, element, index); 10067 if (element.hasType()) { 10068 composeCodeableConcept(t, "DeviceDefinitionPropertyComponent", "type", element.getType(), -1); 10069 } 10070 if (element.hasValue()) { 10071 composeType(t, "DeviceDefinitionPropertyComponent", "value", element.getValue(), -1); 10072 } 10073 } 10074 10075 protected void composeDeviceDefinitionLinkComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionLinkComponent element, int index) { 10076 if (element == null) 10077 return; 10078 Complex t; 10079 if (Utilities.noString(parentType)) 10080 t = parent; 10081 else { 10082 t = parent.predicate("fhir:"+name,index > -1); 10083 } 10084 composeBackboneElement(t, "link", name, element, index); 10085 if (element.hasRelation()) { 10086 composeCoding(t, "DeviceDefinitionLinkComponent", "relation", element.getRelation(), -1); 10087 } 10088 if (element.hasRelatedDevice()) { 10089 composeCodeableReference(t, "DeviceDefinitionLinkComponent", "relatedDevice", element.getRelatedDevice(), -1); 10090 } 10091 } 10092 10093 protected void composeDeviceDefinitionMaterialComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionMaterialComponent element, int index) { 10094 if (element == null) 10095 return; 10096 Complex t; 10097 if (Utilities.noString(parentType)) 10098 t = parent; 10099 else { 10100 t = parent.predicate("fhir:"+name,index > -1); 10101 } 10102 composeBackboneElement(t, "material", name, element, index); 10103 if (element.hasSubstance()) { 10104 composeCodeableConcept(t, "DeviceDefinitionMaterialComponent", "substance", element.getSubstance(), -1); 10105 } 10106 if (element.hasAlternateElement()) { 10107 composeBoolean(t, "DeviceDefinitionMaterialComponent", "alternate", element.getAlternateElement(), -1); 10108 } 10109 if (element.hasAllergenicIndicatorElement()) { 10110 composeBoolean(t, "DeviceDefinitionMaterialComponent", "allergenicIndicator", element.getAllergenicIndicatorElement(), -1); 10111 } 10112 } 10113 10114 protected void composeDeviceDefinitionGuidelineComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionGuidelineComponent element, int index) { 10115 if (element == null) 10116 return; 10117 Complex t; 10118 if (Utilities.noString(parentType)) 10119 t = parent; 10120 else { 10121 t = parent.predicate("fhir:"+name,index > -1); 10122 } 10123 composeBackboneElement(t, "guideline", name, element, index); 10124 for (int i = 0; i < element.getUseContext().size(); i++) { 10125 composeUsageContext(t, "DeviceDefinitionGuidelineComponent", "useContext", element.getUseContext().get(i), i); 10126 } 10127 if (element.hasUsageInstructionElement()) { 10128 composeMarkdown(t, "DeviceDefinitionGuidelineComponent", "usageInstruction", element.getUsageInstructionElement(), -1); 10129 } 10130 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 10131 composeRelatedArtifact(t, "DeviceDefinitionGuidelineComponent", "relatedArtifact", element.getRelatedArtifact().get(i), i); 10132 } 10133 for (int i = 0; i < element.getIndication().size(); i++) { 10134 composeCodeableConcept(t, "DeviceDefinitionGuidelineComponent", "indication", element.getIndication().get(i), i); 10135 } 10136 for (int i = 0; i < element.getContraindication().size(); i++) { 10137 composeCodeableConcept(t, "DeviceDefinitionGuidelineComponent", "contraindication", element.getContraindication().get(i), i); 10138 } 10139 for (int i = 0; i < element.getWarning().size(); i++) { 10140 composeCodeableConcept(t, "DeviceDefinitionGuidelineComponent", "warning", element.getWarning().get(i), i); 10141 } 10142 if (element.hasIntendedUseElement()) { 10143 composeString(t, "DeviceDefinitionGuidelineComponent", "intendedUse", element.getIntendedUseElement(), -1); 10144 } 10145 } 10146 10147 protected void composeDeviceDefinitionCorrectiveActionComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionCorrectiveActionComponent element, int index) { 10148 if (element == null) 10149 return; 10150 Complex t; 10151 if (Utilities.noString(parentType)) 10152 t = parent; 10153 else { 10154 t = parent.predicate("fhir:"+name,index > -1); 10155 } 10156 composeBackboneElement(t, "correctiveAction", name, element, index); 10157 if (element.hasRecallElement()) { 10158 composeBoolean(t, "DeviceDefinitionCorrectiveActionComponent", "recall", element.getRecallElement(), -1); 10159 } 10160 if (element.hasScopeElement()) { 10161 composeEnum(t, "DeviceDefinitionCorrectiveActionComponent", "scope", element.getScopeElement(), -1); 10162 } 10163 if (element.hasPeriod()) { 10164 composePeriod(t, "DeviceDefinitionCorrectiveActionComponent", "period", element.getPeriod(), -1); 10165 } 10166 } 10167 10168 protected void composeDeviceDefinitionChargeItemComponent(Complex parent, String parentType, String name, DeviceDefinition.DeviceDefinitionChargeItemComponent element, int index) { 10169 if (element == null) 10170 return; 10171 Complex t; 10172 if (Utilities.noString(parentType)) 10173 t = parent; 10174 else { 10175 t = parent.predicate("fhir:"+name,index > -1); 10176 } 10177 composeBackboneElement(t, "chargeItem", name, element, index); 10178 if (element.hasChargeItemCode()) { 10179 composeCodeableReference(t, "DeviceDefinitionChargeItemComponent", "chargeItemCode", element.getChargeItemCode(), -1); 10180 } 10181 if (element.hasCount()) { 10182 composeQuantity(t, "DeviceDefinitionChargeItemComponent", "count", element.getCount(), -1); 10183 } 10184 if (element.hasEffectivePeriod()) { 10185 composePeriod(t, "DeviceDefinitionChargeItemComponent", "effectivePeriod", element.getEffectivePeriod(), -1); 10186 } 10187 for (int i = 0; i < element.getUseContext().size(); i++) { 10188 composeUsageContext(t, "DeviceDefinitionChargeItemComponent", "useContext", element.getUseContext().get(i), i); 10189 } 10190 } 10191 10192 protected void composeDeviceDispense(Complex parent, String parentType, String name, DeviceDispense element, int index) { 10193 if (element == null) 10194 return; 10195 Complex t; 10196 if (Utilities.noString(parentType)) 10197 t = parent; 10198 else { 10199 t = parent.predicate("fhir:"+name,index > -1); 10200 } 10201 composeDomainResource(t, "DeviceDispense", name, element, index); 10202 for (int i = 0; i < element.getIdentifier().size(); i++) { 10203 composeIdentifier(t, "DeviceDispense", "identifier", element.getIdentifier().get(i), i); 10204 } 10205 for (int i = 0; i < element.getBasedOn().size(); i++) { 10206 composeReference(t, "DeviceDispense", "basedOn", element.getBasedOn().get(i), i); 10207 } 10208 for (int i = 0; i < element.getPartOf().size(); i++) { 10209 composeReference(t, "DeviceDispense", "partOf", element.getPartOf().get(i), i); 10210 } 10211 if (element.hasStatusElement()) { 10212 composeEnum(t, "DeviceDispense", "status", element.getStatusElement(), -1); 10213 } 10214 if (element.hasStatusReason()) { 10215 composeCodeableReference(t, "DeviceDispense", "statusReason", element.getStatusReason(), -1); 10216 } 10217 for (int i = 0; i < element.getCategory().size(); i++) { 10218 composeCodeableConcept(t, "DeviceDispense", "category", element.getCategory().get(i), i); 10219 } 10220 if (element.hasDevice()) { 10221 composeCodeableReference(t, "DeviceDispense", "device", element.getDevice(), -1); 10222 } 10223 if (element.hasSubject()) { 10224 composeReference(t, "DeviceDispense", "subject", element.getSubject(), -1); 10225 } 10226 if (element.hasReceiver()) { 10227 composeReference(t, "DeviceDispense", "receiver", element.getReceiver(), -1); 10228 } 10229 if (element.hasEncounter()) { 10230 composeReference(t, "DeviceDispense", "encounter", element.getEncounter(), -1); 10231 } 10232 for (int i = 0; i < element.getSupportingInformation().size(); i++) { 10233 composeReference(t, "DeviceDispense", "supportingInformation", element.getSupportingInformation().get(i), i); 10234 } 10235 for (int i = 0; i < element.getPerformer().size(); i++) { 10236 composeDeviceDispensePerformerComponent(t, "DeviceDispense", "performer", element.getPerformer().get(i), i); 10237 } 10238 if (element.hasLocation()) { 10239 composeReference(t, "DeviceDispense", "location", element.getLocation(), -1); 10240 } 10241 if (element.hasType()) { 10242 composeCodeableConcept(t, "DeviceDispense", "type", element.getType(), -1); 10243 } 10244 if (element.hasQuantity()) { 10245 composeQuantity(t, "DeviceDispense", "quantity", element.getQuantity(), -1); 10246 } 10247 if (element.hasPreparedDateElement()) { 10248 composeDateTime(t, "DeviceDispense", "preparedDate", element.getPreparedDateElement(), -1); 10249 } 10250 if (element.hasWhenHandedOverElement()) { 10251 composeDateTime(t, "DeviceDispense", "whenHandedOver", element.getWhenHandedOverElement(), -1); 10252 } 10253 if (element.hasDestination()) { 10254 composeReference(t, "DeviceDispense", "destination", element.getDestination(), -1); 10255 } 10256 for (int i = 0; i < element.getNote().size(); i++) { 10257 composeAnnotation(t, "DeviceDispense", "note", element.getNote().get(i), i); 10258 } 10259 if (element.hasUsageInstructionElement()) { 10260 composeMarkdown(t, "DeviceDispense", "usageInstruction", element.getUsageInstructionElement(), -1); 10261 } 10262 for (int i = 0; i < element.getEventHistory().size(); i++) { 10263 composeReference(t, "DeviceDispense", "eventHistory", element.getEventHistory().get(i), i); 10264 } 10265 } 10266 10267 protected void composeDeviceDispensePerformerComponent(Complex parent, String parentType, String name, DeviceDispense.DeviceDispensePerformerComponent element, int index) { 10268 if (element == null) 10269 return; 10270 Complex t; 10271 if (Utilities.noString(parentType)) 10272 t = parent; 10273 else { 10274 t = parent.predicate("fhir:"+name,index > -1); 10275 } 10276 composeBackboneElement(t, "performer", name, element, index); 10277 if (element.hasFunction()) { 10278 composeCodeableConcept(t, "DeviceDispensePerformerComponent", "function", element.getFunction(), -1); 10279 } 10280 if (element.hasActor()) { 10281 composeReference(t, "DeviceDispensePerformerComponent", "actor", element.getActor(), -1); 10282 } 10283 } 10284 10285 protected void composeDeviceMetric(Complex parent, String parentType, String name, DeviceMetric element, int index) { 10286 if (element == null) 10287 return; 10288 Complex t; 10289 if (Utilities.noString(parentType)) 10290 t = parent; 10291 else { 10292 t = parent.predicate("fhir:"+name,index > -1); 10293 } 10294 composeDomainResource(t, "DeviceMetric", name, element, index); 10295 for (int i = 0; i < element.getIdentifier().size(); i++) { 10296 composeIdentifier(t, "DeviceMetric", "identifier", element.getIdentifier().get(i), i); 10297 } 10298 if (element.hasType()) { 10299 composeCodeableConcept(t, "DeviceMetric", "type", element.getType(), -1); 10300 } 10301 if (element.hasUnit()) { 10302 composeCodeableConcept(t, "DeviceMetric", "unit", element.getUnit(), -1); 10303 } 10304 if (element.hasDevice()) { 10305 composeReference(t, "DeviceMetric", "device", element.getDevice(), -1); 10306 } 10307 if (element.hasOperationalStatusElement()) { 10308 composeEnum(t, "DeviceMetric", "operationalStatus", element.getOperationalStatusElement(), -1); 10309 } 10310 if (element.hasColorElement()) { 10311 composeCode(t, "DeviceMetric", "color", element.getColorElement(), -1); 10312 } 10313 if (element.hasCategoryElement()) { 10314 composeEnum(t, "DeviceMetric", "category", element.getCategoryElement(), -1); 10315 } 10316 if (element.hasMeasurementFrequency()) { 10317 composeQuantity(t, "DeviceMetric", "measurementFrequency", element.getMeasurementFrequency(), -1); 10318 } 10319 for (int i = 0; i < element.getCalibration().size(); i++) { 10320 composeDeviceMetricCalibrationComponent(t, "DeviceMetric", "calibration", element.getCalibration().get(i), i); 10321 } 10322 } 10323 10324 protected void composeDeviceMetricCalibrationComponent(Complex parent, String parentType, String name, DeviceMetric.DeviceMetricCalibrationComponent element, int index) { 10325 if (element == null) 10326 return; 10327 Complex t; 10328 if (Utilities.noString(parentType)) 10329 t = parent; 10330 else { 10331 t = parent.predicate("fhir:"+name,index > -1); 10332 } 10333 composeBackboneElement(t, "calibration", name, element, index); 10334 if (element.hasTypeElement()) { 10335 composeEnum(t, "DeviceMetricCalibrationComponent", "type", element.getTypeElement(), -1); 10336 } 10337 if (element.hasStateElement()) { 10338 composeEnum(t, "DeviceMetricCalibrationComponent", "state", element.getStateElement(), -1); 10339 } 10340 if (element.hasTimeElement()) { 10341 composeInstant(t, "DeviceMetricCalibrationComponent", "time", element.getTimeElement(), -1); 10342 } 10343 } 10344 10345 protected void composeDeviceRequest(Complex parent, String parentType, String name, DeviceRequest element, int index) { 10346 if (element == null) 10347 return; 10348 Complex t; 10349 if (Utilities.noString(parentType)) 10350 t = parent; 10351 else { 10352 t = parent.predicate("fhir:"+name,index > -1); 10353 } 10354 composeDomainResource(t, "DeviceRequest", name, element, index); 10355 for (int i = 0; i < element.getIdentifier().size(); i++) { 10356 composeIdentifier(t, "DeviceRequest", "identifier", element.getIdentifier().get(i), i); 10357 } 10358 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { 10359 composeCanonical(t, "DeviceRequest", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 10360 } 10361 for (int i = 0; i < element.getInstantiatesUri().size(); i++) { 10362 composeUri(t, "DeviceRequest", "instantiatesUri", element.getInstantiatesUri().get(i), i); 10363 } 10364 for (int i = 0; i < element.getBasedOn().size(); i++) { 10365 composeReference(t, "DeviceRequest", "basedOn", element.getBasedOn().get(i), i); 10366 } 10367 for (int i = 0; i < element.getReplaces().size(); i++) { 10368 composeReference(t, "DeviceRequest", "replaces", element.getReplaces().get(i), i); 10369 } 10370 if (element.hasGroupIdentifier()) { 10371 composeIdentifier(t, "DeviceRequest", "groupIdentifier", element.getGroupIdentifier(), -1); 10372 } 10373 if (element.hasStatusElement()) { 10374 composeEnum(t, "DeviceRequest", "status", element.getStatusElement(), -1); 10375 } 10376 if (element.hasIntentElement()) { 10377 composeEnum(t, "DeviceRequest", "intent", element.getIntentElement(), -1); 10378 } 10379 if (element.hasPriorityElement()) { 10380 composeEnum(t, "DeviceRequest", "priority", element.getPriorityElement(), -1); 10381 } 10382 if (element.hasDoNotPerformElement()) { 10383 composeBoolean(t, "DeviceRequest", "doNotPerform", element.getDoNotPerformElement(), -1); 10384 } 10385 if (element.hasCode()) { 10386 composeCodeableReference(t, "DeviceRequest", "code", element.getCode(), -1); 10387 } 10388 if (element.hasQuantityElement()) { 10389 composeInteger(t, "DeviceRequest", "quantity", element.getQuantityElement(), -1); 10390 } 10391 for (int i = 0; i < element.getParameter().size(); i++) { 10392 composeDeviceRequestParameterComponent(t, "DeviceRequest", "parameter", element.getParameter().get(i), i); 10393 } 10394 if (element.hasSubject()) { 10395 composeReference(t, "DeviceRequest", "subject", element.getSubject(), -1); 10396 } 10397 if (element.hasEncounter()) { 10398 composeReference(t, "DeviceRequest", "encounter", element.getEncounter(), -1); 10399 } 10400 if (element.hasOccurrence()) { 10401 composeType(t, "DeviceRequest", "occurrence", element.getOccurrence(), -1); 10402 } 10403 if (element.hasAuthoredOnElement()) { 10404 composeDateTime(t, "DeviceRequest", "authoredOn", element.getAuthoredOnElement(), -1); 10405 } 10406 if (element.hasRequester()) { 10407 composeReference(t, "DeviceRequest", "requester", element.getRequester(), -1); 10408 } 10409 if (element.hasPerformer()) { 10410 composeCodeableReference(t, "DeviceRequest", "performer", element.getPerformer(), -1); 10411 } 10412 for (int i = 0; i < element.getReason().size(); i++) { 10413 composeCodeableReference(t, "DeviceRequest", "reason", element.getReason().get(i), i); 10414 } 10415 if (element.hasAsNeededElement()) { 10416 composeBoolean(t, "DeviceRequest", "asNeeded", element.getAsNeededElement(), -1); 10417 } 10418 if (element.hasAsNeededFor()) { 10419 composeCodeableConcept(t, "DeviceRequest", "asNeededFor", element.getAsNeededFor(), -1); 10420 } 10421 for (int i = 0; i < element.getInsurance().size(); i++) { 10422 composeReference(t, "DeviceRequest", "insurance", element.getInsurance().get(i), i); 10423 } 10424 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 10425 composeReference(t, "DeviceRequest", "supportingInfo", element.getSupportingInfo().get(i), i); 10426 } 10427 for (int i = 0; i < element.getNote().size(); i++) { 10428 composeAnnotation(t, "DeviceRequest", "note", element.getNote().get(i), i); 10429 } 10430 for (int i = 0; i < element.getRelevantHistory().size(); i++) { 10431 composeReference(t, "DeviceRequest", "relevantHistory", element.getRelevantHistory().get(i), i); 10432 } 10433 } 10434 10435 protected void composeDeviceRequestParameterComponent(Complex parent, String parentType, String name, DeviceRequest.DeviceRequestParameterComponent element, int index) { 10436 if (element == null) 10437 return; 10438 Complex t; 10439 if (Utilities.noString(parentType)) 10440 t = parent; 10441 else { 10442 t = parent.predicate("fhir:"+name,index > -1); 10443 } 10444 composeBackboneElement(t, "parameter", name, element, index); 10445 if (element.hasCode()) { 10446 composeCodeableConcept(t, "DeviceRequestParameterComponent", "code", element.getCode(), -1); 10447 } 10448 if (element.hasValue()) { 10449 composeType(t, "DeviceRequestParameterComponent", "value", element.getValue(), -1); 10450 } 10451 } 10452 10453 protected void composeDeviceUsage(Complex parent, String parentType, String name, DeviceUsage element, int index) { 10454 if (element == null) 10455 return; 10456 Complex t; 10457 if (Utilities.noString(parentType)) 10458 t = parent; 10459 else { 10460 t = parent.predicate("fhir:"+name,index > -1); 10461 } 10462 composeDomainResource(t, "DeviceUsage", name, element, index); 10463 for (int i = 0; i < element.getIdentifier().size(); i++) { 10464 composeIdentifier(t, "DeviceUsage", "identifier", element.getIdentifier().get(i), i); 10465 } 10466 for (int i = 0; i < element.getBasedOn().size(); i++) { 10467 composeReference(t, "DeviceUsage", "basedOn", element.getBasedOn().get(i), i); 10468 } 10469 if (element.hasStatusElement()) { 10470 composeEnum(t, "DeviceUsage", "status", element.getStatusElement(), -1); 10471 } 10472 for (int i = 0; i < element.getCategory().size(); i++) { 10473 composeCodeableConcept(t, "DeviceUsage", "category", element.getCategory().get(i), i); 10474 } 10475 if (element.hasPatient()) { 10476 composeReference(t, "DeviceUsage", "patient", element.getPatient(), -1); 10477 } 10478 for (int i = 0; i < element.getDerivedFrom().size(); i++) { 10479 composeReference(t, "DeviceUsage", "derivedFrom", element.getDerivedFrom().get(i), i); 10480 } 10481 if (element.hasContext()) { 10482 composeReference(t, "DeviceUsage", "context", element.getContext(), -1); 10483 } 10484 if (element.hasTiming()) { 10485 composeType(t, "DeviceUsage", "timing", element.getTiming(), -1); 10486 } 10487 if (element.hasDateAssertedElement()) { 10488 composeDateTime(t, "DeviceUsage", "dateAsserted", element.getDateAssertedElement(), -1); 10489 } 10490 if (element.hasUsageStatus()) { 10491 composeCodeableConcept(t, "DeviceUsage", "usageStatus", element.getUsageStatus(), -1); 10492 } 10493 for (int i = 0; i < element.getUsageReason().size(); i++) { 10494 composeCodeableConcept(t, "DeviceUsage", "usageReason", element.getUsageReason().get(i), i); 10495 } 10496 if (element.hasAdherence()) { 10497 composeDeviceUsageAdherenceComponent(t, "DeviceUsage", "adherence", element.getAdherence(), -1); 10498 } 10499 if (element.hasInformationSource()) { 10500 composeReference(t, "DeviceUsage", "informationSource", element.getInformationSource(), -1); 10501 } 10502 if (element.hasDevice()) { 10503 composeCodeableReference(t, "DeviceUsage", "device", element.getDevice(), -1); 10504 } 10505 for (int i = 0; i < element.getReason().size(); i++) { 10506 composeCodeableReference(t, "DeviceUsage", "reason", element.getReason().get(i), i); 10507 } 10508 if (element.hasBodySite()) { 10509 composeCodeableReference(t, "DeviceUsage", "bodySite", element.getBodySite(), -1); 10510 } 10511 for (int i = 0; i < element.getNote().size(); i++) { 10512 composeAnnotation(t, "DeviceUsage", "note", element.getNote().get(i), i); 10513 } 10514 } 10515 10516 protected void composeDeviceUsageAdherenceComponent(Complex parent, String parentType, String name, DeviceUsage.DeviceUsageAdherenceComponent element, int index) { 10517 if (element == null) 10518 return; 10519 Complex t; 10520 if (Utilities.noString(parentType)) 10521 t = parent; 10522 else { 10523 t = parent.predicate("fhir:"+name,index > -1); 10524 } 10525 composeBackboneElement(t, "adherence", name, element, index); 10526 if (element.hasCode()) { 10527 composeCodeableConcept(t, "DeviceUsageAdherenceComponent", "code", element.getCode(), -1); 10528 } 10529 for (int i = 0; i < element.getReason().size(); i++) { 10530 composeCodeableConcept(t, "DeviceUsageAdherenceComponent", "reason", element.getReason().get(i), i); 10531 } 10532 } 10533 10534 protected void composeDiagnosticReport(Complex parent, String parentType, String name, DiagnosticReport element, int index) { 10535 if (element == null) 10536 return; 10537 Complex t; 10538 if (Utilities.noString(parentType)) 10539 t = parent; 10540 else { 10541 t = parent.predicate("fhir:"+name,index > -1); 10542 } 10543 composeDomainResource(t, "DiagnosticReport", name, element, index); 10544 for (int i = 0; i < element.getIdentifier().size(); i++) { 10545 composeIdentifier(t, "DiagnosticReport", "identifier", element.getIdentifier().get(i), i); 10546 } 10547 for (int i = 0; i < element.getBasedOn().size(); i++) { 10548 composeReference(t, "DiagnosticReport", "basedOn", element.getBasedOn().get(i), i); 10549 } 10550 if (element.hasStatusElement()) { 10551 composeEnum(t, "DiagnosticReport", "status", element.getStatusElement(), -1); 10552 } 10553 for (int i = 0; i < element.getCategory().size(); i++) { 10554 composeCodeableConcept(t, "DiagnosticReport", "category", element.getCategory().get(i), i); 10555 } 10556 if (element.hasCode()) { 10557 composeCodeableConcept(t, "DiagnosticReport", "code", element.getCode(), -1); 10558 } 10559 if (element.hasSubject()) { 10560 composeReference(t, "DiagnosticReport", "subject", element.getSubject(), -1); 10561 } 10562 if (element.hasEncounter()) { 10563 composeReference(t, "DiagnosticReport", "encounter", element.getEncounter(), -1); 10564 } 10565 if (element.hasEffective()) { 10566 composeType(t, "DiagnosticReport", "effective", element.getEffective(), -1); 10567 } 10568 if (element.hasIssuedElement()) { 10569 composeInstant(t, "DiagnosticReport", "issued", element.getIssuedElement(), -1); 10570 } 10571 for (int i = 0; i < element.getPerformer().size(); i++) { 10572 composeReference(t, "DiagnosticReport", "performer", element.getPerformer().get(i), i); 10573 } 10574 for (int i = 0; i < element.getResultsInterpreter().size(); i++) { 10575 composeReference(t, "DiagnosticReport", "resultsInterpreter", element.getResultsInterpreter().get(i), i); 10576 } 10577 for (int i = 0; i < element.getSpecimen().size(); i++) { 10578 composeReference(t, "DiagnosticReport", "specimen", element.getSpecimen().get(i), i); 10579 } 10580 for (int i = 0; i < element.getResult().size(); i++) { 10581 composeReference(t, "DiagnosticReport", "result", element.getResult().get(i), i); 10582 } 10583 for (int i = 0; i < element.getNote().size(); i++) { 10584 composeAnnotation(t, "DiagnosticReport", "note", element.getNote().get(i), i); 10585 } 10586 for (int i = 0; i < element.getStudy().size(); i++) { 10587 composeReference(t, "DiagnosticReport", "study", element.getStudy().get(i), i); 10588 } 10589 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 10590 composeDiagnosticReportSupportingInfoComponent(t, "DiagnosticReport", "supportingInfo", element.getSupportingInfo().get(i), i); 10591 } 10592 for (int i = 0; i < element.getMedia().size(); i++) { 10593 composeDiagnosticReportMediaComponent(t, "DiagnosticReport", "media", element.getMedia().get(i), i); 10594 } 10595 if (element.hasComposition()) { 10596 composeReference(t, "DiagnosticReport", "composition", element.getComposition(), -1); 10597 } 10598 if (element.hasConclusionElement()) { 10599 composeMarkdown(t, "DiagnosticReport", "conclusion", element.getConclusionElement(), -1); 10600 } 10601 for (int i = 0; i < element.getConclusionCode().size(); i++) { 10602 composeCodeableConcept(t, "DiagnosticReport", "conclusionCode", element.getConclusionCode().get(i), i); 10603 } 10604 for (int i = 0; i < element.getPresentedForm().size(); i++) { 10605 composeAttachment(t, "DiagnosticReport", "presentedForm", element.getPresentedForm().get(i), i); 10606 } 10607 } 10608 10609 protected void composeDiagnosticReportSupportingInfoComponent(Complex parent, String parentType, String name, DiagnosticReport.DiagnosticReportSupportingInfoComponent element, int index) { 10610 if (element == null) 10611 return; 10612 Complex t; 10613 if (Utilities.noString(parentType)) 10614 t = parent; 10615 else { 10616 t = parent.predicate("fhir:"+name,index > -1); 10617 } 10618 composeBackboneElement(t, "supportingInfo", name, element, index); 10619 if (element.hasType()) { 10620 composeCodeableConcept(t, "DiagnosticReportSupportingInfoComponent", "type", element.getType(), -1); 10621 } 10622 if (element.hasReference()) { 10623 composeReference(t, "DiagnosticReportSupportingInfoComponent", "reference", element.getReference(), -1); 10624 } 10625 } 10626 10627 protected void composeDiagnosticReportMediaComponent(Complex parent, String parentType, String name, DiagnosticReport.DiagnosticReportMediaComponent element, int index) { 10628 if (element == null) 10629 return; 10630 Complex t; 10631 if (Utilities.noString(parentType)) 10632 t = parent; 10633 else { 10634 t = parent.predicate("fhir:"+name,index > -1); 10635 } 10636 composeBackboneElement(t, "media", name, element, index); 10637 if (element.hasCommentElement()) { 10638 composeString(t, "DiagnosticReportMediaComponent", "comment", element.getCommentElement(), -1); 10639 } 10640 if (element.hasLink()) { 10641 composeReference(t, "DiagnosticReportMediaComponent", "link", element.getLink(), -1); 10642 } 10643 } 10644 10645 protected void composeDocumentReference(Complex parent, String parentType, String name, DocumentReference element, int index) { 10646 if (element == null) 10647 return; 10648 Complex t; 10649 if (Utilities.noString(parentType)) 10650 t = parent; 10651 else { 10652 t = parent.predicate("fhir:"+name,index > -1); 10653 } 10654 composeDomainResource(t, "DocumentReference", name, element, index); 10655 for (int i = 0; i < element.getIdentifier().size(); i++) { 10656 composeIdentifier(t, "DocumentReference", "identifier", element.getIdentifier().get(i), i); 10657 } 10658 if (element.hasVersionElement()) { 10659 composeString(t, "DocumentReference", "version", element.getVersionElement(), -1); 10660 } 10661 for (int i = 0; i < element.getBasedOn().size(); i++) { 10662 composeReference(t, "DocumentReference", "basedOn", element.getBasedOn().get(i), i); 10663 } 10664 if (element.hasStatusElement()) { 10665 composeEnum(t, "DocumentReference", "status", element.getStatusElement(), -1); 10666 } 10667 if (element.hasDocStatusElement()) { 10668 composeEnum(t, "DocumentReference", "docStatus", element.getDocStatusElement(), -1); 10669 } 10670 for (int i = 0; i < element.getModality().size(); i++) { 10671 composeCodeableConcept(t, "DocumentReference", "modality", element.getModality().get(i), i); 10672 } 10673 if (element.hasType()) { 10674 composeCodeableConcept(t, "DocumentReference", "type", element.getType(), -1); 10675 } 10676 for (int i = 0; i < element.getCategory().size(); i++) { 10677 composeCodeableConcept(t, "DocumentReference", "category", element.getCategory().get(i), i); 10678 } 10679 if (element.hasSubject()) { 10680 composeReference(t, "DocumentReference", "subject", element.getSubject(), -1); 10681 } 10682 for (int i = 0; i < element.getContext().size(); i++) { 10683 composeReference(t, "DocumentReference", "context", element.getContext().get(i), i); 10684 } 10685 for (int i = 0; i < element.getEvent().size(); i++) { 10686 composeCodeableReference(t, "DocumentReference", "event", element.getEvent().get(i), i); 10687 } 10688 for (int i = 0; i < element.getBodySite().size(); i++) { 10689 composeCodeableReference(t, "DocumentReference", "bodySite", element.getBodySite().get(i), i); 10690 } 10691 if (element.hasFacilityType()) { 10692 composeCodeableConcept(t, "DocumentReference", "facilityType", element.getFacilityType(), -1); 10693 } 10694 if (element.hasPracticeSetting()) { 10695 composeCodeableConcept(t, "DocumentReference", "practiceSetting", element.getPracticeSetting(), -1); 10696 } 10697 if (element.hasPeriod()) { 10698 composePeriod(t, "DocumentReference", "period", element.getPeriod(), -1); 10699 } 10700 if (element.hasDateElement()) { 10701 composeInstant(t, "DocumentReference", "date", element.getDateElement(), -1); 10702 } 10703 for (int i = 0; i < element.getAuthor().size(); i++) { 10704 composeReference(t, "DocumentReference", "author", element.getAuthor().get(i), i); 10705 } 10706 for (int i = 0; i < element.getAttester().size(); i++) { 10707 composeDocumentReferenceAttesterComponent(t, "DocumentReference", "attester", element.getAttester().get(i), i); 10708 } 10709 if (element.hasCustodian()) { 10710 composeReference(t, "DocumentReference", "custodian", element.getCustodian(), -1); 10711 } 10712 for (int i = 0; i < element.getRelatesTo().size(); i++) { 10713 composeDocumentReferenceRelatesToComponent(t, "DocumentReference", "relatesTo", element.getRelatesTo().get(i), i); 10714 } 10715 if (element.hasDescriptionElement()) { 10716 composeMarkdown(t, "DocumentReference", "description", element.getDescriptionElement(), -1); 10717 } 10718 for (int i = 0; i < element.getSecurityLabel().size(); i++) { 10719 composeCodeableConcept(t, "DocumentReference", "securityLabel", element.getSecurityLabel().get(i), i); 10720 } 10721 for (int i = 0; i < element.getContent().size(); i++) { 10722 composeDocumentReferenceContentComponent(t, "DocumentReference", "content", element.getContent().get(i), i); 10723 } 10724 } 10725 10726 protected void composeDocumentReferenceAttesterComponent(Complex parent, String parentType, String name, DocumentReference.DocumentReferenceAttesterComponent element, int index) { 10727 if (element == null) 10728 return; 10729 Complex t; 10730 if (Utilities.noString(parentType)) 10731 t = parent; 10732 else { 10733 t = parent.predicate("fhir:"+name,index > -1); 10734 } 10735 composeBackboneElement(t, "attester", name, element, index); 10736 if (element.hasMode()) { 10737 composeCodeableConcept(t, "DocumentReferenceAttesterComponent", "mode", element.getMode(), -1); 10738 } 10739 if (element.hasTimeElement()) { 10740 composeDateTime(t, "DocumentReferenceAttesterComponent", "time", element.getTimeElement(), -1); 10741 } 10742 if (element.hasParty()) { 10743 composeReference(t, "DocumentReferenceAttesterComponent", "party", element.getParty(), -1); 10744 } 10745 } 10746 10747 protected void composeDocumentReferenceRelatesToComponent(Complex parent, String parentType, String name, DocumentReference.DocumentReferenceRelatesToComponent element, int index) { 10748 if (element == null) 10749 return; 10750 Complex t; 10751 if (Utilities.noString(parentType)) 10752 t = parent; 10753 else { 10754 t = parent.predicate("fhir:"+name,index > -1); 10755 } 10756 composeBackboneElement(t, "relatesTo", name, element, index); 10757 if (element.hasCode()) { 10758 composeCodeableConcept(t, "DocumentReferenceRelatesToComponent", "code", element.getCode(), -1); 10759 } 10760 if (element.hasTarget()) { 10761 composeReference(t, "DocumentReferenceRelatesToComponent", "target", element.getTarget(), -1); 10762 } 10763 } 10764 10765 protected void composeDocumentReferenceContentComponent(Complex parent, String parentType, String name, DocumentReference.DocumentReferenceContentComponent element, int index) { 10766 if (element == null) 10767 return; 10768 Complex t; 10769 if (Utilities.noString(parentType)) 10770 t = parent; 10771 else { 10772 t = parent.predicate("fhir:"+name,index > -1); 10773 } 10774 composeBackboneElement(t, "content", name, element, index); 10775 if (element.hasAttachment()) { 10776 composeAttachment(t, "DocumentReferenceContentComponent", "attachment", element.getAttachment(), -1); 10777 } 10778 for (int i = 0; i < element.getProfile().size(); i++) { 10779 composeDocumentReferenceContentProfileComponent(t, "DocumentReferenceContentComponent", "profile", element.getProfile().get(i), i); 10780 } 10781 } 10782 10783 protected void composeDocumentReferenceContentProfileComponent(Complex parent, String parentType, String name, DocumentReference.DocumentReferenceContentProfileComponent element, int index) { 10784 if (element == null) 10785 return; 10786 Complex t; 10787 if (Utilities.noString(parentType)) 10788 t = parent; 10789 else { 10790 t = parent.predicate("fhir:"+name,index > -1); 10791 } 10792 composeBackboneElement(t, "profile", name, element, index); 10793 if (element.hasValue()) { 10794 composeType(t, "DocumentReferenceContentProfileComponent", "value", element.getValue(), -1); 10795 } 10796 } 10797 10798 protected void composeEncounter(Complex parent, String parentType, String name, Encounter element, int index) { 10799 if (element == null) 10800 return; 10801 Complex t; 10802 if (Utilities.noString(parentType)) 10803 t = parent; 10804 else { 10805 t = parent.predicate("fhir:"+name,index > -1); 10806 } 10807 composeDomainResource(t, "Encounter", name, element, index); 10808 for (int i = 0; i < element.getIdentifier().size(); i++) { 10809 composeIdentifier(t, "Encounter", "identifier", element.getIdentifier().get(i), i); 10810 } 10811 if (element.hasStatusElement()) { 10812 composeEnum(t, "Encounter", "status", element.getStatusElement(), -1); 10813 } 10814 for (int i = 0; i < element.getClass_().size(); i++) { 10815 composeCodeableConcept(t, "Encounter", "class", element.getClass_().get(i), i); 10816 } 10817 if (element.hasPriority()) { 10818 composeCodeableConcept(t, "Encounter", "priority", element.getPriority(), -1); 10819 } 10820 for (int i = 0; i < element.getType().size(); i++) { 10821 composeCodeableConcept(t, "Encounter", "type", element.getType().get(i), i); 10822 } 10823 for (int i = 0; i < element.getServiceType().size(); i++) { 10824 composeCodeableReference(t, "Encounter", "serviceType", element.getServiceType().get(i), i); 10825 } 10826 if (element.hasSubject()) { 10827 composeReference(t, "Encounter", "subject", element.getSubject(), -1); 10828 } 10829 if (element.hasSubjectStatus()) { 10830 composeCodeableConcept(t, "Encounter", "subjectStatus", element.getSubjectStatus(), -1); 10831 } 10832 for (int i = 0; i < element.getEpisodeOfCare().size(); i++) { 10833 composeReference(t, "Encounter", "episodeOfCare", element.getEpisodeOfCare().get(i), i); 10834 } 10835 for (int i = 0; i < element.getBasedOn().size(); i++) { 10836 composeReference(t, "Encounter", "basedOn", element.getBasedOn().get(i), i); 10837 } 10838 for (int i = 0; i < element.getCareTeam().size(); i++) { 10839 composeReference(t, "Encounter", "careTeam", element.getCareTeam().get(i), i); 10840 } 10841 if (element.hasPartOf()) { 10842 composeReference(t, "Encounter", "partOf", element.getPartOf(), -1); 10843 } 10844 if (element.hasServiceProvider()) { 10845 composeReference(t, "Encounter", "serviceProvider", element.getServiceProvider(), -1); 10846 } 10847 for (int i = 0; i < element.getParticipant().size(); i++) { 10848 composeEncounterParticipantComponent(t, "Encounter", "participant", element.getParticipant().get(i), i); 10849 } 10850 for (int i = 0; i < element.getAppointment().size(); i++) { 10851 composeReference(t, "Encounter", "appointment", element.getAppointment().get(i), i); 10852 } 10853 for (int i = 0; i < element.getVirtualService().size(); i++) { 10854 composeVirtualServiceDetail(t, "Encounter", "virtualService", element.getVirtualService().get(i), i); 10855 } 10856 if (element.hasActualPeriod()) { 10857 composePeriod(t, "Encounter", "actualPeriod", element.getActualPeriod(), -1); 10858 } 10859 if (element.hasPlannedStartDateElement()) { 10860 composeDateTime(t, "Encounter", "plannedStartDate", element.getPlannedStartDateElement(), -1); 10861 } 10862 if (element.hasPlannedEndDateElement()) { 10863 composeDateTime(t, "Encounter", "plannedEndDate", element.getPlannedEndDateElement(), -1); 10864 } 10865 if (element.hasLength()) { 10866 composeDuration(t, "Encounter", "length", element.getLength(), -1); 10867 } 10868 for (int i = 0; i < element.getReason().size(); i++) { 10869 composeEncounterReasonComponent(t, "Encounter", "reason", element.getReason().get(i), i); 10870 } 10871 for (int i = 0; i < element.getDiagnosis().size(); i++) { 10872 composeEncounterDiagnosisComponent(t, "Encounter", "diagnosis", element.getDiagnosis().get(i), i); 10873 } 10874 for (int i = 0; i < element.getAccount().size(); i++) { 10875 composeReference(t, "Encounter", "account", element.getAccount().get(i), i); 10876 } 10877 for (int i = 0; i < element.getDietPreference().size(); i++) { 10878 composeCodeableConcept(t, "Encounter", "dietPreference", element.getDietPreference().get(i), i); 10879 } 10880 for (int i = 0; i < element.getSpecialArrangement().size(); i++) { 10881 composeCodeableConcept(t, "Encounter", "specialArrangement", element.getSpecialArrangement().get(i), i); 10882 } 10883 for (int i = 0; i < element.getSpecialCourtesy().size(); i++) { 10884 composeCodeableConcept(t, "Encounter", "specialCourtesy", element.getSpecialCourtesy().get(i), i); 10885 } 10886 if (element.hasAdmission()) { 10887 composeEncounterAdmissionComponent(t, "Encounter", "admission", element.getAdmission(), -1); 10888 } 10889 for (int i = 0; i < element.getLocation().size(); i++) { 10890 composeEncounterLocationComponent(t, "Encounter", "location", element.getLocation().get(i), i); 10891 } 10892 } 10893 10894 protected void composeEncounterParticipantComponent(Complex parent, String parentType, String name, Encounter.EncounterParticipantComponent element, int index) { 10895 if (element == null) 10896 return; 10897 Complex t; 10898 if (Utilities.noString(parentType)) 10899 t = parent; 10900 else { 10901 t = parent.predicate("fhir:"+name,index > -1); 10902 } 10903 composeBackboneElement(t, "participant", name, element, index); 10904 for (int i = 0; i < element.getType().size(); i++) { 10905 composeCodeableConcept(t, "EncounterParticipantComponent", "type", element.getType().get(i), i); 10906 } 10907 if (element.hasPeriod()) { 10908 composePeriod(t, "EncounterParticipantComponent", "period", element.getPeriod(), -1); 10909 } 10910 if (element.hasActor()) { 10911 composeReference(t, "EncounterParticipantComponent", "actor", element.getActor(), -1); 10912 } 10913 } 10914 10915 protected void composeEncounterReasonComponent(Complex parent, String parentType, String name, Encounter.ReasonComponent element, int index) { 10916 if (element == null) 10917 return; 10918 Complex t; 10919 if (Utilities.noString(parentType)) 10920 t = parent; 10921 else { 10922 t = parent.predicate("fhir:"+name,index > -1); 10923 } 10924 composeBackboneElement(t, "reason", name, element, index); 10925 for (int i = 0; i < element.getUse().size(); i++) { 10926 composeCodeableConcept(t, "ReasonComponent", "use", element.getUse().get(i), i); 10927 } 10928 for (int i = 0; i < element.getValue().size(); i++) { 10929 composeCodeableReference(t, "ReasonComponent", "value", element.getValue().get(i), i); 10930 } 10931 } 10932 10933 protected void composeEncounterDiagnosisComponent(Complex parent, String parentType, String name, Encounter.DiagnosisComponent element, int index) { 10934 if (element == null) 10935 return; 10936 Complex t; 10937 if (Utilities.noString(parentType)) 10938 t = parent; 10939 else { 10940 t = parent.predicate("fhir:"+name,index > -1); 10941 } 10942 composeBackboneElement(t, "diagnosis", name, element, index); 10943 for (int i = 0; i < element.getCondition().size(); i++) { 10944 composeCodeableReference(t, "DiagnosisComponent", "condition", element.getCondition().get(i), i); 10945 } 10946 for (int i = 0; i < element.getUse().size(); i++) { 10947 composeCodeableConcept(t, "DiagnosisComponent", "use", element.getUse().get(i), i); 10948 } 10949 } 10950 10951 protected void composeEncounterAdmissionComponent(Complex parent, String parentType, String name, Encounter.EncounterAdmissionComponent element, int index) { 10952 if (element == null) 10953 return; 10954 Complex t; 10955 if (Utilities.noString(parentType)) 10956 t = parent; 10957 else { 10958 t = parent.predicate("fhir:"+name,index > -1); 10959 } 10960 composeBackboneElement(t, "admission", name, element, index); 10961 if (element.hasPreAdmissionIdentifier()) { 10962 composeIdentifier(t, "EncounterAdmissionComponent", "preAdmissionIdentifier", element.getPreAdmissionIdentifier(), -1); 10963 } 10964 if (element.hasOrigin()) { 10965 composeReference(t, "EncounterAdmissionComponent", "origin", element.getOrigin(), -1); 10966 } 10967 if (element.hasAdmitSource()) { 10968 composeCodeableConcept(t, "EncounterAdmissionComponent", "admitSource", element.getAdmitSource(), -1); 10969 } 10970 if (element.hasReAdmission()) { 10971 composeCodeableConcept(t, "EncounterAdmissionComponent", "reAdmission", element.getReAdmission(), -1); 10972 } 10973 if (element.hasDestination()) { 10974 composeReference(t, "EncounterAdmissionComponent", "destination", element.getDestination(), -1); 10975 } 10976 if (element.hasDischargeDisposition()) { 10977 composeCodeableConcept(t, "EncounterAdmissionComponent", "dischargeDisposition", element.getDischargeDisposition(), -1); 10978 } 10979 } 10980 10981 protected void composeEncounterLocationComponent(Complex parent, String parentType, String name, Encounter.EncounterLocationComponent element, int index) { 10982 if (element == null) 10983 return; 10984 Complex t; 10985 if (Utilities.noString(parentType)) 10986 t = parent; 10987 else { 10988 t = parent.predicate("fhir:"+name,index > -1); 10989 } 10990 composeBackboneElement(t, "location", name, element, index); 10991 if (element.hasLocation()) { 10992 composeReference(t, "EncounterLocationComponent", "location", element.getLocation(), -1); 10993 } 10994 if (element.hasStatusElement()) { 10995 composeEnum(t, "EncounterLocationComponent", "status", element.getStatusElement(), -1); 10996 } 10997 if (element.hasForm()) { 10998 composeCodeableConcept(t, "EncounterLocationComponent", "form", element.getForm(), -1); 10999 } 11000 if (element.hasPeriod()) { 11001 composePeriod(t, "EncounterLocationComponent", "period", element.getPeriod(), -1); 11002 } 11003 } 11004 11005 protected void composeEncounterHistory(Complex parent, String parentType, String name, EncounterHistory element, int index) { 11006 if (element == null) 11007 return; 11008 Complex t; 11009 if (Utilities.noString(parentType)) 11010 t = parent; 11011 else { 11012 t = parent.predicate("fhir:"+name,index > -1); 11013 } 11014 composeDomainResource(t, "EncounterHistory", name, element, index); 11015 if (element.hasEncounter()) { 11016 composeReference(t, "EncounterHistory", "encounter", element.getEncounter(), -1); 11017 } 11018 for (int i = 0; i < element.getIdentifier().size(); i++) { 11019 composeIdentifier(t, "EncounterHistory", "identifier", element.getIdentifier().get(i), i); 11020 } 11021 if (element.hasStatusElement()) { 11022 composeEnum(t, "EncounterHistory", "status", element.getStatusElement(), -1); 11023 } 11024 if (element.hasClass_()) { 11025 composeCodeableConcept(t, "EncounterHistory", "class", element.getClass_(), -1); 11026 } 11027 for (int i = 0; i < element.getType().size(); i++) { 11028 composeCodeableConcept(t, "EncounterHistory", "type", element.getType().get(i), i); 11029 } 11030 for (int i = 0; i < element.getServiceType().size(); i++) { 11031 composeCodeableReference(t, "EncounterHistory", "serviceType", element.getServiceType().get(i), i); 11032 } 11033 if (element.hasSubject()) { 11034 composeReference(t, "EncounterHistory", "subject", element.getSubject(), -1); 11035 } 11036 if (element.hasSubjectStatus()) { 11037 composeCodeableConcept(t, "EncounterHistory", "subjectStatus", element.getSubjectStatus(), -1); 11038 } 11039 if (element.hasActualPeriod()) { 11040 composePeriod(t, "EncounterHistory", "actualPeriod", element.getActualPeriod(), -1); 11041 } 11042 if (element.hasPlannedStartDateElement()) { 11043 composeDateTime(t, "EncounterHistory", "plannedStartDate", element.getPlannedStartDateElement(), -1); 11044 } 11045 if (element.hasPlannedEndDateElement()) { 11046 composeDateTime(t, "EncounterHistory", "plannedEndDate", element.getPlannedEndDateElement(), -1); 11047 } 11048 if (element.hasLength()) { 11049 composeDuration(t, "EncounterHistory", "length", element.getLength(), -1); 11050 } 11051 for (int i = 0; i < element.getLocation().size(); i++) { 11052 composeEncounterHistoryLocationComponent(t, "EncounterHistory", "location", element.getLocation().get(i), i); 11053 } 11054 } 11055 11056 protected void composeEncounterHistoryLocationComponent(Complex parent, String parentType, String name, EncounterHistory.EncounterHistoryLocationComponent element, int index) { 11057 if (element == null) 11058 return; 11059 Complex t; 11060 if (Utilities.noString(parentType)) 11061 t = parent; 11062 else { 11063 t = parent.predicate("fhir:"+name,index > -1); 11064 } 11065 composeBackboneElement(t, "location", name, element, index); 11066 if (element.hasLocation()) { 11067 composeReference(t, "EncounterHistoryLocationComponent", "location", element.getLocation(), -1); 11068 } 11069 if (element.hasForm()) { 11070 composeCodeableConcept(t, "EncounterHistoryLocationComponent", "form", element.getForm(), -1); 11071 } 11072 } 11073 11074 protected void composeEndpoint(Complex parent, String parentType, String name, Endpoint element, int index) { 11075 if (element == null) 11076 return; 11077 Complex t; 11078 if (Utilities.noString(parentType)) 11079 t = parent; 11080 else { 11081 t = parent.predicate("fhir:"+name,index > -1); 11082 } 11083 composeDomainResource(t, "Endpoint", name, element, index); 11084 for (int i = 0; i < element.getIdentifier().size(); i++) { 11085 composeIdentifier(t, "Endpoint", "identifier", element.getIdentifier().get(i), i); 11086 } 11087 if (element.hasStatusElement()) { 11088 composeEnum(t, "Endpoint", "status", element.getStatusElement(), -1); 11089 } 11090 for (int i = 0; i < element.getConnectionType().size(); i++) { 11091 composeCodeableConcept(t, "Endpoint", "connectionType", element.getConnectionType().get(i), i); 11092 } 11093 if (element.hasNameElement()) { 11094 composeString(t, "Endpoint", "name", element.getNameElement(), -1); 11095 } 11096 if (element.hasDescriptionElement()) { 11097 composeString(t, "Endpoint", "description", element.getDescriptionElement(), -1); 11098 } 11099 for (int i = 0; i < element.getEnvironmentType().size(); i++) { 11100 composeCodeableConcept(t, "Endpoint", "environmentType", element.getEnvironmentType().get(i), i); 11101 } 11102 if (element.hasManagingOrganization()) { 11103 composeReference(t, "Endpoint", "managingOrganization", element.getManagingOrganization(), -1); 11104 } 11105 for (int i = 0; i < element.getContact().size(); i++) { 11106 composeContactPoint(t, "Endpoint", "contact", element.getContact().get(i), i); 11107 } 11108 if (element.hasPeriod()) { 11109 composePeriod(t, "Endpoint", "period", element.getPeriod(), -1); 11110 } 11111 for (int i = 0; i < element.getPayload().size(); i++) { 11112 composeEndpointPayloadComponent(t, "Endpoint", "payload", element.getPayload().get(i), i); 11113 } 11114 if (element.hasAddressElement()) { 11115 composeUrl(t, "Endpoint", "address", element.getAddressElement(), -1); 11116 } 11117 for (int i = 0; i < element.getHeader().size(); i++) { 11118 composeString(t, "Endpoint", "header", element.getHeader().get(i), i); 11119 } 11120 } 11121 11122 protected void composeEndpointPayloadComponent(Complex parent, String parentType, String name, Endpoint.EndpointPayloadComponent element, int index) { 11123 if (element == null) 11124 return; 11125 Complex t; 11126 if (Utilities.noString(parentType)) 11127 t = parent; 11128 else { 11129 t = parent.predicate("fhir:"+name,index > -1); 11130 } 11131 composeBackboneElement(t, "payload", name, element, index); 11132 for (int i = 0; i < element.getType().size(); i++) { 11133 composeCodeableConcept(t, "EndpointPayloadComponent", "type", element.getType().get(i), i); 11134 } 11135 for (int i = 0; i < element.getMimeType().size(); i++) { 11136 composeCode(t, "EndpointPayloadComponent", "mimeType", element.getMimeType().get(i), i); 11137 } 11138 } 11139 11140 protected void composeEnrollmentRequest(Complex parent, String parentType, String name, EnrollmentRequest element, int index) { 11141 if (element == null) 11142 return; 11143 Complex t; 11144 if (Utilities.noString(parentType)) 11145 t = parent; 11146 else { 11147 t = parent.predicate("fhir:"+name,index > -1); 11148 } 11149 composeDomainResource(t, "EnrollmentRequest", name, element, index); 11150 for (int i = 0; i < element.getIdentifier().size(); i++) { 11151 composeIdentifier(t, "EnrollmentRequest", "identifier", element.getIdentifier().get(i), i); 11152 } 11153 if (element.hasStatusElement()) { 11154 composeEnum(t, "EnrollmentRequest", "status", element.getStatusElement(), -1); 11155 } 11156 if (element.hasCreatedElement()) { 11157 composeDateTime(t, "EnrollmentRequest", "created", element.getCreatedElement(), -1); 11158 } 11159 if (element.hasInsurer()) { 11160 composeReference(t, "EnrollmentRequest", "insurer", element.getInsurer(), -1); 11161 } 11162 if (element.hasProvider()) { 11163 composeReference(t, "EnrollmentRequest", "provider", element.getProvider(), -1); 11164 } 11165 if (element.hasCandidate()) { 11166 composeReference(t, "EnrollmentRequest", "candidate", element.getCandidate(), -1); 11167 } 11168 if (element.hasCoverage()) { 11169 composeReference(t, "EnrollmentRequest", "coverage", element.getCoverage(), -1); 11170 } 11171 } 11172 11173 protected void composeEnrollmentResponse(Complex parent, String parentType, String name, EnrollmentResponse element, int index) { 11174 if (element == null) 11175 return; 11176 Complex t; 11177 if (Utilities.noString(parentType)) 11178 t = parent; 11179 else { 11180 t = parent.predicate("fhir:"+name,index > -1); 11181 } 11182 composeDomainResource(t, "EnrollmentResponse", name, element, index); 11183 for (int i = 0; i < element.getIdentifier().size(); i++) { 11184 composeIdentifier(t, "EnrollmentResponse", "identifier", element.getIdentifier().get(i), i); 11185 } 11186 if (element.hasStatusElement()) { 11187 composeEnum(t, "EnrollmentResponse", "status", element.getStatusElement(), -1); 11188 } 11189 if (element.hasRequest()) { 11190 composeReference(t, "EnrollmentResponse", "request", element.getRequest(), -1); 11191 } 11192 if (element.hasOutcomeElement()) { 11193 composeEnum(t, "EnrollmentResponse", "outcome", element.getOutcomeElement(), -1); 11194 } 11195 if (element.hasDispositionElement()) { 11196 composeString(t, "EnrollmentResponse", "disposition", element.getDispositionElement(), -1); 11197 } 11198 if (element.hasCreatedElement()) { 11199 composeDateTime(t, "EnrollmentResponse", "created", element.getCreatedElement(), -1); 11200 } 11201 if (element.hasOrganization()) { 11202 composeReference(t, "EnrollmentResponse", "organization", element.getOrganization(), -1); 11203 } 11204 if (element.hasRequestProvider()) { 11205 composeReference(t, "EnrollmentResponse", "requestProvider", element.getRequestProvider(), -1); 11206 } 11207 } 11208 11209 protected void composeEpisodeOfCare(Complex parent, String parentType, String name, EpisodeOfCare element, int index) { 11210 if (element == null) 11211 return; 11212 Complex t; 11213 if (Utilities.noString(parentType)) 11214 t = parent; 11215 else { 11216 t = parent.predicate("fhir:"+name,index > -1); 11217 } 11218 composeDomainResource(t, "EpisodeOfCare", name, element, index); 11219 for (int i = 0; i < element.getIdentifier().size(); i++) { 11220 composeIdentifier(t, "EpisodeOfCare", "identifier", element.getIdentifier().get(i), i); 11221 } 11222 if (element.hasStatusElement()) { 11223 composeEnum(t, "EpisodeOfCare", "status", element.getStatusElement(), -1); 11224 } 11225 for (int i = 0; i < element.getStatusHistory().size(); i++) { 11226 composeEpisodeOfCareStatusHistoryComponent(t, "EpisodeOfCare", "statusHistory", element.getStatusHistory().get(i), i); 11227 } 11228 for (int i = 0; i < element.getType().size(); i++) { 11229 composeCodeableConcept(t, "EpisodeOfCare", "type", element.getType().get(i), i); 11230 } 11231 for (int i = 0; i < element.getReason().size(); i++) { 11232 composeEpisodeOfCareReasonComponent(t, "EpisodeOfCare", "reason", element.getReason().get(i), i); 11233 } 11234 for (int i = 0; i < element.getDiagnosis().size(); i++) { 11235 composeEpisodeOfCareDiagnosisComponent(t, "EpisodeOfCare", "diagnosis", element.getDiagnosis().get(i), i); 11236 } 11237 if (element.hasPatient()) { 11238 composeReference(t, "EpisodeOfCare", "patient", element.getPatient(), -1); 11239 } 11240 if (element.hasManagingOrganization()) { 11241 composeReference(t, "EpisodeOfCare", "managingOrganization", element.getManagingOrganization(), -1); 11242 } 11243 if (element.hasPeriod()) { 11244 composePeriod(t, "EpisodeOfCare", "period", element.getPeriod(), -1); 11245 } 11246 for (int i = 0; i < element.getReferralRequest().size(); i++) { 11247 composeReference(t, "EpisodeOfCare", "referralRequest", element.getReferralRequest().get(i), i); 11248 } 11249 if (element.hasCareManager()) { 11250 composeReference(t, "EpisodeOfCare", "careManager", element.getCareManager(), -1); 11251 } 11252 for (int i = 0; i < element.getCareTeam().size(); i++) { 11253 composeReference(t, "EpisodeOfCare", "careTeam", element.getCareTeam().get(i), i); 11254 } 11255 for (int i = 0; i < element.getAccount().size(); i++) { 11256 composeReference(t, "EpisodeOfCare", "account", element.getAccount().get(i), i); 11257 } 11258 } 11259 11260 protected void composeEpisodeOfCareStatusHistoryComponent(Complex parent, String parentType, String name, EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element, int index) { 11261 if (element == null) 11262 return; 11263 Complex t; 11264 if (Utilities.noString(parentType)) 11265 t = parent; 11266 else { 11267 t = parent.predicate("fhir:"+name,index > -1); 11268 } 11269 composeBackboneElement(t, "statusHistory", name, element, index); 11270 if (element.hasStatusElement()) { 11271 composeEnum(t, "EpisodeOfCareStatusHistoryComponent", "status", element.getStatusElement(), -1); 11272 } 11273 if (element.hasPeriod()) { 11274 composePeriod(t, "EpisodeOfCareStatusHistoryComponent", "period", element.getPeriod(), -1); 11275 } 11276 } 11277 11278 protected void composeEpisodeOfCareReasonComponent(Complex parent, String parentType, String name, EpisodeOfCare.ReasonComponent element, int index) { 11279 if (element == null) 11280 return; 11281 Complex t; 11282 if (Utilities.noString(parentType)) 11283 t = parent; 11284 else { 11285 t = parent.predicate("fhir:"+name,index > -1); 11286 } 11287 composeBackboneElement(t, "reason", name, element, index); 11288 if (element.hasUse()) { 11289 composeCodeableConcept(t, "ReasonComponent", "use", element.getUse(), -1); 11290 } 11291 for (int i = 0; i < element.getValue().size(); i++) { 11292 composeCodeableReference(t, "ReasonComponent", "value", element.getValue().get(i), i); 11293 } 11294 } 11295 11296 protected void composeEpisodeOfCareDiagnosisComponent(Complex parent, String parentType, String name, EpisodeOfCare.DiagnosisComponent element, int index) { 11297 if (element == null) 11298 return; 11299 Complex t; 11300 if (Utilities.noString(parentType)) 11301 t = parent; 11302 else { 11303 t = parent.predicate("fhir:"+name,index > -1); 11304 } 11305 composeBackboneElement(t, "diagnosis", name, element, index); 11306 for (int i = 0; i < element.getCondition().size(); i++) { 11307 composeCodeableReference(t, "DiagnosisComponent", "condition", element.getCondition().get(i), i); 11308 } 11309 if (element.hasUse()) { 11310 composeCodeableConcept(t, "DiagnosisComponent", "use", element.getUse(), -1); 11311 } 11312 } 11313 11314 protected void composeEventDefinition(Complex parent, String parentType, String name, EventDefinition element, int index) { 11315 if (element == null) 11316 return; 11317 Complex t; 11318 if (Utilities.noString(parentType)) 11319 t = parent; 11320 else { 11321 t = parent.predicate("fhir:"+name,index > -1); 11322 } 11323 composeMetadataResource(t, "EventDefinition", name, element, index); 11324 if (element.hasUrlElement()) { 11325 composeUri(t, "EventDefinition", "url", element.getUrlElement(), -1); 11326 } 11327 for (int i = 0; i < element.getIdentifier().size(); i++) { 11328 composeIdentifier(t, "EventDefinition", "identifier", element.getIdentifier().get(i), i); 11329 } 11330 if (element.hasVersionElement()) { 11331 composeString(t, "EventDefinition", "version", element.getVersionElement(), -1); 11332 } 11333 if (element.hasVersionAlgorithm()) { 11334 composeType(t, "EventDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 11335 } 11336 if (element.hasNameElement()) { 11337 composeString(t, "EventDefinition", "name", element.getNameElement(), -1); 11338 } 11339 if (element.hasTitleElement()) { 11340 composeString(t, "EventDefinition", "title", element.getTitleElement(), -1); 11341 } 11342 if (element.hasSubtitleElement()) { 11343 composeString(t, "EventDefinition", "subtitle", element.getSubtitleElement(), -1); 11344 } 11345 if (element.hasStatusElement()) { 11346 composeEnum(t, "EventDefinition", "status", element.getStatusElement(), -1); 11347 } 11348 if (element.hasExperimentalElement()) { 11349 composeBoolean(t, "EventDefinition", "experimental", element.getExperimentalElement(), -1); 11350 } 11351 if (element.hasSubject()) { 11352 composeType(t, "EventDefinition", "subject", element.getSubject(), -1); 11353 } 11354 if (element.hasDateElement()) { 11355 composeDateTime(t, "EventDefinition", "date", element.getDateElement(), -1); 11356 } 11357 if (element.hasPublisherElement()) { 11358 composeString(t, "EventDefinition", "publisher", element.getPublisherElement(), -1); 11359 } 11360 for (int i = 0; i < element.getContact().size(); i++) { 11361 composeContactDetail(t, "EventDefinition", "contact", element.getContact().get(i), i); 11362 } 11363 if (element.hasDescriptionElement()) { 11364 composeMarkdown(t, "EventDefinition", "description", element.getDescriptionElement(), -1); 11365 } 11366 for (int i = 0; i < element.getUseContext().size(); i++) { 11367 composeUsageContext(t, "EventDefinition", "useContext", element.getUseContext().get(i), i); 11368 } 11369 for (int i = 0; i < element.getJurisdiction().size(); i++) { 11370 composeCodeableConcept(t, "EventDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 11371 } 11372 if (element.hasPurposeElement()) { 11373 composeMarkdown(t, "EventDefinition", "purpose", element.getPurposeElement(), -1); 11374 } 11375 if (element.hasUsageElement()) { 11376 composeMarkdown(t, "EventDefinition", "usage", element.getUsageElement(), -1); 11377 } 11378 if (element.hasCopyrightElement()) { 11379 composeMarkdown(t, "EventDefinition", "copyright", element.getCopyrightElement(), -1); 11380 } 11381 if (element.hasCopyrightLabelElement()) { 11382 composeString(t, "EventDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 11383 } 11384 if (element.hasApprovalDateElement()) { 11385 composeDate(t, "EventDefinition", "approvalDate", element.getApprovalDateElement(), -1); 11386 } 11387 if (element.hasLastReviewDateElement()) { 11388 composeDate(t, "EventDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 11389 } 11390 if (element.hasEffectivePeriod()) { 11391 composePeriod(t, "EventDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 11392 } 11393 for (int i = 0; i < element.getTopic().size(); i++) { 11394 composeCodeableConcept(t, "EventDefinition", "topic", element.getTopic().get(i), i); 11395 } 11396 for (int i = 0; i < element.getAuthor().size(); i++) { 11397 composeContactDetail(t, "EventDefinition", "author", element.getAuthor().get(i), i); 11398 } 11399 for (int i = 0; i < element.getEditor().size(); i++) { 11400 composeContactDetail(t, "EventDefinition", "editor", element.getEditor().get(i), i); 11401 } 11402 for (int i = 0; i < element.getReviewer().size(); i++) { 11403 composeContactDetail(t, "EventDefinition", "reviewer", element.getReviewer().get(i), i); 11404 } 11405 for (int i = 0; i < element.getEndorser().size(); i++) { 11406 composeContactDetail(t, "EventDefinition", "endorser", element.getEndorser().get(i), i); 11407 } 11408 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 11409 composeRelatedArtifact(t, "EventDefinition", "relatedArtifact", element.getRelatedArtifact().get(i), i); 11410 } 11411 for (int i = 0; i < element.getTrigger().size(); i++) { 11412 composeTriggerDefinition(t, "EventDefinition", "trigger", element.getTrigger().get(i), i); 11413 } 11414 } 11415 11416 protected void composeEvidence(Complex parent, String parentType, String name, Evidence element, int index) { 11417 if (element == null) 11418 return; 11419 Complex t; 11420 if (Utilities.noString(parentType)) 11421 t = parent; 11422 else { 11423 t = parent.predicate("fhir:"+name,index > -1); 11424 } 11425 composeMetadataResource(t, "Evidence", name, element, index); 11426 if (element.hasUrlElement()) { 11427 composeUri(t, "Evidence", "url", element.getUrlElement(), -1); 11428 } 11429 for (int i = 0; i < element.getIdentifier().size(); i++) { 11430 composeIdentifier(t, "Evidence", "identifier", element.getIdentifier().get(i), i); 11431 } 11432 if (element.hasVersionElement()) { 11433 composeString(t, "Evidence", "version", element.getVersionElement(), -1); 11434 } 11435 if (element.hasVersionAlgorithm()) { 11436 composeType(t, "Evidence", "versionAlgorithm", element.getVersionAlgorithm(), -1); 11437 } 11438 if (element.hasNameElement()) { 11439 composeString(t, "Evidence", "name", element.getNameElement(), -1); 11440 } 11441 if (element.hasTitleElement()) { 11442 composeString(t, "Evidence", "title", element.getTitleElement(), -1); 11443 } 11444 if (element.hasCiteAs()) { 11445 composeType(t, "Evidence", "citeAs", element.getCiteAs(), -1); 11446 } 11447 if (element.hasStatusElement()) { 11448 composeEnum(t, "Evidence", "status", element.getStatusElement(), -1); 11449 } 11450 if (element.hasExperimentalElement()) { 11451 composeBoolean(t, "Evidence", "experimental", element.getExperimentalElement(), -1); 11452 } 11453 if (element.hasDateElement()) { 11454 composeDateTime(t, "Evidence", "date", element.getDateElement(), -1); 11455 } 11456 if (element.hasApprovalDateElement()) { 11457 composeDate(t, "Evidence", "approvalDate", element.getApprovalDateElement(), -1); 11458 } 11459 if (element.hasLastReviewDateElement()) { 11460 composeDate(t, "Evidence", "lastReviewDate", element.getLastReviewDateElement(), -1); 11461 } 11462 if (element.hasPublisherElement()) { 11463 composeString(t, "Evidence", "publisher", element.getPublisherElement(), -1); 11464 } 11465 for (int i = 0; i < element.getContact().size(); i++) { 11466 composeContactDetail(t, "Evidence", "contact", element.getContact().get(i), i); 11467 } 11468 for (int i = 0; i < element.getAuthor().size(); i++) { 11469 composeContactDetail(t, "Evidence", "author", element.getAuthor().get(i), i); 11470 } 11471 for (int i = 0; i < element.getEditor().size(); i++) { 11472 composeContactDetail(t, "Evidence", "editor", element.getEditor().get(i), i); 11473 } 11474 for (int i = 0; i < element.getReviewer().size(); i++) { 11475 composeContactDetail(t, "Evidence", "reviewer", element.getReviewer().get(i), i); 11476 } 11477 for (int i = 0; i < element.getEndorser().size(); i++) { 11478 composeContactDetail(t, "Evidence", "endorser", element.getEndorser().get(i), i); 11479 } 11480 for (int i = 0; i < element.getUseContext().size(); i++) { 11481 composeUsageContext(t, "Evidence", "useContext", element.getUseContext().get(i), i); 11482 } 11483 if (element.hasPurposeElement()) { 11484 composeMarkdown(t, "Evidence", "purpose", element.getPurposeElement(), -1); 11485 } 11486 if (element.hasCopyrightElement()) { 11487 composeMarkdown(t, "Evidence", "copyright", element.getCopyrightElement(), -1); 11488 } 11489 if (element.hasCopyrightLabelElement()) { 11490 composeString(t, "Evidence", "copyrightLabel", element.getCopyrightLabelElement(), -1); 11491 } 11492 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 11493 composeRelatedArtifact(t, "Evidence", "relatedArtifact", element.getRelatedArtifact().get(i), i); 11494 } 11495 if (element.hasDescriptionElement()) { 11496 composeMarkdown(t, "Evidence", "description", element.getDescriptionElement(), -1); 11497 } 11498 if (element.hasAssertionElement()) { 11499 composeMarkdown(t, "Evidence", "assertion", element.getAssertionElement(), -1); 11500 } 11501 for (int i = 0; i < element.getNote().size(); i++) { 11502 composeAnnotation(t, "Evidence", "note", element.getNote().get(i), i); 11503 } 11504 for (int i = 0; i < element.getVariableDefinition().size(); i++) { 11505 composeEvidenceVariableDefinitionComponent(t, "Evidence", "variableDefinition", element.getVariableDefinition().get(i), i); 11506 } 11507 if (element.hasSynthesisType()) { 11508 composeCodeableConcept(t, "Evidence", "synthesisType", element.getSynthesisType(), -1); 11509 } 11510 for (int i = 0; i < element.getStudyDesign().size(); i++) { 11511 composeCodeableConcept(t, "Evidence", "studyDesign", element.getStudyDesign().get(i), i); 11512 } 11513 for (int i = 0; i < element.getStatistic().size(); i++) { 11514 composeEvidenceStatisticComponent(t, "Evidence", "statistic", element.getStatistic().get(i), i); 11515 } 11516 for (int i = 0; i < element.getCertainty().size(); i++) { 11517 composeEvidenceCertaintyComponent(t, "Evidence", "certainty", element.getCertainty().get(i), i); 11518 } 11519 } 11520 11521 protected void composeEvidenceVariableDefinitionComponent(Complex parent, String parentType, String name, Evidence.EvidenceVariableDefinitionComponent element, int index) { 11522 if (element == null) 11523 return; 11524 Complex t; 11525 if (Utilities.noString(parentType)) 11526 t = parent; 11527 else { 11528 t = parent.predicate("fhir:"+name,index > -1); 11529 } 11530 composeBackboneElement(t, "variableDefinition", name, element, index); 11531 if (element.hasDescriptionElement()) { 11532 composeMarkdown(t, "EvidenceVariableDefinitionComponent", "description", element.getDescriptionElement(), -1); 11533 } 11534 for (int i = 0; i < element.getNote().size(); i++) { 11535 composeAnnotation(t, "EvidenceVariableDefinitionComponent", "note", element.getNote().get(i), i); 11536 } 11537 if (element.hasVariableRole()) { 11538 composeCodeableConcept(t, "EvidenceVariableDefinitionComponent", "variableRole", element.getVariableRole(), -1); 11539 } 11540 if (element.hasObserved()) { 11541 composeReference(t, "EvidenceVariableDefinitionComponent", "observed", element.getObserved(), -1); 11542 } 11543 if (element.hasIntended()) { 11544 composeReference(t, "EvidenceVariableDefinitionComponent", "intended", element.getIntended(), -1); 11545 } 11546 if (element.hasDirectnessMatch()) { 11547 composeCodeableConcept(t, "EvidenceVariableDefinitionComponent", "directnessMatch", element.getDirectnessMatch(), -1); 11548 } 11549 } 11550 11551 protected void composeEvidenceStatisticComponent(Complex parent, String parentType, String name, Evidence.EvidenceStatisticComponent element, int index) { 11552 if (element == null) 11553 return; 11554 Complex t; 11555 if (Utilities.noString(parentType)) 11556 t = parent; 11557 else { 11558 t = parent.predicate("fhir:"+name,index > -1); 11559 } 11560 composeBackboneElement(t, "statistic", name, element, index); 11561 if (element.hasDescriptionElement()) { 11562 composeMarkdown(t, "EvidenceStatisticComponent", "description", element.getDescriptionElement(), -1); 11563 } 11564 for (int i = 0; i < element.getNote().size(); i++) { 11565 composeAnnotation(t, "EvidenceStatisticComponent", "note", element.getNote().get(i), i); 11566 } 11567 if (element.hasStatisticType()) { 11568 composeCodeableConcept(t, "EvidenceStatisticComponent", "statisticType", element.getStatisticType(), -1); 11569 } 11570 if (element.hasCategory()) { 11571 composeCodeableConcept(t, "EvidenceStatisticComponent", "category", element.getCategory(), -1); 11572 } 11573 if (element.hasQuantity()) { 11574 composeQuantity(t, "EvidenceStatisticComponent", "quantity", element.getQuantity(), -1); 11575 } 11576 if (element.hasNumberOfEventsElement()) { 11577 composeUnsignedInt(t, "EvidenceStatisticComponent", "numberOfEvents", element.getNumberOfEventsElement(), -1); 11578 } 11579 if (element.hasNumberAffectedElement()) { 11580 composeUnsignedInt(t, "EvidenceStatisticComponent", "numberAffected", element.getNumberAffectedElement(), -1); 11581 } 11582 if (element.hasSampleSize()) { 11583 composeEvidenceStatisticSampleSizeComponent(t, "EvidenceStatisticComponent", "sampleSize", element.getSampleSize(), -1); 11584 } 11585 for (int i = 0; i < element.getAttributeEstimate().size(); i++) { 11586 composeEvidenceStatisticAttributeEstimateComponent(t, "EvidenceStatisticComponent", "attributeEstimate", element.getAttributeEstimate().get(i), i); 11587 } 11588 for (int i = 0; i < element.getModelCharacteristic().size(); i++) { 11589 composeEvidenceStatisticModelCharacteristicComponent(t, "EvidenceStatisticComponent", "modelCharacteristic", element.getModelCharacteristic().get(i), i); 11590 } 11591 } 11592 11593 protected void composeEvidenceStatisticSampleSizeComponent(Complex parent, String parentType, String name, Evidence.EvidenceStatisticSampleSizeComponent element, int index) { 11594 if (element == null) 11595 return; 11596 Complex t; 11597 if (Utilities.noString(parentType)) 11598 t = parent; 11599 else { 11600 t = parent.predicate("fhir:"+name,index > -1); 11601 } 11602 composeBackboneElement(t, "sampleSize", name, element, index); 11603 if (element.hasDescriptionElement()) { 11604 composeMarkdown(t, "EvidenceStatisticSampleSizeComponent", "description", element.getDescriptionElement(), -1); 11605 } 11606 for (int i = 0; i < element.getNote().size(); i++) { 11607 composeAnnotation(t, "EvidenceStatisticSampleSizeComponent", "note", element.getNote().get(i), i); 11608 } 11609 if (element.hasNumberOfStudiesElement()) { 11610 composeUnsignedInt(t, "EvidenceStatisticSampleSizeComponent", "numberOfStudies", element.getNumberOfStudiesElement(), -1); 11611 } 11612 if (element.hasNumberOfParticipantsElement()) { 11613 composeUnsignedInt(t, "EvidenceStatisticSampleSizeComponent", "numberOfParticipants", element.getNumberOfParticipantsElement(), -1); 11614 } 11615 if (element.hasKnownDataCountElement()) { 11616 composeUnsignedInt(t, "EvidenceStatisticSampleSizeComponent", "knownDataCount", element.getKnownDataCountElement(), -1); 11617 } 11618 } 11619 11620 protected void composeEvidenceStatisticAttributeEstimateComponent(Complex parent, String parentType, String name, Evidence.EvidenceStatisticAttributeEstimateComponent element, int index) { 11621 if (element == null) 11622 return; 11623 Complex t; 11624 if (Utilities.noString(parentType)) 11625 t = parent; 11626 else { 11627 t = parent.predicate("fhir:"+name,index > -1); 11628 } 11629 composeBackboneElement(t, "attributeEstimate", name, element, index); 11630 if (element.hasDescriptionElement()) { 11631 composeMarkdown(t, "EvidenceStatisticAttributeEstimateComponent", "description", element.getDescriptionElement(), -1); 11632 } 11633 for (int i = 0; i < element.getNote().size(); i++) { 11634 composeAnnotation(t, "EvidenceStatisticAttributeEstimateComponent", "note", element.getNote().get(i), i); 11635 } 11636 if (element.hasType()) { 11637 composeCodeableConcept(t, "EvidenceStatisticAttributeEstimateComponent", "type", element.getType(), -1); 11638 } 11639 if (element.hasQuantity()) { 11640 composeQuantity(t, "EvidenceStatisticAttributeEstimateComponent", "quantity", element.getQuantity(), -1); 11641 } 11642 if (element.hasLevelElement()) { 11643 composeDecimal(t, "EvidenceStatisticAttributeEstimateComponent", "level", element.getLevelElement(), -1); 11644 } 11645 if (element.hasRange()) { 11646 composeRange(t, "EvidenceStatisticAttributeEstimateComponent", "range", element.getRange(), -1); 11647 } 11648 for (int i = 0; i < element.getAttributeEstimate().size(); i++) { 11649 composeEvidenceStatisticAttributeEstimateComponent(t, "EvidenceStatisticAttributeEstimateComponent", "attributeEstimate", element.getAttributeEstimate().get(i), i); 11650 } 11651 } 11652 11653 protected void composeEvidenceStatisticModelCharacteristicComponent(Complex parent, String parentType, String name, Evidence.EvidenceStatisticModelCharacteristicComponent element, int index) { 11654 if (element == null) 11655 return; 11656 Complex t; 11657 if (Utilities.noString(parentType)) 11658 t = parent; 11659 else { 11660 t = parent.predicate("fhir:"+name,index > -1); 11661 } 11662 composeBackboneElement(t, "modelCharacteristic", name, element, index); 11663 if (element.hasCode()) { 11664 composeCodeableConcept(t, "EvidenceStatisticModelCharacteristicComponent", "code", element.getCode(), -1); 11665 } 11666 if (element.hasValue()) { 11667 composeQuantity(t, "EvidenceStatisticModelCharacteristicComponent", "value", element.getValue(), -1); 11668 } 11669 for (int i = 0; i < element.getVariable().size(); i++) { 11670 composeEvidenceStatisticModelCharacteristicVariableComponent(t, "EvidenceStatisticModelCharacteristicComponent", "variable", element.getVariable().get(i), i); 11671 } 11672 for (int i = 0; i < element.getAttributeEstimate().size(); i++) { 11673 composeEvidenceStatisticAttributeEstimateComponent(t, "EvidenceStatisticModelCharacteristicComponent", "attributeEstimate", element.getAttributeEstimate().get(i), i); 11674 } 11675 } 11676 11677 protected void composeEvidenceStatisticModelCharacteristicVariableComponent(Complex parent, String parentType, String name, Evidence.EvidenceStatisticModelCharacteristicVariableComponent element, int index) { 11678 if (element == null) 11679 return; 11680 Complex t; 11681 if (Utilities.noString(parentType)) 11682 t = parent; 11683 else { 11684 t = parent.predicate("fhir:"+name,index > -1); 11685 } 11686 composeBackboneElement(t, "variable", name, element, index); 11687 if (element.hasVariableDefinition()) { 11688 composeReference(t, "EvidenceStatisticModelCharacteristicVariableComponent", "variableDefinition", element.getVariableDefinition(), -1); 11689 } 11690 if (element.hasHandlingElement()) { 11691 composeEnum(t, "EvidenceStatisticModelCharacteristicVariableComponent", "handling", element.getHandlingElement(), -1); 11692 } 11693 for (int i = 0; i < element.getValueCategory().size(); i++) { 11694 composeCodeableConcept(t, "EvidenceStatisticModelCharacteristicVariableComponent", "valueCategory", element.getValueCategory().get(i), i); 11695 } 11696 for (int i = 0; i < element.getValueQuantity().size(); i++) { 11697 composeQuantity(t, "EvidenceStatisticModelCharacteristicVariableComponent", "valueQuantity", element.getValueQuantity().get(i), i); 11698 } 11699 for (int i = 0; i < element.getValueRange().size(); i++) { 11700 composeRange(t, "EvidenceStatisticModelCharacteristicVariableComponent", "valueRange", element.getValueRange().get(i), i); 11701 } 11702 } 11703 11704 protected void composeEvidenceCertaintyComponent(Complex parent, String parentType, String name, Evidence.EvidenceCertaintyComponent element, int index) { 11705 if (element == null) 11706 return; 11707 Complex t; 11708 if (Utilities.noString(parentType)) 11709 t = parent; 11710 else { 11711 t = parent.predicate("fhir:"+name,index > -1); 11712 } 11713 composeBackboneElement(t, "certainty", name, element, index); 11714 if (element.hasDescriptionElement()) { 11715 composeMarkdown(t, "EvidenceCertaintyComponent", "description", element.getDescriptionElement(), -1); 11716 } 11717 for (int i = 0; i < element.getNote().size(); i++) { 11718 composeAnnotation(t, "EvidenceCertaintyComponent", "note", element.getNote().get(i), i); 11719 } 11720 if (element.hasType()) { 11721 composeCodeableConcept(t, "EvidenceCertaintyComponent", "type", element.getType(), -1); 11722 } 11723 if (element.hasRating()) { 11724 composeCodeableConcept(t, "EvidenceCertaintyComponent", "rating", element.getRating(), -1); 11725 } 11726 if (element.hasRaterElement()) { 11727 composeString(t, "EvidenceCertaintyComponent", "rater", element.getRaterElement(), -1); 11728 } 11729 for (int i = 0; i < element.getSubcomponent().size(); i++) { 11730 composeEvidenceCertaintyComponent(t, "EvidenceCertaintyComponent", "subcomponent", element.getSubcomponent().get(i), i); 11731 } 11732 } 11733 11734 protected void composeEvidenceReport(Complex parent, String parentType, String name, EvidenceReport element, int index) { 11735 if (element == null) 11736 return; 11737 Complex t; 11738 if (Utilities.noString(parentType)) 11739 t = parent; 11740 else { 11741 t = parent.predicate("fhir:"+name,index > -1); 11742 } 11743 composeMetadataResource(t, "EvidenceReport", name, element, index); 11744 if (element.hasUrlElement()) { 11745 composeUri(t, "EvidenceReport", "url", element.getUrlElement(), -1); 11746 } 11747 if (element.hasStatusElement()) { 11748 composeEnum(t, "EvidenceReport", "status", element.getStatusElement(), -1); 11749 } 11750 for (int i = 0; i < element.getUseContext().size(); i++) { 11751 composeUsageContext(t, "EvidenceReport", "useContext", element.getUseContext().get(i), i); 11752 } 11753 for (int i = 0; i < element.getIdentifier().size(); i++) { 11754 composeIdentifier(t, "EvidenceReport", "identifier", element.getIdentifier().get(i), i); 11755 } 11756 for (int i = 0; i < element.getRelatedIdentifier().size(); i++) { 11757 composeIdentifier(t, "EvidenceReport", "relatedIdentifier", element.getRelatedIdentifier().get(i), i); 11758 } 11759 if (element.hasCiteAs()) { 11760 composeType(t, "EvidenceReport", "citeAs", element.getCiteAs(), -1); 11761 } 11762 if (element.hasType()) { 11763 composeCodeableConcept(t, "EvidenceReport", "type", element.getType(), -1); 11764 } 11765 for (int i = 0; i < element.getNote().size(); i++) { 11766 composeAnnotation(t, "EvidenceReport", "note", element.getNote().get(i), i); 11767 } 11768 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 11769 composeRelatedArtifact(t, "EvidenceReport", "relatedArtifact", element.getRelatedArtifact().get(i), i); 11770 } 11771 if (element.hasSubject()) { 11772 composeEvidenceReportSubjectComponent(t, "EvidenceReport", "subject", element.getSubject(), -1); 11773 } 11774 if (element.hasPublisherElement()) { 11775 composeString(t, "EvidenceReport", "publisher", element.getPublisherElement(), -1); 11776 } 11777 for (int i = 0; i < element.getContact().size(); i++) { 11778 composeContactDetail(t, "EvidenceReport", "contact", element.getContact().get(i), i); 11779 } 11780 for (int i = 0; i < element.getAuthor().size(); i++) { 11781 composeContactDetail(t, "EvidenceReport", "author", element.getAuthor().get(i), i); 11782 } 11783 for (int i = 0; i < element.getEditor().size(); i++) { 11784 composeContactDetail(t, "EvidenceReport", "editor", element.getEditor().get(i), i); 11785 } 11786 for (int i = 0; i < element.getReviewer().size(); i++) { 11787 composeContactDetail(t, "EvidenceReport", "reviewer", element.getReviewer().get(i), i); 11788 } 11789 for (int i = 0; i < element.getEndorser().size(); i++) { 11790 composeContactDetail(t, "EvidenceReport", "endorser", element.getEndorser().get(i), i); 11791 } 11792 for (int i = 0; i < element.getRelatesTo().size(); i++) { 11793 composeEvidenceReportRelatesToComponent(t, "EvidenceReport", "relatesTo", element.getRelatesTo().get(i), i); 11794 } 11795 for (int i = 0; i < element.getSection().size(); i++) { 11796 composeEvidenceReportSectionComponent(t, "EvidenceReport", "section", element.getSection().get(i), i); 11797 } 11798 } 11799 11800 protected void composeEvidenceReportSubjectComponent(Complex parent, String parentType, String name, EvidenceReport.EvidenceReportSubjectComponent element, int index) { 11801 if (element == null) 11802 return; 11803 Complex t; 11804 if (Utilities.noString(parentType)) 11805 t = parent; 11806 else { 11807 t = parent.predicate("fhir:"+name,index > -1); 11808 } 11809 composeBackboneElement(t, "subject", name, element, index); 11810 for (int i = 0; i < element.getCharacteristic().size(); i++) { 11811 composeEvidenceReportSubjectCharacteristicComponent(t, "EvidenceReportSubjectComponent", "characteristic", element.getCharacteristic().get(i), i); 11812 } 11813 for (int i = 0; i < element.getNote().size(); i++) { 11814 composeAnnotation(t, "EvidenceReportSubjectComponent", "note", element.getNote().get(i), i); 11815 } 11816 } 11817 11818 protected void composeEvidenceReportSubjectCharacteristicComponent(Complex parent, String parentType, String name, EvidenceReport.EvidenceReportSubjectCharacteristicComponent element, int index) { 11819 if (element == null) 11820 return; 11821 Complex t; 11822 if (Utilities.noString(parentType)) 11823 t = parent; 11824 else { 11825 t = parent.predicate("fhir:"+name,index > -1); 11826 } 11827 composeBackboneElement(t, "characteristic", name, element, index); 11828 if (element.hasCode()) { 11829 composeCodeableConcept(t, "EvidenceReportSubjectCharacteristicComponent", "code", element.getCode(), -1); 11830 } 11831 if (element.hasValue()) { 11832 composeType(t, "EvidenceReportSubjectCharacteristicComponent", "value", element.getValue(), -1); 11833 } 11834 if (element.hasExcludeElement()) { 11835 composeBoolean(t, "EvidenceReportSubjectCharacteristicComponent", "exclude", element.getExcludeElement(), -1); 11836 } 11837 if (element.hasPeriod()) { 11838 composePeriod(t, "EvidenceReportSubjectCharacteristicComponent", "period", element.getPeriod(), -1); 11839 } 11840 } 11841 11842 protected void composeEvidenceReportRelatesToComponent(Complex parent, String parentType, String name, EvidenceReport.EvidenceReportRelatesToComponent element, int index) { 11843 if (element == null) 11844 return; 11845 Complex t; 11846 if (Utilities.noString(parentType)) 11847 t = parent; 11848 else { 11849 t = parent.predicate("fhir:"+name,index > -1); 11850 } 11851 composeBackboneElement(t, "relatesTo", name, element, index); 11852 if (element.hasCodeElement()) { 11853 composeEnum(t, "EvidenceReportRelatesToComponent", "code", element.getCodeElement(), -1); 11854 } 11855 if (element.hasTarget()) { 11856 composeEvidenceReportRelatesToTargetComponent(t, "EvidenceReportRelatesToComponent", "target", element.getTarget(), -1); 11857 } 11858 } 11859 11860 protected void composeEvidenceReportRelatesToTargetComponent(Complex parent, String parentType, String name, EvidenceReport.EvidenceReportRelatesToTargetComponent element, int index) { 11861 if (element == null) 11862 return; 11863 Complex t; 11864 if (Utilities.noString(parentType)) 11865 t = parent; 11866 else { 11867 t = parent.predicate("fhir:"+name,index > -1); 11868 } 11869 composeBackboneElement(t, "target", name, element, index); 11870 if (element.hasUrlElement()) { 11871 composeUri(t, "EvidenceReportRelatesToTargetComponent", "url", element.getUrlElement(), -1); 11872 } 11873 if (element.hasIdentifier()) { 11874 composeIdentifier(t, "EvidenceReportRelatesToTargetComponent", "identifier", element.getIdentifier(), -1); 11875 } 11876 if (element.hasDisplayElement()) { 11877 composeMarkdown(t, "EvidenceReportRelatesToTargetComponent", "display", element.getDisplayElement(), -1); 11878 } 11879 if (element.hasResource()) { 11880 composeReference(t, "EvidenceReportRelatesToTargetComponent", "resource", element.getResource(), -1); 11881 } 11882 } 11883 11884 protected void composeEvidenceReportSectionComponent(Complex parent, String parentType, String name, EvidenceReport.SectionComponent element, int index) { 11885 if (element == null) 11886 return; 11887 Complex t; 11888 if (Utilities.noString(parentType)) 11889 t = parent; 11890 else { 11891 t = parent.predicate("fhir:"+name,index > -1); 11892 } 11893 composeBackboneElement(t, "section", name, element, index); 11894 if (element.hasTitleElement()) { 11895 composeString(t, "SectionComponent", "title", element.getTitleElement(), -1); 11896 } 11897 if (element.hasFocus()) { 11898 composeCodeableConcept(t, "SectionComponent", "focus", element.getFocus(), -1); 11899 } 11900 if (element.hasFocusReference()) { 11901 composeReference(t, "SectionComponent", "focusReference", element.getFocusReference(), -1); 11902 } 11903 for (int i = 0; i < element.getAuthor().size(); i++) { 11904 composeReference(t, "SectionComponent", "author", element.getAuthor().get(i), i); 11905 } 11906 if (element.hasText()) { 11907 composeNarrative(t, "SectionComponent", "text", element.getText(), -1); 11908 } 11909 if (element.hasModeElement()) { 11910 composeEnum(t, "SectionComponent", "mode", element.getModeElement(), -1); 11911 } 11912 if (element.hasOrderedBy()) { 11913 composeCodeableConcept(t, "SectionComponent", "orderedBy", element.getOrderedBy(), -1); 11914 } 11915 for (int i = 0; i < element.getEntryClassifier().size(); i++) { 11916 composeCodeableConcept(t, "SectionComponent", "entryClassifier", element.getEntryClassifier().get(i), i); 11917 } 11918 for (int i = 0; i < element.getEntryReference().size(); i++) { 11919 composeReference(t, "SectionComponent", "entryReference", element.getEntryReference().get(i), i); 11920 } 11921 for (int i = 0; i < element.getEntryQuantity().size(); i++) { 11922 composeQuantity(t, "SectionComponent", "entryQuantity", element.getEntryQuantity().get(i), i); 11923 } 11924 if (element.hasEmptyReason()) { 11925 composeCodeableConcept(t, "SectionComponent", "emptyReason", element.getEmptyReason(), -1); 11926 } 11927 for (int i = 0; i < element.getSection().size(); i++) { 11928 composeEvidenceReportSectionComponent(t, "SectionComponent", "section", element.getSection().get(i), i); 11929 } 11930 } 11931 11932 protected void composeEvidenceVariable(Complex parent, String parentType, String name, EvidenceVariable element, int index) { 11933 if (element == null) 11934 return; 11935 Complex t; 11936 if (Utilities.noString(parentType)) 11937 t = parent; 11938 else { 11939 t = parent.predicate("fhir:"+name,index > -1); 11940 } 11941 composeMetadataResource(t, "EvidenceVariable", name, element, index); 11942 if (element.hasUrlElement()) { 11943 composeUri(t, "EvidenceVariable", "url", element.getUrlElement(), -1); 11944 } 11945 for (int i = 0; i < element.getIdentifier().size(); i++) { 11946 composeIdentifier(t, "EvidenceVariable", "identifier", element.getIdentifier().get(i), i); 11947 } 11948 if (element.hasVersionElement()) { 11949 composeString(t, "EvidenceVariable", "version", element.getVersionElement(), -1); 11950 } 11951 if (element.hasVersionAlgorithm()) { 11952 composeType(t, "EvidenceVariable", "versionAlgorithm", element.getVersionAlgorithm(), -1); 11953 } 11954 if (element.hasNameElement()) { 11955 composeString(t, "EvidenceVariable", "name", element.getNameElement(), -1); 11956 } 11957 if (element.hasTitleElement()) { 11958 composeString(t, "EvidenceVariable", "title", element.getTitleElement(), -1); 11959 } 11960 if (element.hasShortTitleElement()) { 11961 composeString(t, "EvidenceVariable", "shortTitle", element.getShortTitleElement(), -1); 11962 } 11963 if (element.hasStatusElement()) { 11964 composeEnum(t, "EvidenceVariable", "status", element.getStatusElement(), -1); 11965 } 11966 if (element.hasExperimentalElement()) { 11967 composeBoolean(t, "EvidenceVariable", "experimental", element.getExperimentalElement(), -1); 11968 } 11969 if (element.hasDateElement()) { 11970 composeDateTime(t, "EvidenceVariable", "date", element.getDateElement(), -1); 11971 } 11972 if (element.hasPublisherElement()) { 11973 composeString(t, "EvidenceVariable", "publisher", element.getPublisherElement(), -1); 11974 } 11975 for (int i = 0; i < element.getContact().size(); i++) { 11976 composeContactDetail(t, "EvidenceVariable", "contact", element.getContact().get(i), i); 11977 } 11978 if (element.hasDescriptionElement()) { 11979 composeMarkdown(t, "EvidenceVariable", "description", element.getDescriptionElement(), -1); 11980 } 11981 for (int i = 0; i < element.getNote().size(); i++) { 11982 composeAnnotation(t, "EvidenceVariable", "note", element.getNote().get(i), i); 11983 } 11984 for (int i = 0; i < element.getUseContext().size(); i++) { 11985 composeUsageContext(t, "EvidenceVariable", "useContext", element.getUseContext().get(i), i); 11986 } 11987 if (element.hasPurposeElement()) { 11988 composeMarkdown(t, "EvidenceVariable", "purpose", element.getPurposeElement(), -1); 11989 } 11990 if (element.hasCopyrightElement()) { 11991 composeMarkdown(t, "EvidenceVariable", "copyright", element.getCopyrightElement(), -1); 11992 } 11993 if (element.hasCopyrightLabelElement()) { 11994 composeString(t, "EvidenceVariable", "copyrightLabel", element.getCopyrightLabelElement(), -1); 11995 } 11996 if (element.hasApprovalDateElement()) { 11997 composeDate(t, "EvidenceVariable", "approvalDate", element.getApprovalDateElement(), -1); 11998 } 11999 if (element.hasLastReviewDateElement()) { 12000 composeDate(t, "EvidenceVariable", "lastReviewDate", element.getLastReviewDateElement(), -1); 12001 } 12002 if (element.hasEffectivePeriod()) { 12003 composePeriod(t, "EvidenceVariable", "effectivePeriod", element.getEffectivePeriod(), -1); 12004 } 12005 for (int i = 0; i < element.getAuthor().size(); i++) { 12006 composeContactDetail(t, "EvidenceVariable", "author", element.getAuthor().get(i), i); 12007 } 12008 for (int i = 0; i < element.getEditor().size(); i++) { 12009 composeContactDetail(t, "EvidenceVariable", "editor", element.getEditor().get(i), i); 12010 } 12011 for (int i = 0; i < element.getReviewer().size(); i++) { 12012 composeContactDetail(t, "EvidenceVariable", "reviewer", element.getReviewer().get(i), i); 12013 } 12014 for (int i = 0; i < element.getEndorser().size(); i++) { 12015 composeContactDetail(t, "EvidenceVariable", "endorser", element.getEndorser().get(i), i); 12016 } 12017 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 12018 composeRelatedArtifact(t, "EvidenceVariable", "relatedArtifact", element.getRelatedArtifact().get(i), i); 12019 } 12020 if (element.hasActualElement()) { 12021 composeBoolean(t, "EvidenceVariable", "actual", element.getActualElement(), -1); 12022 } 12023 for (int i = 0; i < element.getCharacteristic().size(); i++) { 12024 composeEvidenceVariableCharacteristicComponent(t, "EvidenceVariable", "characteristic", element.getCharacteristic().get(i), i); 12025 } 12026 if (element.hasHandlingElement()) { 12027 composeEnum(t, "EvidenceVariable", "handling", element.getHandlingElement(), -1); 12028 } 12029 for (int i = 0; i < element.getCategory().size(); i++) { 12030 composeEvidenceVariableCategoryComponent(t, "EvidenceVariable", "category", element.getCategory().get(i), i); 12031 } 12032 } 12033 12034 protected void composeEvidenceVariableCharacteristicComponent(Complex parent, String parentType, String name, EvidenceVariable.EvidenceVariableCharacteristicComponent element, int index) { 12035 if (element == null) 12036 return; 12037 Complex t; 12038 if (Utilities.noString(parentType)) 12039 t = parent; 12040 else { 12041 t = parent.predicate("fhir:"+name,index > -1); 12042 } 12043 composeBackboneElement(t, "characteristic", name, element, index); 12044 if (element.hasLinkIdElement()) { 12045 composeId(t, "EvidenceVariableCharacteristicComponent", "linkId", element.getLinkIdElement(), -1); 12046 } 12047 if (element.hasDescriptionElement()) { 12048 composeMarkdown(t, "EvidenceVariableCharacteristicComponent", "description", element.getDescriptionElement(), -1); 12049 } 12050 for (int i = 0; i < element.getNote().size(); i++) { 12051 composeAnnotation(t, "EvidenceVariableCharacteristicComponent", "note", element.getNote().get(i), i); 12052 } 12053 if (element.hasExcludeElement()) { 12054 composeBoolean(t, "EvidenceVariableCharacteristicComponent", "exclude", element.getExcludeElement(), -1); 12055 } 12056 if (element.hasDefinitionReference()) { 12057 composeReference(t, "EvidenceVariableCharacteristicComponent", "definitionReference", element.getDefinitionReference(), -1); 12058 } 12059 if (element.hasDefinitionCanonicalElement()) { 12060 composeCanonical(t, "EvidenceVariableCharacteristicComponent", "definitionCanonical", element.getDefinitionCanonicalElement(), -1); 12061 } 12062 if (element.hasDefinitionCodeableConcept()) { 12063 composeCodeableConcept(t, "EvidenceVariableCharacteristicComponent", "definitionCodeableConcept", element.getDefinitionCodeableConcept(), -1); 12064 } 12065 if (element.hasDefinitionExpression()) { 12066 composeExpression(t, "EvidenceVariableCharacteristicComponent", "definitionExpression", element.getDefinitionExpression(), -1); 12067 } 12068 if (element.hasDefinitionIdElement()) { 12069 composeId(t, "EvidenceVariableCharacteristicComponent", "definitionId", element.getDefinitionIdElement(), -1); 12070 } 12071 if (element.hasDefinitionByTypeAndValue()) { 12072 composeEvidenceVariableCharacteristicDefinitionByTypeAndValueComponent(t, "EvidenceVariableCharacteristicComponent", "definitionByTypeAndValue", element.getDefinitionByTypeAndValue(), -1); 12073 } 12074 if (element.hasDefinitionByCombination()) { 12075 composeEvidenceVariableCharacteristicDefinitionByCombinationComponent(t, "EvidenceVariableCharacteristicComponent", "definitionByCombination", element.getDefinitionByCombination(), -1); 12076 } 12077 if (element.hasInstances()) { 12078 composeType(t, "EvidenceVariableCharacteristicComponent", "instances", element.getInstances(), -1); 12079 } 12080 if (element.hasDuration()) { 12081 composeType(t, "EvidenceVariableCharacteristicComponent", "duration", element.getDuration(), -1); 12082 } 12083 for (int i = 0; i < element.getTimeFromEvent().size(); i++) { 12084 composeEvidenceVariableCharacteristicTimeFromEventComponent(t, "EvidenceVariableCharacteristicComponent", "timeFromEvent", element.getTimeFromEvent().get(i), i); 12085 } 12086 } 12087 12088 protected void composeEvidenceVariableCharacteristicDefinitionByTypeAndValueComponent(Complex parent, String parentType, String name, EvidenceVariable.EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent element, int index) { 12089 if (element == null) 12090 return; 12091 Complex t; 12092 if (Utilities.noString(parentType)) 12093 t = parent; 12094 else { 12095 t = parent.predicate("fhir:"+name,index > -1); 12096 } 12097 composeBackboneElement(t, "definitionByTypeAndValue", name, element, index); 12098 if (element.hasType()) { 12099 composeCodeableConcept(t, "EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent", "type", element.getType(), -1); 12100 } 12101 for (int i = 0; i < element.getMethod().size(); i++) { 12102 composeCodeableConcept(t, "EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent", "method", element.getMethod().get(i), i); 12103 } 12104 if (element.hasDevice()) { 12105 composeReference(t, "EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent", "device", element.getDevice(), -1); 12106 } 12107 if (element.hasValue()) { 12108 composeType(t, "EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent", "value", element.getValue(), -1); 12109 } 12110 if (element.hasOffset()) { 12111 composeCodeableConcept(t, "EvidenceVariableCharacteristicDefinitionByTypeAndValueComponent", "offset", element.getOffset(), -1); 12112 } 12113 } 12114 12115 protected void composeEvidenceVariableCharacteristicDefinitionByCombinationComponent(Complex parent, String parentType, String name, EvidenceVariable.EvidenceVariableCharacteristicDefinitionByCombinationComponent element, int index) { 12116 if (element == null) 12117 return; 12118 Complex t; 12119 if (Utilities.noString(parentType)) 12120 t = parent; 12121 else { 12122 t = parent.predicate("fhir:"+name,index > -1); 12123 } 12124 composeBackboneElement(t, "definitionByCombination", name, element, index); 12125 if (element.hasCodeElement()) { 12126 composeEnum(t, "EvidenceVariableCharacteristicDefinitionByCombinationComponent", "code", element.getCodeElement(), -1); 12127 } 12128 if (element.hasThresholdElement()) { 12129 composePositiveInt(t, "EvidenceVariableCharacteristicDefinitionByCombinationComponent", "threshold", element.getThresholdElement(), -1); 12130 } 12131 for (int i = 0; i < element.getCharacteristic().size(); i++) { 12132 composeEvidenceVariableCharacteristicComponent(t, "EvidenceVariableCharacteristicDefinitionByCombinationComponent", "characteristic", element.getCharacteristic().get(i), i); 12133 } 12134 } 12135 12136 protected void composeEvidenceVariableCharacteristicTimeFromEventComponent(Complex parent, String parentType, String name, EvidenceVariable.EvidenceVariableCharacteristicTimeFromEventComponent element, int index) { 12137 if (element == null) 12138 return; 12139 Complex t; 12140 if (Utilities.noString(parentType)) 12141 t = parent; 12142 else { 12143 t = parent.predicate("fhir:"+name,index > -1); 12144 } 12145 composeBackboneElement(t, "timeFromEvent", name, element, index); 12146 if (element.hasDescriptionElement()) { 12147 composeMarkdown(t, "EvidenceVariableCharacteristicTimeFromEventComponent", "description", element.getDescriptionElement(), -1); 12148 } 12149 for (int i = 0; i < element.getNote().size(); i++) { 12150 composeAnnotation(t, "EvidenceVariableCharacteristicTimeFromEventComponent", "note", element.getNote().get(i), i); 12151 } 12152 if (element.hasEvent()) { 12153 composeType(t, "EvidenceVariableCharacteristicTimeFromEventComponent", "event", element.getEvent(), -1); 12154 } 12155 if (element.hasQuantity()) { 12156 composeQuantity(t, "EvidenceVariableCharacteristicTimeFromEventComponent", "quantity", element.getQuantity(), -1); 12157 } 12158 if (element.hasRange()) { 12159 composeRange(t, "EvidenceVariableCharacteristicTimeFromEventComponent", "range", element.getRange(), -1); 12160 } 12161 } 12162 12163 protected void composeEvidenceVariableCategoryComponent(Complex parent, String parentType, String name, EvidenceVariable.EvidenceVariableCategoryComponent element, int index) { 12164 if (element == null) 12165 return; 12166 Complex t; 12167 if (Utilities.noString(parentType)) 12168 t = parent; 12169 else { 12170 t = parent.predicate("fhir:"+name,index > -1); 12171 } 12172 composeBackboneElement(t, "category", name, element, index); 12173 if (element.hasNameElement()) { 12174 composeString(t, "EvidenceVariableCategoryComponent", "name", element.getNameElement(), -1); 12175 } 12176 if (element.hasValue()) { 12177 composeType(t, "EvidenceVariableCategoryComponent", "value", element.getValue(), -1); 12178 } 12179 } 12180 12181 protected void composeExampleScenario(Complex parent, String parentType, String name, ExampleScenario element, int index) { 12182 if (element == null) 12183 return; 12184 Complex t; 12185 if (Utilities.noString(parentType)) 12186 t = parent; 12187 else { 12188 t = parent.predicate("fhir:"+name,index > -1); 12189 } 12190 composeCanonicalResource(t, "ExampleScenario", name, element, index); 12191 if (element.hasUrlElement()) { 12192 composeUri(t, "ExampleScenario", "url", element.getUrlElement(), -1); 12193 } 12194 for (int i = 0; i < element.getIdentifier().size(); i++) { 12195 composeIdentifier(t, "ExampleScenario", "identifier", element.getIdentifier().get(i), i); 12196 } 12197 if (element.hasVersionElement()) { 12198 composeString(t, "ExampleScenario", "version", element.getVersionElement(), -1); 12199 } 12200 if (element.hasVersionAlgorithm()) { 12201 composeType(t, "ExampleScenario", "versionAlgorithm", element.getVersionAlgorithm(), -1); 12202 } 12203 if (element.hasNameElement()) { 12204 composeString(t, "ExampleScenario", "name", element.getNameElement(), -1); 12205 } 12206 if (element.hasTitleElement()) { 12207 composeString(t, "ExampleScenario", "title", element.getTitleElement(), -1); 12208 } 12209 if (element.hasStatusElement()) { 12210 composeEnum(t, "ExampleScenario", "status", element.getStatusElement(), -1); 12211 } 12212 if (element.hasExperimentalElement()) { 12213 composeBoolean(t, "ExampleScenario", "experimental", element.getExperimentalElement(), -1); 12214 } 12215 if (element.hasDateElement()) { 12216 composeDateTime(t, "ExampleScenario", "date", element.getDateElement(), -1); 12217 } 12218 if (element.hasPublisherElement()) { 12219 composeString(t, "ExampleScenario", "publisher", element.getPublisherElement(), -1); 12220 } 12221 for (int i = 0; i < element.getContact().size(); i++) { 12222 composeContactDetail(t, "ExampleScenario", "contact", element.getContact().get(i), i); 12223 } 12224 if (element.hasDescriptionElement()) { 12225 composeMarkdown(t, "ExampleScenario", "description", element.getDescriptionElement(), -1); 12226 } 12227 for (int i = 0; i < element.getUseContext().size(); i++) { 12228 composeUsageContext(t, "ExampleScenario", "useContext", element.getUseContext().get(i), i); 12229 } 12230 for (int i = 0; i < element.getJurisdiction().size(); i++) { 12231 composeCodeableConcept(t, "ExampleScenario", "jurisdiction", element.getJurisdiction().get(i), i); 12232 } 12233 if (element.hasPurposeElement()) { 12234 composeMarkdown(t, "ExampleScenario", "purpose", element.getPurposeElement(), -1); 12235 } 12236 if (element.hasCopyrightElement()) { 12237 composeMarkdown(t, "ExampleScenario", "copyright", element.getCopyrightElement(), -1); 12238 } 12239 if (element.hasCopyrightLabelElement()) { 12240 composeString(t, "ExampleScenario", "copyrightLabel", element.getCopyrightLabelElement(), -1); 12241 } 12242 for (int i = 0; i < element.getActor().size(); i++) { 12243 composeExampleScenarioActorComponent(t, "ExampleScenario", "actor", element.getActor().get(i), i); 12244 } 12245 for (int i = 0; i < element.getInstance().size(); i++) { 12246 composeExampleScenarioInstanceComponent(t, "ExampleScenario", "instance", element.getInstance().get(i), i); 12247 } 12248 for (int i = 0; i < element.getProcess().size(); i++) { 12249 composeExampleScenarioProcessComponent(t, "ExampleScenario", "process", element.getProcess().get(i), i); 12250 } 12251 } 12252 12253 protected void composeExampleScenarioActorComponent(Complex parent, String parentType, String name, ExampleScenario.ExampleScenarioActorComponent element, int index) { 12254 if (element == null) 12255 return; 12256 Complex t; 12257 if (Utilities.noString(parentType)) 12258 t = parent; 12259 else { 12260 t = parent.predicate("fhir:"+name,index > -1); 12261 } 12262 composeBackboneElement(t, "actor", name, element, index); 12263 if (element.hasKeyElement()) { 12264 composeString(t, "ExampleScenarioActorComponent", "key", element.getKeyElement(), -1); 12265 } 12266 if (element.hasTypeElement()) { 12267 composeEnum(t, "ExampleScenarioActorComponent", "type", element.getTypeElement(), -1); 12268 } 12269 if (element.hasTitleElement()) { 12270 composeString(t, "ExampleScenarioActorComponent", "title", element.getTitleElement(), -1); 12271 } 12272 if (element.hasDescriptionElement()) { 12273 composeMarkdown(t, "ExampleScenarioActorComponent", "description", element.getDescriptionElement(), -1); 12274 } 12275 } 12276 12277 protected void composeExampleScenarioInstanceComponent(Complex parent, String parentType, String name, ExampleScenario.ExampleScenarioInstanceComponent element, int index) { 12278 if (element == null) 12279 return; 12280 Complex t; 12281 if (Utilities.noString(parentType)) 12282 t = parent; 12283 else { 12284 t = parent.predicate("fhir:"+name,index > -1); 12285 } 12286 composeBackboneElement(t, "instance", name, element, index); 12287 if (element.hasKeyElement()) { 12288 composeString(t, "ExampleScenarioInstanceComponent", "key", element.getKeyElement(), -1); 12289 } 12290 if (element.hasStructureType()) { 12291 composeCoding(t, "ExampleScenarioInstanceComponent", "structureType", element.getStructureType(), -1); 12292 } 12293 if (element.hasStructureVersionElement()) { 12294 composeString(t, "ExampleScenarioInstanceComponent", "structureVersion", element.getStructureVersionElement(), -1); 12295 } 12296 if (element.hasStructureProfile()) { 12297 composeType(t, "ExampleScenarioInstanceComponent", "structureProfile", element.getStructureProfile(), -1); 12298 } 12299 if (element.hasTitleElement()) { 12300 composeString(t, "ExampleScenarioInstanceComponent", "title", element.getTitleElement(), -1); 12301 } 12302 if (element.hasDescriptionElement()) { 12303 composeMarkdown(t, "ExampleScenarioInstanceComponent", "description", element.getDescriptionElement(), -1); 12304 } 12305 if (element.hasContent()) { 12306 composeReference(t, "ExampleScenarioInstanceComponent", "content", element.getContent(), -1); 12307 } 12308 for (int i = 0; i < element.getVersion().size(); i++) { 12309 composeExampleScenarioInstanceVersionComponent(t, "ExampleScenarioInstanceComponent", "version", element.getVersion().get(i), i); 12310 } 12311 for (int i = 0; i < element.getContainedInstance().size(); i++) { 12312 composeExampleScenarioInstanceContainedInstanceComponent(t, "ExampleScenarioInstanceComponent", "containedInstance", element.getContainedInstance().get(i), i); 12313 } 12314 } 12315 12316 protected void composeExampleScenarioInstanceVersionComponent(Complex parent, String parentType, String name, ExampleScenario.ExampleScenarioInstanceVersionComponent element, int index) { 12317 if (element == null) 12318 return; 12319 Complex t; 12320 if (Utilities.noString(parentType)) 12321 t = parent; 12322 else { 12323 t = parent.predicate("fhir:"+name,index > -1); 12324 } 12325 composeBackboneElement(t, "version", name, element, index); 12326 if (element.hasKeyElement()) { 12327 composeString(t, "ExampleScenarioInstanceVersionComponent", "key", element.getKeyElement(), -1); 12328 } 12329 if (element.hasTitleElement()) { 12330 composeString(t, "ExampleScenarioInstanceVersionComponent", "title", element.getTitleElement(), -1); 12331 } 12332 if (element.hasDescriptionElement()) { 12333 composeMarkdown(t, "ExampleScenarioInstanceVersionComponent", "description", element.getDescriptionElement(), -1); 12334 } 12335 if (element.hasContent()) { 12336 composeReference(t, "ExampleScenarioInstanceVersionComponent", "content", element.getContent(), -1); 12337 } 12338 } 12339 12340 protected void composeExampleScenarioInstanceContainedInstanceComponent(Complex parent, String parentType, String name, ExampleScenario.ExampleScenarioInstanceContainedInstanceComponent element, int index) { 12341 if (element == null) 12342 return; 12343 Complex t; 12344 if (Utilities.noString(parentType)) 12345 t = parent; 12346 else { 12347 t = parent.predicate("fhir:"+name,index > -1); 12348 } 12349 composeBackboneElement(t, "containedInstance", name, element, index); 12350 if (element.hasInstanceReferenceElement()) { 12351 composeString(t, "ExampleScenarioInstanceContainedInstanceComponent", "instanceReference", element.getInstanceReferenceElement(), -1); 12352 } 12353 if (element.hasVersionReferenceElement()) { 12354 composeString(t, "ExampleScenarioInstanceContainedInstanceComponent", "versionReference", element.getVersionReferenceElement(), -1); 12355 } 12356 } 12357 12358 protected void composeExampleScenarioProcessComponent(Complex parent, String parentType, String name, ExampleScenario.ExampleScenarioProcessComponent element, int index) { 12359 if (element == null) 12360 return; 12361 Complex t; 12362 if (Utilities.noString(parentType)) 12363 t = parent; 12364 else { 12365 t = parent.predicate("fhir:"+name,index > -1); 12366 } 12367 composeBackboneElement(t, "process", name, element, index); 12368 if (element.hasTitleElement()) { 12369 composeString(t, "ExampleScenarioProcessComponent", "title", element.getTitleElement(), -1); 12370 } 12371 if (element.hasDescriptionElement()) { 12372 composeMarkdown(t, "ExampleScenarioProcessComponent", "description", element.getDescriptionElement(), -1); 12373 } 12374 if (element.hasPreConditionsElement()) { 12375 composeMarkdown(t, "ExampleScenarioProcessComponent", "preConditions", element.getPreConditionsElement(), -1); 12376 } 12377 if (element.hasPostConditionsElement()) { 12378 composeMarkdown(t, "ExampleScenarioProcessComponent", "postConditions", element.getPostConditionsElement(), -1); 12379 } 12380 for (int i = 0; i < element.getStep().size(); i++) { 12381 composeExampleScenarioProcessStepComponent(t, "ExampleScenarioProcessComponent", "step", element.getStep().get(i), i); 12382 } 12383 } 12384 12385 protected void composeExampleScenarioProcessStepComponent(Complex parent, String parentType, String name, ExampleScenario.ExampleScenarioProcessStepComponent element, int index) { 12386 if (element == null) 12387 return; 12388 Complex t; 12389 if (Utilities.noString(parentType)) 12390 t = parent; 12391 else { 12392 t = parent.predicate("fhir:"+name,index > -1); 12393 } 12394 composeBackboneElement(t, "step", name, element, index); 12395 if (element.hasNumberElement()) { 12396 composeString(t, "ExampleScenarioProcessStepComponent", "number", element.getNumberElement(), -1); 12397 } 12398 if (element.hasProcess()) { 12399 composeExampleScenarioProcessComponent(t, "ExampleScenarioProcessStepComponent", "process", element.getProcess(), -1); 12400 } 12401 if (element.hasWorkflowElement()) { 12402 composeCanonical(t, "ExampleScenarioProcessStepComponent", "workflow", element.getWorkflowElement(), -1); 12403 } 12404 if (element.hasOperation()) { 12405 composeExampleScenarioProcessStepOperationComponent(t, "ExampleScenarioProcessStepComponent", "operation", element.getOperation(), -1); 12406 } 12407 for (int i = 0; i < element.getAlternative().size(); i++) { 12408 composeExampleScenarioProcessStepAlternativeComponent(t, "ExampleScenarioProcessStepComponent", "alternative", element.getAlternative().get(i), i); 12409 } 12410 if (element.hasPauseElement()) { 12411 composeBoolean(t, "ExampleScenarioProcessStepComponent", "pause", element.getPauseElement(), -1); 12412 } 12413 } 12414 12415 protected void composeExampleScenarioProcessStepOperationComponent(Complex parent, String parentType, String name, ExampleScenario.ExampleScenarioProcessStepOperationComponent element, int index) { 12416 if (element == null) 12417 return; 12418 Complex t; 12419 if (Utilities.noString(parentType)) 12420 t = parent; 12421 else { 12422 t = parent.predicate("fhir:"+name,index > -1); 12423 } 12424 composeBackboneElement(t, "operation", name, element, index); 12425 if (element.hasType()) { 12426 composeCoding(t, "ExampleScenarioProcessStepOperationComponent", "type", element.getType(), -1); 12427 } 12428 if (element.hasTitleElement()) { 12429 composeString(t, "ExampleScenarioProcessStepOperationComponent", "title", element.getTitleElement(), -1); 12430 } 12431 if (element.hasInitiatorElement()) { 12432 composeString(t, "ExampleScenarioProcessStepOperationComponent", "initiator", element.getInitiatorElement(), -1); 12433 } 12434 if (element.hasReceiverElement()) { 12435 composeString(t, "ExampleScenarioProcessStepOperationComponent", "receiver", element.getReceiverElement(), -1); 12436 } 12437 if (element.hasDescriptionElement()) { 12438 composeMarkdown(t, "ExampleScenarioProcessStepOperationComponent", "description", element.getDescriptionElement(), -1); 12439 } 12440 if (element.hasInitiatorActiveElement()) { 12441 composeBoolean(t, "ExampleScenarioProcessStepOperationComponent", "initiatorActive", element.getInitiatorActiveElement(), -1); 12442 } 12443 if (element.hasReceiverActiveElement()) { 12444 composeBoolean(t, "ExampleScenarioProcessStepOperationComponent", "receiverActive", element.getReceiverActiveElement(), -1); 12445 } 12446 if (element.hasRequest()) { 12447 composeExampleScenarioInstanceContainedInstanceComponent(t, "ExampleScenarioProcessStepOperationComponent", "request", element.getRequest(), -1); 12448 } 12449 if (element.hasResponse()) { 12450 composeExampleScenarioInstanceContainedInstanceComponent(t, "ExampleScenarioProcessStepOperationComponent", "response", element.getResponse(), -1); 12451 } 12452 } 12453 12454 protected void composeExampleScenarioProcessStepAlternativeComponent(Complex parent, String parentType, String name, ExampleScenario.ExampleScenarioProcessStepAlternativeComponent element, int index) { 12455 if (element == null) 12456 return; 12457 Complex t; 12458 if (Utilities.noString(parentType)) 12459 t = parent; 12460 else { 12461 t = parent.predicate("fhir:"+name,index > -1); 12462 } 12463 composeBackboneElement(t, "alternative", name, element, index); 12464 if (element.hasTitleElement()) { 12465 composeString(t, "ExampleScenarioProcessStepAlternativeComponent", "title", element.getTitleElement(), -1); 12466 } 12467 if (element.hasDescriptionElement()) { 12468 composeMarkdown(t, "ExampleScenarioProcessStepAlternativeComponent", "description", element.getDescriptionElement(), -1); 12469 } 12470 for (int i = 0; i < element.getStep().size(); i++) { 12471 composeExampleScenarioProcessStepComponent(t, "ExampleScenarioProcessStepAlternativeComponent", "step", element.getStep().get(i), i); 12472 } 12473 } 12474 12475 protected void composeExplanationOfBenefit(Complex parent, String parentType, String name, ExplanationOfBenefit element, int index) { 12476 if (element == null) 12477 return; 12478 Complex t; 12479 if (Utilities.noString(parentType)) 12480 t = parent; 12481 else { 12482 t = parent.predicate("fhir:"+name,index > -1); 12483 } 12484 composeDomainResource(t, "ExplanationOfBenefit", name, element, index); 12485 for (int i = 0; i < element.getIdentifier().size(); i++) { 12486 composeIdentifier(t, "ExplanationOfBenefit", "identifier", element.getIdentifier().get(i), i); 12487 } 12488 for (int i = 0; i < element.getTraceNumber().size(); i++) { 12489 composeIdentifier(t, "ExplanationOfBenefit", "traceNumber", element.getTraceNumber().get(i), i); 12490 } 12491 if (element.hasStatusElement()) { 12492 composeEnum(t, "ExplanationOfBenefit", "status", element.getStatusElement(), -1); 12493 } 12494 if (element.hasType()) { 12495 composeCodeableConcept(t, "ExplanationOfBenefit", "type", element.getType(), -1); 12496 } 12497 if (element.hasSubType()) { 12498 composeCodeableConcept(t, "ExplanationOfBenefit", "subType", element.getSubType(), -1); 12499 } 12500 if (element.hasUseElement()) { 12501 composeEnum(t, "ExplanationOfBenefit", "use", element.getUseElement(), -1); 12502 } 12503 if (element.hasPatient()) { 12504 composeReference(t, "ExplanationOfBenefit", "patient", element.getPatient(), -1); 12505 } 12506 if (element.hasBillablePeriod()) { 12507 composePeriod(t, "ExplanationOfBenefit", "billablePeriod", element.getBillablePeriod(), -1); 12508 } 12509 if (element.hasCreatedElement()) { 12510 composeDateTime(t, "ExplanationOfBenefit", "created", element.getCreatedElement(), -1); 12511 } 12512 if (element.hasEnterer()) { 12513 composeReference(t, "ExplanationOfBenefit", "enterer", element.getEnterer(), -1); 12514 } 12515 if (element.hasInsurer()) { 12516 composeReference(t, "ExplanationOfBenefit", "insurer", element.getInsurer(), -1); 12517 } 12518 if (element.hasProvider()) { 12519 composeReference(t, "ExplanationOfBenefit", "provider", element.getProvider(), -1); 12520 } 12521 if (element.hasPriority()) { 12522 composeCodeableConcept(t, "ExplanationOfBenefit", "priority", element.getPriority(), -1); 12523 } 12524 if (element.hasFundsReserveRequested()) { 12525 composeCodeableConcept(t, "ExplanationOfBenefit", "fundsReserveRequested", element.getFundsReserveRequested(), -1); 12526 } 12527 if (element.hasFundsReserve()) { 12528 composeCodeableConcept(t, "ExplanationOfBenefit", "fundsReserve", element.getFundsReserve(), -1); 12529 } 12530 for (int i = 0; i < element.getRelated().size(); i++) { 12531 composeExplanationOfBenefitRelatedClaimComponent(t, "ExplanationOfBenefit", "related", element.getRelated().get(i), i); 12532 } 12533 if (element.hasPrescription()) { 12534 composeReference(t, "ExplanationOfBenefit", "prescription", element.getPrescription(), -1); 12535 } 12536 if (element.hasOriginalPrescription()) { 12537 composeReference(t, "ExplanationOfBenefit", "originalPrescription", element.getOriginalPrescription(), -1); 12538 } 12539 for (int i = 0; i < element.getEvent().size(); i++) { 12540 composeExplanationOfBenefitEventComponent(t, "ExplanationOfBenefit", "event", element.getEvent().get(i), i); 12541 } 12542 if (element.hasPayee()) { 12543 composeExplanationOfBenefitPayeeComponent(t, "ExplanationOfBenefit", "payee", element.getPayee(), -1); 12544 } 12545 if (element.hasReferral()) { 12546 composeReference(t, "ExplanationOfBenefit", "referral", element.getReferral(), -1); 12547 } 12548 for (int i = 0; i < element.getEncounter().size(); i++) { 12549 composeReference(t, "ExplanationOfBenefit", "encounter", element.getEncounter().get(i), i); 12550 } 12551 if (element.hasFacility()) { 12552 composeReference(t, "ExplanationOfBenefit", "facility", element.getFacility(), -1); 12553 } 12554 if (element.hasClaim()) { 12555 composeReference(t, "ExplanationOfBenefit", "claim", element.getClaim(), -1); 12556 } 12557 if (element.hasClaimResponse()) { 12558 composeReference(t, "ExplanationOfBenefit", "claimResponse", element.getClaimResponse(), -1); 12559 } 12560 if (element.hasOutcomeElement()) { 12561 composeEnum(t, "ExplanationOfBenefit", "outcome", element.getOutcomeElement(), -1); 12562 } 12563 if (element.hasDecision()) { 12564 composeCodeableConcept(t, "ExplanationOfBenefit", "decision", element.getDecision(), -1); 12565 } 12566 if (element.hasDispositionElement()) { 12567 composeString(t, "ExplanationOfBenefit", "disposition", element.getDispositionElement(), -1); 12568 } 12569 for (int i = 0; i < element.getPreAuthRef().size(); i++) { 12570 composeString(t, "ExplanationOfBenefit", "preAuthRef", element.getPreAuthRef().get(i), i); 12571 } 12572 for (int i = 0; i < element.getPreAuthRefPeriod().size(); i++) { 12573 composePeriod(t, "ExplanationOfBenefit", "preAuthRefPeriod", element.getPreAuthRefPeriod().get(i), i); 12574 } 12575 if (element.hasDiagnosisRelatedGroup()) { 12576 composeCodeableConcept(t, "ExplanationOfBenefit", "diagnosisRelatedGroup", element.getDiagnosisRelatedGroup(), -1); 12577 } 12578 for (int i = 0; i < element.getCareTeam().size(); i++) { 12579 composeExplanationOfBenefitCareTeamComponent(t, "ExplanationOfBenefit", "careTeam", element.getCareTeam().get(i), i); 12580 } 12581 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 12582 composeExplanationOfBenefitSupportingInformationComponent(t, "ExplanationOfBenefit", "supportingInfo", element.getSupportingInfo().get(i), i); 12583 } 12584 for (int i = 0; i < element.getDiagnosis().size(); i++) { 12585 composeExplanationOfBenefitDiagnosisComponent(t, "ExplanationOfBenefit", "diagnosis", element.getDiagnosis().get(i), i); 12586 } 12587 for (int i = 0; i < element.getProcedure().size(); i++) { 12588 composeExplanationOfBenefitProcedureComponent(t, "ExplanationOfBenefit", "procedure", element.getProcedure().get(i), i); 12589 } 12590 if (element.hasPrecedenceElement()) { 12591 composePositiveInt(t, "ExplanationOfBenefit", "precedence", element.getPrecedenceElement(), -1); 12592 } 12593 for (int i = 0; i < element.getInsurance().size(); i++) { 12594 composeExplanationOfBenefitInsuranceComponent(t, "ExplanationOfBenefit", "insurance", element.getInsurance().get(i), i); 12595 } 12596 if (element.hasAccident()) { 12597 composeExplanationOfBenefitAccidentComponent(t, "ExplanationOfBenefit", "accident", element.getAccident(), -1); 12598 } 12599 if (element.hasPatientPaid()) { 12600 composeMoney(t, "ExplanationOfBenefit", "patientPaid", element.getPatientPaid(), -1); 12601 } 12602 for (int i = 0; i < element.getItem().size(); i++) { 12603 composeExplanationOfBenefitItemComponent(t, "ExplanationOfBenefit", "item", element.getItem().get(i), i); 12604 } 12605 for (int i = 0; i < element.getAddItem().size(); i++) { 12606 composeExplanationOfBenefitAddedItemComponent(t, "ExplanationOfBenefit", "addItem", element.getAddItem().get(i), i); 12607 } 12608 for (int i = 0; i < element.getAdjudication().size(); i++) { 12609 composeExplanationOfBenefitAdjudicationComponent(t, "ExplanationOfBenefit", "adjudication", element.getAdjudication().get(i), i); 12610 } 12611 for (int i = 0; i < element.getTotal().size(); i++) { 12612 composeExplanationOfBenefitTotalComponent(t, "ExplanationOfBenefit", "total", element.getTotal().get(i), i); 12613 } 12614 if (element.hasPayment()) { 12615 composeExplanationOfBenefitPaymentComponent(t, "ExplanationOfBenefit", "payment", element.getPayment(), -1); 12616 } 12617 if (element.hasFormCode()) { 12618 composeCodeableConcept(t, "ExplanationOfBenefit", "formCode", element.getFormCode(), -1); 12619 } 12620 if (element.hasForm()) { 12621 composeAttachment(t, "ExplanationOfBenefit", "form", element.getForm(), -1); 12622 } 12623 for (int i = 0; i < element.getProcessNote().size(); i++) { 12624 composeExplanationOfBenefitNoteComponent(t, "ExplanationOfBenefit", "processNote", element.getProcessNote().get(i), i); 12625 } 12626 if (element.hasBenefitPeriod()) { 12627 composePeriod(t, "ExplanationOfBenefit", "benefitPeriod", element.getBenefitPeriod(), -1); 12628 } 12629 for (int i = 0; i < element.getBenefitBalance().size(); i++) { 12630 composeExplanationOfBenefitBenefitBalanceComponent(t, "ExplanationOfBenefit", "benefitBalance", element.getBenefitBalance().get(i), i); 12631 } 12632 } 12633 12634 protected void composeExplanationOfBenefitRelatedClaimComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.RelatedClaimComponent element, int index) { 12635 if (element == null) 12636 return; 12637 Complex t; 12638 if (Utilities.noString(parentType)) 12639 t = parent; 12640 else { 12641 t = parent.predicate("fhir:"+name,index > -1); 12642 } 12643 composeBackboneElement(t, "related", name, element, index); 12644 if (element.hasClaim()) { 12645 composeReference(t, "RelatedClaimComponent", "claim", element.getClaim(), -1); 12646 } 12647 if (element.hasRelationship()) { 12648 composeCodeableConcept(t, "RelatedClaimComponent", "relationship", element.getRelationship(), -1); 12649 } 12650 if (element.hasReference()) { 12651 composeIdentifier(t, "RelatedClaimComponent", "reference", element.getReference(), -1); 12652 } 12653 } 12654 12655 protected void composeExplanationOfBenefitEventComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.ExplanationOfBenefitEventComponent element, int index) { 12656 if (element == null) 12657 return; 12658 Complex t; 12659 if (Utilities.noString(parentType)) 12660 t = parent; 12661 else { 12662 t = parent.predicate("fhir:"+name,index > -1); 12663 } 12664 composeBackboneElement(t, "event", name, element, index); 12665 if (element.hasType()) { 12666 composeCodeableConcept(t, "ExplanationOfBenefitEventComponent", "type", element.getType(), -1); 12667 } 12668 if (element.hasWhen()) { 12669 composeType(t, "ExplanationOfBenefitEventComponent", "when", element.getWhen(), -1); 12670 } 12671 } 12672 12673 protected void composeExplanationOfBenefitPayeeComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.PayeeComponent element, int index) { 12674 if (element == null) 12675 return; 12676 Complex t; 12677 if (Utilities.noString(parentType)) 12678 t = parent; 12679 else { 12680 t = parent.predicate("fhir:"+name,index > -1); 12681 } 12682 composeBackboneElement(t, "payee", name, element, index); 12683 if (element.hasType()) { 12684 composeCodeableConcept(t, "PayeeComponent", "type", element.getType(), -1); 12685 } 12686 if (element.hasParty()) { 12687 composeReference(t, "PayeeComponent", "party", element.getParty(), -1); 12688 } 12689 } 12690 12691 protected void composeExplanationOfBenefitCareTeamComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.CareTeamComponent element, int index) { 12692 if (element == null) 12693 return; 12694 Complex t; 12695 if (Utilities.noString(parentType)) 12696 t = parent; 12697 else { 12698 t = parent.predicate("fhir:"+name,index > -1); 12699 } 12700 composeBackboneElement(t, "careTeam", name, element, index); 12701 if (element.hasSequenceElement()) { 12702 composePositiveInt(t, "CareTeamComponent", "sequence", element.getSequenceElement(), -1); 12703 } 12704 if (element.hasProvider()) { 12705 composeReference(t, "CareTeamComponent", "provider", element.getProvider(), -1); 12706 } 12707 if (element.hasResponsibleElement()) { 12708 composeBoolean(t, "CareTeamComponent", "responsible", element.getResponsibleElement(), -1); 12709 } 12710 if (element.hasRole()) { 12711 composeCodeableConcept(t, "CareTeamComponent", "role", element.getRole(), -1); 12712 } 12713 if (element.hasSpecialty()) { 12714 composeCodeableConcept(t, "CareTeamComponent", "specialty", element.getSpecialty(), -1); 12715 } 12716 } 12717 12718 protected void composeExplanationOfBenefitSupportingInformationComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.SupportingInformationComponent element, int index) { 12719 if (element == null) 12720 return; 12721 Complex t; 12722 if (Utilities.noString(parentType)) 12723 t = parent; 12724 else { 12725 t = parent.predicate("fhir:"+name,index > -1); 12726 } 12727 composeBackboneElement(t, "supportingInfo", name, element, index); 12728 if (element.hasSequenceElement()) { 12729 composePositiveInt(t, "SupportingInformationComponent", "sequence", element.getSequenceElement(), -1); 12730 } 12731 if (element.hasCategory()) { 12732 composeCodeableConcept(t, "SupportingInformationComponent", "category", element.getCategory(), -1); 12733 } 12734 if (element.hasCode()) { 12735 composeCodeableConcept(t, "SupportingInformationComponent", "code", element.getCode(), -1); 12736 } 12737 if (element.hasTiming()) { 12738 composeType(t, "SupportingInformationComponent", "timing", element.getTiming(), -1); 12739 } 12740 if (element.hasValue()) { 12741 composeType(t, "SupportingInformationComponent", "value", element.getValue(), -1); 12742 } 12743 if (element.hasReason()) { 12744 composeCoding(t, "SupportingInformationComponent", "reason", element.getReason(), -1); 12745 } 12746 } 12747 12748 protected void composeExplanationOfBenefitDiagnosisComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.DiagnosisComponent element, int index) { 12749 if (element == null) 12750 return; 12751 Complex t; 12752 if (Utilities.noString(parentType)) 12753 t = parent; 12754 else { 12755 t = parent.predicate("fhir:"+name,index > -1); 12756 } 12757 composeBackboneElement(t, "diagnosis", name, element, index); 12758 if (element.hasSequenceElement()) { 12759 composePositiveInt(t, "DiagnosisComponent", "sequence", element.getSequenceElement(), -1); 12760 } 12761 if (element.hasDiagnosis()) { 12762 composeType(t, "DiagnosisComponent", "diagnosis", element.getDiagnosis(), -1); 12763 } 12764 for (int i = 0; i < element.getType().size(); i++) { 12765 composeCodeableConcept(t, "DiagnosisComponent", "type", element.getType().get(i), i); 12766 } 12767 if (element.hasOnAdmission()) { 12768 composeCodeableConcept(t, "DiagnosisComponent", "onAdmission", element.getOnAdmission(), -1); 12769 } 12770 } 12771 12772 protected void composeExplanationOfBenefitProcedureComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.ProcedureComponent element, int index) { 12773 if (element == null) 12774 return; 12775 Complex t; 12776 if (Utilities.noString(parentType)) 12777 t = parent; 12778 else { 12779 t = parent.predicate("fhir:"+name,index > -1); 12780 } 12781 composeBackboneElement(t, "procedure", name, element, index); 12782 if (element.hasSequenceElement()) { 12783 composePositiveInt(t, "ProcedureComponent", "sequence", element.getSequenceElement(), -1); 12784 } 12785 for (int i = 0; i < element.getType().size(); i++) { 12786 composeCodeableConcept(t, "ProcedureComponent", "type", element.getType().get(i), i); 12787 } 12788 if (element.hasDateElement()) { 12789 composeDateTime(t, "ProcedureComponent", "date", element.getDateElement(), -1); 12790 } 12791 if (element.hasProcedure()) { 12792 composeType(t, "ProcedureComponent", "procedure", element.getProcedure(), -1); 12793 } 12794 for (int i = 0; i < element.getUdi().size(); i++) { 12795 composeReference(t, "ProcedureComponent", "udi", element.getUdi().get(i), i); 12796 } 12797 } 12798 12799 protected void composeExplanationOfBenefitInsuranceComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.InsuranceComponent element, int index) { 12800 if (element == null) 12801 return; 12802 Complex t; 12803 if (Utilities.noString(parentType)) 12804 t = parent; 12805 else { 12806 t = parent.predicate("fhir:"+name,index > -1); 12807 } 12808 composeBackboneElement(t, "insurance", name, element, index); 12809 if (element.hasFocalElement()) { 12810 composeBoolean(t, "InsuranceComponent", "focal", element.getFocalElement(), -1); 12811 } 12812 if (element.hasCoverage()) { 12813 composeReference(t, "InsuranceComponent", "coverage", element.getCoverage(), -1); 12814 } 12815 for (int i = 0; i < element.getPreAuthRef().size(); i++) { 12816 composeString(t, "InsuranceComponent", "preAuthRef", element.getPreAuthRef().get(i), i); 12817 } 12818 } 12819 12820 protected void composeExplanationOfBenefitAccidentComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.AccidentComponent element, int index) { 12821 if (element == null) 12822 return; 12823 Complex t; 12824 if (Utilities.noString(parentType)) 12825 t = parent; 12826 else { 12827 t = parent.predicate("fhir:"+name,index > -1); 12828 } 12829 composeBackboneElement(t, "accident", name, element, index); 12830 if (element.hasDateElement()) { 12831 composeDate(t, "AccidentComponent", "date", element.getDateElement(), -1); 12832 } 12833 if (element.hasType()) { 12834 composeCodeableConcept(t, "AccidentComponent", "type", element.getType(), -1); 12835 } 12836 if (element.hasLocation()) { 12837 composeType(t, "AccidentComponent", "location", element.getLocation(), -1); 12838 } 12839 } 12840 12841 protected void composeExplanationOfBenefitItemComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.ItemComponent element, int index) { 12842 if (element == null) 12843 return; 12844 Complex t; 12845 if (Utilities.noString(parentType)) 12846 t = parent; 12847 else { 12848 t = parent.predicate("fhir:"+name,index > -1); 12849 } 12850 composeBackboneElement(t, "item", name, element, index); 12851 if (element.hasSequenceElement()) { 12852 composePositiveInt(t, "ItemComponent", "sequence", element.getSequenceElement(), -1); 12853 } 12854 for (int i = 0; i < element.getCareTeamSequence().size(); i++) { 12855 composePositiveInt(t, "ItemComponent", "careTeamSequence", element.getCareTeamSequence().get(i), i); 12856 } 12857 for (int i = 0; i < element.getDiagnosisSequence().size(); i++) { 12858 composePositiveInt(t, "ItemComponent", "diagnosisSequence", element.getDiagnosisSequence().get(i), i); 12859 } 12860 for (int i = 0; i < element.getProcedureSequence().size(); i++) { 12861 composePositiveInt(t, "ItemComponent", "procedureSequence", element.getProcedureSequence().get(i), i); 12862 } 12863 for (int i = 0; i < element.getInformationSequence().size(); i++) { 12864 composePositiveInt(t, "ItemComponent", "informationSequence", element.getInformationSequence().get(i), i); 12865 } 12866 for (int i = 0; i < element.getTraceNumber().size(); i++) { 12867 composeIdentifier(t, "ItemComponent", "traceNumber", element.getTraceNumber().get(i), i); 12868 } 12869 if (element.hasRevenue()) { 12870 composeCodeableConcept(t, "ItemComponent", "revenue", element.getRevenue(), -1); 12871 } 12872 if (element.hasCategory()) { 12873 composeCodeableConcept(t, "ItemComponent", "category", element.getCategory(), -1); 12874 } 12875 if (element.hasProductOrService()) { 12876 composeCodeableConcept(t, "ItemComponent", "productOrService", element.getProductOrService(), -1); 12877 } 12878 if (element.hasProductOrServiceEnd()) { 12879 composeCodeableConcept(t, "ItemComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 12880 } 12881 for (int i = 0; i < element.getRequest().size(); i++) { 12882 composeReference(t, "ItemComponent", "request", element.getRequest().get(i), i); 12883 } 12884 for (int i = 0; i < element.getModifier().size(); i++) { 12885 composeCodeableConcept(t, "ItemComponent", "modifier", element.getModifier().get(i), i); 12886 } 12887 for (int i = 0; i < element.getProgramCode().size(); i++) { 12888 composeCodeableConcept(t, "ItemComponent", "programCode", element.getProgramCode().get(i), i); 12889 } 12890 if (element.hasServiced()) { 12891 composeType(t, "ItemComponent", "serviced", element.getServiced(), -1); 12892 } 12893 if (element.hasLocation()) { 12894 composeType(t, "ItemComponent", "location", element.getLocation(), -1); 12895 } 12896 if (element.hasPatientPaid()) { 12897 composeMoney(t, "ItemComponent", "patientPaid", element.getPatientPaid(), -1); 12898 } 12899 if (element.hasQuantity()) { 12900 composeQuantity(t, "ItemComponent", "quantity", element.getQuantity(), -1); 12901 } 12902 if (element.hasUnitPrice()) { 12903 composeMoney(t, "ItemComponent", "unitPrice", element.getUnitPrice(), -1); 12904 } 12905 if (element.hasFactorElement()) { 12906 composeDecimal(t, "ItemComponent", "factor", element.getFactorElement(), -1); 12907 } 12908 if (element.hasTax()) { 12909 composeMoney(t, "ItemComponent", "tax", element.getTax(), -1); 12910 } 12911 if (element.hasNet()) { 12912 composeMoney(t, "ItemComponent", "net", element.getNet(), -1); 12913 } 12914 for (int i = 0; i < element.getUdi().size(); i++) { 12915 composeReference(t, "ItemComponent", "udi", element.getUdi().get(i), i); 12916 } 12917 for (int i = 0; i < element.getBodySite().size(); i++) { 12918 composeExplanationOfBenefitItemBodySiteComponent(t, "ItemComponent", "bodySite", element.getBodySite().get(i), i); 12919 } 12920 for (int i = 0; i < element.getEncounter().size(); i++) { 12921 composeReference(t, "ItemComponent", "encounter", element.getEncounter().get(i), i); 12922 } 12923 for (int i = 0; i < element.getNoteNumber().size(); i++) { 12924 composePositiveInt(t, "ItemComponent", "noteNumber", element.getNoteNumber().get(i), i); 12925 } 12926 if (element.hasReviewOutcome()) { 12927 composeExplanationOfBenefitItemReviewOutcomeComponent(t, "ItemComponent", "reviewOutcome", element.getReviewOutcome(), -1); 12928 } 12929 for (int i = 0; i < element.getAdjudication().size(); i++) { 12930 composeExplanationOfBenefitAdjudicationComponent(t, "ItemComponent", "adjudication", element.getAdjudication().get(i), i); 12931 } 12932 for (int i = 0; i < element.getDetail().size(); i++) { 12933 composeExplanationOfBenefitDetailComponent(t, "ItemComponent", "detail", element.getDetail().get(i), i); 12934 } 12935 } 12936 12937 protected void composeExplanationOfBenefitItemBodySiteComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.ItemBodySiteComponent element, int index) { 12938 if (element == null) 12939 return; 12940 Complex t; 12941 if (Utilities.noString(parentType)) 12942 t = parent; 12943 else { 12944 t = parent.predicate("fhir:"+name,index > -1); 12945 } 12946 composeBackboneElement(t, "bodySite", name, element, index); 12947 for (int i = 0; i < element.getSite().size(); i++) { 12948 composeCodeableReference(t, "ItemBodySiteComponent", "site", element.getSite().get(i), i); 12949 } 12950 for (int i = 0; i < element.getSubSite().size(); i++) { 12951 composeCodeableConcept(t, "ItemBodySiteComponent", "subSite", element.getSubSite().get(i), i); 12952 } 12953 } 12954 12955 protected void composeExplanationOfBenefitItemReviewOutcomeComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.ItemReviewOutcomeComponent element, int index) { 12956 if (element == null) 12957 return; 12958 Complex t; 12959 if (Utilities.noString(parentType)) 12960 t = parent; 12961 else { 12962 t = parent.predicate("fhir:"+name,index > -1); 12963 } 12964 composeBackboneElement(t, "reviewOutcome", name, element, index); 12965 if (element.hasDecision()) { 12966 composeCodeableConcept(t, "ItemReviewOutcomeComponent", "decision", element.getDecision(), -1); 12967 } 12968 for (int i = 0; i < element.getReason().size(); i++) { 12969 composeCodeableConcept(t, "ItemReviewOutcomeComponent", "reason", element.getReason().get(i), i); 12970 } 12971 if (element.hasPreAuthRefElement()) { 12972 composeString(t, "ItemReviewOutcomeComponent", "preAuthRef", element.getPreAuthRefElement(), -1); 12973 } 12974 if (element.hasPreAuthPeriod()) { 12975 composePeriod(t, "ItemReviewOutcomeComponent", "preAuthPeriod", element.getPreAuthPeriod(), -1); 12976 } 12977 } 12978 12979 protected void composeExplanationOfBenefitAdjudicationComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.AdjudicationComponent element, int index) { 12980 if (element == null) 12981 return; 12982 Complex t; 12983 if (Utilities.noString(parentType)) 12984 t = parent; 12985 else { 12986 t = parent.predicate("fhir:"+name,index > -1); 12987 } 12988 composeBackboneElement(t, "adjudication", name, element, index); 12989 if (element.hasCategory()) { 12990 composeCodeableConcept(t, "AdjudicationComponent", "category", element.getCategory(), -1); 12991 } 12992 if (element.hasReason()) { 12993 composeCodeableConcept(t, "AdjudicationComponent", "reason", element.getReason(), -1); 12994 } 12995 if (element.hasAmount()) { 12996 composeMoney(t, "AdjudicationComponent", "amount", element.getAmount(), -1); 12997 } 12998 if (element.hasQuantity()) { 12999 composeQuantity(t, "AdjudicationComponent", "quantity", element.getQuantity(), -1); 13000 } 13001 } 13002 13003 protected void composeExplanationOfBenefitDetailComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.DetailComponent element, int index) { 13004 if (element == null) 13005 return; 13006 Complex t; 13007 if (Utilities.noString(parentType)) 13008 t = parent; 13009 else { 13010 t = parent.predicate("fhir:"+name,index > -1); 13011 } 13012 composeBackboneElement(t, "detail", name, element, index); 13013 if (element.hasSequenceElement()) { 13014 composePositiveInt(t, "DetailComponent", "sequence", element.getSequenceElement(), -1); 13015 } 13016 for (int i = 0; i < element.getTraceNumber().size(); i++) { 13017 composeIdentifier(t, "DetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 13018 } 13019 if (element.hasRevenue()) { 13020 composeCodeableConcept(t, "DetailComponent", "revenue", element.getRevenue(), -1); 13021 } 13022 if (element.hasCategory()) { 13023 composeCodeableConcept(t, "DetailComponent", "category", element.getCategory(), -1); 13024 } 13025 if (element.hasProductOrService()) { 13026 composeCodeableConcept(t, "DetailComponent", "productOrService", element.getProductOrService(), -1); 13027 } 13028 if (element.hasProductOrServiceEnd()) { 13029 composeCodeableConcept(t, "DetailComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 13030 } 13031 for (int i = 0; i < element.getModifier().size(); i++) { 13032 composeCodeableConcept(t, "DetailComponent", "modifier", element.getModifier().get(i), i); 13033 } 13034 for (int i = 0; i < element.getProgramCode().size(); i++) { 13035 composeCodeableConcept(t, "DetailComponent", "programCode", element.getProgramCode().get(i), i); 13036 } 13037 if (element.hasPatientPaid()) { 13038 composeMoney(t, "DetailComponent", "patientPaid", element.getPatientPaid(), -1); 13039 } 13040 if (element.hasQuantity()) { 13041 composeQuantity(t, "DetailComponent", "quantity", element.getQuantity(), -1); 13042 } 13043 if (element.hasUnitPrice()) { 13044 composeMoney(t, "DetailComponent", "unitPrice", element.getUnitPrice(), -1); 13045 } 13046 if (element.hasFactorElement()) { 13047 composeDecimal(t, "DetailComponent", "factor", element.getFactorElement(), -1); 13048 } 13049 if (element.hasTax()) { 13050 composeMoney(t, "DetailComponent", "tax", element.getTax(), -1); 13051 } 13052 if (element.hasNet()) { 13053 composeMoney(t, "DetailComponent", "net", element.getNet(), -1); 13054 } 13055 for (int i = 0; i < element.getUdi().size(); i++) { 13056 composeReference(t, "DetailComponent", "udi", element.getUdi().get(i), i); 13057 } 13058 for (int i = 0; i < element.getNoteNumber().size(); i++) { 13059 composePositiveInt(t, "DetailComponent", "noteNumber", element.getNoteNumber().get(i), i); 13060 } 13061 if (element.hasReviewOutcome()) { 13062 composeExplanationOfBenefitItemReviewOutcomeComponent(t, "DetailComponent", "reviewOutcome", element.getReviewOutcome(), -1); 13063 } 13064 for (int i = 0; i < element.getAdjudication().size(); i++) { 13065 composeExplanationOfBenefitAdjudicationComponent(t, "DetailComponent", "adjudication", element.getAdjudication().get(i), i); 13066 } 13067 for (int i = 0; i < element.getSubDetail().size(); i++) { 13068 composeExplanationOfBenefitSubDetailComponent(t, "DetailComponent", "subDetail", element.getSubDetail().get(i), i); 13069 } 13070 } 13071 13072 protected void composeExplanationOfBenefitSubDetailComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.SubDetailComponent element, int index) { 13073 if (element == null) 13074 return; 13075 Complex t; 13076 if (Utilities.noString(parentType)) 13077 t = parent; 13078 else { 13079 t = parent.predicate("fhir:"+name,index > -1); 13080 } 13081 composeBackboneElement(t, "subDetail", name, element, index); 13082 if (element.hasSequenceElement()) { 13083 composePositiveInt(t, "SubDetailComponent", "sequence", element.getSequenceElement(), -1); 13084 } 13085 for (int i = 0; i < element.getTraceNumber().size(); i++) { 13086 composeIdentifier(t, "SubDetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 13087 } 13088 if (element.hasRevenue()) { 13089 composeCodeableConcept(t, "SubDetailComponent", "revenue", element.getRevenue(), -1); 13090 } 13091 if (element.hasCategory()) { 13092 composeCodeableConcept(t, "SubDetailComponent", "category", element.getCategory(), -1); 13093 } 13094 if (element.hasProductOrService()) { 13095 composeCodeableConcept(t, "SubDetailComponent", "productOrService", element.getProductOrService(), -1); 13096 } 13097 if (element.hasProductOrServiceEnd()) { 13098 composeCodeableConcept(t, "SubDetailComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 13099 } 13100 for (int i = 0; i < element.getModifier().size(); i++) { 13101 composeCodeableConcept(t, "SubDetailComponent", "modifier", element.getModifier().get(i), i); 13102 } 13103 for (int i = 0; i < element.getProgramCode().size(); i++) { 13104 composeCodeableConcept(t, "SubDetailComponent", "programCode", element.getProgramCode().get(i), i); 13105 } 13106 if (element.hasPatientPaid()) { 13107 composeMoney(t, "SubDetailComponent", "patientPaid", element.getPatientPaid(), -1); 13108 } 13109 if (element.hasQuantity()) { 13110 composeQuantity(t, "SubDetailComponent", "quantity", element.getQuantity(), -1); 13111 } 13112 if (element.hasUnitPrice()) { 13113 composeMoney(t, "SubDetailComponent", "unitPrice", element.getUnitPrice(), -1); 13114 } 13115 if (element.hasFactorElement()) { 13116 composeDecimal(t, "SubDetailComponent", "factor", element.getFactorElement(), -1); 13117 } 13118 if (element.hasTax()) { 13119 composeMoney(t, "SubDetailComponent", "tax", element.getTax(), -1); 13120 } 13121 if (element.hasNet()) { 13122 composeMoney(t, "SubDetailComponent", "net", element.getNet(), -1); 13123 } 13124 for (int i = 0; i < element.getUdi().size(); i++) { 13125 composeReference(t, "SubDetailComponent", "udi", element.getUdi().get(i), i); 13126 } 13127 for (int i = 0; i < element.getNoteNumber().size(); i++) { 13128 composePositiveInt(t, "SubDetailComponent", "noteNumber", element.getNoteNumber().get(i), i); 13129 } 13130 if (element.hasReviewOutcome()) { 13131 composeExplanationOfBenefitItemReviewOutcomeComponent(t, "SubDetailComponent", "reviewOutcome", element.getReviewOutcome(), -1); 13132 } 13133 for (int i = 0; i < element.getAdjudication().size(); i++) { 13134 composeExplanationOfBenefitAdjudicationComponent(t, "SubDetailComponent", "adjudication", element.getAdjudication().get(i), i); 13135 } 13136 } 13137 13138 protected void composeExplanationOfBenefitAddedItemComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.AddedItemComponent element, int index) { 13139 if (element == null) 13140 return; 13141 Complex t; 13142 if (Utilities.noString(parentType)) 13143 t = parent; 13144 else { 13145 t = parent.predicate("fhir:"+name,index > -1); 13146 } 13147 composeBackboneElement(t, "addItem", name, element, index); 13148 for (int i = 0; i < element.getItemSequence().size(); i++) { 13149 composePositiveInt(t, "AddedItemComponent", "itemSequence", element.getItemSequence().get(i), i); 13150 } 13151 for (int i = 0; i < element.getDetailSequence().size(); i++) { 13152 composePositiveInt(t, "AddedItemComponent", "detailSequence", element.getDetailSequence().get(i), i); 13153 } 13154 for (int i = 0; i < element.getSubDetailSequence().size(); i++) { 13155 composePositiveInt(t, "AddedItemComponent", "subDetailSequence", element.getSubDetailSequence().get(i), i); 13156 } 13157 for (int i = 0; i < element.getTraceNumber().size(); i++) { 13158 composeIdentifier(t, "AddedItemComponent", "traceNumber", element.getTraceNumber().get(i), i); 13159 } 13160 for (int i = 0; i < element.getProvider().size(); i++) { 13161 composeReference(t, "AddedItemComponent", "provider", element.getProvider().get(i), i); 13162 } 13163 if (element.hasRevenue()) { 13164 composeCodeableConcept(t, "AddedItemComponent", "revenue", element.getRevenue(), -1); 13165 } 13166 if (element.hasProductOrService()) { 13167 composeCodeableConcept(t, "AddedItemComponent", "productOrService", element.getProductOrService(), -1); 13168 } 13169 if (element.hasProductOrServiceEnd()) { 13170 composeCodeableConcept(t, "AddedItemComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 13171 } 13172 for (int i = 0; i < element.getRequest().size(); i++) { 13173 composeReference(t, "AddedItemComponent", "request", element.getRequest().get(i), i); 13174 } 13175 for (int i = 0; i < element.getModifier().size(); i++) { 13176 composeCodeableConcept(t, "AddedItemComponent", "modifier", element.getModifier().get(i), i); 13177 } 13178 for (int i = 0; i < element.getProgramCode().size(); i++) { 13179 composeCodeableConcept(t, "AddedItemComponent", "programCode", element.getProgramCode().get(i), i); 13180 } 13181 if (element.hasServiced()) { 13182 composeType(t, "AddedItemComponent", "serviced", element.getServiced(), -1); 13183 } 13184 if (element.hasLocation()) { 13185 composeType(t, "AddedItemComponent", "location", element.getLocation(), -1); 13186 } 13187 if (element.hasPatientPaid()) { 13188 composeMoney(t, "AddedItemComponent", "patientPaid", element.getPatientPaid(), -1); 13189 } 13190 if (element.hasQuantity()) { 13191 composeQuantity(t, "AddedItemComponent", "quantity", element.getQuantity(), -1); 13192 } 13193 if (element.hasUnitPrice()) { 13194 composeMoney(t, "AddedItemComponent", "unitPrice", element.getUnitPrice(), -1); 13195 } 13196 if (element.hasFactorElement()) { 13197 composeDecimal(t, "AddedItemComponent", "factor", element.getFactorElement(), -1); 13198 } 13199 if (element.hasTax()) { 13200 composeMoney(t, "AddedItemComponent", "tax", element.getTax(), -1); 13201 } 13202 if (element.hasNet()) { 13203 composeMoney(t, "AddedItemComponent", "net", element.getNet(), -1); 13204 } 13205 for (int i = 0; i < element.getBodySite().size(); i++) { 13206 composeExplanationOfBenefitAddedItemBodySiteComponent(t, "AddedItemComponent", "bodySite", element.getBodySite().get(i), i); 13207 } 13208 for (int i = 0; i < element.getNoteNumber().size(); i++) { 13209 composePositiveInt(t, "AddedItemComponent", "noteNumber", element.getNoteNumber().get(i), i); 13210 } 13211 if (element.hasReviewOutcome()) { 13212 composeExplanationOfBenefitItemReviewOutcomeComponent(t, "AddedItemComponent", "reviewOutcome", element.getReviewOutcome(), -1); 13213 } 13214 for (int i = 0; i < element.getAdjudication().size(); i++) { 13215 composeExplanationOfBenefitAdjudicationComponent(t, "AddedItemComponent", "adjudication", element.getAdjudication().get(i), i); 13216 } 13217 for (int i = 0; i < element.getDetail().size(); i++) { 13218 composeExplanationOfBenefitAddedItemDetailComponent(t, "AddedItemComponent", "detail", element.getDetail().get(i), i); 13219 } 13220 } 13221 13222 protected void composeExplanationOfBenefitAddedItemBodySiteComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.AddedItemBodySiteComponent element, int index) { 13223 if (element == null) 13224 return; 13225 Complex t; 13226 if (Utilities.noString(parentType)) 13227 t = parent; 13228 else { 13229 t = parent.predicate("fhir:"+name,index > -1); 13230 } 13231 composeBackboneElement(t, "bodySite", name, element, index); 13232 for (int i = 0; i < element.getSite().size(); i++) { 13233 composeCodeableReference(t, "AddedItemBodySiteComponent", "site", element.getSite().get(i), i); 13234 } 13235 for (int i = 0; i < element.getSubSite().size(); i++) { 13236 composeCodeableConcept(t, "AddedItemBodySiteComponent", "subSite", element.getSubSite().get(i), i); 13237 } 13238 } 13239 13240 protected void composeExplanationOfBenefitAddedItemDetailComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.AddedItemDetailComponent element, int index) { 13241 if (element == null) 13242 return; 13243 Complex t; 13244 if (Utilities.noString(parentType)) 13245 t = parent; 13246 else { 13247 t = parent.predicate("fhir:"+name,index > -1); 13248 } 13249 composeBackboneElement(t, "detail", name, element, index); 13250 for (int i = 0; i < element.getTraceNumber().size(); i++) { 13251 composeIdentifier(t, "AddedItemDetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 13252 } 13253 if (element.hasRevenue()) { 13254 composeCodeableConcept(t, "AddedItemDetailComponent", "revenue", element.getRevenue(), -1); 13255 } 13256 if (element.hasProductOrService()) { 13257 composeCodeableConcept(t, "AddedItemDetailComponent", "productOrService", element.getProductOrService(), -1); 13258 } 13259 if (element.hasProductOrServiceEnd()) { 13260 composeCodeableConcept(t, "AddedItemDetailComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 13261 } 13262 for (int i = 0; i < element.getModifier().size(); i++) { 13263 composeCodeableConcept(t, "AddedItemDetailComponent", "modifier", element.getModifier().get(i), i); 13264 } 13265 if (element.hasPatientPaid()) { 13266 composeMoney(t, "AddedItemDetailComponent", "patientPaid", element.getPatientPaid(), -1); 13267 } 13268 if (element.hasQuantity()) { 13269 composeQuantity(t, "AddedItemDetailComponent", "quantity", element.getQuantity(), -1); 13270 } 13271 if (element.hasUnitPrice()) { 13272 composeMoney(t, "AddedItemDetailComponent", "unitPrice", element.getUnitPrice(), -1); 13273 } 13274 if (element.hasFactorElement()) { 13275 composeDecimal(t, "AddedItemDetailComponent", "factor", element.getFactorElement(), -1); 13276 } 13277 if (element.hasTax()) { 13278 composeMoney(t, "AddedItemDetailComponent", "tax", element.getTax(), -1); 13279 } 13280 if (element.hasNet()) { 13281 composeMoney(t, "AddedItemDetailComponent", "net", element.getNet(), -1); 13282 } 13283 for (int i = 0; i < element.getNoteNumber().size(); i++) { 13284 composePositiveInt(t, "AddedItemDetailComponent", "noteNumber", element.getNoteNumber().get(i), i); 13285 } 13286 if (element.hasReviewOutcome()) { 13287 composeExplanationOfBenefitItemReviewOutcomeComponent(t, "AddedItemDetailComponent", "reviewOutcome", element.getReviewOutcome(), -1); 13288 } 13289 for (int i = 0; i < element.getAdjudication().size(); i++) { 13290 composeExplanationOfBenefitAdjudicationComponent(t, "AddedItemDetailComponent", "adjudication", element.getAdjudication().get(i), i); 13291 } 13292 for (int i = 0; i < element.getSubDetail().size(); i++) { 13293 composeExplanationOfBenefitAddedItemDetailSubDetailComponent(t, "AddedItemDetailComponent", "subDetail", element.getSubDetail().get(i), i); 13294 } 13295 } 13296 13297 protected void composeExplanationOfBenefitAddedItemDetailSubDetailComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.AddedItemDetailSubDetailComponent element, int index) { 13298 if (element == null) 13299 return; 13300 Complex t; 13301 if (Utilities.noString(parentType)) 13302 t = parent; 13303 else { 13304 t = parent.predicate("fhir:"+name,index > -1); 13305 } 13306 composeBackboneElement(t, "subDetail", name, element, index); 13307 for (int i = 0; i < element.getTraceNumber().size(); i++) { 13308 composeIdentifier(t, "AddedItemDetailSubDetailComponent", "traceNumber", element.getTraceNumber().get(i), i); 13309 } 13310 if (element.hasRevenue()) { 13311 composeCodeableConcept(t, "AddedItemDetailSubDetailComponent", "revenue", element.getRevenue(), -1); 13312 } 13313 if (element.hasProductOrService()) { 13314 composeCodeableConcept(t, "AddedItemDetailSubDetailComponent", "productOrService", element.getProductOrService(), -1); 13315 } 13316 if (element.hasProductOrServiceEnd()) { 13317 composeCodeableConcept(t, "AddedItemDetailSubDetailComponent", "productOrServiceEnd", element.getProductOrServiceEnd(), -1); 13318 } 13319 for (int i = 0; i < element.getModifier().size(); i++) { 13320 composeCodeableConcept(t, "AddedItemDetailSubDetailComponent", "modifier", element.getModifier().get(i), i); 13321 } 13322 if (element.hasPatientPaid()) { 13323 composeMoney(t, "AddedItemDetailSubDetailComponent", "patientPaid", element.getPatientPaid(), -1); 13324 } 13325 if (element.hasQuantity()) { 13326 composeQuantity(t, "AddedItemDetailSubDetailComponent", "quantity", element.getQuantity(), -1); 13327 } 13328 if (element.hasUnitPrice()) { 13329 composeMoney(t, "AddedItemDetailSubDetailComponent", "unitPrice", element.getUnitPrice(), -1); 13330 } 13331 if (element.hasFactorElement()) { 13332 composeDecimal(t, "AddedItemDetailSubDetailComponent", "factor", element.getFactorElement(), -1); 13333 } 13334 if (element.hasTax()) { 13335 composeMoney(t, "AddedItemDetailSubDetailComponent", "tax", element.getTax(), -1); 13336 } 13337 if (element.hasNet()) { 13338 composeMoney(t, "AddedItemDetailSubDetailComponent", "net", element.getNet(), -1); 13339 } 13340 for (int i = 0; i < element.getNoteNumber().size(); i++) { 13341 composePositiveInt(t, "AddedItemDetailSubDetailComponent", "noteNumber", element.getNoteNumber().get(i), i); 13342 } 13343 if (element.hasReviewOutcome()) { 13344 composeExplanationOfBenefitItemReviewOutcomeComponent(t, "AddedItemDetailSubDetailComponent", "reviewOutcome", element.getReviewOutcome(), -1); 13345 } 13346 for (int i = 0; i < element.getAdjudication().size(); i++) { 13347 composeExplanationOfBenefitAdjudicationComponent(t, "AddedItemDetailSubDetailComponent", "adjudication", element.getAdjudication().get(i), i); 13348 } 13349 } 13350 13351 protected void composeExplanationOfBenefitTotalComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.TotalComponent element, int index) { 13352 if (element == null) 13353 return; 13354 Complex t; 13355 if (Utilities.noString(parentType)) 13356 t = parent; 13357 else { 13358 t = parent.predicate("fhir:"+name,index > -1); 13359 } 13360 composeBackboneElement(t, "total", name, element, index); 13361 if (element.hasCategory()) { 13362 composeCodeableConcept(t, "TotalComponent", "category", element.getCategory(), -1); 13363 } 13364 if (element.hasAmount()) { 13365 composeMoney(t, "TotalComponent", "amount", element.getAmount(), -1); 13366 } 13367 } 13368 13369 protected void composeExplanationOfBenefitPaymentComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.PaymentComponent element, int index) { 13370 if (element == null) 13371 return; 13372 Complex t; 13373 if (Utilities.noString(parentType)) 13374 t = parent; 13375 else { 13376 t = parent.predicate("fhir:"+name,index > -1); 13377 } 13378 composeBackboneElement(t, "payment", name, element, index); 13379 if (element.hasType()) { 13380 composeCodeableConcept(t, "PaymentComponent", "type", element.getType(), -1); 13381 } 13382 if (element.hasAdjustment()) { 13383 composeMoney(t, "PaymentComponent", "adjustment", element.getAdjustment(), -1); 13384 } 13385 if (element.hasAdjustmentReason()) { 13386 composeCodeableConcept(t, "PaymentComponent", "adjustmentReason", element.getAdjustmentReason(), -1); 13387 } 13388 if (element.hasDateElement()) { 13389 composeDate(t, "PaymentComponent", "date", element.getDateElement(), -1); 13390 } 13391 if (element.hasAmount()) { 13392 composeMoney(t, "PaymentComponent", "amount", element.getAmount(), -1); 13393 } 13394 if (element.hasIdentifier()) { 13395 composeIdentifier(t, "PaymentComponent", "identifier", element.getIdentifier(), -1); 13396 } 13397 } 13398 13399 protected void composeExplanationOfBenefitNoteComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.NoteComponent element, int index) { 13400 if (element == null) 13401 return; 13402 Complex t; 13403 if (Utilities.noString(parentType)) 13404 t = parent; 13405 else { 13406 t = parent.predicate("fhir:"+name,index > -1); 13407 } 13408 composeBackboneElement(t, "processNote", name, element, index); 13409 if (element.hasNumberElement()) { 13410 composePositiveInt(t, "NoteComponent", "number", element.getNumberElement(), -1); 13411 } 13412 if (element.hasType()) { 13413 composeCodeableConcept(t, "NoteComponent", "type", element.getType(), -1); 13414 } 13415 if (element.hasTextElement()) { 13416 composeString(t, "NoteComponent", "text", element.getTextElement(), -1); 13417 } 13418 if (element.hasLanguage()) { 13419 composeCodeableConcept(t, "NoteComponent", "language", element.getLanguage(), -1); 13420 } 13421 } 13422 13423 protected void composeExplanationOfBenefitBenefitBalanceComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.BenefitBalanceComponent element, int index) { 13424 if (element == null) 13425 return; 13426 Complex t; 13427 if (Utilities.noString(parentType)) 13428 t = parent; 13429 else { 13430 t = parent.predicate("fhir:"+name,index > -1); 13431 } 13432 composeBackboneElement(t, "benefitBalance", name, element, index); 13433 if (element.hasCategory()) { 13434 composeCodeableConcept(t, "BenefitBalanceComponent", "category", element.getCategory(), -1); 13435 } 13436 if (element.hasExcludedElement()) { 13437 composeBoolean(t, "BenefitBalanceComponent", "excluded", element.getExcludedElement(), -1); 13438 } 13439 if (element.hasNameElement()) { 13440 composeString(t, "BenefitBalanceComponent", "name", element.getNameElement(), -1); 13441 } 13442 if (element.hasDescriptionElement()) { 13443 composeString(t, "BenefitBalanceComponent", "description", element.getDescriptionElement(), -1); 13444 } 13445 if (element.hasNetwork()) { 13446 composeCodeableConcept(t, "BenefitBalanceComponent", "network", element.getNetwork(), -1); 13447 } 13448 if (element.hasUnit()) { 13449 composeCodeableConcept(t, "BenefitBalanceComponent", "unit", element.getUnit(), -1); 13450 } 13451 if (element.hasTerm()) { 13452 composeCodeableConcept(t, "BenefitBalanceComponent", "term", element.getTerm(), -1); 13453 } 13454 for (int i = 0; i < element.getFinancial().size(); i++) { 13455 composeExplanationOfBenefitBenefitComponent(t, "BenefitBalanceComponent", "financial", element.getFinancial().get(i), i); 13456 } 13457 } 13458 13459 protected void composeExplanationOfBenefitBenefitComponent(Complex parent, String parentType, String name, ExplanationOfBenefit.BenefitComponent element, int index) { 13460 if (element == null) 13461 return; 13462 Complex t; 13463 if (Utilities.noString(parentType)) 13464 t = parent; 13465 else { 13466 t = parent.predicate("fhir:"+name,index > -1); 13467 } 13468 composeBackboneElement(t, "financial", name, element, index); 13469 if (element.hasType()) { 13470 composeCodeableConcept(t, "BenefitComponent", "type", element.getType(), -1); 13471 } 13472 if (element.hasAllowed()) { 13473 composeType(t, "BenefitComponent", "allowed", element.getAllowed(), -1); 13474 } 13475 if (element.hasUsed()) { 13476 composeType(t, "BenefitComponent", "used", element.getUsed(), -1); 13477 } 13478 } 13479 13480 protected void composeFamilyMemberHistory(Complex parent, String parentType, String name, FamilyMemberHistory element, int index) { 13481 if (element == null) 13482 return; 13483 Complex t; 13484 if (Utilities.noString(parentType)) 13485 t = parent; 13486 else { 13487 t = parent.predicate("fhir:"+name,index > -1); 13488 } 13489 composeDomainResource(t, "FamilyMemberHistory", name, element, index); 13490 for (int i = 0; i < element.getIdentifier().size(); i++) { 13491 composeIdentifier(t, "FamilyMemberHistory", "identifier", element.getIdentifier().get(i), i); 13492 } 13493 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { 13494 composeCanonical(t, "FamilyMemberHistory", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 13495 } 13496 for (int i = 0; i < element.getInstantiatesUri().size(); i++) { 13497 composeUri(t, "FamilyMemberHistory", "instantiatesUri", element.getInstantiatesUri().get(i), i); 13498 } 13499 if (element.hasStatusElement()) { 13500 composeEnum(t, "FamilyMemberHistory", "status", element.getStatusElement(), -1); 13501 } 13502 if (element.hasDataAbsentReason()) { 13503 composeCodeableConcept(t, "FamilyMemberHistory", "dataAbsentReason", element.getDataAbsentReason(), -1); 13504 } 13505 if (element.hasPatient()) { 13506 composeReference(t, "FamilyMemberHistory", "patient", element.getPatient(), -1); 13507 } 13508 if (element.hasDateElement()) { 13509 composeDateTime(t, "FamilyMemberHistory", "date", element.getDateElement(), -1); 13510 } 13511 for (int i = 0; i < element.getParticipant().size(); i++) { 13512 composeFamilyMemberHistoryParticipantComponent(t, "FamilyMemberHistory", "participant", element.getParticipant().get(i), i); 13513 } 13514 if (element.hasNameElement()) { 13515 composeString(t, "FamilyMemberHistory", "name", element.getNameElement(), -1); 13516 } 13517 if (element.hasRelationship()) { 13518 composeCodeableConcept(t, "FamilyMemberHistory", "relationship", element.getRelationship(), -1); 13519 } 13520 if (element.hasSex()) { 13521 composeCodeableConcept(t, "FamilyMemberHistory", "sex", element.getSex(), -1); 13522 } 13523 if (element.hasBorn()) { 13524 composeType(t, "FamilyMemberHistory", "born", element.getBorn(), -1); 13525 } 13526 if (element.hasAge()) { 13527 composeType(t, "FamilyMemberHistory", "age", element.getAge(), -1); 13528 } 13529 if (element.hasEstimatedAgeElement()) { 13530 composeBoolean(t, "FamilyMemberHistory", "estimatedAge", element.getEstimatedAgeElement(), -1); 13531 } 13532 if (element.hasDeceased()) { 13533 composeType(t, "FamilyMemberHistory", "deceased", element.getDeceased(), -1); 13534 } 13535 for (int i = 0; i < element.getReason().size(); i++) { 13536 composeCodeableReference(t, "FamilyMemberHistory", "reason", element.getReason().get(i), i); 13537 } 13538 for (int i = 0; i < element.getNote().size(); i++) { 13539 composeAnnotation(t, "FamilyMemberHistory", "note", element.getNote().get(i), i); 13540 } 13541 for (int i = 0; i < element.getCondition().size(); i++) { 13542 composeFamilyMemberHistoryConditionComponent(t, "FamilyMemberHistory", "condition", element.getCondition().get(i), i); 13543 } 13544 for (int i = 0; i < element.getProcedure().size(); i++) { 13545 composeFamilyMemberHistoryProcedureComponent(t, "FamilyMemberHistory", "procedure", element.getProcedure().get(i), i); 13546 } 13547 } 13548 13549 protected void composeFamilyMemberHistoryParticipantComponent(Complex parent, String parentType, String name, FamilyMemberHistory.FamilyMemberHistoryParticipantComponent element, int index) { 13550 if (element == null) 13551 return; 13552 Complex t; 13553 if (Utilities.noString(parentType)) 13554 t = parent; 13555 else { 13556 t = parent.predicate("fhir:"+name,index > -1); 13557 } 13558 composeBackboneElement(t, "participant", name, element, index); 13559 if (element.hasFunction()) { 13560 composeCodeableConcept(t, "FamilyMemberHistoryParticipantComponent", "function", element.getFunction(), -1); 13561 } 13562 if (element.hasActor()) { 13563 composeReference(t, "FamilyMemberHistoryParticipantComponent", "actor", element.getActor(), -1); 13564 } 13565 } 13566 13567 protected void composeFamilyMemberHistoryConditionComponent(Complex parent, String parentType, String name, FamilyMemberHistory.FamilyMemberHistoryConditionComponent element, int index) { 13568 if (element == null) 13569 return; 13570 Complex t; 13571 if (Utilities.noString(parentType)) 13572 t = parent; 13573 else { 13574 t = parent.predicate("fhir:"+name,index > -1); 13575 } 13576 composeBackboneElement(t, "condition", name, element, index); 13577 if (element.hasCode()) { 13578 composeCodeableConcept(t, "FamilyMemberHistoryConditionComponent", "code", element.getCode(), -1); 13579 } 13580 if (element.hasOutcome()) { 13581 composeCodeableConcept(t, "FamilyMemberHistoryConditionComponent", "outcome", element.getOutcome(), -1); 13582 } 13583 if (element.hasContributedToDeathElement()) { 13584 composeBoolean(t, "FamilyMemberHistoryConditionComponent", "contributedToDeath", element.getContributedToDeathElement(), -1); 13585 } 13586 if (element.hasOnset()) { 13587 composeType(t, "FamilyMemberHistoryConditionComponent", "onset", element.getOnset(), -1); 13588 } 13589 for (int i = 0; i < element.getNote().size(); i++) { 13590 composeAnnotation(t, "FamilyMemberHistoryConditionComponent", "note", element.getNote().get(i), i); 13591 } 13592 } 13593 13594 protected void composeFamilyMemberHistoryProcedureComponent(Complex parent, String parentType, String name, FamilyMemberHistory.FamilyMemberHistoryProcedureComponent element, int index) { 13595 if (element == null) 13596 return; 13597 Complex t; 13598 if (Utilities.noString(parentType)) 13599 t = parent; 13600 else { 13601 t = parent.predicate("fhir:"+name,index > -1); 13602 } 13603 composeBackboneElement(t, "procedure", name, element, index); 13604 if (element.hasCode()) { 13605 composeCodeableConcept(t, "FamilyMemberHistoryProcedureComponent", "code", element.getCode(), -1); 13606 } 13607 if (element.hasOutcome()) { 13608 composeCodeableConcept(t, "FamilyMemberHistoryProcedureComponent", "outcome", element.getOutcome(), -1); 13609 } 13610 if (element.hasContributedToDeathElement()) { 13611 composeBoolean(t, "FamilyMemberHistoryProcedureComponent", "contributedToDeath", element.getContributedToDeathElement(), -1); 13612 } 13613 if (element.hasPerformed()) { 13614 composeType(t, "FamilyMemberHistoryProcedureComponent", "performed", element.getPerformed(), -1); 13615 } 13616 for (int i = 0; i < element.getNote().size(); i++) { 13617 composeAnnotation(t, "FamilyMemberHistoryProcedureComponent", "note", element.getNote().get(i), i); 13618 } 13619 } 13620 13621 protected void composeFlag(Complex parent, String parentType, String name, Flag element, int index) { 13622 if (element == null) 13623 return; 13624 Complex t; 13625 if (Utilities.noString(parentType)) 13626 t = parent; 13627 else { 13628 t = parent.predicate("fhir:"+name,index > -1); 13629 } 13630 composeDomainResource(t, "Flag", name, element, index); 13631 for (int i = 0; i < element.getIdentifier().size(); i++) { 13632 composeIdentifier(t, "Flag", "identifier", element.getIdentifier().get(i), i); 13633 } 13634 if (element.hasStatusElement()) { 13635 composeEnum(t, "Flag", "status", element.getStatusElement(), -1); 13636 } 13637 for (int i = 0; i < element.getCategory().size(); i++) { 13638 composeCodeableConcept(t, "Flag", "category", element.getCategory().get(i), i); 13639 } 13640 if (element.hasCode()) { 13641 composeCodeableConcept(t, "Flag", "code", element.getCode(), -1); 13642 } 13643 if (element.hasSubject()) { 13644 composeReference(t, "Flag", "subject", element.getSubject(), -1); 13645 } 13646 if (element.hasPeriod()) { 13647 composePeriod(t, "Flag", "period", element.getPeriod(), -1); 13648 } 13649 if (element.hasEncounter()) { 13650 composeReference(t, "Flag", "encounter", element.getEncounter(), -1); 13651 } 13652 if (element.hasAuthor()) { 13653 composeReference(t, "Flag", "author", element.getAuthor(), -1); 13654 } 13655 } 13656 13657 protected void composeFormularyItem(Complex parent, String parentType, String name, FormularyItem element, int index) { 13658 if (element == null) 13659 return; 13660 Complex t; 13661 if (Utilities.noString(parentType)) 13662 t = parent; 13663 else { 13664 t = parent.predicate("fhir:"+name,index > -1); 13665 } 13666 composeDomainResource(t, "FormularyItem", name, element, index); 13667 for (int i = 0; i < element.getIdentifier().size(); i++) { 13668 composeIdentifier(t, "FormularyItem", "identifier", element.getIdentifier().get(i), i); 13669 } 13670 if (element.hasCode()) { 13671 composeCodeableConcept(t, "FormularyItem", "code", element.getCode(), -1); 13672 } 13673 if (element.hasStatusElement()) { 13674 composeEnum(t, "FormularyItem", "status", element.getStatusElement(), -1); 13675 } 13676 } 13677 13678 protected void composeGenomicStudy(Complex parent, String parentType, String name, GenomicStudy element, int index) { 13679 if (element == null) 13680 return; 13681 Complex t; 13682 if (Utilities.noString(parentType)) 13683 t = parent; 13684 else { 13685 t = parent.predicate("fhir:"+name,index > -1); 13686 } 13687 composeDomainResource(t, "GenomicStudy", name, element, index); 13688 for (int i = 0; i < element.getIdentifier().size(); i++) { 13689 composeIdentifier(t, "GenomicStudy", "identifier", element.getIdentifier().get(i), i); 13690 } 13691 if (element.hasStatusElement()) { 13692 composeEnum(t, "GenomicStudy", "status", element.getStatusElement(), -1); 13693 } 13694 for (int i = 0; i < element.getType().size(); i++) { 13695 composeCodeableConcept(t, "GenomicStudy", "type", element.getType().get(i), i); 13696 } 13697 if (element.hasSubject()) { 13698 composeReference(t, "GenomicStudy", "subject", element.getSubject(), -1); 13699 } 13700 if (element.hasEncounter()) { 13701 composeReference(t, "GenomicStudy", "encounter", element.getEncounter(), -1); 13702 } 13703 if (element.hasStartDateElement()) { 13704 composeDateTime(t, "GenomicStudy", "startDate", element.getStartDateElement(), -1); 13705 } 13706 for (int i = 0; i < element.getBasedOn().size(); i++) { 13707 composeReference(t, "GenomicStudy", "basedOn", element.getBasedOn().get(i), i); 13708 } 13709 if (element.hasReferrer()) { 13710 composeReference(t, "GenomicStudy", "referrer", element.getReferrer(), -1); 13711 } 13712 for (int i = 0; i < element.getInterpreter().size(); i++) { 13713 composeReference(t, "GenomicStudy", "interpreter", element.getInterpreter().get(i), i); 13714 } 13715 for (int i = 0; i < element.getReason().size(); i++) { 13716 composeCodeableReference(t, "GenomicStudy", "reason", element.getReason().get(i), i); 13717 } 13718 if (element.hasInstantiatesCanonicalElement()) { 13719 composeCanonical(t, "GenomicStudy", "instantiatesCanonical", element.getInstantiatesCanonicalElement(), -1); 13720 } 13721 if (element.hasInstantiatesUriElement()) { 13722 composeUri(t, "GenomicStudy", "instantiatesUri", element.getInstantiatesUriElement(), -1); 13723 } 13724 for (int i = 0; i < element.getNote().size(); i++) { 13725 composeAnnotation(t, "GenomicStudy", "note", element.getNote().get(i), i); 13726 } 13727 if (element.hasDescriptionElement()) { 13728 composeMarkdown(t, "GenomicStudy", "description", element.getDescriptionElement(), -1); 13729 } 13730 for (int i = 0; i < element.getAnalysis().size(); i++) { 13731 composeGenomicStudyAnalysisComponent(t, "GenomicStudy", "analysis", element.getAnalysis().get(i), i); 13732 } 13733 } 13734 13735 protected void composeGenomicStudyAnalysisComponent(Complex parent, String parentType, String name, GenomicStudy.GenomicStudyAnalysisComponent element, int index) { 13736 if (element == null) 13737 return; 13738 Complex t; 13739 if (Utilities.noString(parentType)) 13740 t = parent; 13741 else { 13742 t = parent.predicate("fhir:"+name,index > -1); 13743 } 13744 composeBackboneElement(t, "analysis", name, element, index); 13745 for (int i = 0; i < element.getIdentifier().size(); i++) { 13746 composeIdentifier(t, "GenomicStudyAnalysisComponent", "identifier", element.getIdentifier().get(i), i); 13747 } 13748 for (int i = 0; i < element.getMethodType().size(); i++) { 13749 composeCodeableConcept(t, "GenomicStudyAnalysisComponent", "methodType", element.getMethodType().get(i), i); 13750 } 13751 for (int i = 0; i < element.getChangeType().size(); i++) { 13752 composeCodeableConcept(t, "GenomicStudyAnalysisComponent", "changeType", element.getChangeType().get(i), i); 13753 } 13754 if (element.hasGenomeBuild()) { 13755 composeCodeableConcept(t, "GenomicStudyAnalysisComponent", "genomeBuild", element.getGenomeBuild(), -1); 13756 } 13757 if (element.hasInstantiatesCanonicalElement()) { 13758 composeCanonical(t, "GenomicStudyAnalysisComponent", "instantiatesCanonical", element.getInstantiatesCanonicalElement(), -1); 13759 } 13760 if (element.hasInstantiatesUriElement()) { 13761 composeUri(t, "GenomicStudyAnalysisComponent", "instantiatesUri", element.getInstantiatesUriElement(), -1); 13762 } 13763 if (element.hasTitleElement()) { 13764 composeString(t, "GenomicStudyAnalysisComponent", "title", element.getTitleElement(), -1); 13765 } 13766 for (int i = 0; i < element.getFocus().size(); i++) { 13767 composeReference(t, "GenomicStudyAnalysisComponent", "focus", element.getFocus().get(i), i); 13768 } 13769 for (int i = 0; i < element.getSpecimen().size(); i++) { 13770 composeReference(t, "GenomicStudyAnalysisComponent", "specimen", element.getSpecimen().get(i), i); 13771 } 13772 if (element.hasDateElement()) { 13773 composeDateTime(t, "GenomicStudyAnalysisComponent", "date", element.getDateElement(), -1); 13774 } 13775 for (int i = 0; i < element.getNote().size(); i++) { 13776 composeAnnotation(t, "GenomicStudyAnalysisComponent", "note", element.getNote().get(i), i); 13777 } 13778 if (element.hasProtocolPerformed()) { 13779 composeReference(t, "GenomicStudyAnalysisComponent", "protocolPerformed", element.getProtocolPerformed(), -1); 13780 } 13781 for (int i = 0; i < element.getRegionsStudied().size(); i++) { 13782 composeReference(t, "GenomicStudyAnalysisComponent", "regionsStudied", element.getRegionsStudied().get(i), i); 13783 } 13784 for (int i = 0; i < element.getRegionsCalled().size(); i++) { 13785 composeReference(t, "GenomicStudyAnalysisComponent", "regionsCalled", element.getRegionsCalled().get(i), i); 13786 } 13787 for (int i = 0; i < element.getInput().size(); i++) { 13788 composeGenomicStudyAnalysisInputComponent(t, "GenomicStudyAnalysisComponent", "input", element.getInput().get(i), i); 13789 } 13790 for (int i = 0; i < element.getOutput().size(); i++) { 13791 composeGenomicStudyAnalysisOutputComponent(t, "GenomicStudyAnalysisComponent", "output", element.getOutput().get(i), i); 13792 } 13793 for (int i = 0; i < element.getPerformer().size(); i++) { 13794 composeGenomicStudyAnalysisPerformerComponent(t, "GenomicStudyAnalysisComponent", "performer", element.getPerformer().get(i), i); 13795 } 13796 for (int i = 0; i < element.getDevice().size(); i++) { 13797 composeGenomicStudyAnalysisDeviceComponent(t, "GenomicStudyAnalysisComponent", "device", element.getDevice().get(i), i); 13798 } 13799 } 13800 13801 protected void composeGenomicStudyAnalysisInputComponent(Complex parent, String parentType, String name, GenomicStudy.GenomicStudyAnalysisInputComponent element, int index) { 13802 if (element == null) 13803 return; 13804 Complex t; 13805 if (Utilities.noString(parentType)) 13806 t = parent; 13807 else { 13808 t = parent.predicate("fhir:"+name,index > -1); 13809 } 13810 composeBackboneElement(t, "input", name, element, index); 13811 if (element.hasFile()) { 13812 composeReference(t, "GenomicStudyAnalysisInputComponent", "file", element.getFile(), -1); 13813 } 13814 if (element.hasType()) { 13815 composeCodeableConcept(t, "GenomicStudyAnalysisInputComponent", "type", element.getType(), -1); 13816 } 13817 if (element.hasGeneratedBy()) { 13818 composeType(t, "GenomicStudyAnalysisInputComponent", "generatedBy", element.getGeneratedBy(), -1); 13819 } 13820 } 13821 13822 protected void composeGenomicStudyAnalysisOutputComponent(Complex parent, String parentType, String name, GenomicStudy.GenomicStudyAnalysisOutputComponent element, int index) { 13823 if (element == null) 13824 return; 13825 Complex t; 13826 if (Utilities.noString(parentType)) 13827 t = parent; 13828 else { 13829 t = parent.predicate("fhir:"+name,index > -1); 13830 } 13831 composeBackboneElement(t, "output", name, element, index); 13832 if (element.hasFile()) { 13833 composeReference(t, "GenomicStudyAnalysisOutputComponent", "file", element.getFile(), -1); 13834 } 13835 if (element.hasType()) { 13836 composeCodeableConcept(t, "GenomicStudyAnalysisOutputComponent", "type", element.getType(), -1); 13837 } 13838 } 13839 13840 protected void composeGenomicStudyAnalysisPerformerComponent(Complex parent, String parentType, String name, GenomicStudy.GenomicStudyAnalysisPerformerComponent element, int index) { 13841 if (element == null) 13842 return; 13843 Complex t; 13844 if (Utilities.noString(parentType)) 13845 t = parent; 13846 else { 13847 t = parent.predicate("fhir:"+name,index > -1); 13848 } 13849 composeBackboneElement(t, "performer", name, element, index); 13850 if (element.hasActor()) { 13851 composeReference(t, "GenomicStudyAnalysisPerformerComponent", "actor", element.getActor(), -1); 13852 } 13853 if (element.hasRole()) { 13854 composeCodeableConcept(t, "GenomicStudyAnalysisPerformerComponent", "role", element.getRole(), -1); 13855 } 13856 } 13857 13858 protected void composeGenomicStudyAnalysisDeviceComponent(Complex parent, String parentType, String name, GenomicStudy.GenomicStudyAnalysisDeviceComponent element, int index) { 13859 if (element == null) 13860 return; 13861 Complex t; 13862 if (Utilities.noString(parentType)) 13863 t = parent; 13864 else { 13865 t = parent.predicate("fhir:"+name,index > -1); 13866 } 13867 composeBackboneElement(t, "device", name, element, index); 13868 if (element.hasDevice()) { 13869 composeReference(t, "GenomicStudyAnalysisDeviceComponent", "device", element.getDevice(), -1); 13870 } 13871 if (element.hasFunction()) { 13872 composeCodeableConcept(t, "GenomicStudyAnalysisDeviceComponent", "function", element.getFunction(), -1); 13873 } 13874 } 13875 13876 protected void composeGoal(Complex parent, String parentType, String name, Goal element, int index) { 13877 if (element == null) 13878 return; 13879 Complex t; 13880 if (Utilities.noString(parentType)) 13881 t = parent; 13882 else { 13883 t = parent.predicate("fhir:"+name,index > -1); 13884 } 13885 composeDomainResource(t, "Goal", name, element, index); 13886 for (int i = 0; i < element.getIdentifier().size(); i++) { 13887 composeIdentifier(t, "Goal", "identifier", element.getIdentifier().get(i), i); 13888 } 13889 if (element.hasLifecycleStatusElement()) { 13890 composeEnum(t, "Goal", "lifecycleStatus", element.getLifecycleStatusElement(), -1); 13891 } 13892 if (element.hasAchievementStatus()) { 13893 composeCodeableConcept(t, "Goal", "achievementStatus", element.getAchievementStatus(), -1); 13894 } 13895 for (int i = 0; i < element.getCategory().size(); i++) { 13896 composeCodeableConcept(t, "Goal", "category", element.getCategory().get(i), i); 13897 } 13898 if (element.hasContinuousElement()) { 13899 composeBoolean(t, "Goal", "continuous", element.getContinuousElement(), -1); 13900 } 13901 if (element.hasPriority()) { 13902 composeCodeableConcept(t, "Goal", "priority", element.getPriority(), -1); 13903 } 13904 if (element.hasDescription()) { 13905 composeCodeableConcept(t, "Goal", "description", element.getDescription(), -1); 13906 } 13907 if (element.hasSubject()) { 13908 composeReference(t, "Goal", "subject", element.getSubject(), -1); 13909 } 13910 if (element.hasStart()) { 13911 composeType(t, "Goal", "start", element.getStart(), -1); 13912 } 13913 for (int i = 0; i < element.getTarget().size(); i++) { 13914 composeGoalTargetComponent(t, "Goal", "target", element.getTarget().get(i), i); 13915 } 13916 if (element.hasStatusDateElement()) { 13917 composeDate(t, "Goal", "statusDate", element.getStatusDateElement(), -1); 13918 } 13919 if (element.hasStatusReasonElement()) { 13920 composeString(t, "Goal", "statusReason", element.getStatusReasonElement(), -1); 13921 } 13922 if (element.hasSource()) { 13923 composeReference(t, "Goal", "source", element.getSource(), -1); 13924 } 13925 for (int i = 0; i < element.getAddresses().size(); i++) { 13926 composeReference(t, "Goal", "addresses", element.getAddresses().get(i), i); 13927 } 13928 for (int i = 0; i < element.getNote().size(); i++) { 13929 composeAnnotation(t, "Goal", "note", element.getNote().get(i), i); 13930 } 13931 for (int i = 0; i < element.getOutcome().size(); i++) { 13932 composeCodeableReference(t, "Goal", "outcome", element.getOutcome().get(i), i); 13933 } 13934 } 13935 13936 protected void composeGoalTargetComponent(Complex parent, String parentType, String name, Goal.GoalTargetComponent element, int index) { 13937 if (element == null) 13938 return; 13939 Complex t; 13940 if (Utilities.noString(parentType)) 13941 t = parent; 13942 else { 13943 t = parent.predicate("fhir:"+name,index > -1); 13944 } 13945 composeBackboneElement(t, "target", name, element, index); 13946 if (element.hasMeasure()) { 13947 composeCodeableConcept(t, "GoalTargetComponent", "measure", element.getMeasure(), -1); 13948 } 13949 if (element.hasDetail()) { 13950 composeType(t, "GoalTargetComponent", "detail", element.getDetail(), -1); 13951 } 13952 if (element.hasDue()) { 13953 composeType(t, "GoalTargetComponent", "due", element.getDue(), -1); 13954 } 13955 } 13956 13957 protected void composeGraphDefinition(Complex parent, String parentType, String name, GraphDefinition element, int index) { 13958 if (element == null) 13959 return; 13960 Complex t; 13961 if (Utilities.noString(parentType)) 13962 t = parent; 13963 else { 13964 t = parent.predicate("fhir:"+name,index > -1); 13965 } 13966 composeCanonicalResource(t, "GraphDefinition", name, element, index); 13967 if (element.hasUrlElement()) { 13968 composeUri(t, "GraphDefinition", "url", element.getUrlElement(), -1); 13969 } 13970 for (int i = 0; i < element.getIdentifier().size(); i++) { 13971 composeIdentifier(t, "GraphDefinition", "identifier", element.getIdentifier().get(i), i); 13972 } 13973 if (element.hasVersionElement()) { 13974 composeString(t, "GraphDefinition", "version", element.getVersionElement(), -1); 13975 } 13976 if (element.hasVersionAlgorithm()) { 13977 composeType(t, "GraphDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 13978 } 13979 if (element.hasNameElement()) { 13980 composeString(t, "GraphDefinition", "name", element.getNameElement(), -1); 13981 } 13982 if (element.hasTitleElement()) { 13983 composeString(t, "GraphDefinition", "title", element.getTitleElement(), -1); 13984 } 13985 if (element.hasStatusElement()) { 13986 composeEnum(t, "GraphDefinition", "status", element.getStatusElement(), -1); 13987 } 13988 if (element.hasExperimentalElement()) { 13989 composeBoolean(t, "GraphDefinition", "experimental", element.getExperimentalElement(), -1); 13990 } 13991 if (element.hasDateElement()) { 13992 composeDateTime(t, "GraphDefinition", "date", element.getDateElement(), -1); 13993 } 13994 if (element.hasPublisherElement()) { 13995 composeString(t, "GraphDefinition", "publisher", element.getPublisherElement(), -1); 13996 } 13997 for (int i = 0; i < element.getContact().size(); i++) { 13998 composeContactDetail(t, "GraphDefinition", "contact", element.getContact().get(i), i); 13999 } 14000 if (element.hasDescriptionElement()) { 14001 composeMarkdown(t, "GraphDefinition", "description", element.getDescriptionElement(), -1); 14002 } 14003 for (int i = 0; i < element.getUseContext().size(); i++) { 14004 composeUsageContext(t, "GraphDefinition", "useContext", element.getUseContext().get(i), i); 14005 } 14006 for (int i = 0; i < element.getJurisdiction().size(); i++) { 14007 composeCodeableConcept(t, "GraphDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 14008 } 14009 if (element.hasPurposeElement()) { 14010 composeMarkdown(t, "GraphDefinition", "purpose", element.getPurposeElement(), -1); 14011 } 14012 if (element.hasCopyrightElement()) { 14013 composeMarkdown(t, "GraphDefinition", "copyright", element.getCopyrightElement(), -1); 14014 } 14015 if (element.hasCopyrightLabelElement()) { 14016 composeString(t, "GraphDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 14017 } 14018 if (element.hasStartElement()) { 14019 composeId(t, "GraphDefinition", "start", element.getStartElement(), -1); 14020 } 14021 for (int i = 0; i < element.getNode().size(); i++) { 14022 composeGraphDefinitionNodeComponent(t, "GraphDefinition", "node", element.getNode().get(i), i); 14023 } 14024 for (int i = 0; i < element.getLink().size(); i++) { 14025 composeGraphDefinitionLinkComponent(t, "GraphDefinition", "link", element.getLink().get(i), i); 14026 } 14027 } 14028 14029 protected void composeGraphDefinitionNodeComponent(Complex parent, String parentType, String name, GraphDefinition.GraphDefinitionNodeComponent element, int index) { 14030 if (element == null) 14031 return; 14032 Complex t; 14033 if (Utilities.noString(parentType)) 14034 t = parent; 14035 else { 14036 t = parent.predicate("fhir:"+name,index > -1); 14037 } 14038 composeBackboneElement(t, "node", name, element, index); 14039 if (element.hasNodeIdElement()) { 14040 composeId(t, "GraphDefinitionNodeComponent", "nodeId", element.getNodeIdElement(), -1); 14041 } 14042 if (element.hasDescriptionElement()) { 14043 composeString(t, "GraphDefinitionNodeComponent", "description", element.getDescriptionElement(), -1); 14044 } 14045 if (element.hasTypeElement()) { 14046 composeEnum(t, "GraphDefinitionNodeComponent", "type", element.getTypeElement(), -1); 14047 } 14048 if (element.hasProfileElement()) { 14049 composeCanonical(t, "GraphDefinitionNodeComponent", "profile", element.getProfileElement(), -1); 14050 } 14051 } 14052 14053 protected void composeGraphDefinitionLinkComponent(Complex parent, String parentType, String name, GraphDefinition.GraphDefinitionLinkComponent element, int index) { 14054 if (element == null) 14055 return; 14056 Complex t; 14057 if (Utilities.noString(parentType)) 14058 t = parent; 14059 else { 14060 t = parent.predicate("fhir:"+name,index > -1); 14061 } 14062 composeBackboneElement(t, "link", name, element, index); 14063 if (element.hasDescriptionElement()) { 14064 composeString(t, "GraphDefinitionLinkComponent", "description", element.getDescriptionElement(), -1); 14065 } 14066 if (element.hasMinElement()) { 14067 composeInteger(t, "GraphDefinitionLinkComponent", "min", element.getMinElement(), -1); 14068 } 14069 if (element.hasMaxElement()) { 14070 composeString(t, "GraphDefinitionLinkComponent", "max", element.getMaxElement(), -1); 14071 } 14072 if (element.hasSourceIdElement()) { 14073 composeId(t, "GraphDefinitionLinkComponent", "sourceId", element.getSourceIdElement(), -1); 14074 } 14075 if (element.hasPathElement()) { 14076 composeString(t, "GraphDefinitionLinkComponent", "path", element.getPathElement(), -1); 14077 } 14078 if (element.hasSliceNameElement()) { 14079 composeString(t, "GraphDefinitionLinkComponent", "sliceName", element.getSliceNameElement(), -1); 14080 } 14081 if (element.hasTargetIdElement()) { 14082 composeId(t, "GraphDefinitionLinkComponent", "targetId", element.getTargetIdElement(), -1); 14083 } 14084 if (element.hasParamsElement()) { 14085 composeString(t, "GraphDefinitionLinkComponent", "params", element.getParamsElement(), -1); 14086 } 14087 for (int i = 0; i < element.getCompartment().size(); i++) { 14088 composeGraphDefinitionLinkCompartmentComponent(t, "GraphDefinitionLinkComponent", "compartment", element.getCompartment().get(i), i); 14089 } 14090 } 14091 14092 protected void composeGraphDefinitionLinkCompartmentComponent(Complex parent, String parentType, String name, GraphDefinition.GraphDefinitionLinkCompartmentComponent element, int index) { 14093 if (element == null) 14094 return; 14095 Complex t; 14096 if (Utilities.noString(parentType)) 14097 t = parent; 14098 else { 14099 t = parent.predicate("fhir:"+name,index > -1); 14100 } 14101 composeBackboneElement(t, "compartment", name, element, index); 14102 if (element.hasUseElement()) { 14103 composeEnum(t, "GraphDefinitionLinkCompartmentComponent", "use", element.getUseElement(), -1); 14104 } 14105 if (element.hasRuleElement()) { 14106 composeEnum(t, "GraphDefinitionLinkCompartmentComponent", "rule", element.getRuleElement(), -1); 14107 } 14108 if (element.hasCodeElement()) { 14109 composeEnum(t, "GraphDefinitionLinkCompartmentComponent", "code", element.getCodeElement(), -1); 14110 } 14111 if (element.hasExpressionElement()) { 14112 composeString(t, "GraphDefinitionLinkCompartmentComponent", "expression", element.getExpressionElement(), -1); 14113 } 14114 if (element.hasDescriptionElement()) { 14115 composeString(t, "GraphDefinitionLinkCompartmentComponent", "description", element.getDescriptionElement(), -1); 14116 } 14117 } 14118 14119 protected void composeGroup(Complex parent, String parentType, String name, Group element, int index) { 14120 if (element == null) 14121 return; 14122 Complex t; 14123 if (Utilities.noString(parentType)) 14124 t = parent; 14125 else { 14126 t = parent.predicate("fhir:"+name,index > -1); 14127 } 14128 composeDomainResource(t, "Group", name, element, index); 14129 for (int i = 0; i < element.getIdentifier().size(); i++) { 14130 composeIdentifier(t, "Group", "identifier", element.getIdentifier().get(i), i); 14131 } 14132 if (element.hasActiveElement()) { 14133 composeBoolean(t, "Group", "active", element.getActiveElement(), -1); 14134 } 14135 if (element.hasTypeElement()) { 14136 composeEnum(t, "Group", "type", element.getTypeElement(), -1); 14137 } 14138 if (element.hasMembershipElement()) { 14139 composeEnum(t, "Group", "membership", element.getMembershipElement(), -1); 14140 } 14141 if (element.hasCode()) { 14142 composeCodeableConcept(t, "Group", "code", element.getCode(), -1); 14143 } 14144 if (element.hasNameElement()) { 14145 composeString(t, "Group", "name", element.getNameElement(), -1); 14146 } 14147 if (element.hasDescriptionElement()) { 14148 composeMarkdown(t, "Group", "description", element.getDescriptionElement(), -1); 14149 } 14150 if (element.hasQuantityElement()) { 14151 composeUnsignedInt(t, "Group", "quantity", element.getQuantityElement(), -1); 14152 } 14153 if (element.hasManagingEntity()) { 14154 composeReference(t, "Group", "managingEntity", element.getManagingEntity(), -1); 14155 } 14156 for (int i = 0; i < element.getCharacteristic().size(); i++) { 14157 composeGroupCharacteristicComponent(t, "Group", "characteristic", element.getCharacteristic().get(i), i); 14158 } 14159 for (int i = 0; i < element.getMember().size(); i++) { 14160 composeGroupMemberComponent(t, "Group", "member", element.getMember().get(i), i); 14161 } 14162 } 14163 14164 protected void composeGroupCharacteristicComponent(Complex parent, String parentType, String name, Group.GroupCharacteristicComponent element, int index) { 14165 if (element == null) 14166 return; 14167 Complex t; 14168 if (Utilities.noString(parentType)) 14169 t = parent; 14170 else { 14171 t = parent.predicate("fhir:"+name,index > -1); 14172 } 14173 composeBackboneElement(t, "characteristic", name, element, index); 14174 if (element.hasCode()) { 14175 composeCodeableConcept(t, "GroupCharacteristicComponent", "code", element.getCode(), -1); 14176 } 14177 if (element.hasValue()) { 14178 composeType(t, "GroupCharacteristicComponent", "value", element.getValue(), -1); 14179 } 14180 if (element.hasExcludeElement()) { 14181 composeBoolean(t, "GroupCharacteristicComponent", "exclude", element.getExcludeElement(), -1); 14182 } 14183 if (element.hasPeriod()) { 14184 composePeriod(t, "GroupCharacteristicComponent", "period", element.getPeriod(), -1); 14185 } 14186 } 14187 14188 protected void composeGroupMemberComponent(Complex parent, String parentType, String name, Group.GroupMemberComponent element, int index) { 14189 if (element == null) 14190 return; 14191 Complex t; 14192 if (Utilities.noString(parentType)) 14193 t = parent; 14194 else { 14195 t = parent.predicate("fhir:"+name,index > -1); 14196 } 14197 composeBackboneElement(t, "member", name, element, index); 14198 if (element.hasEntity()) { 14199 composeReference(t, "GroupMemberComponent", "entity", element.getEntity(), -1); 14200 } 14201 if (element.hasPeriod()) { 14202 composePeriod(t, "GroupMemberComponent", "period", element.getPeriod(), -1); 14203 } 14204 if (element.hasInactiveElement()) { 14205 composeBoolean(t, "GroupMemberComponent", "inactive", element.getInactiveElement(), -1); 14206 } 14207 } 14208 14209 protected void composeGuidanceResponse(Complex parent, String parentType, String name, GuidanceResponse element, int index) { 14210 if (element == null) 14211 return; 14212 Complex t; 14213 if (Utilities.noString(parentType)) 14214 t = parent; 14215 else { 14216 t = parent.predicate("fhir:"+name,index > -1); 14217 } 14218 composeDomainResource(t, "GuidanceResponse", name, element, index); 14219 if (element.hasRequestIdentifier()) { 14220 composeIdentifier(t, "GuidanceResponse", "requestIdentifier", element.getRequestIdentifier(), -1); 14221 } 14222 for (int i = 0; i < element.getIdentifier().size(); i++) { 14223 composeIdentifier(t, "GuidanceResponse", "identifier", element.getIdentifier().get(i), i); 14224 } 14225 if (element.hasModule()) { 14226 composeType(t, "GuidanceResponse", "module", element.getModule(), -1); 14227 } 14228 if (element.hasStatusElement()) { 14229 composeEnum(t, "GuidanceResponse", "status", element.getStatusElement(), -1); 14230 } 14231 if (element.hasSubject()) { 14232 composeReference(t, "GuidanceResponse", "subject", element.getSubject(), -1); 14233 } 14234 if (element.hasEncounter()) { 14235 composeReference(t, "GuidanceResponse", "encounter", element.getEncounter(), -1); 14236 } 14237 if (element.hasOccurrenceDateTimeElement()) { 14238 composeDateTime(t, "GuidanceResponse", "occurrenceDateTime", element.getOccurrenceDateTimeElement(), -1); 14239 } 14240 if (element.hasPerformer()) { 14241 composeReference(t, "GuidanceResponse", "performer", element.getPerformer(), -1); 14242 } 14243 for (int i = 0; i < element.getReason().size(); i++) { 14244 composeCodeableReference(t, "GuidanceResponse", "reason", element.getReason().get(i), i); 14245 } 14246 for (int i = 0; i < element.getNote().size(); i++) { 14247 composeAnnotation(t, "GuidanceResponse", "note", element.getNote().get(i), i); 14248 } 14249 if (element.hasEvaluationMessage()) { 14250 composeReference(t, "GuidanceResponse", "evaluationMessage", element.getEvaluationMessage(), -1); 14251 } 14252 if (element.hasOutputParameters()) { 14253 composeReference(t, "GuidanceResponse", "outputParameters", element.getOutputParameters(), -1); 14254 } 14255 for (int i = 0; i < element.getResult().size(); i++) { 14256 composeReference(t, "GuidanceResponse", "result", element.getResult().get(i), i); 14257 } 14258 for (int i = 0; i < element.getDataRequirement().size(); i++) { 14259 composeDataRequirement(t, "GuidanceResponse", "dataRequirement", element.getDataRequirement().get(i), i); 14260 } 14261 } 14262 14263 protected void composeHealthcareService(Complex parent, String parentType, String name, HealthcareService element, int index) { 14264 if (element == null) 14265 return; 14266 Complex t; 14267 if (Utilities.noString(parentType)) 14268 t = parent; 14269 else { 14270 t = parent.predicate("fhir:"+name,index > -1); 14271 } 14272 composeDomainResource(t, "HealthcareService", name, element, index); 14273 for (int i = 0; i < element.getIdentifier().size(); i++) { 14274 composeIdentifier(t, "HealthcareService", "identifier", element.getIdentifier().get(i), i); 14275 } 14276 if (element.hasActiveElement()) { 14277 composeBoolean(t, "HealthcareService", "active", element.getActiveElement(), -1); 14278 } 14279 if (element.hasProvidedBy()) { 14280 composeReference(t, "HealthcareService", "providedBy", element.getProvidedBy(), -1); 14281 } 14282 for (int i = 0; i < element.getOfferedIn().size(); i++) { 14283 composeReference(t, "HealthcareService", "offeredIn", element.getOfferedIn().get(i), i); 14284 } 14285 for (int i = 0; i < element.getCategory().size(); i++) { 14286 composeCodeableConcept(t, "HealthcareService", "category", element.getCategory().get(i), i); 14287 } 14288 for (int i = 0; i < element.getType().size(); i++) { 14289 composeCodeableConcept(t, "HealthcareService", "type", element.getType().get(i), i); 14290 } 14291 for (int i = 0; i < element.getSpecialty().size(); i++) { 14292 composeCodeableConcept(t, "HealthcareService", "specialty", element.getSpecialty().get(i), i); 14293 } 14294 for (int i = 0; i < element.getLocation().size(); i++) { 14295 composeReference(t, "HealthcareService", "location", element.getLocation().get(i), i); 14296 } 14297 if (element.hasNameElement()) { 14298 composeString(t, "HealthcareService", "name", element.getNameElement(), -1); 14299 } 14300 if (element.hasCommentElement()) { 14301 composeMarkdown(t, "HealthcareService", "comment", element.getCommentElement(), -1); 14302 } 14303 if (element.hasExtraDetailsElement()) { 14304 composeMarkdown(t, "HealthcareService", "extraDetails", element.getExtraDetailsElement(), -1); 14305 } 14306 if (element.hasPhoto()) { 14307 composeAttachment(t, "HealthcareService", "photo", element.getPhoto(), -1); 14308 } 14309 for (int i = 0; i < element.getContact().size(); i++) { 14310 composeExtendedContactDetail(t, "HealthcareService", "contact", element.getContact().get(i), i); 14311 } 14312 for (int i = 0; i < element.getCoverageArea().size(); i++) { 14313 composeReference(t, "HealthcareService", "coverageArea", element.getCoverageArea().get(i), i); 14314 } 14315 for (int i = 0; i < element.getServiceProvisionCode().size(); i++) { 14316 composeCodeableConcept(t, "HealthcareService", "serviceProvisionCode", element.getServiceProvisionCode().get(i), i); 14317 } 14318 for (int i = 0; i < element.getEligibility().size(); i++) { 14319 composeHealthcareServiceEligibilityComponent(t, "HealthcareService", "eligibility", element.getEligibility().get(i), i); 14320 } 14321 for (int i = 0; i < element.getProgram().size(); i++) { 14322 composeCodeableConcept(t, "HealthcareService", "program", element.getProgram().get(i), i); 14323 } 14324 for (int i = 0; i < element.getCharacteristic().size(); i++) { 14325 composeCodeableConcept(t, "HealthcareService", "characteristic", element.getCharacteristic().get(i), i); 14326 } 14327 for (int i = 0; i < element.getCommunication().size(); i++) { 14328 composeCodeableConcept(t, "HealthcareService", "communication", element.getCommunication().get(i), i); 14329 } 14330 for (int i = 0; i < element.getReferralMethod().size(); i++) { 14331 composeCodeableConcept(t, "HealthcareService", "referralMethod", element.getReferralMethod().get(i), i); 14332 } 14333 if (element.hasAppointmentRequiredElement()) { 14334 composeBoolean(t, "HealthcareService", "appointmentRequired", element.getAppointmentRequiredElement(), -1); 14335 } 14336 for (int i = 0; i < element.getAvailability().size(); i++) { 14337 composeAvailability(t, "HealthcareService", "availability", element.getAvailability().get(i), i); 14338 } 14339 for (int i = 0; i < element.getEndpoint().size(); i++) { 14340 composeReference(t, "HealthcareService", "endpoint", element.getEndpoint().get(i), i); 14341 } 14342 } 14343 14344 protected void composeHealthcareServiceEligibilityComponent(Complex parent, String parentType, String name, HealthcareService.HealthcareServiceEligibilityComponent element, int index) { 14345 if (element == null) 14346 return; 14347 Complex t; 14348 if (Utilities.noString(parentType)) 14349 t = parent; 14350 else { 14351 t = parent.predicate("fhir:"+name,index > -1); 14352 } 14353 composeBackboneElement(t, "eligibility", name, element, index); 14354 if (element.hasCode()) { 14355 composeCodeableConcept(t, "HealthcareServiceEligibilityComponent", "code", element.getCode(), -1); 14356 } 14357 if (element.hasCommentElement()) { 14358 composeMarkdown(t, "HealthcareServiceEligibilityComponent", "comment", element.getCommentElement(), -1); 14359 } 14360 } 14361 14362 protected void composeImagingSelection(Complex parent, String parentType, String name, ImagingSelection element, int index) { 14363 if (element == null) 14364 return; 14365 Complex t; 14366 if (Utilities.noString(parentType)) 14367 t = parent; 14368 else { 14369 t = parent.predicate("fhir:"+name,index > -1); 14370 } 14371 composeDomainResource(t, "ImagingSelection", name, element, index); 14372 for (int i = 0; i < element.getIdentifier().size(); i++) { 14373 composeIdentifier(t, "ImagingSelection", "identifier", element.getIdentifier().get(i), i); 14374 } 14375 if (element.hasStatusElement()) { 14376 composeEnum(t, "ImagingSelection", "status", element.getStatusElement(), -1); 14377 } 14378 if (element.hasSubject()) { 14379 composeReference(t, "ImagingSelection", "subject", element.getSubject(), -1); 14380 } 14381 if (element.hasIssuedElement()) { 14382 composeInstant(t, "ImagingSelection", "issued", element.getIssuedElement(), -1); 14383 } 14384 for (int i = 0; i < element.getPerformer().size(); i++) { 14385 composeImagingSelectionPerformerComponent(t, "ImagingSelection", "performer", element.getPerformer().get(i), i); 14386 } 14387 for (int i = 0; i < element.getBasedOn().size(); i++) { 14388 composeReference(t, "ImagingSelection", "basedOn", element.getBasedOn().get(i), i); 14389 } 14390 for (int i = 0; i < element.getCategory().size(); i++) { 14391 composeCodeableConcept(t, "ImagingSelection", "category", element.getCategory().get(i), i); 14392 } 14393 if (element.hasCode()) { 14394 composeCodeableConcept(t, "ImagingSelection", "code", element.getCode(), -1); 14395 } 14396 if (element.hasStudyUidElement()) { 14397 composeId(t, "ImagingSelection", "studyUid", element.getStudyUidElement(), -1); 14398 } 14399 for (int i = 0; i < element.getDerivedFrom().size(); i++) { 14400 composeReference(t, "ImagingSelection", "derivedFrom", element.getDerivedFrom().get(i), i); 14401 } 14402 for (int i = 0; i < element.getEndpoint().size(); i++) { 14403 composeReference(t, "ImagingSelection", "endpoint", element.getEndpoint().get(i), i); 14404 } 14405 if (element.hasSeriesUidElement()) { 14406 composeId(t, "ImagingSelection", "seriesUid", element.getSeriesUidElement(), -1); 14407 } 14408 if (element.hasSeriesNumberElement()) { 14409 composeUnsignedInt(t, "ImagingSelection", "seriesNumber", element.getSeriesNumberElement(), -1); 14410 } 14411 if (element.hasFrameOfReferenceUidElement()) { 14412 composeId(t, "ImagingSelection", "frameOfReferenceUid", element.getFrameOfReferenceUidElement(), -1); 14413 } 14414 if (element.hasBodySite()) { 14415 composeCodeableReference(t, "ImagingSelection", "bodySite", element.getBodySite(), -1); 14416 } 14417 for (int i = 0; i < element.getFocus().size(); i++) { 14418 composeReference(t, "ImagingSelection", "focus", element.getFocus().get(i), i); 14419 } 14420 for (int i = 0; i < element.getInstance().size(); i++) { 14421 composeImagingSelectionInstanceComponent(t, "ImagingSelection", "instance", element.getInstance().get(i), i); 14422 } 14423 } 14424 14425 protected void composeImagingSelectionPerformerComponent(Complex parent, String parentType, String name, ImagingSelection.ImagingSelectionPerformerComponent element, int index) { 14426 if (element == null) 14427 return; 14428 Complex t; 14429 if (Utilities.noString(parentType)) 14430 t = parent; 14431 else { 14432 t = parent.predicate("fhir:"+name,index > -1); 14433 } 14434 composeBackboneElement(t, "performer", name, element, index); 14435 if (element.hasFunction()) { 14436 composeCodeableConcept(t, "ImagingSelectionPerformerComponent", "function", element.getFunction(), -1); 14437 } 14438 if (element.hasActor()) { 14439 composeReference(t, "ImagingSelectionPerformerComponent", "actor", element.getActor(), -1); 14440 } 14441 } 14442 14443 protected void composeImagingSelectionInstanceComponent(Complex parent, String parentType, String name, ImagingSelection.ImagingSelectionInstanceComponent element, int index) { 14444 if (element == null) 14445 return; 14446 Complex t; 14447 if (Utilities.noString(parentType)) 14448 t = parent; 14449 else { 14450 t = parent.predicate("fhir:"+name,index > -1); 14451 } 14452 composeBackboneElement(t, "instance", name, element, index); 14453 if (element.hasUidElement()) { 14454 composeId(t, "ImagingSelectionInstanceComponent", "uid", element.getUidElement(), -1); 14455 } 14456 if (element.hasNumberElement()) { 14457 composeUnsignedInt(t, "ImagingSelectionInstanceComponent", "number", element.getNumberElement(), -1); 14458 } 14459 if (element.hasSopClass()) { 14460 composeCoding(t, "ImagingSelectionInstanceComponent", "sopClass", element.getSopClass(), -1); 14461 } 14462 for (int i = 0; i < element.getSubset().size(); i++) { 14463 composeString(t, "ImagingSelectionInstanceComponent", "subset", element.getSubset().get(i), i); 14464 } 14465 for (int i = 0; i < element.getImageRegion2D().size(); i++) { 14466 composeImagingSelectionImageRegion2DComponent(t, "ImagingSelectionInstanceComponent", "imageRegion2D", element.getImageRegion2D().get(i), i); 14467 } 14468 for (int i = 0; i < element.getImageRegion3D().size(); i++) { 14469 composeImagingSelectionImageRegion3DComponent(t, "ImagingSelectionInstanceComponent", "imageRegion3D", element.getImageRegion3D().get(i), i); 14470 } 14471 } 14472 14473 protected void composeImagingSelectionImageRegion2DComponent(Complex parent, String parentType, String name, ImagingSelection.ImageRegion2DComponent element, int index) { 14474 if (element == null) 14475 return; 14476 Complex t; 14477 if (Utilities.noString(parentType)) 14478 t = parent; 14479 else { 14480 t = parent.predicate("fhir:"+name,index > -1); 14481 } 14482 composeBackboneElement(t, "imageRegion2D", name, element, index); 14483 if (element.hasRegionTypeElement()) { 14484 composeEnum(t, "ImageRegion2DComponent", "regionType", element.getRegionTypeElement(), -1); 14485 } 14486 for (int i = 0; i < element.getCoordinate().size(); i++) { 14487 composeDecimal(t, "ImageRegion2DComponent", "coordinate", element.getCoordinate().get(i), i); 14488 } 14489 } 14490 14491 protected void composeImagingSelectionImageRegion3DComponent(Complex parent, String parentType, String name, ImagingSelection.ImageRegion3DComponent element, int index) { 14492 if (element == null) 14493 return; 14494 Complex t; 14495 if (Utilities.noString(parentType)) 14496 t = parent; 14497 else { 14498 t = parent.predicate("fhir:"+name,index > -1); 14499 } 14500 composeBackboneElement(t, "imageRegion3D", name, element, index); 14501 if (element.hasRegionTypeElement()) { 14502 composeEnum(t, "ImageRegion3DComponent", "regionType", element.getRegionTypeElement(), -1); 14503 } 14504 for (int i = 0; i < element.getCoordinate().size(); i++) { 14505 composeDecimal(t, "ImageRegion3DComponent", "coordinate", element.getCoordinate().get(i), i); 14506 } 14507 } 14508 14509 protected void composeImagingStudy(Complex parent, String parentType, String name, ImagingStudy element, int index) { 14510 if (element == null) 14511 return; 14512 Complex t; 14513 if (Utilities.noString(parentType)) 14514 t = parent; 14515 else { 14516 t = parent.predicate("fhir:"+name,index > -1); 14517 } 14518 composeDomainResource(t, "ImagingStudy", name, element, index); 14519 for (int i = 0; i < element.getIdentifier().size(); i++) { 14520 composeIdentifier(t, "ImagingStudy", "identifier", element.getIdentifier().get(i), i); 14521 } 14522 if (element.hasStatusElement()) { 14523 composeEnum(t, "ImagingStudy", "status", element.getStatusElement(), -1); 14524 } 14525 for (int i = 0; i < element.getModality().size(); i++) { 14526 composeCodeableConcept(t, "ImagingStudy", "modality", element.getModality().get(i), i); 14527 } 14528 if (element.hasSubject()) { 14529 composeReference(t, "ImagingStudy", "subject", element.getSubject(), -1); 14530 } 14531 if (element.hasEncounter()) { 14532 composeReference(t, "ImagingStudy", "encounter", element.getEncounter(), -1); 14533 } 14534 if (element.hasStartedElement()) { 14535 composeDateTime(t, "ImagingStudy", "started", element.getStartedElement(), -1); 14536 } 14537 for (int i = 0; i < element.getBasedOn().size(); i++) { 14538 composeReference(t, "ImagingStudy", "basedOn", element.getBasedOn().get(i), i); 14539 } 14540 for (int i = 0; i < element.getPartOf().size(); i++) { 14541 composeReference(t, "ImagingStudy", "partOf", element.getPartOf().get(i), i); 14542 } 14543 if (element.hasReferrer()) { 14544 composeReference(t, "ImagingStudy", "referrer", element.getReferrer(), -1); 14545 } 14546 for (int i = 0; i < element.getEndpoint().size(); i++) { 14547 composeReference(t, "ImagingStudy", "endpoint", element.getEndpoint().get(i), i); 14548 } 14549 if (element.hasNumberOfSeriesElement()) { 14550 composeUnsignedInt(t, "ImagingStudy", "numberOfSeries", element.getNumberOfSeriesElement(), -1); 14551 } 14552 if (element.hasNumberOfInstancesElement()) { 14553 composeUnsignedInt(t, "ImagingStudy", "numberOfInstances", element.getNumberOfInstancesElement(), -1); 14554 } 14555 for (int i = 0; i < element.getProcedure().size(); i++) { 14556 composeCodeableReference(t, "ImagingStudy", "procedure", element.getProcedure().get(i), i); 14557 } 14558 if (element.hasLocation()) { 14559 composeReference(t, "ImagingStudy", "location", element.getLocation(), -1); 14560 } 14561 for (int i = 0; i < element.getReason().size(); i++) { 14562 composeCodeableReference(t, "ImagingStudy", "reason", element.getReason().get(i), i); 14563 } 14564 for (int i = 0; i < element.getNote().size(); i++) { 14565 composeAnnotation(t, "ImagingStudy", "note", element.getNote().get(i), i); 14566 } 14567 if (element.hasDescriptionElement()) { 14568 composeString(t, "ImagingStudy", "description", element.getDescriptionElement(), -1); 14569 } 14570 for (int i = 0; i < element.getSeries().size(); i++) { 14571 composeImagingStudySeriesComponent(t, "ImagingStudy", "series", element.getSeries().get(i), i); 14572 } 14573 } 14574 14575 protected void composeImagingStudySeriesComponent(Complex parent, String parentType, String name, ImagingStudy.ImagingStudySeriesComponent element, int index) { 14576 if (element == null) 14577 return; 14578 Complex t; 14579 if (Utilities.noString(parentType)) 14580 t = parent; 14581 else { 14582 t = parent.predicate("fhir:"+name,index > -1); 14583 } 14584 composeBackboneElement(t, "series", name, element, index); 14585 if (element.hasUidElement()) { 14586 composeId(t, "ImagingStudySeriesComponent", "uid", element.getUidElement(), -1); 14587 } 14588 if (element.hasNumberElement()) { 14589 composeUnsignedInt(t, "ImagingStudySeriesComponent", "number", element.getNumberElement(), -1); 14590 } 14591 if (element.hasModality()) { 14592 composeCodeableConcept(t, "ImagingStudySeriesComponent", "modality", element.getModality(), -1); 14593 } 14594 if (element.hasDescriptionElement()) { 14595 composeString(t, "ImagingStudySeriesComponent", "description", element.getDescriptionElement(), -1); 14596 } 14597 if (element.hasNumberOfInstancesElement()) { 14598 composeUnsignedInt(t, "ImagingStudySeriesComponent", "numberOfInstances", element.getNumberOfInstancesElement(), -1); 14599 } 14600 for (int i = 0; i < element.getEndpoint().size(); i++) { 14601 composeReference(t, "ImagingStudySeriesComponent", "endpoint", element.getEndpoint().get(i), i); 14602 } 14603 if (element.hasBodySite()) { 14604 composeCodeableReference(t, "ImagingStudySeriesComponent", "bodySite", element.getBodySite(), -1); 14605 } 14606 if (element.hasLaterality()) { 14607 composeCodeableConcept(t, "ImagingStudySeriesComponent", "laterality", element.getLaterality(), -1); 14608 } 14609 for (int i = 0; i < element.getSpecimen().size(); i++) { 14610 composeReference(t, "ImagingStudySeriesComponent", "specimen", element.getSpecimen().get(i), i); 14611 } 14612 if (element.hasStartedElement()) { 14613 composeDateTime(t, "ImagingStudySeriesComponent", "started", element.getStartedElement(), -1); 14614 } 14615 for (int i = 0; i < element.getPerformer().size(); i++) { 14616 composeImagingStudySeriesPerformerComponent(t, "ImagingStudySeriesComponent", "performer", element.getPerformer().get(i), i); 14617 } 14618 for (int i = 0; i < element.getInstance().size(); i++) { 14619 composeImagingStudySeriesInstanceComponent(t, "ImagingStudySeriesComponent", "instance", element.getInstance().get(i), i); 14620 } 14621 } 14622 14623 protected void composeImagingStudySeriesPerformerComponent(Complex parent, String parentType, String name, ImagingStudy.ImagingStudySeriesPerformerComponent element, int index) { 14624 if (element == null) 14625 return; 14626 Complex t; 14627 if (Utilities.noString(parentType)) 14628 t = parent; 14629 else { 14630 t = parent.predicate("fhir:"+name,index > -1); 14631 } 14632 composeBackboneElement(t, "performer", name, element, index); 14633 if (element.hasFunction()) { 14634 composeCodeableConcept(t, "ImagingStudySeriesPerformerComponent", "function", element.getFunction(), -1); 14635 } 14636 if (element.hasActor()) { 14637 composeReference(t, "ImagingStudySeriesPerformerComponent", "actor", element.getActor(), -1); 14638 } 14639 } 14640 14641 protected void composeImagingStudySeriesInstanceComponent(Complex parent, String parentType, String name, ImagingStudy.ImagingStudySeriesInstanceComponent element, int index) { 14642 if (element == null) 14643 return; 14644 Complex t; 14645 if (Utilities.noString(parentType)) 14646 t = parent; 14647 else { 14648 t = parent.predicate("fhir:"+name,index > -1); 14649 } 14650 composeBackboneElement(t, "instance", name, element, index); 14651 if (element.hasUidElement()) { 14652 composeId(t, "ImagingStudySeriesInstanceComponent", "uid", element.getUidElement(), -1); 14653 } 14654 if (element.hasSopClass()) { 14655 composeCoding(t, "ImagingStudySeriesInstanceComponent", "sopClass", element.getSopClass(), -1); 14656 } 14657 if (element.hasNumberElement()) { 14658 composeUnsignedInt(t, "ImagingStudySeriesInstanceComponent", "number", element.getNumberElement(), -1); 14659 } 14660 if (element.hasTitleElement()) { 14661 composeString(t, "ImagingStudySeriesInstanceComponent", "title", element.getTitleElement(), -1); 14662 } 14663 } 14664 14665 protected void composeImmunization(Complex parent, String parentType, String name, Immunization element, int index) { 14666 if (element == null) 14667 return; 14668 Complex t; 14669 if (Utilities.noString(parentType)) 14670 t = parent; 14671 else { 14672 t = parent.predicate("fhir:"+name,index > -1); 14673 } 14674 composeDomainResource(t, "Immunization", name, element, index); 14675 for (int i = 0; i < element.getIdentifier().size(); i++) { 14676 composeIdentifier(t, "Immunization", "identifier", element.getIdentifier().get(i), i); 14677 } 14678 for (int i = 0; i < element.getBasedOn().size(); i++) { 14679 composeReference(t, "Immunization", "basedOn", element.getBasedOn().get(i), i); 14680 } 14681 if (element.hasStatusElement()) { 14682 composeEnum(t, "Immunization", "status", element.getStatusElement(), -1); 14683 } 14684 if (element.hasStatusReason()) { 14685 composeCodeableConcept(t, "Immunization", "statusReason", element.getStatusReason(), -1); 14686 } 14687 if (element.hasVaccineCode()) { 14688 composeCodeableConcept(t, "Immunization", "vaccineCode", element.getVaccineCode(), -1); 14689 } 14690 if (element.hasAdministeredProduct()) { 14691 composeCodeableReference(t, "Immunization", "administeredProduct", element.getAdministeredProduct(), -1); 14692 } 14693 if (element.hasManufacturer()) { 14694 composeCodeableReference(t, "Immunization", "manufacturer", element.getManufacturer(), -1); 14695 } 14696 if (element.hasLotNumberElement()) { 14697 composeString(t, "Immunization", "lotNumber", element.getLotNumberElement(), -1); 14698 } 14699 if (element.hasExpirationDateElement()) { 14700 composeDate(t, "Immunization", "expirationDate", element.getExpirationDateElement(), -1); 14701 } 14702 if (element.hasPatient()) { 14703 composeReference(t, "Immunization", "patient", element.getPatient(), -1); 14704 } 14705 if (element.hasEncounter()) { 14706 composeReference(t, "Immunization", "encounter", element.getEncounter(), -1); 14707 } 14708 for (int i = 0; i < element.getSupportingInformation().size(); i++) { 14709 composeReference(t, "Immunization", "supportingInformation", element.getSupportingInformation().get(i), i); 14710 } 14711 if (element.hasOccurrence()) { 14712 composeType(t, "Immunization", "occurrence", element.getOccurrence(), -1); 14713 } 14714 if (element.hasPrimarySourceElement()) { 14715 composeBoolean(t, "Immunization", "primarySource", element.getPrimarySourceElement(), -1); 14716 } 14717 if (element.hasInformationSource()) { 14718 composeCodeableReference(t, "Immunization", "informationSource", element.getInformationSource(), -1); 14719 } 14720 if (element.hasLocation()) { 14721 composeReference(t, "Immunization", "location", element.getLocation(), -1); 14722 } 14723 if (element.hasSite()) { 14724 composeCodeableConcept(t, "Immunization", "site", element.getSite(), -1); 14725 } 14726 if (element.hasRoute()) { 14727 composeCodeableConcept(t, "Immunization", "route", element.getRoute(), -1); 14728 } 14729 if (element.hasDoseQuantity()) { 14730 composeQuantity(t, "Immunization", "doseQuantity", element.getDoseQuantity(), -1); 14731 } 14732 for (int i = 0; i < element.getPerformer().size(); i++) { 14733 composeImmunizationPerformerComponent(t, "Immunization", "performer", element.getPerformer().get(i), i); 14734 } 14735 for (int i = 0; i < element.getNote().size(); i++) { 14736 composeAnnotation(t, "Immunization", "note", element.getNote().get(i), i); 14737 } 14738 for (int i = 0; i < element.getReason().size(); i++) { 14739 composeCodeableReference(t, "Immunization", "reason", element.getReason().get(i), i); 14740 } 14741 if (element.hasIsSubpotentElement()) { 14742 composeBoolean(t, "Immunization", "isSubpotent", element.getIsSubpotentElement(), -1); 14743 } 14744 for (int i = 0; i < element.getSubpotentReason().size(); i++) { 14745 composeCodeableConcept(t, "Immunization", "subpotentReason", element.getSubpotentReason().get(i), i); 14746 } 14747 for (int i = 0; i < element.getProgramEligibility().size(); i++) { 14748 composeImmunizationProgramEligibilityComponent(t, "Immunization", "programEligibility", element.getProgramEligibility().get(i), i); 14749 } 14750 if (element.hasFundingSource()) { 14751 composeCodeableConcept(t, "Immunization", "fundingSource", element.getFundingSource(), -1); 14752 } 14753 for (int i = 0; i < element.getReaction().size(); i++) { 14754 composeImmunizationReactionComponent(t, "Immunization", "reaction", element.getReaction().get(i), i); 14755 } 14756 for (int i = 0; i < element.getProtocolApplied().size(); i++) { 14757 composeImmunizationProtocolAppliedComponent(t, "Immunization", "protocolApplied", element.getProtocolApplied().get(i), i); 14758 } 14759 } 14760 14761 protected void composeImmunizationPerformerComponent(Complex parent, String parentType, String name, Immunization.ImmunizationPerformerComponent element, int index) { 14762 if (element == null) 14763 return; 14764 Complex t; 14765 if (Utilities.noString(parentType)) 14766 t = parent; 14767 else { 14768 t = parent.predicate("fhir:"+name,index > -1); 14769 } 14770 composeBackboneElement(t, "performer", name, element, index); 14771 if (element.hasFunction()) { 14772 composeCodeableConcept(t, "ImmunizationPerformerComponent", "function", element.getFunction(), -1); 14773 } 14774 if (element.hasActor()) { 14775 composeReference(t, "ImmunizationPerformerComponent", "actor", element.getActor(), -1); 14776 } 14777 } 14778 14779 protected void composeImmunizationProgramEligibilityComponent(Complex parent, String parentType, String name, Immunization.ImmunizationProgramEligibilityComponent element, int index) { 14780 if (element == null) 14781 return; 14782 Complex t; 14783 if (Utilities.noString(parentType)) 14784 t = parent; 14785 else { 14786 t = parent.predicate("fhir:"+name,index > -1); 14787 } 14788 composeBackboneElement(t, "programEligibility", name, element, index); 14789 if (element.hasProgram()) { 14790 composeCodeableConcept(t, "ImmunizationProgramEligibilityComponent", "program", element.getProgram(), -1); 14791 } 14792 if (element.hasProgramStatus()) { 14793 composeCodeableConcept(t, "ImmunizationProgramEligibilityComponent", "programStatus", element.getProgramStatus(), -1); 14794 } 14795 } 14796 14797 protected void composeImmunizationReactionComponent(Complex parent, String parentType, String name, Immunization.ImmunizationReactionComponent element, int index) { 14798 if (element == null) 14799 return; 14800 Complex t; 14801 if (Utilities.noString(parentType)) 14802 t = parent; 14803 else { 14804 t = parent.predicate("fhir:"+name,index > -1); 14805 } 14806 composeBackboneElement(t, "reaction", name, element, index); 14807 if (element.hasDateElement()) { 14808 composeDateTime(t, "ImmunizationReactionComponent", "date", element.getDateElement(), -1); 14809 } 14810 if (element.hasManifestation()) { 14811 composeCodeableReference(t, "ImmunizationReactionComponent", "manifestation", element.getManifestation(), -1); 14812 } 14813 if (element.hasReportedElement()) { 14814 composeBoolean(t, "ImmunizationReactionComponent", "reported", element.getReportedElement(), -1); 14815 } 14816 } 14817 14818 protected void composeImmunizationProtocolAppliedComponent(Complex parent, String parentType, String name, Immunization.ImmunizationProtocolAppliedComponent element, int index) { 14819 if (element == null) 14820 return; 14821 Complex t; 14822 if (Utilities.noString(parentType)) 14823 t = parent; 14824 else { 14825 t = parent.predicate("fhir:"+name,index > -1); 14826 } 14827 composeBackboneElement(t, "protocolApplied", name, element, index); 14828 if (element.hasSeriesElement()) { 14829 composeString(t, "ImmunizationProtocolAppliedComponent", "series", element.getSeriesElement(), -1); 14830 } 14831 if (element.hasAuthority()) { 14832 composeReference(t, "ImmunizationProtocolAppliedComponent", "authority", element.getAuthority(), -1); 14833 } 14834 for (int i = 0; i < element.getTargetDisease().size(); i++) { 14835 composeCodeableConcept(t, "ImmunizationProtocolAppliedComponent", "targetDisease", element.getTargetDisease().get(i), i); 14836 } 14837 if (element.hasDoseNumberElement()) { 14838 composeString(t, "ImmunizationProtocolAppliedComponent", "doseNumber", element.getDoseNumberElement(), -1); 14839 } 14840 if (element.hasSeriesDosesElement()) { 14841 composeString(t, "ImmunizationProtocolAppliedComponent", "seriesDoses", element.getSeriesDosesElement(), -1); 14842 } 14843 } 14844 14845 protected void composeImmunizationEvaluation(Complex parent, String parentType, String name, ImmunizationEvaluation element, int index) { 14846 if (element == null) 14847 return; 14848 Complex t; 14849 if (Utilities.noString(parentType)) 14850 t = parent; 14851 else { 14852 t = parent.predicate("fhir:"+name,index > -1); 14853 } 14854 composeDomainResource(t, "ImmunizationEvaluation", name, element, index); 14855 for (int i = 0; i < element.getIdentifier().size(); i++) { 14856 composeIdentifier(t, "ImmunizationEvaluation", "identifier", element.getIdentifier().get(i), i); 14857 } 14858 if (element.hasStatusElement()) { 14859 composeEnum(t, "ImmunizationEvaluation", "status", element.getStatusElement(), -1); 14860 } 14861 if (element.hasPatient()) { 14862 composeReference(t, "ImmunizationEvaluation", "patient", element.getPatient(), -1); 14863 } 14864 if (element.hasDateElement()) { 14865 composeDateTime(t, "ImmunizationEvaluation", "date", element.getDateElement(), -1); 14866 } 14867 if (element.hasAuthority()) { 14868 composeReference(t, "ImmunizationEvaluation", "authority", element.getAuthority(), -1); 14869 } 14870 if (element.hasTargetDisease()) { 14871 composeCodeableConcept(t, "ImmunizationEvaluation", "targetDisease", element.getTargetDisease(), -1); 14872 } 14873 if (element.hasImmunizationEvent()) { 14874 composeReference(t, "ImmunizationEvaluation", "immunizationEvent", element.getImmunizationEvent(), -1); 14875 } 14876 if (element.hasDoseStatus()) { 14877 composeCodeableConcept(t, "ImmunizationEvaluation", "doseStatus", element.getDoseStatus(), -1); 14878 } 14879 for (int i = 0; i < element.getDoseStatusReason().size(); i++) { 14880 composeCodeableConcept(t, "ImmunizationEvaluation", "doseStatusReason", element.getDoseStatusReason().get(i), i); 14881 } 14882 if (element.hasDescriptionElement()) { 14883 composeMarkdown(t, "ImmunizationEvaluation", "description", element.getDescriptionElement(), -1); 14884 } 14885 if (element.hasSeriesElement()) { 14886 composeString(t, "ImmunizationEvaluation", "series", element.getSeriesElement(), -1); 14887 } 14888 if (element.hasDoseNumberElement()) { 14889 composeString(t, "ImmunizationEvaluation", "doseNumber", element.getDoseNumberElement(), -1); 14890 } 14891 if (element.hasSeriesDosesElement()) { 14892 composeString(t, "ImmunizationEvaluation", "seriesDoses", element.getSeriesDosesElement(), -1); 14893 } 14894 } 14895 14896 protected void composeImmunizationRecommendation(Complex parent, String parentType, String name, ImmunizationRecommendation element, int index) { 14897 if (element == null) 14898 return; 14899 Complex t; 14900 if (Utilities.noString(parentType)) 14901 t = parent; 14902 else { 14903 t = parent.predicate("fhir:"+name,index > -1); 14904 } 14905 composeDomainResource(t, "ImmunizationRecommendation", name, element, index); 14906 for (int i = 0; i < element.getIdentifier().size(); i++) { 14907 composeIdentifier(t, "ImmunizationRecommendation", "identifier", element.getIdentifier().get(i), i); 14908 } 14909 if (element.hasPatient()) { 14910 composeReference(t, "ImmunizationRecommendation", "patient", element.getPatient(), -1); 14911 } 14912 if (element.hasDateElement()) { 14913 composeDateTime(t, "ImmunizationRecommendation", "date", element.getDateElement(), -1); 14914 } 14915 if (element.hasAuthority()) { 14916 composeReference(t, "ImmunizationRecommendation", "authority", element.getAuthority(), -1); 14917 } 14918 for (int i = 0; i < element.getRecommendation().size(); i++) { 14919 composeImmunizationRecommendationRecommendationComponent(t, "ImmunizationRecommendation", "recommendation", element.getRecommendation().get(i), i); 14920 } 14921 } 14922 14923 protected void composeImmunizationRecommendationRecommendationComponent(Complex parent, String parentType, String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element, int index) { 14924 if (element == null) 14925 return; 14926 Complex t; 14927 if (Utilities.noString(parentType)) 14928 t = parent; 14929 else { 14930 t = parent.predicate("fhir:"+name,index > -1); 14931 } 14932 composeBackboneElement(t, "recommendation", name, element, index); 14933 for (int i = 0; i < element.getVaccineCode().size(); i++) { 14934 composeCodeableConcept(t, "ImmunizationRecommendationRecommendationComponent", "vaccineCode", element.getVaccineCode().get(i), i); 14935 } 14936 for (int i = 0; i < element.getTargetDisease().size(); i++) { 14937 composeCodeableConcept(t, "ImmunizationRecommendationRecommendationComponent", "targetDisease", element.getTargetDisease().get(i), i); 14938 } 14939 for (int i = 0; i < element.getContraindicatedVaccineCode().size(); i++) { 14940 composeCodeableConcept(t, "ImmunizationRecommendationRecommendationComponent", "contraindicatedVaccineCode", element.getContraindicatedVaccineCode().get(i), i); 14941 } 14942 if (element.hasForecastStatus()) { 14943 composeCodeableConcept(t, "ImmunizationRecommendationRecommendationComponent", "forecastStatus", element.getForecastStatus(), -1); 14944 } 14945 for (int i = 0; i < element.getForecastReason().size(); i++) { 14946 composeCodeableConcept(t, "ImmunizationRecommendationRecommendationComponent", "forecastReason", element.getForecastReason().get(i), i); 14947 } 14948 for (int i = 0; i < element.getDateCriterion().size(); i++) { 14949 composeImmunizationRecommendationRecommendationDateCriterionComponent(t, "ImmunizationRecommendationRecommendationComponent", "dateCriterion", element.getDateCriterion().get(i), i); 14950 } 14951 if (element.hasDescriptionElement()) { 14952 composeMarkdown(t, "ImmunizationRecommendationRecommendationComponent", "description", element.getDescriptionElement(), -1); 14953 } 14954 if (element.hasSeriesElement()) { 14955 composeString(t, "ImmunizationRecommendationRecommendationComponent", "series", element.getSeriesElement(), -1); 14956 } 14957 if (element.hasDoseNumberElement()) { 14958 composeString(t, "ImmunizationRecommendationRecommendationComponent", "doseNumber", element.getDoseNumberElement(), -1); 14959 } 14960 if (element.hasSeriesDosesElement()) { 14961 composeString(t, "ImmunizationRecommendationRecommendationComponent", "seriesDoses", element.getSeriesDosesElement(), -1); 14962 } 14963 for (int i = 0; i < element.getSupportingImmunization().size(); i++) { 14964 composeReference(t, "ImmunizationRecommendationRecommendationComponent", "supportingImmunization", element.getSupportingImmunization().get(i), i); 14965 } 14966 for (int i = 0; i < element.getSupportingPatientInformation().size(); i++) { 14967 composeReference(t, "ImmunizationRecommendationRecommendationComponent", "supportingPatientInformation", element.getSupportingPatientInformation().get(i), i); 14968 } 14969 } 14970 14971 protected void composeImmunizationRecommendationRecommendationDateCriterionComponent(Complex parent, String parentType, String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element, int index) { 14972 if (element == null) 14973 return; 14974 Complex t; 14975 if (Utilities.noString(parentType)) 14976 t = parent; 14977 else { 14978 t = parent.predicate("fhir:"+name,index > -1); 14979 } 14980 composeBackboneElement(t, "dateCriterion", name, element, index); 14981 if (element.hasCode()) { 14982 composeCodeableConcept(t, "ImmunizationRecommendationRecommendationDateCriterionComponent", "code", element.getCode(), -1); 14983 } 14984 if (element.hasValueElement()) { 14985 composeDateTime(t, "ImmunizationRecommendationRecommendationDateCriterionComponent", "value", element.getValueElement(), -1); 14986 } 14987 } 14988 14989 protected void composeImplementationGuide(Complex parent, String parentType, String name, ImplementationGuide element, int index) { 14990 if (element == null) 14991 return; 14992 Complex t; 14993 if (Utilities.noString(parentType)) 14994 t = parent; 14995 else { 14996 t = parent.predicate("fhir:"+name,index > -1); 14997 } 14998 composeCanonicalResource(t, "ImplementationGuide", name, element, index); 14999 if (element.hasUrlElement()) { 15000 composeUri(t, "ImplementationGuide", "url", element.getUrlElement(), -1); 15001 } 15002 for (int i = 0; i < element.getIdentifier().size(); i++) { 15003 composeIdentifier(t, "ImplementationGuide", "identifier", element.getIdentifier().get(i), i); 15004 } 15005 if (element.hasVersionElement()) { 15006 composeString(t, "ImplementationGuide", "version", element.getVersionElement(), -1); 15007 } 15008 if (element.hasVersionAlgorithm()) { 15009 composeType(t, "ImplementationGuide", "versionAlgorithm", element.getVersionAlgorithm(), -1); 15010 } 15011 if (element.hasNameElement()) { 15012 composeString(t, "ImplementationGuide", "name", element.getNameElement(), -1); 15013 } 15014 if (element.hasTitleElement()) { 15015 composeString(t, "ImplementationGuide", "title", element.getTitleElement(), -1); 15016 } 15017 if (element.hasStatusElement()) { 15018 composeEnum(t, "ImplementationGuide", "status", element.getStatusElement(), -1); 15019 } 15020 if (element.hasExperimentalElement()) { 15021 composeBoolean(t, "ImplementationGuide", "experimental", element.getExperimentalElement(), -1); 15022 } 15023 if (element.hasDateElement()) { 15024 composeDateTime(t, "ImplementationGuide", "date", element.getDateElement(), -1); 15025 } 15026 if (element.hasPublisherElement()) { 15027 composeString(t, "ImplementationGuide", "publisher", element.getPublisherElement(), -1); 15028 } 15029 for (int i = 0; i < element.getContact().size(); i++) { 15030 composeContactDetail(t, "ImplementationGuide", "contact", element.getContact().get(i), i); 15031 } 15032 if (element.hasDescriptionElement()) { 15033 composeMarkdown(t, "ImplementationGuide", "description", element.getDescriptionElement(), -1); 15034 } 15035 for (int i = 0; i < element.getUseContext().size(); i++) { 15036 composeUsageContext(t, "ImplementationGuide", "useContext", element.getUseContext().get(i), i); 15037 } 15038 for (int i = 0; i < element.getJurisdiction().size(); i++) { 15039 composeCodeableConcept(t, "ImplementationGuide", "jurisdiction", element.getJurisdiction().get(i), i); 15040 } 15041 if (element.hasPurposeElement()) { 15042 composeMarkdown(t, "ImplementationGuide", "purpose", element.getPurposeElement(), -1); 15043 } 15044 if (element.hasCopyrightElement()) { 15045 composeMarkdown(t, "ImplementationGuide", "copyright", element.getCopyrightElement(), -1); 15046 } 15047 if (element.hasCopyrightLabelElement()) { 15048 composeString(t, "ImplementationGuide", "copyrightLabel", element.getCopyrightLabelElement(), -1); 15049 } 15050 if (element.hasPackageIdElement()) { 15051 composeId(t, "ImplementationGuide", "packageId", element.getPackageIdElement(), -1); 15052 } 15053 if (element.hasLicenseElement()) { 15054 composeEnum(t, "ImplementationGuide", "license", element.getLicenseElement(), -1); 15055 } 15056 for (int i = 0; i < element.getFhirVersion().size(); i++) { 15057 composeEnum(t, "ImplementationGuide", "fhirVersion", element.getFhirVersion().get(i), i); 15058 } 15059 for (int i = 0; i < element.getDependsOn().size(); i++) { 15060 composeImplementationGuideDependsOnComponent(t, "ImplementationGuide", "dependsOn", element.getDependsOn().get(i), i); 15061 } 15062 for (int i = 0; i < element.getGlobal().size(); i++) { 15063 composeImplementationGuideGlobalComponent(t, "ImplementationGuide", "global", element.getGlobal().get(i), i); 15064 } 15065 if (element.hasDefinition()) { 15066 composeImplementationGuideDefinitionComponent(t, "ImplementationGuide", "definition", element.getDefinition(), -1); 15067 } 15068 if (element.hasManifest()) { 15069 composeImplementationGuideManifestComponent(t, "ImplementationGuide", "manifest", element.getManifest(), -1); 15070 } 15071 } 15072 15073 protected void composeImplementationGuideDependsOnComponent(Complex parent, String parentType, String name, ImplementationGuide.ImplementationGuideDependsOnComponent element, int index) { 15074 if (element == null) 15075 return; 15076 Complex t; 15077 if (Utilities.noString(parentType)) 15078 t = parent; 15079 else { 15080 t = parent.predicate("fhir:"+name,index > -1); 15081 } 15082 composeBackboneElement(t, "dependsOn", name, element, index); 15083 if (element.hasUriElement()) { 15084 composeCanonical(t, "ImplementationGuideDependsOnComponent", "uri", element.getUriElement(), -1); 15085 } 15086 if (element.hasPackageIdElement()) { 15087 composeId(t, "ImplementationGuideDependsOnComponent", "packageId", element.getPackageIdElement(), -1); 15088 } 15089 if (element.hasVersionElement()) { 15090 composeString(t, "ImplementationGuideDependsOnComponent", "version", element.getVersionElement(), -1); 15091 } 15092 if (element.hasReasonElement()) { 15093 composeMarkdown(t, "ImplementationGuideDependsOnComponent", "reason", element.getReasonElement(), -1); 15094 } 15095 } 15096 15097 protected void composeImplementationGuideGlobalComponent(Complex parent, String parentType, String name, ImplementationGuide.ImplementationGuideGlobalComponent element, int index) { 15098 if (element == null) 15099 return; 15100 Complex t; 15101 if (Utilities.noString(parentType)) 15102 t = parent; 15103 else { 15104 t = parent.predicate("fhir:"+name,index > -1); 15105 } 15106 composeBackboneElement(t, "global", name, element, index); 15107 if (element.hasTypeElement()) { 15108 composeCode(t, "ImplementationGuideGlobalComponent", "type", element.getTypeElement(), -1); 15109 } 15110 if (element.hasProfileElement()) { 15111 composeCanonical(t, "ImplementationGuideGlobalComponent", "profile", element.getProfileElement(), -1); 15112 } 15113 } 15114 15115 protected void composeImplementationGuideDefinitionComponent(Complex parent, String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionComponent element, int index) { 15116 if (element == null) 15117 return; 15118 Complex t; 15119 if (Utilities.noString(parentType)) 15120 t = parent; 15121 else { 15122 t = parent.predicate("fhir:"+name,index > -1); 15123 } 15124 composeBackboneElement(t, "definition", name, element, index); 15125 for (int i = 0; i < element.getGrouping().size(); i++) { 15126 composeImplementationGuideDefinitionGroupingComponent(t, "ImplementationGuideDefinitionComponent", "grouping", element.getGrouping().get(i), i); 15127 } 15128 for (int i = 0; i < element.getResource().size(); i++) { 15129 composeImplementationGuideDefinitionResourceComponent(t, "ImplementationGuideDefinitionComponent", "resource", element.getResource().get(i), i); 15130 } 15131 if (element.hasPage()) { 15132 composeImplementationGuideDefinitionPageComponent(t, "ImplementationGuideDefinitionComponent", "page", element.getPage(), -1); 15133 } 15134 for (int i = 0; i < element.getParameter().size(); i++) { 15135 composeImplementationGuideDefinitionParameterComponent(t, "ImplementationGuideDefinitionComponent", "parameter", element.getParameter().get(i), i); 15136 } 15137 for (int i = 0; i < element.getTemplate().size(); i++) { 15138 composeImplementationGuideDefinitionTemplateComponent(t, "ImplementationGuideDefinitionComponent", "template", element.getTemplate().get(i), i); 15139 } 15140 } 15141 15142 protected void composeImplementationGuideDefinitionGroupingComponent(Complex parent, String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionGroupingComponent element, int index) { 15143 if (element == null) 15144 return; 15145 Complex t; 15146 if (Utilities.noString(parentType)) 15147 t = parent; 15148 else { 15149 t = parent.predicate("fhir:"+name,index > -1); 15150 } 15151 composeBackboneElement(t, "grouping", name, element, index); 15152 if (element.hasNameElement()) { 15153 composeString(t, "ImplementationGuideDefinitionGroupingComponent", "name", element.getNameElement(), -1); 15154 } 15155 if (element.hasDescriptionElement()) { 15156 composeMarkdown(t, "ImplementationGuideDefinitionGroupingComponent", "description", element.getDescriptionElement(), -1); 15157 } 15158 } 15159 15160 protected void composeImplementationGuideDefinitionResourceComponent(Complex parent, String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionResourceComponent element, int index) { 15161 if (element == null) 15162 return; 15163 Complex t; 15164 if (Utilities.noString(parentType)) 15165 t = parent; 15166 else { 15167 t = parent.predicate("fhir:"+name,index > -1); 15168 } 15169 composeBackboneElement(t, "resource", name, element, index); 15170 if (element.hasReference()) { 15171 composeReference(t, "ImplementationGuideDefinitionResourceComponent", "reference", element.getReference(), -1); 15172 } 15173 for (int i = 0; i < element.getFhirVersion().size(); i++) { 15174 composeEnum(t, "ImplementationGuideDefinitionResourceComponent", "fhirVersion", element.getFhirVersion().get(i), i); 15175 } 15176 if (element.hasNameElement()) { 15177 composeString(t, "ImplementationGuideDefinitionResourceComponent", "name", element.getNameElement(), -1); 15178 } 15179 if (element.hasDescriptionElement()) { 15180 composeMarkdown(t, "ImplementationGuideDefinitionResourceComponent", "description", element.getDescriptionElement(), -1); 15181 } 15182 if (element.hasIsExampleElement()) { 15183 composeBoolean(t, "ImplementationGuideDefinitionResourceComponent", "isExample", element.getIsExampleElement(), -1); 15184 } 15185 for (int i = 0; i < element.getProfile().size(); i++) { 15186 composeCanonical(t, "ImplementationGuideDefinitionResourceComponent", "profile", element.getProfile().get(i), i); 15187 } 15188 if (element.hasGroupingIdElement()) { 15189 composeId(t, "ImplementationGuideDefinitionResourceComponent", "groupingId", element.getGroupingIdElement(), -1); 15190 } 15191 } 15192 15193 protected void composeImplementationGuideDefinitionPageComponent(Complex parent, String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionPageComponent element, int index) { 15194 if (element == null) 15195 return; 15196 Complex t; 15197 if (Utilities.noString(parentType)) 15198 t = parent; 15199 else { 15200 t = parent.predicate("fhir:"+name,index > -1); 15201 } 15202 composeBackboneElement(t, "page", name, element, index); 15203 if (element.hasSource()) { 15204 composeType(t, "ImplementationGuideDefinitionPageComponent", "source", element.getSource(), -1); 15205 } 15206 if (element.hasNameElement()) { 15207 composeUrl(t, "ImplementationGuideDefinitionPageComponent", "name", element.getNameElement(), -1); 15208 } 15209 if (element.hasTitleElement()) { 15210 composeString(t, "ImplementationGuideDefinitionPageComponent", "title", element.getTitleElement(), -1); 15211 } 15212 if (element.hasGenerationElement()) { 15213 composeEnum(t, "ImplementationGuideDefinitionPageComponent", "generation", element.getGenerationElement(), -1); 15214 } 15215 for (int i = 0; i < element.getPage().size(); i++) { 15216 composeImplementationGuideDefinitionPageComponent(t, "ImplementationGuideDefinitionPageComponent", "page", element.getPage().get(i), i); 15217 } 15218 } 15219 15220 protected void composeImplementationGuideDefinitionParameterComponent(Complex parent, String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionParameterComponent element, int index) { 15221 if (element == null) 15222 return; 15223 Complex t; 15224 if (Utilities.noString(parentType)) 15225 t = parent; 15226 else { 15227 t = parent.predicate("fhir:"+name,index > -1); 15228 } 15229 composeBackboneElement(t, "parameter", name, element, index); 15230 if (element.hasCode()) { 15231 composeCoding(t, "ImplementationGuideDefinitionParameterComponent", "code", element.getCode(), -1); 15232 } 15233 if (element.hasValueElement()) { 15234 composeString(t, "ImplementationGuideDefinitionParameterComponent", "value", element.getValueElement(), -1); 15235 } 15236 } 15237 15238 protected void composeImplementationGuideDefinitionTemplateComponent(Complex parent, String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionTemplateComponent element, int index) { 15239 if (element == null) 15240 return; 15241 Complex t; 15242 if (Utilities.noString(parentType)) 15243 t = parent; 15244 else { 15245 t = parent.predicate("fhir:"+name,index > -1); 15246 } 15247 composeBackboneElement(t, "template", name, element, index); 15248 if (element.hasCodeElement()) { 15249 composeCode(t, "ImplementationGuideDefinitionTemplateComponent", "code", element.getCodeElement(), -1); 15250 } 15251 if (element.hasSourceElement()) { 15252 composeString(t, "ImplementationGuideDefinitionTemplateComponent", "source", element.getSourceElement(), -1); 15253 } 15254 if (element.hasScopeElement()) { 15255 composeString(t, "ImplementationGuideDefinitionTemplateComponent", "scope", element.getScopeElement(), -1); 15256 } 15257 } 15258 15259 protected void composeImplementationGuideManifestComponent(Complex parent, String parentType, String name, ImplementationGuide.ImplementationGuideManifestComponent element, int index) { 15260 if (element == null) 15261 return; 15262 Complex t; 15263 if (Utilities.noString(parentType)) 15264 t = parent; 15265 else { 15266 t = parent.predicate("fhir:"+name,index > -1); 15267 } 15268 composeBackboneElement(t, "manifest", name, element, index); 15269 if (element.hasRenderingElement()) { 15270 composeUrl(t, "ImplementationGuideManifestComponent", "rendering", element.getRenderingElement(), -1); 15271 } 15272 for (int i = 0; i < element.getResource().size(); i++) { 15273 composeImplementationGuideManifestResourceComponent(t, "ImplementationGuideManifestComponent", "resource", element.getResource().get(i), i); 15274 } 15275 for (int i = 0; i < element.getPage().size(); i++) { 15276 composeImplementationGuideManifestPageComponent(t, "ImplementationGuideManifestComponent", "page", element.getPage().get(i), i); 15277 } 15278 for (int i = 0; i < element.getImage().size(); i++) { 15279 composeString(t, "ImplementationGuideManifestComponent", "image", element.getImage().get(i), i); 15280 } 15281 for (int i = 0; i < element.getOther().size(); i++) { 15282 composeString(t, "ImplementationGuideManifestComponent", "other", element.getOther().get(i), i); 15283 } 15284 } 15285 15286 protected void composeImplementationGuideManifestResourceComponent(Complex parent, String parentType, String name, ImplementationGuide.ManifestResourceComponent element, int index) { 15287 if (element == null) 15288 return; 15289 Complex t; 15290 if (Utilities.noString(parentType)) 15291 t = parent; 15292 else { 15293 t = parent.predicate("fhir:"+name,index > -1); 15294 } 15295 composeBackboneElement(t, "resource", name, element, index); 15296 if (element.hasReference()) { 15297 composeReference(t, "ManifestResourceComponent", "reference", element.getReference(), -1); 15298 } 15299 if (element.hasIsExampleElement()) { 15300 composeBoolean(t, "ManifestResourceComponent", "isExample", element.getIsExampleElement(), -1); 15301 } 15302 for (int i = 0; i < element.getProfile().size(); i++) { 15303 composeCanonical(t, "ManifestResourceComponent", "profile", element.getProfile().get(i), i); 15304 } 15305 if (element.hasRelativePathElement()) { 15306 composeUrl(t, "ManifestResourceComponent", "relativePath", element.getRelativePathElement(), -1); 15307 } 15308 } 15309 15310 protected void composeImplementationGuideManifestPageComponent(Complex parent, String parentType, String name, ImplementationGuide.ManifestPageComponent element, int index) { 15311 if (element == null) 15312 return; 15313 Complex t; 15314 if (Utilities.noString(parentType)) 15315 t = parent; 15316 else { 15317 t = parent.predicate("fhir:"+name,index > -1); 15318 } 15319 composeBackboneElement(t, "page", name, element, index); 15320 if (element.hasNameElement()) { 15321 composeString(t, "ManifestPageComponent", "name", element.getNameElement(), -1); 15322 } 15323 if (element.hasTitleElement()) { 15324 composeString(t, "ManifestPageComponent", "title", element.getTitleElement(), -1); 15325 } 15326 for (int i = 0; i < element.getAnchor().size(); i++) { 15327 composeString(t, "ManifestPageComponent", "anchor", element.getAnchor().get(i), i); 15328 } 15329 } 15330 15331 protected void composeIngredient(Complex parent, String parentType, String name, Ingredient element, int index) { 15332 if (element == null) 15333 return; 15334 Complex t; 15335 if (Utilities.noString(parentType)) 15336 t = parent; 15337 else { 15338 t = parent.predicate("fhir:"+name,index > -1); 15339 } 15340 composeDomainResource(t, "Ingredient", name, element, index); 15341 if (element.hasIdentifier()) { 15342 composeIdentifier(t, "Ingredient", "identifier", element.getIdentifier(), -1); 15343 } 15344 if (element.hasStatusElement()) { 15345 composeEnum(t, "Ingredient", "status", element.getStatusElement(), -1); 15346 } 15347 for (int i = 0; i < element.getFor().size(); i++) { 15348 composeReference(t, "Ingredient", "for", element.getFor().get(i), i); 15349 } 15350 if (element.hasRole()) { 15351 composeCodeableConcept(t, "Ingredient", "role", element.getRole(), -1); 15352 } 15353 for (int i = 0; i < element.getFunction().size(); i++) { 15354 composeCodeableConcept(t, "Ingredient", "function", element.getFunction().get(i), i); 15355 } 15356 if (element.hasGroup()) { 15357 composeCodeableConcept(t, "Ingredient", "group", element.getGroup(), -1); 15358 } 15359 if (element.hasAllergenicIndicatorElement()) { 15360 composeBoolean(t, "Ingredient", "allergenicIndicator", element.getAllergenicIndicatorElement(), -1); 15361 } 15362 if (element.hasCommentElement()) { 15363 composeMarkdown(t, "Ingredient", "comment", element.getCommentElement(), -1); 15364 } 15365 for (int i = 0; i < element.getManufacturer().size(); i++) { 15366 composeIngredientManufacturerComponent(t, "Ingredient", "manufacturer", element.getManufacturer().get(i), i); 15367 } 15368 if (element.hasSubstance()) { 15369 composeIngredientSubstanceComponent(t, "Ingredient", "substance", element.getSubstance(), -1); 15370 } 15371 } 15372 15373 protected void composeIngredientManufacturerComponent(Complex parent, String parentType, String name, Ingredient.IngredientManufacturerComponent element, int index) { 15374 if (element == null) 15375 return; 15376 Complex t; 15377 if (Utilities.noString(parentType)) 15378 t = parent; 15379 else { 15380 t = parent.predicate("fhir:"+name,index > -1); 15381 } 15382 composeBackboneElement(t, "manufacturer", name, element, index); 15383 if (element.hasRoleElement()) { 15384 composeEnum(t, "IngredientManufacturerComponent", "role", element.getRoleElement(), -1); 15385 } 15386 if (element.hasManufacturer()) { 15387 composeReference(t, "IngredientManufacturerComponent", "manufacturer", element.getManufacturer(), -1); 15388 } 15389 } 15390 15391 protected void composeIngredientSubstanceComponent(Complex parent, String parentType, String name, Ingredient.IngredientSubstanceComponent element, int index) { 15392 if (element == null) 15393 return; 15394 Complex t; 15395 if (Utilities.noString(parentType)) 15396 t = parent; 15397 else { 15398 t = parent.predicate("fhir:"+name,index > -1); 15399 } 15400 composeBackboneElement(t, "substance", name, element, index); 15401 if (element.hasCode()) { 15402 composeCodeableReference(t, "IngredientSubstanceComponent", "code", element.getCode(), -1); 15403 } 15404 for (int i = 0; i < element.getStrength().size(); i++) { 15405 composeIngredientSubstanceStrengthComponent(t, "IngredientSubstanceComponent", "strength", element.getStrength().get(i), i); 15406 } 15407 } 15408 15409 protected void composeIngredientSubstanceStrengthComponent(Complex parent, String parentType, String name, Ingredient.IngredientSubstanceStrengthComponent element, int index) { 15410 if (element == null) 15411 return; 15412 Complex t; 15413 if (Utilities.noString(parentType)) 15414 t = parent; 15415 else { 15416 t = parent.predicate("fhir:"+name,index > -1); 15417 } 15418 composeBackboneElement(t, "strength", name, element, index); 15419 if (element.hasPresentation()) { 15420 composeType(t, "IngredientSubstanceStrengthComponent", "presentation", element.getPresentation(), -1); 15421 } 15422 if (element.hasTextPresentationElement()) { 15423 composeString(t, "IngredientSubstanceStrengthComponent", "textPresentation", element.getTextPresentationElement(), -1); 15424 } 15425 if (element.hasConcentration()) { 15426 composeType(t, "IngredientSubstanceStrengthComponent", "concentration", element.getConcentration(), -1); 15427 } 15428 if (element.hasTextConcentrationElement()) { 15429 composeString(t, "IngredientSubstanceStrengthComponent", "textConcentration", element.getTextConcentrationElement(), -1); 15430 } 15431 if (element.hasBasis()) { 15432 composeCodeableConcept(t, "IngredientSubstanceStrengthComponent", "basis", element.getBasis(), -1); 15433 } 15434 if (element.hasMeasurementPointElement()) { 15435 composeString(t, "IngredientSubstanceStrengthComponent", "measurementPoint", element.getMeasurementPointElement(), -1); 15436 } 15437 for (int i = 0; i < element.getCountry().size(); i++) { 15438 composeCodeableConcept(t, "IngredientSubstanceStrengthComponent", "country", element.getCountry().get(i), i); 15439 } 15440 for (int i = 0; i < element.getReferenceStrength().size(); i++) { 15441 composeIngredientSubstanceStrengthReferenceStrengthComponent(t, "IngredientSubstanceStrengthComponent", "referenceStrength", element.getReferenceStrength().get(i), i); 15442 } 15443 } 15444 15445 protected void composeIngredientSubstanceStrengthReferenceStrengthComponent(Complex parent, String parentType, String name, Ingredient.IngredientSubstanceStrengthReferenceStrengthComponent element, int index) { 15446 if (element == null) 15447 return; 15448 Complex t; 15449 if (Utilities.noString(parentType)) 15450 t = parent; 15451 else { 15452 t = parent.predicate("fhir:"+name,index > -1); 15453 } 15454 composeBackboneElement(t, "referenceStrength", name, element, index); 15455 if (element.hasSubstance()) { 15456 composeCodeableReference(t, "IngredientSubstanceStrengthReferenceStrengthComponent", "substance", element.getSubstance(), -1); 15457 } 15458 if (element.hasStrength()) { 15459 composeType(t, "IngredientSubstanceStrengthReferenceStrengthComponent", "strength", element.getStrength(), -1); 15460 } 15461 if (element.hasMeasurementPointElement()) { 15462 composeString(t, "IngredientSubstanceStrengthReferenceStrengthComponent", "measurementPoint", element.getMeasurementPointElement(), -1); 15463 } 15464 for (int i = 0; i < element.getCountry().size(); i++) { 15465 composeCodeableConcept(t, "IngredientSubstanceStrengthReferenceStrengthComponent", "country", element.getCountry().get(i), i); 15466 } 15467 } 15468 15469 protected void composeInsurancePlan(Complex parent, String parentType, String name, InsurancePlan element, int index) { 15470 if (element == null) 15471 return; 15472 Complex t; 15473 if (Utilities.noString(parentType)) 15474 t = parent; 15475 else { 15476 t = parent.predicate("fhir:"+name,index > -1); 15477 } 15478 composeDomainResource(t, "InsurancePlan", name, element, index); 15479 for (int i = 0; i < element.getIdentifier().size(); i++) { 15480 composeIdentifier(t, "InsurancePlan", "identifier", element.getIdentifier().get(i), i); 15481 } 15482 if (element.hasStatusElement()) { 15483 composeEnum(t, "InsurancePlan", "status", element.getStatusElement(), -1); 15484 } 15485 for (int i = 0; i < element.getType().size(); i++) { 15486 composeCodeableConcept(t, "InsurancePlan", "type", element.getType().get(i), i); 15487 } 15488 if (element.hasNameElement()) { 15489 composeString(t, "InsurancePlan", "name", element.getNameElement(), -1); 15490 } 15491 for (int i = 0; i < element.getAlias().size(); i++) { 15492 composeString(t, "InsurancePlan", "alias", element.getAlias().get(i), i); 15493 } 15494 if (element.hasPeriod()) { 15495 composePeriod(t, "InsurancePlan", "period", element.getPeriod(), -1); 15496 } 15497 if (element.hasOwnedBy()) { 15498 composeReference(t, "InsurancePlan", "ownedBy", element.getOwnedBy(), -1); 15499 } 15500 if (element.hasAdministeredBy()) { 15501 composeReference(t, "InsurancePlan", "administeredBy", element.getAdministeredBy(), -1); 15502 } 15503 for (int i = 0; i < element.getCoverageArea().size(); i++) { 15504 composeReference(t, "InsurancePlan", "coverageArea", element.getCoverageArea().get(i), i); 15505 } 15506 for (int i = 0; i < element.getContact().size(); i++) { 15507 composeExtendedContactDetail(t, "InsurancePlan", "contact", element.getContact().get(i), i); 15508 } 15509 for (int i = 0; i < element.getEndpoint().size(); i++) { 15510 composeReference(t, "InsurancePlan", "endpoint", element.getEndpoint().get(i), i); 15511 } 15512 for (int i = 0; i < element.getNetwork().size(); i++) { 15513 composeReference(t, "InsurancePlan", "network", element.getNetwork().get(i), i); 15514 } 15515 for (int i = 0; i < element.getCoverage().size(); i++) { 15516 composeInsurancePlanCoverageComponent(t, "InsurancePlan", "coverage", element.getCoverage().get(i), i); 15517 } 15518 for (int i = 0; i < element.getPlan().size(); i++) { 15519 composeInsurancePlanPlanComponent(t, "InsurancePlan", "plan", element.getPlan().get(i), i); 15520 } 15521 } 15522 15523 protected void composeInsurancePlanCoverageComponent(Complex parent, String parentType, String name, InsurancePlan.InsurancePlanCoverageComponent element, int index) { 15524 if (element == null) 15525 return; 15526 Complex t; 15527 if (Utilities.noString(parentType)) 15528 t = parent; 15529 else { 15530 t = parent.predicate("fhir:"+name,index > -1); 15531 } 15532 composeBackboneElement(t, "coverage", name, element, index); 15533 if (element.hasType()) { 15534 composeCodeableConcept(t, "InsurancePlanCoverageComponent", "type", element.getType(), -1); 15535 } 15536 for (int i = 0; i < element.getNetwork().size(); i++) { 15537 composeReference(t, "InsurancePlanCoverageComponent", "network", element.getNetwork().get(i), i); 15538 } 15539 for (int i = 0; i < element.getBenefit().size(); i++) { 15540 composeInsurancePlanCoverageBenefitComponent(t, "InsurancePlanCoverageComponent", "benefit", element.getBenefit().get(i), i); 15541 } 15542 } 15543 15544 protected void composeInsurancePlanCoverageBenefitComponent(Complex parent, String parentType, String name, InsurancePlan.CoverageBenefitComponent element, int index) { 15545 if (element == null) 15546 return; 15547 Complex t; 15548 if (Utilities.noString(parentType)) 15549 t = parent; 15550 else { 15551 t = parent.predicate("fhir:"+name,index > -1); 15552 } 15553 composeBackboneElement(t, "benefit", name, element, index); 15554 if (element.hasType()) { 15555 composeCodeableConcept(t, "CoverageBenefitComponent", "type", element.getType(), -1); 15556 } 15557 if (element.hasRequirementElement()) { 15558 composeString(t, "CoverageBenefitComponent", "requirement", element.getRequirementElement(), -1); 15559 } 15560 for (int i = 0; i < element.getLimit().size(); i++) { 15561 composeInsurancePlanCoverageBenefitLimitComponent(t, "CoverageBenefitComponent", "limit", element.getLimit().get(i), i); 15562 } 15563 } 15564 15565 protected void composeInsurancePlanCoverageBenefitLimitComponent(Complex parent, String parentType, String name, InsurancePlan.CoverageBenefitLimitComponent element, int index) { 15566 if (element == null) 15567 return; 15568 Complex t; 15569 if (Utilities.noString(parentType)) 15570 t = parent; 15571 else { 15572 t = parent.predicate("fhir:"+name,index > -1); 15573 } 15574 composeBackboneElement(t, "limit", name, element, index); 15575 if (element.hasValue()) { 15576 composeQuantity(t, "CoverageBenefitLimitComponent", "value", element.getValue(), -1); 15577 } 15578 if (element.hasCode()) { 15579 composeCodeableConcept(t, "CoverageBenefitLimitComponent", "code", element.getCode(), -1); 15580 } 15581 } 15582 15583 protected void composeInsurancePlanPlanComponent(Complex parent, String parentType, String name, InsurancePlan.InsurancePlanPlanComponent element, int index) { 15584 if (element == null) 15585 return; 15586 Complex t; 15587 if (Utilities.noString(parentType)) 15588 t = parent; 15589 else { 15590 t = parent.predicate("fhir:"+name,index > -1); 15591 } 15592 composeBackboneElement(t, "plan", name, element, index); 15593 for (int i = 0; i < element.getIdentifier().size(); i++) { 15594 composeIdentifier(t, "InsurancePlanPlanComponent", "identifier", element.getIdentifier().get(i), i); 15595 } 15596 if (element.hasType()) { 15597 composeCodeableConcept(t, "InsurancePlanPlanComponent", "type", element.getType(), -1); 15598 } 15599 for (int i = 0; i < element.getCoverageArea().size(); i++) { 15600 composeReference(t, "InsurancePlanPlanComponent", "coverageArea", element.getCoverageArea().get(i), i); 15601 } 15602 for (int i = 0; i < element.getNetwork().size(); i++) { 15603 composeReference(t, "InsurancePlanPlanComponent", "network", element.getNetwork().get(i), i); 15604 } 15605 for (int i = 0; i < element.getGeneralCost().size(); i++) { 15606 composeInsurancePlanPlanGeneralCostComponent(t, "InsurancePlanPlanComponent", "generalCost", element.getGeneralCost().get(i), i); 15607 } 15608 for (int i = 0; i < element.getSpecificCost().size(); i++) { 15609 composeInsurancePlanPlanSpecificCostComponent(t, "InsurancePlanPlanComponent", "specificCost", element.getSpecificCost().get(i), i); 15610 } 15611 } 15612 15613 protected void composeInsurancePlanPlanGeneralCostComponent(Complex parent, String parentType, String name, InsurancePlan.InsurancePlanPlanGeneralCostComponent element, int index) { 15614 if (element == null) 15615 return; 15616 Complex t; 15617 if (Utilities.noString(parentType)) 15618 t = parent; 15619 else { 15620 t = parent.predicate("fhir:"+name,index > -1); 15621 } 15622 composeBackboneElement(t, "generalCost", name, element, index); 15623 if (element.hasType()) { 15624 composeCodeableConcept(t, "InsurancePlanPlanGeneralCostComponent", "type", element.getType(), -1); 15625 } 15626 if (element.hasGroupSizeElement()) { 15627 composePositiveInt(t, "InsurancePlanPlanGeneralCostComponent", "groupSize", element.getGroupSizeElement(), -1); 15628 } 15629 if (element.hasCost()) { 15630 composeMoney(t, "InsurancePlanPlanGeneralCostComponent", "cost", element.getCost(), -1); 15631 } 15632 if (element.hasCommentElement()) { 15633 composeString(t, "InsurancePlanPlanGeneralCostComponent", "comment", element.getCommentElement(), -1); 15634 } 15635 } 15636 15637 protected void composeInsurancePlanPlanSpecificCostComponent(Complex parent, String parentType, String name, InsurancePlan.InsurancePlanPlanSpecificCostComponent element, int index) { 15638 if (element == null) 15639 return; 15640 Complex t; 15641 if (Utilities.noString(parentType)) 15642 t = parent; 15643 else { 15644 t = parent.predicate("fhir:"+name,index > -1); 15645 } 15646 composeBackboneElement(t, "specificCost", name, element, index); 15647 if (element.hasCategory()) { 15648 composeCodeableConcept(t, "InsurancePlanPlanSpecificCostComponent", "category", element.getCategory(), -1); 15649 } 15650 for (int i = 0; i < element.getBenefit().size(); i++) { 15651 composeInsurancePlanPlanBenefitComponent(t, "InsurancePlanPlanSpecificCostComponent", "benefit", element.getBenefit().get(i), i); 15652 } 15653 } 15654 15655 protected void composeInsurancePlanPlanBenefitComponent(Complex parent, String parentType, String name, InsurancePlan.PlanBenefitComponent element, int index) { 15656 if (element == null) 15657 return; 15658 Complex t; 15659 if (Utilities.noString(parentType)) 15660 t = parent; 15661 else { 15662 t = parent.predicate("fhir:"+name,index > -1); 15663 } 15664 composeBackboneElement(t, "benefit", name, element, index); 15665 if (element.hasType()) { 15666 composeCodeableConcept(t, "PlanBenefitComponent", "type", element.getType(), -1); 15667 } 15668 for (int i = 0; i < element.getCost().size(); i++) { 15669 composeInsurancePlanPlanBenefitCostComponent(t, "PlanBenefitComponent", "cost", element.getCost().get(i), i); 15670 } 15671 } 15672 15673 protected void composeInsurancePlanPlanBenefitCostComponent(Complex parent, String parentType, String name, InsurancePlan.PlanBenefitCostComponent element, int index) { 15674 if (element == null) 15675 return; 15676 Complex t; 15677 if (Utilities.noString(parentType)) 15678 t = parent; 15679 else { 15680 t = parent.predicate("fhir:"+name,index > -1); 15681 } 15682 composeBackboneElement(t, "cost", name, element, index); 15683 if (element.hasType()) { 15684 composeCodeableConcept(t, "PlanBenefitCostComponent", "type", element.getType(), -1); 15685 } 15686 if (element.hasApplicability()) { 15687 composeCodeableConcept(t, "PlanBenefitCostComponent", "applicability", element.getApplicability(), -1); 15688 } 15689 for (int i = 0; i < element.getQualifiers().size(); i++) { 15690 composeCodeableConcept(t, "PlanBenefitCostComponent", "qualifiers", element.getQualifiers().get(i), i); 15691 } 15692 if (element.hasValue()) { 15693 composeQuantity(t, "PlanBenefitCostComponent", "value", element.getValue(), -1); 15694 } 15695 } 15696 15697 protected void composeInventoryItem(Complex parent, String parentType, String name, InventoryItem element, int index) { 15698 if (element == null) 15699 return; 15700 Complex t; 15701 if (Utilities.noString(parentType)) 15702 t = parent; 15703 else { 15704 t = parent.predicate("fhir:"+name,index > -1); 15705 } 15706 composeDomainResource(t, "InventoryItem", name, element, index); 15707 for (int i = 0; i < element.getIdentifier().size(); i++) { 15708 composeIdentifier(t, "InventoryItem", "identifier", element.getIdentifier().get(i), i); 15709 } 15710 if (element.hasStatusElement()) { 15711 composeEnum(t, "InventoryItem", "status", element.getStatusElement(), -1); 15712 } 15713 for (int i = 0; i < element.getCategory().size(); i++) { 15714 composeCodeableConcept(t, "InventoryItem", "category", element.getCategory().get(i), i); 15715 } 15716 for (int i = 0; i < element.getCode().size(); i++) { 15717 composeCodeableConcept(t, "InventoryItem", "code", element.getCode().get(i), i); 15718 } 15719 for (int i = 0; i < element.getName().size(); i++) { 15720 composeInventoryItemNameComponent(t, "InventoryItem", "name", element.getName().get(i), i); 15721 } 15722 for (int i = 0; i < element.getResponsibleOrganization().size(); i++) { 15723 composeInventoryItemResponsibleOrganizationComponent(t, "InventoryItem", "responsibleOrganization", element.getResponsibleOrganization().get(i), i); 15724 } 15725 if (element.hasDescription()) { 15726 composeInventoryItemDescriptionComponent(t, "InventoryItem", "description", element.getDescription(), -1); 15727 } 15728 for (int i = 0; i < element.getInventoryStatus().size(); i++) { 15729 composeCodeableConcept(t, "InventoryItem", "inventoryStatus", element.getInventoryStatus().get(i), i); 15730 } 15731 if (element.hasBaseUnit()) { 15732 composeCodeableConcept(t, "InventoryItem", "baseUnit", element.getBaseUnit(), -1); 15733 } 15734 if (element.hasNetContent()) { 15735 composeQuantity(t, "InventoryItem", "netContent", element.getNetContent(), -1); 15736 } 15737 for (int i = 0; i < element.getAssociation().size(); i++) { 15738 composeInventoryItemAssociationComponent(t, "InventoryItem", "association", element.getAssociation().get(i), i); 15739 } 15740 for (int i = 0; i < element.getCharacteristic().size(); i++) { 15741 composeInventoryItemCharacteristicComponent(t, "InventoryItem", "characteristic", element.getCharacteristic().get(i), i); 15742 } 15743 if (element.hasInstance()) { 15744 composeInventoryItemInstanceComponent(t, "InventoryItem", "instance", element.getInstance(), -1); 15745 } 15746 if (element.hasProductReference()) { 15747 composeReference(t, "InventoryItem", "productReference", element.getProductReference(), -1); 15748 } 15749 } 15750 15751 protected void composeInventoryItemNameComponent(Complex parent, String parentType, String name, InventoryItem.InventoryItemNameComponent element, int index) { 15752 if (element == null) 15753 return; 15754 Complex t; 15755 if (Utilities.noString(parentType)) 15756 t = parent; 15757 else { 15758 t = parent.predicate("fhir:"+name,index > -1); 15759 } 15760 composeBackboneElement(t, "name", name, element, index); 15761 if (element.hasNameType()) { 15762 composeCoding(t, "InventoryItemNameComponent", "nameType", element.getNameType(), -1); 15763 } 15764 if (element.hasLanguageElement()) { 15765 composeEnum(t, "InventoryItemNameComponent", "language", element.getLanguageElement(), -1); 15766 } 15767 if (element.hasNameElement()) { 15768 composeString(t, "InventoryItemNameComponent", "name", element.getNameElement(), -1); 15769 } 15770 } 15771 15772 protected void composeInventoryItemResponsibleOrganizationComponent(Complex parent, String parentType, String name, InventoryItem.InventoryItemResponsibleOrganizationComponent element, int index) { 15773 if (element == null) 15774 return; 15775 Complex t; 15776 if (Utilities.noString(parentType)) 15777 t = parent; 15778 else { 15779 t = parent.predicate("fhir:"+name,index > -1); 15780 } 15781 composeBackboneElement(t, "responsibleOrganization", name, element, index); 15782 if (element.hasRole()) { 15783 composeCodeableConcept(t, "InventoryItemResponsibleOrganizationComponent", "role", element.getRole(), -1); 15784 } 15785 if (element.hasOrganization()) { 15786 composeReference(t, "InventoryItemResponsibleOrganizationComponent", "organization", element.getOrganization(), -1); 15787 } 15788 } 15789 15790 protected void composeInventoryItemDescriptionComponent(Complex parent, String parentType, String name, InventoryItem.InventoryItemDescriptionComponent element, int index) { 15791 if (element == null) 15792 return; 15793 Complex t; 15794 if (Utilities.noString(parentType)) 15795 t = parent; 15796 else { 15797 t = parent.predicate("fhir:"+name,index > -1); 15798 } 15799 composeBackboneElement(t, "description", name, element, index); 15800 if (element.hasLanguageElement()) { 15801 composeEnum(t, "InventoryItemDescriptionComponent", "language", element.getLanguageElement(), -1); 15802 } 15803 if (element.hasDescriptionElement()) { 15804 composeString(t, "InventoryItemDescriptionComponent", "description", element.getDescriptionElement(), -1); 15805 } 15806 } 15807 15808 protected void composeInventoryItemAssociationComponent(Complex parent, String parentType, String name, InventoryItem.InventoryItemAssociationComponent element, int index) { 15809 if (element == null) 15810 return; 15811 Complex t; 15812 if (Utilities.noString(parentType)) 15813 t = parent; 15814 else { 15815 t = parent.predicate("fhir:"+name,index > -1); 15816 } 15817 composeBackboneElement(t, "association", name, element, index); 15818 if (element.hasAssociationType()) { 15819 composeCodeableConcept(t, "InventoryItemAssociationComponent", "associationType", element.getAssociationType(), -1); 15820 } 15821 if (element.hasRelatedItem()) { 15822 composeReference(t, "InventoryItemAssociationComponent", "relatedItem", element.getRelatedItem(), -1); 15823 } 15824 if (element.hasQuantity()) { 15825 composeRatio(t, "InventoryItemAssociationComponent", "quantity", element.getQuantity(), -1); 15826 } 15827 } 15828 15829 protected void composeInventoryItemCharacteristicComponent(Complex parent, String parentType, String name, InventoryItem.InventoryItemCharacteristicComponent element, int index) { 15830 if (element == null) 15831 return; 15832 Complex t; 15833 if (Utilities.noString(parentType)) 15834 t = parent; 15835 else { 15836 t = parent.predicate("fhir:"+name,index > -1); 15837 } 15838 composeBackboneElement(t, "characteristic", name, element, index); 15839 if (element.hasCharacteristicType()) { 15840 composeCodeableConcept(t, "InventoryItemCharacteristicComponent", "characteristicType", element.getCharacteristicType(), -1); 15841 } 15842 if (element.hasValue()) { 15843 composeType(t, "InventoryItemCharacteristicComponent", "value", element.getValue(), -1); 15844 } 15845 } 15846 15847 protected void composeInventoryItemInstanceComponent(Complex parent, String parentType, String name, InventoryItem.InventoryItemInstanceComponent element, int index) { 15848 if (element == null) 15849 return; 15850 Complex t; 15851 if (Utilities.noString(parentType)) 15852 t = parent; 15853 else { 15854 t = parent.predicate("fhir:"+name,index > -1); 15855 } 15856 composeBackboneElement(t, "instance", name, element, index); 15857 for (int i = 0; i < element.getIdentifier().size(); i++) { 15858 composeIdentifier(t, "InventoryItemInstanceComponent", "identifier", element.getIdentifier().get(i), i); 15859 } 15860 if (element.hasLotNumberElement()) { 15861 composeString(t, "InventoryItemInstanceComponent", "lotNumber", element.getLotNumberElement(), -1); 15862 } 15863 if (element.hasExpiryElement()) { 15864 composeDateTime(t, "InventoryItemInstanceComponent", "expiry", element.getExpiryElement(), -1); 15865 } 15866 if (element.hasSubject()) { 15867 composeReference(t, "InventoryItemInstanceComponent", "subject", element.getSubject(), -1); 15868 } 15869 if (element.hasLocation()) { 15870 composeReference(t, "InventoryItemInstanceComponent", "location", element.getLocation(), -1); 15871 } 15872 } 15873 15874 protected void composeInventoryReport(Complex parent, String parentType, String name, InventoryReport element, int index) { 15875 if (element == null) 15876 return; 15877 Complex t; 15878 if (Utilities.noString(parentType)) 15879 t = parent; 15880 else { 15881 t = parent.predicate("fhir:"+name,index > -1); 15882 } 15883 composeDomainResource(t, "InventoryReport", name, element, index); 15884 for (int i = 0; i < element.getIdentifier().size(); i++) { 15885 composeIdentifier(t, "InventoryReport", "identifier", element.getIdentifier().get(i), i); 15886 } 15887 if (element.hasStatusElement()) { 15888 composeEnum(t, "InventoryReport", "status", element.getStatusElement(), -1); 15889 } 15890 if (element.hasCountTypeElement()) { 15891 composeEnum(t, "InventoryReport", "countType", element.getCountTypeElement(), -1); 15892 } 15893 if (element.hasOperationType()) { 15894 composeCodeableConcept(t, "InventoryReport", "operationType", element.getOperationType(), -1); 15895 } 15896 if (element.hasOperationTypeReason()) { 15897 composeCodeableConcept(t, "InventoryReport", "operationTypeReason", element.getOperationTypeReason(), -1); 15898 } 15899 if (element.hasReportedDateTimeElement()) { 15900 composeDateTime(t, "InventoryReport", "reportedDateTime", element.getReportedDateTimeElement(), -1); 15901 } 15902 if (element.hasReporter()) { 15903 composeReference(t, "InventoryReport", "reporter", element.getReporter(), -1); 15904 } 15905 if (element.hasReportingPeriod()) { 15906 composePeriod(t, "InventoryReport", "reportingPeriod", element.getReportingPeriod(), -1); 15907 } 15908 for (int i = 0; i < element.getInventoryListing().size(); i++) { 15909 composeInventoryReportInventoryListingComponent(t, "InventoryReport", "inventoryListing", element.getInventoryListing().get(i), i); 15910 } 15911 for (int i = 0; i < element.getNote().size(); i++) { 15912 composeAnnotation(t, "InventoryReport", "note", element.getNote().get(i), i); 15913 } 15914 } 15915 15916 protected void composeInventoryReportInventoryListingComponent(Complex parent, String parentType, String name, InventoryReport.InventoryReportInventoryListingComponent element, int index) { 15917 if (element == null) 15918 return; 15919 Complex t; 15920 if (Utilities.noString(parentType)) 15921 t = parent; 15922 else { 15923 t = parent.predicate("fhir:"+name,index > -1); 15924 } 15925 composeBackboneElement(t, "inventoryListing", name, element, index); 15926 if (element.hasLocation()) { 15927 composeReference(t, "InventoryReportInventoryListingComponent", "location", element.getLocation(), -1); 15928 } 15929 if (element.hasItemStatus()) { 15930 composeCodeableConcept(t, "InventoryReportInventoryListingComponent", "itemStatus", element.getItemStatus(), -1); 15931 } 15932 if (element.hasCountingDateTimeElement()) { 15933 composeDateTime(t, "InventoryReportInventoryListingComponent", "countingDateTime", element.getCountingDateTimeElement(), -1); 15934 } 15935 for (int i = 0; i < element.getItem().size(); i++) { 15936 composeInventoryReportInventoryListingItemComponent(t, "InventoryReportInventoryListingComponent", "item", element.getItem().get(i), i); 15937 } 15938 } 15939 15940 protected void composeInventoryReportInventoryListingItemComponent(Complex parent, String parentType, String name, InventoryReport.InventoryReportInventoryListingItemComponent element, int index) { 15941 if (element == null) 15942 return; 15943 Complex t; 15944 if (Utilities.noString(parentType)) 15945 t = parent; 15946 else { 15947 t = parent.predicate("fhir:"+name,index > -1); 15948 } 15949 composeBackboneElement(t, "item", name, element, index); 15950 if (element.hasCategory()) { 15951 composeCodeableConcept(t, "InventoryReportInventoryListingItemComponent", "category", element.getCategory(), -1); 15952 } 15953 if (element.hasQuantity()) { 15954 composeQuantity(t, "InventoryReportInventoryListingItemComponent", "quantity", element.getQuantity(), -1); 15955 } 15956 if (element.hasItem()) { 15957 composeCodeableReference(t, "InventoryReportInventoryListingItemComponent", "item", element.getItem(), -1); 15958 } 15959 } 15960 15961 protected void composeInvoice(Complex parent, String parentType, String name, Invoice element, int index) { 15962 if (element == null) 15963 return; 15964 Complex t; 15965 if (Utilities.noString(parentType)) 15966 t = parent; 15967 else { 15968 t = parent.predicate("fhir:"+name,index > -1); 15969 } 15970 composeDomainResource(t, "Invoice", name, element, index); 15971 for (int i = 0; i < element.getIdentifier().size(); i++) { 15972 composeIdentifier(t, "Invoice", "identifier", element.getIdentifier().get(i), i); 15973 } 15974 if (element.hasStatusElement()) { 15975 composeEnum(t, "Invoice", "status", element.getStatusElement(), -1); 15976 } 15977 if (element.hasCancelledReasonElement()) { 15978 composeString(t, "Invoice", "cancelledReason", element.getCancelledReasonElement(), -1); 15979 } 15980 if (element.hasType()) { 15981 composeCodeableConcept(t, "Invoice", "type", element.getType(), -1); 15982 } 15983 if (element.hasSubject()) { 15984 composeReference(t, "Invoice", "subject", element.getSubject(), -1); 15985 } 15986 if (element.hasRecipient()) { 15987 composeReference(t, "Invoice", "recipient", element.getRecipient(), -1); 15988 } 15989 if (element.hasDateElement()) { 15990 composeDateTime(t, "Invoice", "date", element.getDateElement(), -1); 15991 } 15992 if (element.hasCreationElement()) { 15993 composeDateTime(t, "Invoice", "creation", element.getCreationElement(), -1); 15994 } 15995 if (element.hasPeriod()) { 15996 composeType(t, "Invoice", "period", element.getPeriod(), -1); 15997 } 15998 for (int i = 0; i < element.getParticipant().size(); i++) { 15999 composeInvoiceParticipantComponent(t, "Invoice", "participant", element.getParticipant().get(i), i); 16000 } 16001 if (element.hasIssuer()) { 16002 composeReference(t, "Invoice", "issuer", element.getIssuer(), -1); 16003 } 16004 if (element.hasAccount()) { 16005 composeReference(t, "Invoice", "account", element.getAccount(), -1); 16006 } 16007 for (int i = 0; i < element.getLineItem().size(); i++) { 16008 composeInvoiceLineItemComponent(t, "Invoice", "lineItem", element.getLineItem().get(i), i); 16009 } 16010 for (int i = 0; i < element.getTotalPriceComponent().size(); i++) { 16011 composeMonetaryComponent(t, "Invoice", "totalPriceComponent", element.getTotalPriceComponent().get(i), i); 16012 } 16013 if (element.hasTotalNet()) { 16014 composeMoney(t, "Invoice", "totalNet", element.getTotalNet(), -1); 16015 } 16016 if (element.hasTotalGross()) { 16017 composeMoney(t, "Invoice", "totalGross", element.getTotalGross(), -1); 16018 } 16019 if (element.hasPaymentTermsElement()) { 16020 composeMarkdown(t, "Invoice", "paymentTerms", element.getPaymentTermsElement(), -1); 16021 } 16022 for (int i = 0; i < element.getNote().size(); i++) { 16023 composeAnnotation(t, "Invoice", "note", element.getNote().get(i), i); 16024 } 16025 } 16026 16027 protected void composeInvoiceParticipantComponent(Complex parent, String parentType, String name, Invoice.InvoiceParticipantComponent element, int index) { 16028 if (element == null) 16029 return; 16030 Complex t; 16031 if (Utilities.noString(parentType)) 16032 t = parent; 16033 else { 16034 t = parent.predicate("fhir:"+name,index > -1); 16035 } 16036 composeBackboneElement(t, "participant", name, element, index); 16037 if (element.hasRole()) { 16038 composeCodeableConcept(t, "InvoiceParticipantComponent", "role", element.getRole(), -1); 16039 } 16040 if (element.hasActor()) { 16041 composeReference(t, "InvoiceParticipantComponent", "actor", element.getActor(), -1); 16042 } 16043 } 16044 16045 protected void composeInvoiceLineItemComponent(Complex parent, String parentType, String name, Invoice.InvoiceLineItemComponent element, int index) { 16046 if (element == null) 16047 return; 16048 Complex t; 16049 if (Utilities.noString(parentType)) 16050 t = parent; 16051 else { 16052 t = parent.predicate("fhir:"+name,index > -1); 16053 } 16054 composeBackboneElement(t, "lineItem", name, element, index); 16055 if (element.hasSequenceElement()) { 16056 composePositiveInt(t, "InvoiceLineItemComponent", "sequence", element.getSequenceElement(), -1); 16057 } 16058 if (element.hasServiced()) { 16059 composeType(t, "InvoiceLineItemComponent", "serviced", element.getServiced(), -1); 16060 } 16061 if (element.hasChargeItem()) { 16062 composeType(t, "InvoiceLineItemComponent", "chargeItem", element.getChargeItem(), -1); 16063 } 16064 for (int i = 0; i < element.getPriceComponent().size(); i++) { 16065 composeMonetaryComponent(t, "InvoiceLineItemComponent", "priceComponent", element.getPriceComponent().get(i), i); 16066 } 16067 } 16068 16069 protected void composeLibrary(Complex parent, String parentType, String name, Library element, int index) { 16070 if (element == null) 16071 return; 16072 Complex t; 16073 if (Utilities.noString(parentType)) 16074 t = parent; 16075 else { 16076 t = parent.predicate("fhir:"+name,index > -1); 16077 } 16078 composeMetadataResource(t, "Library", name, element, index); 16079 if (element.hasUrlElement()) { 16080 composeUri(t, "Library", "url", element.getUrlElement(), -1); 16081 } 16082 for (int i = 0; i < element.getIdentifier().size(); i++) { 16083 composeIdentifier(t, "Library", "identifier", element.getIdentifier().get(i), i); 16084 } 16085 if (element.hasVersionElement()) { 16086 composeString(t, "Library", "version", element.getVersionElement(), -1); 16087 } 16088 if (element.hasVersionAlgorithm()) { 16089 composeType(t, "Library", "versionAlgorithm", element.getVersionAlgorithm(), -1); 16090 } 16091 if (element.hasNameElement()) { 16092 composeString(t, "Library", "name", element.getNameElement(), -1); 16093 } 16094 if (element.hasTitleElement()) { 16095 composeString(t, "Library", "title", element.getTitleElement(), -1); 16096 } 16097 if (element.hasSubtitleElement()) { 16098 composeString(t, "Library", "subtitle", element.getSubtitleElement(), -1); 16099 } 16100 if (element.hasStatusElement()) { 16101 composeEnum(t, "Library", "status", element.getStatusElement(), -1); 16102 } 16103 if (element.hasExperimentalElement()) { 16104 composeBoolean(t, "Library", "experimental", element.getExperimentalElement(), -1); 16105 } 16106 if (element.hasType()) { 16107 composeCodeableConcept(t, "Library", "type", element.getType(), -1); 16108 } 16109 if (element.hasSubject()) { 16110 composeType(t, "Library", "subject", element.getSubject(), -1); 16111 } 16112 if (element.hasDateElement()) { 16113 composeDateTime(t, "Library", "date", element.getDateElement(), -1); 16114 } 16115 if (element.hasPublisherElement()) { 16116 composeString(t, "Library", "publisher", element.getPublisherElement(), -1); 16117 } 16118 for (int i = 0; i < element.getContact().size(); i++) { 16119 composeContactDetail(t, "Library", "contact", element.getContact().get(i), i); 16120 } 16121 if (element.hasDescriptionElement()) { 16122 composeMarkdown(t, "Library", "description", element.getDescriptionElement(), -1); 16123 } 16124 for (int i = 0; i < element.getUseContext().size(); i++) { 16125 composeUsageContext(t, "Library", "useContext", element.getUseContext().get(i), i); 16126 } 16127 for (int i = 0; i < element.getJurisdiction().size(); i++) { 16128 composeCodeableConcept(t, "Library", "jurisdiction", element.getJurisdiction().get(i), i); 16129 } 16130 if (element.hasPurposeElement()) { 16131 composeMarkdown(t, "Library", "purpose", element.getPurposeElement(), -1); 16132 } 16133 if (element.hasUsageElement()) { 16134 composeMarkdown(t, "Library", "usage", element.getUsageElement(), -1); 16135 } 16136 if (element.hasCopyrightElement()) { 16137 composeMarkdown(t, "Library", "copyright", element.getCopyrightElement(), -1); 16138 } 16139 if (element.hasCopyrightLabelElement()) { 16140 composeString(t, "Library", "copyrightLabel", element.getCopyrightLabelElement(), -1); 16141 } 16142 if (element.hasApprovalDateElement()) { 16143 composeDate(t, "Library", "approvalDate", element.getApprovalDateElement(), -1); 16144 } 16145 if (element.hasLastReviewDateElement()) { 16146 composeDate(t, "Library", "lastReviewDate", element.getLastReviewDateElement(), -1); 16147 } 16148 if (element.hasEffectivePeriod()) { 16149 composePeriod(t, "Library", "effectivePeriod", element.getEffectivePeriod(), -1); 16150 } 16151 for (int i = 0; i < element.getTopic().size(); i++) { 16152 composeCodeableConcept(t, "Library", "topic", element.getTopic().get(i), i); 16153 } 16154 for (int i = 0; i < element.getAuthor().size(); i++) { 16155 composeContactDetail(t, "Library", "author", element.getAuthor().get(i), i); 16156 } 16157 for (int i = 0; i < element.getEditor().size(); i++) { 16158 composeContactDetail(t, "Library", "editor", element.getEditor().get(i), i); 16159 } 16160 for (int i = 0; i < element.getReviewer().size(); i++) { 16161 composeContactDetail(t, "Library", "reviewer", element.getReviewer().get(i), i); 16162 } 16163 for (int i = 0; i < element.getEndorser().size(); i++) { 16164 composeContactDetail(t, "Library", "endorser", element.getEndorser().get(i), i); 16165 } 16166 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 16167 composeRelatedArtifact(t, "Library", "relatedArtifact", element.getRelatedArtifact().get(i), i); 16168 } 16169 for (int i = 0; i < element.getParameter().size(); i++) { 16170 composeParameterDefinition(t, "Library", "parameter", element.getParameter().get(i), i); 16171 } 16172 for (int i = 0; i < element.getDataRequirement().size(); i++) { 16173 composeDataRequirement(t, "Library", "dataRequirement", element.getDataRequirement().get(i), i); 16174 } 16175 for (int i = 0; i < element.getContent().size(); i++) { 16176 composeAttachment(t, "Library", "content", element.getContent().get(i), i); 16177 } 16178 } 16179 16180 protected void composeLinkage(Complex parent, String parentType, String name, Linkage element, int index) { 16181 if (element == null) 16182 return; 16183 Complex t; 16184 if (Utilities.noString(parentType)) 16185 t = parent; 16186 else { 16187 t = parent.predicate("fhir:"+name,index > -1); 16188 } 16189 composeDomainResource(t, "Linkage", name, element, index); 16190 if (element.hasActiveElement()) { 16191 composeBoolean(t, "Linkage", "active", element.getActiveElement(), -1); 16192 } 16193 if (element.hasAuthor()) { 16194 composeReference(t, "Linkage", "author", element.getAuthor(), -1); 16195 } 16196 for (int i = 0; i < element.getItem().size(); i++) { 16197 composeLinkageItemComponent(t, "Linkage", "item", element.getItem().get(i), i); 16198 } 16199 } 16200 16201 protected void composeLinkageItemComponent(Complex parent, String parentType, String name, Linkage.LinkageItemComponent element, int index) { 16202 if (element == null) 16203 return; 16204 Complex t; 16205 if (Utilities.noString(parentType)) 16206 t = parent; 16207 else { 16208 t = parent.predicate("fhir:"+name,index > -1); 16209 } 16210 composeBackboneElement(t, "item", name, element, index); 16211 if (element.hasTypeElement()) { 16212 composeEnum(t, "LinkageItemComponent", "type", element.getTypeElement(), -1); 16213 } 16214 if (element.hasResource()) { 16215 composeReference(t, "LinkageItemComponent", "resource", element.getResource(), -1); 16216 } 16217 } 16218 16219 protected void composeListResource(Complex parent, String parentType, String name, ListResource element, int index) { 16220 if (element == null) 16221 return; 16222 Complex t; 16223 if (Utilities.noString(parentType)) 16224 t = parent; 16225 else { 16226 t = parent.predicate("fhir:"+name,index > -1); 16227 } 16228 composeDomainResource(t, "List", name, element, index); 16229 for (int i = 0; i < element.getIdentifier().size(); i++) { 16230 composeIdentifier(t, "ListResource", "identifier", element.getIdentifier().get(i), i); 16231 } 16232 if (element.hasStatusElement()) { 16233 composeEnum(t, "ListResource", "status", element.getStatusElement(), -1); 16234 } 16235 if (element.hasModeElement()) { 16236 composeEnum(t, "ListResource", "mode", element.getModeElement(), -1); 16237 } 16238 if (element.hasTitleElement()) { 16239 composeString(t, "ListResource", "title", element.getTitleElement(), -1); 16240 } 16241 if (element.hasCode()) { 16242 composeCodeableConcept(t, "ListResource", "code", element.getCode(), -1); 16243 } 16244 for (int i = 0; i < element.getSubject().size(); i++) { 16245 composeReference(t, "ListResource", "subject", element.getSubject().get(i), i); 16246 } 16247 if (element.hasEncounter()) { 16248 composeReference(t, "ListResource", "encounter", element.getEncounter(), -1); 16249 } 16250 if (element.hasDateElement()) { 16251 composeDateTime(t, "ListResource", "date", element.getDateElement(), -1); 16252 } 16253 if (element.hasSource()) { 16254 composeReference(t, "ListResource", "source", element.getSource(), -1); 16255 } 16256 if (element.hasOrderedBy()) { 16257 composeCodeableConcept(t, "ListResource", "orderedBy", element.getOrderedBy(), -1); 16258 } 16259 for (int i = 0; i < element.getNote().size(); i++) { 16260 composeAnnotation(t, "ListResource", "note", element.getNote().get(i), i); 16261 } 16262 for (int i = 0; i < element.getEntry().size(); i++) { 16263 composeListResourceEntryComponent(t, "ListResource", "entry", element.getEntry().get(i), i); 16264 } 16265 if (element.hasEmptyReason()) { 16266 composeCodeableConcept(t, "ListResource", "emptyReason", element.getEmptyReason(), -1); 16267 } 16268 } 16269 16270 protected void composeListResourceEntryComponent(Complex parent, String parentType, String name, ListResource.ListResourceEntryComponent element, int index) { 16271 if (element == null) 16272 return; 16273 Complex t; 16274 if (Utilities.noString(parentType)) 16275 t = parent; 16276 else { 16277 t = parent.predicate("fhir:"+name,index > -1); 16278 } 16279 composeBackboneElement(t, "entry", name, element, index); 16280 if (element.hasFlag()) { 16281 composeCodeableConcept(t, "ListResourceEntryComponent", "flag", element.getFlag(), -1); 16282 } 16283 if (element.hasDeletedElement()) { 16284 composeBoolean(t, "ListResourceEntryComponent", "deleted", element.getDeletedElement(), -1); 16285 } 16286 if (element.hasDateElement()) { 16287 composeDateTime(t, "ListResourceEntryComponent", "date", element.getDateElement(), -1); 16288 } 16289 if (element.hasItem()) { 16290 composeReference(t, "ListResourceEntryComponent", "item", element.getItem(), -1); 16291 } 16292 } 16293 16294 protected void composeLocation(Complex parent, String parentType, String name, Location element, int index) { 16295 if (element == null) 16296 return; 16297 Complex t; 16298 if (Utilities.noString(parentType)) 16299 t = parent; 16300 else { 16301 t = parent.predicate("fhir:"+name,index > -1); 16302 } 16303 composeDomainResource(t, "Location", name, element, index); 16304 for (int i = 0; i < element.getIdentifier().size(); i++) { 16305 composeIdentifier(t, "Location", "identifier", element.getIdentifier().get(i), i); 16306 } 16307 if (element.hasStatusElement()) { 16308 composeEnum(t, "Location", "status", element.getStatusElement(), -1); 16309 } 16310 if (element.hasOperationalStatus()) { 16311 composeCoding(t, "Location", "operationalStatus", element.getOperationalStatus(), -1); 16312 } 16313 if (element.hasNameElement()) { 16314 composeString(t, "Location", "name", element.getNameElement(), -1); 16315 } 16316 for (int i = 0; i < element.getAlias().size(); i++) { 16317 composeString(t, "Location", "alias", element.getAlias().get(i), i); 16318 } 16319 if (element.hasDescriptionElement()) { 16320 composeMarkdown(t, "Location", "description", element.getDescriptionElement(), -1); 16321 } 16322 if (element.hasModeElement()) { 16323 composeEnum(t, "Location", "mode", element.getModeElement(), -1); 16324 } 16325 for (int i = 0; i < element.getType().size(); i++) { 16326 composeCodeableConcept(t, "Location", "type", element.getType().get(i), i); 16327 } 16328 for (int i = 0; i < element.getContact().size(); i++) { 16329 composeExtendedContactDetail(t, "Location", "contact", element.getContact().get(i), i); 16330 } 16331 if (element.hasAddress()) { 16332 composeAddress(t, "Location", "address", element.getAddress(), -1); 16333 } 16334 if (element.hasForm()) { 16335 composeCodeableConcept(t, "Location", "form", element.getForm(), -1); 16336 } 16337 if (element.hasPosition()) { 16338 composeLocationPositionComponent(t, "Location", "position", element.getPosition(), -1); 16339 } 16340 if (element.hasManagingOrganization()) { 16341 composeReference(t, "Location", "managingOrganization", element.getManagingOrganization(), -1); 16342 } 16343 if (element.hasPartOf()) { 16344 composeReference(t, "Location", "partOf", element.getPartOf(), -1); 16345 } 16346 for (int i = 0; i < element.getCharacteristic().size(); i++) { 16347 composeCodeableConcept(t, "Location", "characteristic", element.getCharacteristic().get(i), i); 16348 } 16349 for (int i = 0; i < element.getHoursOfOperation().size(); i++) { 16350 composeAvailability(t, "Location", "hoursOfOperation", element.getHoursOfOperation().get(i), i); 16351 } 16352 for (int i = 0; i < element.getVirtualService().size(); i++) { 16353 composeVirtualServiceDetail(t, "Location", "virtualService", element.getVirtualService().get(i), i); 16354 } 16355 for (int i = 0; i < element.getEndpoint().size(); i++) { 16356 composeReference(t, "Location", "endpoint", element.getEndpoint().get(i), i); 16357 } 16358 } 16359 16360 protected void composeLocationPositionComponent(Complex parent, String parentType, String name, Location.LocationPositionComponent element, int index) { 16361 if (element == null) 16362 return; 16363 Complex t; 16364 if (Utilities.noString(parentType)) 16365 t = parent; 16366 else { 16367 t = parent.predicate("fhir:"+name,index > -1); 16368 } 16369 composeBackboneElement(t, "position", name, element, index); 16370 if (element.hasLongitudeElement()) { 16371 composeDecimal(t, "LocationPositionComponent", "longitude", element.getLongitudeElement(), -1); 16372 } 16373 if (element.hasLatitudeElement()) { 16374 composeDecimal(t, "LocationPositionComponent", "latitude", element.getLatitudeElement(), -1); 16375 } 16376 if (element.hasAltitudeElement()) { 16377 composeDecimal(t, "LocationPositionComponent", "altitude", element.getAltitudeElement(), -1); 16378 } 16379 } 16380 16381 protected void composeManufacturedItemDefinition(Complex parent, String parentType, String name, ManufacturedItemDefinition element, int index) { 16382 if (element == null) 16383 return; 16384 Complex t; 16385 if (Utilities.noString(parentType)) 16386 t = parent; 16387 else { 16388 t = parent.predicate("fhir:"+name,index > -1); 16389 } 16390 composeDomainResource(t, "ManufacturedItemDefinition", name, element, index); 16391 for (int i = 0; i < element.getIdentifier().size(); i++) { 16392 composeIdentifier(t, "ManufacturedItemDefinition", "identifier", element.getIdentifier().get(i), i); 16393 } 16394 if (element.hasStatusElement()) { 16395 composeEnum(t, "ManufacturedItemDefinition", "status", element.getStatusElement(), -1); 16396 } 16397 if (element.hasNameElement()) { 16398 composeString(t, "ManufacturedItemDefinition", "name", element.getNameElement(), -1); 16399 } 16400 if (element.hasManufacturedDoseForm()) { 16401 composeCodeableConcept(t, "ManufacturedItemDefinition", "manufacturedDoseForm", element.getManufacturedDoseForm(), -1); 16402 } 16403 if (element.hasUnitOfPresentation()) { 16404 composeCodeableConcept(t, "ManufacturedItemDefinition", "unitOfPresentation", element.getUnitOfPresentation(), -1); 16405 } 16406 for (int i = 0; i < element.getManufacturer().size(); i++) { 16407 composeReference(t, "ManufacturedItemDefinition", "manufacturer", element.getManufacturer().get(i), i); 16408 } 16409 for (int i = 0; i < element.getMarketingStatus().size(); i++) { 16410 composeMarketingStatus(t, "ManufacturedItemDefinition", "marketingStatus", element.getMarketingStatus().get(i), i); 16411 } 16412 for (int i = 0; i < element.getIngredient().size(); i++) { 16413 composeCodeableConcept(t, "ManufacturedItemDefinition", "ingredient", element.getIngredient().get(i), i); 16414 } 16415 for (int i = 0; i < element.getProperty().size(); i++) { 16416 composeManufacturedItemDefinitionPropertyComponent(t, "ManufacturedItemDefinition", "property", element.getProperty().get(i), i); 16417 } 16418 for (int i = 0; i < element.getComponent().size(); i++) { 16419 composeManufacturedItemDefinitionComponentComponent(t, "ManufacturedItemDefinition", "component", element.getComponent().get(i), i); 16420 } 16421 } 16422 16423 protected void composeManufacturedItemDefinitionPropertyComponent(Complex parent, String parentType, String name, ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent element, int index) { 16424 if (element == null) 16425 return; 16426 Complex t; 16427 if (Utilities.noString(parentType)) 16428 t = parent; 16429 else { 16430 t = parent.predicate("fhir:"+name,index > -1); 16431 } 16432 composeBackboneElement(t, "property", name, element, index); 16433 if (element.hasType()) { 16434 composeCodeableConcept(t, "ManufacturedItemDefinitionPropertyComponent", "type", element.getType(), -1); 16435 } 16436 if (element.hasValue()) { 16437 composeType(t, "ManufacturedItemDefinitionPropertyComponent", "value", element.getValue(), -1); 16438 } 16439 } 16440 16441 protected void composeManufacturedItemDefinitionComponentComponent(Complex parent, String parentType, String name, ManufacturedItemDefinition.ManufacturedItemDefinitionComponentComponent element, int index) { 16442 if (element == null) 16443 return; 16444 Complex t; 16445 if (Utilities.noString(parentType)) 16446 t = parent; 16447 else { 16448 t = parent.predicate("fhir:"+name,index > -1); 16449 } 16450 composeBackboneElement(t, "component", name, element, index); 16451 if (element.hasType()) { 16452 composeCodeableConcept(t, "ManufacturedItemDefinitionComponentComponent", "type", element.getType(), -1); 16453 } 16454 for (int i = 0; i < element.getFunction().size(); i++) { 16455 composeCodeableConcept(t, "ManufacturedItemDefinitionComponentComponent", "function", element.getFunction().get(i), i); 16456 } 16457 for (int i = 0; i < element.getAmount().size(); i++) { 16458 composeQuantity(t, "ManufacturedItemDefinitionComponentComponent", "amount", element.getAmount().get(i), i); 16459 } 16460 for (int i = 0; i < element.getConstituent().size(); i++) { 16461 composeManufacturedItemDefinitionComponentConstituentComponent(t, "ManufacturedItemDefinitionComponentComponent", "constituent", element.getConstituent().get(i), i); 16462 } 16463 for (int i = 0; i < element.getProperty().size(); i++) { 16464 composeManufacturedItemDefinitionPropertyComponent(t, "ManufacturedItemDefinitionComponentComponent", "property", element.getProperty().get(i), i); 16465 } 16466 for (int i = 0; i < element.getComponent().size(); i++) { 16467 composeManufacturedItemDefinitionComponentComponent(t, "ManufacturedItemDefinitionComponentComponent", "component", element.getComponent().get(i), i); 16468 } 16469 } 16470 16471 protected void composeManufacturedItemDefinitionComponentConstituentComponent(Complex parent, String parentType, String name, ManufacturedItemDefinition.ManufacturedItemDefinitionComponentConstituentComponent element, int index) { 16472 if (element == null) 16473 return; 16474 Complex t; 16475 if (Utilities.noString(parentType)) 16476 t = parent; 16477 else { 16478 t = parent.predicate("fhir:"+name,index > -1); 16479 } 16480 composeBackboneElement(t, "constituent", name, element, index); 16481 for (int i = 0; i < element.getAmount().size(); i++) { 16482 composeQuantity(t, "ManufacturedItemDefinitionComponentConstituentComponent", "amount", element.getAmount().get(i), i); 16483 } 16484 for (int i = 0; i < element.getLocation().size(); i++) { 16485 composeCodeableConcept(t, "ManufacturedItemDefinitionComponentConstituentComponent", "location", element.getLocation().get(i), i); 16486 } 16487 for (int i = 0; i < element.getFunction().size(); i++) { 16488 composeCodeableConcept(t, "ManufacturedItemDefinitionComponentConstituentComponent", "function", element.getFunction().get(i), i); 16489 } 16490 for (int i = 0; i < element.getHasIngredient().size(); i++) { 16491 composeCodeableReference(t, "ManufacturedItemDefinitionComponentConstituentComponent", "hasIngredient", element.getHasIngredient().get(i), i); 16492 } 16493 } 16494 16495 protected void composeMeasure(Complex parent, String parentType, String name, Measure element, int index) { 16496 if (element == null) 16497 return; 16498 Complex t; 16499 if (Utilities.noString(parentType)) 16500 t = parent; 16501 else { 16502 t = parent.predicate("fhir:"+name,index > -1); 16503 } 16504 composeMetadataResource(t, "Measure", name, element, index); 16505 if (element.hasUrlElement()) { 16506 composeUri(t, "Measure", "url", element.getUrlElement(), -1); 16507 } 16508 for (int i = 0; i < element.getIdentifier().size(); i++) { 16509 composeIdentifier(t, "Measure", "identifier", element.getIdentifier().get(i), i); 16510 } 16511 if (element.hasVersionElement()) { 16512 composeString(t, "Measure", "version", element.getVersionElement(), -1); 16513 } 16514 if (element.hasVersionAlgorithm()) { 16515 composeType(t, "Measure", "versionAlgorithm", element.getVersionAlgorithm(), -1); 16516 } 16517 if (element.hasNameElement()) { 16518 composeString(t, "Measure", "name", element.getNameElement(), -1); 16519 } 16520 if (element.hasTitleElement()) { 16521 composeString(t, "Measure", "title", element.getTitleElement(), -1); 16522 } 16523 if (element.hasSubtitleElement()) { 16524 composeString(t, "Measure", "subtitle", element.getSubtitleElement(), -1); 16525 } 16526 if (element.hasStatusElement()) { 16527 composeEnum(t, "Measure", "status", element.getStatusElement(), -1); 16528 } 16529 if (element.hasExperimentalElement()) { 16530 composeBoolean(t, "Measure", "experimental", element.getExperimentalElement(), -1); 16531 } 16532 if (element.hasSubject()) { 16533 composeType(t, "Measure", "subject", element.getSubject(), -1); 16534 } 16535 if (element.hasBasisElement()) { 16536 composeEnum(t, "Measure", "basis", element.getBasisElement(), -1); 16537 } 16538 if (element.hasDateElement()) { 16539 composeDateTime(t, "Measure", "date", element.getDateElement(), -1); 16540 } 16541 if (element.hasPublisherElement()) { 16542 composeString(t, "Measure", "publisher", element.getPublisherElement(), -1); 16543 } 16544 for (int i = 0; i < element.getContact().size(); i++) { 16545 composeContactDetail(t, "Measure", "contact", element.getContact().get(i), i); 16546 } 16547 if (element.hasDescriptionElement()) { 16548 composeMarkdown(t, "Measure", "description", element.getDescriptionElement(), -1); 16549 } 16550 for (int i = 0; i < element.getUseContext().size(); i++) { 16551 composeUsageContext(t, "Measure", "useContext", element.getUseContext().get(i), i); 16552 } 16553 for (int i = 0; i < element.getJurisdiction().size(); i++) { 16554 composeCodeableConcept(t, "Measure", "jurisdiction", element.getJurisdiction().get(i), i); 16555 } 16556 if (element.hasPurposeElement()) { 16557 composeMarkdown(t, "Measure", "purpose", element.getPurposeElement(), -1); 16558 } 16559 if (element.hasUsageElement()) { 16560 composeMarkdown(t, "Measure", "usage", element.getUsageElement(), -1); 16561 } 16562 if (element.hasCopyrightElement()) { 16563 composeMarkdown(t, "Measure", "copyright", element.getCopyrightElement(), -1); 16564 } 16565 if (element.hasCopyrightLabelElement()) { 16566 composeString(t, "Measure", "copyrightLabel", element.getCopyrightLabelElement(), -1); 16567 } 16568 if (element.hasApprovalDateElement()) { 16569 composeDate(t, "Measure", "approvalDate", element.getApprovalDateElement(), -1); 16570 } 16571 if (element.hasLastReviewDateElement()) { 16572 composeDate(t, "Measure", "lastReviewDate", element.getLastReviewDateElement(), -1); 16573 } 16574 if (element.hasEffectivePeriod()) { 16575 composePeriod(t, "Measure", "effectivePeriod", element.getEffectivePeriod(), -1); 16576 } 16577 for (int i = 0; i < element.getTopic().size(); i++) { 16578 composeCodeableConcept(t, "Measure", "topic", element.getTopic().get(i), i); 16579 } 16580 for (int i = 0; i < element.getAuthor().size(); i++) { 16581 composeContactDetail(t, "Measure", "author", element.getAuthor().get(i), i); 16582 } 16583 for (int i = 0; i < element.getEditor().size(); i++) { 16584 composeContactDetail(t, "Measure", "editor", element.getEditor().get(i), i); 16585 } 16586 for (int i = 0; i < element.getReviewer().size(); i++) { 16587 composeContactDetail(t, "Measure", "reviewer", element.getReviewer().get(i), i); 16588 } 16589 for (int i = 0; i < element.getEndorser().size(); i++) { 16590 composeContactDetail(t, "Measure", "endorser", element.getEndorser().get(i), i); 16591 } 16592 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 16593 composeRelatedArtifact(t, "Measure", "relatedArtifact", element.getRelatedArtifact().get(i), i); 16594 } 16595 for (int i = 0; i < element.getLibrary().size(); i++) { 16596 composeCanonical(t, "Measure", "library", element.getLibrary().get(i), i); 16597 } 16598 if (element.hasDisclaimerElement()) { 16599 composeMarkdown(t, "Measure", "disclaimer", element.getDisclaimerElement(), -1); 16600 } 16601 if (element.hasScoring()) { 16602 composeCodeableConcept(t, "Measure", "scoring", element.getScoring(), -1); 16603 } 16604 if (element.hasScoringUnit()) { 16605 composeCodeableConcept(t, "Measure", "scoringUnit", element.getScoringUnit(), -1); 16606 } 16607 if (element.hasCompositeScoring()) { 16608 composeCodeableConcept(t, "Measure", "compositeScoring", element.getCompositeScoring(), -1); 16609 } 16610 for (int i = 0; i < element.getType().size(); i++) { 16611 composeCodeableConcept(t, "Measure", "type", element.getType().get(i), i); 16612 } 16613 if (element.hasRiskAdjustmentElement()) { 16614 composeMarkdown(t, "Measure", "riskAdjustment", element.getRiskAdjustmentElement(), -1); 16615 } 16616 if (element.hasRateAggregationElement()) { 16617 composeMarkdown(t, "Measure", "rateAggregation", element.getRateAggregationElement(), -1); 16618 } 16619 if (element.hasRationaleElement()) { 16620 composeMarkdown(t, "Measure", "rationale", element.getRationaleElement(), -1); 16621 } 16622 if (element.hasClinicalRecommendationStatementElement()) { 16623 composeMarkdown(t, "Measure", "clinicalRecommendationStatement", element.getClinicalRecommendationStatementElement(), -1); 16624 } 16625 if (element.hasImprovementNotation()) { 16626 composeCodeableConcept(t, "Measure", "improvementNotation", element.getImprovementNotation(), -1); 16627 } 16628 for (int i = 0; i < element.getTerm().size(); i++) { 16629 composeMeasureTermComponent(t, "Measure", "term", element.getTerm().get(i), i); 16630 } 16631 if (element.hasGuidanceElement()) { 16632 composeMarkdown(t, "Measure", "guidance", element.getGuidanceElement(), -1); 16633 } 16634 for (int i = 0; i < element.getGroup().size(); i++) { 16635 composeMeasureGroupComponent(t, "Measure", "group", element.getGroup().get(i), i); 16636 } 16637 for (int i = 0; i < element.getSupplementalData().size(); i++) { 16638 composeMeasureSupplementalDataComponent(t, "Measure", "supplementalData", element.getSupplementalData().get(i), i); 16639 } 16640 } 16641 16642 protected void composeMeasureTermComponent(Complex parent, String parentType, String name, Measure.MeasureTermComponent element, int index) { 16643 if (element == null) 16644 return; 16645 Complex t; 16646 if (Utilities.noString(parentType)) 16647 t = parent; 16648 else { 16649 t = parent.predicate("fhir:"+name,index > -1); 16650 } 16651 composeBackboneElement(t, "term", name, element, index); 16652 if (element.hasCode()) { 16653 composeCodeableConcept(t, "MeasureTermComponent", "code", element.getCode(), -1); 16654 } 16655 if (element.hasDefinitionElement()) { 16656 composeMarkdown(t, "MeasureTermComponent", "definition", element.getDefinitionElement(), -1); 16657 } 16658 } 16659 16660 protected void composeMeasureGroupComponent(Complex parent, String parentType, String name, Measure.MeasureGroupComponent element, int index) { 16661 if (element == null) 16662 return; 16663 Complex t; 16664 if (Utilities.noString(parentType)) 16665 t = parent; 16666 else { 16667 t = parent.predicate("fhir:"+name,index > -1); 16668 } 16669 composeBackboneElement(t, "group", name, element, index); 16670 if (element.hasLinkIdElement()) { 16671 composeString(t, "MeasureGroupComponent", "linkId", element.getLinkIdElement(), -1); 16672 } 16673 if (element.hasCode()) { 16674 composeCodeableConcept(t, "MeasureGroupComponent", "code", element.getCode(), -1); 16675 } 16676 if (element.hasDescriptionElement()) { 16677 composeMarkdown(t, "MeasureGroupComponent", "description", element.getDescriptionElement(), -1); 16678 } 16679 for (int i = 0; i < element.getType().size(); i++) { 16680 composeCodeableConcept(t, "MeasureGroupComponent", "type", element.getType().get(i), i); 16681 } 16682 if (element.hasSubject()) { 16683 composeType(t, "MeasureGroupComponent", "subject", element.getSubject(), -1); 16684 } 16685 if (element.hasBasisElement()) { 16686 composeEnum(t, "MeasureGroupComponent", "basis", element.getBasisElement(), -1); 16687 } 16688 if (element.hasScoring()) { 16689 composeCodeableConcept(t, "MeasureGroupComponent", "scoring", element.getScoring(), -1); 16690 } 16691 if (element.hasScoringUnit()) { 16692 composeCodeableConcept(t, "MeasureGroupComponent", "scoringUnit", element.getScoringUnit(), -1); 16693 } 16694 if (element.hasRateAggregationElement()) { 16695 composeMarkdown(t, "MeasureGroupComponent", "rateAggregation", element.getRateAggregationElement(), -1); 16696 } 16697 if (element.hasImprovementNotation()) { 16698 composeCodeableConcept(t, "MeasureGroupComponent", "improvementNotation", element.getImprovementNotation(), -1); 16699 } 16700 for (int i = 0; i < element.getLibrary().size(); i++) { 16701 composeCanonical(t, "MeasureGroupComponent", "library", element.getLibrary().get(i), i); 16702 } 16703 for (int i = 0; i < element.getPopulation().size(); i++) { 16704 composeMeasureGroupPopulationComponent(t, "MeasureGroupComponent", "population", element.getPopulation().get(i), i); 16705 } 16706 for (int i = 0; i < element.getStratifier().size(); i++) { 16707 composeMeasureGroupStratifierComponent(t, "MeasureGroupComponent", "stratifier", element.getStratifier().get(i), i); 16708 } 16709 } 16710 16711 protected void composeMeasureGroupPopulationComponent(Complex parent, String parentType, String name, Measure.MeasureGroupPopulationComponent element, int index) { 16712 if (element == null) 16713 return; 16714 Complex t; 16715 if (Utilities.noString(parentType)) 16716 t = parent; 16717 else { 16718 t = parent.predicate("fhir:"+name,index > -1); 16719 } 16720 composeBackboneElement(t, "population", name, element, index); 16721 if (element.hasLinkIdElement()) { 16722 composeString(t, "MeasureGroupPopulationComponent", "linkId", element.getLinkIdElement(), -1); 16723 } 16724 if (element.hasCode()) { 16725 composeCodeableConcept(t, "MeasureGroupPopulationComponent", "code", element.getCode(), -1); 16726 } 16727 if (element.hasDescriptionElement()) { 16728 composeMarkdown(t, "MeasureGroupPopulationComponent", "description", element.getDescriptionElement(), -1); 16729 } 16730 if (element.hasCriteria()) { 16731 composeExpression(t, "MeasureGroupPopulationComponent", "criteria", element.getCriteria(), -1); 16732 } 16733 if (element.hasGroupDefinition()) { 16734 composeReference(t, "MeasureGroupPopulationComponent", "groupDefinition", element.getGroupDefinition(), -1); 16735 } 16736 if (element.hasInputPopulationIdElement()) { 16737 composeString(t, "MeasureGroupPopulationComponent", "inputPopulationId", element.getInputPopulationIdElement(), -1); 16738 } 16739 if (element.hasAggregateMethod()) { 16740 composeCodeableConcept(t, "MeasureGroupPopulationComponent", "aggregateMethod", element.getAggregateMethod(), -1); 16741 } 16742 } 16743 16744 protected void composeMeasureGroupStratifierComponent(Complex parent, String parentType, String name, Measure.MeasureGroupStratifierComponent element, int index) { 16745 if (element == null) 16746 return; 16747 Complex t; 16748 if (Utilities.noString(parentType)) 16749 t = parent; 16750 else { 16751 t = parent.predicate("fhir:"+name,index > -1); 16752 } 16753 composeBackboneElement(t, "stratifier", name, element, index); 16754 if (element.hasLinkIdElement()) { 16755 composeString(t, "MeasureGroupStratifierComponent", "linkId", element.getLinkIdElement(), -1); 16756 } 16757 if (element.hasCode()) { 16758 composeCodeableConcept(t, "MeasureGroupStratifierComponent", "code", element.getCode(), -1); 16759 } 16760 if (element.hasDescriptionElement()) { 16761 composeMarkdown(t, "MeasureGroupStratifierComponent", "description", element.getDescriptionElement(), -1); 16762 } 16763 if (element.hasCriteria()) { 16764 composeExpression(t, "MeasureGroupStratifierComponent", "criteria", element.getCriteria(), -1); 16765 } 16766 if (element.hasGroupDefinition()) { 16767 composeReference(t, "MeasureGroupStratifierComponent", "groupDefinition", element.getGroupDefinition(), -1); 16768 } 16769 for (int i = 0; i < element.getComponent().size(); i++) { 16770 composeMeasureGroupStratifierComponentComponent(t, "MeasureGroupStratifierComponent", "component", element.getComponent().get(i), i); 16771 } 16772 } 16773 16774 protected void composeMeasureGroupStratifierComponentComponent(Complex parent, String parentType, String name, Measure.MeasureGroupStratifierComponentComponent element, int index) { 16775 if (element == null) 16776 return; 16777 Complex t; 16778 if (Utilities.noString(parentType)) 16779 t = parent; 16780 else { 16781 t = parent.predicate("fhir:"+name,index > -1); 16782 } 16783 composeBackboneElement(t, "component", name, element, index); 16784 if (element.hasLinkIdElement()) { 16785 composeString(t, "MeasureGroupStratifierComponentComponent", "linkId", element.getLinkIdElement(), -1); 16786 } 16787 if (element.hasCode()) { 16788 composeCodeableConcept(t, "MeasureGroupStratifierComponentComponent", "code", element.getCode(), -1); 16789 } 16790 if (element.hasDescriptionElement()) { 16791 composeMarkdown(t, "MeasureGroupStratifierComponentComponent", "description", element.getDescriptionElement(), -1); 16792 } 16793 if (element.hasCriteria()) { 16794 composeExpression(t, "MeasureGroupStratifierComponentComponent", "criteria", element.getCriteria(), -1); 16795 } 16796 if (element.hasGroupDefinition()) { 16797 composeReference(t, "MeasureGroupStratifierComponentComponent", "groupDefinition", element.getGroupDefinition(), -1); 16798 } 16799 } 16800 16801 protected void composeMeasureSupplementalDataComponent(Complex parent, String parentType, String name, Measure.MeasureSupplementalDataComponent element, int index) { 16802 if (element == null) 16803 return; 16804 Complex t; 16805 if (Utilities.noString(parentType)) 16806 t = parent; 16807 else { 16808 t = parent.predicate("fhir:"+name,index > -1); 16809 } 16810 composeBackboneElement(t, "supplementalData", name, element, index); 16811 if (element.hasLinkIdElement()) { 16812 composeString(t, "MeasureSupplementalDataComponent", "linkId", element.getLinkIdElement(), -1); 16813 } 16814 if (element.hasCode()) { 16815 composeCodeableConcept(t, "MeasureSupplementalDataComponent", "code", element.getCode(), -1); 16816 } 16817 for (int i = 0; i < element.getUsage().size(); i++) { 16818 composeCodeableConcept(t, "MeasureSupplementalDataComponent", "usage", element.getUsage().get(i), i); 16819 } 16820 if (element.hasDescriptionElement()) { 16821 composeMarkdown(t, "MeasureSupplementalDataComponent", "description", element.getDescriptionElement(), -1); 16822 } 16823 if (element.hasCriteria()) { 16824 composeExpression(t, "MeasureSupplementalDataComponent", "criteria", element.getCriteria(), -1); 16825 } 16826 } 16827 16828 protected void composeMeasureReport(Complex parent, String parentType, String name, MeasureReport element, int index) { 16829 if (element == null) 16830 return; 16831 Complex t; 16832 if (Utilities.noString(parentType)) 16833 t = parent; 16834 else { 16835 t = parent.predicate("fhir:"+name,index > -1); 16836 } 16837 composeDomainResource(t, "MeasureReport", name, element, index); 16838 for (int i = 0; i < element.getIdentifier().size(); i++) { 16839 composeIdentifier(t, "MeasureReport", "identifier", element.getIdentifier().get(i), i); 16840 } 16841 if (element.hasStatusElement()) { 16842 composeEnum(t, "MeasureReport", "status", element.getStatusElement(), -1); 16843 } 16844 if (element.hasTypeElement()) { 16845 composeEnum(t, "MeasureReport", "type", element.getTypeElement(), -1); 16846 } 16847 if (element.hasDataUpdateTypeElement()) { 16848 composeEnum(t, "MeasureReport", "dataUpdateType", element.getDataUpdateTypeElement(), -1); 16849 } 16850 if (element.hasMeasureElement()) { 16851 composeCanonical(t, "MeasureReport", "measure", element.getMeasureElement(), -1); 16852 } 16853 if (element.hasSubject()) { 16854 composeReference(t, "MeasureReport", "subject", element.getSubject(), -1); 16855 } 16856 if (element.hasDateElement()) { 16857 composeDateTime(t, "MeasureReport", "date", element.getDateElement(), -1); 16858 } 16859 if (element.hasReporter()) { 16860 composeReference(t, "MeasureReport", "reporter", element.getReporter(), -1); 16861 } 16862 if (element.hasReportingVendor()) { 16863 composeReference(t, "MeasureReport", "reportingVendor", element.getReportingVendor(), -1); 16864 } 16865 if (element.hasLocation()) { 16866 composeReference(t, "MeasureReport", "location", element.getLocation(), -1); 16867 } 16868 if (element.hasPeriod()) { 16869 composePeriod(t, "MeasureReport", "period", element.getPeriod(), -1); 16870 } 16871 if (element.hasInputParameters()) { 16872 composeReference(t, "MeasureReport", "inputParameters", element.getInputParameters(), -1); 16873 } 16874 if (element.hasScoring()) { 16875 composeCodeableConcept(t, "MeasureReport", "scoring", element.getScoring(), -1); 16876 } 16877 if (element.hasImprovementNotation()) { 16878 composeCodeableConcept(t, "MeasureReport", "improvementNotation", element.getImprovementNotation(), -1); 16879 } 16880 for (int i = 0; i < element.getGroup().size(); i++) { 16881 composeMeasureReportGroupComponent(t, "MeasureReport", "group", element.getGroup().get(i), i); 16882 } 16883 for (int i = 0; i < element.getSupplementalData().size(); i++) { 16884 composeReference(t, "MeasureReport", "supplementalData", element.getSupplementalData().get(i), i); 16885 } 16886 for (int i = 0; i < element.getEvaluatedResource().size(); i++) { 16887 composeReference(t, "MeasureReport", "evaluatedResource", element.getEvaluatedResource().get(i), i); 16888 } 16889 } 16890 16891 protected void composeMeasureReportGroupComponent(Complex parent, String parentType, String name, MeasureReport.MeasureReportGroupComponent element, int index) { 16892 if (element == null) 16893 return; 16894 Complex t; 16895 if (Utilities.noString(parentType)) 16896 t = parent; 16897 else { 16898 t = parent.predicate("fhir:"+name,index > -1); 16899 } 16900 composeBackboneElement(t, "group", name, element, index); 16901 if (element.hasLinkIdElement()) { 16902 composeString(t, "MeasureReportGroupComponent", "linkId", element.getLinkIdElement(), -1); 16903 } 16904 if (element.hasCode()) { 16905 composeCodeableConcept(t, "MeasureReportGroupComponent", "code", element.getCode(), -1); 16906 } 16907 if (element.hasSubject()) { 16908 composeReference(t, "MeasureReportGroupComponent", "subject", element.getSubject(), -1); 16909 } 16910 for (int i = 0; i < element.getPopulation().size(); i++) { 16911 composeMeasureReportGroupPopulationComponent(t, "MeasureReportGroupComponent", "population", element.getPopulation().get(i), i); 16912 } 16913 if (element.hasMeasureScore()) { 16914 composeType(t, "MeasureReportGroupComponent", "measureScore", element.getMeasureScore(), -1); 16915 } 16916 for (int i = 0; i < element.getStratifier().size(); i++) { 16917 composeMeasureReportGroupStratifierComponent(t, "MeasureReportGroupComponent", "stratifier", element.getStratifier().get(i), i); 16918 } 16919 } 16920 16921 protected void composeMeasureReportGroupPopulationComponent(Complex parent, String parentType, String name, MeasureReport.MeasureReportGroupPopulationComponent element, int index) { 16922 if (element == null) 16923 return; 16924 Complex t; 16925 if (Utilities.noString(parentType)) 16926 t = parent; 16927 else { 16928 t = parent.predicate("fhir:"+name,index > -1); 16929 } 16930 composeBackboneElement(t, "population", name, element, index); 16931 if (element.hasLinkIdElement()) { 16932 composeString(t, "MeasureReportGroupPopulationComponent", "linkId", element.getLinkIdElement(), -1); 16933 } 16934 if (element.hasCode()) { 16935 composeCodeableConcept(t, "MeasureReportGroupPopulationComponent", "code", element.getCode(), -1); 16936 } 16937 if (element.hasCountElement()) { 16938 composeInteger(t, "MeasureReportGroupPopulationComponent", "count", element.getCountElement(), -1); 16939 } 16940 if (element.hasSubjectResults()) { 16941 composeReference(t, "MeasureReportGroupPopulationComponent", "subjectResults", element.getSubjectResults(), -1); 16942 } 16943 for (int i = 0; i < element.getSubjectReport().size(); i++) { 16944 composeReference(t, "MeasureReportGroupPopulationComponent", "subjectReport", element.getSubjectReport().get(i), i); 16945 } 16946 if (element.hasSubjects()) { 16947 composeReference(t, "MeasureReportGroupPopulationComponent", "subjects", element.getSubjects(), -1); 16948 } 16949 } 16950 16951 protected void composeMeasureReportGroupStratifierComponent(Complex parent, String parentType, String name, MeasureReport.MeasureReportGroupStratifierComponent element, int index) { 16952 if (element == null) 16953 return; 16954 Complex t; 16955 if (Utilities.noString(parentType)) 16956 t = parent; 16957 else { 16958 t = parent.predicate("fhir:"+name,index > -1); 16959 } 16960 composeBackboneElement(t, "stratifier", name, element, index); 16961 if (element.hasLinkIdElement()) { 16962 composeString(t, "MeasureReportGroupStratifierComponent", "linkId", element.getLinkIdElement(), -1); 16963 } 16964 if (element.hasCode()) { 16965 composeCodeableConcept(t, "MeasureReportGroupStratifierComponent", "code", element.getCode(), -1); 16966 } 16967 for (int i = 0; i < element.getStratum().size(); i++) { 16968 composeMeasureReportStratifierGroupComponent(t, "MeasureReportGroupStratifierComponent", "stratum", element.getStratum().get(i), i); 16969 } 16970 } 16971 16972 protected void composeMeasureReportStratifierGroupComponent(Complex parent, String parentType, String name, MeasureReport.StratifierGroupComponent element, int index) { 16973 if (element == null) 16974 return; 16975 Complex t; 16976 if (Utilities.noString(parentType)) 16977 t = parent; 16978 else { 16979 t = parent.predicate("fhir:"+name,index > -1); 16980 } 16981 composeBackboneElement(t, "stratum", name, element, index); 16982 if (element.hasValue()) { 16983 composeType(t, "StratifierGroupComponent", "value", element.getValue(), -1); 16984 } 16985 for (int i = 0; i < element.getComponent().size(); i++) { 16986 composeMeasureReportStratifierGroupComponentComponent(t, "StratifierGroupComponent", "component", element.getComponent().get(i), i); 16987 } 16988 for (int i = 0; i < element.getPopulation().size(); i++) { 16989 composeMeasureReportStratifierGroupPopulationComponent(t, "StratifierGroupComponent", "population", element.getPopulation().get(i), i); 16990 } 16991 if (element.hasMeasureScore()) { 16992 composeType(t, "StratifierGroupComponent", "measureScore", element.getMeasureScore(), -1); 16993 } 16994 } 16995 16996 protected void composeMeasureReportStratifierGroupComponentComponent(Complex parent, String parentType, String name, MeasureReport.StratifierGroupComponentComponent element, int index) { 16997 if (element == null) 16998 return; 16999 Complex t; 17000 if (Utilities.noString(parentType)) 17001 t = parent; 17002 else { 17003 t = parent.predicate("fhir:"+name,index > -1); 17004 } 17005 composeBackboneElement(t, "component", name, element, index); 17006 if (element.hasLinkIdElement()) { 17007 composeString(t, "StratifierGroupComponentComponent", "linkId", element.getLinkIdElement(), -1); 17008 } 17009 if (element.hasCode()) { 17010 composeCodeableConcept(t, "StratifierGroupComponentComponent", "code", element.getCode(), -1); 17011 } 17012 if (element.hasValue()) { 17013 composeType(t, "StratifierGroupComponentComponent", "value", element.getValue(), -1); 17014 } 17015 } 17016 17017 protected void composeMeasureReportStratifierGroupPopulationComponent(Complex parent, String parentType, String name, MeasureReport.StratifierGroupPopulationComponent element, int index) { 17018 if (element == null) 17019 return; 17020 Complex t; 17021 if (Utilities.noString(parentType)) 17022 t = parent; 17023 else { 17024 t = parent.predicate("fhir:"+name,index > -1); 17025 } 17026 composeBackboneElement(t, "population", name, element, index); 17027 if (element.hasLinkIdElement()) { 17028 composeString(t, "StratifierGroupPopulationComponent", "linkId", element.getLinkIdElement(), -1); 17029 } 17030 if (element.hasCode()) { 17031 composeCodeableConcept(t, "StratifierGroupPopulationComponent", "code", element.getCode(), -1); 17032 } 17033 if (element.hasCountElement()) { 17034 composeInteger(t, "StratifierGroupPopulationComponent", "count", element.getCountElement(), -1); 17035 } 17036 if (element.hasSubjectResults()) { 17037 composeReference(t, "StratifierGroupPopulationComponent", "subjectResults", element.getSubjectResults(), -1); 17038 } 17039 for (int i = 0; i < element.getSubjectReport().size(); i++) { 17040 composeReference(t, "StratifierGroupPopulationComponent", "subjectReport", element.getSubjectReport().get(i), i); 17041 } 17042 if (element.hasSubjects()) { 17043 composeReference(t, "StratifierGroupPopulationComponent", "subjects", element.getSubjects(), -1); 17044 } 17045 } 17046 17047 protected void composeMedication(Complex parent, String parentType, String name, Medication element, int index) { 17048 if (element == null) 17049 return; 17050 Complex t; 17051 if (Utilities.noString(parentType)) 17052 t = parent; 17053 else { 17054 t = parent.predicate("fhir:"+name,index > -1); 17055 } 17056 composeDomainResource(t, "Medication", name, element, index); 17057 for (int i = 0; i < element.getIdentifier().size(); i++) { 17058 composeIdentifier(t, "Medication", "identifier", element.getIdentifier().get(i), i); 17059 } 17060 if (element.hasCode()) { 17061 composeCodeableConcept(t, "Medication", "code", element.getCode(), -1); 17062 } 17063 if (element.hasStatusElement()) { 17064 composeEnum(t, "Medication", "status", element.getStatusElement(), -1); 17065 } 17066 if (element.hasMarketingAuthorizationHolder()) { 17067 composeReference(t, "Medication", "marketingAuthorizationHolder", element.getMarketingAuthorizationHolder(), -1); 17068 } 17069 if (element.hasDoseForm()) { 17070 composeCodeableConcept(t, "Medication", "doseForm", element.getDoseForm(), -1); 17071 } 17072 if (element.hasTotalVolume()) { 17073 composeQuantity(t, "Medication", "totalVolume", element.getTotalVolume(), -1); 17074 } 17075 for (int i = 0; i < element.getIngredient().size(); i++) { 17076 composeMedicationIngredientComponent(t, "Medication", "ingredient", element.getIngredient().get(i), i); 17077 } 17078 if (element.hasBatch()) { 17079 composeMedicationBatchComponent(t, "Medication", "batch", element.getBatch(), -1); 17080 } 17081 if (element.hasDefinition()) { 17082 composeReference(t, "Medication", "definition", element.getDefinition(), -1); 17083 } 17084 } 17085 17086 protected void composeMedicationIngredientComponent(Complex parent, String parentType, String name, Medication.MedicationIngredientComponent element, int index) { 17087 if (element == null) 17088 return; 17089 Complex t; 17090 if (Utilities.noString(parentType)) 17091 t = parent; 17092 else { 17093 t = parent.predicate("fhir:"+name,index > -1); 17094 } 17095 composeBackboneElement(t, "ingredient", name, element, index); 17096 if (element.hasItem()) { 17097 composeCodeableReference(t, "MedicationIngredientComponent", "item", element.getItem(), -1); 17098 } 17099 if (element.hasIsActiveElement()) { 17100 composeBoolean(t, "MedicationIngredientComponent", "isActive", element.getIsActiveElement(), -1); 17101 } 17102 if (element.hasStrength()) { 17103 composeType(t, "MedicationIngredientComponent", "strength", element.getStrength(), -1); 17104 } 17105 } 17106 17107 protected void composeMedicationBatchComponent(Complex parent, String parentType, String name, Medication.MedicationBatchComponent element, int index) { 17108 if (element == null) 17109 return; 17110 Complex t; 17111 if (Utilities.noString(parentType)) 17112 t = parent; 17113 else { 17114 t = parent.predicate("fhir:"+name,index > -1); 17115 } 17116 composeBackboneElement(t, "batch", name, element, index); 17117 if (element.hasLotNumberElement()) { 17118 composeString(t, "MedicationBatchComponent", "lotNumber", element.getLotNumberElement(), -1); 17119 } 17120 if (element.hasExpirationDateElement()) { 17121 composeDateTime(t, "MedicationBatchComponent", "expirationDate", element.getExpirationDateElement(), -1); 17122 } 17123 } 17124 17125 protected void composeMedicationAdministration(Complex parent, String parentType, String name, MedicationAdministration element, int index) { 17126 if (element == null) 17127 return; 17128 Complex t; 17129 if (Utilities.noString(parentType)) 17130 t = parent; 17131 else { 17132 t = parent.predicate("fhir:"+name,index > -1); 17133 } 17134 composeDomainResource(t, "MedicationAdministration", name, element, index); 17135 for (int i = 0; i < element.getIdentifier().size(); i++) { 17136 composeIdentifier(t, "MedicationAdministration", "identifier", element.getIdentifier().get(i), i); 17137 } 17138 for (int i = 0; i < element.getBasedOn().size(); i++) { 17139 composeReference(t, "MedicationAdministration", "basedOn", element.getBasedOn().get(i), i); 17140 } 17141 for (int i = 0; i < element.getPartOf().size(); i++) { 17142 composeReference(t, "MedicationAdministration", "partOf", element.getPartOf().get(i), i); 17143 } 17144 if (element.hasStatusElement()) { 17145 composeEnum(t, "MedicationAdministration", "status", element.getStatusElement(), -1); 17146 } 17147 for (int i = 0; i < element.getStatusReason().size(); i++) { 17148 composeCodeableConcept(t, "MedicationAdministration", "statusReason", element.getStatusReason().get(i), i); 17149 } 17150 for (int i = 0; i < element.getCategory().size(); i++) { 17151 composeCodeableConcept(t, "MedicationAdministration", "category", element.getCategory().get(i), i); 17152 } 17153 if (element.hasMedication()) { 17154 composeCodeableReference(t, "MedicationAdministration", "medication", element.getMedication(), -1); 17155 } 17156 if (element.hasSubject()) { 17157 composeReference(t, "MedicationAdministration", "subject", element.getSubject(), -1); 17158 } 17159 if (element.hasEncounter()) { 17160 composeReference(t, "MedicationAdministration", "encounter", element.getEncounter(), -1); 17161 } 17162 for (int i = 0; i < element.getSupportingInformation().size(); i++) { 17163 composeReference(t, "MedicationAdministration", "supportingInformation", element.getSupportingInformation().get(i), i); 17164 } 17165 if (element.hasOccurence()) { 17166 composeType(t, "MedicationAdministration", "occurence", element.getOccurence(), -1); 17167 } 17168 if (element.hasRecordedElement()) { 17169 composeDateTime(t, "MedicationAdministration", "recorded", element.getRecordedElement(), -1); 17170 } 17171 if (element.hasIsSubPotentElement()) { 17172 composeBoolean(t, "MedicationAdministration", "isSubPotent", element.getIsSubPotentElement(), -1); 17173 } 17174 for (int i = 0; i < element.getSubPotentReason().size(); i++) { 17175 composeCodeableConcept(t, "MedicationAdministration", "subPotentReason", element.getSubPotentReason().get(i), i); 17176 } 17177 for (int i = 0; i < element.getPerformer().size(); i++) { 17178 composeMedicationAdministrationPerformerComponent(t, "MedicationAdministration", "performer", element.getPerformer().get(i), i); 17179 } 17180 for (int i = 0; i < element.getReason().size(); i++) { 17181 composeCodeableReference(t, "MedicationAdministration", "reason", element.getReason().get(i), i); 17182 } 17183 if (element.hasRequest()) { 17184 composeReference(t, "MedicationAdministration", "request", element.getRequest(), -1); 17185 } 17186 for (int i = 0; i < element.getDevice().size(); i++) { 17187 composeCodeableReference(t, "MedicationAdministration", "device", element.getDevice().get(i), i); 17188 } 17189 for (int i = 0; i < element.getNote().size(); i++) { 17190 composeAnnotation(t, "MedicationAdministration", "note", element.getNote().get(i), i); 17191 } 17192 if (element.hasDosage()) { 17193 composeMedicationAdministrationDosageComponent(t, "MedicationAdministration", "dosage", element.getDosage(), -1); 17194 } 17195 for (int i = 0; i < element.getEventHistory().size(); i++) { 17196 composeReference(t, "MedicationAdministration", "eventHistory", element.getEventHistory().get(i), i); 17197 } 17198 } 17199 17200 protected void composeMedicationAdministrationPerformerComponent(Complex parent, String parentType, String name, MedicationAdministration.MedicationAdministrationPerformerComponent element, int index) { 17201 if (element == null) 17202 return; 17203 Complex t; 17204 if (Utilities.noString(parentType)) 17205 t = parent; 17206 else { 17207 t = parent.predicate("fhir:"+name,index > -1); 17208 } 17209 composeBackboneElement(t, "performer", name, element, index); 17210 if (element.hasFunction()) { 17211 composeCodeableConcept(t, "MedicationAdministrationPerformerComponent", "function", element.getFunction(), -1); 17212 } 17213 if (element.hasActor()) { 17214 composeCodeableReference(t, "MedicationAdministrationPerformerComponent", "actor", element.getActor(), -1); 17215 } 17216 } 17217 17218 protected void composeMedicationAdministrationDosageComponent(Complex parent, String parentType, String name, MedicationAdministration.MedicationAdministrationDosageComponent element, int index) { 17219 if (element == null) 17220 return; 17221 Complex t; 17222 if (Utilities.noString(parentType)) 17223 t = parent; 17224 else { 17225 t = parent.predicate("fhir:"+name,index > -1); 17226 } 17227 composeBackboneElement(t, "dosage", name, element, index); 17228 if (element.hasTextElement()) { 17229 composeString(t, "MedicationAdministrationDosageComponent", "text", element.getTextElement(), -1); 17230 } 17231 if (element.hasSite()) { 17232 composeCodeableConcept(t, "MedicationAdministrationDosageComponent", "site", element.getSite(), -1); 17233 } 17234 if (element.hasRoute()) { 17235 composeCodeableConcept(t, "MedicationAdministrationDosageComponent", "route", element.getRoute(), -1); 17236 } 17237 if (element.hasMethod()) { 17238 composeCodeableConcept(t, "MedicationAdministrationDosageComponent", "method", element.getMethod(), -1); 17239 } 17240 if (element.hasDose()) { 17241 composeQuantity(t, "MedicationAdministrationDosageComponent", "dose", element.getDose(), -1); 17242 } 17243 if (element.hasRate()) { 17244 composeType(t, "MedicationAdministrationDosageComponent", "rate", element.getRate(), -1); 17245 } 17246 } 17247 17248 protected void composeMedicationDispense(Complex parent, String parentType, String name, MedicationDispense element, int index) { 17249 if (element == null) 17250 return; 17251 Complex t; 17252 if (Utilities.noString(parentType)) 17253 t = parent; 17254 else { 17255 t = parent.predicate("fhir:"+name,index > -1); 17256 } 17257 composeDomainResource(t, "MedicationDispense", name, element, index); 17258 for (int i = 0; i < element.getIdentifier().size(); i++) { 17259 composeIdentifier(t, "MedicationDispense", "identifier", element.getIdentifier().get(i), i); 17260 } 17261 for (int i = 0; i < element.getBasedOn().size(); i++) { 17262 composeReference(t, "MedicationDispense", "basedOn", element.getBasedOn().get(i), i); 17263 } 17264 for (int i = 0; i < element.getPartOf().size(); i++) { 17265 composeReference(t, "MedicationDispense", "partOf", element.getPartOf().get(i), i); 17266 } 17267 if (element.hasStatusElement()) { 17268 composeEnum(t, "MedicationDispense", "status", element.getStatusElement(), -1); 17269 } 17270 if (element.hasNotPerformedReason()) { 17271 composeCodeableReference(t, "MedicationDispense", "notPerformedReason", element.getNotPerformedReason(), -1); 17272 } 17273 if (element.hasStatusChangedElement()) { 17274 composeDateTime(t, "MedicationDispense", "statusChanged", element.getStatusChangedElement(), -1); 17275 } 17276 for (int i = 0; i < element.getCategory().size(); i++) { 17277 composeCodeableConcept(t, "MedicationDispense", "category", element.getCategory().get(i), i); 17278 } 17279 if (element.hasMedication()) { 17280 composeCodeableReference(t, "MedicationDispense", "medication", element.getMedication(), -1); 17281 } 17282 if (element.hasSubject()) { 17283 composeReference(t, "MedicationDispense", "subject", element.getSubject(), -1); 17284 } 17285 if (element.hasEncounter()) { 17286 composeReference(t, "MedicationDispense", "encounter", element.getEncounter(), -1); 17287 } 17288 for (int i = 0; i < element.getSupportingInformation().size(); i++) { 17289 composeReference(t, "MedicationDispense", "supportingInformation", element.getSupportingInformation().get(i), i); 17290 } 17291 for (int i = 0; i < element.getPerformer().size(); i++) { 17292 composeMedicationDispensePerformerComponent(t, "MedicationDispense", "performer", element.getPerformer().get(i), i); 17293 } 17294 if (element.hasLocation()) { 17295 composeReference(t, "MedicationDispense", "location", element.getLocation(), -1); 17296 } 17297 for (int i = 0; i < element.getAuthorizingPrescription().size(); i++) { 17298 composeReference(t, "MedicationDispense", "authorizingPrescription", element.getAuthorizingPrescription().get(i), i); 17299 } 17300 if (element.hasType()) { 17301 composeCodeableConcept(t, "MedicationDispense", "type", element.getType(), -1); 17302 } 17303 if (element.hasQuantity()) { 17304 composeQuantity(t, "MedicationDispense", "quantity", element.getQuantity(), -1); 17305 } 17306 if (element.hasDaysSupply()) { 17307 composeQuantity(t, "MedicationDispense", "daysSupply", element.getDaysSupply(), -1); 17308 } 17309 if (element.hasRecordedElement()) { 17310 composeDateTime(t, "MedicationDispense", "recorded", element.getRecordedElement(), -1); 17311 } 17312 if (element.hasWhenPreparedElement()) { 17313 composeDateTime(t, "MedicationDispense", "whenPrepared", element.getWhenPreparedElement(), -1); 17314 } 17315 if (element.hasWhenHandedOverElement()) { 17316 composeDateTime(t, "MedicationDispense", "whenHandedOver", element.getWhenHandedOverElement(), -1); 17317 } 17318 if (element.hasDestination()) { 17319 composeReference(t, "MedicationDispense", "destination", element.getDestination(), -1); 17320 } 17321 for (int i = 0; i < element.getReceiver().size(); i++) { 17322 composeReference(t, "MedicationDispense", "receiver", element.getReceiver().get(i), i); 17323 } 17324 for (int i = 0; i < element.getNote().size(); i++) { 17325 composeAnnotation(t, "MedicationDispense", "note", element.getNote().get(i), i); 17326 } 17327 if (element.hasRenderedDosageInstructionElement()) { 17328 composeMarkdown(t, "MedicationDispense", "renderedDosageInstruction", element.getRenderedDosageInstructionElement(), -1); 17329 } 17330 for (int i = 0; i < element.getDosageInstruction().size(); i++) { 17331 composeDosage(t, "MedicationDispense", "dosageInstruction", element.getDosageInstruction().get(i), i); 17332 } 17333 if (element.hasSubstitution()) { 17334 composeMedicationDispenseSubstitutionComponent(t, "MedicationDispense", "substitution", element.getSubstitution(), -1); 17335 } 17336 for (int i = 0; i < element.getEventHistory().size(); i++) { 17337 composeReference(t, "MedicationDispense", "eventHistory", element.getEventHistory().get(i), i); 17338 } 17339 } 17340 17341 protected void composeMedicationDispensePerformerComponent(Complex parent, String parentType, String name, MedicationDispense.MedicationDispensePerformerComponent element, int index) { 17342 if (element == null) 17343 return; 17344 Complex t; 17345 if (Utilities.noString(parentType)) 17346 t = parent; 17347 else { 17348 t = parent.predicate("fhir:"+name,index > -1); 17349 } 17350 composeBackboneElement(t, "performer", name, element, index); 17351 if (element.hasFunction()) { 17352 composeCodeableConcept(t, "MedicationDispensePerformerComponent", "function", element.getFunction(), -1); 17353 } 17354 if (element.hasActor()) { 17355 composeReference(t, "MedicationDispensePerformerComponent", "actor", element.getActor(), -1); 17356 } 17357 } 17358 17359 protected void composeMedicationDispenseSubstitutionComponent(Complex parent, String parentType, String name, MedicationDispense.MedicationDispenseSubstitutionComponent element, int index) { 17360 if (element == null) 17361 return; 17362 Complex t; 17363 if (Utilities.noString(parentType)) 17364 t = parent; 17365 else { 17366 t = parent.predicate("fhir:"+name,index > -1); 17367 } 17368 composeBackboneElement(t, "substitution", name, element, index); 17369 if (element.hasWasSubstitutedElement()) { 17370 composeBoolean(t, "MedicationDispenseSubstitutionComponent", "wasSubstituted", element.getWasSubstitutedElement(), -1); 17371 } 17372 if (element.hasType()) { 17373 composeCodeableConcept(t, "MedicationDispenseSubstitutionComponent", "type", element.getType(), -1); 17374 } 17375 for (int i = 0; i < element.getReason().size(); i++) { 17376 composeCodeableConcept(t, "MedicationDispenseSubstitutionComponent", "reason", element.getReason().get(i), i); 17377 } 17378 if (element.hasResponsibleParty()) { 17379 composeReference(t, "MedicationDispenseSubstitutionComponent", "responsibleParty", element.getResponsibleParty(), -1); 17380 } 17381 } 17382 17383 protected void composeMedicationKnowledge(Complex parent, String parentType, String name, MedicationKnowledge element, int index) { 17384 if (element == null) 17385 return; 17386 Complex t; 17387 if (Utilities.noString(parentType)) 17388 t = parent; 17389 else { 17390 t = parent.predicate("fhir:"+name,index > -1); 17391 } 17392 composeDomainResource(t, "MedicationKnowledge", name, element, index); 17393 for (int i = 0; i < element.getIdentifier().size(); i++) { 17394 composeIdentifier(t, "MedicationKnowledge", "identifier", element.getIdentifier().get(i), i); 17395 } 17396 if (element.hasCode()) { 17397 composeCodeableConcept(t, "MedicationKnowledge", "code", element.getCode(), -1); 17398 } 17399 if (element.hasStatusElement()) { 17400 composeEnum(t, "MedicationKnowledge", "status", element.getStatusElement(), -1); 17401 } 17402 if (element.hasAuthor()) { 17403 composeReference(t, "MedicationKnowledge", "author", element.getAuthor(), -1); 17404 } 17405 for (int i = 0; i < element.getIntendedJurisdiction().size(); i++) { 17406 composeCodeableConcept(t, "MedicationKnowledge", "intendedJurisdiction", element.getIntendedJurisdiction().get(i), i); 17407 } 17408 for (int i = 0; i < element.getName().size(); i++) { 17409 composeString(t, "MedicationKnowledge", "name", element.getName().get(i), i); 17410 } 17411 for (int i = 0; i < element.getRelatedMedicationKnowledge().size(); i++) { 17412 composeMedicationKnowledgeRelatedMedicationKnowledgeComponent(t, "MedicationKnowledge", "relatedMedicationKnowledge", element.getRelatedMedicationKnowledge().get(i), i); 17413 } 17414 for (int i = 0; i < element.getAssociatedMedication().size(); i++) { 17415 composeReference(t, "MedicationKnowledge", "associatedMedication", element.getAssociatedMedication().get(i), i); 17416 } 17417 for (int i = 0; i < element.getProductType().size(); i++) { 17418 composeCodeableConcept(t, "MedicationKnowledge", "productType", element.getProductType().get(i), i); 17419 } 17420 for (int i = 0; i < element.getMonograph().size(); i++) { 17421 composeMedicationKnowledgeMonographComponent(t, "MedicationKnowledge", "monograph", element.getMonograph().get(i), i); 17422 } 17423 if (element.hasPreparationInstructionElement()) { 17424 composeMarkdown(t, "MedicationKnowledge", "preparationInstruction", element.getPreparationInstructionElement(), -1); 17425 } 17426 for (int i = 0; i < element.getCost().size(); i++) { 17427 composeMedicationKnowledgeCostComponent(t, "MedicationKnowledge", "cost", element.getCost().get(i), i); 17428 } 17429 for (int i = 0; i < element.getMonitoringProgram().size(); i++) { 17430 composeMedicationKnowledgeMonitoringProgramComponent(t, "MedicationKnowledge", "monitoringProgram", element.getMonitoringProgram().get(i), i); 17431 } 17432 for (int i = 0; i < element.getIndicationGuideline().size(); i++) { 17433 composeMedicationKnowledgeIndicationGuidelineComponent(t, "MedicationKnowledge", "indicationGuideline", element.getIndicationGuideline().get(i), i); 17434 } 17435 for (int i = 0; i < element.getMedicineClassification().size(); i++) { 17436 composeMedicationKnowledgeMedicineClassificationComponent(t, "MedicationKnowledge", "medicineClassification", element.getMedicineClassification().get(i), i); 17437 } 17438 for (int i = 0; i < element.getPackaging().size(); i++) { 17439 composeMedicationKnowledgePackagingComponent(t, "MedicationKnowledge", "packaging", element.getPackaging().get(i), i); 17440 } 17441 for (int i = 0; i < element.getClinicalUseIssue().size(); i++) { 17442 composeReference(t, "MedicationKnowledge", "clinicalUseIssue", element.getClinicalUseIssue().get(i), i); 17443 } 17444 for (int i = 0; i < element.getStorageGuideline().size(); i++) { 17445 composeMedicationKnowledgeStorageGuidelineComponent(t, "MedicationKnowledge", "storageGuideline", element.getStorageGuideline().get(i), i); 17446 } 17447 for (int i = 0; i < element.getRegulatory().size(); i++) { 17448 composeMedicationKnowledgeRegulatoryComponent(t, "MedicationKnowledge", "regulatory", element.getRegulatory().get(i), i); 17449 } 17450 if (element.hasDefinitional()) { 17451 composeMedicationKnowledgeDefinitionalComponent(t, "MedicationKnowledge", "definitional", element.getDefinitional(), -1); 17452 } 17453 } 17454 17455 protected void composeMedicationKnowledgeRelatedMedicationKnowledgeComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeRelatedMedicationKnowledgeComponent element, int index) { 17456 if (element == null) 17457 return; 17458 Complex t; 17459 if (Utilities.noString(parentType)) 17460 t = parent; 17461 else { 17462 t = parent.predicate("fhir:"+name,index > -1); 17463 } 17464 composeBackboneElement(t, "relatedMedicationKnowledge", name, element, index); 17465 if (element.hasType()) { 17466 composeCodeableConcept(t, "MedicationKnowledgeRelatedMedicationKnowledgeComponent", "type", element.getType(), -1); 17467 } 17468 for (int i = 0; i < element.getReference().size(); i++) { 17469 composeReference(t, "MedicationKnowledgeRelatedMedicationKnowledgeComponent", "reference", element.getReference().get(i), i); 17470 } 17471 } 17472 17473 protected void composeMedicationKnowledgeMonographComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeMonographComponent element, int index) { 17474 if (element == null) 17475 return; 17476 Complex t; 17477 if (Utilities.noString(parentType)) 17478 t = parent; 17479 else { 17480 t = parent.predicate("fhir:"+name,index > -1); 17481 } 17482 composeBackboneElement(t, "monograph", name, element, index); 17483 if (element.hasType()) { 17484 composeCodeableConcept(t, "MedicationKnowledgeMonographComponent", "type", element.getType(), -1); 17485 } 17486 if (element.hasSource()) { 17487 composeReference(t, "MedicationKnowledgeMonographComponent", "source", element.getSource(), -1); 17488 } 17489 } 17490 17491 protected void composeMedicationKnowledgeCostComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeCostComponent element, int index) { 17492 if (element == null) 17493 return; 17494 Complex t; 17495 if (Utilities.noString(parentType)) 17496 t = parent; 17497 else { 17498 t = parent.predicate("fhir:"+name,index > -1); 17499 } 17500 composeBackboneElement(t, "cost", name, element, index); 17501 for (int i = 0; i < element.getEffectiveDate().size(); i++) { 17502 composePeriod(t, "MedicationKnowledgeCostComponent", "effectiveDate", element.getEffectiveDate().get(i), i); 17503 } 17504 if (element.hasType()) { 17505 composeCodeableConcept(t, "MedicationKnowledgeCostComponent", "type", element.getType(), -1); 17506 } 17507 if (element.hasSourceElement()) { 17508 composeString(t, "MedicationKnowledgeCostComponent", "source", element.getSourceElement(), -1); 17509 } 17510 if (element.hasCost()) { 17511 composeType(t, "MedicationKnowledgeCostComponent", "cost", element.getCost(), -1); 17512 } 17513 } 17514 17515 protected void composeMedicationKnowledgeMonitoringProgramComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeMonitoringProgramComponent element, int index) { 17516 if (element == null) 17517 return; 17518 Complex t; 17519 if (Utilities.noString(parentType)) 17520 t = parent; 17521 else { 17522 t = parent.predicate("fhir:"+name,index > -1); 17523 } 17524 composeBackboneElement(t, "monitoringProgram", name, element, index); 17525 if (element.hasType()) { 17526 composeCodeableConcept(t, "MedicationKnowledgeMonitoringProgramComponent", "type", element.getType(), -1); 17527 } 17528 if (element.hasNameElement()) { 17529 composeString(t, "MedicationKnowledgeMonitoringProgramComponent", "name", element.getNameElement(), -1); 17530 } 17531 } 17532 17533 protected void composeMedicationKnowledgeIndicationGuidelineComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineComponent element, int index) { 17534 if (element == null) 17535 return; 17536 Complex t; 17537 if (Utilities.noString(parentType)) 17538 t = parent; 17539 else { 17540 t = parent.predicate("fhir:"+name,index > -1); 17541 } 17542 composeBackboneElement(t, "indicationGuideline", name, element, index); 17543 for (int i = 0; i < element.getIndication().size(); i++) { 17544 composeCodeableReference(t, "MedicationKnowledgeIndicationGuidelineComponent", "indication", element.getIndication().get(i), i); 17545 } 17546 for (int i = 0; i < element.getDosingGuideline().size(); i++) { 17547 composeMedicationKnowledgeIndicationGuidelineDosingGuidelineComponent(t, "MedicationKnowledgeIndicationGuidelineComponent", "dosingGuideline", element.getDosingGuideline().get(i), i); 17548 } 17549 } 17550 17551 protected void composeMedicationKnowledgeIndicationGuidelineDosingGuidelineComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent element, int index) { 17552 if (element == null) 17553 return; 17554 Complex t; 17555 if (Utilities.noString(parentType)) 17556 t = parent; 17557 else { 17558 t = parent.predicate("fhir:"+name,index > -1); 17559 } 17560 composeBackboneElement(t, "dosingGuideline", name, element, index); 17561 if (element.hasTreatmentIntent()) { 17562 composeCodeableConcept(t, "MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent", "treatmentIntent", element.getTreatmentIntent(), -1); 17563 } 17564 for (int i = 0; i < element.getDosage().size(); i++) { 17565 composeMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent(t, "MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent", "dosage", element.getDosage().get(i), i); 17566 } 17567 if (element.hasAdministrationTreatment()) { 17568 composeCodeableConcept(t, "MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent", "administrationTreatment", element.getAdministrationTreatment(), -1); 17569 } 17570 for (int i = 0; i < element.getPatientCharacteristic().size(); i++) { 17571 composeMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent(t, "MedicationKnowledgeIndicationGuidelineDosingGuidelineComponent", "patientCharacteristic", element.getPatientCharacteristic().get(i), i); 17572 } 17573 } 17574 17575 protected void composeMedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent element, int index) { 17576 if (element == null) 17577 return; 17578 Complex t; 17579 if (Utilities.noString(parentType)) 17580 t = parent; 17581 else { 17582 t = parent.predicate("fhir:"+name,index > -1); 17583 } 17584 composeBackboneElement(t, "dosage", name, element, index); 17585 if (element.hasType()) { 17586 composeCodeableConcept(t, "MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent", "type", element.getType(), -1); 17587 } 17588 for (int i = 0; i < element.getDosage().size(); i++) { 17589 composeDosage(t, "MedicationKnowledgeIndicationGuidelineDosingGuidelineDosageComponent", "dosage", element.getDosage().get(i), i); 17590 } 17591 } 17592 17593 protected void composeMedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent element, int index) { 17594 if (element == null) 17595 return; 17596 Complex t; 17597 if (Utilities.noString(parentType)) 17598 t = parent; 17599 else { 17600 t = parent.predicate("fhir:"+name,index > -1); 17601 } 17602 composeBackboneElement(t, "patientCharacteristic", name, element, index); 17603 if (element.hasType()) { 17604 composeCodeableConcept(t, "MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent", "type", element.getType(), -1); 17605 } 17606 if (element.hasValue()) { 17607 composeType(t, "MedicationKnowledgeIndicationGuidelineDosingGuidelinePatientCharacteristicComponent", "value", element.getValue(), -1); 17608 } 17609 } 17610 17611 protected void composeMedicationKnowledgeMedicineClassificationComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent element, int index) { 17612 if (element == null) 17613 return; 17614 Complex t; 17615 if (Utilities.noString(parentType)) 17616 t = parent; 17617 else { 17618 t = parent.predicate("fhir:"+name,index > -1); 17619 } 17620 composeBackboneElement(t, "medicineClassification", name, element, index); 17621 if (element.hasType()) { 17622 composeCodeableConcept(t, "MedicationKnowledgeMedicineClassificationComponent", "type", element.getType(), -1); 17623 } 17624 if (element.hasSource()) { 17625 composeType(t, "MedicationKnowledgeMedicineClassificationComponent", "source", element.getSource(), -1); 17626 } 17627 for (int i = 0; i < element.getClassification().size(); i++) { 17628 composeCodeableConcept(t, "MedicationKnowledgeMedicineClassificationComponent", "classification", element.getClassification().get(i), i); 17629 } 17630 } 17631 17632 protected void composeMedicationKnowledgePackagingComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgePackagingComponent element, int index) { 17633 if (element == null) 17634 return; 17635 Complex t; 17636 if (Utilities.noString(parentType)) 17637 t = parent; 17638 else { 17639 t = parent.predicate("fhir:"+name,index > -1); 17640 } 17641 composeBackboneElement(t, "packaging", name, element, index); 17642 for (int i = 0; i < element.getCost().size(); i++) { 17643 composeMedicationKnowledgeCostComponent(t, "MedicationKnowledgePackagingComponent", "cost", element.getCost().get(i), i); 17644 } 17645 if (element.hasPackagedProduct()) { 17646 composeReference(t, "MedicationKnowledgePackagingComponent", "packagedProduct", element.getPackagedProduct(), -1); 17647 } 17648 } 17649 17650 protected void composeMedicationKnowledgeStorageGuidelineComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeStorageGuidelineComponent element, int index) { 17651 if (element == null) 17652 return; 17653 Complex t; 17654 if (Utilities.noString(parentType)) 17655 t = parent; 17656 else { 17657 t = parent.predicate("fhir:"+name,index > -1); 17658 } 17659 composeBackboneElement(t, "storageGuideline", name, element, index); 17660 if (element.hasReferenceElement()) { 17661 composeUri(t, "MedicationKnowledgeStorageGuidelineComponent", "reference", element.getReferenceElement(), -1); 17662 } 17663 for (int i = 0; i < element.getNote().size(); i++) { 17664 composeAnnotation(t, "MedicationKnowledgeStorageGuidelineComponent", "note", element.getNote().get(i), i); 17665 } 17666 if (element.hasStabilityDuration()) { 17667 composeDuration(t, "MedicationKnowledgeStorageGuidelineComponent", "stabilityDuration", element.getStabilityDuration(), -1); 17668 } 17669 for (int i = 0; i < element.getEnvironmentalSetting().size(); i++) { 17670 composeMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent(t, "MedicationKnowledgeStorageGuidelineComponent", "environmentalSetting", element.getEnvironmentalSetting().get(i), i); 17671 } 17672 } 17673 17674 protected void composeMedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent element, int index) { 17675 if (element == null) 17676 return; 17677 Complex t; 17678 if (Utilities.noString(parentType)) 17679 t = parent; 17680 else { 17681 t = parent.predicate("fhir:"+name,index > -1); 17682 } 17683 composeBackboneElement(t, "environmentalSetting", name, element, index); 17684 if (element.hasType()) { 17685 composeCodeableConcept(t, "MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent", "type", element.getType(), -1); 17686 } 17687 if (element.hasValue()) { 17688 composeType(t, "MedicationKnowledgeStorageGuidelineEnvironmentalSettingComponent", "value", element.getValue(), -1); 17689 } 17690 } 17691 17692 protected void composeMedicationKnowledgeRegulatoryComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeRegulatoryComponent element, int index) { 17693 if (element == null) 17694 return; 17695 Complex t; 17696 if (Utilities.noString(parentType)) 17697 t = parent; 17698 else { 17699 t = parent.predicate("fhir:"+name,index > -1); 17700 } 17701 composeBackboneElement(t, "regulatory", name, element, index); 17702 if (element.hasRegulatoryAuthority()) { 17703 composeReference(t, "MedicationKnowledgeRegulatoryComponent", "regulatoryAuthority", element.getRegulatoryAuthority(), -1); 17704 } 17705 for (int i = 0; i < element.getSubstitution().size(); i++) { 17706 composeMedicationKnowledgeRegulatorySubstitutionComponent(t, "MedicationKnowledgeRegulatoryComponent", "substitution", element.getSubstitution().get(i), i); 17707 } 17708 for (int i = 0; i < element.getSchedule().size(); i++) { 17709 composeCodeableConcept(t, "MedicationKnowledgeRegulatoryComponent", "schedule", element.getSchedule().get(i), i); 17710 } 17711 if (element.hasMaxDispense()) { 17712 composeMedicationKnowledgeRegulatoryMaxDispenseComponent(t, "MedicationKnowledgeRegulatoryComponent", "maxDispense", element.getMaxDispense(), -1); 17713 } 17714 } 17715 17716 protected void composeMedicationKnowledgeRegulatorySubstitutionComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeRegulatorySubstitutionComponent element, int index) { 17717 if (element == null) 17718 return; 17719 Complex t; 17720 if (Utilities.noString(parentType)) 17721 t = parent; 17722 else { 17723 t = parent.predicate("fhir:"+name,index > -1); 17724 } 17725 composeBackboneElement(t, "substitution", name, element, index); 17726 if (element.hasType()) { 17727 composeCodeableConcept(t, "MedicationKnowledgeRegulatorySubstitutionComponent", "type", element.getType(), -1); 17728 } 17729 if (element.hasAllowedElement()) { 17730 composeBoolean(t, "MedicationKnowledgeRegulatorySubstitutionComponent", "allowed", element.getAllowedElement(), -1); 17731 } 17732 } 17733 17734 protected void composeMedicationKnowledgeRegulatoryMaxDispenseComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeRegulatoryMaxDispenseComponent element, int index) { 17735 if (element == null) 17736 return; 17737 Complex t; 17738 if (Utilities.noString(parentType)) 17739 t = parent; 17740 else { 17741 t = parent.predicate("fhir:"+name,index > -1); 17742 } 17743 composeBackboneElement(t, "maxDispense", name, element, index); 17744 if (element.hasQuantity()) { 17745 composeQuantity(t, "MedicationKnowledgeRegulatoryMaxDispenseComponent", "quantity", element.getQuantity(), -1); 17746 } 17747 if (element.hasPeriod()) { 17748 composeDuration(t, "MedicationKnowledgeRegulatoryMaxDispenseComponent", "period", element.getPeriod(), -1); 17749 } 17750 } 17751 17752 protected void composeMedicationKnowledgeDefinitionalComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeDefinitionalComponent element, int index) { 17753 if (element == null) 17754 return; 17755 Complex t; 17756 if (Utilities.noString(parentType)) 17757 t = parent; 17758 else { 17759 t = parent.predicate("fhir:"+name,index > -1); 17760 } 17761 composeBackboneElement(t, "definitional", name, element, index); 17762 for (int i = 0; i < element.getDefinition().size(); i++) { 17763 composeReference(t, "MedicationKnowledgeDefinitionalComponent", "definition", element.getDefinition().get(i), i); 17764 } 17765 if (element.hasDoseForm()) { 17766 composeCodeableConcept(t, "MedicationKnowledgeDefinitionalComponent", "doseForm", element.getDoseForm(), -1); 17767 } 17768 for (int i = 0; i < element.getIntendedRoute().size(); i++) { 17769 composeCodeableConcept(t, "MedicationKnowledgeDefinitionalComponent", "intendedRoute", element.getIntendedRoute().get(i), i); 17770 } 17771 for (int i = 0; i < element.getIngredient().size(); i++) { 17772 composeMedicationKnowledgeDefinitionalIngredientComponent(t, "MedicationKnowledgeDefinitionalComponent", "ingredient", element.getIngredient().get(i), i); 17773 } 17774 for (int i = 0; i < element.getDrugCharacteristic().size(); i++) { 17775 composeMedicationKnowledgeDefinitionalDrugCharacteristicComponent(t, "MedicationKnowledgeDefinitionalComponent", "drugCharacteristic", element.getDrugCharacteristic().get(i), i); 17776 } 17777 } 17778 17779 protected void composeMedicationKnowledgeDefinitionalIngredientComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeDefinitionalIngredientComponent element, int index) { 17780 if (element == null) 17781 return; 17782 Complex t; 17783 if (Utilities.noString(parentType)) 17784 t = parent; 17785 else { 17786 t = parent.predicate("fhir:"+name,index > -1); 17787 } 17788 composeBackboneElement(t, "ingredient", name, element, index); 17789 if (element.hasItem()) { 17790 composeCodeableReference(t, "MedicationKnowledgeDefinitionalIngredientComponent", "item", element.getItem(), -1); 17791 } 17792 if (element.hasType()) { 17793 composeCodeableConcept(t, "MedicationKnowledgeDefinitionalIngredientComponent", "type", element.getType(), -1); 17794 } 17795 if (element.hasStrength()) { 17796 composeType(t, "MedicationKnowledgeDefinitionalIngredientComponent", "strength", element.getStrength(), -1); 17797 } 17798 } 17799 17800 protected void composeMedicationKnowledgeDefinitionalDrugCharacteristicComponent(Complex parent, String parentType, String name, MedicationKnowledge.MedicationKnowledgeDefinitionalDrugCharacteristicComponent element, int index) { 17801 if (element == null) 17802 return; 17803 Complex t; 17804 if (Utilities.noString(parentType)) 17805 t = parent; 17806 else { 17807 t = parent.predicate("fhir:"+name,index > -1); 17808 } 17809 composeBackboneElement(t, "drugCharacteristic", name, element, index); 17810 if (element.hasType()) { 17811 composeCodeableConcept(t, "MedicationKnowledgeDefinitionalDrugCharacteristicComponent", "type", element.getType(), -1); 17812 } 17813 if (element.hasValue()) { 17814 composeType(t, "MedicationKnowledgeDefinitionalDrugCharacteristicComponent", "value", element.getValue(), -1); 17815 } 17816 } 17817 17818 protected void composeMedicationRequest(Complex parent, String parentType, String name, MedicationRequest element, int index) { 17819 if (element == null) 17820 return; 17821 Complex t; 17822 if (Utilities.noString(parentType)) 17823 t = parent; 17824 else { 17825 t = parent.predicate("fhir:"+name,index > -1); 17826 } 17827 composeDomainResource(t, "MedicationRequest", name, element, index); 17828 for (int i = 0; i < element.getIdentifier().size(); i++) { 17829 composeIdentifier(t, "MedicationRequest", "identifier", element.getIdentifier().get(i), i); 17830 } 17831 for (int i = 0; i < element.getBasedOn().size(); i++) { 17832 composeReference(t, "MedicationRequest", "basedOn", element.getBasedOn().get(i), i); 17833 } 17834 if (element.hasPriorPrescription()) { 17835 composeReference(t, "MedicationRequest", "priorPrescription", element.getPriorPrescription(), -1); 17836 } 17837 if (element.hasGroupIdentifier()) { 17838 composeIdentifier(t, "MedicationRequest", "groupIdentifier", element.getGroupIdentifier(), -1); 17839 } 17840 if (element.hasStatusElement()) { 17841 composeEnum(t, "MedicationRequest", "status", element.getStatusElement(), -1); 17842 } 17843 if (element.hasStatusReason()) { 17844 composeCodeableConcept(t, "MedicationRequest", "statusReason", element.getStatusReason(), -1); 17845 } 17846 if (element.hasStatusChangedElement()) { 17847 composeDateTime(t, "MedicationRequest", "statusChanged", element.getStatusChangedElement(), -1); 17848 } 17849 if (element.hasIntentElement()) { 17850 composeEnum(t, "MedicationRequest", "intent", element.getIntentElement(), -1); 17851 } 17852 for (int i = 0; i < element.getCategory().size(); i++) { 17853 composeCodeableConcept(t, "MedicationRequest", "category", element.getCategory().get(i), i); 17854 } 17855 if (element.hasPriorityElement()) { 17856 composeEnum(t, "MedicationRequest", "priority", element.getPriorityElement(), -1); 17857 } 17858 if (element.hasDoNotPerformElement()) { 17859 composeBoolean(t, "MedicationRequest", "doNotPerform", element.getDoNotPerformElement(), -1); 17860 } 17861 if (element.hasMedication()) { 17862 composeCodeableReference(t, "MedicationRequest", "medication", element.getMedication(), -1); 17863 } 17864 if (element.hasSubject()) { 17865 composeReference(t, "MedicationRequest", "subject", element.getSubject(), -1); 17866 } 17867 for (int i = 0; i < element.getInformationSource().size(); i++) { 17868 composeReference(t, "MedicationRequest", "informationSource", element.getInformationSource().get(i), i); 17869 } 17870 if (element.hasEncounter()) { 17871 composeReference(t, "MedicationRequest", "encounter", element.getEncounter(), -1); 17872 } 17873 for (int i = 0; i < element.getSupportingInformation().size(); i++) { 17874 composeReference(t, "MedicationRequest", "supportingInformation", element.getSupportingInformation().get(i), i); 17875 } 17876 if (element.hasAuthoredOnElement()) { 17877 composeDateTime(t, "MedicationRequest", "authoredOn", element.getAuthoredOnElement(), -1); 17878 } 17879 if (element.hasRequester()) { 17880 composeReference(t, "MedicationRequest", "requester", element.getRequester(), -1); 17881 } 17882 if (element.hasReportedElement()) { 17883 composeBoolean(t, "MedicationRequest", "reported", element.getReportedElement(), -1); 17884 } 17885 if (element.hasPerformerType()) { 17886 composeCodeableConcept(t, "MedicationRequest", "performerType", element.getPerformerType(), -1); 17887 } 17888 for (int i = 0; i < element.getPerformer().size(); i++) { 17889 composeReference(t, "MedicationRequest", "performer", element.getPerformer().get(i), i); 17890 } 17891 for (int i = 0; i < element.getDevice().size(); i++) { 17892 composeCodeableReference(t, "MedicationRequest", "device", element.getDevice().get(i), i); 17893 } 17894 if (element.hasRecorder()) { 17895 composeReference(t, "MedicationRequest", "recorder", element.getRecorder(), -1); 17896 } 17897 for (int i = 0; i < element.getReason().size(); i++) { 17898 composeCodeableReference(t, "MedicationRequest", "reason", element.getReason().get(i), i); 17899 } 17900 if (element.hasCourseOfTherapyType()) { 17901 composeCodeableConcept(t, "MedicationRequest", "courseOfTherapyType", element.getCourseOfTherapyType(), -1); 17902 } 17903 for (int i = 0; i < element.getInsurance().size(); i++) { 17904 composeReference(t, "MedicationRequest", "insurance", element.getInsurance().get(i), i); 17905 } 17906 for (int i = 0; i < element.getNote().size(); i++) { 17907 composeAnnotation(t, "MedicationRequest", "note", element.getNote().get(i), i); 17908 } 17909 if (element.hasRenderedDosageInstructionElement()) { 17910 composeMarkdown(t, "MedicationRequest", "renderedDosageInstruction", element.getRenderedDosageInstructionElement(), -1); 17911 } 17912 if (element.hasEffectiveDosePeriod()) { 17913 composePeriod(t, "MedicationRequest", "effectiveDosePeriod", element.getEffectiveDosePeriod(), -1); 17914 } 17915 for (int i = 0; i < element.getDosageInstruction().size(); i++) { 17916 composeDosage(t, "MedicationRequest", "dosageInstruction", element.getDosageInstruction().get(i), i); 17917 } 17918 if (element.hasDispenseRequest()) { 17919 composeMedicationRequestDispenseRequestComponent(t, "MedicationRequest", "dispenseRequest", element.getDispenseRequest(), -1); 17920 } 17921 if (element.hasSubstitution()) { 17922 composeMedicationRequestSubstitutionComponent(t, "MedicationRequest", "substitution", element.getSubstitution(), -1); 17923 } 17924 for (int i = 0; i < element.getEventHistory().size(); i++) { 17925 composeReference(t, "MedicationRequest", "eventHistory", element.getEventHistory().get(i), i); 17926 } 17927 } 17928 17929 protected void composeMedicationRequestDispenseRequestComponent(Complex parent, String parentType, String name, MedicationRequest.MedicationRequestDispenseRequestComponent element, int index) { 17930 if (element == null) 17931 return; 17932 Complex t; 17933 if (Utilities.noString(parentType)) 17934 t = parent; 17935 else { 17936 t = parent.predicate("fhir:"+name,index > -1); 17937 } 17938 composeBackboneElement(t, "dispenseRequest", name, element, index); 17939 if (element.hasInitialFill()) { 17940 composeMedicationRequestDispenseRequestInitialFillComponent(t, "MedicationRequestDispenseRequestComponent", "initialFill", element.getInitialFill(), -1); 17941 } 17942 if (element.hasDispenseInterval()) { 17943 composeDuration(t, "MedicationRequestDispenseRequestComponent", "dispenseInterval", element.getDispenseInterval(), -1); 17944 } 17945 if (element.hasValidityPeriod()) { 17946 composePeriod(t, "MedicationRequestDispenseRequestComponent", "validityPeriod", element.getValidityPeriod(), -1); 17947 } 17948 if (element.hasNumberOfRepeatsAllowedElement()) { 17949 composeUnsignedInt(t, "MedicationRequestDispenseRequestComponent", "numberOfRepeatsAllowed", element.getNumberOfRepeatsAllowedElement(), -1); 17950 } 17951 if (element.hasQuantity()) { 17952 composeQuantity(t, "MedicationRequestDispenseRequestComponent", "quantity", element.getQuantity(), -1); 17953 } 17954 if (element.hasExpectedSupplyDuration()) { 17955 composeDuration(t, "MedicationRequestDispenseRequestComponent", "expectedSupplyDuration", element.getExpectedSupplyDuration(), -1); 17956 } 17957 if (element.hasDispenser()) { 17958 composeReference(t, "MedicationRequestDispenseRequestComponent", "dispenser", element.getDispenser(), -1); 17959 } 17960 for (int i = 0; i < element.getDispenserInstruction().size(); i++) { 17961 composeAnnotation(t, "MedicationRequestDispenseRequestComponent", "dispenserInstruction", element.getDispenserInstruction().get(i), i); 17962 } 17963 if (element.hasDoseAdministrationAid()) { 17964 composeCodeableConcept(t, "MedicationRequestDispenseRequestComponent", "doseAdministrationAid", element.getDoseAdministrationAid(), -1); 17965 } 17966 } 17967 17968 protected void composeMedicationRequestDispenseRequestInitialFillComponent(Complex parent, String parentType, String name, MedicationRequest.MedicationRequestDispenseRequestInitialFillComponent element, int index) { 17969 if (element == null) 17970 return; 17971 Complex t; 17972 if (Utilities.noString(parentType)) 17973 t = parent; 17974 else { 17975 t = parent.predicate("fhir:"+name,index > -1); 17976 } 17977 composeBackboneElement(t, "initialFill", name, element, index); 17978 if (element.hasQuantity()) { 17979 composeQuantity(t, "MedicationRequestDispenseRequestInitialFillComponent", "quantity", element.getQuantity(), -1); 17980 } 17981 if (element.hasDuration()) { 17982 composeDuration(t, "MedicationRequestDispenseRequestInitialFillComponent", "duration", element.getDuration(), -1); 17983 } 17984 } 17985 17986 protected void composeMedicationRequestSubstitutionComponent(Complex parent, String parentType, String name, MedicationRequest.MedicationRequestSubstitutionComponent element, int index) { 17987 if (element == null) 17988 return; 17989 Complex t; 17990 if (Utilities.noString(parentType)) 17991 t = parent; 17992 else { 17993 t = parent.predicate("fhir:"+name,index > -1); 17994 } 17995 composeBackboneElement(t, "substitution", name, element, index); 17996 if (element.hasAllowed()) { 17997 composeType(t, "MedicationRequestSubstitutionComponent", "allowed", element.getAllowed(), -1); 17998 } 17999 if (element.hasReason()) { 18000 composeCodeableConcept(t, "MedicationRequestSubstitutionComponent", "reason", element.getReason(), -1); 18001 } 18002 } 18003 18004 protected void composeMedicationStatement(Complex parent, String parentType, String name, MedicationStatement element, int index) { 18005 if (element == null) 18006 return; 18007 Complex t; 18008 if (Utilities.noString(parentType)) 18009 t = parent; 18010 else { 18011 t = parent.predicate("fhir:"+name,index > -1); 18012 } 18013 composeDomainResource(t, "MedicationStatement", name, element, index); 18014 for (int i = 0; i < element.getIdentifier().size(); i++) { 18015 composeIdentifier(t, "MedicationStatement", "identifier", element.getIdentifier().get(i), i); 18016 } 18017 for (int i = 0; i < element.getPartOf().size(); i++) { 18018 composeReference(t, "MedicationStatement", "partOf", element.getPartOf().get(i), i); 18019 } 18020 if (element.hasStatusElement()) { 18021 composeEnum(t, "MedicationStatement", "status", element.getStatusElement(), -1); 18022 } 18023 for (int i = 0; i < element.getCategory().size(); i++) { 18024 composeCodeableConcept(t, "MedicationStatement", "category", element.getCategory().get(i), i); 18025 } 18026 if (element.hasMedication()) { 18027 composeCodeableReference(t, "MedicationStatement", "medication", element.getMedication(), -1); 18028 } 18029 if (element.hasSubject()) { 18030 composeReference(t, "MedicationStatement", "subject", element.getSubject(), -1); 18031 } 18032 if (element.hasEncounter()) { 18033 composeReference(t, "MedicationStatement", "encounter", element.getEncounter(), -1); 18034 } 18035 if (element.hasEffective()) { 18036 composeType(t, "MedicationStatement", "effective", element.getEffective(), -1); 18037 } 18038 if (element.hasDateAssertedElement()) { 18039 composeDateTime(t, "MedicationStatement", "dateAsserted", element.getDateAssertedElement(), -1); 18040 } 18041 for (int i = 0; i < element.getInformationSource().size(); i++) { 18042 composeReference(t, "MedicationStatement", "informationSource", element.getInformationSource().get(i), i); 18043 } 18044 for (int i = 0; i < element.getDerivedFrom().size(); i++) { 18045 composeReference(t, "MedicationStatement", "derivedFrom", element.getDerivedFrom().get(i), i); 18046 } 18047 for (int i = 0; i < element.getReason().size(); i++) { 18048 composeCodeableReference(t, "MedicationStatement", "reason", element.getReason().get(i), i); 18049 } 18050 for (int i = 0; i < element.getNote().size(); i++) { 18051 composeAnnotation(t, "MedicationStatement", "note", element.getNote().get(i), i); 18052 } 18053 for (int i = 0; i < element.getRelatedClinicalInformation().size(); i++) { 18054 composeReference(t, "MedicationStatement", "relatedClinicalInformation", element.getRelatedClinicalInformation().get(i), i); 18055 } 18056 if (element.hasRenderedDosageInstructionElement()) { 18057 composeMarkdown(t, "MedicationStatement", "renderedDosageInstruction", element.getRenderedDosageInstructionElement(), -1); 18058 } 18059 for (int i = 0; i < element.getDosage().size(); i++) { 18060 composeDosage(t, "MedicationStatement", "dosage", element.getDosage().get(i), i); 18061 } 18062 if (element.hasAdherence()) { 18063 composeMedicationStatementAdherenceComponent(t, "MedicationStatement", "adherence", element.getAdherence(), -1); 18064 } 18065 } 18066 18067 protected void composeMedicationStatementAdherenceComponent(Complex parent, String parentType, String name, MedicationStatement.MedicationStatementAdherenceComponent element, int index) { 18068 if (element == null) 18069 return; 18070 Complex t; 18071 if (Utilities.noString(parentType)) 18072 t = parent; 18073 else { 18074 t = parent.predicate("fhir:"+name,index > -1); 18075 } 18076 composeBackboneElement(t, "adherence", name, element, index); 18077 if (element.hasCode()) { 18078 composeCodeableConcept(t, "MedicationStatementAdherenceComponent", "code", element.getCode(), -1); 18079 } 18080 if (element.hasReason()) { 18081 composeCodeableConcept(t, "MedicationStatementAdherenceComponent", "reason", element.getReason(), -1); 18082 } 18083 } 18084 18085 protected void composeMedicinalProductDefinition(Complex parent, String parentType, String name, MedicinalProductDefinition element, int index) { 18086 if (element == null) 18087 return; 18088 Complex t; 18089 if (Utilities.noString(parentType)) 18090 t = parent; 18091 else { 18092 t = parent.predicate("fhir:"+name,index > -1); 18093 } 18094 composeDomainResource(t, "MedicinalProductDefinition", name, element, index); 18095 for (int i = 0; i < element.getIdentifier().size(); i++) { 18096 composeIdentifier(t, "MedicinalProductDefinition", "identifier", element.getIdentifier().get(i), i); 18097 } 18098 if (element.hasType()) { 18099 composeCodeableConcept(t, "MedicinalProductDefinition", "type", element.getType(), -1); 18100 } 18101 if (element.hasDomain()) { 18102 composeCodeableConcept(t, "MedicinalProductDefinition", "domain", element.getDomain(), -1); 18103 } 18104 if (element.hasVersionElement()) { 18105 composeString(t, "MedicinalProductDefinition", "version", element.getVersionElement(), -1); 18106 } 18107 if (element.hasStatus()) { 18108 composeCodeableConcept(t, "MedicinalProductDefinition", "status", element.getStatus(), -1); 18109 } 18110 if (element.hasStatusDateElement()) { 18111 composeDateTime(t, "MedicinalProductDefinition", "statusDate", element.getStatusDateElement(), -1); 18112 } 18113 if (element.hasDescriptionElement()) { 18114 composeMarkdown(t, "MedicinalProductDefinition", "description", element.getDescriptionElement(), -1); 18115 } 18116 if (element.hasCombinedPharmaceuticalDoseForm()) { 18117 composeCodeableConcept(t, "MedicinalProductDefinition", "combinedPharmaceuticalDoseForm", element.getCombinedPharmaceuticalDoseForm(), -1); 18118 } 18119 for (int i = 0; i < element.getRoute().size(); i++) { 18120 composeCodeableConcept(t, "MedicinalProductDefinition", "route", element.getRoute().get(i), i); 18121 } 18122 if (element.hasIndicationElement()) { 18123 composeMarkdown(t, "MedicinalProductDefinition", "indication", element.getIndicationElement(), -1); 18124 } 18125 if (element.hasLegalStatusOfSupply()) { 18126 composeCodeableConcept(t, "MedicinalProductDefinition", "legalStatusOfSupply", element.getLegalStatusOfSupply(), -1); 18127 } 18128 if (element.hasAdditionalMonitoringIndicator()) { 18129 composeCodeableConcept(t, "MedicinalProductDefinition", "additionalMonitoringIndicator", element.getAdditionalMonitoringIndicator(), -1); 18130 } 18131 for (int i = 0; i < element.getSpecialMeasures().size(); i++) { 18132 composeCodeableConcept(t, "MedicinalProductDefinition", "specialMeasures", element.getSpecialMeasures().get(i), i); 18133 } 18134 if (element.hasPediatricUseIndicator()) { 18135 composeCodeableConcept(t, "MedicinalProductDefinition", "pediatricUseIndicator", element.getPediatricUseIndicator(), -1); 18136 } 18137 for (int i = 0; i < element.getClassification().size(); i++) { 18138 composeCodeableConcept(t, "MedicinalProductDefinition", "classification", element.getClassification().get(i), i); 18139 } 18140 for (int i = 0; i < element.getMarketingStatus().size(); i++) { 18141 composeMarketingStatus(t, "MedicinalProductDefinition", "marketingStatus", element.getMarketingStatus().get(i), i); 18142 } 18143 for (int i = 0; i < element.getPackagedMedicinalProduct().size(); i++) { 18144 composeCodeableConcept(t, "MedicinalProductDefinition", "packagedMedicinalProduct", element.getPackagedMedicinalProduct().get(i), i); 18145 } 18146 for (int i = 0; i < element.getComprisedOf().size(); i++) { 18147 composeReference(t, "MedicinalProductDefinition", "comprisedOf", element.getComprisedOf().get(i), i); 18148 } 18149 for (int i = 0; i < element.getIngredient().size(); i++) { 18150 composeCodeableConcept(t, "MedicinalProductDefinition", "ingredient", element.getIngredient().get(i), i); 18151 } 18152 for (int i = 0; i < element.getImpurity().size(); i++) { 18153 composeCodeableReference(t, "MedicinalProductDefinition", "impurity", element.getImpurity().get(i), i); 18154 } 18155 for (int i = 0; i < element.getAttachedDocument().size(); i++) { 18156 composeReference(t, "MedicinalProductDefinition", "attachedDocument", element.getAttachedDocument().get(i), i); 18157 } 18158 for (int i = 0; i < element.getMasterFile().size(); i++) { 18159 composeReference(t, "MedicinalProductDefinition", "masterFile", element.getMasterFile().get(i), i); 18160 } 18161 for (int i = 0; i < element.getContact().size(); i++) { 18162 composeMedicinalProductDefinitionContactComponent(t, "MedicinalProductDefinition", "contact", element.getContact().get(i), i); 18163 } 18164 for (int i = 0; i < element.getClinicalTrial().size(); i++) { 18165 composeReference(t, "MedicinalProductDefinition", "clinicalTrial", element.getClinicalTrial().get(i), i); 18166 } 18167 for (int i = 0; i < element.getCode().size(); i++) { 18168 composeCoding(t, "MedicinalProductDefinition", "code", element.getCode().get(i), i); 18169 } 18170 for (int i = 0; i < element.getName().size(); i++) { 18171 composeMedicinalProductDefinitionNameComponent(t, "MedicinalProductDefinition", "name", element.getName().get(i), i); 18172 } 18173 for (int i = 0; i < element.getCrossReference().size(); i++) { 18174 composeMedicinalProductDefinitionCrossReferenceComponent(t, "MedicinalProductDefinition", "crossReference", element.getCrossReference().get(i), i); 18175 } 18176 for (int i = 0; i < element.getOperation().size(); i++) { 18177 composeMedicinalProductDefinitionOperationComponent(t, "MedicinalProductDefinition", "operation", element.getOperation().get(i), i); 18178 } 18179 for (int i = 0; i < element.getCharacteristic().size(); i++) { 18180 composeMedicinalProductDefinitionCharacteristicComponent(t, "MedicinalProductDefinition", "characteristic", element.getCharacteristic().get(i), i); 18181 } 18182 } 18183 18184 protected void composeMedicinalProductDefinitionContactComponent(Complex parent, String parentType, String name, MedicinalProductDefinition.MedicinalProductDefinitionContactComponent element, int index) { 18185 if (element == null) 18186 return; 18187 Complex t; 18188 if (Utilities.noString(parentType)) 18189 t = parent; 18190 else { 18191 t = parent.predicate("fhir:"+name,index > -1); 18192 } 18193 composeBackboneElement(t, "contact", name, element, index); 18194 if (element.hasType()) { 18195 composeCodeableConcept(t, "MedicinalProductDefinitionContactComponent", "type", element.getType(), -1); 18196 } 18197 if (element.hasContact()) { 18198 composeReference(t, "MedicinalProductDefinitionContactComponent", "contact", element.getContact(), -1); 18199 } 18200 } 18201 18202 protected void composeMedicinalProductDefinitionNameComponent(Complex parent, String parentType, String name, MedicinalProductDefinition.MedicinalProductDefinitionNameComponent element, int index) { 18203 if (element == null) 18204 return; 18205 Complex t; 18206 if (Utilities.noString(parentType)) 18207 t = parent; 18208 else { 18209 t = parent.predicate("fhir:"+name,index > -1); 18210 } 18211 composeBackboneElement(t, "name", name, element, index); 18212 if (element.hasProductNameElement()) { 18213 composeString(t, "MedicinalProductDefinitionNameComponent", "productName", element.getProductNameElement(), -1); 18214 } 18215 if (element.hasType()) { 18216 composeCodeableConcept(t, "MedicinalProductDefinitionNameComponent", "type", element.getType(), -1); 18217 } 18218 for (int i = 0; i < element.getPart().size(); i++) { 18219 composeMedicinalProductDefinitionNamePartComponent(t, "MedicinalProductDefinitionNameComponent", "part", element.getPart().get(i), i); 18220 } 18221 for (int i = 0; i < element.getUsage().size(); i++) { 18222 composeMedicinalProductDefinitionNameUsageComponent(t, "MedicinalProductDefinitionNameComponent", "usage", element.getUsage().get(i), i); 18223 } 18224 } 18225 18226 protected void composeMedicinalProductDefinitionNamePartComponent(Complex parent, String parentType, String name, MedicinalProductDefinition.MedicinalProductDefinitionNamePartComponent element, int index) { 18227 if (element == null) 18228 return; 18229 Complex t; 18230 if (Utilities.noString(parentType)) 18231 t = parent; 18232 else { 18233 t = parent.predicate("fhir:"+name,index > -1); 18234 } 18235 composeBackboneElement(t, "part", name, element, index); 18236 if (element.hasPartElement()) { 18237 composeString(t, "MedicinalProductDefinitionNamePartComponent", "part", element.getPartElement(), -1); 18238 } 18239 if (element.hasType()) { 18240 composeCodeableConcept(t, "MedicinalProductDefinitionNamePartComponent", "type", element.getType(), -1); 18241 } 18242 } 18243 18244 protected void composeMedicinalProductDefinitionNameUsageComponent(Complex parent, String parentType, String name, MedicinalProductDefinition.MedicinalProductDefinitionNameUsageComponent element, int index) { 18245 if (element == null) 18246 return; 18247 Complex t; 18248 if (Utilities.noString(parentType)) 18249 t = parent; 18250 else { 18251 t = parent.predicate("fhir:"+name,index > -1); 18252 } 18253 composeBackboneElement(t, "usage", name, element, index); 18254 if (element.hasCountry()) { 18255 composeCodeableConcept(t, "MedicinalProductDefinitionNameUsageComponent", "country", element.getCountry(), -1); 18256 } 18257 if (element.hasJurisdiction()) { 18258 composeCodeableConcept(t, "MedicinalProductDefinitionNameUsageComponent", "jurisdiction", element.getJurisdiction(), -1); 18259 } 18260 if (element.hasLanguage()) { 18261 composeCodeableConcept(t, "MedicinalProductDefinitionNameUsageComponent", "language", element.getLanguage(), -1); 18262 } 18263 } 18264 18265 protected void composeMedicinalProductDefinitionCrossReferenceComponent(Complex parent, String parentType, String name, MedicinalProductDefinition.MedicinalProductDefinitionCrossReferenceComponent element, int index) { 18266 if (element == null) 18267 return; 18268 Complex t; 18269 if (Utilities.noString(parentType)) 18270 t = parent; 18271 else { 18272 t = parent.predicate("fhir:"+name,index > -1); 18273 } 18274 composeBackboneElement(t, "crossReference", name, element, index); 18275 if (element.hasProduct()) { 18276 composeCodeableReference(t, "MedicinalProductDefinitionCrossReferenceComponent", "product", element.getProduct(), -1); 18277 } 18278 if (element.hasType()) { 18279 composeCodeableConcept(t, "MedicinalProductDefinitionCrossReferenceComponent", "type", element.getType(), -1); 18280 } 18281 } 18282 18283 protected void composeMedicinalProductDefinitionOperationComponent(Complex parent, String parentType, String name, MedicinalProductDefinition.MedicinalProductDefinitionOperationComponent element, int index) { 18284 if (element == null) 18285 return; 18286 Complex t; 18287 if (Utilities.noString(parentType)) 18288 t = parent; 18289 else { 18290 t = parent.predicate("fhir:"+name,index > -1); 18291 } 18292 composeBackboneElement(t, "operation", name, element, index); 18293 if (element.hasType()) { 18294 composeCodeableReference(t, "MedicinalProductDefinitionOperationComponent", "type", element.getType(), -1); 18295 } 18296 if (element.hasEffectiveDate()) { 18297 composePeriod(t, "MedicinalProductDefinitionOperationComponent", "effectiveDate", element.getEffectiveDate(), -1); 18298 } 18299 for (int i = 0; i < element.getOrganization().size(); i++) { 18300 composeReference(t, "MedicinalProductDefinitionOperationComponent", "organization", element.getOrganization().get(i), i); 18301 } 18302 if (element.hasConfidentialityIndicator()) { 18303 composeCodeableConcept(t, "MedicinalProductDefinitionOperationComponent", "confidentialityIndicator", element.getConfidentialityIndicator(), -1); 18304 } 18305 } 18306 18307 protected void composeMedicinalProductDefinitionCharacteristicComponent(Complex parent, String parentType, String name, MedicinalProductDefinition.MedicinalProductDefinitionCharacteristicComponent element, int index) { 18308 if (element == null) 18309 return; 18310 Complex t; 18311 if (Utilities.noString(parentType)) 18312 t = parent; 18313 else { 18314 t = parent.predicate("fhir:"+name,index > -1); 18315 } 18316 composeBackboneElement(t, "characteristic", name, element, index); 18317 if (element.hasType()) { 18318 composeCodeableConcept(t, "MedicinalProductDefinitionCharacteristicComponent", "type", element.getType(), -1); 18319 } 18320 if (element.hasValue()) { 18321 composeType(t, "MedicinalProductDefinitionCharacteristicComponent", "value", element.getValue(), -1); 18322 } 18323 } 18324 18325 protected void composeMessageDefinition(Complex parent, String parentType, String name, MessageDefinition element, int index) { 18326 if (element == null) 18327 return; 18328 Complex t; 18329 if (Utilities.noString(parentType)) 18330 t = parent; 18331 else { 18332 t = parent.predicate("fhir:"+name,index > -1); 18333 } 18334 composeCanonicalResource(t, "MessageDefinition", name, element, index); 18335 if (element.hasUrlElement()) { 18336 composeUri(t, "MessageDefinition", "url", element.getUrlElement(), -1); 18337 } 18338 for (int i = 0; i < element.getIdentifier().size(); i++) { 18339 composeIdentifier(t, "MessageDefinition", "identifier", element.getIdentifier().get(i), i); 18340 } 18341 if (element.hasVersionElement()) { 18342 composeString(t, "MessageDefinition", "version", element.getVersionElement(), -1); 18343 } 18344 if (element.hasVersionAlgorithm()) { 18345 composeType(t, "MessageDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 18346 } 18347 if (element.hasNameElement()) { 18348 composeString(t, "MessageDefinition", "name", element.getNameElement(), -1); 18349 } 18350 if (element.hasTitleElement()) { 18351 composeString(t, "MessageDefinition", "title", element.getTitleElement(), -1); 18352 } 18353 for (int i = 0; i < element.getReplaces().size(); i++) { 18354 composeCanonical(t, "MessageDefinition", "replaces", element.getReplaces().get(i), i); 18355 } 18356 if (element.hasStatusElement()) { 18357 composeEnum(t, "MessageDefinition", "status", element.getStatusElement(), -1); 18358 } 18359 if (element.hasExperimentalElement()) { 18360 composeBoolean(t, "MessageDefinition", "experimental", element.getExperimentalElement(), -1); 18361 } 18362 if (element.hasDateElement()) { 18363 composeDateTime(t, "MessageDefinition", "date", element.getDateElement(), -1); 18364 } 18365 if (element.hasPublisherElement()) { 18366 composeString(t, "MessageDefinition", "publisher", element.getPublisherElement(), -1); 18367 } 18368 for (int i = 0; i < element.getContact().size(); i++) { 18369 composeContactDetail(t, "MessageDefinition", "contact", element.getContact().get(i), i); 18370 } 18371 if (element.hasDescriptionElement()) { 18372 composeMarkdown(t, "MessageDefinition", "description", element.getDescriptionElement(), -1); 18373 } 18374 for (int i = 0; i < element.getUseContext().size(); i++) { 18375 composeUsageContext(t, "MessageDefinition", "useContext", element.getUseContext().get(i), i); 18376 } 18377 for (int i = 0; i < element.getJurisdiction().size(); i++) { 18378 composeCodeableConcept(t, "MessageDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 18379 } 18380 if (element.hasPurposeElement()) { 18381 composeMarkdown(t, "MessageDefinition", "purpose", element.getPurposeElement(), -1); 18382 } 18383 if (element.hasCopyrightElement()) { 18384 composeMarkdown(t, "MessageDefinition", "copyright", element.getCopyrightElement(), -1); 18385 } 18386 if (element.hasCopyrightLabelElement()) { 18387 composeString(t, "MessageDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 18388 } 18389 if (element.hasBaseElement()) { 18390 composeCanonical(t, "MessageDefinition", "base", element.getBaseElement(), -1); 18391 } 18392 for (int i = 0; i < element.getParent().size(); i++) { 18393 composeCanonical(t, "MessageDefinition", "parent", element.getParent().get(i), i); 18394 } 18395 if (element.hasEvent()) { 18396 composeType(t, "MessageDefinition", "event", element.getEvent(), -1); 18397 } 18398 if (element.hasCategoryElement()) { 18399 composeEnum(t, "MessageDefinition", "category", element.getCategoryElement(), -1); 18400 } 18401 for (int i = 0; i < element.getFocus().size(); i++) { 18402 composeMessageDefinitionFocusComponent(t, "MessageDefinition", "focus", element.getFocus().get(i), i); 18403 } 18404 if (element.hasResponseRequiredElement()) { 18405 composeEnum(t, "MessageDefinition", "responseRequired", element.getResponseRequiredElement(), -1); 18406 } 18407 for (int i = 0; i < element.getAllowedResponse().size(); i++) { 18408 composeMessageDefinitionAllowedResponseComponent(t, "MessageDefinition", "allowedResponse", element.getAllowedResponse().get(i), i); 18409 } 18410 if (element.hasGraphElement()) { 18411 composeCanonical(t, "MessageDefinition", "graph", element.getGraphElement(), -1); 18412 } 18413 } 18414 18415 protected void composeMessageDefinitionFocusComponent(Complex parent, String parentType, String name, MessageDefinition.MessageDefinitionFocusComponent element, int index) { 18416 if (element == null) 18417 return; 18418 Complex t; 18419 if (Utilities.noString(parentType)) 18420 t = parent; 18421 else { 18422 t = parent.predicate("fhir:"+name,index > -1); 18423 } 18424 composeBackboneElement(t, "focus", name, element, index); 18425 if (element.hasCodeElement()) { 18426 composeCode(t, "MessageDefinitionFocusComponent", "code", element.getCodeElement(), -1); 18427 } 18428 if (element.hasProfileElement()) { 18429 composeCanonical(t, "MessageDefinitionFocusComponent", "profile", element.getProfileElement(), -1); 18430 } 18431 if (element.hasMinElement()) { 18432 composeUnsignedInt(t, "MessageDefinitionFocusComponent", "min", element.getMinElement(), -1); 18433 } 18434 if (element.hasMaxElement()) { 18435 composeString(t, "MessageDefinitionFocusComponent", "max", element.getMaxElement(), -1); 18436 } 18437 } 18438 18439 protected void composeMessageDefinitionAllowedResponseComponent(Complex parent, String parentType, String name, MessageDefinition.MessageDefinitionAllowedResponseComponent element, int index) { 18440 if (element == null) 18441 return; 18442 Complex t; 18443 if (Utilities.noString(parentType)) 18444 t = parent; 18445 else { 18446 t = parent.predicate("fhir:"+name,index > -1); 18447 } 18448 composeBackboneElement(t, "allowedResponse", name, element, index); 18449 if (element.hasMessageElement()) { 18450 composeCanonical(t, "MessageDefinitionAllowedResponseComponent", "message", element.getMessageElement(), -1); 18451 } 18452 if (element.hasSituationElement()) { 18453 composeMarkdown(t, "MessageDefinitionAllowedResponseComponent", "situation", element.getSituationElement(), -1); 18454 } 18455 } 18456 18457 protected void composeMessageHeader(Complex parent, String parentType, String name, MessageHeader element, int index) { 18458 if (element == null) 18459 return; 18460 Complex t; 18461 if (Utilities.noString(parentType)) 18462 t = parent; 18463 else { 18464 t = parent.predicate("fhir:"+name,index > -1); 18465 } 18466 composeDomainResource(t, "MessageHeader", name, element, index); 18467 if (element.hasEvent()) { 18468 composeType(t, "MessageHeader", "event", element.getEvent(), -1); 18469 } 18470 for (int i = 0; i < element.getDestination().size(); i++) { 18471 composeMessageHeaderMessageDestinationComponent(t, "MessageHeader", "destination", element.getDestination().get(i), i); 18472 } 18473 if (element.hasSender()) { 18474 composeReference(t, "MessageHeader", "sender", element.getSender(), -1); 18475 } 18476 if (element.hasAuthor()) { 18477 composeReference(t, "MessageHeader", "author", element.getAuthor(), -1); 18478 } 18479 if (element.hasSource()) { 18480 composeMessageHeaderMessageSourceComponent(t, "MessageHeader", "source", element.getSource(), -1); 18481 } 18482 if (element.hasResponsible()) { 18483 composeReference(t, "MessageHeader", "responsible", element.getResponsible(), -1); 18484 } 18485 if (element.hasReason()) { 18486 composeCodeableConcept(t, "MessageHeader", "reason", element.getReason(), -1); 18487 } 18488 if (element.hasResponse()) { 18489 composeMessageHeaderResponseComponent(t, "MessageHeader", "response", element.getResponse(), -1); 18490 } 18491 for (int i = 0; i < element.getFocus().size(); i++) { 18492 composeReference(t, "MessageHeader", "focus", element.getFocus().get(i), i); 18493 } 18494 if (element.hasDefinitionElement()) { 18495 composeCanonical(t, "MessageHeader", "definition", element.getDefinitionElement(), -1); 18496 } 18497 } 18498 18499 protected void composeMessageHeaderMessageDestinationComponent(Complex parent, String parentType, String name, MessageHeader.MessageDestinationComponent element, int index) { 18500 if (element == null) 18501 return; 18502 Complex t; 18503 if (Utilities.noString(parentType)) 18504 t = parent; 18505 else { 18506 t = parent.predicate("fhir:"+name,index > -1); 18507 } 18508 composeBackboneElement(t, "destination", name, element, index); 18509 if (element.hasEndpoint()) { 18510 composeType(t, "MessageDestinationComponent", "endpoint", element.getEndpoint(), -1); 18511 } 18512 if (element.hasNameElement()) { 18513 composeString(t, "MessageDestinationComponent", "name", element.getNameElement(), -1); 18514 } 18515 if (element.hasTarget()) { 18516 composeReference(t, "MessageDestinationComponent", "target", element.getTarget(), -1); 18517 } 18518 if (element.hasReceiver()) { 18519 composeReference(t, "MessageDestinationComponent", "receiver", element.getReceiver(), -1); 18520 } 18521 } 18522 18523 protected void composeMessageHeaderMessageSourceComponent(Complex parent, String parentType, String name, MessageHeader.MessageSourceComponent element, int index) { 18524 if (element == null) 18525 return; 18526 Complex t; 18527 if (Utilities.noString(parentType)) 18528 t = parent; 18529 else { 18530 t = parent.predicate("fhir:"+name,index > -1); 18531 } 18532 composeBackboneElement(t, "source", name, element, index); 18533 if (element.hasEndpoint()) { 18534 composeType(t, "MessageSourceComponent", "endpoint", element.getEndpoint(), -1); 18535 } 18536 if (element.hasNameElement()) { 18537 composeString(t, "MessageSourceComponent", "name", element.getNameElement(), -1); 18538 } 18539 if (element.hasSoftwareElement()) { 18540 composeString(t, "MessageSourceComponent", "software", element.getSoftwareElement(), -1); 18541 } 18542 if (element.hasVersionElement()) { 18543 composeString(t, "MessageSourceComponent", "version", element.getVersionElement(), -1); 18544 } 18545 if (element.hasContact()) { 18546 composeContactPoint(t, "MessageSourceComponent", "contact", element.getContact(), -1); 18547 } 18548 } 18549 18550 protected void composeMessageHeaderResponseComponent(Complex parent, String parentType, String name, MessageHeader.MessageHeaderResponseComponent element, int index) { 18551 if (element == null) 18552 return; 18553 Complex t; 18554 if (Utilities.noString(parentType)) 18555 t = parent; 18556 else { 18557 t = parent.predicate("fhir:"+name,index > -1); 18558 } 18559 composeBackboneElement(t, "response", name, element, index); 18560 if (element.hasIdentifier()) { 18561 composeIdentifier(t, "MessageHeaderResponseComponent", "identifier", element.getIdentifier(), -1); 18562 } 18563 if (element.hasCodeElement()) { 18564 composeEnum(t, "MessageHeaderResponseComponent", "code", element.getCodeElement(), -1); 18565 } 18566 if (element.hasDetails()) { 18567 composeReference(t, "MessageHeaderResponseComponent", "details", element.getDetails(), -1); 18568 } 18569 } 18570 18571 protected void composeMolecularSequence(Complex parent, String parentType, String name, MolecularSequence element, int index) { 18572 if (element == null) 18573 return; 18574 Complex t; 18575 if (Utilities.noString(parentType)) 18576 t = parent; 18577 else { 18578 t = parent.predicate("fhir:"+name,index > -1); 18579 } 18580 composeDomainResource(t, "MolecularSequence", name, element, index); 18581 for (int i = 0; i < element.getIdentifier().size(); i++) { 18582 composeIdentifier(t, "MolecularSequence", "identifier", element.getIdentifier().get(i), i); 18583 } 18584 if (element.hasTypeElement()) { 18585 composeEnum(t, "MolecularSequence", "type", element.getTypeElement(), -1); 18586 } 18587 if (element.hasSubject()) { 18588 composeReference(t, "MolecularSequence", "subject", element.getSubject(), -1); 18589 } 18590 for (int i = 0; i < element.getFocus().size(); i++) { 18591 composeReference(t, "MolecularSequence", "focus", element.getFocus().get(i), i); 18592 } 18593 if (element.hasSpecimen()) { 18594 composeReference(t, "MolecularSequence", "specimen", element.getSpecimen(), -1); 18595 } 18596 if (element.hasDevice()) { 18597 composeReference(t, "MolecularSequence", "device", element.getDevice(), -1); 18598 } 18599 if (element.hasPerformer()) { 18600 composeReference(t, "MolecularSequence", "performer", element.getPerformer(), -1); 18601 } 18602 if (element.hasLiteralElement()) { 18603 composeString(t, "MolecularSequence", "literal", element.getLiteralElement(), -1); 18604 } 18605 for (int i = 0; i < element.getFormatted().size(); i++) { 18606 composeAttachment(t, "MolecularSequence", "formatted", element.getFormatted().get(i), i); 18607 } 18608 for (int i = 0; i < element.getRelative().size(); i++) { 18609 composeMolecularSequenceRelativeComponent(t, "MolecularSequence", "relative", element.getRelative().get(i), i); 18610 } 18611 } 18612 18613 protected void composeMolecularSequenceRelativeComponent(Complex parent, String parentType, String name, MolecularSequence.MolecularSequenceRelativeComponent element, int index) { 18614 if (element == null) 18615 return; 18616 Complex t; 18617 if (Utilities.noString(parentType)) 18618 t = parent; 18619 else { 18620 t = parent.predicate("fhir:"+name,index > -1); 18621 } 18622 composeBackboneElement(t, "relative", name, element, index); 18623 if (element.hasCoordinateSystem()) { 18624 composeCodeableConcept(t, "MolecularSequenceRelativeComponent", "coordinateSystem", element.getCoordinateSystem(), -1); 18625 } 18626 if (element.hasOrdinalPositionElement()) { 18627 composeInteger(t, "MolecularSequenceRelativeComponent", "ordinalPosition", element.getOrdinalPositionElement(), -1); 18628 } 18629 if (element.hasSequenceRange()) { 18630 composeRange(t, "MolecularSequenceRelativeComponent", "sequenceRange", element.getSequenceRange(), -1); 18631 } 18632 if (element.hasStartingSequence()) { 18633 composeMolecularSequenceRelativeStartingSequenceComponent(t, "MolecularSequenceRelativeComponent", "startingSequence", element.getStartingSequence(), -1); 18634 } 18635 for (int i = 0; i < element.getEdit().size(); i++) { 18636 composeMolecularSequenceRelativeEditComponent(t, "MolecularSequenceRelativeComponent", "edit", element.getEdit().get(i), i); 18637 } 18638 } 18639 18640 protected void composeMolecularSequenceRelativeStartingSequenceComponent(Complex parent, String parentType, String name, MolecularSequence.MolecularSequenceRelativeStartingSequenceComponent element, int index) { 18641 if (element == null) 18642 return; 18643 Complex t; 18644 if (Utilities.noString(parentType)) 18645 t = parent; 18646 else { 18647 t = parent.predicate("fhir:"+name,index > -1); 18648 } 18649 composeBackboneElement(t, "startingSequence", name, element, index); 18650 if (element.hasGenomeAssembly()) { 18651 composeCodeableConcept(t, "MolecularSequenceRelativeStartingSequenceComponent", "genomeAssembly", element.getGenomeAssembly(), -1); 18652 } 18653 if (element.hasChromosome()) { 18654 composeCodeableConcept(t, "MolecularSequenceRelativeStartingSequenceComponent", "chromosome", element.getChromosome(), -1); 18655 } 18656 if (element.hasSequence()) { 18657 composeType(t, "MolecularSequenceRelativeStartingSequenceComponent", "sequence", element.getSequence(), -1); 18658 } 18659 if (element.hasWindowStartElement()) { 18660 composeInteger(t, "MolecularSequenceRelativeStartingSequenceComponent", "windowStart", element.getWindowStartElement(), -1); 18661 } 18662 if (element.hasWindowEndElement()) { 18663 composeInteger(t, "MolecularSequenceRelativeStartingSequenceComponent", "windowEnd", element.getWindowEndElement(), -1); 18664 } 18665 if (element.hasOrientationElement()) { 18666 composeEnum(t, "MolecularSequenceRelativeStartingSequenceComponent", "orientation", element.getOrientationElement(), -1); 18667 } 18668 if (element.hasStrandElement()) { 18669 composeEnum(t, "MolecularSequenceRelativeStartingSequenceComponent", "strand", element.getStrandElement(), -1); 18670 } 18671 } 18672 18673 protected void composeMolecularSequenceRelativeEditComponent(Complex parent, String parentType, String name, MolecularSequence.MolecularSequenceRelativeEditComponent element, int index) { 18674 if (element == null) 18675 return; 18676 Complex t; 18677 if (Utilities.noString(parentType)) 18678 t = parent; 18679 else { 18680 t = parent.predicate("fhir:"+name,index > -1); 18681 } 18682 composeBackboneElement(t, "edit", name, element, index); 18683 if (element.hasStartElement()) { 18684 composeInteger(t, "MolecularSequenceRelativeEditComponent", "start", element.getStartElement(), -1); 18685 } 18686 if (element.hasEndElement()) { 18687 composeInteger(t, "MolecularSequenceRelativeEditComponent", "end", element.getEndElement(), -1); 18688 } 18689 if (element.hasReplacementSequenceElement()) { 18690 composeString(t, "MolecularSequenceRelativeEditComponent", "replacementSequence", element.getReplacementSequenceElement(), -1); 18691 } 18692 if (element.hasReplacedSequenceElement()) { 18693 composeString(t, "MolecularSequenceRelativeEditComponent", "replacedSequence", element.getReplacedSequenceElement(), -1); 18694 } 18695 } 18696 18697 protected void composeNamingSystem(Complex parent, String parentType, String name, NamingSystem element, int index) { 18698 if (element == null) 18699 return; 18700 Complex t; 18701 if (Utilities.noString(parentType)) 18702 t = parent; 18703 else { 18704 t = parent.predicate("fhir:"+name,index > -1); 18705 } 18706 composeMetadataResource(t, "NamingSystem", name, element, index); 18707 if (element.hasUrlElement()) { 18708 composeUri(t, "NamingSystem", "url", element.getUrlElement(), -1); 18709 } 18710 for (int i = 0; i < element.getIdentifier().size(); i++) { 18711 composeIdentifier(t, "NamingSystem", "identifier", element.getIdentifier().get(i), i); 18712 } 18713 if (element.hasVersionElement()) { 18714 composeString(t, "NamingSystem", "version", element.getVersionElement(), -1); 18715 } 18716 if (element.hasVersionAlgorithm()) { 18717 composeType(t, "NamingSystem", "versionAlgorithm", element.getVersionAlgorithm(), -1); 18718 } 18719 if (element.hasNameElement()) { 18720 composeString(t, "NamingSystem", "name", element.getNameElement(), -1); 18721 } 18722 if (element.hasTitleElement()) { 18723 composeString(t, "NamingSystem", "title", element.getTitleElement(), -1); 18724 } 18725 if (element.hasStatusElement()) { 18726 composeEnum(t, "NamingSystem", "status", element.getStatusElement(), -1); 18727 } 18728 if (element.hasKindElement()) { 18729 composeEnum(t, "NamingSystem", "kind", element.getKindElement(), -1); 18730 } 18731 if (element.hasExperimentalElement()) { 18732 composeBoolean(t, "NamingSystem", "experimental", element.getExperimentalElement(), -1); 18733 } 18734 if (element.hasDateElement()) { 18735 composeDateTime(t, "NamingSystem", "date", element.getDateElement(), -1); 18736 } 18737 if (element.hasPublisherElement()) { 18738 composeString(t, "NamingSystem", "publisher", element.getPublisherElement(), -1); 18739 } 18740 for (int i = 0; i < element.getContact().size(); i++) { 18741 composeContactDetail(t, "NamingSystem", "contact", element.getContact().get(i), i); 18742 } 18743 if (element.hasResponsibleElement()) { 18744 composeString(t, "NamingSystem", "responsible", element.getResponsibleElement(), -1); 18745 } 18746 if (element.hasType()) { 18747 composeCodeableConcept(t, "NamingSystem", "type", element.getType(), -1); 18748 } 18749 if (element.hasDescriptionElement()) { 18750 composeMarkdown(t, "NamingSystem", "description", element.getDescriptionElement(), -1); 18751 } 18752 for (int i = 0; i < element.getUseContext().size(); i++) { 18753 composeUsageContext(t, "NamingSystem", "useContext", element.getUseContext().get(i), i); 18754 } 18755 for (int i = 0; i < element.getJurisdiction().size(); i++) { 18756 composeCodeableConcept(t, "NamingSystem", "jurisdiction", element.getJurisdiction().get(i), i); 18757 } 18758 if (element.hasPurposeElement()) { 18759 composeMarkdown(t, "NamingSystem", "purpose", element.getPurposeElement(), -1); 18760 } 18761 if (element.hasCopyrightElement()) { 18762 composeMarkdown(t, "NamingSystem", "copyright", element.getCopyrightElement(), -1); 18763 } 18764 if (element.hasCopyrightLabelElement()) { 18765 composeString(t, "NamingSystem", "copyrightLabel", element.getCopyrightLabelElement(), -1); 18766 } 18767 if (element.hasApprovalDateElement()) { 18768 composeDate(t, "NamingSystem", "approvalDate", element.getApprovalDateElement(), -1); 18769 } 18770 if (element.hasLastReviewDateElement()) { 18771 composeDate(t, "NamingSystem", "lastReviewDate", element.getLastReviewDateElement(), -1); 18772 } 18773 if (element.hasEffectivePeriod()) { 18774 composePeriod(t, "NamingSystem", "effectivePeriod", element.getEffectivePeriod(), -1); 18775 } 18776 for (int i = 0; i < element.getTopic().size(); i++) { 18777 composeCodeableConcept(t, "NamingSystem", "topic", element.getTopic().get(i), i); 18778 } 18779 for (int i = 0; i < element.getAuthor().size(); i++) { 18780 composeContactDetail(t, "NamingSystem", "author", element.getAuthor().get(i), i); 18781 } 18782 for (int i = 0; i < element.getEditor().size(); i++) { 18783 composeContactDetail(t, "NamingSystem", "editor", element.getEditor().get(i), i); 18784 } 18785 for (int i = 0; i < element.getReviewer().size(); i++) { 18786 composeContactDetail(t, "NamingSystem", "reviewer", element.getReviewer().get(i), i); 18787 } 18788 for (int i = 0; i < element.getEndorser().size(); i++) { 18789 composeContactDetail(t, "NamingSystem", "endorser", element.getEndorser().get(i), i); 18790 } 18791 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 18792 composeRelatedArtifact(t, "NamingSystem", "relatedArtifact", element.getRelatedArtifact().get(i), i); 18793 } 18794 if (element.hasUsageElement()) { 18795 composeString(t, "NamingSystem", "usage", element.getUsageElement(), -1); 18796 } 18797 for (int i = 0; i < element.getUniqueId().size(); i++) { 18798 composeNamingSystemUniqueIdComponent(t, "NamingSystem", "uniqueId", element.getUniqueId().get(i), i); 18799 } 18800 } 18801 18802 protected void composeNamingSystemUniqueIdComponent(Complex parent, String parentType, String name, NamingSystem.NamingSystemUniqueIdComponent element, int index) { 18803 if (element == null) 18804 return; 18805 Complex t; 18806 if (Utilities.noString(parentType)) 18807 t = parent; 18808 else { 18809 t = parent.predicate("fhir:"+name,index > -1); 18810 } 18811 composeBackboneElement(t, "uniqueId", name, element, index); 18812 if (element.hasTypeElement()) { 18813 composeEnum(t, "NamingSystemUniqueIdComponent", "type", element.getTypeElement(), -1); 18814 } 18815 if (element.hasValueElement()) { 18816 composeString(t, "NamingSystemUniqueIdComponent", "value", element.getValueElement(), -1); 18817 } 18818 if (element.hasPreferredElement()) { 18819 composeBoolean(t, "NamingSystemUniqueIdComponent", "preferred", element.getPreferredElement(), -1); 18820 } 18821 if (element.hasCommentElement()) { 18822 composeString(t, "NamingSystemUniqueIdComponent", "comment", element.getCommentElement(), -1); 18823 } 18824 if (element.hasPeriod()) { 18825 composePeriod(t, "NamingSystemUniqueIdComponent", "period", element.getPeriod(), -1); 18826 } 18827 if (element.hasAuthoritativeElement()) { 18828 composeBoolean(t, "NamingSystemUniqueIdComponent", "authoritative", element.getAuthoritativeElement(), -1); 18829 } 18830 } 18831 18832 protected void composeNutritionIntake(Complex parent, String parentType, String name, NutritionIntake element, int index) { 18833 if (element == null) 18834 return; 18835 Complex t; 18836 if (Utilities.noString(parentType)) 18837 t = parent; 18838 else { 18839 t = parent.predicate("fhir:"+name,index > -1); 18840 } 18841 composeDomainResource(t, "NutritionIntake", name, element, index); 18842 for (int i = 0; i < element.getIdentifier().size(); i++) { 18843 composeIdentifier(t, "NutritionIntake", "identifier", element.getIdentifier().get(i), i); 18844 } 18845 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { 18846 composeCanonical(t, "NutritionIntake", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 18847 } 18848 for (int i = 0; i < element.getInstantiatesUri().size(); i++) { 18849 composeUri(t, "NutritionIntake", "instantiatesUri", element.getInstantiatesUri().get(i), i); 18850 } 18851 for (int i = 0; i < element.getBasedOn().size(); i++) { 18852 composeReference(t, "NutritionIntake", "basedOn", element.getBasedOn().get(i), i); 18853 } 18854 for (int i = 0; i < element.getPartOf().size(); i++) { 18855 composeReference(t, "NutritionIntake", "partOf", element.getPartOf().get(i), i); 18856 } 18857 if (element.hasStatusElement()) { 18858 composeEnum(t, "NutritionIntake", "status", element.getStatusElement(), -1); 18859 } 18860 for (int i = 0; i < element.getStatusReason().size(); i++) { 18861 composeCodeableConcept(t, "NutritionIntake", "statusReason", element.getStatusReason().get(i), i); 18862 } 18863 if (element.hasCode()) { 18864 composeCodeableConcept(t, "NutritionIntake", "code", element.getCode(), -1); 18865 } 18866 if (element.hasSubject()) { 18867 composeReference(t, "NutritionIntake", "subject", element.getSubject(), -1); 18868 } 18869 if (element.hasEncounter()) { 18870 composeReference(t, "NutritionIntake", "encounter", element.getEncounter(), -1); 18871 } 18872 if (element.hasOccurrence()) { 18873 composeType(t, "NutritionIntake", "occurrence", element.getOccurrence(), -1); 18874 } 18875 if (element.hasRecordedElement()) { 18876 composeDateTime(t, "NutritionIntake", "recorded", element.getRecordedElement(), -1); 18877 } 18878 if (element.hasReported()) { 18879 composeType(t, "NutritionIntake", "reported", element.getReported(), -1); 18880 } 18881 for (int i = 0; i < element.getConsumedItem().size(); i++) { 18882 composeNutritionIntakeConsumedItemComponent(t, "NutritionIntake", "consumedItem", element.getConsumedItem().get(i), i); 18883 } 18884 for (int i = 0; i < element.getIngredientLabel().size(); i++) { 18885 composeNutritionIntakeIngredientLabelComponent(t, "NutritionIntake", "ingredientLabel", element.getIngredientLabel().get(i), i); 18886 } 18887 for (int i = 0; i < element.getPerformer().size(); i++) { 18888 composeNutritionIntakePerformerComponent(t, "NutritionIntake", "performer", element.getPerformer().get(i), i); 18889 } 18890 if (element.hasLocation()) { 18891 composeReference(t, "NutritionIntake", "location", element.getLocation(), -1); 18892 } 18893 for (int i = 0; i < element.getDerivedFrom().size(); i++) { 18894 composeReference(t, "NutritionIntake", "derivedFrom", element.getDerivedFrom().get(i), i); 18895 } 18896 for (int i = 0; i < element.getReason().size(); i++) { 18897 composeCodeableReference(t, "NutritionIntake", "reason", element.getReason().get(i), i); 18898 } 18899 for (int i = 0; i < element.getNote().size(); i++) { 18900 composeAnnotation(t, "NutritionIntake", "note", element.getNote().get(i), i); 18901 } 18902 } 18903 18904 protected void composeNutritionIntakeConsumedItemComponent(Complex parent, String parentType, String name, NutritionIntake.NutritionIntakeConsumedItemComponent element, int index) { 18905 if (element == null) 18906 return; 18907 Complex t; 18908 if (Utilities.noString(parentType)) 18909 t = parent; 18910 else { 18911 t = parent.predicate("fhir:"+name,index > -1); 18912 } 18913 composeBackboneElement(t, "consumedItem", name, element, index); 18914 if (element.hasType()) { 18915 composeCodeableConcept(t, "NutritionIntakeConsumedItemComponent", "type", element.getType(), -1); 18916 } 18917 if (element.hasNutritionProduct()) { 18918 composeCodeableReference(t, "NutritionIntakeConsumedItemComponent", "nutritionProduct", element.getNutritionProduct(), -1); 18919 } 18920 if (element.hasSchedule()) { 18921 composeTiming(t, "NutritionIntakeConsumedItemComponent", "schedule", element.getSchedule(), -1); 18922 } 18923 if (element.hasAmount()) { 18924 composeQuantity(t, "NutritionIntakeConsumedItemComponent", "amount", element.getAmount(), -1); 18925 } 18926 if (element.hasRate()) { 18927 composeQuantity(t, "NutritionIntakeConsumedItemComponent", "rate", element.getRate(), -1); 18928 } 18929 if (element.hasNotConsumedElement()) { 18930 composeBoolean(t, "NutritionIntakeConsumedItemComponent", "notConsumed", element.getNotConsumedElement(), -1); 18931 } 18932 if (element.hasNotConsumedReason()) { 18933 composeCodeableConcept(t, "NutritionIntakeConsumedItemComponent", "notConsumedReason", element.getNotConsumedReason(), -1); 18934 } 18935 } 18936 18937 protected void composeNutritionIntakeIngredientLabelComponent(Complex parent, String parentType, String name, NutritionIntake.NutritionIntakeIngredientLabelComponent element, int index) { 18938 if (element == null) 18939 return; 18940 Complex t; 18941 if (Utilities.noString(parentType)) 18942 t = parent; 18943 else { 18944 t = parent.predicate("fhir:"+name,index > -1); 18945 } 18946 composeBackboneElement(t, "ingredientLabel", name, element, index); 18947 if (element.hasNutrient()) { 18948 composeCodeableReference(t, "NutritionIntakeIngredientLabelComponent", "nutrient", element.getNutrient(), -1); 18949 } 18950 if (element.hasAmount()) { 18951 composeQuantity(t, "NutritionIntakeIngredientLabelComponent", "amount", element.getAmount(), -1); 18952 } 18953 } 18954 18955 protected void composeNutritionIntakePerformerComponent(Complex parent, String parentType, String name, NutritionIntake.NutritionIntakePerformerComponent element, int index) { 18956 if (element == null) 18957 return; 18958 Complex t; 18959 if (Utilities.noString(parentType)) 18960 t = parent; 18961 else { 18962 t = parent.predicate("fhir:"+name,index > -1); 18963 } 18964 composeBackboneElement(t, "performer", name, element, index); 18965 if (element.hasFunction()) { 18966 composeCodeableConcept(t, "NutritionIntakePerformerComponent", "function", element.getFunction(), -1); 18967 } 18968 if (element.hasActor()) { 18969 composeReference(t, "NutritionIntakePerformerComponent", "actor", element.getActor(), -1); 18970 } 18971 } 18972 18973 protected void composeNutritionOrder(Complex parent, String parentType, String name, NutritionOrder element, int index) { 18974 if (element == null) 18975 return; 18976 Complex t; 18977 if (Utilities.noString(parentType)) 18978 t = parent; 18979 else { 18980 t = parent.predicate("fhir:"+name,index > -1); 18981 } 18982 composeDomainResource(t, "NutritionOrder", name, element, index); 18983 for (int i = 0; i < element.getIdentifier().size(); i++) { 18984 composeIdentifier(t, "NutritionOrder", "identifier", element.getIdentifier().get(i), i); 18985 } 18986 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { 18987 composeCanonical(t, "NutritionOrder", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 18988 } 18989 for (int i = 0; i < element.getInstantiatesUri().size(); i++) { 18990 composeUri(t, "NutritionOrder", "instantiatesUri", element.getInstantiatesUri().get(i), i); 18991 } 18992 for (int i = 0; i < element.getInstantiates().size(); i++) { 18993 composeUri(t, "NutritionOrder", "instantiates", element.getInstantiates().get(i), i); 18994 } 18995 for (int i = 0; i < element.getBasedOn().size(); i++) { 18996 composeReference(t, "NutritionOrder", "basedOn", element.getBasedOn().get(i), i); 18997 } 18998 if (element.hasGroupIdentifier()) { 18999 composeIdentifier(t, "NutritionOrder", "groupIdentifier", element.getGroupIdentifier(), -1); 19000 } 19001 if (element.hasStatusElement()) { 19002 composeEnum(t, "NutritionOrder", "status", element.getStatusElement(), -1); 19003 } 19004 if (element.hasIntentElement()) { 19005 composeEnum(t, "NutritionOrder", "intent", element.getIntentElement(), -1); 19006 } 19007 if (element.hasPriorityElement()) { 19008 composeEnum(t, "NutritionOrder", "priority", element.getPriorityElement(), -1); 19009 } 19010 if (element.hasSubject()) { 19011 composeReference(t, "NutritionOrder", "subject", element.getSubject(), -1); 19012 } 19013 if (element.hasEncounter()) { 19014 composeReference(t, "NutritionOrder", "encounter", element.getEncounter(), -1); 19015 } 19016 for (int i = 0; i < element.getSupportingInformation().size(); i++) { 19017 composeReference(t, "NutritionOrder", "supportingInformation", element.getSupportingInformation().get(i), i); 19018 } 19019 if (element.hasDateTimeElement()) { 19020 composeDateTime(t, "NutritionOrder", "dateTime", element.getDateTimeElement(), -1); 19021 } 19022 if (element.hasOrderer()) { 19023 composeReference(t, "NutritionOrder", "orderer", element.getOrderer(), -1); 19024 } 19025 for (int i = 0; i < element.getPerformer().size(); i++) { 19026 composeCodeableReference(t, "NutritionOrder", "performer", element.getPerformer().get(i), i); 19027 } 19028 for (int i = 0; i < element.getAllergyIntolerance().size(); i++) { 19029 composeReference(t, "NutritionOrder", "allergyIntolerance", element.getAllergyIntolerance().get(i), i); 19030 } 19031 for (int i = 0; i < element.getFoodPreferenceModifier().size(); i++) { 19032 composeCodeableConcept(t, "NutritionOrder", "foodPreferenceModifier", element.getFoodPreferenceModifier().get(i), i); 19033 } 19034 for (int i = 0; i < element.getExcludeFoodModifier().size(); i++) { 19035 composeCodeableConcept(t, "NutritionOrder", "excludeFoodModifier", element.getExcludeFoodModifier().get(i), i); 19036 } 19037 if (element.hasOutsideFoodAllowedElement()) { 19038 composeBoolean(t, "NutritionOrder", "outsideFoodAllowed", element.getOutsideFoodAllowedElement(), -1); 19039 } 19040 if (element.hasOralDiet()) { 19041 composeNutritionOrderOralDietComponent(t, "NutritionOrder", "oralDiet", element.getOralDiet(), -1); 19042 } 19043 for (int i = 0; i < element.getSupplement().size(); i++) { 19044 composeNutritionOrderSupplementComponent(t, "NutritionOrder", "supplement", element.getSupplement().get(i), i); 19045 } 19046 if (element.hasEnteralFormula()) { 19047 composeNutritionOrderEnteralFormulaComponent(t, "NutritionOrder", "enteralFormula", element.getEnteralFormula(), -1); 19048 } 19049 for (int i = 0; i < element.getNote().size(); i++) { 19050 composeAnnotation(t, "NutritionOrder", "note", element.getNote().get(i), i); 19051 } 19052 } 19053 19054 protected void composeNutritionOrderOralDietComponent(Complex parent, String parentType, String name, NutritionOrder.NutritionOrderOralDietComponent element, int index) { 19055 if (element == null) 19056 return; 19057 Complex t; 19058 if (Utilities.noString(parentType)) 19059 t = parent; 19060 else { 19061 t = parent.predicate("fhir:"+name,index > -1); 19062 } 19063 composeBackboneElement(t, "oralDiet", name, element, index); 19064 for (int i = 0; i < element.getType().size(); i++) { 19065 composeCodeableConcept(t, "NutritionOrderOralDietComponent", "type", element.getType().get(i), i); 19066 } 19067 if (element.hasSchedule()) { 19068 composeNutritionOrderOralDietScheduleComponent(t, "NutritionOrderOralDietComponent", "schedule", element.getSchedule(), -1); 19069 } 19070 for (int i = 0; i < element.getNutrient().size(); i++) { 19071 composeNutritionOrderOralDietNutrientComponent(t, "NutritionOrderOralDietComponent", "nutrient", element.getNutrient().get(i), i); 19072 } 19073 for (int i = 0; i < element.getTexture().size(); i++) { 19074 composeNutritionOrderOralDietTextureComponent(t, "NutritionOrderOralDietComponent", "texture", element.getTexture().get(i), i); 19075 } 19076 for (int i = 0; i < element.getFluidConsistencyType().size(); i++) { 19077 composeCodeableConcept(t, "NutritionOrderOralDietComponent", "fluidConsistencyType", element.getFluidConsistencyType().get(i), i); 19078 } 19079 if (element.hasInstructionElement()) { 19080 composeString(t, "NutritionOrderOralDietComponent", "instruction", element.getInstructionElement(), -1); 19081 } 19082 } 19083 19084 protected void composeNutritionOrderOralDietScheduleComponent(Complex parent, String parentType, String name, NutritionOrder.OralDietScheduleComponent element, int index) { 19085 if (element == null) 19086 return; 19087 Complex t; 19088 if (Utilities.noString(parentType)) 19089 t = parent; 19090 else { 19091 t = parent.predicate("fhir:"+name,index > -1); 19092 } 19093 composeBackboneElement(t, "schedule", name, element, index); 19094 for (int i = 0; i < element.getTiming().size(); i++) { 19095 composeTiming(t, "OralDietScheduleComponent", "timing", element.getTiming().get(i), i); 19096 } 19097 if (element.hasAsNeededElement()) { 19098 composeBoolean(t, "OralDietScheduleComponent", "asNeeded", element.getAsNeededElement(), -1); 19099 } 19100 if (element.hasAsNeededFor()) { 19101 composeCodeableConcept(t, "OralDietScheduleComponent", "asNeededFor", element.getAsNeededFor(), -1); 19102 } 19103 } 19104 19105 protected void composeNutritionOrderOralDietNutrientComponent(Complex parent, String parentType, String name, NutritionOrder.NutritionOrderOralDietNutrientComponent element, int index) { 19106 if (element == null) 19107 return; 19108 Complex t; 19109 if (Utilities.noString(parentType)) 19110 t = parent; 19111 else { 19112 t = parent.predicate("fhir:"+name,index > -1); 19113 } 19114 composeBackboneElement(t, "nutrient", name, element, index); 19115 if (element.hasModifier()) { 19116 composeCodeableConcept(t, "NutritionOrderOralDietNutrientComponent", "modifier", element.getModifier(), -1); 19117 } 19118 if (element.hasAmount()) { 19119 composeQuantity(t, "NutritionOrderOralDietNutrientComponent", "amount", element.getAmount(), -1); 19120 } 19121 } 19122 19123 protected void composeNutritionOrderOralDietTextureComponent(Complex parent, String parentType, String name, NutritionOrder.NutritionOrderOralDietTextureComponent element, int index) { 19124 if (element == null) 19125 return; 19126 Complex t; 19127 if (Utilities.noString(parentType)) 19128 t = parent; 19129 else { 19130 t = parent.predicate("fhir:"+name,index > -1); 19131 } 19132 composeBackboneElement(t, "texture", name, element, index); 19133 if (element.hasModifier()) { 19134 composeCodeableConcept(t, "NutritionOrderOralDietTextureComponent", "modifier", element.getModifier(), -1); 19135 } 19136 if (element.hasFoodType()) { 19137 composeCodeableConcept(t, "NutritionOrderOralDietTextureComponent", "foodType", element.getFoodType(), -1); 19138 } 19139 } 19140 19141 protected void composeNutritionOrderSupplementComponent(Complex parent, String parentType, String name, NutritionOrder.NutritionOrderSupplementComponent element, int index) { 19142 if (element == null) 19143 return; 19144 Complex t; 19145 if (Utilities.noString(parentType)) 19146 t = parent; 19147 else { 19148 t = parent.predicate("fhir:"+name,index > -1); 19149 } 19150 composeBackboneElement(t, "supplement", name, element, index); 19151 if (element.hasType()) { 19152 composeCodeableReference(t, "NutritionOrderSupplementComponent", "type", element.getType(), -1); 19153 } 19154 if (element.hasProductNameElement()) { 19155 composeString(t, "NutritionOrderSupplementComponent", "productName", element.getProductNameElement(), -1); 19156 } 19157 if (element.hasSchedule()) { 19158 composeNutritionOrderSupplementScheduleComponent(t, "NutritionOrderSupplementComponent", "schedule", element.getSchedule(), -1); 19159 } 19160 if (element.hasQuantity()) { 19161 composeQuantity(t, "NutritionOrderSupplementComponent", "quantity", element.getQuantity(), -1); 19162 } 19163 if (element.hasInstructionElement()) { 19164 composeString(t, "NutritionOrderSupplementComponent", "instruction", element.getInstructionElement(), -1); 19165 } 19166 } 19167 19168 protected void composeNutritionOrderSupplementScheduleComponent(Complex parent, String parentType, String name, NutritionOrder.SupplementScheduleComponent element, int index) { 19169 if (element == null) 19170 return; 19171 Complex t; 19172 if (Utilities.noString(parentType)) 19173 t = parent; 19174 else { 19175 t = parent.predicate("fhir:"+name,index > -1); 19176 } 19177 composeBackboneElement(t, "schedule", name, element, index); 19178 for (int i = 0; i < element.getTiming().size(); i++) { 19179 composeTiming(t, "SupplementScheduleComponent", "timing", element.getTiming().get(i), i); 19180 } 19181 if (element.hasAsNeededElement()) { 19182 composeBoolean(t, "SupplementScheduleComponent", "asNeeded", element.getAsNeededElement(), -1); 19183 } 19184 if (element.hasAsNeededFor()) { 19185 composeCodeableConcept(t, "SupplementScheduleComponent", "asNeededFor", element.getAsNeededFor(), -1); 19186 } 19187 } 19188 19189 protected void composeNutritionOrderEnteralFormulaComponent(Complex parent, String parentType, String name, NutritionOrder.NutritionOrderEnteralFormulaComponent element, int index) { 19190 if (element == null) 19191 return; 19192 Complex t; 19193 if (Utilities.noString(parentType)) 19194 t = parent; 19195 else { 19196 t = parent.predicate("fhir:"+name,index > -1); 19197 } 19198 composeBackboneElement(t, "enteralFormula", name, element, index); 19199 if (element.hasBaseFormulaType()) { 19200 composeCodeableReference(t, "NutritionOrderEnteralFormulaComponent", "baseFormulaType", element.getBaseFormulaType(), -1); 19201 } 19202 if (element.hasBaseFormulaProductNameElement()) { 19203 composeString(t, "NutritionOrderEnteralFormulaComponent", "baseFormulaProductName", element.getBaseFormulaProductNameElement(), -1); 19204 } 19205 for (int i = 0; i < element.getDeliveryDevice().size(); i++) { 19206 composeCodeableReference(t, "NutritionOrderEnteralFormulaComponent", "deliveryDevice", element.getDeliveryDevice().get(i), i); 19207 } 19208 for (int i = 0; i < element.getAdditive().size(); i++) { 19209 composeNutritionOrderEnteralFormulaAdditiveComponent(t, "NutritionOrderEnteralFormulaComponent", "additive", element.getAdditive().get(i), i); 19210 } 19211 if (element.hasCaloricDensity()) { 19212 composeQuantity(t, "NutritionOrderEnteralFormulaComponent", "caloricDensity", element.getCaloricDensity(), -1); 19213 } 19214 if (element.hasRouteOfAdministration()) { 19215 composeCodeableConcept(t, "NutritionOrderEnteralFormulaComponent", "routeOfAdministration", element.getRouteOfAdministration(), -1); 19216 } 19217 for (int i = 0; i < element.getAdministration().size(); i++) { 19218 composeNutritionOrderEnteralFormulaAdministrationComponent(t, "NutritionOrderEnteralFormulaComponent", "administration", element.getAdministration().get(i), i); 19219 } 19220 if (element.hasMaxVolumeToDeliver()) { 19221 composeQuantity(t, "NutritionOrderEnteralFormulaComponent", "maxVolumeToDeliver", element.getMaxVolumeToDeliver(), -1); 19222 } 19223 if (element.hasAdministrationInstructionElement()) { 19224 composeMarkdown(t, "NutritionOrderEnteralFormulaComponent", "administrationInstruction", element.getAdministrationInstructionElement(), -1); 19225 } 19226 } 19227 19228 protected void composeNutritionOrderEnteralFormulaAdditiveComponent(Complex parent, String parentType, String name, NutritionOrder.NutritionOrderEnteralFormulaAdditiveComponent element, int index) { 19229 if (element == null) 19230 return; 19231 Complex t; 19232 if (Utilities.noString(parentType)) 19233 t = parent; 19234 else { 19235 t = parent.predicate("fhir:"+name,index > -1); 19236 } 19237 composeBackboneElement(t, "additive", name, element, index); 19238 if (element.hasType()) { 19239 composeCodeableReference(t, "NutritionOrderEnteralFormulaAdditiveComponent", "type", element.getType(), -1); 19240 } 19241 if (element.hasProductNameElement()) { 19242 composeString(t, "NutritionOrderEnteralFormulaAdditiveComponent", "productName", element.getProductNameElement(), -1); 19243 } 19244 if (element.hasQuantity()) { 19245 composeQuantity(t, "NutritionOrderEnteralFormulaAdditiveComponent", "quantity", element.getQuantity(), -1); 19246 } 19247 } 19248 19249 protected void composeNutritionOrderEnteralFormulaAdministrationComponent(Complex parent, String parentType, String name, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element, int index) { 19250 if (element == null) 19251 return; 19252 Complex t; 19253 if (Utilities.noString(parentType)) 19254 t = parent; 19255 else { 19256 t = parent.predicate("fhir:"+name,index > -1); 19257 } 19258 composeBackboneElement(t, "administration", name, element, index); 19259 if (element.hasSchedule()) { 19260 composeNutritionOrderEnteralFormulaScheduleComponent(t, "NutritionOrderEnteralFormulaAdministrationComponent", "schedule", element.getSchedule(), -1); 19261 } 19262 if (element.hasQuantity()) { 19263 composeQuantity(t, "NutritionOrderEnteralFormulaAdministrationComponent", "quantity", element.getQuantity(), -1); 19264 } 19265 if (element.hasRate()) { 19266 composeType(t, "NutritionOrderEnteralFormulaAdministrationComponent", "rate", element.getRate(), -1); 19267 } 19268 } 19269 19270 protected void composeNutritionOrderEnteralFormulaScheduleComponent(Complex parent, String parentType, String name, NutritionOrder.EnteralFormulaScheduleComponent element, int index) { 19271 if (element == null) 19272 return; 19273 Complex t; 19274 if (Utilities.noString(parentType)) 19275 t = parent; 19276 else { 19277 t = parent.predicate("fhir:"+name,index > -1); 19278 } 19279 composeBackboneElement(t, "schedule", name, element, index); 19280 for (int i = 0; i < element.getTiming().size(); i++) { 19281 composeTiming(t, "EnteralFormulaScheduleComponent", "timing", element.getTiming().get(i), i); 19282 } 19283 if (element.hasAsNeededElement()) { 19284 composeBoolean(t, "EnteralFormulaScheduleComponent", "asNeeded", element.getAsNeededElement(), -1); 19285 } 19286 if (element.hasAsNeededFor()) { 19287 composeCodeableConcept(t, "EnteralFormulaScheduleComponent", "asNeededFor", element.getAsNeededFor(), -1); 19288 } 19289 } 19290 19291 protected void composeNutritionProduct(Complex parent, String parentType, String name, NutritionProduct element, int index) { 19292 if (element == null) 19293 return; 19294 Complex t; 19295 if (Utilities.noString(parentType)) 19296 t = parent; 19297 else { 19298 t = parent.predicate("fhir:"+name,index > -1); 19299 } 19300 composeDomainResource(t, "NutritionProduct", name, element, index); 19301 if (element.hasCode()) { 19302 composeCodeableConcept(t, "NutritionProduct", "code", element.getCode(), -1); 19303 } 19304 if (element.hasStatusElement()) { 19305 composeEnum(t, "NutritionProduct", "status", element.getStatusElement(), -1); 19306 } 19307 for (int i = 0; i < element.getCategory().size(); i++) { 19308 composeCodeableConcept(t, "NutritionProduct", "category", element.getCategory().get(i), i); 19309 } 19310 for (int i = 0; i < element.getManufacturer().size(); i++) { 19311 composeReference(t, "NutritionProduct", "manufacturer", element.getManufacturer().get(i), i); 19312 } 19313 for (int i = 0; i < element.getNutrient().size(); i++) { 19314 composeNutritionProductNutrientComponent(t, "NutritionProduct", "nutrient", element.getNutrient().get(i), i); 19315 } 19316 for (int i = 0; i < element.getIngredient().size(); i++) { 19317 composeNutritionProductIngredientComponent(t, "NutritionProduct", "ingredient", element.getIngredient().get(i), i); 19318 } 19319 for (int i = 0; i < element.getKnownAllergen().size(); i++) { 19320 composeCodeableReference(t, "NutritionProduct", "knownAllergen", element.getKnownAllergen().get(i), i); 19321 } 19322 for (int i = 0; i < element.getCharacteristic().size(); i++) { 19323 composeNutritionProductCharacteristicComponent(t, "NutritionProduct", "characteristic", element.getCharacteristic().get(i), i); 19324 } 19325 for (int i = 0; i < element.getInstance().size(); i++) { 19326 composeNutritionProductInstanceComponent(t, "NutritionProduct", "instance", element.getInstance().get(i), i); 19327 } 19328 for (int i = 0; i < element.getNote().size(); i++) { 19329 composeAnnotation(t, "NutritionProduct", "note", element.getNote().get(i), i); 19330 } 19331 } 19332 19333 protected void composeNutritionProductNutrientComponent(Complex parent, String parentType, String name, NutritionProduct.NutritionProductNutrientComponent element, int index) { 19334 if (element == null) 19335 return; 19336 Complex t; 19337 if (Utilities.noString(parentType)) 19338 t = parent; 19339 else { 19340 t = parent.predicate("fhir:"+name,index > -1); 19341 } 19342 composeBackboneElement(t, "nutrient", name, element, index); 19343 if (element.hasItem()) { 19344 composeCodeableReference(t, "NutritionProductNutrientComponent", "item", element.getItem(), -1); 19345 } 19346 for (int i = 0; i < element.getAmount().size(); i++) { 19347 composeRatio(t, "NutritionProductNutrientComponent", "amount", element.getAmount().get(i), i); 19348 } 19349 } 19350 19351 protected void composeNutritionProductIngredientComponent(Complex parent, String parentType, String name, NutritionProduct.NutritionProductIngredientComponent element, int index) { 19352 if (element == null) 19353 return; 19354 Complex t; 19355 if (Utilities.noString(parentType)) 19356 t = parent; 19357 else { 19358 t = parent.predicate("fhir:"+name,index > -1); 19359 } 19360 composeBackboneElement(t, "ingredient", name, element, index); 19361 if (element.hasItem()) { 19362 composeCodeableReference(t, "NutritionProductIngredientComponent", "item", element.getItem(), -1); 19363 } 19364 for (int i = 0; i < element.getAmount().size(); i++) { 19365 composeRatio(t, "NutritionProductIngredientComponent", "amount", element.getAmount().get(i), i); 19366 } 19367 } 19368 19369 protected void composeNutritionProductCharacteristicComponent(Complex parent, String parentType, String name, NutritionProduct.NutritionProductCharacteristicComponent element, int index) { 19370 if (element == null) 19371 return; 19372 Complex t; 19373 if (Utilities.noString(parentType)) 19374 t = parent; 19375 else { 19376 t = parent.predicate("fhir:"+name,index > -1); 19377 } 19378 composeBackboneElement(t, "characteristic", name, element, index); 19379 if (element.hasType()) { 19380 composeCodeableConcept(t, "NutritionProductCharacteristicComponent", "type", element.getType(), -1); 19381 } 19382 if (element.hasValue()) { 19383 composeType(t, "NutritionProductCharacteristicComponent", "value", element.getValue(), -1); 19384 } 19385 } 19386 19387 protected void composeNutritionProductInstanceComponent(Complex parent, String parentType, String name, NutritionProduct.NutritionProductInstanceComponent element, int index) { 19388 if (element == null) 19389 return; 19390 Complex t; 19391 if (Utilities.noString(parentType)) 19392 t = parent; 19393 else { 19394 t = parent.predicate("fhir:"+name,index > -1); 19395 } 19396 composeBackboneElement(t, "instance", name, element, index); 19397 if (element.hasQuantity()) { 19398 composeQuantity(t, "NutritionProductInstanceComponent", "quantity", element.getQuantity(), -1); 19399 } 19400 for (int i = 0; i < element.getIdentifier().size(); i++) { 19401 composeIdentifier(t, "NutritionProductInstanceComponent", "identifier", element.getIdentifier().get(i), i); 19402 } 19403 if (element.hasNameElement()) { 19404 composeString(t, "NutritionProductInstanceComponent", "name", element.getNameElement(), -1); 19405 } 19406 if (element.hasLotNumberElement()) { 19407 composeString(t, "NutritionProductInstanceComponent", "lotNumber", element.getLotNumberElement(), -1); 19408 } 19409 if (element.hasExpiryElement()) { 19410 composeDateTime(t, "NutritionProductInstanceComponent", "expiry", element.getExpiryElement(), -1); 19411 } 19412 if (element.hasUseByElement()) { 19413 composeDateTime(t, "NutritionProductInstanceComponent", "useBy", element.getUseByElement(), -1); 19414 } 19415 if (element.hasBiologicalSourceEvent()) { 19416 composeIdentifier(t, "NutritionProductInstanceComponent", "biologicalSourceEvent", element.getBiologicalSourceEvent(), -1); 19417 } 19418 } 19419 19420 protected void composeObservation(Complex parent, String parentType, String name, Observation element, int index) { 19421 if (element == null) 19422 return; 19423 Complex t; 19424 if (Utilities.noString(parentType)) 19425 t = parent; 19426 else { 19427 t = parent.predicate("fhir:"+name,index > -1); 19428 } 19429 composeDomainResource(t, "Observation", name, element, index); 19430 for (int i = 0; i < element.getIdentifier().size(); i++) { 19431 composeIdentifier(t, "Observation", "identifier", element.getIdentifier().get(i), i); 19432 } 19433 if (element.hasInstantiates()) { 19434 composeType(t, "Observation", "instantiates", element.getInstantiates(), -1); 19435 } 19436 for (int i = 0; i < element.getBasedOn().size(); i++) { 19437 composeReference(t, "Observation", "basedOn", element.getBasedOn().get(i), i); 19438 } 19439 for (int i = 0; i < element.getTriggeredBy().size(); i++) { 19440 composeObservationTriggeredByComponent(t, "Observation", "triggeredBy", element.getTriggeredBy().get(i), i); 19441 } 19442 for (int i = 0; i < element.getPartOf().size(); i++) { 19443 composeReference(t, "Observation", "partOf", element.getPartOf().get(i), i); 19444 } 19445 if (element.hasStatusElement()) { 19446 composeEnum(t, "Observation", "status", element.getStatusElement(), -1); 19447 } 19448 for (int i = 0; i < element.getCategory().size(); i++) { 19449 composeCodeableConcept(t, "Observation", "category", element.getCategory().get(i), i); 19450 } 19451 if (element.hasCode()) { 19452 composeCodeableConcept(t, "Observation", "code", element.getCode(), -1); 19453 } 19454 if (element.hasSubject()) { 19455 composeReference(t, "Observation", "subject", element.getSubject(), -1); 19456 } 19457 for (int i = 0; i < element.getFocus().size(); i++) { 19458 composeReference(t, "Observation", "focus", element.getFocus().get(i), i); 19459 } 19460 if (element.hasEncounter()) { 19461 composeReference(t, "Observation", "encounter", element.getEncounter(), -1); 19462 } 19463 if (element.hasEffective()) { 19464 composeType(t, "Observation", "effective", element.getEffective(), -1); 19465 } 19466 if (element.hasIssuedElement()) { 19467 composeInstant(t, "Observation", "issued", element.getIssuedElement(), -1); 19468 } 19469 for (int i = 0; i < element.getPerformer().size(); i++) { 19470 composeReference(t, "Observation", "performer", element.getPerformer().get(i), i); 19471 } 19472 if (element.hasValue()) { 19473 composeType(t, "Observation", "value", element.getValue(), -1); 19474 } 19475 if (element.hasDataAbsentReason()) { 19476 composeCodeableConcept(t, "Observation", "dataAbsentReason", element.getDataAbsentReason(), -1); 19477 } 19478 for (int i = 0; i < element.getInterpretation().size(); i++) { 19479 composeCodeableConcept(t, "Observation", "interpretation", element.getInterpretation().get(i), i); 19480 } 19481 for (int i = 0; i < element.getNote().size(); i++) { 19482 composeAnnotation(t, "Observation", "note", element.getNote().get(i), i); 19483 } 19484 if (element.hasBodySite()) { 19485 composeCodeableConcept(t, "Observation", "bodySite", element.getBodySite(), -1); 19486 } 19487 if (element.hasBodyStructure()) { 19488 composeReference(t, "Observation", "bodyStructure", element.getBodyStructure(), -1); 19489 } 19490 if (element.hasMethod()) { 19491 composeCodeableConcept(t, "Observation", "method", element.getMethod(), -1); 19492 } 19493 if (element.hasSpecimen()) { 19494 composeReference(t, "Observation", "specimen", element.getSpecimen(), -1); 19495 } 19496 if (element.hasDevice()) { 19497 composeReference(t, "Observation", "device", element.getDevice(), -1); 19498 } 19499 for (int i = 0; i < element.getReferenceRange().size(); i++) { 19500 composeObservationReferenceRangeComponent(t, "Observation", "referenceRange", element.getReferenceRange().get(i), i); 19501 } 19502 for (int i = 0; i < element.getHasMember().size(); i++) { 19503 composeReference(t, "Observation", "hasMember", element.getHasMember().get(i), i); 19504 } 19505 for (int i = 0; i < element.getDerivedFrom().size(); i++) { 19506 composeReference(t, "Observation", "derivedFrom", element.getDerivedFrom().get(i), i); 19507 } 19508 for (int i = 0; i < element.getComponent().size(); i++) { 19509 composeObservationComponentComponent(t, "Observation", "component", element.getComponent().get(i), i); 19510 } 19511 } 19512 19513 protected void composeObservationTriggeredByComponent(Complex parent, String parentType, String name, Observation.ObservationTriggeredByComponent element, int index) { 19514 if (element == null) 19515 return; 19516 Complex t; 19517 if (Utilities.noString(parentType)) 19518 t = parent; 19519 else { 19520 t = parent.predicate("fhir:"+name,index > -1); 19521 } 19522 composeBackboneElement(t, "triggeredBy", name, element, index); 19523 if (element.hasObservation()) { 19524 composeReference(t, "ObservationTriggeredByComponent", "observation", element.getObservation(), -1); 19525 } 19526 if (element.hasTypeElement()) { 19527 composeEnum(t, "ObservationTriggeredByComponent", "type", element.getTypeElement(), -1); 19528 } 19529 if (element.hasReasonElement()) { 19530 composeString(t, "ObservationTriggeredByComponent", "reason", element.getReasonElement(), -1); 19531 } 19532 } 19533 19534 protected void composeObservationReferenceRangeComponent(Complex parent, String parentType, String name, Observation.ObservationReferenceRangeComponent element, int index) { 19535 if (element == null) 19536 return; 19537 Complex t; 19538 if (Utilities.noString(parentType)) 19539 t = parent; 19540 else { 19541 t = parent.predicate("fhir:"+name,index > -1); 19542 } 19543 composeBackboneElement(t, "referenceRange", name, element, index); 19544 if (element.hasLow()) { 19545 composeQuantity(t, "ObservationReferenceRangeComponent", "low", element.getLow(), -1); 19546 } 19547 if (element.hasHigh()) { 19548 composeQuantity(t, "ObservationReferenceRangeComponent", "high", element.getHigh(), -1); 19549 } 19550 if (element.hasNormalValue()) { 19551 composeCodeableConcept(t, "ObservationReferenceRangeComponent", "normalValue", element.getNormalValue(), -1); 19552 } 19553 if (element.hasType()) { 19554 composeCodeableConcept(t, "ObservationReferenceRangeComponent", "type", element.getType(), -1); 19555 } 19556 for (int i = 0; i < element.getAppliesTo().size(); i++) { 19557 composeCodeableConcept(t, "ObservationReferenceRangeComponent", "appliesTo", element.getAppliesTo().get(i), i); 19558 } 19559 if (element.hasAge()) { 19560 composeRange(t, "ObservationReferenceRangeComponent", "age", element.getAge(), -1); 19561 } 19562 if (element.hasTextElement()) { 19563 composeMarkdown(t, "ObservationReferenceRangeComponent", "text", element.getTextElement(), -1); 19564 } 19565 } 19566 19567 protected void composeObservationComponentComponent(Complex parent, String parentType, String name, Observation.ObservationComponentComponent element, int index) { 19568 if (element == null) 19569 return; 19570 Complex t; 19571 if (Utilities.noString(parentType)) 19572 t = parent; 19573 else { 19574 t = parent.predicate("fhir:"+name,index > -1); 19575 } 19576 composeBackboneElement(t, "component", name, element, index); 19577 if (element.hasCode()) { 19578 composeCodeableConcept(t, "ObservationComponentComponent", "code", element.getCode(), -1); 19579 } 19580 if (element.hasValue()) { 19581 composeType(t, "ObservationComponentComponent", "value", element.getValue(), -1); 19582 } 19583 if (element.hasDataAbsentReason()) { 19584 composeCodeableConcept(t, "ObservationComponentComponent", "dataAbsentReason", element.getDataAbsentReason(), -1); 19585 } 19586 for (int i = 0; i < element.getInterpretation().size(); i++) { 19587 composeCodeableConcept(t, "ObservationComponentComponent", "interpretation", element.getInterpretation().get(i), i); 19588 } 19589 for (int i = 0; i < element.getReferenceRange().size(); i++) { 19590 composeObservationReferenceRangeComponent(t, "ObservationComponentComponent", "referenceRange", element.getReferenceRange().get(i), i); 19591 } 19592 } 19593 19594 protected void composeObservationDefinition(Complex parent, String parentType, String name, ObservationDefinition element, int index) { 19595 if (element == null) 19596 return; 19597 Complex t; 19598 if (Utilities.noString(parentType)) 19599 t = parent; 19600 else { 19601 t = parent.predicate("fhir:"+name,index > -1); 19602 } 19603 composeDomainResource(t, "ObservationDefinition", name, element, index); 19604 if (element.hasUrlElement()) { 19605 composeUri(t, "ObservationDefinition", "url", element.getUrlElement(), -1); 19606 } 19607 if (element.hasIdentifier()) { 19608 composeIdentifier(t, "ObservationDefinition", "identifier", element.getIdentifier(), -1); 19609 } 19610 if (element.hasVersionElement()) { 19611 composeString(t, "ObservationDefinition", "version", element.getVersionElement(), -1); 19612 } 19613 if (element.hasVersionAlgorithm()) { 19614 composeType(t, "ObservationDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 19615 } 19616 if (element.hasNameElement()) { 19617 composeString(t, "ObservationDefinition", "name", element.getNameElement(), -1); 19618 } 19619 if (element.hasTitleElement()) { 19620 composeString(t, "ObservationDefinition", "title", element.getTitleElement(), -1); 19621 } 19622 if (element.hasStatusElement()) { 19623 composeEnum(t, "ObservationDefinition", "status", element.getStatusElement(), -1); 19624 } 19625 if (element.hasExperimentalElement()) { 19626 composeBoolean(t, "ObservationDefinition", "experimental", element.getExperimentalElement(), -1); 19627 } 19628 if (element.hasDateElement()) { 19629 composeDateTime(t, "ObservationDefinition", "date", element.getDateElement(), -1); 19630 } 19631 if (element.hasPublisherElement()) { 19632 composeString(t, "ObservationDefinition", "publisher", element.getPublisherElement(), -1); 19633 } 19634 for (int i = 0; i < element.getContact().size(); i++) { 19635 composeContactDetail(t, "ObservationDefinition", "contact", element.getContact().get(i), i); 19636 } 19637 if (element.hasDescriptionElement()) { 19638 composeMarkdown(t, "ObservationDefinition", "description", element.getDescriptionElement(), -1); 19639 } 19640 for (int i = 0; i < element.getUseContext().size(); i++) { 19641 composeUsageContext(t, "ObservationDefinition", "useContext", element.getUseContext().get(i), i); 19642 } 19643 for (int i = 0; i < element.getJurisdiction().size(); i++) { 19644 composeCodeableConcept(t, "ObservationDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 19645 } 19646 if (element.hasPurposeElement()) { 19647 composeMarkdown(t, "ObservationDefinition", "purpose", element.getPurposeElement(), -1); 19648 } 19649 if (element.hasCopyrightElement()) { 19650 composeMarkdown(t, "ObservationDefinition", "copyright", element.getCopyrightElement(), -1); 19651 } 19652 if (element.hasCopyrightLabelElement()) { 19653 composeString(t, "ObservationDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 19654 } 19655 if (element.hasApprovalDateElement()) { 19656 composeDate(t, "ObservationDefinition", "approvalDate", element.getApprovalDateElement(), -1); 19657 } 19658 if (element.hasLastReviewDateElement()) { 19659 composeDate(t, "ObservationDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 19660 } 19661 if (element.hasEffectivePeriod()) { 19662 composePeriod(t, "ObservationDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 19663 } 19664 for (int i = 0; i < element.getDerivedFromCanonical().size(); i++) { 19665 composeCanonical(t, "ObservationDefinition", "derivedFromCanonical", element.getDerivedFromCanonical().get(i), i); 19666 } 19667 for (int i = 0; i < element.getDerivedFromUri().size(); i++) { 19668 composeUri(t, "ObservationDefinition", "derivedFromUri", element.getDerivedFromUri().get(i), i); 19669 } 19670 for (int i = 0; i < element.getSubject().size(); i++) { 19671 composeCodeableConcept(t, "ObservationDefinition", "subject", element.getSubject().get(i), i); 19672 } 19673 if (element.hasPerformerType()) { 19674 composeCodeableConcept(t, "ObservationDefinition", "performerType", element.getPerformerType(), -1); 19675 } 19676 for (int i = 0; i < element.getCategory().size(); i++) { 19677 composeCodeableConcept(t, "ObservationDefinition", "category", element.getCategory().get(i), i); 19678 } 19679 if (element.hasCode()) { 19680 composeCodeableConcept(t, "ObservationDefinition", "code", element.getCode(), -1); 19681 } 19682 for (int i = 0; i < element.getPermittedDataType().size(); i++) { 19683 composeEnum(t, "ObservationDefinition", "permittedDataType", element.getPermittedDataType().get(i), i); 19684 } 19685 if (element.hasMultipleResultsAllowedElement()) { 19686 composeBoolean(t, "ObservationDefinition", "multipleResultsAllowed", element.getMultipleResultsAllowedElement(), -1); 19687 } 19688 if (element.hasBodySite()) { 19689 composeCodeableConcept(t, "ObservationDefinition", "bodySite", element.getBodySite(), -1); 19690 } 19691 if (element.hasMethod()) { 19692 composeCodeableConcept(t, "ObservationDefinition", "method", element.getMethod(), -1); 19693 } 19694 for (int i = 0; i < element.getSpecimen().size(); i++) { 19695 composeReference(t, "ObservationDefinition", "specimen", element.getSpecimen().get(i), i); 19696 } 19697 for (int i = 0; i < element.getDevice().size(); i++) { 19698 composeReference(t, "ObservationDefinition", "device", element.getDevice().get(i), i); 19699 } 19700 if (element.hasPreferredReportNameElement()) { 19701 composeString(t, "ObservationDefinition", "preferredReportName", element.getPreferredReportNameElement(), -1); 19702 } 19703 for (int i = 0; i < element.getPermittedUnit().size(); i++) { 19704 composeCoding(t, "ObservationDefinition", "permittedUnit", element.getPermittedUnit().get(i), i); 19705 } 19706 for (int i = 0; i < element.getQualifiedValue().size(); i++) { 19707 composeObservationDefinitionQualifiedValueComponent(t, "ObservationDefinition", "qualifiedValue", element.getQualifiedValue().get(i), i); 19708 } 19709 for (int i = 0; i < element.getHasMember().size(); i++) { 19710 composeReference(t, "ObservationDefinition", "hasMember", element.getHasMember().get(i), i); 19711 } 19712 for (int i = 0; i < element.getComponent().size(); i++) { 19713 composeObservationDefinitionComponentComponent(t, "ObservationDefinition", "component", element.getComponent().get(i), i); 19714 } 19715 } 19716 19717 protected void composeObservationDefinitionQualifiedValueComponent(Complex parent, String parentType, String name, ObservationDefinition.ObservationDefinitionQualifiedValueComponent element, int index) { 19718 if (element == null) 19719 return; 19720 Complex t; 19721 if (Utilities.noString(parentType)) 19722 t = parent; 19723 else { 19724 t = parent.predicate("fhir:"+name,index > -1); 19725 } 19726 composeBackboneElement(t, "qualifiedValue", name, element, index); 19727 if (element.hasContext()) { 19728 composeCodeableConcept(t, "ObservationDefinitionQualifiedValueComponent", "context", element.getContext(), -1); 19729 } 19730 for (int i = 0; i < element.getAppliesTo().size(); i++) { 19731 composeCodeableConcept(t, "ObservationDefinitionQualifiedValueComponent", "appliesTo", element.getAppliesTo().get(i), i); 19732 } 19733 if (element.hasGenderElement()) { 19734 composeEnum(t, "ObservationDefinitionQualifiedValueComponent", "gender", element.getGenderElement(), -1); 19735 } 19736 if (element.hasAge()) { 19737 composeRange(t, "ObservationDefinitionQualifiedValueComponent", "age", element.getAge(), -1); 19738 } 19739 if (element.hasGestationalAge()) { 19740 composeRange(t, "ObservationDefinitionQualifiedValueComponent", "gestationalAge", element.getGestationalAge(), -1); 19741 } 19742 if (element.hasConditionElement()) { 19743 composeString(t, "ObservationDefinitionQualifiedValueComponent", "condition", element.getConditionElement(), -1); 19744 } 19745 if (element.hasRangeCategoryElement()) { 19746 composeEnum(t, "ObservationDefinitionQualifiedValueComponent", "rangeCategory", element.getRangeCategoryElement(), -1); 19747 } 19748 if (element.hasRange()) { 19749 composeRange(t, "ObservationDefinitionQualifiedValueComponent", "range", element.getRange(), -1); 19750 } 19751 if (element.hasValidCodedValueSetElement()) { 19752 composeCanonical(t, "ObservationDefinitionQualifiedValueComponent", "validCodedValueSet", element.getValidCodedValueSetElement(), -1); 19753 } 19754 if (element.hasNormalCodedValueSetElement()) { 19755 composeCanonical(t, "ObservationDefinitionQualifiedValueComponent", "normalCodedValueSet", element.getNormalCodedValueSetElement(), -1); 19756 } 19757 if (element.hasAbnormalCodedValueSetElement()) { 19758 composeCanonical(t, "ObservationDefinitionQualifiedValueComponent", "abnormalCodedValueSet", element.getAbnormalCodedValueSetElement(), -1); 19759 } 19760 if (element.hasCriticalCodedValueSetElement()) { 19761 composeCanonical(t, "ObservationDefinitionQualifiedValueComponent", "criticalCodedValueSet", element.getCriticalCodedValueSetElement(), -1); 19762 } 19763 } 19764 19765 protected void composeObservationDefinitionComponentComponent(Complex parent, String parentType, String name, ObservationDefinition.ObservationDefinitionComponentComponent element, int index) { 19766 if (element == null) 19767 return; 19768 Complex t; 19769 if (Utilities.noString(parentType)) 19770 t = parent; 19771 else { 19772 t = parent.predicate("fhir:"+name,index > -1); 19773 } 19774 composeBackboneElement(t, "component", name, element, index); 19775 if (element.hasCode()) { 19776 composeCodeableConcept(t, "ObservationDefinitionComponentComponent", "code", element.getCode(), -1); 19777 } 19778 for (int i = 0; i < element.getPermittedDataType().size(); i++) { 19779 composeEnum(t, "ObservationDefinitionComponentComponent", "permittedDataType", element.getPermittedDataType().get(i), i); 19780 } 19781 for (int i = 0; i < element.getPermittedUnit().size(); i++) { 19782 composeCoding(t, "ObservationDefinitionComponentComponent", "permittedUnit", element.getPermittedUnit().get(i), i); 19783 } 19784 for (int i = 0; i < element.getQualifiedValue().size(); i++) { 19785 composeObservationDefinitionQualifiedValueComponent(t, "ObservationDefinitionComponentComponent", "qualifiedValue", element.getQualifiedValue().get(i), i); 19786 } 19787 } 19788 19789 protected void composeOperationDefinition(Complex parent, String parentType, String name, OperationDefinition element, int index) { 19790 if (element == null) 19791 return; 19792 Complex t; 19793 if (Utilities.noString(parentType)) 19794 t = parent; 19795 else { 19796 t = parent.predicate("fhir:"+name,index > -1); 19797 } 19798 composeCanonicalResource(t, "OperationDefinition", name, element, index); 19799 if (element.hasUrlElement()) { 19800 composeUri(t, "OperationDefinition", "url", element.getUrlElement(), -1); 19801 } 19802 for (int i = 0; i < element.getIdentifier().size(); i++) { 19803 composeIdentifier(t, "OperationDefinition", "identifier", element.getIdentifier().get(i), i); 19804 } 19805 if (element.hasVersionElement()) { 19806 composeString(t, "OperationDefinition", "version", element.getVersionElement(), -1); 19807 } 19808 if (element.hasVersionAlgorithm()) { 19809 composeType(t, "OperationDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 19810 } 19811 if (element.hasNameElement()) { 19812 composeString(t, "OperationDefinition", "name", element.getNameElement(), -1); 19813 } 19814 if (element.hasTitleElement()) { 19815 composeString(t, "OperationDefinition", "title", element.getTitleElement(), -1); 19816 } 19817 if (element.hasStatusElement()) { 19818 composeEnum(t, "OperationDefinition", "status", element.getStatusElement(), -1); 19819 } 19820 if (element.hasKindElement()) { 19821 composeEnum(t, "OperationDefinition", "kind", element.getKindElement(), -1); 19822 } 19823 if (element.hasExperimentalElement()) { 19824 composeBoolean(t, "OperationDefinition", "experimental", element.getExperimentalElement(), -1); 19825 } 19826 if (element.hasDateElement()) { 19827 composeDateTime(t, "OperationDefinition", "date", element.getDateElement(), -1); 19828 } 19829 if (element.hasPublisherElement()) { 19830 composeString(t, "OperationDefinition", "publisher", element.getPublisherElement(), -1); 19831 } 19832 for (int i = 0; i < element.getContact().size(); i++) { 19833 composeContactDetail(t, "OperationDefinition", "contact", element.getContact().get(i), i); 19834 } 19835 if (element.hasDescriptionElement()) { 19836 composeMarkdown(t, "OperationDefinition", "description", element.getDescriptionElement(), -1); 19837 } 19838 for (int i = 0; i < element.getUseContext().size(); i++) { 19839 composeUsageContext(t, "OperationDefinition", "useContext", element.getUseContext().get(i), i); 19840 } 19841 for (int i = 0; i < element.getJurisdiction().size(); i++) { 19842 composeCodeableConcept(t, "OperationDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 19843 } 19844 if (element.hasPurposeElement()) { 19845 composeMarkdown(t, "OperationDefinition", "purpose", element.getPurposeElement(), -1); 19846 } 19847 if (element.hasCopyrightElement()) { 19848 composeMarkdown(t, "OperationDefinition", "copyright", element.getCopyrightElement(), -1); 19849 } 19850 if (element.hasCopyrightLabelElement()) { 19851 composeString(t, "OperationDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 19852 } 19853 if (element.hasAffectsStateElement()) { 19854 composeBoolean(t, "OperationDefinition", "affectsState", element.getAffectsStateElement(), -1); 19855 } 19856 if (element.hasCodeElement()) { 19857 composeCode(t, "OperationDefinition", "code", element.getCodeElement(), -1); 19858 } 19859 if (element.hasCommentElement()) { 19860 composeMarkdown(t, "OperationDefinition", "comment", element.getCommentElement(), -1); 19861 } 19862 if (element.hasBaseElement()) { 19863 composeCanonical(t, "OperationDefinition", "base", element.getBaseElement(), -1); 19864 } 19865 for (int i = 0; i < element.getResource().size(); i++) { 19866 composeEnum(t, "OperationDefinition", "resource", element.getResource().get(i), i); 19867 } 19868 if (element.hasSystemElement()) { 19869 composeBoolean(t, "OperationDefinition", "system", element.getSystemElement(), -1); 19870 } 19871 if (element.hasTypeElement()) { 19872 composeBoolean(t, "OperationDefinition", "type", element.getTypeElement(), -1); 19873 } 19874 if (element.hasInstanceElement()) { 19875 composeBoolean(t, "OperationDefinition", "instance", element.getInstanceElement(), -1); 19876 } 19877 if (element.hasInputProfileElement()) { 19878 composeCanonical(t, "OperationDefinition", "inputProfile", element.getInputProfileElement(), -1); 19879 } 19880 if (element.hasOutputProfileElement()) { 19881 composeCanonical(t, "OperationDefinition", "outputProfile", element.getOutputProfileElement(), -1); 19882 } 19883 for (int i = 0; i < element.getParameter().size(); i++) { 19884 composeOperationDefinitionParameterComponent(t, "OperationDefinition", "parameter", element.getParameter().get(i), i); 19885 } 19886 for (int i = 0; i < element.getOverload().size(); i++) { 19887 composeOperationDefinitionOverloadComponent(t, "OperationDefinition", "overload", element.getOverload().get(i), i); 19888 } 19889 } 19890 19891 protected void composeOperationDefinitionParameterComponent(Complex parent, String parentType, String name, OperationDefinition.OperationDefinitionParameterComponent element, int index) { 19892 if (element == null) 19893 return; 19894 Complex t; 19895 if (Utilities.noString(parentType)) 19896 t = parent; 19897 else { 19898 t = parent.predicate("fhir:"+name,index > -1); 19899 } 19900 composeBackboneElement(t, "parameter", name, element, index); 19901 if (element.hasNameElement()) { 19902 composeCode(t, "OperationDefinitionParameterComponent", "name", element.getNameElement(), -1); 19903 } 19904 if (element.hasUseElement()) { 19905 composeEnum(t, "OperationDefinitionParameterComponent", "use", element.getUseElement(), -1); 19906 } 19907 for (int i = 0; i < element.getScope().size(); i++) { 19908 composeEnum(t, "OperationDefinitionParameterComponent", "scope", element.getScope().get(i), i); 19909 } 19910 if (element.hasMinElement()) { 19911 composeInteger(t, "OperationDefinitionParameterComponent", "min", element.getMinElement(), -1); 19912 } 19913 if (element.hasMaxElement()) { 19914 composeString(t, "OperationDefinitionParameterComponent", "max", element.getMaxElement(), -1); 19915 } 19916 if (element.hasDocumentationElement()) { 19917 composeMarkdown(t, "OperationDefinitionParameterComponent", "documentation", element.getDocumentationElement(), -1); 19918 } 19919 if (element.hasTypeElement()) { 19920 composeEnum(t, "OperationDefinitionParameterComponent", "type", element.getTypeElement(), -1); 19921 } 19922 for (int i = 0; i < element.getAllowedType().size(); i++) { 19923 composeEnum(t, "OperationDefinitionParameterComponent", "allowedType", element.getAllowedType().get(i), i); 19924 } 19925 for (int i = 0; i < element.getTargetProfile().size(); i++) { 19926 composeCanonical(t, "OperationDefinitionParameterComponent", "targetProfile", element.getTargetProfile().get(i), i); 19927 } 19928 if (element.hasSearchTypeElement()) { 19929 composeEnum(t, "OperationDefinitionParameterComponent", "searchType", element.getSearchTypeElement(), -1); 19930 } 19931 if (element.hasBinding()) { 19932 composeOperationDefinitionParameterBindingComponent(t, "OperationDefinitionParameterComponent", "binding", element.getBinding(), -1); 19933 } 19934 for (int i = 0; i < element.getReferencedFrom().size(); i++) { 19935 composeOperationDefinitionParameterReferencedFromComponent(t, "OperationDefinitionParameterComponent", "referencedFrom", element.getReferencedFrom().get(i), i); 19936 } 19937 for (int i = 0; i < element.getPart().size(); i++) { 19938 composeOperationDefinitionParameterComponent(t, "OperationDefinitionParameterComponent", "part", element.getPart().get(i), i); 19939 } 19940 } 19941 19942 protected void composeOperationDefinitionParameterBindingComponent(Complex parent, String parentType, String name, OperationDefinition.OperationDefinitionParameterBindingComponent element, int index) { 19943 if (element == null) 19944 return; 19945 Complex t; 19946 if (Utilities.noString(parentType)) 19947 t = parent; 19948 else { 19949 t = parent.predicate("fhir:"+name,index > -1); 19950 } 19951 composeBackboneElement(t, "binding", name, element, index); 19952 if (element.hasStrengthElement()) { 19953 composeEnum(t, "OperationDefinitionParameterBindingComponent", "strength", element.getStrengthElement(), -1); 19954 } 19955 if (element.hasValueSetElement()) { 19956 composeCanonical(t, "OperationDefinitionParameterBindingComponent", "valueSet", element.getValueSetElement(), -1); 19957 } 19958 } 19959 19960 protected void composeOperationDefinitionParameterReferencedFromComponent(Complex parent, String parentType, String name, OperationDefinition.OperationDefinitionParameterReferencedFromComponent element, int index) { 19961 if (element == null) 19962 return; 19963 Complex t; 19964 if (Utilities.noString(parentType)) 19965 t = parent; 19966 else { 19967 t = parent.predicate("fhir:"+name,index > -1); 19968 } 19969 composeBackboneElement(t, "referencedFrom", name, element, index); 19970 if (element.hasSourceElement()) { 19971 composeString(t, "OperationDefinitionParameterReferencedFromComponent", "source", element.getSourceElement(), -1); 19972 } 19973 if (element.hasSourceIdElement()) { 19974 composeString(t, "OperationDefinitionParameterReferencedFromComponent", "sourceId", element.getSourceIdElement(), -1); 19975 } 19976 } 19977 19978 protected void composeOperationDefinitionOverloadComponent(Complex parent, String parentType, String name, OperationDefinition.OperationDefinitionOverloadComponent element, int index) { 19979 if (element == null) 19980 return; 19981 Complex t; 19982 if (Utilities.noString(parentType)) 19983 t = parent; 19984 else { 19985 t = parent.predicate("fhir:"+name,index > -1); 19986 } 19987 composeBackboneElement(t, "overload", name, element, index); 19988 for (int i = 0; i < element.getParameterName().size(); i++) { 19989 composeString(t, "OperationDefinitionOverloadComponent", "parameterName", element.getParameterName().get(i), i); 19990 } 19991 if (element.hasCommentElement()) { 19992 composeString(t, "OperationDefinitionOverloadComponent", "comment", element.getCommentElement(), -1); 19993 } 19994 } 19995 19996 protected void composeOperationOutcome(Complex parent, String parentType, String name, OperationOutcome element, int index) { 19997 if (element == null) 19998 return; 19999 Complex t; 20000 if (Utilities.noString(parentType)) 20001 t = parent; 20002 else { 20003 t = parent.predicate("fhir:"+name,index > -1); 20004 } 20005 composeDomainResource(t, "OperationOutcome", name, element, index); 20006 for (int i = 0; i < element.getIssue().size(); i++) { 20007 composeOperationOutcomeIssueComponent(t, "OperationOutcome", "issue", element.getIssue().get(i), i); 20008 } 20009 } 20010 20011 protected void composeOperationOutcomeIssueComponent(Complex parent, String parentType, String name, OperationOutcome.OperationOutcomeIssueComponent element, int index) { 20012 if (element == null) 20013 return; 20014 Complex t; 20015 if (Utilities.noString(parentType)) 20016 t = parent; 20017 else { 20018 t = parent.predicate("fhir:"+name,index > -1); 20019 } 20020 composeBackboneElement(t, "issue", name, element, index); 20021 if (element.hasSeverityElement()) { 20022 composeEnum(t, "OperationOutcomeIssueComponent", "severity", element.getSeverityElement(), -1); 20023 } 20024 if (element.hasCodeElement()) { 20025 composeEnum(t, "OperationOutcomeIssueComponent", "code", element.getCodeElement(), -1); 20026 } 20027 if (element.hasDetails()) { 20028 composeCodeableConcept(t, "OperationOutcomeIssueComponent", "details", element.getDetails(), -1); 20029 } 20030 if (element.hasDiagnosticsElement()) { 20031 composeString(t, "OperationOutcomeIssueComponent", "diagnostics", element.getDiagnosticsElement(), -1); 20032 } 20033 for (int i = 0; i < element.getLocation().size(); i++) { 20034 composeString(t, "OperationOutcomeIssueComponent", "location", element.getLocation().get(i), i); 20035 } 20036 for (int i = 0; i < element.getExpression().size(); i++) { 20037 composeString(t, "OperationOutcomeIssueComponent", "expression", element.getExpression().get(i), i); 20038 } 20039 } 20040 20041 protected void composeOrganization(Complex parent, String parentType, String name, Organization element, int index) { 20042 if (element == null) 20043 return; 20044 Complex t; 20045 if (Utilities.noString(parentType)) 20046 t = parent; 20047 else { 20048 t = parent.predicate("fhir:"+name,index > -1); 20049 } 20050 composeDomainResource(t, "Organization", name, element, index); 20051 for (int i = 0; i < element.getIdentifier().size(); i++) { 20052 composeIdentifier(t, "Organization", "identifier", element.getIdentifier().get(i), i); 20053 } 20054 if (element.hasActiveElement()) { 20055 composeBoolean(t, "Organization", "active", element.getActiveElement(), -1); 20056 } 20057 for (int i = 0; i < element.getType().size(); i++) { 20058 composeCodeableConcept(t, "Organization", "type", element.getType().get(i), i); 20059 } 20060 if (element.hasNameElement()) { 20061 composeString(t, "Organization", "name", element.getNameElement(), -1); 20062 } 20063 for (int i = 0; i < element.getAlias().size(); i++) { 20064 composeString(t, "Organization", "alias", element.getAlias().get(i), i); 20065 } 20066 if (element.hasDescriptionElement()) { 20067 composeMarkdown(t, "Organization", "description", element.getDescriptionElement(), -1); 20068 } 20069 for (int i = 0; i < element.getContact().size(); i++) { 20070 composeExtendedContactDetail(t, "Organization", "contact", element.getContact().get(i), i); 20071 } 20072 if (element.hasPartOf()) { 20073 composeReference(t, "Organization", "partOf", element.getPartOf(), -1); 20074 } 20075 for (int i = 0; i < element.getEndpoint().size(); i++) { 20076 composeReference(t, "Organization", "endpoint", element.getEndpoint().get(i), i); 20077 } 20078 for (int i = 0; i < element.getQualification().size(); i++) { 20079 composeOrganizationQualificationComponent(t, "Organization", "qualification", element.getQualification().get(i), i); 20080 } 20081 } 20082 20083 protected void composeOrganizationQualificationComponent(Complex parent, String parentType, String name, Organization.OrganizationQualificationComponent element, int index) { 20084 if (element == null) 20085 return; 20086 Complex t; 20087 if (Utilities.noString(parentType)) 20088 t = parent; 20089 else { 20090 t = parent.predicate("fhir:"+name,index > -1); 20091 } 20092 composeBackboneElement(t, "qualification", name, element, index); 20093 for (int i = 0; i < element.getIdentifier().size(); i++) { 20094 composeIdentifier(t, "OrganizationQualificationComponent", "identifier", element.getIdentifier().get(i), i); 20095 } 20096 if (element.hasCode()) { 20097 composeCodeableConcept(t, "OrganizationQualificationComponent", "code", element.getCode(), -1); 20098 } 20099 if (element.hasPeriod()) { 20100 composePeriod(t, "OrganizationQualificationComponent", "period", element.getPeriod(), -1); 20101 } 20102 if (element.hasIssuer()) { 20103 composeReference(t, "OrganizationQualificationComponent", "issuer", element.getIssuer(), -1); 20104 } 20105 } 20106 20107 protected void composeOrganizationAffiliation(Complex parent, String parentType, String name, OrganizationAffiliation element, int index) { 20108 if (element == null) 20109 return; 20110 Complex t; 20111 if (Utilities.noString(parentType)) 20112 t = parent; 20113 else { 20114 t = parent.predicate("fhir:"+name,index > -1); 20115 } 20116 composeDomainResource(t, "OrganizationAffiliation", name, element, index); 20117 for (int i = 0; i < element.getIdentifier().size(); i++) { 20118 composeIdentifier(t, "OrganizationAffiliation", "identifier", element.getIdentifier().get(i), i); 20119 } 20120 if (element.hasActiveElement()) { 20121 composeBoolean(t, "OrganizationAffiliation", "active", element.getActiveElement(), -1); 20122 } 20123 if (element.hasPeriod()) { 20124 composePeriod(t, "OrganizationAffiliation", "period", element.getPeriod(), -1); 20125 } 20126 if (element.hasOrganization()) { 20127 composeReference(t, "OrganizationAffiliation", "organization", element.getOrganization(), -1); 20128 } 20129 if (element.hasParticipatingOrganization()) { 20130 composeReference(t, "OrganizationAffiliation", "participatingOrganization", element.getParticipatingOrganization(), -1); 20131 } 20132 for (int i = 0; i < element.getNetwork().size(); i++) { 20133 composeReference(t, "OrganizationAffiliation", "network", element.getNetwork().get(i), i); 20134 } 20135 for (int i = 0; i < element.getCode().size(); i++) { 20136 composeCodeableConcept(t, "OrganizationAffiliation", "code", element.getCode().get(i), i); 20137 } 20138 for (int i = 0; i < element.getSpecialty().size(); i++) { 20139 composeCodeableConcept(t, "OrganizationAffiliation", "specialty", element.getSpecialty().get(i), i); 20140 } 20141 for (int i = 0; i < element.getLocation().size(); i++) { 20142 composeReference(t, "OrganizationAffiliation", "location", element.getLocation().get(i), i); 20143 } 20144 for (int i = 0; i < element.getHealthcareService().size(); i++) { 20145 composeReference(t, "OrganizationAffiliation", "healthcareService", element.getHealthcareService().get(i), i); 20146 } 20147 for (int i = 0; i < element.getContact().size(); i++) { 20148 composeExtendedContactDetail(t, "OrganizationAffiliation", "contact", element.getContact().get(i), i); 20149 } 20150 for (int i = 0; i < element.getEndpoint().size(); i++) { 20151 composeReference(t, "OrganizationAffiliation", "endpoint", element.getEndpoint().get(i), i); 20152 } 20153 } 20154 20155 protected void composePackagedProductDefinition(Complex parent, String parentType, String name, PackagedProductDefinition element, int index) { 20156 if (element == null) 20157 return; 20158 Complex t; 20159 if (Utilities.noString(parentType)) 20160 t = parent; 20161 else { 20162 t = parent.predicate("fhir:"+name,index > -1); 20163 } 20164 composeDomainResource(t, "PackagedProductDefinition", name, element, index); 20165 for (int i = 0; i < element.getIdentifier().size(); i++) { 20166 composeIdentifier(t, "PackagedProductDefinition", "identifier", element.getIdentifier().get(i), i); 20167 } 20168 if (element.hasNameElement()) { 20169 composeString(t, "PackagedProductDefinition", "name", element.getNameElement(), -1); 20170 } 20171 if (element.hasType()) { 20172 composeCodeableConcept(t, "PackagedProductDefinition", "type", element.getType(), -1); 20173 } 20174 for (int i = 0; i < element.getPackageFor().size(); i++) { 20175 composeReference(t, "PackagedProductDefinition", "packageFor", element.getPackageFor().get(i), i); 20176 } 20177 if (element.hasStatus()) { 20178 composeCodeableConcept(t, "PackagedProductDefinition", "status", element.getStatus(), -1); 20179 } 20180 if (element.hasStatusDateElement()) { 20181 composeDateTime(t, "PackagedProductDefinition", "statusDate", element.getStatusDateElement(), -1); 20182 } 20183 for (int i = 0; i < element.getContainedItemQuantity().size(); i++) { 20184 composeQuantity(t, "PackagedProductDefinition", "containedItemQuantity", element.getContainedItemQuantity().get(i), i); 20185 } 20186 if (element.hasDescriptionElement()) { 20187 composeMarkdown(t, "PackagedProductDefinition", "description", element.getDescriptionElement(), -1); 20188 } 20189 for (int i = 0; i < element.getLegalStatusOfSupply().size(); i++) { 20190 composePackagedProductDefinitionLegalStatusOfSupplyComponent(t, "PackagedProductDefinition", "legalStatusOfSupply", element.getLegalStatusOfSupply().get(i), i); 20191 } 20192 for (int i = 0; i < element.getMarketingStatus().size(); i++) { 20193 composeMarketingStatus(t, "PackagedProductDefinition", "marketingStatus", element.getMarketingStatus().get(i), i); 20194 } 20195 if (element.hasCopackagedIndicatorElement()) { 20196 composeBoolean(t, "PackagedProductDefinition", "copackagedIndicator", element.getCopackagedIndicatorElement(), -1); 20197 } 20198 for (int i = 0; i < element.getManufacturer().size(); i++) { 20199 composeReference(t, "PackagedProductDefinition", "manufacturer", element.getManufacturer().get(i), i); 20200 } 20201 for (int i = 0; i < element.getAttachedDocument().size(); i++) { 20202 composeReference(t, "PackagedProductDefinition", "attachedDocument", element.getAttachedDocument().get(i), i); 20203 } 20204 if (element.hasPackaging()) { 20205 composePackagedProductDefinitionPackagingComponent(t, "PackagedProductDefinition", "packaging", element.getPackaging(), -1); 20206 } 20207 for (int i = 0; i < element.getCharacteristic().size(); i++) { 20208 composePackagedProductDefinitionPackagingPropertyComponent(t, "PackagedProductDefinition", "characteristic", element.getCharacteristic().get(i), i); 20209 } 20210 } 20211 20212 protected void composePackagedProductDefinitionLegalStatusOfSupplyComponent(Complex parent, String parentType, String name, PackagedProductDefinition.PackagedProductDefinitionLegalStatusOfSupplyComponent element, int index) { 20213 if (element == null) 20214 return; 20215 Complex t; 20216 if (Utilities.noString(parentType)) 20217 t = parent; 20218 else { 20219 t = parent.predicate("fhir:"+name,index > -1); 20220 } 20221 composeBackboneElement(t, "legalStatusOfSupply", name, element, index); 20222 if (element.hasCode()) { 20223 composeCodeableConcept(t, "PackagedProductDefinitionLegalStatusOfSupplyComponent", "code", element.getCode(), -1); 20224 } 20225 if (element.hasJurisdiction()) { 20226 composeCodeableConcept(t, "PackagedProductDefinitionLegalStatusOfSupplyComponent", "jurisdiction", element.getJurisdiction(), -1); 20227 } 20228 } 20229 20230 protected void composePackagedProductDefinitionPackagingComponent(Complex parent, String parentType, String name, PackagedProductDefinition.PackagedProductDefinitionPackagingComponent element, int index) { 20231 if (element == null) 20232 return; 20233 Complex t; 20234 if (Utilities.noString(parentType)) 20235 t = parent; 20236 else { 20237 t = parent.predicate("fhir:"+name,index > -1); 20238 } 20239 composeBackboneElement(t, "packaging", name, element, index); 20240 for (int i = 0; i < element.getIdentifier().size(); i++) { 20241 composeIdentifier(t, "PackagedProductDefinitionPackagingComponent", "identifier", element.getIdentifier().get(i), i); 20242 } 20243 if (element.hasType()) { 20244 composeCodeableConcept(t, "PackagedProductDefinitionPackagingComponent", "type", element.getType(), -1); 20245 } 20246 if (element.hasComponentPartElement()) { 20247 composeBoolean(t, "PackagedProductDefinitionPackagingComponent", "componentPart", element.getComponentPartElement(), -1); 20248 } 20249 if (element.hasQuantityElement()) { 20250 composeInteger(t, "PackagedProductDefinitionPackagingComponent", "quantity", element.getQuantityElement(), -1); 20251 } 20252 for (int i = 0; i < element.getMaterial().size(); i++) { 20253 composeCodeableConcept(t, "PackagedProductDefinitionPackagingComponent", "material", element.getMaterial().get(i), i); 20254 } 20255 for (int i = 0; i < element.getAlternateMaterial().size(); i++) { 20256 composeCodeableConcept(t, "PackagedProductDefinitionPackagingComponent", "alternateMaterial", element.getAlternateMaterial().get(i), i); 20257 } 20258 for (int i = 0; i < element.getShelfLifeStorage().size(); i++) { 20259 composeProductShelfLife(t, "PackagedProductDefinitionPackagingComponent", "shelfLifeStorage", element.getShelfLifeStorage().get(i), i); 20260 } 20261 for (int i = 0; i < element.getManufacturer().size(); i++) { 20262 composeReference(t, "PackagedProductDefinitionPackagingComponent", "manufacturer", element.getManufacturer().get(i), i); 20263 } 20264 for (int i = 0; i < element.getProperty().size(); i++) { 20265 composePackagedProductDefinitionPackagingPropertyComponent(t, "PackagedProductDefinitionPackagingComponent", "property", element.getProperty().get(i), i); 20266 } 20267 for (int i = 0; i < element.getContainedItem().size(); i++) { 20268 composePackagedProductDefinitionPackagingContainedItemComponent(t, "PackagedProductDefinitionPackagingComponent", "containedItem", element.getContainedItem().get(i), i); 20269 } 20270 for (int i = 0; i < element.getPackaging().size(); i++) { 20271 composePackagedProductDefinitionPackagingComponent(t, "PackagedProductDefinitionPackagingComponent", "packaging", element.getPackaging().get(i), i); 20272 } 20273 } 20274 20275 protected void composePackagedProductDefinitionPackagingPropertyComponent(Complex parent, String parentType, String name, PackagedProductDefinition.PackagedProductDefinitionPackagingPropertyComponent element, int index) { 20276 if (element == null) 20277 return; 20278 Complex t; 20279 if (Utilities.noString(parentType)) 20280 t = parent; 20281 else { 20282 t = parent.predicate("fhir:"+name,index > -1); 20283 } 20284 composeBackboneElement(t, "property", name, element, index); 20285 if (element.hasType()) { 20286 composeCodeableConcept(t, "PackagedProductDefinitionPackagingPropertyComponent", "type", element.getType(), -1); 20287 } 20288 if (element.hasValue()) { 20289 composeType(t, "PackagedProductDefinitionPackagingPropertyComponent", "value", element.getValue(), -1); 20290 } 20291 } 20292 20293 protected void composePackagedProductDefinitionPackagingContainedItemComponent(Complex parent, String parentType, String name, PackagedProductDefinition.PackagedProductDefinitionPackagingContainedItemComponent element, int index) { 20294 if (element == null) 20295 return; 20296 Complex t; 20297 if (Utilities.noString(parentType)) 20298 t = parent; 20299 else { 20300 t = parent.predicate("fhir:"+name,index > -1); 20301 } 20302 composeBackboneElement(t, "containedItem", name, element, index); 20303 if (element.hasItem()) { 20304 composeCodeableReference(t, "PackagedProductDefinitionPackagingContainedItemComponent", "item", element.getItem(), -1); 20305 } 20306 if (element.hasAmount()) { 20307 composeQuantity(t, "PackagedProductDefinitionPackagingContainedItemComponent", "amount", element.getAmount(), -1); 20308 } 20309 } 20310 20311 protected void composeParameters(Complex parent, String parentType, String name, Parameters element, int index) { 20312 if (element == null) 20313 return; 20314 Complex t; 20315 if (Utilities.noString(parentType)) 20316 t = parent; 20317 else { 20318 t = parent.predicate("fhir:"+name,index > -1); 20319 } 20320 composeResource(t, "Parameters", name, element, index); 20321 for (int i = 0; i < element.getParameter().size(); i++) { 20322 composeParametersParameterComponent(t, "Parameters", "parameter", element.getParameter().get(i), i); 20323 } 20324 } 20325 20326 protected void composeParametersParameterComponent(Complex parent, String parentType, String name, Parameters.ParametersParameterComponent element, int index) { 20327 if (element == null) 20328 return; 20329 Complex t; 20330 if (Utilities.noString(parentType)) 20331 t = parent; 20332 else { 20333 t = parent.predicate("fhir:"+name,index > -1); 20334 } 20335 composeBackboneElement(t, "parameter", name, element, index); 20336 if (element.hasNameElement()) { 20337 composeString(t, "ParametersParameterComponent", "name", element.getNameElement(), -1); 20338 } 20339 if (element.hasValue()) { 20340 composeType(t, "ParametersParameterComponent", "value", element.getValue(), -1); 20341 } 20342 if (element.hasResource()) { 20343 composeResource(t, "ParametersParameterComponent", "resource", element.getResource(), -1); 20344 } 20345 for (int i = 0; i < element.getPart().size(); i++) { 20346 composeParametersParameterComponent(t, "ParametersParameterComponent", "part", element.getPart().get(i), i); 20347 } 20348 } 20349 20350 protected void composePatient(Complex parent, String parentType, String name, Patient element, int index) { 20351 if (element == null) 20352 return; 20353 Complex t; 20354 if (Utilities.noString(parentType)) 20355 t = parent; 20356 else { 20357 t = parent.predicate("fhir:"+name,index > -1); 20358 } 20359 composeDomainResource(t, "Patient", name, element, index); 20360 for (int i = 0; i < element.getIdentifier().size(); i++) { 20361 composeIdentifier(t, "Patient", "identifier", element.getIdentifier().get(i), i); 20362 } 20363 if (element.hasActiveElement()) { 20364 composeBoolean(t, "Patient", "active", element.getActiveElement(), -1); 20365 } 20366 for (int i = 0; i < element.getName().size(); i++) { 20367 composeHumanName(t, "Patient", "name", element.getName().get(i), i); 20368 } 20369 for (int i = 0; i < element.getTelecom().size(); i++) { 20370 composeContactPoint(t, "Patient", "telecom", element.getTelecom().get(i), i); 20371 } 20372 if (element.hasGenderElement()) { 20373 composeEnum(t, "Patient", "gender", element.getGenderElement(), -1); 20374 } 20375 if (element.hasBirthDateElement()) { 20376 composeDate(t, "Patient", "birthDate", element.getBirthDateElement(), -1); 20377 } 20378 if (element.hasDeceased()) { 20379 composeType(t, "Patient", "deceased", element.getDeceased(), -1); 20380 } 20381 for (int i = 0; i < element.getAddress().size(); i++) { 20382 composeAddress(t, "Patient", "address", element.getAddress().get(i), i); 20383 } 20384 if (element.hasMaritalStatus()) { 20385 composeCodeableConcept(t, "Patient", "maritalStatus", element.getMaritalStatus(), -1); 20386 } 20387 if (element.hasMultipleBirth()) { 20388 composeType(t, "Patient", "multipleBirth", element.getMultipleBirth(), -1); 20389 } 20390 for (int i = 0; i < element.getPhoto().size(); i++) { 20391 composeAttachment(t, "Patient", "photo", element.getPhoto().get(i), i); 20392 } 20393 for (int i = 0; i < element.getContact().size(); i++) { 20394 composePatientContactComponent(t, "Patient", "contact", element.getContact().get(i), i); 20395 } 20396 for (int i = 0; i < element.getCommunication().size(); i++) { 20397 composePatientCommunicationComponent(t, "Patient", "communication", element.getCommunication().get(i), i); 20398 } 20399 for (int i = 0; i < element.getGeneralPractitioner().size(); i++) { 20400 composeReference(t, "Patient", "generalPractitioner", element.getGeneralPractitioner().get(i), i); 20401 } 20402 if (element.hasManagingOrganization()) { 20403 composeReference(t, "Patient", "managingOrganization", element.getManagingOrganization(), -1); 20404 } 20405 for (int i = 0; i < element.getLink().size(); i++) { 20406 composePatientLinkComponent(t, "Patient", "link", element.getLink().get(i), i); 20407 } 20408 } 20409 20410 protected void composePatientContactComponent(Complex parent, String parentType, String name, Patient.ContactComponent element, int index) { 20411 if (element == null) 20412 return; 20413 Complex t; 20414 if (Utilities.noString(parentType)) 20415 t = parent; 20416 else { 20417 t = parent.predicate("fhir:"+name,index > -1); 20418 } 20419 composeBackboneElement(t, "contact", name, element, index); 20420 for (int i = 0; i < element.getRelationship().size(); i++) { 20421 composeCodeableConcept(t, "ContactComponent", "relationship", element.getRelationship().get(i), i); 20422 } 20423 if (element.hasName()) { 20424 composeHumanName(t, "ContactComponent", "name", element.getName(), -1); 20425 } 20426 for (int i = 0; i < element.getTelecom().size(); i++) { 20427 composeContactPoint(t, "ContactComponent", "telecom", element.getTelecom().get(i), i); 20428 } 20429 if (element.hasAddress()) { 20430 composeAddress(t, "ContactComponent", "address", element.getAddress(), -1); 20431 } 20432 if (element.hasGenderElement()) { 20433 composeEnum(t, "ContactComponent", "gender", element.getGenderElement(), -1); 20434 } 20435 if (element.hasOrganization()) { 20436 composeReference(t, "ContactComponent", "organization", element.getOrganization(), -1); 20437 } 20438 if (element.hasPeriod()) { 20439 composePeriod(t, "ContactComponent", "period", element.getPeriod(), -1); 20440 } 20441 } 20442 20443 protected void composePatientCommunicationComponent(Complex parent, String parentType, String name, Patient.PatientCommunicationComponent element, int index) { 20444 if (element == null) 20445 return; 20446 Complex t; 20447 if (Utilities.noString(parentType)) 20448 t = parent; 20449 else { 20450 t = parent.predicate("fhir:"+name,index > -1); 20451 } 20452 composeBackboneElement(t, "communication", name, element, index); 20453 if (element.hasLanguage()) { 20454 composeCodeableConcept(t, "PatientCommunicationComponent", "language", element.getLanguage(), -1); 20455 } 20456 if (element.hasPreferredElement()) { 20457 composeBoolean(t, "PatientCommunicationComponent", "preferred", element.getPreferredElement(), -1); 20458 } 20459 } 20460 20461 protected void composePatientLinkComponent(Complex parent, String parentType, String name, Patient.PatientLinkComponent element, int index) { 20462 if (element == null) 20463 return; 20464 Complex t; 20465 if (Utilities.noString(parentType)) 20466 t = parent; 20467 else { 20468 t = parent.predicate("fhir:"+name,index > -1); 20469 } 20470 composeBackboneElement(t, "link", name, element, index); 20471 if (element.hasOther()) { 20472 composeReference(t, "PatientLinkComponent", "other", element.getOther(), -1); 20473 } 20474 if (element.hasTypeElement()) { 20475 composeEnum(t, "PatientLinkComponent", "type", element.getTypeElement(), -1); 20476 } 20477 } 20478 20479 protected void composePaymentNotice(Complex parent, String parentType, String name, PaymentNotice element, int index) { 20480 if (element == null) 20481 return; 20482 Complex t; 20483 if (Utilities.noString(parentType)) 20484 t = parent; 20485 else { 20486 t = parent.predicate("fhir:"+name,index > -1); 20487 } 20488 composeDomainResource(t, "PaymentNotice", name, element, index); 20489 for (int i = 0; i < element.getIdentifier().size(); i++) { 20490 composeIdentifier(t, "PaymentNotice", "identifier", element.getIdentifier().get(i), i); 20491 } 20492 if (element.hasStatusElement()) { 20493 composeEnum(t, "PaymentNotice", "status", element.getStatusElement(), -1); 20494 } 20495 if (element.hasRequest()) { 20496 composeReference(t, "PaymentNotice", "request", element.getRequest(), -1); 20497 } 20498 if (element.hasResponse()) { 20499 composeReference(t, "PaymentNotice", "response", element.getResponse(), -1); 20500 } 20501 if (element.hasCreatedElement()) { 20502 composeDateTime(t, "PaymentNotice", "created", element.getCreatedElement(), -1); 20503 } 20504 if (element.hasReporter()) { 20505 composeReference(t, "PaymentNotice", "reporter", element.getReporter(), -1); 20506 } 20507 if (element.hasPayment()) { 20508 composeReference(t, "PaymentNotice", "payment", element.getPayment(), -1); 20509 } 20510 if (element.hasPaymentDateElement()) { 20511 composeDate(t, "PaymentNotice", "paymentDate", element.getPaymentDateElement(), -1); 20512 } 20513 if (element.hasPayee()) { 20514 composeReference(t, "PaymentNotice", "payee", element.getPayee(), -1); 20515 } 20516 if (element.hasRecipient()) { 20517 composeReference(t, "PaymentNotice", "recipient", element.getRecipient(), -1); 20518 } 20519 if (element.hasAmount()) { 20520 composeMoney(t, "PaymentNotice", "amount", element.getAmount(), -1); 20521 } 20522 if (element.hasPaymentStatus()) { 20523 composeCodeableConcept(t, "PaymentNotice", "paymentStatus", element.getPaymentStatus(), -1); 20524 } 20525 } 20526 20527 protected void composePaymentReconciliation(Complex parent, String parentType, String name, PaymentReconciliation element, int index) { 20528 if (element == null) 20529 return; 20530 Complex t; 20531 if (Utilities.noString(parentType)) 20532 t = parent; 20533 else { 20534 t = parent.predicate("fhir:"+name,index > -1); 20535 } 20536 composeDomainResource(t, "PaymentReconciliation", name, element, index); 20537 for (int i = 0; i < element.getIdentifier().size(); i++) { 20538 composeIdentifier(t, "PaymentReconciliation", "identifier", element.getIdentifier().get(i), i); 20539 } 20540 if (element.hasType()) { 20541 composeCodeableConcept(t, "PaymentReconciliation", "type", element.getType(), -1); 20542 } 20543 if (element.hasStatusElement()) { 20544 composeEnum(t, "PaymentReconciliation", "status", element.getStatusElement(), -1); 20545 } 20546 if (element.hasKind()) { 20547 composeCodeableConcept(t, "PaymentReconciliation", "kind", element.getKind(), -1); 20548 } 20549 if (element.hasPeriod()) { 20550 composePeriod(t, "PaymentReconciliation", "period", element.getPeriod(), -1); 20551 } 20552 if (element.hasCreatedElement()) { 20553 composeDateTime(t, "PaymentReconciliation", "created", element.getCreatedElement(), -1); 20554 } 20555 if (element.hasEnterer()) { 20556 composeReference(t, "PaymentReconciliation", "enterer", element.getEnterer(), -1); 20557 } 20558 if (element.hasIssuerType()) { 20559 composeCodeableConcept(t, "PaymentReconciliation", "issuerType", element.getIssuerType(), -1); 20560 } 20561 if (element.hasPaymentIssuer()) { 20562 composeReference(t, "PaymentReconciliation", "paymentIssuer", element.getPaymentIssuer(), -1); 20563 } 20564 if (element.hasRequest()) { 20565 composeReference(t, "PaymentReconciliation", "request", element.getRequest(), -1); 20566 } 20567 if (element.hasRequestor()) { 20568 composeReference(t, "PaymentReconciliation", "requestor", element.getRequestor(), -1); 20569 } 20570 if (element.hasOutcomeElement()) { 20571 composeEnum(t, "PaymentReconciliation", "outcome", element.getOutcomeElement(), -1); 20572 } 20573 if (element.hasDispositionElement()) { 20574 composeString(t, "PaymentReconciliation", "disposition", element.getDispositionElement(), -1); 20575 } 20576 if (element.hasDateElement()) { 20577 composeDate(t, "PaymentReconciliation", "date", element.getDateElement(), -1); 20578 } 20579 if (element.hasLocation()) { 20580 composeReference(t, "PaymentReconciliation", "location", element.getLocation(), -1); 20581 } 20582 if (element.hasMethod()) { 20583 composeCodeableConcept(t, "PaymentReconciliation", "method", element.getMethod(), -1); 20584 } 20585 if (element.hasCardBrandElement()) { 20586 composeString(t, "PaymentReconciliation", "cardBrand", element.getCardBrandElement(), -1); 20587 } 20588 if (element.hasAccountNumberElement()) { 20589 composeString(t, "PaymentReconciliation", "accountNumber", element.getAccountNumberElement(), -1); 20590 } 20591 if (element.hasExpirationDateElement()) { 20592 composeDate(t, "PaymentReconciliation", "expirationDate", element.getExpirationDateElement(), -1); 20593 } 20594 if (element.hasProcessorElement()) { 20595 composeString(t, "PaymentReconciliation", "processor", element.getProcessorElement(), -1); 20596 } 20597 if (element.hasReferenceNumberElement()) { 20598 composeString(t, "PaymentReconciliation", "referenceNumber", element.getReferenceNumberElement(), -1); 20599 } 20600 if (element.hasAuthorizationElement()) { 20601 composeString(t, "PaymentReconciliation", "authorization", element.getAuthorizationElement(), -1); 20602 } 20603 if (element.hasTenderedAmount()) { 20604 composeMoney(t, "PaymentReconciliation", "tenderedAmount", element.getTenderedAmount(), -1); 20605 } 20606 if (element.hasReturnedAmount()) { 20607 composeMoney(t, "PaymentReconciliation", "returnedAmount", element.getReturnedAmount(), -1); 20608 } 20609 if (element.hasAmount()) { 20610 composeMoney(t, "PaymentReconciliation", "amount", element.getAmount(), -1); 20611 } 20612 if (element.hasPaymentIdentifier()) { 20613 composeIdentifier(t, "PaymentReconciliation", "paymentIdentifier", element.getPaymentIdentifier(), -1); 20614 } 20615 for (int i = 0; i < element.getAllocation().size(); i++) { 20616 composePaymentReconciliationAllocationComponent(t, "PaymentReconciliation", "allocation", element.getAllocation().get(i), i); 20617 } 20618 if (element.hasFormCode()) { 20619 composeCodeableConcept(t, "PaymentReconciliation", "formCode", element.getFormCode(), -1); 20620 } 20621 for (int i = 0; i < element.getProcessNote().size(); i++) { 20622 composePaymentReconciliationNotesComponent(t, "PaymentReconciliation", "processNote", element.getProcessNote().get(i), i); 20623 } 20624 } 20625 20626 protected void composePaymentReconciliationAllocationComponent(Complex parent, String parentType, String name, PaymentReconciliation.PaymentReconciliationAllocationComponent element, int index) { 20627 if (element == null) 20628 return; 20629 Complex t; 20630 if (Utilities.noString(parentType)) 20631 t = parent; 20632 else { 20633 t = parent.predicate("fhir:"+name,index > -1); 20634 } 20635 composeBackboneElement(t, "allocation", name, element, index); 20636 if (element.hasIdentifier()) { 20637 composeIdentifier(t, "PaymentReconciliationAllocationComponent", "identifier", element.getIdentifier(), -1); 20638 } 20639 if (element.hasPredecessor()) { 20640 composeIdentifier(t, "PaymentReconciliationAllocationComponent", "predecessor", element.getPredecessor(), -1); 20641 } 20642 if (element.hasTarget()) { 20643 composeReference(t, "PaymentReconciliationAllocationComponent", "target", element.getTarget(), -1); 20644 } 20645 if (element.hasTargetItem()) { 20646 composeType(t, "PaymentReconciliationAllocationComponent", "targetItem", element.getTargetItem(), -1); 20647 } 20648 if (element.hasEncounter()) { 20649 composeReference(t, "PaymentReconciliationAllocationComponent", "encounter", element.getEncounter(), -1); 20650 } 20651 if (element.hasAccount()) { 20652 composeReference(t, "PaymentReconciliationAllocationComponent", "account", element.getAccount(), -1); 20653 } 20654 if (element.hasType()) { 20655 composeCodeableConcept(t, "PaymentReconciliationAllocationComponent", "type", element.getType(), -1); 20656 } 20657 if (element.hasSubmitter()) { 20658 composeReference(t, "PaymentReconciliationAllocationComponent", "submitter", element.getSubmitter(), -1); 20659 } 20660 if (element.hasResponse()) { 20661 composeReference(t, "PaymentReconciliationAllocationComponent", "response", element.getResponse(), -1); 20662 } 20663 if (element.hasDateElement()) { 20664 composeDate(t, "PaymentReconciliationAllocationComponent", "date", element.getDateElement(), -1); 20665 } 20666 if (element.hasResponsible()) { 20667 composeReference(t, "PaymentReconciliationAllocationComponent", "responsible", element.getResponsible(), -1); 20668 } 20669 if (element.hasPayee()) { 20670 composeReference(t, "PaymentReconciliationAllocationComponent", "payee", element.getPayee(), -1); 20671 } 20672 if (element.hasAmount()) { 20673 composeMoney(t, "PaymentReconciliationAllocationComponent", "amount", element.getAmount(), -1); 20674 } 20675 } 20676 20677 protected void composePaymentReconciliationNotesComponent(Complex parent, String parentType, String name, PaymentReconciliation.NotesComponent element, int index) { 20678 if (element == null) 20679 return; 20680 Complex t; 20681 if (Utilities.noString(parentType)) 20682 t = parent; 20683 else { 20684 t = parent.predicate("fhir:"+name,index > -1); 20685 } 20686 composeBackboneElement(t, "processNote", name, element, index); 20687 if (element.hasTypeElement()) { 20688 composeEnum(t, "NotesComponent", "type", element.getTypeElement(), -1); 20689 } 20690 if (element.hasTextElement()) { 20691 composeString(t, "NotesComponent", "text", element.getTextElement(), -1); 20692 } 20693 } 20694 20695 protected void composePermission(Complex parent, String parentType, String name, Permission element, int index) { 20696 if (element == null) 20697 return; 20698 Complex t; 20699 if (Utilities.noString(parentType)) 20700 t = parent; 20701 else { 20702 t = parent.predicate("fhir:"+name,index > -1); 20703 } 20704 composeDomainResource(t, "Permission", name, element, index); 20705 if (element.hasStatusElement()) { 20706 composeEnum(t, "Permission", "status", element.getStatusElement(), -1); 20707 } 20708 if (element.hasAsserter()) { 20709 composeReference(t, "Permission", "asserter", element.getAsserter(), -1); 20710 } 20711 for (int i = 0; i < element.getDate().size(); i++) { 20712 composeDateTime(t, "Permission", "date", element.getDate().get(i), i); 20713 } 20714 if (element.hasValidity()) { 20715 composePeriod(t, "Permission", "validity", element.getValidity(), -1); 20716 } 20717 if (element.hasJustification()) { 20718 composePermissionJustificationComponent(t, "Permission", "justification", element.getJustification(), -1); 20719 } 20720 if (element.hasCombiningElement()) { 20721 composeEnum(t, "Permission", "combining", element.getCombiningElement(), -1); 20722 } 20723 for (int i = 0; i < element.getRule().size(); i++) { 20724 composePermissionRuleComponent(t, "Permission", "rule", element.getRule().get(i), i); 20725 } 20726 } 20727 20728 protected void composePermissionJustificationComponent(Complex parent, String parentType, String name, Permission.PermissionJustificationComponent element, int index) { 20729 if (element == null) 20730 return; 20731 Complex t; 20732 if (Utilities.noString(parentType)) 20733 t = parent; 20734 else { 20735 t = parent.predicate("fhir:"+name,index > -1); 20736 } 20737 composeBackboneElement(t, "justification", name, element, index); 20738 for (int i = 0; i < element.getBasis().size(); i++) { 20739 composeCodeableConcept(t, "PermissionJustificationComponent", "basis", element.getBasis().get(i), i); 20740 } 20741 for (int i = 0; i < element.getEvidence().size(); i++) { 20742 composeReference(t, "PermissionJustificationComponent", "evidence", element.getEvidence().get(i), i); 20743 } 20744 } 20745 20746 protected void composePermissionRuleComponent(Complex parent, String parentType, String name, Permission.RuleComponent element, int index) { 20747 if (element == null) 20748 return; 20749 Complex t; 20750 if (Utilities.noString(parentType)) 20751 t = parent; 20752 else { 20753 t = parent.predicate("fhir:"+name,index > -1); 20754 } 20755 composeBackboneElement(t, "rule", name, element, index); 20756 if (element.hasTypeElement()) { 20757 composeEnum(t, "RuleComponent", "type", element.getTypeElement(), -1); 20758 } 20759 for (int i = 0; i < element.getData().size(); i++) { 20760 composePermissionRuleDataComponent(t, "RuleComponent", "data", element.getData().get(i), i); 20761 } 20762 for (int i = 0; i < element.getActivity().size(); i++) { 20763 composePermissionRuleActivityComponent(t, "RuleComponent", "activity", element.getActivity().get(i), i); 20764 } 20765 for (int i = 0; i < element.getLimit().size(); i++) { 20766 composeCodeableConcept(t, "RuleComponent", "limit", element.getLimit().get(i), i); 20767 } 20768 } 20769 20770 protected void composePermissionRuleDataComponent(Complex parent, String parentType, String name, Permission.RuleDataComponent element, int index) { 20771 if (element == null) 20772 return; 20773 Complex t; 20774 if (Utilities.noString(parentType)) 20775 t = parent; 20776 else { 20777 t = parent.predicate("fhir:"+name,index > -1); 20778 } 20779 composeBackboneElement(t, "data", name, element, index); 20780 for (int i = 0; i < element.getResource().size(); i++) { 20781 composePermissionRuleDataResourceComponent(t, "RuleDataComponent", "resource", element.getResource().get(i), i); 20782 } 20783 for (int i = 0; i < element.getSecurity().size(); i++) { 20784 composeCoding(t, "RuleDataComponent", "security", element.getSecurity().get(i), i); 20785 } 20786 for (int i = 0; i < element.getPeriod().size(); i++) { 20787 composePeriod(t, "RuleDataComponent", "period", element.getPeriod().get(i), i); 20788 } 20789 if (element.hasExpression()) { 20790 composeExpression(t, "RuleDataComponent", "expression", element.getExpression(), -1); 20791 } 20792 } 20793 20794 protected void composePermissionRuleDataResourceComponent(Complex parent, String parentType, String name, Permission.RuleDataResourceComponent element, int index) { 20795 if (element == null) 20796 return; 20797 Complex t; 20798 if (Utilities.noString(parentType)) 20799 t = parent; 20800 else { 20801 t = parent.predicate("fhir:"+name,index > -1); 20802 } 20803 composeBackboneElement(t, "resource", name, element, index); 20804 if (element.hasMeaningElement()) { 20805 composeEnum(t, "RuleDataResourceComponent", "meaning", element.getMeaningElement(), -1); 20806 } 20807 if (element.hasReference()) { 20808 composeReference(t, "RuleDataResourceComponent", "reference", element.getReference(), -1); 20809 } 20810 } 20811 20812 protected void composePermissionRuleActivityComponent(Complex parent, String parentType, String name, Permission.RuleActivityComponent element, int index) { 20813 if (element == null) 20814 return; 20815 Complex t; 20816 if (Utilities.noString(parentType)) 20817 t = parent; 20818 else { 20819 t = parent.predicate("fhir:"+name,index > -1); 20820 } 20821 composeBackboneElement(t, "activity", name, element, index); 20822 for (int i = 0; i < element.getActor().size(); i++) { 20823 composeReference(t, "RuleActivityComponent", "actor", element.getActor().get(i), i); 20824 } 20825 for (int i = 0; i < element.getAction().size(); i++) { 20826 composeCodeableConcept(t, "RuleActivityComponent", "action", element.getAction().get(i), i); 20827 } 20828 for (int i = 0; i < element.getPurpose().size(); i++) { 20829 composeCodeableConcept(t, "RuleActivityComponent", "purpose", element.getPurpose().get(i), i); 20830 } 20831 } 20832 20833 protected void composePerson(Complex parent, String parentType, String name, Person element, int index) { 20834 if (element == null) 20835 return; 20836 Complex t; 20837 if (Utilities.noString(parentType)) 20838 t = parent; 20839 else { 20840 t = parent.predicate("fhir:"+name,index > -1); 20841 } 20842 composeDomainResource(t, "Person", name, element, index); 20843 for (int i = 0; i < element.getIdentifier().size(); i++) { 20844 composeIdentifier(t, "Person", "identifier", element.getIdentifier().get(i), i); 20845 } 20846 if (element.hasActiveElement()) { 20847 composeBoolean(t, "Person", "active", element.getActiveElement(), -1); 20848 } 20849 for (int i = 0; i < element.getName().size(); i++) { 20850 composeHumanName(t, "Person", "name", element.getName().get(i), i); 20851 } 20852 for (int i = 0; i < element.getTelecom().size(); i++) { 20853 composeContactPoint(t, "Person", "telecom", element.getTelecom().get(i), i); 20854 } 20855 if (element.hasGenderElement()) { 20856 composeEnum(t, "Person", "gender", element.getGenderElement(), -1); 20857 } 20858 if (element.hasBirthDateElement()) { 20859 composeDate(t, "Person", "birthDate", element.getBirthDateElement(), -1); 20860 } 20861 if (element.hasDeceased()) { 20862 composeType(t, "Person", "deceased", element.getDeceased(), -1); 20863 } 20864 for (int i = 0; i < element.getAddress().size(); i++) { 20865 composeAddress(t, "Person", "address", element.getAddress().get(i), i); 20866 } 20867 if (element.hasMaritalStatus()) { 20868 composeCodeableConcept(t, "Person", "maritalStatus", element.getMaritalStatus(), -1); 20869 } 20870 for (int i = 0; i < element.getPhoto().size(); i++) { 20871 composeAttachment(t, "Person", "photo", element.getPhoto().get(i), i); 20872 } 20873 for (int i = 0; i < element.getCommunication().size(); i++) { 20874 composePersonCommunicationComponent(t, "Person", "communication", element.getCommunication().get(i), i); 20875 } 20876 if (element.hasManagingOrganization()) { 20877 composeReference(t, "Person", "managingOrganization", element.getManagingOrganization(), -1); 20878 } 20879 for (int i = 0; i < element.getLink().size(); i++) { 20880 composePersonLinkComponent(t, "Person", "link", element.getLink().get(i), i); 20881 } 20882 } 20883 20884 protected void composePersonCommunicationComponent(Complex parent, String parentType, String name, Person.PersonCommunicationComponent element, int index) { 20885 if (element == null) 20886 return; 20887 Complex t; 20888 if (Utilities.noString(parentType)) 20889 t = parent; 20890 else { 20891 t = parent.predicate("fhir:"+name,index > -1); 20892 } 20893 composeBackboneElement(t, "communication", name, element, index); 20894 if (element.hasLanguage()) { 20895 composeCodeableConcept(t, "PersonCommunicationComponent", "language", element.getLanguage(), -1); 20896 } 20897 if (element.hasPreferredElement()) { 20898 composeBoolean(t, "PersonCommunicationComponent", "preferred", element.getPreferredElement(), -1); 20899 } 20900 } 20901 20902 protected void composePersonLinkComponent(Complex parent, String parentType, String name, Person.PersonLinkComponent element, int index) { 20903 if (element == null) 20904 return; 20905 Complex t; 20906 if (Utilities.noString(parentType)) 20907 t = parent; 20908 else { 20909 t = parent.predicate("fhir:"+name,index > -1); 20910 } 20911 composeBackboneElement(t, "link", name, element, index); 20912 if (element.hasTarget()) { 20913 composeReference(t, "PersonLinkComponent", "target", element.getTarget(), -1); 20914 } 20915 if (element.hasAssuranceElement()) { 20916 composeEnum(t, "PersonLinkComponent", "assurance", element.getAssuranceElement(), -1); 20917 } 20918 } 20919 20920 protected void composePlanDefinition(Complex parent, String parentType, String name, PlanDefinition element, int index) { 20921 if (element == null) 20922 return; 20923 Complex t; 20924 if (Utilities.noString(parentType)) 20925 t = parent; 20926 else { 20927 t = parent.predicate("fhir:"+name,index > -1); 20928 } 20929 composeMetadataResource(t, "PlanDefinition", name, element, index); 20930 if (element.hasUrlElement()) { 20931 composeUri(t, "PlanDefinition", "url", element.getUrlElement(), -1); 20932 } 20933 for (int i = 0; i < element.getIdentifier().size(); i++) { 20934 composeIdentifier(t, "PlanDefinition", "identifier", element.getIdentifier().get(i), i); 20935 } 20936 if (element.hasVersionElement()) { 20937 composeString(t, "PlanDefinition", "version", element.getVersionElement(), -1); 20938 } 20939 if (element.hasVersionAlgorithm()) { 20940 composeType(t, "PlanDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 20941 } 20942 if (element.hasNameElement()) { 20943 composeString(t, "PlanDefinition", "name", element.getNameElement(), -1); 20944 } 20945 if (element.hasTitleElement()) { 20946 composeString(t, "PlanDefinition", "title", element.getTitleElement(), -1); 20947 } 20948 if (element.hasSubtitleElement()) { 20949 composeString(t, "PlanDefinition", "subtitle", element.getSubtitleElement(), -1); 20950 } 20951 if (element.hasType()) { 20952 composeCodeableConcept(t, "PlanDefinition", "type", element.getType(), -1); 20953 } 20954 if (element.hasStatusElement()) { 20955 composeEnum(t, "PlanDefinition", "status", element.getStatusElement(), -1); 20956 } 20957 if (element.hasExperimentalElement()) { 20958 composeBoolean(t, "PlanDefinition", "experimental", element.getExperimentalElement(), -1); 20959 } 20960 if (element.hasSubject()) { 20961 composeType(t, "PlanDefinition", "subject", element.getSubject(), -1); 20962 } 20963 if (element.hasDateElement()) { 20964 composeDateTime(t, "PlanDefinition", "date", element.getDateElement(), -1); 20965 } 20966 if (element.hasPublisherElement()) { 20967 composeString(t, "PlanDefinition", "publisher", element.getPublisherElement(), -1); 20968 } 20969 for (int i = 0; i < element.getContact().size(); i++) { 20970 composeContactDetail(t, "PlanDefinition", "contact", element.getContact().get(i), i); 20971 } 20972 if (element.hasDescriptionElement()) { 20973 composeMarkdown(t, "PlanDefinition", "description", element.getDescriptionElement(), -1); 20974 } 20975 for (int i = 0; i < element.getUseContext().size(); i++) { 20976 composeUsageContext(t, "PlanDefinition", "useContext", element.getUseContext().get(i), i); 20977 } 20978 for (int i = 0; i < element.getJurisdiction().size(); i++) { 20979 composeCodeableConcept(t, "PlanDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 20980 } 20981 if (element.hasPurposeElement()) { 20982 composeMarkdown(t, "PlanDefinition", "purpose", element.getPurposeElement(), -1); 20983 } 20984 if (element.hasUsageElement()) { 20985 composeMarkdown(t, "PlanDefinition", "usage", element.getUsageElement(), -1); 20986 } 20987 if (element.hasCopyrightElement()) { 20988 composeMarkdown(t, "PlanDefinition", "copyright", element.getCopyrightElement(), -1); 20989 } 20990 if (element.hasCopyrightLabelElement()) { 20991 composeString(t, "PlanDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 20992 } 20993 if (element.hasApprovalDateElement()) { 20994 composeDate(t, "PlanDefinition", "approvalDate", element.getApprovalDateElement(), -1); 20995 } 20996 if (element.hasLastReviewDateElement()) { 20997 composeDate(t, "PlanDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 20998 } 20999 if (element.hasEffectivePeriod()) { 21000 composePeriod(t, "PlanDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 21001 } 21002 for (int i = 0; i < element.getTopic().size(); i++) { 21003 composeCodeableConcept(t, "PlanDefinition", "topic", element.getTopic().get(i), i); 21004 } 21005 for (int i = 0; i < element.getAuthor().size(); i++) { 21006 composeContactDetail(t, "PlanDefinition", "author", element.getAuthor().get(i), i); 21007 } 21008 for (int i = 0; i < element.getEditor().size(); i++) { 21009 composeContactDetail(t, "PlanDefinition", "editor", element.getEditor().get(i), i); 21010 } 21011 for (int i = 0; i < element.getReviewer().size(); i++) { 21012 composeContactDetail(t, "PlanDefinition", "reviewer", element.getReviewer().get(i), i); 21013 } 21014 for (int i = 0; i < element.getEndorser().size(); i++) { 21015 composeContactDetail(t, "PlanDefinition", "endorser", element.getEndorser().get(i), i); 21016 } 21017 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 21018 composeRelatedArtifact(t, "PlanDefinition", "relatedArtifact", element.getRelatedArtifact().get(i), i); 21019 } 21020 for (int i = 0; i < element.getLibrary().size(); i++) { 21021 composeCanonical(t, "PlanDefinition", "library", element.getLibrary().get(i), i); 21022 } 21023 for (int i = 0; i < element.getGoal().size(); i++) { 21024 composePlanDefinitionGoalComponent(t, "PlanDefinition", "goal", element.getGoal().get(i), i); 21025 } 21026 for (int i = 0; i < element.getActor().size(); i++) { 21027 composePlanDefinitionActorComponent(t, "PlanDefinition", "actor", element.getActor().get(i), i); 21028 } 21029 for (int i = 0; i < element.getAction().size(); i++) { 21030 composePlanDefinitionActionComponent(t, "PlanDefinition", "action", element.getAction().get(i), i); 21031 } 21032 if (element.hasAsNeeded()) { 21033 composeType(t, "PlanDefinition", "asNeeded", element.getAsNeeded(), -1); 21034 } 21035 } 21036 21037 protected void composePlanDefinitionGoalComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionGoalComponent element, int index) { 21038 if (element == null) 21039 return; 21040 Complex t; 21041 if (Utilities.noString(parentType)) 21042 t = parent; 21043 else { 21044 t = parent.predicate("fhir:"+name,index > -1); 21045 } 21046 composeBackboneElement(t, "goal", name, element, index); 21047 if (element.hasCategory()) { 21048 composeCodeableConcept(t, "PlanDefinitionGoalComponent", "category", element.getCategory(), -1); 21049 } 21050 if (element.hasDescription()) { 21051 composeCodeableConcept(t, "PlanDefinitionGoalComponent", "description", element.getDescription(), -1); 21052 } 21053 if (element.hasPriority()) { 21054 composeCodeableConcept(t, "PlanDefinitionGoalComponent", "priority", element.getPriority(), -1); 21055 } 21056 if (element.hasStart()) { 21057 composeCodeableConcept(t, "PlanDefinitionGoalComponent", "start", element.getStart(), -1); 21058 } 21059 for (int i = 0; i < element.getAddresses().size(); i++) { 21060 composeCodeableConcept(t, "PlanDefinitionGoalComponent", "addresses", element.getAddresses().get(i), i); 21061 } 21062 for (int i = 0; i < element.getDocumentation().size(); i++) { 21063 composeRelatedArtifact(t, "PlanDefinitionGoalComponent", "documentation", element.getDocumentation().get(i), i); 21064 } 21065 for (int i = 0; i < element.getTarget().size(); i++) { 21066 composePlanDefinitionGoalTargetComponent(t, "PlanDefinitionGoalComponent", "target", element.getTarget().get(i), i); 21067 } 21068 } 21069 21070 protected void composePlanDefinitionGoalTargetComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionGoalTargetComponent element, int index) { 21071 if (element == null) 21072 return; 21073 Complex t; 21074 if (Utilities.noString(parentType)) 21075 t = parent; 21076 else { 21077 t = parent.predicate("fhir:"+name,index > -1); 21078 } 21079 composeBackboneElement(t, "target", name, element, index); 21080 if (element.hasMeasure()) { 21081 composeCodeableConcept(t, "PlanDefinitionGoalTargetComponent", "measure", element.getMeasure(), -1); 21082 } 21083 if (element.hasDetail()) { 21084 composeType(t, "PlanDefinitionGoalTargetComponent", "detail", element.getDetail(), -1); 21085 } 21086 if (element.hasDue()) { 21087 composeDuration(t, "PlanDefinitionGoalTargetComponent", "due", element.getDue(), -1); 21088 } 21089 } 21090 21091 protected void composePlanDefinitionActorComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionActorComponent element, int index) { 21092 if (element == null) 21093 return; 21094 Complex t; 21095 if (Utilities.noString(parentType)) 21096 t = parent; 21097 else { 21098 t = parent.predicate("fhir:"+name,index > -1); 21099 } 21100 composeBackboneElement(t, "actor", name, element, index); 21101 if (element.hasTitleElement()) { 21102 composeString(t, "PlanDefinitionActorComponent", "title", element.getTitleElement(), -1); 21103 } 21104 if (element.hasDescriptionElement()) { 21105 composeMarkdown(t, "PlanDefinitionActorComponent", "description", element.getDescriptionElement(), -1); 21106 } 21107 for (int i = 0; i < element.getOption().size(); i++) { 21108 composePlanDefinitionActorOptionComponent(t, "PlanDefinitionActorComponent", "option", element.getOption().get(i), i); 21109 } 21110 } 21111 21112 protected void composePlanDefinitionActorOptionComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionActorOptionComponent element, int index) { 21113 if (element == null) 21114 return; 21115 Complex t; 21116 if (Utilities.noString(parentType)) 21117 t = parent; 21118 else { 21119 t = parent.predicate("fhir:"+name,index > -1); 21120 } 21121 composeBackboneElement(t, "option", name, element, index); 21122 if (element.hasTypeElement()) { 21123 composeEnum(t, "PlanDefinitionActorOptionComponent", "type", element.getTypeElement(), -1); 21124 } 21125 if (element.hasTypeCanonicalElement()) { 21126 composeCanonical(t, "PlanDefinitionActorOptionComponent", "typeCanonical", element.getTypeCanonicalElement(), -1); 21127 } 21128 if (element.hasTypeReference()) { 21129 composeReference(t, "PlanDefinitionActorOptionComponent", "typeReference", element.getTypeReference(), -1); 21130 } 21131 if (element.hasRole()) { 21132 composeCodeableConcept(t, "PlanDefinitionActorOptionComponent", "role", element.getRole(), -1); 21133 } 21134 } 21135 21136 protected void composePlanDefinitionActionComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionActionComponent element, int index) { 21137 if (element == null) 21138 return; 21139 Complex t; 21140 if (Utilities.noString(parentType)) 21141 t = parent; 21142 else { 21143 t = parent.predicate("fhir:"+name,index > -1); 21144 } 21145 composeBackboneElement(t, "action", name, element, index); 21146 if (element.hasLinkIdElement()) { 21147 composeString(t, "PlanDefinitionActionComponent", "linkId", element.getLinkIdElement(), -1); 21148 } 21149 if (element.hasPrefixElement()) { 21150 composeString(t, "PlanDefinitionActionComponent", "prefix", element.getPrefixElement(), -1); 21151 } 21152 if (element.hasTitleElement()) { 21153 composeString(t, "PlanDefinitionActionComponent", "title", element.getTitleElement(), -1); 21154 } 21155 if (element.hasDescriptionElement()) { 21156 composeMarkdown(t, "PlanDefinitionActionComponent", "description", element.getDescriptionElement(), -1); 21157 } 21158 if (element.hasTextEquivalentElement()) { 21159 composeMarkdown(t, "PlanDefinitionActionComponent", "textEquivalent", element.getTextEquivalentElement(), -1); 21160 } 21161 if (element.hasPriorityElement()) { 21162 composeEnum(t, "PlanDefinitionActionComponent", "priority", element.getPriorityElement(), -1); 21163 } 21164 if (element.hasCode()) { 21165 composeCodeableConcept(t, "PlanDefinitionActionComponent", "code", element.getCode(), -1); 21166 } 21167 for (int i = 0; i < element.getReason().size(); i++) { 21168 composeCodeableConcept(t, "PlanDefinitionActionComponent", "reason", element.getReason().get(i), i); 21169 } 21170 for (int i = 0; i < element.getDocumentation().size(); i++) { 21171 composeRelatedArtifact(t, "PlanDefinitionActionComponent", "documentation", element.getDocumentation().get(i), i); 21172 } 21173 for (int i = 0; i < element.getGoalId().size(); i++) { 21174 composeId(t, "PlanDefinitionActionComponent", "goalId", element.getGoalId().get(i), i); 21175 } 21176 if (element.hasSubject()) { 21177 composeType(t, "PlanDefinitionActionComponent", "subject", element.getSubject(), -1); 21178 } 21179 for (int i = 0; i < element.getTrigger().size(); i++) { 21180 composeTriggerDefinition(t, "PlanDefinitionActionComponent", "trigger", element.getTrigger().get(i), i); 21181 } 21182 for (int i = 0; i < element.getCondition().size(); i++) { 21183 composePlanDefinitionActionConditionComponent(t, "PlanDefinitionActionComponent", "condition", element.getCondition().get(i), i); 21184 } 21185 for (int i = 0; i < element.getInput().size(); i++) { 21186 composePlanDefinitionActionInputComponent(t, "PlanDefinitionActionComponent", "input", element.getInput().get(i), i); 21187 } 21188 for (int i = 0; i < element.getOutput().size(); i++) { 21189 composePlanDefinitionActionOutputComponent(t, "PlanDefinitionActionComponent", "output", element.getOutput().get(i), i); 21190 } 21191 for (int i = 0; i < element.getRelatedAction().size(); i++) { 21192 composePlanDefinitionActionRelatedActionComponent(t, "PlanDefinitionActionComponent", "relatedAction", element.getRelatedAction().get(i), i); 21193 } 21194 if (element.hasTiming()) { 21195 composeType(t, "PlanDefinitionActionComponent", "timing", element.getTiming(), -1); 21196 } 21197 if (element.hasLocation()) { 21198 composeCodeableReference(t, "PlanDefinitionActionComponent", "location", element.getLocation(), -1); 21199 } 21200 for (int i = 0; i < element.getParticipant().size(); i++) { 21201 composePlanDefinitionActionParticipantComponent(t, "PlanDefinitionActionComponent", "participant", element.getParticipant().get(i), i); 21202 } 21203 if (element.hasType()) { 21204 composeCodeableConcept(t, "PlanDefinitionActionComponent", "type", element.getType(), -1); 21205 } 21206 if (element.hasGroupingBehaviorElement()) { 21207 composeEnum(t, "PlanDefinitionActionComponent", "groupingBehavior", element.getGroupingBehaviorElement(), -1); 21208 } 21209 if (element.hasSelectionBehaviorElement()) { 21210 composeEnum(t, "PlanDefinitionActionComponent", "selectionBehavior", element.getSelectionBehaviorElement(), -1); 21211 } 21212 if (element.hasRequiredBehaviorElement()) { 21213 composeEnum(t, "PlanDefinitionActionComponent", "requiredBehavior", element.getRequiredBehaviorElement(), -1); 21214 } 21215 if (element.hasPrecheckBehaviorElement()) { 21216 composeEnum(t, "PlanDefinitionActionComponent", "precheckBehavior", element.getPrecheckBehaviorElement(), -1); 21217 } 21218 if (element.hasCardinalityBehaviorElement()) { 21219 composeEnum(t, "PlanDefinitionActionComponent", "cardinalityBehavior", element.getCardinalityBehaviorElement(), -1); 21220 } 21221 if (element.hasDefinition()) { 21222 composeType(t, "PlanDefinitionActionComponent", "definition", element.getDefinition(), -1); 21223 } 21224 if (element.hasTransformElement()) { 21225 composeCanonical(t, "PlanDefinitionActionComponent", "transform", element.getTransformElement(), -1); 21226 } 21227 for (int i = 0; i < element.getDynamicValue().size(); i++) { 21228 composePlanDefinitionActionDynamicValueComponent(t, "PlanDefinitionActionComponent", "dynamicValue", element.getDynamicValue().get(i), i); 21229 } 21230 for (int i = 0; i < element.getAction().size(); i++) { 21231 composePlanDefinitionActionComponent(t, "PlanDefinitionActionComponent", "action", element.getAction().get(i), i); 21232 } 21233 } 21234 21235 protected void composePlanDefinitionActionConditionComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionActionConditionComponent element, int index) { 21236 if (element == null) 21237 return; 21238 Complex t; 21239 if (Utilities.noString(parentType)) 21240 t = parent; 21241 else { 21242 t = parent.predicate("fhir:"+name,index > -1); 21243 } 21244 composeBackboneElement(t, "condition", name, element, index); 21245 if (element.hasKindElement()) { 21246 composeEnum(t, "PlanDefinitionActionConditionComponent", "kind", element.getKindElement(), -1); 21247 } 21248 if (element.hasExpression()) { 21249 composeExpression(t, "PlanDefinitionActionConditionComponent", "expression", element.getExpression(), -1); 21250 } 21251 } 21252 21253 protected void composePlanDefinitionActionInputComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionActionInputComponent element, int index) { 21254 if (element == null) 21255 return; 21256 Complex t; 21257 if (Utilities.noString(parentType)) 21258 t = parent; 21259 else { 21260 t = parent.predicate("fhir:"+name,index > -1); 21261 } 21262 composeBackboneElement(t, "input", name, element, index); 21263 if (element.hasTitleElement()) { 21264 composeString(t, "PlanDefinitionActionInputComponent", "title", element.getTitleElement(), -1); 21265 } 21266 if (element.hasRequirement()) { 21267 composeDataRequirement(t, "PlanDefinitionActionInputComponent", "requirement", element.getRequirement(), -1); 21268 } 21269 if (element.hasRelatedDataElement()) { 21270 composeId(t, "PlanDefinitionActionInputComponent", "relatedData", element.getRelatedDataElement(), -1); 21271 } 21272 } 21273 21274 protected void composePlanDefinitionActionOutputComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionActionOutputComponent element, int index) { 21275 if (element == null) 21276 return; 21277 Complex t; 21278 if (Utilities.noString(parentType)) 21279 t = parent; 21280 else { 21281 t = parent.predicate("fhir:"+name,index > -1); 21282 } 21283 composeBackboneElement(t, "output", name, element, index); 21284 if (element.hasTitleElement()) { 21285 composeString(t, "PlanDefinitionActionOutputComponent", "title", element.getTitleElement(), -1); 21286 } 21287 if (element.hasRequirement()) { 21288 composeDataRequirement(t, "PlanDefinitionActionOutputComponent", "requirement", element.getRequirement(), -1); 21289 } 21290 if (element.hasRelatedDataElement()) { 21291 composeString(t, "PlanDefinitionActionOutputComponent", "relatedData", element.getRelatedDataElement(), -1); 21292 } 21293 } 21294 21295 protected void composePlanDefinitionActionRelatedActionComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionActionRelatedActionComponent element, int index) { 21296 if (element == null) 21297 return; 21298 Complex t; 21299 if (Utilities.noString(parentType)) 21300 t = parent; 21301 else { 21302 t = parent.predicate("fhir:"+name,index > -1); 21303 } 21304 composeBackboneElement(t, "relatedAction", name, element, index); 21305 if (element.hasTargetIdElement()) { 21306 composeId(t, "PlanDefinitionActionRelatedActionComponent", "targetId", element.getTargetIdElement(), -1); 21307 } 21308 if (element.hasRelationshipElement()) { 21309 composeEnum(t, "PlanDefinitionActionRelatedActionComponent", "relationship", element.getRelationshipElement(), -1); 21310 } 21311 if (element.hasEndRelationshipElement()) { 21312 composeEnum(t, "PlanDefinitionActionRelatedActionComponent", "endRelationship", element.getEndRelationshipElement(), -1); 21313 } 21314 if (element.hasOffset()) { 21315 composeType(t, "PlanDefinitionActionRelatedActionComponent", "offset", element.getOffset(), -1); 21316 } 21317 } 21318 21319 protected void composePlanDefinitionActionParticipantComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionActionParticipantComponent element, int index) { 21320 if (element == null) 21321 return; 21322 Complex t; 21323 if (Utilities.noString(parentType)) 21324 t = parent; 21325 else { 21326 t = parent.predicate("fhir:"+name,index > -1); 21327 } 21328 composeBackboneElement(t, "participant", name, element, index); 21329 if (element.hasActorIdElement()) { 21330 composeString(t, "PlanDefinitionActionParticipantComponent", "actorId", element.getActorIdElement(), -1); 21331 } 21332 if (element.hasTypeElement()) { 21333 composeEnum(t, "PlanDefinitionActionParticipantComponent", "type", element.getTypeElement(), -1); 21334 } 21335 if (element.hasTypeCanonicalElement()) { 21336 composeCanonical(t, "PlanDefinitionActionParticipantComponent", "typeCanonical", element.getTypeCanonicalElement(), -1); 21337 } 21338 if (element.hasTypeReference()) { 21339 composeReference(t, "PlanDefinitionActionParticipantComponent", "typeReference", element.getTypeReference(), -1); 21340 } 21341 if (element.hasRole()) { 21342 composeCodeableConcept(t, "PlanDefinitionActionParticipantComponent", "role", element.getRole(), -1); 21343 } 21344 if (element.hasFunction()) { 21345 composeCodeableConcept(t, "PlanDefinitionActionParticipantComponent", "function", element.getFunction(), -1); 21346 } 21347 } 21348 21349 protected void composePlanDefinitionActionDynamicValueComponent(Complex parent, String parentType, String name, PlanDefinition.PlanDefinitionActionDynamicValueComponent element, int index) { 21350 if (element == null) 21351 return; 21352 Complex t; 21353 if (Utilities.noString(parentType)) 21354 t = parent; 21355 else { 21356 t = parent.predicate("fhir:"+name,index > -1); 21357 } 21358 composeBackboneElement(t, "dynamicValue", name, element, index); 21359 if (element.hasPathElement()) { 21360 composeString(t, "PlanDefinitionActionDynamicValueComponent", "path", element.getPathElement(), -1); 21361 } 21362 if (element.hasExpression()) { 21363 composeExpression(t, "PlanDefinitionActionDynamicValueComponent", "expression", element.getExpression(), -1); 21364 } 21365 } 21366 21367 protected void composePractitioner(Complex parent, String parentType, String name, Practitioner element, int index) { 21368 if (element == null) 21369 return; 21370 Complex t; 21371 if (Utilities.noString(parentType)) 21372 t = parent; 21373 else { 21374 t = parent.predicate("fhir:"+name,index > -1); 21375 } 21376 composeDomainResource(t, "Practitioner", name, element, index); 21377 for (int i = 0; i < element.getIdentifier().size(); i++) { 21378 composeIdentifier(t, "Practitioner", "identifier", element.getIdentifier().get(i), i); 21379 } 21380 if (element.hasActiveElement()) { 21381 composeBoolean(t, "Practitioner", "active", element.getActiveElement(), -1); 21382 } 21383 for (int i = 0; i < element.getName().size(); i++) { 21384 composeHumanName(t, "Practitioner", "name", element.getName().get(i), i); 21385 } 21386 for (int i = 0; i < element.getTelecom().size(); i++) { 21387 composeContactPoint(t, "Practitioner", "telecom", element.getTelecom().get(i), i); 21388 } 21389 if (element.hasGenderElement()) { 21390 composeEnum(t, "Practitioner", "gender", element.getGenderElement(), -1); 21391 } 21392 if (element.hasBirthDateElement()) { 21393 composeDate(t, "Practitioner", "birthDate", element.getBirthDateElement(), -1); 21394 } 21395 if (element.hasDeceased()) { 21396 composeType(t, "Practitioner", "deceased", element.getDeceased(), -1); 21397 } 21398 for (int i = 0; i < element.getAddress().size(); i++) { 21399 composeAddress(t, "Practitioner", "address", element.getAddress().get(i), i); 21400 } 21401 for (int i = 0; i < element.getPhoto().size(); i++) { 21402 composeAttachment(t, "Practitioner", "photo", element.getPhoto().get(i), i); 21403 } 21404 for (int i = 0; i < element.getQualification().size(); i++) { 21405 composePractitionerQualificationComponent(t, "Practitioner", "qualification", element.getQualification().get(i), i); 21406 } 21407 for (int i = 0; i < element.getCommunication().size(); i++) { 21408 composePractitionerCommunicationComponent(t, "Practitioner", "communication", element.getCommunication().get(i), i); 21409 } 21410 } 21411 21412 protected void composePractitionerQualificationComponent(Complex parent, String parentType, String name, Practitioner.PractitionerQualificationComponent element, int index) { 21413 if (element == null) 21414 return; 21415 Complex t; 21416 if (Utilities.noString(parentType)) 21417 t = parent; 21418 else { 21419 t = parent.predicate("fhir:"+name,index > -1); 21420 } 21421 composeBackboneElement(t, "qualification", name, element, index); 21422 for (int i = 0; i < element.getIdentifier().size(); i++) { 21423 composeIdentifier(t, "PractitionerQualificationComponent", "identifier", element.getIdentifier().get(i), i); 21424 } 21425 if (element.hasCode()) { 21426 composeCodeableConcept(t, "PractitionerQualificationComponent", "code", element.getCode(), -1); 21427 } 21428 if (element.hasPeriod()) { 21429 composePeriod(t, "PractitionerQualificationComponent", "period", element.getPeriod(), -1); 21430 } 21431 if (element.hasIssuer()) { 21432 composeReference(t, "PractitionerQualificationComponent", "issuer", element.getIssuer(), -1); 21433 } 21434 } 21435 21436 protected void composePractitionerCommunicationComponent(Complex parent, String parentType, String name, Practitioner.PractitionerCommunicationComponent element, int index) { 21437 if (element == null) 21438 return; 21439 Complex t; 21440 if (Utilities.noString(parentType)) 21441 t = parent; 21442 else { 21443 t = parent.predicate("fhir:"+name,index > -1); 21444 } 21445 composeBackboneElement(t, "communication", name, element, index); 21446 if (element.hasLanguage()) { 21447 composeCodeableConcept(t, "PractitionerCommunicationComponent", "language", element.getLanguage(), -1); 21448 } 21449 if (element.hasPreferredElement()) { 21450 composeBoolean(t, "PractitionerCommunicationComponent", "preferred", element.getPreferredElement(), -1); 21451 } 21452 } 21453 21454 protected void composePractitionerRole(Complex parent, String parentType, String name, PractitionerRole element, int index) { 21455 if (element == null) 21456 return; 21457 Complex t; 21458 if (Utilities.noString(parentType)) 21459 t = parent; 21460 else { 21461 t = parent.predicate("fhir:"+name,index > -1); 21462 } 21463 composeDomainResource(t, "PractitionerRole", name, element, index); 21464 for (int i = 0; i < element.getIdentifier().size(); i++) { 21465 composeIdentifier(t, "PractitionerRole", "identifier", element.getIdentifier().get(i), i); 21466 } 21467 if (element.hasActiveElement()) { 21468 composeBoolean(t, "PractitionerRole", "active", element.getActiveElement(), -1); 21469 } 21470 if (element.hasPeriod()) { 21471 composePeriod(t, "PractitionerRole", "period", element.getPeriod(), -1); 21472 } 21473 if (element.hasPractitioner()) { 21474 composeReference(t, "PractitionerRole", "practitioner", element.getPractitioner(), -1); 21475 } 21476 if (element.hasOrganization()) { 21477 composeReference(t, "PractitionerRole", "organization", element.getOrganization(), -1); 21478 } 21479 for (int i = 0; i < element.getCode().size(); i++) { 21480 composeCodeableConcept(t, "PractitionerRole", "code", element.getCode().get(i), i); 21481 } 21482 for (int i = 0; i < element.getSpecialty().size(); i++) { 21483 composeCodeableConcept(t, "PractitionerRole", "specialty", element.getSpecialty().get(i), i); 21484 } 21485 for (int i = 0; i < element.getLocation().size(); i++) { 21486 composeReference(t, "PractitionerRole", "location", element.getLocation().get(i), i); 21487 } 21488 for (int i = 0; i < element.getHealthcareService().size(); i++) { 21489 composeReference(t, "PractitionerRole", "healthcareService", element.getHealthcareService().get(i), i); 21490 } 21491 for (int i = 0; i < element.getContact().size(); i++) { 21492 composeExtendedContactDetail(t, "PractitionerRole", "contact", element.getContact().get(i), i); 21493 } 21494 for (int i = 0; i < element.getCharacteristic().size(); i++) { 21495 composeCodeableConcept(t, "PractitionerRole", "characteristic", element.getCharacteristic().get(i), i); 21496 } 21497 for (int i = 0; i < element.getCommunication().size(); i++) { 21498 composeCodeableConcept(t, "PractitionerRole", "communication", element.getCommunication().get(i), i); 21499 } 21500 for (int i = 0; i < element.getAvailability().size(); i++) { 21501 composeAvailability(t, "PractitionerRole", "availability", element.getAvailability().get(i), i); 21502 } 21503 for (int i = 0; i < element.getEndpoint().size(); i++) { 21504 composeReference(t, "PractitionerRole", "endpoint", element.getEndpoint().get(i), i); 21505 } 21506 } 21507 21508 protected void composeProcedure(Complex parent, String parentType, String name, Procedure element, int index) { 21509 if (element == null) 21510 return; 21511 Complex t; 21512 if (Utilities.noString(parentType)) 21513 t = parent; 21514 else { 21515 t = parent.predicate("fhir:"+name,index > -1); 21516 } 21517 composeDomainResource(t, "Procedure", name, element, index); 21518 for (int i = 0; i < element.getIdentifier().size(); i++) { 21519 composeIdentifier(t, "Procedure", "identifier", element.getIdentifier().get(i), i); 21520 } 21521 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { 21522 composeCanonical(t, "Procedure", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 21523 } 21524 for (int i = 0; i < element.getInstantiatesUri().size(); i++) { 21525 composeUri(t, "Procedure", "instantiatesUri", element.getInstantiatesUri().get(i), i); 21526 } 21527 for (int i = 0; i < element.getBasedOn().size(); i++) { 21528 composeReference(t, "Procedure", "basedOn", element.getBasedOn().get(i), i); 21529 } 21530 for (int i = 0; i < element.getPartOf().size(); i++) { 21531 composeReference(t, "Procedure", "partOf", element.getPartOf().get(i), i); 21532 } 21533 if (element.hasStatusElement()) { 21534 composeEnum(t, "Procedure", "status", element.getStatusElement(), -1); 21535 } 21536 if (element.hasStatusReason()) { 21537 composeCodeableConcept(t, "Procedure", "statusReason", element.getStatusReason(), -1); 21538 } 21539 for (int i = 0; i < element.getCategory().size(); i++) { 21540 composeCodeableConcept(t, "Procedure", "category", element.getCategory().get(i), i); 21541 } 21542 if (element.hasCode()) { 21543 composeCodeableConcept(t, "Procedure", "code", element.getCode(), -1); 21544 } 21545 if (element.hasSubject()) { 21546 composeReference(t, "Procedure", "subject", element.getSubject(), -1); 21547 } 21548 if (element.hasFocus()) { 21549 composeReference(t, "Procedure", "focus", element.getFocus(), -1); 21550 } 21551 if (element.hasEncounter()) { 21552 composeReference(t, "Procedure", "encounter", element.getEncounter(), -1); 21553 } 21554 if (element.hasOccurrence()) { 21555 composeType(t, "Procedure", "occurrence", element.getOccurrence(), -1); 21556 } 21557 if (element.hasRecordedElement()) { 21558 composeDateTime(t, "Procedure", "recorded", element.getRecordedElement(), -1); 21559 } 21560 if (element.hasRecorder()) { 21561 composeReference(t, "Procedure", "recorder", element.getRecorder(), -1); 21562 } 21563 if (element.hasReported()) { 21564 composeType(t, "Procedure", "reported", element.getReported(), -1); 21565 } 21566 for (int i = 0; i < element.getPerformer().size(); i++) { 21567 composeProcedurePerformerComponent(t, "Procedure", "performer", element.getPerformer().get(i), i); 21568 } 21569 if (element.hasLocation()) { 21570 composeReference(t, "Procedure", "location", element.getLocation(), -1); 21571 } 21572 for (int i = 0; i < element.getReason().size(); i++) { 21573 composeCodeableReference(t, "Procedure", "reason", element.getReason().get(i), i); 21574 } 21575 for (int i = 0; i < element.getBodySite().size(); i++) { 21576 composeCodeableConcept(t, "Procedure", "bodySite", element.getBodySite().get(i), i); 21577 } 21578 if (element.hasOutcome()) { 21579 composeCodeableConcept(t, "Procedure", "outcome", element.getOutcome(), -1); 21580 } 21581 for (int i = 0; i < element.getReport().size(); i++) { 21582 composeReference(t, "Procedure", "report", element.getReport().get(i), i); 21583 } 21584 for (int i = 0; i < element.getComplication().size(); i++) { 21585 composeCodeableReference(t, "Procedure", "complication", element.getComplication().get(i), i); 21586 } 21587 for (int i = 0; i < element.getFollowUp().size(); i++) { 21588 composeCodeableConcept(t, "Procedure", "followUp", element.getFollowUp().get(i), i); 21589 } 21590 for (int i = 0; i < element.getNote().size(); i++) { 21591 composeAnnotation(t, "Procedure", "note", element.getNote().get(i), i); 21592 } 21593 for (int i = 0; i < element.getFocalDevice().size(); i++) { 21594 composeProcedureFocalDeviceComponent(t, "Procedure", "focalDevice", element.getFocalDevice().get(i), i); 21595 } 21596 for (int i = 0; i < element.getUsed().size(); i++) { 21597 composeCodeableReference(t, "Procedure", "used", element.getUsed().get(i), i); 21598 } 21599 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 21600 composeReference(t, "Procedure", "supportingInfo", element.getSupportingInfo().get(i), i); 21601 } 21602 } 21603 21604 protected void composeProcedurePerformerComponent(Complex parent, String parentType, String name, Procedure.ProcedurePerformerComponent element, int index) { 21605 if (element == null) 21606 return; 21607 Complex t; 21608 if (Utilities.noString(parentType)) 21609 t = parent; 21610 else { 21611 t = parent.predicate("fhir:"+name,index > -1); 21612 } 21613 composeBackboneElement(t, "performer", name, element, index); 21614 if (element.hasFunction()) { 21615 composeCodeableConcept(t, "ProcedurePerformerComponent", "function", element.getFunction(), -1); 21616 } 21617 if (element.hasActor()) { 21618 composeReference(t, "ProcedurePerformerComponent", "actor", element.getActor(), -1); 21619 } 21620 if (element.hasOnBehalfOf()) { 21621 composeReference(t, "ProcedurePerformerComponent", "onBehalfOf", element.getOnBehalfOf(), -1); 21622 } 21623 if (element.hasPeriod()) { 21624 composePeriod(t, "ProcedurePerformerComponent", "period", element.getPeriod(), -1); 21625 } 21626 } 21627 21628 protected void composeProcedureFocalDeviceComponent(Complex parent, String parentType, String name, Procedure.ProcedureFocalDeviceComponent element, int index) { 21629 if (element == null) 21630 return; 21631 Complex t; 21632 if (Utilities.noString(parentType)) 21633 t = parent; 21634 else { 21635 t = parent.predicate("fhir:"+name,index > -1); 21636 } 21637 composeBackboneElement(t, "focalDevice", name, element, index); 21638 if (element.hasAction()) { 21639 composeCodeableConcept(t, "ProcedureFocalDeviceComponent", "action", element.getAction(), -1); 21640 } 21641 if (element.hasManipulated()) { 21642 composeReference(t, "ProcedureFocalDeviceComponent", "manipulated", element.getManipulated(), -1); 21643 } 21644 } 21645 21646 protected void composeProvenance(Complex parent, String parentType, String name, Provenance element, int index) { 21647 if (element == null) 21648 return; 21649 Complex t; 21650 if (Utilities.noString(parentType)) 21651 t = parent; 21652 else { 21653 t = parent.predicate("fhir:"+name,index > -1); 21654 } 21655 composeDomainResource(t, "Provenance", name, element, index); 21656 for (int i = 0; i < element.getTarget().size(); i++) { 21657 composeReference(t, "Provenance", "target", element.getTarget().get(i), i); 21658 } 21659 if (element.hasOccurred()) { 21660 composeType(t, "Provenance", "occurred", element.getOccurred(), -1); 21661 } 21662 if (element.hasRecordedElement()) { 21663 composeInstant(t, "Provenance", "recorded", element.getRecordedElement(), -1); 21664 } 21665 for (int i = 0; i < element.getPolicy().size(); i++) { 21666 composeUri(t, "Provenance", "policy", element.getPolicy().get(i), i); 21667 } 21668 if (element.hasLocation()) { 21669 composeReference(t, "Provenance", "location", element.getLocation(), -1); 21670 } 21671 for (int i = 0; i < element.getAuthorization().size(); i++) { 21672 composeCodeableReference(t, "Provenance", "authorization", element.getAuthorization().get(i), i); 21673 } 21674 if (element.hasActivity()) { 21675 composeCodeableConcept(t, "Provenance", "activity", element.getActivity(), -1); 21676 } 21677 for (int i = 0; i < element.getBasedOn().size(); i++) { 21678 composeReference(t, "Provenance", "basedOn", element.getBasedOn().get(i), i); 21679 } 21680 if (element.hasPatient()) { 21681 composeReference(t, "Provenance", "patient", element.getPatient(), -1); 21682 } 21683 if (element.hasEncounter()) { 21684 composeReference(t, "Provenance", "encounter", element.getEncounter(), -1); 21685 } 21686 for (int i = 0; i < element.getAgent().size(); i++) { 21687 composeProvenanceAgentComponent(t, "Provenance", "agent", element.getAgent().get(i), i); 21688 } 21689 for (int i = 0; i < element.getEntity().size(); i++) { 21690 composeProvenanceEntityComponent(t, "Provenance", "entity", element.getEntity().get(i), i); 21691 } 21692 for (int i = 0; i < element.getSignature().size(); i++) { 21693 composeSignature(t, "Provenance", "signature", element.getSignature().get(i), i); 21694 } 21695 } 21696 21697 protected void composeProvenanceAgentComponent(Complex parent, String parentType, String name, Provenance.ProvenanceAgentComponent element, int index) { 21698 if (element == null) 21699 return; 21700 Complex t; 21701 if (Utilities.noString(parentType)) 21702 t = parent; 21703 else { 21704 t = parent.predicate("fhir:"+name,index > -1); 21705 } 21706 composeBackboneElement(t, "agent", name, element, index); 21707 if (element.hasType()) { 21708 composeCodeableConcept(t, "ProvenanceAgentComponent", "type", element.getType(), -1); 21709 } 21710 for (int i = 0; i < element.getRole().size(); i++) { 21711 composeCodeableConcept(t, "ProvenanceAgentComponent", "role", element.getRole().get(i), i); 21712 } 21713 if (element.hasWho()) { 21714 composeReference(t, "ProvenanceAgentComponent", "who", element.getWho(), -1); 21715 } 21716 if (element.hasOnBehalfOf()) { 21717 composeReference(t, "ProvenanceAgentComponent", "onBehalfOf", element.getOnBehalfOf(), -1); 21718 } 21719 } 21720 21721 protected void composeProvenanceEntityComponent(Complex parent, String parentType, String name, Provenance.ProvenanceEntityComponent element, int index) { 21722 if (element == null) 21723 return; 21724 Complex t; 21725 if (Utilities.noString(parentType)) 21726 t = parent; 21727 else { 21728 t = parent.predicate("fhir:"+name,index > -1); 21729 } 21730 composeBackboneElement(t, "entity", name, element, index); 21731 if (element.hasRoleElement()) { 21732 composeEnum(t, "ProvenanceEntityComponent", "role", element.getRoleElement(), -1); 21733 } 21734 if (element.hasWhat()) { 21735 composeReference(t, "ProvenanceEntityComponent", "what", element.getWhat(), -1); 21736 } 21737 for (int i = 0; i < element.getAgent().size(); i++) { 21738 composeProvenanceAgentComponent(t, "ProvenanceEntityComponent", "agent", element.getAgent().get(i), i); 21739 } 21740 } 21741 21742 protected void composeQuestionnaire(Complex parent, String parentType, String name, Questionnaire element, int index) { 21743 if (element == null) 21744 return; 21745 Complex t; 21746 if (Utilities.noString(parentType)) 21747 t = parent; 21748 else { 21749 t = parent.predicate("fhir:"+name,index > -1); 21750 } 21751 composeMetadataResource(t, "Questionnaire", name, element, index); 21752 if (element.hasUrlElement()) { 21753 composeUri(t, "Questionnaire", "url", element.getUrlElement(), -1); 21754 } 21755 for (int i = 0; i < element.getIdentifier().size(); i++) { 21756 composeIdentifier(t, "Questionnaire", "identifier", element.getIdentifier().get(i), i); 21757 } 21758 if (element.hasVersionElement()) { 21759 composeString(t, "Questionnaire", "version", element.getVersionElement(), -1); 21760 } 21761 if (element.hasVersionAlgorithm()) { 21762 composeType(t, "Questionnaire", "versionAlgorithm", element.getVersionAlgorithm(), -1); 21763 } 21764 if (element.hasNameElement()) { 21765 composeString(t, "Questionnaire", "name", element.getNameElement(), -1); 21766 } 21767 if (element.hasTitleElement()) { 21768 composeString(t, "Questionnaire", "title", element.getTitleElement(), -1); 21769 } 21770 for (int i = 0; i < element.getDerivedFrom().size(); i++) { 21771 composeCanonical(t, "Questionnaire", "derivedFrom", element.getDerivedFrom().get(i), i); 21772 } 21773 if (element.hasStatusElement()) { 21774 composeEnum(t, "Questionnaire", "status", element.getStatusElement(), -1); 21775 } 21776 if (element.hasExperimentalElement()) { 21777 composeBoolean(t, "Questionnaire", "experimental", element.getExperimentalElement(), -1); 21778 } 21779 for (int i = 0; i < element.getSubjectType().size(); i++) { 21780 composeCode(t, "Questionnaire", "subjectType", element.getSubjectType().get(i), i); 21781 } 21782 if (element.hasDateElement()) { 21783 composeDateTime(t, "Questionnaire", "date", element.getDateElement(), -1); 21784 } 21785 if (element.hasPublisherElement()) { 21786 composeString(t, "Questionnaire", "publisher", element.getPublisherElement(), -1); 21787 } 21788 for (int i = 0; i < element.getContact().size(); i++) { 21789 composeContactDetail(t, "Questionnaire", "contact", element.getContact().get(i), i); 21790 } 21791 if (element.hasDescriptionElement()) { 21792 composeMarkdown(t, "Questionnaire", "description", element.getDescriptionElement(), -1); 21793 } 21794 for (int i = 0; i < element.getUseContext().size(); i++) { 21795 composeUsageContext(t, "Questionnaire", "useContext", element.getUseContext().get(i), i); 21796 } 21797 for (int i = 0; i < element.getJurisdiction().size(); i++) { 21798 composeCodeableConcept(t, "Questionnaire", "jurisdiction", element.getJurisdiction().get(i), i); 21799 } 21800 if (element.hasPurposeElement()) { 21801 composeMarkdown(t, "Questionnaire", "purpose", element.getPurposeElement(), -1); 21802 } 21803 if (element.hasCopyrightElement()) { 21804 composeMarkdown(t, "Questionnaire", "copyright", element.getCopyrightElement(), -1); 21805 } 21806 if (element.hasCopyrightLabelElement()) { 21807 composeString(t, "Questionnaire", "copyrightLabel", element.getCopyrightLabelElement(), -1); 21808 } 21809 if (element.hasApprovalDateElement()) { 21810 composeDate(t, "Questionnaire", "approvalDate", element.getApprovalDateElement(), -1); 21811 } 21812 if (element.hasLastReviewDateElement()) { 21813 composeDate(t, "Questionnaire", "lastReviewDate", element.getLastReviewDateElement(), -1); 21814 } 21815 if (element.hasEffectivePeriod()) { 21816 composePeriod(t, "Questionnaire", "effectivePeriod", element.getEffectivePeriod(), -1); 21817 } 21818 for (int i = 0; i < element.getCode().size(); i++) { 21819 composeCoding(t, "Questionnaire", "code", element.getCode().get(i), i); 21820 } 21821 for (int i = 0; i < element.getItem().size(); i++) { 21822 composeQuestionnaireItemComponent(t, "Questionnaire", "item", element.getItem().get(i), i); 21823 } 21824 } 21825 21826 protected void composeQuestionnaireItemComponent(Complex parent, String parentType, String name, Questionnaire.QuestionnaireItemComponent element, int index) { 21827 if (element == null) 21828 return; 21829 Complex t; 21830 if (Utilities.noString(parentType)) 21831 t = parent; 21832 else { 21833 t = parent.predicate("fhir:"+name,index > -1); 21834 } 21835 composeBackboneElement(t, "item", name, element, index); 21836 if (element.hasLinkIdElement()) { 21837 composeString(t, "QuestionnaireItemComponent", "linkId", element.getLinkIdElement(), -1); 21838 } 21839 if (element.hasDefinitionElement()) { 21840 composeUri(t, "QuestionnaireItemComponent", "definition", element.getDefinitionElement(), -1); 21841 } 21842 for (int i = 0; i < element.getCode().size(); i++) { 21843 composeCoding(t, "QuestionnaireItemComponent", "code", element.getCode().get(i), i); 21844 } 21845 if (element.hasPrefixElement()) { 21846 composeString(t, "QuestionnaireItemComponent", "prefix", element.getPrefixElement(), -1); 21847 } 21848 if (element.hasTextElement()) { 21849 composeString(t, "QuestionnaireItemComponent", "text", element.getTextElement(), -1); 21850 } 21851 if (element.hasTypeElement()) { 21852 composeEnum(t, "QuestionnaireItemComponent", "type", element.getTypeElement(), -1); 21853 } 21854 for (int i = 0; i < element.getEnableWhen().size(); i++) { 21855 composeQuestionnaireItemEnableWhenComponent(t, "QuestionnaireItemComponent", "enableWhen", element.getEnableWhen().get(i), i); 21856 } 21857 if (element.hasEnableBehaviorElement()) { 21858 composeEnum(t, "QuestionnaireItemComponent", "enableBehavior", element.getEnableBehaviorElement(), -1); 21859 } 21860 if (element.hasDisabledDisplayElement()) { 21861 composeEnum(t, "QuestionnaireItemComponent", "disabledDisplay", element.getDisabledDisplayElement(), -1); 21862 } 21863 if (element.hasRequiredElement()) { 21864 composeBoolean(t, "QuestionnaireItemComponent", "required", element.getRequiredElement(), -1); 21865 } 21866 if (element.hasRepeatsElement()) { 21867 composeBoolean(t, "QuestionnaireItemComponent", "repeats", element.getRepeatsElement(), -1); 21868 } 21869 if (element.hasReadOnlyElement()) { 21870 composeBoolean(t, "QuestionnaireItemComponent", "readOnly", element.getReadOnlyElement(), -1); 21871 } 21872 if (element.hasMaxLengthElement()) { 21873 composeInteger(t, "QuestionnaireItemComponent", "maxLength", element.getMaxLengthElement(), -1); 21874 } 21875 if (element.hasAnswerConstraintElement()) { 21876 composeEnum(t, "QuestionnaireItemComponent", "answerConstraint", element.getAnswerConstraintElement(), -1); 21877 } 21878 if (element.hasAnswerValueSetElement()) { 21879 composeCanonical(t, "QuestionnaireItemComponent", "answerValueSet", element.getAnswerValueSetElement(), -1); 21880 } 21881 for (int i = 0; i < element.getAnswerOption().size(); i++) { 21882 composeQuestionnaireItemAnswerOptionComponent(t, "QuestionnaireItemComponent", "answerOption", element.getAnswerOption().get(i), i); 21883 } 21884 for (int i = 0; i < element.getInitial().size(); i++) { 21885 composeQuestionnaireItemInitialComponent(t, "QuestionnaireItemComponent", "initial", element.getInitial().get(i), i); 21886 } 21887 for (int i = 0; i < element.getItem().size(); i++) { 21888 composeQuestionnaireItemComponent(t, "QuestionnaireItemComponent", "item", element.getItem().get(i), i); 21889 } 21890 } 21891 21892 protected void composeQuestionnaireItemEnableWhenComponent(Complex parent, String parentType, String name, Questionnaire.QuestionnaireItemEnableWhenComponent element, int index) { 21893 if (element == null) 21894 return; 21895 Complex t; 21896 if (Utilities.noString(parentType)) 21897 t = parent; 21898 else { 21899 t = parent.predicate("fhir:"+name,index > -1); 21900 } 21901 composeBackboneElement(t, "enableWhen", name, element, index); 21902 if (element.hasQuestionElement()) { 21903 composeString(t, "QuestionnaireItemEnableWhenComponent", "question", element.getQuestionElement(), -1); 21904 } 21905 if (element.hasOperatorElement()) { 21906 composeEnum(t, "QuestionnaireItemEnableWhenComponent", "operator", element.getOperatorElement(), -1); 21907 } 21908 if (element.hasAnswer()) { 21909 composeType(t, "QuestionnaireItemEnableWhenComponent", "answer", element.getAnswer(), -1); 21910 } 21911 } 21912 21913 protected void composeQuestionnaireItemAnswerOptionComponent(Complex parent, String parentType, String name, Questionnaire.QuestionnaireItemAnswerOptionComponent element, int index) { 21914 if (element == null) 21915 return; 21916 Complex t; 21917 if (Utilities.noString(parentType)) 21918 t = parent; 21919 else { 21920 t = parent.predicate("fhir:"+name,index > -1); 21921 } 21922 composeBackboneElement(t, "answerOption", name, element, index); 21923 if (element.hasValue()) { 21924 composeType(t, "QuestionnaireItemAnswerOptionComponent", "value", element.getValue(), -1); 21925 } 21926 if (element.hasInitialSelectedElement()) { 21927 composeBoolean(t, "QuestionnaireItemAnswerOptionComponent", "initialSelected", element.getInitialSelectedElement(), -1); 21928 } 21929 } 21930 21931 protected void composeQuestionnaireItemInitialComponent(Complex parent, String parentType, String name, Questionnaire.QuestionnaireItemInitialComponent element, int index) { 21932 if (element == null) 21933 return; 21934 Complex t; 21935 if (Utilities.noString(parentType)) 21936 t = parent; 21937 else { 21938 t = parent.predicate("fhir:"+name,index > -1); 21939 } 21940 composeBackboneElement(t, "initial", name, element, index); 21941 if (element.hasValue()) { 21942 composeType(t, "QuestionnaireItemInitialComponent", "value", element.getValue(), -1); 21943 } 21944 } 21945 21946 protected void composeQuestionnaireResponse(Complex parent, String parentType, String name, QuestionnaireResponse element, int index) { 21947 if (element == null) 21948 return; 21949 Complex t; 21950 if (Utilities.noString(parentType)) 21951 t = parent; 21952 else { 21953 t = parent.predicate("fhir:"+name,index > -1); 21954 } 21955 composeDomainResource(t, "QuestionnaireResponse", name, element, index); 21956 for (int i = 0; i < element.getIdentifier().size(); i++) { 21957 composeIdentifier(t, "QuestionnaireResponse", "identifier", element.getIdentifier().get(i), i); 21958 } 21959 for (int i = 0; i < element.getBasedOn().size(); i++) { 21960 composeReference(t, "QuestionnaireResponse", "basedOn", element.getBasedOn().get(i), i); 21961 } 21962 for (int i = 0; i < element.getPartOf().size(); i++) { 21963 composeReference(t, "QuestionnaireResponse", "partOf", element.getPartOf().get(i), i); 21964 } 21965 if (element.hasQuestionnaireElement()) { 21966 composeCanonical(t, "QuestionnaireResponse", "questionnaire", element.getQuestionnaireElement(), -1); 21967 } 21968 if (element.hasStatusElement()) { 21969 composeEnum(t, "QuestionnaireResponse", "status", element.getStatusElement(), -1); 21970 } 21971 if (element.hasSubject()) { 21972 composeReference(t, "QuestionnaireResponse", "subject", element.getSubject(), -1); 21973 } 21974 if (element.hasEncounter()) { 21975 composeReference(t, "QuestionnaireResponse", "encounter", element.getEncounter(), -1); 21976 } 21977 if (element.hasAuthoredElement()) { 21978 composeDateTime(t, "QuestionnaireResponse", "authored", element.getAuthoredElement(), -1); 21979 } 21980 if (element.hasAuthor()) { 21981 composeReference(t, "QuestionnaireResponse", "author", element.getAuthor(), -1); 21982 } 21983 if (element.hasSource()) { 21984 composeReference(t, "QuestionnaireResponse", "source", element.getSource(), -1); 21985 } 21986 for (int i = 0; i < element.getItem().size(); i++) { 21987 composeQuestionnaireResponseItemComponent(t, "QuestionnaireResponse", "item", element.getItem().get(i), i); 21988 } 21989 } 21990 21991 protected void composeQuestionnaireResponseItemComponent(Complex parent, String parentType, String name, QuestionnaireResponse.QuestionnaireResponseItemComponent element, int index) { 21992 if (element == null) 21993 return; 21994 Complex t; 21995 if (Utilities.noString(parentType)) 21996 t = parent; 21997 else { 21998 t = parent.predicate("fhir:"+name,index > -1); 21999 } 22000 composeBackboneElement(t, "item", name, element, index); 22001 if (element.hasLinkIdElement()) { 22002 composeString(t, "QuestionnaireResponseItemComponent", "linkId", element.getLinkIdElement(), -1); 22003 } 22004 if (element.hasDefinitionElement()) { 22005 composeUri(t, "QuestionnaireResponseItemComponent", "definition", element.getDefinitionElement(), -1); 22006 } 22007 if (element.hasTextElement()) { 22008 composeString(t, "QuestionnaireResponseItemComponent", "text", element.getTextElement(), -1); 22009 } 22010 for (int i = 0; i < element.getAnswer().size(); i++) { 22011 composeQuestionnaireResponseItemAnswerComponent(t, "QuestionnaireResponseItemComponent", "answer", element.getAnswer().get(i), i); 22012 } 22013 for (int i = 0; i < element.getItem().size(); i++) { 22014 composeQuestionnaireResponseItemComponent(t, "QuestionnaireResponseItemComponent", "item", element.getItem().get(i), i); 22015 } 22016 } 22017 22018 protected void composeQuestionnaireResponseItemAnswerComponent(Complex parent, String parentType, String name, QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent element, int index) { 22019 if (element == null) 22020 return; 22021 Complex t; 22022 if (Utilities.noString(parentType)) 22023 t = parent; 22024 else { 22025 t = parent.predicate("fhir:"+name,index > -1); 22026 } 22027 composeBackboneElement(t, "answer", name, element, index); 22028 if (element.hasValue()) { 22029 composeType(t, "QuestionnaireResponseItemAnswerComponent", "value", element.getValue(), -1); 22030 } 22031 for (int i = 0; i < element.getItem().size(); i++) { 22032 composeQuestionnaireResponseItemComponent(t, "QuestionnaireResponseItemAnswerComponent", "item", element.getItem().get(i), i); 22033 } 22034 } 22035 22036 protected void composeRegulatedAuthorization(Complex parent, String parentType, String name, RegulatedAuthorization element, int index) { 22037 if (element == null) 22038 return; 22039 Complex t; 22040 if (Utilities.noString(parentType)) 22041 t = parent; 22042 else { 22043 t = parent.predicate("fhir:"+name,index > -1); 22044 } 22045 composeDomainResource(t, "RegulatedAuthorization", name, element, index); 22046 for (int i = 0; i < element.getIdentifier().size(); i++) { 22047 composeIdentifier(t, "RegulatedAuthorization", "identifier", element.getIdentifier().get(i), i); 22048 } 22049 for (int i = 0; i < element.getSubject().size(); i++) { 22050 composeReference(t, "RegulatedAuthorization", "subject", element.getSubject().get(i), i); 22051 } 22052 if (element.hasType()) { 22053 composeCodeableConcept(t, "RegulatedAuthorization", "type", element.getType(), -1); 22054 } 22055 if (element.hasDescriptionElement()) { 22056 composeMarkdown(t, "RegulatedAuthorization", "description", element.getDescriptionElement(), -1); 22057 } 22058 for (int i = 0; i < element.getRegion().size(); i++) { 22059 composeCodeableConcept(t, "RegulatedAuthorization", "region", element.getRegion().get(i), i); 22060 } 22061 if (element.hasStatus()) { 22062 composeCodeableConcept(t, "RegulatedAuthorization", "status", element.getStatus(), -1); 22063 } 22064 if (element.hasStatusDateElement()) { 22065 composeDateTime(t, "RegulatedAuthorization", "statusDate", element.getStatusDateElement(), -1); 22066 } 22067 if (element.hasValidityPeriod()) { 22068 composePeriod(t, "RegulatedAuthorization", "validityPeriod", element.getValidityPeriod(), -1); 22069 } 22070 for (int i = 0; i < element.getIndication().size(); i++) { 22071 composeCodeableReference(t, "RegulatedAuthorization", "indication", element.getIndication().get(i), i); 22072 } 22073 if (element.hasIntendedUse()) { 22074 composeCodeableConcept(t, "RegulatedAuthorization", "intendedUse", element.getIntendedUse(), -1); 22075 } 22076 for (int i = 0; i < element.getBasis().size(); i++) { 22077 composeCodeableConcept(t, "RegulatedAuthorization", "basis", element.getBasis().get(i), i); 22078 } 22079 if (element.hasHolder()) { 22080 composeReference(t, "RegulatedAuthorization", "holder", element.getHolder(), -1); 22081 } 22082 if (element.hasRegulator()) { 22083 composeReference(t, "RegulatedAuthorization", "regulator", element.getRegulator(), -1); 22084 } 22085 for (int i = 0; i < element.getAttachedDocument().size(); i++) { 22086 composeReference(t, "RegulatedAuthorization", "attachedDocument", element.getAttachedDocument().get(i), i); 22087 } 22088 if (element.hasCase()) { 22089 composeRegulatedAuthorizationCaseComponent(t, "RegulatedAuthorization", "case", element.getCase(), -1); 22090 } 22091 } 22092 22093 protected void composeRegulatedAuthorizationCaseComponent(Complex parent, String parentType, String name, RegulatedAuthorization.RegulatedAuthorizationCaseComponent element, int index) { 22094 if (element == null) 22095 return; 22096 Complex t; 22097 if (Utilities.noString(parentType)) 22098 t = parent; 22099 else { 22100 t = parent.predicate("fhir:"+name,index > -1); 22101 } 22102 composeBackboneElement(t, "case", name, element, index); 22103 if (element.hasIdentifier()) { 22104 composeIdentifier(t, "RegulatedAuthorizationCaseComponent", "identifier", element.getIdentifier(), -1); 22105 } 22106 if (element.hasType()) { 22107 composeCodeableConcept(t, "RegulatedAuthorizationCaseComponent", "type", element.getType(), -1); 22108 } 22109 if (element.hasStatus()) { 22110 composeCodeableConcept(t, "RegulatedAuthorizationCaseComponent", "status", element.getStatus(), -1); 22111 } 22112 if (element.hasDate()) { 22113 composeType(t, "RegulatedAuthorizationCaseComponent", "date", element.getDate(), -1); 22114 } 22115 for (int i = 0; i < element.getApplication().size(); i++) { 22116 composeRegulatedAuthorizationCaseComponent(t, "RegulatedAuthorizationCaseComponent", "application", element.getApplication().get(i), i); 22117 } 22118 } 22119 22120 protected void composeRelatedPerson(Complex parent, String parentType, String name, RelatedPerson element, int index) { 22121 if (element == null) 22122 return; 22123 Complex t; 22124 if (Utilities.noString(parentType)) 22125 t = parent; 22126 else { 22127 t = parent.predicate("fhir:"+name,index > -1); 22128 } 22129 composeDomainResource(t, "RelatedPerson", name, element, index); 22130 for (int i = 0; i < element.getIdentifier().size(); i++) { 22131 composeIdentifier(t, "RelatedPerson", "identifier", element.getIdentifier().get(i), i); 22132 } 22133 if (element.hasActiveElement()) { 22134 composeBoolean(t, "RelatedPerson", "active", element.getActiveElement(), -1); 22135 } 22136 if (element.hasPatient()) { 22137 composeReference(t, "RelatedPerson", "patient", element.getPatient(), -1); 22138 } 22139 for (int i = 0; i < element.getRelationship().size(); i++) { 22140 composeCodeableConcept(t, "RelatedPerson", "relationship", element.getRelationship().get(i), i); 22141 } 22142 for (int i = 0; i < element.getName().size(); i++) { 22143 composeHumanName(t, "RelatedPerson", "name", element.getName().get(i), i); 22144 } 22145 for (int i = 0; i < element.getTelecom().size(); i++) { 22146 composeContactPoint(t, "RelatedPerson", "telecom", element.getTelecom().get(i), i); 22147 } 22148 if (element.hasGenderElement()) { 22149 composeEnum(t, "RelatedPerson", "gender", element.getGenderElement(), -1); 22150 } 22151 if (element.hasBirthDateElement()) { 22152 composeDate(t, "RelatedPerson", "birthDate", element.getBirthDateElement(), -1); 22153 } 22154 for (int i = 0; i < element.getAddress().size(); i++) { 22155 composeAddress(t, "RelatedPerson", "address", element.getAddress().get(i), i); 22156 } 22157 for (int i = 0; i < element.getPhoto().size(); i++) { 22158 composeAttachment(t, "RelatedPerson", "photo", element.getPhoto().get(i), i); 22159 } 22160 if (element.hasPeriod()) { 22161 composePeriod(t, "RelatedPerson", "period", element.getPeriod(), -1); 22162 } 22163 for (int i = 0; i < element.getCommunication().size(); i++) { 22164 composeRelatedPersonCommunicationComponent(t, "RelatedPerson", "communication", element.getCommunication().get(i), i); 22165 } 22166 } 22167 22168 protected void composeRelatedPersonCommunicationComponent(Complex parent, String parentType, String name, RelatedPerson.RelatedPersonCommunicationComponent element, int index) { 22169 if (element == null) 22170 return; 22171 Complex t; 22172 if (Utilities.noString(parentType)) 22173 t = parent; 22174 else { 22175 t = parent.predicate("fhir:"+name,index > -1); 22176 } 22177 composeBackboneElement(t, "communication", name, element, index); 22178 if (element.hasLanguage()) { 22179 composeCodeableConcept(t, "RelatedPersonCommunicationComponent", "language", element.getLanguage(), -1); 22180 } 22181 if (element.hasPreferredElement()) { 22182 composeBoolean(t, "RelatedPersonCommunicationComponent", "preferred", element.getPreferredElement(), -1); 22183 } 22184 } 22185 22186 protected void composeRequestOrchestration(Complex parent, String parentType, String name, RequestOrchestration element, int index) { 22187 if (element == null) 22188 return; 22189 Complex t; 22190 if (Utilities.noString(parentType)) 22191 t = parent; 22192 else { 22193 t = parent.predicate("fhir:"+name,index > -1); 22194 } 22195 composeDomainResource(t, "RequestOrchestration", name, element, index); 22196 for (int i = 0; i < element.getIdentifier().size(); i++) { 22197 composeIdentifier(t, "RequestOrchestration", "identifier", element.getIdentifier().get(i), i); 22198 } 22199 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { 22200 composeCanonical(t, "RequestOrchestration", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 22201 } 22202 for (int i = 0; i < element.getInstantiatesUri().size(); i++) { 22203 composeUri(t, "RequestOrchestration", "instantiatesUri", element.getInstantiatesUri().get(i), i); 22204 } 22205 for (int i = 0; i < element.getBasedOn().size(); i++) { 22206 composeReference(t, "RequestOrchestration", "basedOn", element.getBasedOn().get(i), i); 22207 } 22208 for (int i = 0; i < element.getReplaces().size(); i++) { 22209 composeReference(t, "RequestOrchestration", "replaces", element.getReplaces().get(i), i); 22210 } 22211 if (element.hasGroupIdentifier()) { 22212 composeIdentifier(t, "RequestOrchestration", "groupIdentifier", element.getGroupIdentifier(), -1); 22213 } 22214 if (element.hasStatusElement()) { 22215 composeEnum(t, "RequestOrchestration", "status", element.getStatusElement(), -1); 22216 } 22217 if (element.hasIntentElement()) { 22218 composeEnum(t, "RequestOrchestration", "intent", element.getIntentElement(), -1); 22219 } 22220 if (element.hasPriorityElement()) { 22221 composeEnum(t, "RequestOrchestration", "priority", element.getPriorityElement(), -1); 22222 } 22223 if (element.hasCode()) { 22224 composeCodeableConcept(t, "RequestOrchestration", "code", element.getCode(), -1); 22225 } 22226 if (element.hasSubject()) { 22227 composeReference(t, "RequestOrchestration", "subject", element.getSubject(), -1); 22228 } 22229 if (element.hasEncounter()) { 22230 composeReference(t, "RequestOrchestration", "encounter", element.getEncounter(), -1); 22231 } 22232 if (element.hasAuthoredOnElement()) { 22233 composeDateTime(t, "RequestOrchestration", "authoredOn", element.getAuthoredOnElement(), -1); 22234 } 22235 if (element.hasAuthor()) { 22236 composeReference(t, "RequestOrchestration", "author", element.getAuthor(), -1); 22237 } 22238 for (int i = 0; i < element.getReason().size(); i++) { 22239 composeCodeableReference(t, "RequestOrchestration", "reason", element.getReason().get(i), i); 22240 } 22241 for (int i = 0; i < element.getGoal().size(); i++) { 22242 composeReference(t, "RequestOrchestration", "goal", element.getGoal().get(i), i); 22243 } 22244 for (int i = 0; i < element.getNote().size(); i++) { 22245 composeAnnotation(t, "RequestOrchestration", "note", element.getNote().get(i), i); 22246 } 22247 for (int i = 0; i < element.getAction().size(); i++) { 22248 composeRequestOrchestrationActionComponent(t, "RequestOrchestration", "action", element.getAction().get(i), i); 22249 } 22250 } 22251 22252 protected void composeRequestOrchestrationActionComponent(Complex parent, String parentType, String name, RequestOrchestration.RequestOrchestrationActionComponent element, int index) { 22253 if (element == null) 22254 return; 22255 Complex t; 22256 if (Utilities.noString(parentType)) 22257 t = parent; 22258 else { 22259 t = parent.predicate("fhir:"+name,index > -1); 22260 } 22261 composeBackboneElement(t, "action", name, element, index); 22262 if (element.hasLinkIdElement()) { 22263 composeString(t, "RequestOrchestrationActionComponent", "linkId", element.getLinkIdElement(), -1); 22264 } 22265 if (element.hasPrefixElement()) { 22266 composeString(t, "RequestOrchestrationActionComponent", "prefix", element.getPrefixElement(), -1); 22267 } 22268 if (element.hasTitleElement()) { 22269 composeString(t, "RequestOrchestrationActionComponent", "title", element.getTitleElement(), -1); 22270 } 22271 if (element.hasDescriptionElement()) { 22272 composeMarkdown(t, "RequestOrchestrationActionComponent", "description", element.getDescriptionElement(), -1); 22273 } 22274 if (element.hasTextEquivalentElement()) { 22275 composeMarkdown(t, "RequestOrchestrationActionComponent", "textEquivalent", element.getTextEquivalentElement(), -1); 22276 } 22277 if (element.hasPriorityElement()) { 22278 composeEnum(t, "RequestOrchestrationActionComponent", "priority", element.getPriorityElement(), -1); 22279 } 22280 for (int i = 0; i < element.getCode().size(); i++) { 22281 composeCodeableConcept(t, "RequestOrchestrationActionComponent", "code", element.getCode().get(i), i); 22282 } 22283 for (int i = 0; i < element.getDocumentation().size(); i++) { 22284 composeRelatedArtifact(t, "RequestOrchestrationActionComponent", "documentation", element.getDocumentation().get(i), i); 22285 } 22286 for (int i = 0; i < element.getGoal().size(); i++) { 22287 composeReference(t, "RequestOrchestrationActionComponent", "goal", element.getGoal().get(i), i); 22288 } 22289 for (int i = 0; i < element.getCondition().size(); i++) { 22290 composeRequestOrchestrationActionConditionComponent(t, "RequestOrchestrationActionComponent", "condition", element.getCondition().get(i), i); 22291 } 22292 for (int i = 0; i < element.getInput().size(); i++) { 22293 composeRequestOrchestrationActionInputComponent(t, "RequestOrchestrationActionComponent", "input", element.getInput().get(i), i); 22294 } 22295 for (int i = 0; i < element.getOutput().size(); i++) { 22296 composeRequestOrchestrationActionOutputComponent(t, "RequestOrchestrationActionComponent", "output", element.getOutput().get(i), i); 22297 } 22298 for (int i = 0; i < element.getRelatedAction().size(); i++) { 22299 composeRequestOrchestrationActionRelatedActionComponent(t, "RequestOrchestrationActionComponent", "relatedAction", element.getRelatedAction().get(i), i); 22300 } 22301 if (element.hasTiming()) { 22302 composeType(t, "RequestOrchestrationActionComponent", "timing", element.getTiming(), -1); 22303 } 22304 if (element.hasLocation()) { 22305 composeCodeableReference(t, "RequestOrchestrationActionComponent", "location", element.getLocation(), -1); 22306 } 22307 for (int i = 0; i < element.getParticipant().size(); i++) { 22308 composeRequestOrchestrationActionParticipantComponent(t, "RequestOrchestrationActionComponent", "participant", element.getParticipant().get(i), i); 22309 } 22310 if (element.hasType()) { 22311 composeCodeableConcept(t, "RequestOrchestrationActionComponent", "type", element.getType(), -1); 22312 } 22313 if (element.hasGroupingBehaviorElement()) { 22314 composeEnum(t, "RequestOrchestrationActionComponent", "groupingBehavior", element.getGroupingBehaviorElement(), -1); 22315 } 22316 if (element.hasSelectionBehaviorElement()) { 22317 composeEnum(t, "RequestOrchestrationActionComponent", "selectionBehavior", element.getSelectionBehaviorElement(), -1); 22318 } 22319 if (element.hasRequiredBehaviorElement()) { 22320 composeEnum(t, "RequestOrchestrationActionComponent", "requiredBehavior", element.getRequiredBehaviorElement(), -1); 22321 } 22322 if (element.hasPrecheckBehaviorElement()) { 22323 composeEnum(t, "RequestOrchestrationActionComponent", "precheckBehavior", element.getPrecheckBehaviorElement(), -1); 22324 } 22325 if (element.hasCardinalityBehaviorElement()) { 22326 composeEnum(t, "RequestOrchestrationActionComponent", "cardinalityBehavior", element.getCardinalityBehaviorElement(), -1); 22327 } 22328 if (element.hasResource()) { 22329 composeReference(t, "RequestOrchestrationActionComponent", "resource", element.getResource(), -1); 22330 } 22331 if (element.hasDefinition()) { 22332 composeType(t, "RequestOrchestrationActionComponent", "definition", element.getDefinition(), -1); 22333 } 22334 if (element.hasTransformElement()) { 22335 composeCanonical(t, "RequestOrchestrationActionComponent", "transform", element.getTransformElement(), -1); 22336 } 22337 for (int i = 0; i < element.getDynamicValue().size(); i++) { 22338 composeRequestOrchestrationActionDynamicValueComponent(t, "RequestOrchestrationActionComponent", "dynamicValue", element.getDynamicValue().get(i), i); 22339 } 22340 for (int i = 0; i < element.getAction().size(); i++) { 22341 composeRequestOrchestrationActionComponent(t, "RequestOrchestrationActionComponent", "action", element.getAction().get(i), i); 22342 } 22343 } 22344 22345 protected void composeRequestOrchestrationActionConditionComponent(Complex parent, String parentType, String name, RequestOrchestration.RequestOrchestrationActionConditionComponent element, int index) { 22346 if (element == null) 22347 return; 22348 Complex t; 22349 if (Utilities.noString(parentType)) 22350 t = parent; 22351 else { 22352 t = parent.predicate("fhir:"+name,index > -1); 22353 } 22354 composeBackboneElement(t, "condition", name, element, index); 22355 if (element.hasKindElement()) { 22356 composeEnum(t, "RequestOrchestrationActionConditionComponent", "kind", element.getKindElement(), -1); 22357 } 22358 if (element.hasExpression()) { 22359 composeExpression(t, "RequestOrchestrationActionConditionComponent", "expression", element.getExpression(), -1); 22360 } 22361 } 22362 22363 protected void composeRequestOrchestrationActionInputComponent(Complex parent, String parentType, String name, RequestOrchestration.RequestOrchestrationActionInputComponent element, int index) { 22364 if (element == null) 22365 return; 22366 Complex t; 22367 if (Utilities.noString(parentType)) 22368 t = parent; 22369 else { 22370 t = parent.predicate("fhir:"+name,index > -1); 22371 } 22372 composeBackboneElement(t, "input", name, element, index); 22373 if (element.hasTitleElement()) { 22374 composeString(t, "RequestOrchestrationActionInputComponent", "title", element.getTitleElement(), -1); 22375 } 22376 if (element.hasRequirement()) { 22377 composeDataRequirement(t, "RequestOrchestrationActionInputComponent", "requirement", element.getRequirement(), -1); 22378 } 22379 if (element.hasRelatedDataElement()) { 22380 composeId(t, "RequestOrchestrationActionInputComponent", "relatedData", element.getRelatedDataElement(), -1); 22381 } 22382 } 22383 22384 protected void composeRequestOrchestrationActionOutputComponent(Complex parent, String parentType, String name, RequestOrchestration.RequestOrchestrationActionOutputComponent element, int index) { 22385 if (element == null) 22386 return; 22387 Complex t; 22388 if (Utilities.noString(parentType)) 22389 t = parent; 22390 else { 22391 t = parent.predicate("fhir:"+name,index > -1); 22392 } 22393 composeBackboneElement(t, "output", name, element, index); 22394 if (element.hasTitleElement()) { 22395 composeString(t, "RequestOrchestrationActionOutputComponent", "title", element.getTitleElement(), -1); 22396 } 22397 if (element.hasRequirement()) { 22398 composeDataRequirement(t, "RequestOrchestrationActionOutputComponent", "requirement", element.getRequirement(), -1); 22399 } 22400 if (element.hasRelatedDataElement()) { 22401 composeString(t, "RequestOrchestrationActionOutputComponent", "relatedData", element.getRelatedDataElement(), -1); 22402 } 22403 } 22404 22405 protected void composeRequestOrchestrationActionRelatedActionComponent(Complex parent, String parentType, String name, RequestOrchestration.RequestOrchestrationActionRelatedActionComponent element, int index) { 22406 if (element == null) 22407 return; 22408 Complex t; 22409 if (Utilities.noString(parentType)) 22410 t = parent; 22411 else { 22412 t = parent.predicate("fhir:"+name,index > -1); 22413 } 22414 composeBackboneElement(t, "relatedAction", name, element, index); 22415 if (element.hasTargetIdElement()) { 22416 composeId(t, "RequestOrchestrationActionRelatedActionComponent", "targetId", element.getTargetIdElement(), -1); 22417 } 22418 if (element.hasRelationshipElement()) { 22419 composeEnum(t, "RequestOrchestrationActionRelatedActionComponent", "relationship", element.getRelationshipElement(), -1); 22420 } 22421 if (element.hasEndRelationshipElement()) { 22422 composeEnum(t, "RequestOrchestrationActionRelatedActionComponent", "endRelationship", element.getEndRelationshipElement(), -1); 22423 } 22424 if (element.hasOffset()) { 22425 composeType(t, "RequestOrchestrationActionRelatedActionComponent", "offset", element.getOffset(), -1); 22426 } 22427 } 22428 22429 protected void composeRequestOrchestrationActionParticipantComponent(Complex parent, String parentType, String name, RequestOrchestration.RequestOrchestrationActionParticipantComponent element, int index) { 22430 if (element == null) 22431 return; 22432 Complex t; 22433 if (Utilities.noString(parentType)) 22434 t = parent; 22435 else { 22436 t = parent.predicate("fhir:"+name,index > -1); 22437 } 22438 composeBackboneElement(t, "participant", name, element, index); 22439 if (element.hasTypeElement()) { 22440 composeEnum(t, "RequestOrchestrationActionParticipantComponent", "type", element.getTypeElement(), -1); 22441 } 22442 if (element.hasTypeCanonicalElement()) { 22443 composeCanonical(t, "RequestOrchestrationActionParticipantComponent", "typeCanonical", element.getTypeCanonicalElement(), -1); 22444 } 22445 if (element.hasTypeReference()) { 22446 composeReference(t, "RequestOrchestrationActionParticipantComponent", "typeReference", element.getTypeReference(), -1); 22447 } 22448 if (element.hasRole()) { 22449 composeCodeableConcept(t, "RequestOrchestrationActionParticipantComponent", "role", element.getRole(), -1); 22450 } 22451 if (element.hasFunction()) { 22452 composeCodeableConcept(t, "RequestOrchestrationActionParticipantComponent", "function", element.getFunction(), -1); 22453 } 22454 if (element.hasActor()) { 22455 composeType(t, "RequestOrchestrationActionParticipantComponent", "actor", element.getActor(), -1); 22456 } 22457 } 22458 22459 protected void composeRequestOrchestrationActionDynamicValueComponent(Complex parent, String parentType, String name, RequestOrchestration.RequestOrchestrationActionDynamicValueComponent element, int index) { 22460 if (element == null) 22461 return; 22462 Complex t; 22463 if (Utilities.noString(parentType)) 22464 t = parent; 22465 else { 22466 t = parent.predicate("fhir:"+name,index > -1); 22467 } 22468 composeBackboneElement(t, "dynamicValue", name, element, index); 22469 if (element.hasPathElement()) { 22470 composeString(t, "RequestOrchestrationActionDynamicValueComponent", "path", element.getPathElement(), -1); 22471 } 22472 if (element.hasExpression()) { 22473 composeExpression(t, "RequestOrchestrationActionDynamicValueComponent", "expression", element.getExpression(), -1); 22474 } 22475 } 22476 22477 protected void composeRequirements(Complex parent, String parentType, String name, Requirements element, int index) { 22478 if (element == null) 22479 return; 22480 Complex t; 22481 if (Utilities.noString(parentType)) 22482 t = parent; 22483 else { 22484 t = parent.predicate("fhir:"+name,index > -1); 22485 } 22486 composeCanonicalResource(t, "Requirements", name, element, index); 22487 if (element.hasUrlElement()) { 22488 composeUri(t, "Requirements", "url", element.getUrlElement(), -1); 22489 } 22490 for (int i = 0; i < element.getIdentifier().size(); i++) { 22491 composeIdentifier(t, "Requirements", "identifier", element.getIdentifier().get(i), i); 22492 } 22493 if (element.hasVersionElement()) { 22494 composeString(t, "Requirements", "version", element.getVersionElement(), -1); 22495 } 22496 if (element.hasVersionAlgorithm()) { 22497 composeType(t, "Requirements", "versionAlgorithm", element.getVersionAlgorithm(), -1); 22498 } 22499 if (element.hasNameElement()) { 22500 composeString(t, "Requirements", "name", element.getNameElement(), -1); 22501 } 22502 if (element.hasTitleElement()) { 22503 composeString(t, "Requirements", "title", element.getTitleElement(), -1); 22504 } 22505 if (element.hasStatusElement()) { 22506 composeEnum(t, "Requirements", "status", element.getStatusElement(), -1); 22507 } 22508 if (element.hasExperimentalElement()) { 22509 composeBoolean(t, "Requirements", "experimental", element.getExperimentalElement(), -1); 22510 } 22511 if (element.hasDateElement()) { 22512 composeDateTime(t, "Requirements", "date", element.getDateElement(), -1); 22513 } 22514 if (element.hasPublisherElement()) { 22515 composeString(t, "Requirements", "publisher", element.getPublisherElement(), -1); 22516 } 22517 for (int i = 0; i < element.getContact().size(); i++) { 22518 composeContactDetail(t, "Requirements", "contact", element.getContact().get(i), i); 22519 } 22520 if (element.hasDescriptionElement()) { 22521 composeMarkdown(t, "Requirements", "description", element.getDescriptionElement(), -1); 22522 } 22523 for (int i = 0; i < element.getUseContext().size(); i++) { 22524 composeUsageContext(t, "Requirements", "useContext", element.getUseContext().get(i), i); 22525 } 22526 for (int i = 0; i < element.getJurisdiction().size(); i++) { 22527 composeCodeableConcept(t, "Requirements", "jurisdiction", element.getJurisdiction().get(i), i); 22528 } 22529 if (element.hasPurposeElement()) { 22530 composeMarkdown(t, "Requirements", "purpose", element.getPurposeElement(), -1); 22531 } 22532 if (element.hasCopyrightElement()) { 22533 composeMarkdown(t, "Requirements", "copyright", element.getCopyrightElement(), -1); 22534 } 22535 if (element.hasCopyrightLabelElement()) { 22536 composeString(t, "Requirements", "copyrightLabel", element.getCopyrightLabelElement(), -1); 22537 } 22538 for (int i = 0; i < element.getDerivedFrom().size(); i++) { 22539 composeCanonical(t, "Requirements", "derivedFrom", element.getDerivedFrom().get(i), i); 22540 } 22541 for (int i = 0; i < element.getReference().size(); i++) { 22542 composeUrl(t, "Requirements", "reference", element.getReference().get(i), i); 22543 } 22544 for (int i = 0; i < element.getActor().size(); i++) { 22545 composeCanonical(t, "Requirements", "actor", element.getActor().get(i), i); 22546 } 22547 for (int i = 0; i < element.getStatement().size(); i++) { 22548 composeRequirementsStatementComponent(t, "Requirements", "statement", element.getStatement().get(i), i); 22549 } 22550 } 22551 22552 protected void composeRequirementsStatementComponent(Complex parent, String parentType, String name, Requirements.RequirementsStatementComponent element, int index) { 22553 if (element == null) 22554 return; 22555 Complex t; 22556 if (Utilities.noString(parentType)) 22557 t = parent; 22558 else { 22559 t = parent.predicate("fhir:"+name,index > -1); 22560 } 22561 composeBackboneElement(t, "statement", name, element, index); 22562 if (element.hasKeyElement()) { 22563 composeId(t, "RequirementsStatementComponent", "key", element.getKeyElement(), -1); 22564 } 22565 if (element.hasLabelElement()) { 22566 composeString(t, "RequirementsStatementComponent", "label", element.getLabelElement(), -1); 22567 } 22568 for (int i = 0; i < element.getConformance().size(); i++) { 22569 composeEnum(t, "RequirementsStatementComponent", "conformance", element.getConformance().get(i), i); 22570 } 22571 if (element.hasConditionalityElement()) { 22572 composeBoolean(t, "RequirementsStatementComponent", "conditionality", element.getConditionalityElement(), -1); 22573 } 22574 if (element.hasRequirementElement()) { 22575 composeMarkdown(t, "RequirementsStatementComponent", "requirement", element.getRequirementElement(), -1); 22576 } 22577 if (element.hasDerivedFromElement()) { 22578 composeString(t, "RequirementsStatementComponent", "derivedFrom", element.getDerivedFromElement(), -1); 22579 } 22580 if (element.hasParentElement()) { 22581 composeString(t, "RequirementsStatementComponent", "parent", element.getParentElement(), -1); 22582 } 22583 for (int i = 0; i < element.getSatisfiedBy().size(); i++) { 22584 composeUrl(t, "RequirementsStatementComponent", "satisfiedBy", element.getSatisfiedBy().get(i), i); 22585 } 22586 for (int i = 0; i < element.getReference().size(); i++) { 22587 composeUrl(t, "RequirementsStatementComponent", "reference", element.getReference().get(i), i); 22588 } 22589 for (int i = 0; i < element.getSource().size(); i++) { 22590 composeReference(t, "RequirementsStatementComponent", "source", element.getSource().get(i), i); 22591 } 22592 } 22593 22594 protected void composeResearchStudy(Complex parent, String parentType, String name, ResearchStudy element, int index) { 22595 if (element == null) 22596 return; 22597 Complex t; 22598 if (Utilities.noString(parentType)) 22599 t = parent; 22600 else { 22601 t = parent.predicate("fhir:"+name,index > -1); 22602 } 22603 composeDomainResource(t, "ResearchStudy", name, element, index); 22604 if (element.hasUrlElement()) { 22605 composeUri(t, "ResearchStudy", "url", element.getUrlElement(), -1); 22606 } 22607 for (int i = 0; i < element.getIdentifier().size(); i++) { 22608 composeIdentifier(t, "ResearchStudy", "identifier", element.getIdentifier().get(i), i); 22609 } 22610 if (element.hasVersionElement()) { 22611 composeString(t, "ResearchStudy", "version", element.getVersionElement(), -1); 22612 } 22613 if (element.hasNameElement()) { 22614 composeString(t, "ResearchStudy", "name", element.getNameElement(), -1); 22615 } 22616 if (element.hasTitleElement()) { 22617 composeString(t, "ResearchStudy", "title", element.getTitleElement(), -1); 22618 } 22619 for (int i = 0; i < element.getLabel().size(); i++) { 22620 composeResearchStudyLabelComponent(t, "ResearchStudy", "label", element.getLabel().get(i), i); 22621 } 22622 for (int i = 0; i < element.getProtocol().size(); i++) { 22623 composeReference(t, "ResearchStudy", "protocol", element.getProtocol().get(i), i); 22624 } 22625 for (int i = 0; i < element.getPartOf().size(); i++) { 22626 composeReference(t, "ResearchStudy", "partOf", element.getPartOf().get(i), i); 22627 } 22628 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 22629 composeRelatedArtifact(t, "ResearchStudy", "relatedArtifact", element.getRelatedArtifact().get(i), i); 22630 } 22631 if (element.hasDateElement()) { 22632 composeDateTime(t, "ResearchStudy", "date", element.getDateElement(), -1); 22633 } 22634 if (element.hasStatusElement()) { 22635 composeEnum(t, "ResearchStudy", "status", element.getStatusElement(), -1); 22636 } 22637 if (element.hasPrimaryPurposeType()) { 22638 composeCodeableConcept(t, "ResearchStudy", "primaryPurposeType", element.getPrimaryPurposeType(), -1); 22639 } 22640 if (element.hasPhase()) { 22641 composeCodeableConcept(t, "ResearchStudy", "phase", element.getPhase(), -1); 22642 } 22643 for (int i = 0; i < element.getStudyDesign().size(); i++) { 22644 composeCodeableConcept(t, "ResearchStudy", "studyDesign", element.getStudyDesign().get(i), i); 22645 } 22646 for (int i = 0; i < element.getFocus().size(); i++) { 22647 composeCodeableReference(t, "ResearchStudy", "focus", element.getFocus().get(i), i); 22648 } 22649 for (int i = 0; i < element.getCondition().size(); i++) { 22650 composeCodeableConcept(t, "ResearchStudy", "condition", element.getCondition().get(i), i); 22651 } 22652 for (int i = 0; i < element.getKeyword().size(); i++) { 22653 composeCodeableConcept(t, "ResearchStudy", "keyword", element.getKeyword().get(i), i); 22654 } 22655 for (int i = 0; i < element.getRegion().size(); i++) { 22656 composeCodeableConcept(t, "ResearchStudy", "region", element.getRegion().get(i), i); 22657 } 22658 if (element.hasDescriptionSummaryElement()) { 22659 composeMarkdown(t, "ResearchStudy", "descriptionSummary", element.getDescriptionSummaryElement(), -1); 22660 } 22661 if (element.hasDescriptionElement()) { 22662 composeMarkdown(t, "ResearchStudy", "description", element.getDescriptionElement(), -1); 22663 } 22664 if (element.hasPeriod()) { 22665 composePeriod(t, "ResearchStudy", "period", element.getPeriod(), -1); 22666 } 22667 for (int i = 0; i < element.getSite().size(); i++) { 22668 composeReference(t, "ResearchStudy", "site", element.getSite().get(i), i); 22669 } 22670 for (int i = 0; i < element.getNote().size(); i++) { 22671 composeAnnotation(t, "ResearchStudy", "note", element.getNote().get(i), i); 22672 } 22673 for (int i = 0; i < element.getClassifier().size(); i++) { 22674 composeCodeableConcept(t, "ResearchStudy", "classifier", element.getClassifier().get(i), i); 22675 } 22676 for (int i = 0; i < element.getAssociatedParty().size(); i++) { 22677 composeResearchStudyAssociatedPartyComponent(t, "ResearchStudy", "associatedParty", element.getAssociatedParty().get(i), i); 22678 } 22679 for (int i = 0; i < element.getProgressStatus().size(); i++) { 22680 composeResearchStudyProgressStatusComponent(t, "ResearchStudy", "progressStatus", element.getProgressStatus().get(i), i); 22681 } 22682 if (element.hasWhyStopped()) { 22683 composeCodeableConcept(t, "ResearchStudy", "whyStopped", element.getWhyStopped(), -1); 22684 } 22685 if (element.hasRecruitment()) { 22686 composeResearchStudyRecruitmentComponent(t, "ResearchStudy", "recruitment", element.getRecruitment(), -1); 22687 } 22688 for (int i = 0; i < element.getComparisonGroup().size(); i++) { 22689 composeResearchStudyComparisonGroupComponent(t, "ResearchStudy", "comparisonGroup", element.getComparisonGroup().get(i), i); 22690 } 22691 for (int i = 0; i < element.getObjective().size(); i++) { 22692 composeResearchStudyObjectiveComponent(t, "ResearchStudy", "objective", element.getObjective().get(i), i); 22693 } 22694 for (int i = 0; i < element.getOutcomeMeasure().size(); i++) { 22695 composeResearchStudyOutcomeMeasureComponent(t, "ResearchStudy", "outcomeMeasure", element.getOutcomeMeasure().get(i), i); 22696 } 22697 for (int i = 0; i < element.getResult().size(); i++) { 22698 composeReference(t, "ResearchStudy", "result", element.getResult().get(i), i); 22699 } 22700 } 22701 22702 protected void composeResearchStudyLabelComponent(Complex parent, String parentType, String name, ResearchStudy.ResearchStudyLabelComponent element, int index) { 22703 if (element == null) 22704 return; 22705 Complex t; 22706 if (Utilities.noString(parentType)) 22707 t = parent; 22708 else { 22709 t = parent.predicate("fhir:"+name,index > -1); 22710 } 22711 composeBackboneElement(t, "label", name, element, index); 22712 if (element.hasType()) { 22713 composeCodeableConcept(t, "ResearchStudyLabelComponent", "type", element.getType(), -1); 22714 } 22715 if (element.hasValueElement()) { 22716 composeString(t, "ResearchStudyLabelComponent", "value", element.getValueElement(), -1); 22717 } 22718 } 22719 22720 protected void composeResearchStudyAssociatedPartyComponent(Complex parent, String parentType, String name, ResearchStudy.ResearchStudyAssociatedPartyComponent element, int index) { 22721 if (element == null) 22722 return; 22723 Complex t; 22724 if (Utilities.noString(parentType)) 22725 t = parent; 22726 else { 22727 t = parent.predicate("fhir:"+name,index > -1); 22728 } 22729 composeBackboneElement(t, "associatedParty", name, element, index); 22730 if (element.hasNameElement()) { 22731 composeString(t, "ResearchStudyAssociatedPartyComponent", "name", element.getNameElement(), -1); 22732 } 22733 if (element.hasRole()) { 22734 composeCodeableConcept(t, "ResearchStudyAssociatedPartyComponent", "role", element.getRole(), -1); 22735 } 22736 for (int i = 0; i < element.getPeriod().size(); i++) { 22737 composePeriod(t, "ResearchStudyAssociatedPartyComponent", "period", element.getPeriod().get(i), i); 22738 } 22739 for (int i = 0; i < element.getClassifier().size(); i++) { 22740 composeCodeableConcept(t, "ResearchStudyAssociatedPartyComponent", "classifier", element.getClassifier().get(i), i); 22741 } 22742 if (element.hasParty()) { 22743 composeReference(t, "ResearchStudyAssociatedPartyComponent", "party", element.getParty(), -1); 22744 } 22745 } 22746 22747 protected void composeResearchStudyProgressStatusComponent(Complex parent, String parentType, String name, ResearchStudy.ResearchStudyProgressStatusComponent element, int index) { 22748 if (element == null) 22749 return; 22750 Complex t; 22751 if (Utilities.noString(parentType)) 22752 t = parent; 22753 else { 22754 t = parent.predicate("fhir:"+name,index > -1); 22755 } 22756 composeBackboneElement(t, "progressStatus", name, element, index); 22757 if (element.hasState()) { 22758 composeCodeableConcept(t, "ResearchStudyProgressStatusComponent", "state", element.getState(), -1); 22759 } 22760 if (element.hasActualElement()) { 22761 composeBoolean(t, "ResearchStudyProgressStatusComponent", "actual", element.getActualElement(), -1); 22762 } 22763 if (element.hasPeriod()) { 22764 composePeriod(t, "ResearchStudyProgressStatusComponent", "period", element.getPeriod(), -1); 22765 } 22766 } 22767 22768 protected void composeResearchStudyRecruitmentComponent(Complex parent, String parentType, String name, ResearchStudy.ResearchStudyRecruitmentComponent element, int index) { 22769 if (element == null) 22770 return; 22771 Complex t; 22772 if (Utilities.noString(parentType)) 22773 t = parent; 22774 else { 22775 t = parent.predicate("fhir:"+name,index > -1); 22776 } 22777 composeBackboneElement(t, "recruitment", name, element, index); 22778 if (element.hasTargetNumberElement()) { 22779 composeUnsignedInt(t, "ResearchStudyRecruitmentComponent", "targetNumber", element.getTargetNumberElement(), -1); 22780 } 22781 if (element.hasActualNumberElement()) { 22782 composeUnsignedInt(t, "ResearchStudyRecruitmentComponent", "actualNumber", element.getActualNumberElement(), -1); 22783 } 22784 if (element.hasEligibility()) { 22785 composeReference(t, "ResearchStudyRecruitmentComponent", "eligibility", element.getEligibility(), -1); 22786 } 22787 if (element.hasActualGroup()) { 22788 composeReference(t, "ResearchStudyRecruitmentComponent", "actualGroup", element.getActualGroup(), -1); 22789 } 22790 } 22791 22792 protected void composeResearchStudyComparisonGroupComponent(Complex parent, String parentType, String name, ResearchStudy.ResearchStudyComparisonGroupComponent element, int index) { 22793 if (element == null) 22794 return; 22795 Complex t; 22796 if (Utilities.noString(parentType)) 22797 t = parent; 22798 else { 22799 t = parent.predicate("fhir:"+name,index > -1); 22800 } 22801 composeBackboneElement(t, "comparisonGroup", name, element, index); 22802 if (element.hasLinkIdElement()) { 22803 composeId(t, "ResearchStudyComparisonGroupComponent", "linkId", element.getLinkIdElement(), -1); 22804 } 22805 if (element.hasNameElement()) { 22806 composeString(t, "ResearchStudyComparisonGroupComponent", "name", element.getNameElement(), -1); 22807 } 22808 if (element.hasType()) { 22809 composeCodeableConcept(t, "ResearchStudyComparisonGroupComponent", "type", element.getType(), -1); 22810 } 22811 if (element.hasDescriptionElement()) { 22812 composeMarkdown(t, "ResearchStudyComparisonGroupComponent", "description", element.getDescriptionElement(), -1); 22813 } 22814 for (int i = 0; i < element.getIntendedExposure().size(); i++) { 22815 composeReference(t, "ResearchStudyComparisonGroupComponent", "intendedExposure", element.getIntendedExposure().get(i), i); 22816 } 22817 if (element.hasObservedGroup()) { 22818 composeReference(t, "ResearchStudyComparisonGroupComponent", "observedGroup", element.getObservedGroup(), -1); 22819 } 22820 } 22821 22822 protected void composeResearchStudyObjectiveComponent(Complex parent, String parentType, String name, ResearchStudy.ResearchStudyObjectiveComponent element, int index) { 22823 if (element == null) 22824 return; 22825 Complex t; 22826 if (Utilities.noString(parentType)) 22827 t = parent; 22828 else { 22829 t = parent.predicate("fhir:"+name,index > -1); 22830 } 22831 composeBackboneElement(t, "objective", name, element, index); 22832 if (element.hasNameElement()) { 22833 composeString(t, "ResearchStudyObjectiveComponent", "name", element.getNameElement(), -1); 22834 } 22835 if (element.hasType()) { 22836 composeCodeableConcept(t, "ResearchStudyObjectiveComponent", "type", element.getType(), -1); 22837 } 22838 if (element.hasDescriptionElement()) { 22839 composeMarkdown(t, "ResearchStudyObjectiveComponent", "description", element.getDescriptionElement(), -1); 22840 } 22841 } 22842 22843 protected void composeResearchStudyOutcomeMeasureComponent(Complex parent, String parentType, String name, ResearchStudy.ResearchStudyOutcomeMeasureComponent element, int index) { 22844 if (element == null) 22845 return; 22846 Complex t; 22847 if (Utilities.noString(parentType)) 22848 t = parent; 22849 else { 22850 t = parent.predicate("fhir:"+name,index > -1); 22851 } 22852 composeBackboneElement(t, "outcomeMeasure", name, element, index); 22853 if (element.hasNameElement()) { 22854 composeString(t, "ResearchStudyOutcomeMeasureComponent", "name", element.getNameElement(), -1); 22855 } 22856 for (int i = 0; i < element.getType().size(); i++) { 22857 composeCodeableConcept(t, "ResearchStudyOutcomeMeasureComponent", "type", element.getType().get(i), i); 22858 } 22859 if (element.hasDescriptionElement()) { 22860 composeMarkdown(t, "ResearchStudyOutcomeMeasureComponent", "description", element.getDescriptionElement(), -1); 22861 } 22862 if (element.hasReference()) { 22863 composeReference(t, "ResearchStudyOutcomeMeasureComponent", "reference", element.getReference(), -1); 22864 } 22865 } 22866 22867 protected void composeResearchSubject(Complex parent, String parentType, String name, ResearchSubject element, int index) { 22868 if (element == null) 22869 return; 22870 Complex t; 22871 if (Utilities.noString(parentType)) 22872 t = parent; 22873 else { 22874 t = parent.predicate("fhir:"+name,index > -1); 22875 } 22876 composeDomainResource(t, "ResearchSubject", name, element, index); 22877 for (int i = 0; i < element.getIdentifier().size(); i++) { 22878 composeIdentifier(t, "ResearchSubject", "identifier", element.getIdentifier().get(i), i); 22879 } 22880 if (element.hasStatusElement()) { 22881 composeEnum(t, "ResearchSubject", "status", element.getStatusElement(), -1); 22882 } 22883 for (int i = 0; i < element.getProgress().size(); i++) { 22884 composeResearchSubjectProgressComponent(t, "ResearchSubject", "progress", element.getProgress().get(i), i); 22885 } 22886 if (element.hasPeriod()) { 22887 composePeriod(t, "ResearchSubject", "period", element.getPeriod(), -1); 22888 } 22889 if (element.hasStudy()) { 22890 composeReference(t, "ResearchSubject", "study", element.getStudy(), -1); 22891 } 22892 if (element.hasSubject()) { 22893 composeReference(t, "ResearchSubject", "subject", element.getSubject(), -1); 22894 } 22895 if (element.hasAssignedComparisonGroupElement()) { 22896 composeId(t, "ResearchSubject", "assignedComparisonGroup", element.getAssignedComparisonGroupElement(), -1); 22897 } 22898 if (element.hasActualComparisonGroupElement()) { 22899 composeId(t, "ResearchSubject", "actualComparisonGroup", element.getActualComparisonGroupElement(), -1); 22900 } 22901 for (int i = 0; i < element.getConsent().size(); i++) { 22902 composeReference(t, "ResearchSubject", "consent", element.getConsent().get(i), i); 22903 } 22904 } 22905 22906 protected void composeResearchSubjectProgressComponent(Complex parent, String parentType, String name, ResearchSubject.ResearchSubjectProgressComponent element, int index) { 22907 if (element == null) 22908 return; 22909 Complex t; 22910 if (Utilities.noString(parentType)) 22911 t = parent; 22912 else { 22913 t = parent.predicate("fhir:"+name,index > -1); 22914 } 22915 composeBackboneElement(t, "progress", name, element, index); 22916 if (element.hasType()) { 22917 composeCodeableConcept(t, "ResearchSubjectProgressComponent", "type", element.getType(), -1); 22918 } 22919 if (element.hasSubjectState()) { 22920 composeCodeableConcept(t, "ResearchSubjectProgressComponent", "subjectState", element.getSubjectState(), -1); 22921 } 22922 if (element.hasMilestone()) { 22923 composeCodeableConcept(t, "ResearchSubjectProgressComponent", "milestone", element.getMilestone(), -1); 22924 } 22925 if (element.hasReason()) { 22926 composeCodeableConcept(t, "ResearchSubjectProgressComponent", "reason", element.getReason(), -1); 22927 } 22928 if (element.hasStartDateElement()) { 22929 composeDateTime(t, "ResearchSubjectProgressComponent", "startDate", element.getStartDateElement(), -1); 22930 } 22931 if (element.hasEndDateElement()) { 22932 composeDateTime(t, "ResearchSubjectProgressComponent", "endDate", element.getEndDateElement(), -1); 22933 } 22934 } 22935 22936 protected void composeRiskAssessment(Complex parent, String parentType, String name, RiskAssessment element, int index) { 22937 if (element == null) 22938 return; 22939 Complex t; 22940 if (Utilities.noString(parentType)) 22941 t = parent; 22942 else { 22943 t = parent.predicate("fhir:"+name,index > -1); 22944 } 22945 composeDomainResource(t, "RiskAssessment", name, element, index); 22946 for (int i = 0; i < element.getIdentifier().size(); i++) { 22947 composeIdentifier(t, "RiskAssessment", "identifier", element.getIdentifier().get(i), i); 22948 } 22949 if (element.hasBasedOn()) { 22950 composeReference(t, "RiskAssessment", "basedOn", element.getBasedOn(), -1); 22951 } 22952 if (element.hasParent()) { 22953 composeReference(t, "RiskAssessment", "parent", element.getParent(), -1); 22954 } 22955 if (element.hasStatusElement()) { 22956 composeEnum(t, "RiskAssessment", "status", element.getStatusElement(), -1); 22957 } 22958 if (element.hasMethod()) { 22959 composeCodeableConcept(t, "RiskAssessment", "method", element.getMethod(), -1); 22960 } 22961 if (element.hasCode()) { 22962 composeCodeableConcept(t, "RiskAssessment", "code", element.getCode(), -1); 22963 } 22964 if (element.hasSubject()) { 22965 composeReference(t, "RiskAssessment", "subject", element.getSubject(), -1); 22966 } 22967 if (element.hasEncounter()) { 22968 composeReference(t, "RiskAssessment", "encounter", element.getEncounter(), -1); 22969 } 22970 if (element.hasOccurrence()) { 22971 composeType(t, "RiskAssessment", "occurrence", element.getOccurrence(), -1); 22972 } 22973 if (element.hasCondition()) { 22974 composeReference(t, "RiskAssessment", "condition", element.getCondition(), -1); 22975 } 22976 if (element.hasPerformer()) { 22977 composeReference(t, "RiskAssessment", "performer", element.getPerformer(), -1); 22978 } 22979 for (int i = 0; i < element.getReason().size(); i++) { 22980 composeCodeableReference(t, "RiskAssessment", "reason", element.getReason().get(i), i); 22981 } 22982 for (int i = 0; i < element.getBasis().size(); i++) { 22983 composeReference(t, "RiskAssessment", "basis", element.getBasis().get(i), i); 22984 } 22985 for (int i = 0; i < element.getPrediction().size(); i++) { 22986 composeRiskAssessmentPredictionComponent(t, "RiskAssessment", "prediction", element.getPrediction().get(i), i); 22987 } 22988 if (element.hasMitigationElement()) { 22989 composeString(t, "RiskAssessment", "mitigation", element.getMitigationElement(), -1); 22990 } 22991 for (int i = 0; i < element.getNote().size(); i++) { 22992 composeAnnotation(t, "RiskAssessment", "note", element.getNote().get(i), i); 22993 } 22994 } 22995 22996 protected void composeRiskAssessmentPredictionComponent(Complex parent, String parentType, String name, RiskAssessment.RiskAssessmentPredictionComponent element, int index) { 22997 if (element == null) 22998 return; 22999 Complex t; 23000 if (Utilities.noString(parentType)) 23001 t = parent; 23002 else { 23003 t = parent.predicate("fhir:"+name,index > -1); 23004 } 23005 composeBackboneElement(t, "prediction", name, element, index); 23006 if (element.hasOutcome()) { 23007 composeCodeableConcept(t, "RiskAssessmentPredictionComponent", "outcome", element.getOutcome(), -1); 23008 } 23009 if (element.hasProbability()) { 23010 composeType(t, "RiskAssessmentPredictionComponent", "probability", element.getProbability(), -1); 23011 } 23012 if (element.hasQualitativeRisk()) { 23013 composeCodeableConcept(t, "RiskAssessmentPredictionComponent", "qualitativeRisk", element.getQualitativeRisk(), -1); 23014 } 23015 if (element.hasRelativeRiskElement()) { 23016 composeDecimal(t, "RiskAssessmentPredictionComponent", "relativeRisk", element.getRelativeRiskElement(), -1); 23017 } 23018 if (element.hasWhen()) { 23019 composeType(t, "RiskAssessmentPredictionComponent", "when", element.getWhen(), -1); 23020 } 23021 if (element.hasRationaleElement()) { 23022 composeString(t, "RiskAssessmentPredictionComponent", "rationale", element.getRationaleElement(), -1); 23023 } 23024 } 23025 23026 protected void composeSchedule(Complex parent, String parentType, String name, Schedule element, int index) { 23027 if (element == null) 23028 return; 23029 Complex t; 23030 if (Utilities.noString(parentType)) 23031 t = parent; 23032 else { 23033 t = parent.predicate("fhir:"+name,index > -1); 23034 } 23035 composeDomainResource(t, "Schedule", name, element, index); 23036 for (int i = 0; i < element.getIdentifier().size(); i++) { 23037 composeIdentifier(t, "Schedule", "identifier", element.getIdentifier().get(i), i); 23038 } 23039 if (element.hasActiveElement()) { 23040 composeBoolean(t, "Schedule", "active", element.getActiveElement(), -1); 23041 } 23042 for (int i = 0; i < element.getServiceCategory().size(); i++) { 23043 composeCodeableConcept(t, "Schedule", "serviceCategory", element.getServiceCategory().get(i), i); 23044 } 23045 for (int i = 0; i < element.getServiceType().size(); i++) { 23046 composeCodeableReference(t, "Schedule", "serviceType", element.getServiceType().get(i), i); 23047 } 23048 for (int i = 0; i < element.getSpecialty().size(); i++) { 23049 composeCodeableConcept(t, "Schedule", "specialty", element.getSpecialty().get(i), i); 23050 } 23051 if (element.hasNameElement()) { 23052 composeString(t, "Schedule", "name", element.getNameElement(), -1); 23053 } 23054 for (int i = 0; i < element.getActor().size(); i++) { 23055 composeReference(t, "Schedule", "actor", element.getActor().get(i), i); 23056 } 23057 if (element.hasPlanningHorizon()) { 23058 composePeriod(t, "Schedule", "planningHorizon", element.getPlanningHorizon(), -1); 23059 } 23060 if (element.hasCommentElement()) { 23061 composeMarkdown(t, "Schedule", "comment", element.getCommentElement(), -1); 23062 } 23063 } 23064 23065 protected void composeSearchParameter(Complex parent, String parentType, String name, SearchParameter element, int index) { 23066 if (element == null) 23067 return; 23068 Complex t; 23069 if (Utilities.noString(parentType)) 23070 t = parent; 23071 else { 23072 t = parent.predicate("fhir:"+name,index > -1); 23073 } 23074 composeCanonicalResource(t, "SearchParameter", name, element, index); 23075 if (element.hasUrlElement()) { 23076 composeUri(t, "SearchParameter", "url", element.getUrlElement(), -1); 23077 } 23078 for (int i = 0; i < element.getIdentifier().size(); i++) { 23079 composeIdentifier(t, "SearchParameter", "identifier", element.getIdentifier().get(i), i); 23080 } 23081 if (element.hasVersionElement()) { 23082 composeString(t, "SearchParameter", "version", element.getVersionElement(), -1); 23083 } 23084 if (element.hasVersionAlgorithm()) { 23085 composeType(t, "SearchParameter", "versionAlgorithm", element.getVersionAlgorithm(), -1); 23086 } 23087 if (element.hasNameElement()) { 23088 composeString(t, "SearchParameter", "name", element.getNameElement(), -1); 23089 } 23090 if (element.hasTitleElement()) { 23091 composeString(t, "SearchParameter", "title", element.getTitleElement(), -1); 23092 } 23093 if (element.hasDerivedFromElement()) { 23094 composeCanonical(t, "SearchParameter", "derivedFrom", element.getDerivedFromElement(), -1); 23095 } 23096 if (element.hasStatusElement()) { 23097 composeEnum(t, "SearchParameter", "status", element.getStatusElement(), -1); 23098 } 23099 if (element.hasExperimentalElement()) { 23100 composeBoolean(t, "SearchParameter", "experimental", element.getExperimentalElement(), -1); 23101 } 23102 if (element.hasDateElement()) { 23103 composeDateTime(t, "SearchParameter", "date", element.getDateElement(), -1); 23104 } 23105 if (element.hasPublisherElement()) { 23106 composeString(t, "SearchParameter", "publisher", element.getPublisherElement(), -1); 23107 } 23108 for (int i = 0; i < element.getContact().size(); i++) { 23109 composeContactDetail(t, "SearchParameter", "contact", element.getContact().get(i), i); 23110 } 23111 if (element.hasDescriptionElement()) { 23112 composeMarkdown(t, "SearchParameter", "description", element.getDescriptionElement(), -1); 23113 } 23114 for (int i = 0; i < element.getUseContext().size(); i++) { 23115 composeUsageContext(t, "SearchParameter", "useContext", element.getUseContext().get(i), i); 23116 } 23117 for (int i = 0; i < element.getJurisdiction().size(); i++) { 23118 composeCodeableConcept(t, "SearchParameter", "jurisdiction", element.getJurisdiction().get(i), i); 23119 } 23120 if (element.hasPurposeElement()) { 23121 composeMarkdown(t, "SearchParameter", "purpose", element.getPurposeElement(), -1); 23122 } 23123 if (element.hasCopyrightElement()) { 23124 composeMarkdown(t, "SearchParameter", "copyright", element.getCopyrightElement(), -1); 23125 } 23126 if (element.hasCopyrightLabelElement()) { 23127 composeString(t, "SearchParameter", "copyrightLabel", element.getCopyrightLabelElement(), -1); 23128 } 23129 if (element.hasCodeElement()) { 23130 composeCode(t, "SearchParameter", "code", element.getCodeElement(), -1); 23131 } 23132 for (int i = 0; i < element.getBase().size(); i++) { 23133 composeEnum(t, "SearchParameter", "base", element.getBase().get(i), i); 23134 } 23135 if (element.hasTypeElement()) { 23136 composeEnum(t, "SearchParameter", "type", element.getTypeElement(), -1); 23137 } 23138 if (element.hasExpressionElement()) { 23139 composeString(t, "SearchParameter", "expression", element.getExpressionElement(), -1); 23140 } 23141 if (element.hasProcessingModeElement()) { 23142 composeEnum(t, "SearchParameter", "processingMode", element.getProcessingModeElement(), -1); 23143 } 23144 if (element.hasConstraintElement()) { 23145 composeString(t, "SearchParameter", "constraint", element.getConstraintElement(), -1); 23146 } 23147 for (int i = 0; i < element.getTarget().size(); i++) { 23148 composeEnum(t, "SearchParameter", "target", element.getTarget().get(i), i); 23149 } 23150 if (element.hasMultipleOrElement()) { 23151 composeBoolean(t, "SearchParameter", "multipleOr", element.getMultipleOrElement(), -1); 23152 } 23153 if (element.hasMultipleAndElement()) { 23154 composeBoolean(t, "SearchParameter", "multipleAnd", element.getMultipleAndElement(), -1); 23155 } 23156 for (int i = 0; i < element.getComparator().size(); i++) { 23157 composeEnum(t, "SearchParameter", "comparator", element.getComparator().get(i), i); 23158 } 23159 for (int i = 0; i < element.getModifier().size(); i++) { 23160 composeEnum(t, "SearchParameter", "modifier", element.getModifier().get(i), i); 23161 } 23162 for (int i = 0; i < element.getChain().size(); i++) { 23163 composeString(t, "SearchParameter", "chain", element.getChain().get(i), i); 23164 } 23165 for (int i = 0; i < element.getComponent().size(); i++) { 23166 composeSearchParameterComponentComponent(t, "SearchParameter", "component", element.getComponent().get(i), i); 23167 } 23168 } 23169 23170 protected void composeSearchParameterComponentComponent(Complex parent, String parentType, String name, SearchParameter.SearchParameterComponentComponent element, int index) { 23171 if (element == null) 23172 return; 23173 Complex t; 23174 if (Utilities.noString(parentType)) 23175 t = parent; 23176 else { 23177 t = parent.predicate("fhir:"+name,index > -1); 23178 } 23179 composeBackboneElement(t, "component", name, element, index); 23180 if (element.hasDefinitionElement()) { 23181 composeCanonical(t, "SearchParameterComponentComponent", "definition", element.getDefinitionElement(), -1); 23182 } 23183 if (element.hasExpressionElement()) { 23184 composeString(t, "SearchParameterComponentComponent", "expression", element.getExpressionElement(), -1); 23185 } 23186 } 23187 23188 protected void composeServiceRequest(Complex parent, String parentType, String name, ServiceRequest element, int index) { 23189 if (element == null) 23190 return; 23191 Complex t; 23192 if (Utilities.noString(parentType)) 23193 t = parent; 23194 else { 23195 t = parent.predicate("fhir:"+name,index > -1); 23196 } 23197 composeDomainResource(t, "ServiceRequest", name, element, index); 23198 for (int i = 0; i < element.getIdentifier().size(); i++) { 23199 composeIdentifier(t, "ServiceRequest", "identifier", element.getIdentifier().get(i), i); 23200 } 23201 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { 23202 composeCanonical(t, "ServiceRequest", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 23203 } 23204 for (int i = 0; i < element.getInstantiatesUri().size(); i++) { 23205 composeUri(t, "ServiceRequest", "instantiatesUri", element.getInstantiatesUri().get(i), i); 23206 } 23207 for (int i = 0; i < element.getBasedOn().size(); i++) { 23208 composeReference(t, "ServiceRequest", "basedOn", element.getBasedOn().get(i), i); 23209 } 23210 for (int i = 0; i < element.getReplaces().size(); i++) { 23211 composeReference(t, "ServiceRequest", "replaces", element.getReplaces().get(i), i); 23212 } 23213 if (element.hasRequisition()) { 23214 composeIdentifier(t, "ServiceRequest", "requisition", element.getRequisition(), -1); 23215 } 23216 if (element.hasStatusElement()) { 23217 composeEnum(t, "ServiceRequest", "status", element.getStatusElement(), -1); 23218 } 23219 if (element.hasIntentElement()) { 23220 composeEnum(t, "ServiceRequest", "intent", element.getIntentElement(), -1); 23221 } 23222 for (int i = 0; i < element.getCategory().size(); i++) { 23223 composeCodeableConcept(t, "ServiceRequest", "category", element.getCategory().get(i), i); 23224 } 23225 if (element.hasPriorityElement()) { 23226 composeEnum(t, "ServiceRequest", "priority", element.getPriorityElement(), -1); 23227 } 23228 if (element.hasDoNotPerformElement()) { 23229 composeBoolean(t, "ServiceRequest", "doNotPerform", element.getDoNotPerformElement(), -1); 23230 } 23231 if (element.hasCode()) { 23232 composeCodeableReference(t, "ServiceRequest", "code", element.getCode(), -1); 23233 } 23234 for (int i = 0; i < element.getOrderDetail().size(); i++) { 23235 composeServiceRequestOrderDetailComponent(t, "ServiceRequest", "orderDetail", element.getOrderDetail().get(i), i); 23236 } 23237 if (element.hasQuantity()) { 23238 composeType(t, "ServiceRequest", "quantity", element.getQuantity(), -1); 23239 } 23240 if (element.hasSubject()) { 23241 composeReference(t, "ServiceRequest", "subject", element.getSubject(), -1); 23242 } 23243 for (int i = 0; i < element.getFocus().size(); i++) { 23244 composeReference(t, "ServiceRequest", "focus", element.getFocus().get(i), i); 23245 } 23246 if (element.hasEncounter()) { 23247 composeReference(t, "ServiceRequest", "encounter", element.getEncounter(), -1); 23248 } 23249 if (element.hasOccurrence()) { 23250 composeType(t, "ServiceRequest", "occurrence", element.getOccurrence(), -1); 23251 } 23252 if (element.hasAsNeeded()) { 23253 composeType(t, "ServiceRequest", "asNeeded", element.getAsNeeded(), -1); 23254 } 23255 if (element.hasAuthoredOnElement()) { 23256 composeDateTime(t, "ServiceRequest", "authoredOn", element.getAuthoredOnElement(), -1); 23257 } 23258 if (element.hasRequester()) { 23259 composeReference(t, "ServiceRequest", "requester", element.getRequester(), -1); 23260 } 23261 if (element.hasPerformerType()) { 23262 composeCodeableConcept(t, "ServiceRequest", "performerType", element.getPerformerType(), -1); 23263 } 23264 for (int i = 0; i < element.getPerformer().size(); i++) { 23265 composeReference(t, "ServiceRequest", "performer", element.getPerformer().get(i), i); 23266 } 23267 for (int i = 0; i < element.getLocation().size(); i++) { 23268 composeCodeableReference(t, "ServiceRequest", "location", element.getLocation().get(i), i); 23269 } 23270 for (int i = 0; i < element.getReason().size(); i++) { 23271 composeCodeableReference(t, "ServiceRequest", "reason", element.getReason().get(i), i); 23272 } 23273 for (int i = 0; i < element.getInsurance().size(); i++) { 23274 composeReference(t, "ServiceRequest", "insurance", element.getInsurance().get(i), i); 23275 } 23276 for (int i = 0; i < element.getSupportingInfo().size(); i++) { 23277 composeCodeableReference(t, "ServiceRequest", "supportingInfo", element.getSupportingInfo().get(i), i); 23278 } 23279 for (int i = 0; i < element.getSpecimen().size(); i++) { 23280 composeReference(t, "ServiceRequest", "specimen", element.getSpecimen().get(i), i); 23281 } 23282 for (int i = 0; i < element.getBodySite().size(); i++) { 23283 composeCodeableConcept(t, "ServiceRequest", "bodySite", element.getBodySite().get(i), i); 23284 } 23285 if (element.hasBodyStructure()) { 23286 composeReference(t, "ServiceRequest", "bodyStructure", element.getBodyStructure(), -1); 23287 } 23288 for (int i = 0; i < element.getNote().size(); i++) { 23289 composeAnnotation(t, "ServiceRequest", "note", element.getNote().get(i), i); 23290 } 23291 for (int i = 0; i < element.getPatientInstruction().size(); i++) { 23292 composeServiceRequestPatientInstructionComponent(t, "ServiceRequest", "patientInstruction", element.getPatientInstruction().get(i), i); 23293 } 23294 for (int i = 0; i < element.getRelevantHistory().size(); i++) { 23295 composeReference(t, "ServiceRequest", "relevantHistory", element.getRelevantHistory().get(i), i); 23296 } 23297 } 23298 23299 protected void composeServiceRequestOrderDetailComponent(Complex parent, String parentType, String name, ServiceRequest.ServiceRequestOrderDetailComponent element, int index) { 23300 if (element == null) 23301 return; 23302 Complex t; 23303 if (Utilities.noString(parentType)) 23304 t = parent; 23305 else { 23306 t = parent.predicate("fhir:"+name,index > -1); 23307 } 23308 composeBackboneElement(t, "orderDetail", name, element, index); 23309 if (element.hasParameterFocus()) { 23310 composeCodeableReference(t, "ServiceRequestOrderDetailComponent", "parameterFocus", element.getParameterFocus(), -1); 23311 } 23312 for (int i = 0; i < element.getParameter().size(); i++) { 23313 composeServiceRequestOrderDetailParameterComponent(t, "ServiceRequestOrderDetailComponent", "parameter", element.getParameter().get(i), i); 23314 } 23315 } 23316 23317 protected void composeServiceRequestOrderDetailParameterComponent(Complex parent, String parentType, String name, ServiceRequest.ServiceRequestOrderDetailParameterComponent element, int index) { 23318 if (element == null) 23319 return; 23320 Complex t; 23321 if (Utilities.noString(parentType)) 23322 t = parent; 23323 else { 23324 t = parent.predicate("fhir:"+name,index > -1); 23325 } 23326 composeBackboneElement(t, "parameter", name, element, index); 23327 if (element.hasCode()) { 23328 composeCodeableConcept(t, "ServiceRequestOrderDetailParameterComponent", "code", element.getCode(), -1); 23329 } 23330 if (element.hasValue()) { 23331 composeType(t, "ServiceRequestOrderDetailParameterComponent", "value", element.getValue(), -1); 23332 } 23333 } 23334 23335 protected void composeServiceRequestPatientInstructionComponent(Complex parent, String parentType, String name, ServiceRequest.ServiceRequestPatientInstructionComponent element, int index) { 23336 if (element == null) 23337 return; 23338 Complex t; 23339 if (Utilities.noString(parentType)) 23340 t = parent; 23341 else { 23342 t = parent.predicate("fhir:"+name,index > -1); 23343 } 23344 composeBackboneElement(t, "patientInstruction", name, element, index); 23345 if (element.hasInstruction()) { 23346 composeType(t, "ServiceRequestPatientInstructionComponent", "instruction", element.getInstruction(), -1); 23347 } 23348 } 23349 23350 protected void composeSlot(Complex parent, String parentType, String name, Slot element, int index) { 23351 if (element == null) 23352 return; 23353 Complex t; 23354 if (Utilities.noString(parentType)) 23355 t = parent; 23356 else { 23357 t = parent.predicate("fhir:"+name,index > -1); 23358 } 23359 composeDomainResource(t, "Slot", name, element, index); 23360 for (int i = 0; i < element.getIdentifier().size(); i++) { 23361 composeIdentifier(t, "Slot", "identifier", element.getIdentifier().get(i), i); 23362 } 23363 for (int i = 0; i < element.getServiceCategory().size(); i++) { 23364 composeCodeableConcept(t, "Slot", "serviceCategory", element.getServiceCategory().get(i), i); 23365 } 23366 for (int i = 0; i < element.getServiceType().size(); i++) { 23367 composeCodeableReference(t, "Slot", "serviceType", element.getServiceType().get(i), i); 23368 } 23369 for (int i = 0; i < element.getSpecialty().size(); i++) { 23370 composeCodeableConcept(t, "Slot", "specialty", element.getSpecialty().get(i), i); 23371 } 23372 for (int i = 0; i < element.getAppointmentType().size(); i++) { 23373 composeCodeableConcept(t, "Slot", "appointmentType", element.getAppointmentType().get(i), i); 23374 } 23375 if (element.hasSchedule()) { 23376 composeReference(t, "Slot", "schedule", element.getSchedule(), -1); 23377 } 23378 if (element.hasStatusElement()) { 23379 composeEnum(t, "Slot", "status", element.getStatusElement(), -1); 23380 } 23381 if (element.hasStartElement()) { 23382 composeInstant(t, "Slot", "start", element.getStartElement(), -1); 23383 } 23384 if (element.hasEndElement()) { 23385 composeInstant(t, "Slot", "end", element.getEndElement(), -1); 23386 } 23387 if (element.hasOverbookedElement()) { 23388 composeBoolean(t, "Slot", "overbooked", element.getOverbookedElement(), -1); 23389 } 23390 if (element.hasCommentElement()) { 23391 composeString(t, "Slot", "comment", element.getCommentElement(), -1); 23392 } 23393 } 23394 23395 protected void composeSpecimen(Complex parent, String parentType, String name, Specimen element, int index) { 23396 if (element == null) 23397 return; 23398 Complex t; 23399 if (Utilities.noString(parentType)) 23400 t = parent; 23401 else { 23402 t = parent.predicate("fhir:"+name,index > -1); 23403 } 23404 composeDomainResource(t, "Specimen", name, element, index); 23405 for (int i = 0; i < element.getIdentifier().size(); i++) { 23406 composeIdentifier(t, "Specimen", "identifier", element.getIdentifier().get(i), i); 23407 } 23408 if (element.hasAccessionIdentifier()) { 23409 composeIdentifier(t, "Specimen", "accessionIdentifier", element.getAccessionIdentifier(), -1); 23410 } 23411 if (element.hasStatusElement()) { 23412 composeEnum(t, "Specimen", "status", element.getStatusElement(), -1); 23413 } 23414 if (element.hasType()) { 23415 composeCodeableConcept(t, "Specimen", "type", element.getType(), -1); 23416 } 23417 if (element.hasSubject()) { 23418 composeReference(t, "Specimen", "subject", element.getSubject(), -1); 23419 } 23420 if (element.hasReceivedTimeElement()) { 23421 composeDateTime(t, "Specimen", "receivedTime", element.getReceivedTimeElement(), -1); 23422 } 23423 for (int i = 0; i < element.getParent().size(); i++) { 23424 composeReference(t, "Specimen", "parent", element.getParent().get(i), i); 23425 } 23426 for (int i = 0; i < element.getRequest().size(); i++) { 23427 composeReference(t, "Specimen", "request", element.getRequest().get(i), i); 23428 } 23429 if (element.hasCombinedElement()) { 23430 composeEnum(t, "Specimen", "combined", element.getCombinedElement(), -1); 23431 } 23432 for (int i = 0; i < element.getRole().size(); i++) { 23433 composeCodeableConcept(t, "Specimen", "role", element.getRole().get(i), i); 23434 } 23435 for (int i = 0; i < element.getFeature().size(); i++) { 23436 composeSpecimenFeatureComponent(t, "Specimen", "feature", element.getFeature().get(i), i); 23437 } 23438 if (element.hasCollection()) { 23439 composeSpecimenCollectionComponent(t, "Specimen", "collection", element.getCollection(), -1); 23440 } 23441 for (int i = 0; i < element.getProcessing().size(); i++) { 23442 composeSpecimenProcessingComponent(t, "Specimen", "processing", element.getProcessing().get(i), i); 23443 } 23444 for (int i = 0; i < element.getContainer().size(); i++) { 23445 composeSpecimenContainerComponent(t, "Specimen", "container", element.getContainer().get(i), i); 23446 } 23447 for (int i = 0; i < element.getCondition().size(); i++) { 23448 composeCodeableConcept(t, "Specimen", "condition", element.getCondition().get(i), i); 23449 } 23450 for (int i = 0; i < element.getNote().size(); i++) { 23451 composeAnnotation(t, "Specimen", "note", element.getNote().get(i), i); 23452 } 23453 } 23454 23455 protected void composeSpecimenFeatureComponent(Complex parent, String parentType, String name, Specimen.SpecimenFeatureComponent element, int index) { 23456 if (element == null) 23457 return; 23458 Complex t; 23459 if (Utilities.noString(parentType)) 23460 t = parent; 23461 else { 23462 t = parent.predicate("fhir:"+name,index > -1); 23463 } 23464 composeBackboneElement(t, "feature", name, element, index); 23465 if (element.hasType()) { 23466 composeCodeableConcept(t, "SpecimenFeatureComponent", "type", element.getType(), -1); 23467 } 23468 if (element.hasDescriptionElement()) { 23469 composeString(t, "SpecimenFeatureComponent", "description", element.getDescriptionElement(), -1); 23470 } 23471 } 23472 23473 protected void composeSpecimenCollectionComponent(Complex parent, String parentType, String name, Specimen.SpecimenCollectionComponent element, int index) { 23474 if (element == null) 23475 return; 23476 Complex t; 23477 if (Utilities.noString(parentType)) 23478 t = parent; 23479 else { 23480 t = parent.predicate("fhir:"+name,index > -1); 23481 } 23482 composeBackboneElement(t, "collection", name, element, index); 23483 if (element.hasCollector()) { 23484 composeReference(t, "SpecimenCollectionComponent", "collector", element.getCollector(), -1); 23485 } 23486 if (element.hasCollected()) { 23487 composeType(t, "SpecimenCollectionComponent", "collected", element.getCollected(), -1); 23488 } 23489 if (element.hasDuration()) { 23490 composeDuration(t, "SpecimenCollectionComponent", "duration", element.getDuration(), -1); 23491 } 23492 if (element.hasQuantity()) { 23493 composeQuantity(t, "SpecimenCollectionComponent", "quantity", element.getQuantity(), -1); 23494 } 23495 if (element.hasMethod()) { 23496 composeCodeableConcept(t, "SpecimenCollectionComponent", "method", element.getMethod(), -1); 23497 } 23498 if (element.hasDevice()) { 23499 composeCodeableReference(t, "SpecimenCollectionComponent", "device", element.getDevice(), -1); 23500 } 23501 if (element.hasProcedure()) { 23502 composeReference(t, "SpecimenCollectionComponent", "procedure", element.getProcedure(), -1); 23503 } 23504 if (element.hasBodySite()) { 23505 composeCodeableReference(t, "SpecimenCollectionComponent", "bodySite", element.getBodySite(), -1); 23506 } 23507 if (element.hasFastingStatus()) { 23508 composeType(t, "SpecimenCollectionComponent", "fastingStatus", element.getFastingStatus(), -1); 23509 } 23510 } 23511 23512 protected void composeSpecimenProcessingComponent(Complex parent, String parentType, String name, Specimen.SpecimenProcessingComponent element, int index) { 23513 if (element == null) 23514 return; 23515 Complex t; 23516 if (Utilities.noString(parentType)) 23517 t = parent; 23518 else { 23519 t = parent.predicate("fhir:"+name,index > -1); 23520 } 23521 composeBackboneElement(t, "processing", name, element, index); 23522 if (element.hasDescriptionElement()) { 23523 composeString(t, "SpecimenProcessingComponent", "description", element.getDescriptionElement(), -1); 23524 } 23525 if (element.hasMethod()) { 23526 composeCodeableConcept(t, "SpecimenProcessingComponent", "method", element.getMethod(), -1); 23527 } 23528 for (int i = 0; i < element.getAdditive().size(); i++) { 23529 composeReference(t, "SpecimenProcessingComponent", "additive", element.getAdditive().get(i), i); 23530 } 23531 if (element.hasTime()) { 23532 composeType(t, "SpecimenProcessingComponent", "time", element.getTime(), -1); 23533 } 23534 } 23535 23536 protected void composeSpecimenContainerComponent(Complex parent, String parentType, String name, Specimen.SpecimenContainerComponent element, int index) { 23537 if (element == null) 23538 return; 23539 Complex t; 23540 if (Utilities.noString(parentType)) 23541 t = parent; 23542 else { 23543 t = parent.predicate("fhir:"+name,index > -1); 23544 } 23545 composeBackboneElement(t, "container", name, element, index); 23546 if (element.hasDevice()) { 23547 composeReference(t, "SpecimenContainerComponent", "device", element.getDevice(), -1); 23548 } 23549 if (element.hasLocation()) { 23550 composeReference(t, "SpecimenContainerComponent", "location", element.getLocation(), -1); 23551 } 23552 if (element.hasSpecimenQuantity()) { 23553 composeQuantity(t, "SpecimenContainerComponent", "specimenQuantity", element.getSpecimenQuantity(), -1); 23554 } 23555 } 23556 23557 protected void composeSpecimenDefinition(Complex parent, String parentType, String name, SpecimenDefinition element, int index) { 23558 if (element == null) 23559 return; 23560 Complex t; 23561 if (Utilities.noString(parentType)) 23562 t = parent; 23563 else { 23564 t = parent.predicate("fhir:"+name,index > -1); 23565 } 23566 composeDomainResource(t, "SpecimenDefinition", name, element, index); 23567 if (element.hasUrlElement()) { 23568 composeUri(t, "SpecimenDefinition", "url", element.getUrlElement(), -1); 23569 } 23570 if (element.hasIdentifier()) { 23571 composeIdentifier(t, "SpecimenDefinition", "identifier", element.getIdentifier(), -1); 23572 } 23573 if (element.hasVersionElement()) { 23574 composeString(t, "SpecimenDefinition", "version", element.getVersionElement(), -1); 23575 } 23576 if (element.hasVersionAlgorithm()) { 23577 composeType(t, "SpecimenDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 23578 } 23579 if (element.hasNameElement()) { 23580 composeString(t, "SpecimenDefinition", "name", element.getNameElement(), -1); 23581 } 23582 if (element.hasTitleElement()) { 23583 composeString(t, "SpecimenDefinition", "title", element.getTitleElement(), -1); 23584 } 23585 for (int i = 0; i < element.getDerivedFromCanonical().size(); i++) { 23586 composeCanonical(t, "SpecimenDefinition", "derivedFromCanonical", element.getDerivedFromCanonical().get(i), i); 23587 } 23588 for (int i = 0; i < element.getDerivedFromUri().size(); i++) { 23589 composeUri(t, "SpecimenDefinition", "derivedFromUri", element.getDerivedFromUri().get(i), i); 23590 } 23591 if (element.hasStatusElement()) { 23592 composeEnum(t, "SpecimenDefinition", "status", element.getStatusElement(), -1); 23593 } 23594 if (element.hasExperimentalElement()) { 23595 composeBoolean(t, "SpecimenDefinition", "experimental", element.getExperimentalElement(), -1); 23596 } 23597 if (element.hasSubject()) { 23598 composeType(t, "SpecimenDefinition", "subject", element.getSubject(), -1); 23599 } 23600 if (element.hasDateElement()) { 23601 composeDateTime(t, "SpecimenDefinition", "date", element.getDateElement(), -1); 23602 } 23603 if (element.hasPublisherElement()) { 23604 composeString(t, "SpecimenDefinition", "publisher", element.getPublisherElement(), -1); 23605 } 23606 for (int i = 0; i < element.getContact().size(); i++) { 23607 composeContactDetail(t, "SpecimenDefinition", "contact", element.getContact().get(i), i); 23608 } 23609 if (element.hasDescriptionElement()) { 23610 composeMarkdown(t, "SpecimenDefinition", "description", element.getDescriptionElement(), -1); 23611 } 23612 for (int i = 0; i < element.getUseContext().size(); i++) { 23613 composeUsageContext(t, "SpecimenDefinition", "useContext", element.getUseContext().get(i), i); 23614 } 23615 for (int i = 0; i < element.getJurisdiction().size(); i++) { 23616 composeCodeableConcept(t, "SpecimenDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 23617 } 23618 if (element.hasPurposeElement()) { 23619 composeMarkdown(t, "SpecimenDefinition", "purpose", element.getPurposeElement(), -1); 23620 } 23621 if (element.hasCopyrightElement()) { 23622 composeMarkdown(t, "SpecimenDefinition", "copyright", element.getCopyrightElement(), -1); 23623 } 23624 if (element.hasCopyrightLabelElement()) { 23625 composeString(t, "SpecimenDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 23626 } 23627 if (element.hasApprovalDateElement()) { 23628 composeDate(t, "SpecimenDefinition", "approvalDate", element.getApprovalDateElement(), -1); 23629 } 23630 if (element.hasLastReviewDateElement()) { 23631 composeDate(t, "SpecimenDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 23632 } 23633 if (element.hasEffectivePeriod()) { 23634 composePeriod(t, "SpecimenDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 23635 } 23636 if (element.hasTypeCollected()) { 23637 composeCodeableConcept(t, "SpecimenDefinition", "typeCollected", element.getTypeCollected(), -1); 23638 } 23639 for (int i = 0; i < element.getPatientPreparation().size(); i++) { 23640 composeCodeableConcept(t, "SpecimenDefinition", "patientPreparation", element.getPatientPreparation().get(i), i); 23641 } 23642 if (element.hasTimeAspectElement()) { 23643 composeString(t, "SpecimenDefinition", "timeAspect", element.getTimeAspectElement(), -1); 23644 } 23645 for (int i = 0; i < element.getCollection().size(); i++) { 23646 composeCodeableConcept(t, "SpecimenDefinition", "collection", element.getCollection().get(i), i); 23647 } 23648 for (int i = 0; i < element.getTypeTested().size(); i++) { 23649 composeSpecimenDefinitionTypeTestedComponent(t, "SpecimenDefinition", "typeTested", element.getTypeTested().get(i), i); 23650 } 23651 } 23652 23653 protected void composeSpecimenDefinitionTypeTestedComponent(Complex parent, String parentType, String name, SpecimenDefinition.SpecimenDefinitionTypeTestedComponent element, int index) { 23654 if (element == null) 23655 return; 23656 Complex t; 23657 if (Utilities.noString(parentType)) 23658 t = parent; 23659 else { 23660 t = parent.predicate("fhir:"+name,index > -1); 23661 } 23662 composeBackboneElement(t, "typeTested", name, element, index); 23663 if (element.hasIsDerivedElement()) { 23664 composeBoolean(t, "SpecimenDefinitionTypeTestedComponent", "isDerived", element.getIsDerivedElement(), -1); 23665 } 23666 if (element.hasType()) { 23667 composeCodeableConcept(t, "SpecimenDefinitionTypeTestedComponent", "type", element.getType(), -1); 23668 } 23669 if (element.hasPreferenceElement()) { 23670 composeEnum(t, "SpecimenDefinitionTypeTestedComponent", "preference", element.getPreferenceElement(), -1); 23671 } 23672 if (element.hasContainer()) { 23673 composeSpecimenDefinitionTypeTestedContainerComponent(t, "SpecimenDefinitionTypeTestedComponent", "container", element.getContainer(), -1); 23674 } 23675 if (element.hasRequirementElement()) { 23676 composeMarkdown(t, "SpecimenDefinitionTypeTestedComponent", "requirement", element.getRequirementElement(), -1); 23677 } 23678 if (element.hasRetentionTime()) { 23679 composeDuration(t, "SpecimenDefinitionTypeTestedComponent", "retentionTime", element.getRetentionTime(), -1); 23680 } 23681 if (element.hasSingleUseElement()) { 23682 composeBoolean(t, "SpecimenDefinitionTypeTestedComponent", "singleUse", element.getSingleUseElement(), -1); 23683 } 23684 for (int i = 0; i < element.getRejectionCriterion().size(); i++) { 23685 composeCodeableConcept(t, "SpecimenDefinitionTypeTestedComponent", "rejectionCriterion", element.getRejectionCriterion().get(i), i); 23686 } 23687 for (int i = 0; i < element.getHandling().size(); i++) { 23688 composeSpecimenDefinitionTypeTestedHandlingComponent(t, "SpecimenDefinitionTypeTestedComponent", "handling", element.getHandling().get(i), i); 23689 } 23690 for (int i = 0; i < element.getTestingDestination().size(); i++) { 23691 composeCodeableConcept(t, "SpecimenDefinitionTypeTestedComponent", "testingDestination", element.getTestingDestination().get(i), i); 23692 } 23693 } 23694 23695 protected void composeSpecimenDefinitionTypeTestedContainerComponent(Complex parent, String parentType, String name, SpecimenDefinition.SpecimenDefinitionTypeTestedContainerComponent element, int index) { 23696 if (element == null) 23697 return; 23698 Complex t; 23699 if (Utilities.noString(parentType)) 23700 t = parent; 23701 else { 23702 t = parent.predicate("fhir:"+name,index > -1); 23703 } 23704 composeBackboneElement(t, "container", name, element, index); 23705 if (element.hasMaterial()) { 23706 composeCodeableConcept(t, "SpecimenDefinitionTypeTestedContainerComponent", "material", element.getMaterial(), -1); 23707 } 23708 if (element.hasType()) { 23709 composeCodeableConcept(t, "SpecimenDefinitionTypeTestedContainerComponent", "type", element.getType(), -1); 23710 } 23711 if (element.hasCap()) { 23712 composeCodeableConcept(t, "SpecimenDefinitionTypeTestedContainerComponent", "cap", element.getCap(), -1); 23713 } 23714 if (element.hasDescriptionElement()) { 23715 composeMarkdown(t, "SpecimenDefinitionTypeTestedContainerComponent", "description", element.getDescriptionElement(), -1); 23716 } 23717 if (element.hasCapacity()) { 23718 composeQuantity(t, "SpecimenDefinitionTypeTestedContainerComponent", "capacity", element.getCapacity(), -1); 23719 } 23720 if (element.hasMinimumVolume()) { 23721 composeType(t, "SpecimenDefinitionTypeTestedContainerComponent", "minimumVolume", element.getMinimumVolume(), -1); 23722 } 23723 for (int i = 0; i < element.getAdditive().size(); i++) { 23724 composeSpecimenDefinitionTypeTestedContainerAdditiveComponent(t, "SpecimenDefinitionTypeTestedContainerComponent", "additive", element.getAdditive().get(i), i); 23725 } 23726 if (element.hasPreparationElement()) { 23727 composeMarkdown(t, "SpecimenDefinitionTypeTestedContainerComponent", "preparation", element.getPreparationElement(), -1); 23728 } 23729 } 23730 23731 protected void composeSpecimenDefinitionTypeTestedContainerAdditiveComponent(Complex parent, String parentType, String name, SpecimenDefinition.SpecimenDefinitionTypeTestedContainerAdditiveComponent element, int index) { 23732 if (element == null) 23733 return; 23734 Complex t; 23735 if (Utilities.noString(parentType)) 23736 t = parent; 23737 else { 23738 t = parent.predicate("fhir:"+name,index > -1); 23739 } 23740 composeBackboneElement(t, "additive", name, element, index); 23741 if (element.hasAdditive()) { 23742 composeType(t, "SpecimenDefinitionTypeTestedContainerAdditiveComponent", "additive", element.getAdditive(), -1); 23743 } 23744 } 23745 23746 protected void composeSpecimenDefinitionTypeTestedHandlingComponent(Complex parent, String parentType, String name, SpecimenDefinition.SpecimenDefinitionTypeTestedHandlingComponent element, int index) { 23747 if (element == null) 23748 return; 23749 Complex t; 23750 if (Utilities.noString(parentType)) 23751 t = parent; 23752 else { 23753 t = parent.predicate("fhir:"+name,index > -1); 23754 } 23755 composeBackboneElement(t, "handling", name, element, index); 23756 if (element.hasTemperatureQualifier()) { 23757 composeCodeableConcept(t, "SpecimenDefinitionTypeTestedHandlingComponent", "temperatureQualifier", element.getTemperatureQualifier(), -1); 23758 } 23759 if (element.hasTemperatureRange()) { 23760 composeRange(t, "SpecimenDefinitionTypeTestedHandlingComponent", "temperatureRange", element.getTemperatureRange(), -1); 23761 } 23762 if (element.hasMaxDuration()) { 23763 composeDuration(t, "SpecimenDefinitionTypeTestedHandlingComponent", "maxDuration", element.getMaxDuration(), -1); 23764 } 23765 if (element.hasInstructionElement()) { 23766 composeMarkdown(t, "SpecimenDefinitionTypeTestedHandlingComponent", "instruction", element.getInstructionElement(), -1); 23767 } 23768 } 23769 23770 protected void composeStructureDefinition(Complex parent, String parentType, String name, StructureDefinition element, int index) { 23771 if (element == null) 23772 return; 23773 Complex t; 23774 if (Utilities.noString(parentType)) 23775 t = parent; 23776 else { 23777 t = parent.predicate("fhir:"+name,index > -1); 23778 } 23779 composeCanonicalResource(t, "StructureDefinition", name, element, index); 23780 if (element.hasUrlElement()) { 23781 composeUri(t, "StructureDefinition", "url", element.getUrlElement(), -1); 23782 } 23783 for (int i = 0; i < element.getIdentifier().size(); i++) { 23784 composeIdentifier(t, "StructureDefinition", "identifier", element.getIdentifier().get(i), i); 23785 } 23786 if (element.hasVersionElement()) { 23787 composeString(t, "StructureDefinition", "version", element.getVersionElement(), -1); 23788 } 23789 if (element.hasVersionAlgorithm()) { 23790 composeType(t, "StructureDefinition", "versionAlgorithm", element.getVersionAlgorithm(), -1); 23791 } 23792 if (element.hasNameElement()) { 23793 composeString(t, "StructureDefinition", "name", element.getNameElement(), -1); 23794 } 23795 if (element.hasTitleElement()) { 23796 composeString(t, "StructureDefinition", "title", element.getTitleElement(), -1); 23797 } 23798 if (element.hasStatusElement()) { 23799 composeEnum(t, "StructureDefinition", "status", element.getStatusElement(), -1); 23800 } 23801 if (element.hasExperimentalElement()) { 23802 composeBoolean(t, "StructureDefinition", "experimental", element.getExperimentalElement(), -1); 23803 } 23804 if (element.hasDateElement()) { 23805 composeDateTime(t, "StructureDefinition", "date", element.getDateElement(), -1); 23806 } 23807 if (element.hasPublisherElement()) { 23808 composeString(t, "StructureDefinition", "publisher", element.getPublisherElement(), -1); 23809 } 23810 for (int i = 0; i < element.getContact().size(); i++) { 23811 composeContactDetail(t, "StructureDefinition", "contact", element.getContact().get(i), i); 23812 } 23813 if (element.hasDescriptionElement()) { 23814 composeMarkdown(t, "StructureDefinition", "description", element.getDescriptionElement(), -1); 23815 } 23816 for (int i = 0; i < element.getUseContext().size(); i++) { 23817 composeUsageContext(t, "StructureDefinition", "useContext", element.getUseContext().get(i), i); 23818 } 23819 for (int i = 0; i < element.getJurisdiction().size(); i++) { 23820 composeCodeableConcept(t, "StructureDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 23821 } 23822 if (element.hasPurposeElement()) { 23823 composeMarkdown(t, "StructureDefinition", "purpose", element.getPurposeElement(), -1); 23824 } 23825 if (element.hasCopyrightElement()) { 23826 composeMarkdown(t, "StructureDefinition", "copyright", element.getCopyrightElement(), -1); 23827 } 23828 if (element.hasCopyrightLabelElement()) { 23829 composeString(t, "StructureDefinition", "copyrightLabel", element.getCopyrightLabelElement(), -1); 23830 } 23831 for (int i = 0; i < element.getKeyword().size(); i++) { 23832 composeCoding(t, "StructureDefinition", "keyword", element.getKeyword().get(i), i); 23833 } 23834 if (element.hasFhirVersionElement()) { 23835 composeEnum(t, "StructureDefinition", "fhirVersion", element.getFhirVersionElement(), -1); 23836 } 23837 for (int i = 0; i < element.getMapping().size(); i++) { 23838 composeStructureDefinitionMappingComponent(t, "StructureDefinition", "mapping", element.getMapping().get(i), i); 23839 } 23840 if (element.hasKindElement()) { 23841 composeEnum(t, "StructureDefinition", "kind", element.getKindElement(), -1); 23842 } 23843 if (element.hasAbstractElement()) { 23844 composeBoolean(t, "StructureDefinition", "abstract", element.getAbstractElement(), -1); 23845 } 23846 for (int i = 0; i < element.getContext().size(); i++) { 23847 composeStructureDefinitionContextComponent(t, "StructureDefinition", "context", element.getContext().get(i), i); 23848 } 23849 for (int i = 0; i < element.getContextInvariant().size(); i++) { 23850 composeString(t, "StructureDefinition", "contextInvariant", element.getContextInvariant().get(i), i); 23851 } 23852 if (element.hasTypeElement()) { 23853 composeUri(t, "StructureDefinition", "type", element.getTypeElement(), -1); 23854 } 23855 if (element.hasBaseDefinitionElement()) { 23856 composeCanonical(t, "StructureDefinition", "baseDefinition", element.getBaseDefinitionElement(), -1); 23857 } 23858 if (element.hasDerivationElement()) { 23859 composeEnum(t, "StructureDefinition", "derivation", element.getDerivationElement(), -1); 23860 } 23861 if (element.hasSnapshot()) { 23862 composeStructureDefinitionSnapshotComponent(t, "StructureDefinition", "snapshot", element.getSnapshot(), -1); 23863 } 23864 if (element.hasDifferential()) { 23865 composeStructureDefinitionDifferentialComponent(t, "StructureDefinition", "differential", element.getDifferential(), -1); 23866 } 23867 } 23868 23869 protected void composeStructureDefinitionMappingComponent(Complex parent, String parentType, String name, StructureDefinition.StructureDefinitionMappingComponent element, int index) { 23870 if (element == null) 23871 return; 23872 Complex t; 23873 if (Utilities.noString(parentType)) 23874 t = parent; 23875 else { 23876 t = parent.predicate("fhir:"+name,index > -1); 23877 } 23878 composeBackboneElement(t, "mapping", name, element, index); 23879 if (element.hasIdentityElement()) { 23880 composeId(t, "StructureDefinitionMappingComponent", "identity", element.getIdentityElement(), -1); 23881 } 23882 if (element.hasUriElement()) { 23883 composeUri(t, "StructureDefinitionMappingComponent", "uri", element.getUriElement(), -1); 23884 } 23885 if (element.hasNameElement()) { 23886 composeString(t, "StructureDefinitionMappingComponent", "name", element.getNameElement(), -1); 23887 } 23888 if (element.hasCommentElement()) { 23889 composeString(t, "StructureDefinitionMappingComponent", "comment", element.getCommentElement(), -1); 23890 } 23891 } 23892 23893 protected void composeStructureDefinitionContextComponent(Complex parent, String parentType, String name, StructureDefinition.StructureDefinitionContextComponent element, int index) { 23894 if (element == null) 23895 return; 23896 Complex t; 23897 if (Utilities.noString(parentType)) 23898 t = parent; 23899 else { 23900 t = parent.predicate("fhir:"+name,index > -1); 23901 } 23902 composeBackboneElement(t, "context", name, element, index); 23903 if (element.hasTypeElement()) { 23904 composeEnum(t, "StructureDefinitionContextComponent", "type", element.getTypeElement(), -1); 23905 } 23906 if (element.hasExpressionElement()) { 23907 composeString(t, "StructureDefinitionContextComponent", "expression", element.getExpressionElement(), -1); 23908 } 23909 } 23910 23911 protected void composeStructureDefinitionSnapshotComponent(Complex parent, String parentType, String name, StructureDefinition.StructureDefinitionSnapshotComponent element, int index) { 23912 if (element == null) 23913 return; 23914 Complex t; 23915 if (Utilities.noString(parentType)) 23916 t = parent; 23917 else { 23918 t = parent.predicate("fhir:"+name,index > -1); 23919 } 23920 composeBackboneElement(t, "snapshot", name, element, index); 23921 for (int i = 0; i < element.getElement().size(); i++) { 23922 composeElementDefinition(t, "StructureDefinitionSnapshotComponent", "element", element.getElement().get(i), i); 23923 } 23924 } 23925 23926 protected void composeStructureDefinitionDifferentialComponent(Complex parent, String parentType, String name, StructureDefinition.StructureDefinitionDifferentialComponent element, int index) { 23927 if (element == null) 23928 return; 23929 Complex t; 23930 if (Utilities.noString(parentType)) 23931 t = parent; 23932 else { 23933 t = parent.predicate("fhir:"+name,index > -1); 23934 } 23935 composeBackboneElement(t, "differential", name, element, index); 23936 for (int i = 0; i < element.getElement().size(); i++) { 23937 composeElementDefinition(t, "StructureDefinitionDifferentialComponent", "element", element.getElement().get(i), i); 23938 } 23939 } 23940 23941 protected void composeStructureMap(Complex parent, String parentType, String name, StructureMap element, int index) { 23942 if (element == null) 23943 return; 23944 Complex t; 23945 if (Utilities.noString(parentType)) 23946 t = parent; 23947 else { 23948 t = parent.predicate("fhir:"+name,index > -1); 23949 } 23950 composeCanonicalResource(t, "StructureMap", name, element, index); 23951 if (element.hasUrlElement()) { 23952 composeUri(t, "StructureMap", "url", element.getUrlElement(), -1); 23953 } 23954 for (int i = 0; i < element.getIdentifier().size(); i++) { 23955 composeIdentifier(t, "StructureMap", "identifier", element.getIdentifier().get(i), i); 23956 } 23957 if (element.hasVersionElement()) { 23958 composeString(t, "StructureMap", "version", element.getVersionElement(), -1); 23959 } 23960 if (element.hasVersionAlgorithm()) { 23961 composeType(t, "StructureMap", "versionAlgorithm", element.getVersionAlgorithm(), -1); 23962 } 23963 if (element.hasNameElement()) { 23964 composeString(t, "StructureMap", "name", element.getNameElement(), -1); 23965 } 23966 if (element.hasTitleElement()) { 23967 composeString(t, "StructureMap", "title", element.getTitleElement(), -1); 23968 } 23969 if (element.hasStatusElement()) { 23970 composeEnum(t, "StructureMap", "status", element.getStatusElement(), -1); 23971 } 23972 if (element.hasExperimentalElement()) { 23973 composeBoolean(t, "StructureMap", "experimental", element.getExperimentalElement(), -1); 23974 } 23975 if (element.hasDateElement()) { 23976 composeDateTime(t, "StructureMap", "date", element.getDateElement(), -1); 23977 } 23978 if (element.hasPublisherElement()) { 23979 composeString(t, "StructureMap", "publisher", element.getPublisherElement(), -1); 23980 } 23981 for (int i = 0; i < element.getContact().size(); i++) { 23982 composeContactDetail(t, "StructureMap", "contact", element.getContact().get(i), i); 23983 } 23984 if (element.hasDescriptionElement()) { 23985 composeMarkdown(t, "StructureMap", "description", element.getDescriptionElement(), -1); 23986 } 23987 for (int i = 0; i < element.getUseContext().size(); i++) { 23988 composeUsageContext(t, "StructureMap", "useContext", element.getUseContext().get(i), i); 23989 } 23990 for (int i = 0; i < element.getJurisdiction().size(); i++) { 23991 composeCodeableConcept(t, "StructureMap", "jurisdiction", element.getJurisdiction().get(i), i); 23992 } 23993 if (element.hasPurposeElement()) { 23994 composeMarkdown(t, "StructureMap", "purpose", element.getPurposeElement(), -1); 23995 } 23996 if (element.hasCopyrightElement()) { 23997 composeMarkdown(t, "StructureMap", "copyright", element.getCopyrightElement(), -1); 23998 } 23999 if (element.hasCopyrightLabelElement()) { 24000 composeString(t, "StructureMap", "copyrightLabel", element.getCopyrightLabelElement(), -1); 24001 } 24002 for (int i = 0; i < element.getStructure().size(); i++) { 24003 composeStructureMapStructureComponent(t, "StructureMap", "structure", element.getStructure().get(i), i); 24004 } 24005 for (int i = 0; i < element.getImport().size(); i++) { 24006 composeCanonical(t, "StructureMap", "import", element.getImport().get(i), i); 24007 } 24008 for (int i = 0; i < element.getConst().size(); i++) { 24009 composeStructureMapConstComponent(t, "StructureMap", "const", element.getConst().get(i), i); 24010 } 24011 for (int i = 0; i < element.getGroup().size(); i++) { 24012 composeStructureMapGroupComponent(t, "StructureMap", "group", element.getGroup().get(i), i); 24013 } 24014 } 24015 24016 protected void composeStructureMapStructureComponent(Complex parent, String parentType, String name, StructureMap.StructureMapStructureComponent element, int index) { 24017 if (element == null) 24018 return; 24019 Complex t; 24020 if (Utilities.noString(parentType)) 24021 t = parent; 24022 else { 24023 t = parent.predicate("fhir:"+name,index > -1); 24024 } 24025 composeBackboneElement(t, "structure", name, element, index); 24026 if (element.hasUrlElement()) { 24027 composeCanonical(t, "StructureMapStructureComponent", "url", element.getUrlElement(), -1); 24028 } 24029 if (element.hasModeElement()) { 24030 composeEnum(t, "StructureMapStructureComponent", "mode", element.getModeElement(), -1); 24031 } 24032 if (element.hasAliasElement()) { 24033 composeString(t, "StructureMapStructureComponent", "alias", element.getAliasElement(), -1); 24034 } 24035 if (element.hasDocumentationElement()) { 24036 composeString(t, "StructureMapStructureComponent", "documentation", element.getDocumentationElement(), -1); 24037 } 24038 } 24039 24040 protected void composeStructureMapConstComponent(Complex parent, String parentType, String name, StructureMap.StructureMapConstComponent element, int index) { 24041 if (element == null) 24042 return; 24043 Complex t; 24044 if (Utilities.noString(parentType)) 24045 t = parent; 24046 else { 24047 t = parent.predicate("fhir:"+name,index > -1); 24048 } 24049 composeBackboneElement(t, "const", name, element, index); 24050 if (element.hasNameElement()) { 24051 composeId(t, "StructureMapConstComponent", "name", element.getNameElement(), -1); 24052 } 24053 if (element.hasValueElement()) { 24054 composeString(t, "StructureMapConstComponent", "value", element.getValueElement(), -1); 24055 } 24056 } 24057 24058 protected void composeStructureMapGroupComponent(Complex parent, String parentType, String name, StructureMap.StructureMapGroupComponent element, int index) { 24059 if (element == null) 24060 return; 24061 Complex t; 24062 if (Utilities.noString(parentType)) 24063 t = parent; 24064 else { 24065 t = parent.predicate("fhir:"+name,index > -1); 24066 } 24067 composeBackboneElement(t, "group", name, element, index); 24068 if (element.hasNameElement()) { 24069 composeId(t, "StructureMapGroupComponent", "name", element.getNameElement(), -1); 24070 } 24071 if (element.hasExtendsElement()) { 24072 composeId(t, "StructureMapGroupComponent", "extends", element.getExtendsElement(), -1); 24073 } 24074 if (element.hasTypeModeElement()) { 24075 composeEnum(t, "StructureMapGroupComponent", "typeMode", element.getTypeModeElement(), -1); 24076 } 24077 if (element.hasDocumentationElement()) { 24078 composeString(t, "StructureMapGroupComponent", "documentation", element.getDocumentationElement(), -1); 24079 } 24080 for (int i = 0; i < element.getInput().size(); i++) { 24081 composeStructureMapGroupInputComponent(t, "StructureMapGroupComponent", "input", element.getInput().get(i), i); 24082 } 24083 for (int i = 0; i < element.getRule().size(); i++) { 24084 composeStructureMapGroupRuleComponent(t, "StructureMapGroupComponent", "rule", element.getRule().get(i), i); 24085 } 24086 } 24087 24088 protected void composeStructureMapGroupInputComponent(Complex parent, String parentType, String name, StructureMap.StructureMapGroupInputComponent element, int index) { 24089 if (element == null) 24090 return; 24091 Complex t; 24092 if (Utilities.noString(parentType)) 24093 t = parent; 24094 else { 24095 t = parent.predicate("fhir:"+name,index > -1); 24096 } 24097 composeBackboneElement(t, "input", name, element, index); 24098 if (element.hasNameElement()) { 24099 composeId(t, "StructureMapGroupInputComponent", "name", element.getNameElement(), -1); 24100 } 24101 if (element.hasTypeElement()) { 24102 composeString(t, "StructureMapGroupInputComponent", "type", element.getTypeElement(), -1); 24103 } 24104 if (element.hasModeElement()) { 24105 composeEnum(t, "StructureMapGroupInputComponent", "mode", element.getModeElement(), -1); 24106 } 24107 if (element.hasDocumentationElement()) { 24108 composeString(t, "StructureMapGroupInputComponent", "documentation", element.getDocumentationElement(), -1); 24109 } 24110 } 24111 24112 protected void composeStructureMapGroupRuleComponent(Complex parent, String parentType, String name, StructureMap.StructureMapGroupRuleComponent element, int index) { 24113 if (element == null) 24114 return; 24115 Complex t; 24116 if (Utilities.noString(parentType)) 24117 t = parent; 24118 else { 24119 t = parent.predicate("fhir:"+name,index > -1); 24120 } 24121 composeBackboneElement(t, "rule", name, element, index); 24122 if (element.hasNameElement()) { 24123 composeId(t, "StructureMapGroupRuleComponent", "name", element.getNameElement(), -1); 24124 } 24125 for (int i = 0; i < element.getSource().size(); i++) { 24126 composeStructureMapGroupRuleSourceComponent(t, "StructureMapGroupRuleComponent", "source", element.getSource().get(i), i); 24127 } 24128 for (int i = 0; i < element.getTarget().size(); i++) { 24129 composeStructureMapGroupRuleTargetComponent(t, "StructureMapGroupRuleComponent", "target", element.getTarget().get(i), i); 24130 } 24131 for (int i = 0; i < element.getRule().size(); i++) { 24132 composeStructureMapGroupRuleComponent(t, "StructureMapGroupRuleComponent", "rule", element.getRule().get(i), i); 24133 } 24134 for (int i = 0; i < element.getDependent().size(); i++) { 24135 composeStructureMapGroupRuleDependentComponent(t, "StructureMapGroupRuleComponent", "dependent", element.getDependent().get(i), i); 24136 } 24137 if (element.hasDocumentationElement()) { 24138 composeString(t, "StructureMapGroupRuleComponent", "documentation", element.getDocumentationElement(), -1); 24139 } 24140 } 24141 24142 protected void composeStructureMapGroupRuleSourceComponent(Complex parent, String parentType, String name, StructureMap.StructureMapGroupRuleSourceComponent element, int index) { 24143 if (element == null) 24144 return; 24145 Complex t; 24146 if (Utilities.noString(parentType)) 24147 t = parent; 24148 else { 24149 t = parent.predicate("fhir:"+name,index > -1); 24150 } 24151 composeBackboneElement(t, "source", name, element, index); 24152 if (element.hasContextElement()) { 24153 composeId(t, "StructureMapGroupRuleSourceComponent", "context", element.getContextElement(), -1); 24154 } 24155 if (element.hasMinElement()) { 24156 composeInteger(t, "StructureMapGroupRuleSourceComponent", "min", element.getMinElement(), -1); 24157 } 24158 if (element.hasMaxElement()) { 24159 composeString(t, "StructureMapGroupRuleSourceComponent", "max", element.getMaxElement(), -1); 24160 } 24161 if (element.hasTypeElement()) { 24162 composeString(t, "StructureMapGroupRuleSourceComponent", "type", element.getTypeElement(), -1); 24163 } 24164 if (element.hasDefaultValueElement()) { 24165 composeString(t, "StructureMapGroupRuleSourceComponent", "defaultValue", element.getDefaultValueElement(), -1); 24166 } 24167 if (element.hasElementElement()) { 24168 composeString(t, "StructureMapGroupRuleSourceComponent", "element", element.getElementElement(), -1); 24169 } 24170 if (element.hasListModeElement()) { 24171 composeEnum(t, "StructureMapGroupRuleSourceComponent", "listMode", element.getListModeElement(), -1); 24172 } 24173 if (element.hasVariableElement()) { 24174 composeId(t, "StructureMapGroupRuleSourceComponent", "variable", element.getVariableElement(), -1); 24175 } 24176 if (element.hasConditionElement()) { 24177 composeString(t, "StructureMapGroupRuleSourceComponent", "condition", element.getConditionElement(), -1); 24178 } 24179 if (element.hasCheckElement()) { 24180 composeString(t, "StructureMapGroupRuleSourceComponent", "check", element.getCheckElement(), -1); 24181 } 24182 if (element.hasLogMessageElement()) { 24183 composeString(t, "StructureMapGroupRuleSourceComponent", "logMessage", element.getLogMessageElement(), -1); 24184 } 24185 } 24186 24187 protected void composeStructureMapGroupRuleTargetComponent(Complex parent, String parentType, String name, StructureMap.StructureMapGroupRuleTargetComponent element, int index) { 24188 if (element == null) 24189 return; 24190 Complex t; 24191 if (Utilities.noString(parentType)) 24192 t = parent; 24193 else { 24194 t = parent.predicate("fhir:"+name,index > -1); 24195 } 24196 composeBackboneElement(t, "target", name, element, index); 24197 if (element.hasContextElement()) { 24198 composeString(t, "StructureMapGroupRuleTargetComponent", "context", element.getContextElement(), -1); 24199 } 24200 if (element.hasElementElement()) { 24201 composeString(t, "StructureMapGroupRuleTargetComponent", "element", element.getElementElement(), -1); 24202 } 24203 if (element.hasVariableElement()) { 24204 composeId(t, "StructureMapGroupRuleTargetComponent", "variable", element.getVariableElement(), -1); 24205 } 24206 for (int i = 0; i < element.getListMode().size(); i++) { 24207 composeEnum(t, "StructureMapGroupRuleTargetComponent", "listMode", element.getListMode().get(i), i); 24208 } 24209 if (element.hasListRuleIdElement()) { 24210 composeId(t, "StructureMapGroupRuleTargetComponent", "listRuleId", element.getListRuleIdElement(), -1); 24211 } 24212 if (element.hasTransformElement()) { 24213 composeEnum(t, "StructureMapGroupRuleTargetComponent", "transform", element.getTransformElement(), -1); 24214 } 24215 for (int i = 0; i < element.getParameter().size(); i++) { 24216 composeStructureMapGroupRuleTargetParameterComponent(t, "StructureMapGroupRuleTargetComponent", "parameter", element.getParameter().get(i), i); 24217 } 24218 } 24219 24220 protected void composeStructureMapGroupRuleTargetParameterComponent(Complex parent, String parentType, String name, StructureMap.StructureMapGroupRuleTargetParameterComponent element, int index) { 24221 if (element == null) 24222 return; 24223 Complex t; 24224 if (Utilities.noString(parentType)) 24225 t = parent; 24226 else { 24227 t = parent.predicate("fhir:"+name,index > -1); 24228 } 24229 composeBackboneElement(t, "parameter", name, element, index); 24230 if (element.hasValue()) { 24231 composeType(t, "StructureMapGroupRuleTargetParameterComponent", "value", element.getValue(), -1); 24232 } 24233 } 24234 24235 protected void composeStructureMapGroupRuleDependentComponent(Complex parent, String parentType, String name, StructureMap.StructureMapGroupRuleDependentComponent element, int index) { 24236 if (element == null) 24237 return; 24238 Complex t; 24239 if (Utilities.noString(parentType)) 24240 t = parent; 24241 else { 24242 t = parent.predicate("fhir:"+name,index > -1); 24243 } 24244 composeBackboneElement(t, "dependent", name, element, index); 24245 if (element.hasNameElement()) { 24246 composeId(t, "StructureMapGroupRuleDependentComponent", "name", element.getNameElement(), -1); 24247 } 24248 for (int i = 0; i < element.getParameter().size(); i++) { 24249 composeStructureMapGroupRuleTargetParameterComponent(t, "StructureMapGroupRuleDependentComponent", "parameter", element.getParameter().get(i), i); 24250 } 24251 } 24252 24253 protected void composeSubscription(Complex parent, String parentType, String name, Subscription element, int index) { 24254 if (element == null) 24255 return; 24256 Complex t; 24257 if (Utilities.noString(parentType)) 24258 t = parent; 24259 else { 24260 t = parent.predicate("fhir:"+name,index > -1); 24261 } 24262 composeDomainResource(t, "Subscription", name, element, index); 24263 for (int i = 0; i < element.getIdentifier().size(); i++) { 24264 composeIdentifier(t, "Subscription", "identifier", element.getIdentifier().get(i), i); 24265 } 24266 if (element.hasNameElement()) { 24267 composeString(t, "Subscription", "name", element.getNameElement(), -1); 24268 } 24269 if (element.hasStatusElement()) { 24270 composeEnum(t, "Subscription", "status", element.getStatusElement(), -1); 24271 } 24272 if (element.hasTopicElement()) { 24273 composeCanonical(t, "Subscription", "topic", element.getTopicElement(), -1); 24274 } 24275 for (int i = 0; i < element.getContact().size(); i++) { 24276 composeContactPoint(t, "Subscription", "contact", element.getContact().get(i), i); 24277 } 24278 if (element.hasEndElement()) { 24279 composeInstant(t, "Subscription", "end", element.getEndElement(), -1); 24280 } 24281 if (element.hasManagingEntity()) { 24282 composeReference(t, "Subscription", "managingEntity", element.getManagingEntity(), -1); 24283 } 24284 if (element.hasReasonElement()) { 24285 composeString(t, "Subscription", "reason", element.getReasonElement(), -1); 24286 } 24287 for (int i = 0; i < element.getFilterBy().size(); i++) { 24288 composeSubscriptionFilterByComponent(t, "Subscription", "filterBy", element.getFilterBy().get(i), i); 24289 } 24290 if (element.hasChannelType()) { 24291 composeCoding(t, "Subscription", "channelType", element.getChannelType(), -1); 24292 } 24293 if (element.hasEndpointElement()) { 24294 composeUrl(t, "Subscription", "endpoint", element.getEndpointElement(), -1); 24295 } 24296 for (int i = 0; i < element.getParameter().size(); i++) { 24297 composeSubscriptionParameterComponent(t, "Subscription", "parameter", element.getParameter().get(i), i); 24298 } 24299 if (element.hasHeartbeatPeriodElement()) { 24300 composeUnsignedInt(t, "Subscription", "heartbeatPeriod", element.getHeartbeatPeriodElement(), -1); 24301 } 24302 if (element.hasTimeoutElement()) { 24303 composeUnsignedInt(t, "Subscription", "timeout", element.getTimeoutElement(), -1); 24304 } 24305 if (element.hasContentTypeElement()) { 24306 composeCode(t, "Subscription", "contentType", element.getContentTypeElement(), -1); 24307 } 24308 if (element.hasContentElement()) { 24309 composeEnum(t, "Subscription", "content", element.getContentElement(), -1); 24310 } 24311 if (element.hasMaxCountElement()) { 24312 composePositiveInt(t, "Subscription", "maxCount", element.getMaxCountElement(), -1); 24313 } 24314 } 24315 24316 protected void composeSubscriptionFilterByComponent(Complex parent, String parentType, String name, Subscription.SubscriptionFilterByComponent element, int index) { 24317 if (element == null) 24318 return; 24319 Complex t; 24320 if (Utilities.noString(parentType)) 24321 t = parent; 24322 else { 24323 t = parent.predicate("fhir:"+name,index > -1); 24324 } 24325 composeBackboneElement(t, "filterBy", name, element, index); 24326 if (element.hasResourceTypeElement()) { 24327 composeUri(t, "SubscriptionFilterByComponent", "resourceType", element.getResourceTypeElement(), -1); 24328 } 24329 if (element.hasFilterParameterElement()) { 24330 composeString(t, "SubscriptionFilterByComponent", "filterParameter", element.getFilterParameterElement(), -1); 24331 } 24332 if (element.hasComparatorElement()) { 24333 composeEnum(t, "SubscriptionFilterByComponent", "comparator", element.getComparatorElement(), -1); 24334 } 24335 if (element.hasModifierElement()) { 24336 composeEnum(t, "SubscriptionFilterByComponent", "modifier", element.getModifierElement(), -1); 24337 } 24338 if (element.hasValueElement()) { 24339 composeString(t, "SubscriptionFilterByComponent", "value", element.getValueElement(), -1); 24340 } 24341 } 24342 24343 protected void composeSubscriptionParameterComponent(Complex parent, String parentType, String name, Subscription.SubscriptionParameterComponent element, int index) { 24344 if (element == null) 24345 return; 24346 Complex t; 24347 if (Utilities.noString(parentType)) 24348 t = parent; 24349 else { 24350 t = parent.predicate("fhir:"+name,index > -1); 24351 } 24352 composeBackboneElement(t, "parameter", name, element, index); 24353 if (element.hasNameElement()) { 24354 composeString(t, "SubscriptionParameterComponent", "name", element.getNameElement(), -1); 24355 } 24356 if (element.hasValueElement()) { 24357 composeString(t, "SubscriptionParameterComponent", "value", element.getValueElement(), -1); 24358 } 24359 } 24360 24361 protected void composeSubscriptionStatus(Complex parent, String parentType, String name, SubscriptionStatus element, int index) { 24362 if (element == null) 24363 return; 24364 Complex t; 24365 if (Utilities.noString(parentType)) 24366 t = parent; 24367 else { 24368 t = parent.predicate("fhir:"+name,index > -1); 24369 } 24370 composeDomainResource(t, "SubscriptionStatus", name, element, index); 24371 if (element.hasStatusElement()) { 24372 composeEnum(t, "SubscriptionStatus", "status", element.getStatusElement(), -1); 24373 } 24374 if (element.hasTypeElement()) { 24375 composeEnum(t, "SubscriptionStatus", "type", element.getTypeElement(), -1); 24376 } 24377 if (element.hasEventsSinceSubscriptionStartElement()) { 24378 composeInteger64(t, "SubscriptionStatus", "eventsSinceSubscriptionStart", element.getEventsSinceSubscriptionStartElement(), -1); 24379 } 24380 for (int i = 0; i < element.getNotificationEvent().size(); i++) { 24381 composeSubscriptionStatusNotificationEventComponent(t, "SubscriptionStatus", "notificationEvent", element.getNotificationEvent().get(i), i); 24382 } 24383 if (element.hasSubscription()) { 24384 composeReference(t, "SubscriptionStatus", "subscription", element.getSubscription(), -1); 24385 } 24386 if (element.hasTopicElement()) { 24387 composeCanonical(t, "SubscriptionStatus", "topic", element.getTopicElement(), -1); 24388 } 24389 for (int i = 0; i < element.getError().size(); i++) { 24390 composeCodeableConcept(t, "SubscriptionStatus", "error", element.getError().get(i), i); 24391 } 24392 } 24393 24394 protected void composeSubscriptionStatusNotificationEventComponent(Complex parent, String parentType, String name, SubscriptionStatus.SubscriptionStatusNotificationEventComponent element, int index) { 24395 if (element == null) 24396 return; 24397 Complex t; 24398 if (Utilities.noString(parentType)) 24399 t = parent; 24400 else { 24401 t = parent.predicate("fhir:"+name,index > -1); 24402 } 24403 composeBackboneElement(t, "notificationEvent", name, element, index); 24404 if (element.hasEventNumberElement()) { 24405 composeInteger64(t, "SubscriptionStatusNotificationEventComponent", "eventNumber", element.getEventNumberElement(), -1); 24406 } 24407 if (element.hasTimestampElement()) { 24408 composeInstant(t, "SubscriptionStatusNotificationEventComponent", "timestamp", element.getTimestampElement(), -1); 24409 } 24410 if (element.hasFocus()) { 24411 composeReference(t, "SubscriptionStatusNotificationEventComponent", "focus", element.getFocus(), -1); 24412 } 24413 for (int i = 0; i < element.getAdditionalContext().size(); i++) { 24414 composeReference(t, "SubscriptionStatusNotificationEventComponent", "additionalContext", element.getAdditionalContext().get(i), i); 24415 } 24416 } 24417 24418 protected void composeSubscriptionTopic(Complex parent, String parentType, String name, SubscriptionTopic element, int index) { 24419 if (element == null) 24420 return; 24421 Complex t; 24422 if (Utilities.noString(parentType)) 24423 t = parent; 24424 else { 24425 t = parent.predicate("fhir:"+name,index > -1); 24426 } 24427 composeCanonicalResource(t, "SubscriptionTopic", name, element, index); 24428 if (element.hasUrlElement()) { 24429 composeUri(t, "SubscriptionTopic", "url", element.getUrlElement(), -1); 24430 } 24431 for (int i = 0; i < element.getIdentifier().size(); i++) { 24432 composeIdentifier(t, "SubscriptionTopic", "identifier", element.getIdentifier().get(i), i); 24433 } 24434 if (element.hasVersionElement()) { 24435 composeString(t, "SubscriptionTopic", "version", element.getVersionElement(), -1); 24436 } 24437 if (element.hasVersionAlgorithm()) { 24438 composeType(t, "SubscriptionTopic", "versionAlgorithm", element.getVersionAlgorithm(), -1); 24439 } 24440 if (element.hasNameElement()) { 24441 composeString(t, "SubscriptionTopic", "name", element.getNameElement(), -1); 24442 } 24443 if (element.hasTitleElement()) { 24444 composeString(t, "SubscriptionTopic", "title", element.getTitleElement(), -1); 24445 } 24446 for (int i = 0; i < element.getDerivedFrom().size(); i++) { 24447 composeCanonical(t, "SubscriptionTopic", "derivedFrom", element.getDerivedFrom().get(i), i); 24448 } 24449 if (element.hasStatusElement()) { 24450 composeEnum(t, "SubscriptionTopic", "status", element.getStatusElement(), -1); 24451 } 24452 if (element.hasExperimentalElement()) { 24453 composeBoolean(t, "SubscriptionTopic", "experimental", element.getExperimentalElement(), -1); 24454 } 24455 if (element.hasDateElement()) { 24456 composeDateTime(t, "SubscriptionTopic", "date", element.getDateElement(), -1); 24457 } 24458 if (element.hasPublisherElement()) { 24459 composeString(t, "SubscriptionTopic", "publisher", element.getPublisherElement(), -1); 24460 } 24461 for (int i = 0; i < element.getContact().size(); i++) { 24462 composeContactDetail(t, "SubscriptionTopic", "contact", element.getContact().get(i), i); 24463 } 24464 if (element.hasDescriptionElement()) { 24465 composeMarkdown(t, "SubscriptionTopic", "description", element.getDescriptionElement(), -1); 24466 } 24467 for (int i = 0; i < element.getUseContext().size(); i++) { 24468 composeUsageContext(t, "SubscriptionTopic", "useContext", element.getUseContext().get(i), i); 24469 } 24470 for (int i = 0; i < element.getJurisdiction().size(); i++) { 24471 composeCodeableConcept(t, "SubscriptionTopic", "jurisdiction", element.getJurisdiction().get(i), i); 24472 } 24473 if (element.hasPurposeElement()) { 24474 composeMarkdown(t, "SubscriptionTopic", "purpose", element.getPurposeElement(), -1); 24475 } 24476 if (element.hasCopyrightElement()) { 24477 composeMarkdown(t, "SubscriptionTopic", "copyright", element.getCopyrightElement(), -1); 24478 } 24479 if (element.hasCopyrightLabelElement()) { 24480 composeString(t, "SubscriptionTopic", "copyrightLabel", element.getCopyrightLabelElement(), -1); 24481 } 24482 if (element.hasApprovalDateElement()) { 24483 composeDate(t, "SubscriptionTopic", "approvalDate", element.getApprovalDateElement(), -1); 24484 } 24485 if (element.hasLastReviewDateElement()) { 24486 composeDate(t, "SubscriptionTopic", "lastReviewDate", element.getLastReviewDateElement(), -1); 24487 } 24488 if (element.hasEffectivePeriod()) { 24489 composePeriod(t, "SubscriptionTopic", "effectivePeriod", element.getEffectivePeriod(), -1); 24490 } 24491 for (int i = 0; i < element.getResourceTrigger().size(); i++) { 24492 composeSubscriptionTopicResourceTriggerComponent(t, "SubscriptionTopic", "resourceTrigger", element.getResourceTrigger().get(i), i); 24493 } 24494 for (int i = 0; i < element.getEventTrigger().size(); i++) { 24495 composeSubscriptionTopicEventTriggerComponent(t, "SubscriptionTopic", "eventTrigger", element.getEventTrigger().get(i), i); 24496 } 24497 for (int i = 0; i < element.getCanFilterBy().size(); i++) { 24498 composeSubscriptionTopicCanFilterByComponent(t, "SubscriptionTopic", "canFilterBy", element.getCanFilterBy().get(i), i); 24499 } 24500 for (int i = 0; i < element.getNotificationShape().size(); i++) { 24501 composeSubscriptionTopicNotificationShapeComponent(t, "SubscriptionTopic", "notificationShape", element.getNotificationShape().get(i), i); 24502 } 24503 } 24504 24505 protected void composeSubscriptionTopicResourceTriggerComponent(Complex parent, String parentType, String name, SubscriptionTopic.SubscriptionTopicResourceTriggerComponent element, int index) { 24506 if (element == null) 24507 return; 24508 Complex t; 24509 if (Utilities.noString(parentType)) 24510 t = parent; 24511 else { 24512 t = parent.predicate("fhir:"+name,index > -1); 24513 } 24514 composeBackboneElement(t, "resourceTrigger", name, element, index); 24515 if (element.hasDescriptionElement()) { 24516 composeMarkdown(t, "SubscriptionTopicResourceTriggerComponent", "description", element.getDescriptionElement(), -1); 24517 } 24518 if (element.hasResourceElement()) { 24519 composeUri(t, "SubscriptionTopicResourceTriggerComponent", "resource", element.getResourceElement(), -1); 24520 } 24521 for (int i = 0; i < element.getSupportedInteraction().size(); i++) { 24522 composeEnum(t, "SubscriptionTopicResourceTriggerComponent", "supportedInteraction", element.getSupportedInteraction().get(i), i); 24523 } 24524 if (element.hasQueryCriteria()) { 24525 composeSubscriptionTopicResourceTriggerQueryCriteriaComponent(t, "SubscriptionTopicResourceTriggerComponent", "queryCriteria", element.getQueryCriteria(), -1); 24526 } 24527 if (element.hasFhirPathCriteriaElement()) { 24528 composeString(t, "SubscriptionTopicResourceTriggerComponent", "fhirPathCriteria", element.getFhirPathCriteriaElement(), -1); 24529 } 24530 } 24531 24532 protected void composeSubscriptionTopicResourceTriggerQueryCriteriaComponent(Complex parent, String parentType, String name, SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent element, int index) { 24533 if (element == null) 24534 return; 24535 Complex t; 24536 if (Utilities.noString(parentType)) 24537 t = parent; 24538 else { 24539 t = parent.predicate("fhir:"+name,index > -1); 24540 } 24541 composeBackboneElement(t, "queryCriteria", name, element, index); 24542 if (element.hasPreviousElement()) { 24543 composeString(t, "SubscriptionTopicResourceTriggerQueryCriteriaComponent", "previous", element.getPreviousElement(), -1); 24544 } 24545 if (element.hasResultForCreateElement()) { 24546 composeEnum(t, "SubscriptionTopicResourceTriggerQueryCriteriaComponent", "resultForCreate", element.getResultForCreateElement(), -1); 24547 } 24548 if (element.hasCurrentElement()) { 24549 composeString(t, "SubscriptionTopicResourceTriggerQueryCriteriaComponent", "current", element.getCurrentElement(), -1); 24550 } 24551 if (element.hasResultForDeleteElement()) { 24552 composeEnum(t, "SubscriptionTopicResourceTriggerQueryCriteriaComponent", "resultForDelete", element.getResultForDeleteElement(), -1); 24553 } 24554 if (element.hasRequireBothElement()) { 24555 composeBoolean(t, "SubscriptionTopicResourceTriggerQueryCriteriaComponent", "requireBoth", element.getRequireBothElement(), -1); 24556 } 24557 } 24558 24559 protected void composeSubscriptionTopicEventTriggerComponent(Complex parent, String parentType, String name, SubscriptionTopic.SubscriptionTopicEventTriggerComponent element, int index) { 24560 if (element == null) 24561 return; 24562 Complex t; 24563 if (Utilities.noString(parentType)) 24564 t = parent; 24565 else { 24566 t = parent.predicate("fhir:"+name,index > -1); 24567 } 24568 composeBackboneElement(t, "eventTrigger", name, element, index); 24569 if (element.hasDescriptionElement()) { 24570 composeMarkdown(t, "SubscriptionTopicEventTriggerComponent", "description", element.getDescriptionElement(), -1); 24571 } 24572 if (element.hasEvent()) { 24573 composeCodeableConcept(t, "SubscriptionTopicEventTriggerComponent", "event", element.getEvent(), -1); 24574 } 24575 if (element.hasResourceElement()) { 24576 composeUri(t, "SubscriptionTopicEventTriggerComponent", "resource", element.getResourceElement(), -1); 24577 } 24578 } 24579 24580 protected void composeSubscriptionTopicCanFilterByComponent(Complex parent, String parentType, String name, SubscriptionTopic.SubscriptionTopicCanFilterByComponent element, int index) { 24581 if (element == null) 24582 return; 24583 Complex t; 24584 if (Utilities.noString(parentType)) 24585 t = parent; 24586 else { 24587 t = parent.predicate("fhir:"+name,index > -1); 24588 } 24589 composeBackboneElement(t, "canFilterBy", name, element, index); 24590 if (element.hasDescriptionElement()) { 24591 composeMarkdown(t, "SubscriptionTopicCanFilterByComponent", "description", element.getDescriptionElement(), -1); 24592 } 24593 if (element.hasResourceElement()) { 24594 composeUri(t, "SubscriptionTopicCanFilterByComponent", "resource", element.getResourceElement(), -1); 24595 } 24596 if (element.hasFilterParameterElement()) { 24597 composeString(t, "SubscriptionTopicCanFilterByComponent", "filterParameter", element.getFilterParameterElement(), -1); 24598 } 24599 if (element.hasFilterDefinitionElement()) { 24600 composeUri(t, "SubscriptionTopicCanFilterByComponent", "filterDefinition", element.getFilterDefinitionElement(), -1); 24601 } 24602 for (int i = 0; i < element.getComparator().size(); i++) { 24603 composeEnum(t, "SubscriptionTopicCanFilterByComponent", "comparator", element.getComparator().get(i), i); 24604 } 24605 for (int i = 0; i < element.getModifier().size(); i++) { 24606 composeEnum(t, "SubscriptionTopicCanFilterByComponent", "modifier", element.getModifier().get(i), i); 24607 } 24608 } 24609 24610 protected void composeSubscriptionTopicNotificationShapeComponent(Complex parent, String parentType, String name, SubscriptionTopic.SubscriptionTopicNotificationShapeComponent element, int index) { 24611 if (element == null) 24612 return; 24613 Complex t; 24614 if (Utilities.noString(parentType)) 24615 t = parent; 24616 else { 24617 t = parent.predicate("fhir:"+name,index > -1); 24618 } 24619 composeBackboneElement(t, "notificationShape", name, element, index); 24620 if (element.hasResourceElement()) { 24621 composeUri(t, "SubscriptionTopicNotificationShapeComponent", "resource", element.getResourceElement(), -1); 24622 } 24623 for (int i = 0; i < element.getInclude().size(); i++) { 24624 composeString(t, "SubscriptionTopicNotificationShapeComponent", "include", element.getInclude().get(i), i); 24625 } 24626 for (int i = 0; i < element.getRevInclude().size(); i++) { 24627 composeString(t, "SubscriptionTopicNotificationShapeComponent", "revInclude", element.getRevInclude().get(i), i); 24628 } 24629 } 24630 24631 protected void composeSubstance(Complex parent, String parentType, String name, Substance element, int index) { 24632 if (element == null) 24633 return; 24634 Complex t; 24635 if (Utilities.noString(parentType)) 24636 t = parent; 24637 else { 24638 t = parent.predicate("fhir:"+name,index > -1); 24639 } 24640 composeDomainResource(t, "Substance", name, element, index); 24641 for (int i = 0; i < element.getIdentifier().size(); i++) { 24642 composeIdentifier(t, "Substance", "identifier", element.getIdentifier().get(i), i); 24643 } 24644 if (element.hasInstanceElement()) { 24645 composeBoolean(t, "Substance", "instance", element.getInstanceElement(), -1); 24646 } 24647 if (element.hasStatusElement()) { 24648 composeEnum(t, "Substance", "status", element.getStatusElement(), -1); 24649 } 24650 for (int i = 0; i < element.getCategory().size(); i++) { 24651 composeCodeableConcept(t, "Substance", "category", element.getCategory().get(i), i); 24652 } 24653 if (element.hasCode()) { 24654 composeCodeableReference(t, "Substance", "code", element.getCode(), -1); 24655 } 24656 if (element.hasDescriptionElement()) { 24657 composeMarkdown(t, "Substance", "description", element.getDescriptionElement(), -1); 24658 } 24659 if (element.hasExpiryElement()) { 24660 composeDateTime(t, "Substance", "expiry", element.getExpiryElement(), -1); 24661 } 24662 if (element.hasQuantity()) { 24663 composeQuantity(t, "Substance", "quantity", element.getQuantity(), -1); 24664 } 24665 for (int i = 0; i < element.getIngredient().size(); i++) { 24666 composeSubstanceIngredientComponent(t, "Substance", "ingredient", element.getIngredient().get(i), i); 24667 } 24668 } 24669 24670 protected void composeSubstanceIngredientComponent(Complex parent, String parentType, String name, Substance.SubstanceIngredientComponent element, int index) { 24671 if (element == null) 24672 return; 24673 Complex t; 24674 if (Utilities.noString(parentType)) 24675 t = parent; 24676 else { 24677 t = parent.predicate("fhir:"+name,index > -1); 24678 } 24679 composeBackboneElement(t, "ingredient", name, element, index); 24680 if (element.hasQuantity()) { 24681 composeRatio(t, "SubstanceIngredientComponent", "quantity", element.getQuantity(), -1); 24682 } 24683 if (element.hasSubstance()) { 24684 composeType(t, "SubstanceIngredientComponent", "substance", element.getSubstance(), -1); 24685 } 24686 } 24687 24688 protected void composeSubstanceDefinition(Complex parent, String parentType, String name, SubstanceDefinition element, int index) { 24689 if (element == null) 24690 return; 24691 Complex t; 24692 if (Utilities.noString(parentType)) 24693 t = parent; 24694 else { 24695 t = parent.predicate("fhir:"+name,index > -1); 24696 } 24697 composeDomainResource(t, "SubstanceDefinition", name, element, index); 24698 for (int i = 0; i < element.getIdentifier().size(); i++) { 24699 composeIdentifier(t, "SubstanceDefinition", "identifier", element.getIdentifier().get(i), i); 24700 } 24701 if (element.hasVersionElement()) { 24702 composeString(t, "SubstanceDefinition", "version", element.getVersionElement(), -1); 24703 } 24704 if (element.hasStatus()) { 24705 composeCodeableConcept(t, "SubstanceDefinition", "status", element.getStatus(), -1); 24706 } 24707 for (int i = 0; i < element.getClassification().size(); i++) { 24708 composeCodeableConcept(t, "SubstanceDefinition", "classification", element.getClassification().get(i), i); 24709 } 24710 if (element.hasDomain()) { 24711 composeCodeableConcept(t, "SubstanceDefinition", "domain", element.getDomain(), -1); 24712 } 24713 for (int i = 0; i < element.getGrade().size(); i++) { 24714 composeCodeableConcept(t, "SubstanceDefinition", "grade", element.getGrade().get(i), i); 24715 } 24716 if (element.hasDescriptionElement()) { 24717 composeMarkdown(t, "SubstanceDefinition", "description", element.getDescriptionElement(), -1); 24718 } 24719 for (int i = 0; i < element.getInformationSource().size(); i++) { 24720 composeReference(t, "SubstanceDefinition", "informationSource", element.getInformationSource().get(i), i); 24721 } 24722 for (int i = 0; i < element.getNote().size(); i++) { 24723 composeAnnotation(t, "SubstanceDefinition", "note", element.getNote().get(i), i); 24724 } 24725 for (int i = 0; i < element.getManufacturer().size(); i++) { 24726 composeReference(t, "SubstanceDefinition", "manufacturer", element.getManufacturer().get(i), i); 24727 } 24728 for (int i = 0; i < element.getSupplier().size(); i++) { 24729 composeReference(t, "SubstanceDefinition", "supplier", element.getSupplier().get(i), i); 24730 } 24731 for (int i = 0; i < element.getMoiety().size(); i++) { 24732 composeSubstanceDefinitionMoietyComponent(t, "SubstanceDefinition", "moiety", element.getMoiety().get(i), i); 24733 } 24734 for (int i = 0; i < element.getCharacterization().size(); i++) { 24735 composeSubstanceDefinitionCharacterizationComponent(t, "SubstanceDefinition", "characterization", element.getCharacterization().get(i), i); 24736 } 24737 for (int i = 0; i < element.getProperty().size(); i++) { 24738 composeSubstanceDefinitionPropertyComponent(t, "SubstanceDefinition", "property", element.getProperty().get(i), i); 24739 } 24740 if (element.hasReferenceInformation()) { 24741 composeReference(t, "SubstanceDefinition", "referenceInformation", element.getReferenceInformation(), -1); 24742 } 24743 for (int i = 0; i < element.getMolecularWeight().size(); i++) { 24744 composeSubstanceDefinitionMolecularWeightComponent(t, "SubstanceDefinition", "molecularWeight", element.getMolecularWeight().get(i), i); 24745 } 24746 if (element.hasStructure()) { 24747 composeSubstanceDefinitionStructureComponent(t, "SubstanceDefinition", "structure", element.getStructure(), -1); 24748 } 24749 for (int i = 0; i < element.getCode().size(); i++) { 24750 composeSubstanceDefinitionCodeComponent(t, "SubstanceDefinition", "code", element.getCode().get(i), i); 24751 } 24752 for (int i = 0; i < element.getName().size(); i++) { 24753 composeSubstanceDefinitionNameComponent(t, "SubstanceDefinition", "name", element.getName().get(i), i); 24754 } 24755 for (int i = 0; i < element.getRelationship().size(); i++) { 24756 composeSubstanceDefinitionRelationshipComponent(t, "SubstanceDefinition", "relationship", element.getRelationship().get(i), i); 24757 } 24758 if (element.hasNucleicAcid()) { 24759 composeReference(t, "SubstanceDefinition", "nucleicAcid", element.getNucleicAcid(), -1); 24760 } 24761 if (element.hasPolymer()) { 24762 composeReference(t, "SubstanceDefinition", "polymer", element.getPolymer(), -1); 24763 } 24764 if (element.hasProtein()) { 24765 composeReference(t, "SubstanceDefinition", "protein", element.getProtein(), -1); 24766 } 24767 if (element.hasSourceMaterial()) { 24768 composeSubstanceDefinitionSourceMaterialComponent(t, "SubstanceDefinition", "sourceMaterial", element.getSourceMaterial(), -1); 24769 } 24770 } 24771 24772 protected void composeSubstanceDefinitionMoietyComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionMoietyComponent element, int index) { 24773 if (element == null) 24774 return; 24775 Complex t; 24776 if (Utilities.noString(parentType)) 24777 t = parent; 24778 else { 24779 t = parent.predicate("fhir:"+name,index > -1); 24780 } 24781 composeBackboneElement(t, "moiety", name, element, index); 24782 if (element.hasRole()) { 24783 composeCodeableConcept(t, "SubstanceDefinitionMoietyComponent", "role", element.getRole(), -1); 24784 } 24785 if (element.hasIdentifier()) { 24786 composeIdentifier(t, "SubstanceDefinitionMoietyComponent", "identifier", element.getIdentifier(), -1); 24787 } 24788 if (element.hasNameElement()) { 24789 composeString(t, "SubstanceDefinitionMoietyComponent", "name", element.getNameElement(), -1); 24790 } 24791 if (element.hasStereochemistry()) { 24792 composeCodeableConcept(t, "SubstanceDefinitionMoietyComponent", "stereochemistry", element.getStereochemistry(), -1); 24793 } 24794 if (element.hasOpticalActivity()) { 24795 composeCodeableConcept(t, "SubstanceDefinitionMoietyComponent", "opticalActivity", element.getOpticalActivity(), -1); 24796 } 24797 if (element.hasMolecularFormulaElement()) { 24798 composeString(t, "SubstanceDefinitionMoietyComponent", "molecularFormula", element.getMolecularFormulaElement(), -1); 24799 } 24800 if (element.hasAmount()) { 24801 composeType(t, "SubstanceDefinitionMoietyComponent", "amount", element.getAmount(), -1); 24802 } 24803 if (element.hasMeasurementType()) { 24804 composeCodeableConcept(t, "SubstanceDefinitionMoietyComponent", "measurementType", element.getMeasurementType(), -1); 24805 } 24806 } 24807 24808 protected void composeSubstanceDefinitionCharacterizationComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionCharacterizationComponent element, int index) { 24809 if (element == null) 24810 return; 24811 Complex t; 24812 if (Utilities.noString(parentType)) 24813 t = parent; 24814 else { 24815 t = parent.predicate("fhir:"+name,index > -1); 24816 } 24817 composeBackboneElement(t, "characterization", name, element, index); 24818 if (element.hasTechnique()) { 24819 composeCodeableConcept(t, "SubstanceDefinitionCharacterizationComponent", "technique", element.getTechnique(), -1); 24820 } 24821 if (element.hasForm()) { 24822 composeCodeableConcept(t, "SubstanceDefinitionCharacterizationComponent", "form", element.getForm(), -1); 24823 } 24824 if (element.hasDescriptionElement()) { 24825 composeMarkdown(t, "SubstanceDefinitionCharacterizationComponent", "description", element.getDescriptionElement(), -1); 24826 } 24827 for (int i = 0; i < element.getFile().size(); i++) { 24828 composeAttachment(t, "SubstanceDefinitionCharacterizationComponent", "file", element.getFile().get(i), i); 24829 } 24830 } 24831 24832 protected void composeSubstanceDefinitionPropertyComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionPropertyComponent element, int index) { 24833 if (element == null) 24834 return; 24835 Complex t; 24836 if (Utilities.noString(parentType)) 24837 t = parent; 24838 else { 24839 t = parent.predicate("fhir:"+name,index > -1); 24840 } 24841 composeBackboneElement(t, "property", name, element, index); 24842 if (element.hasType()) { 24843 composeCodeableConcept(t, "SubstanceDefinitionPropertyComponent", "type", element.getType(), -1); 24844 } 24845 if (element.hasValue()) { 24846 composeType(t, "SubstanceDefinitionPropertyComponent", "value", element.getValue(), -1); 24847 } 24848 } 24849 24850 protected void composeSubstanceDefinitionMolecularWeightComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionMolecularWeightComponent element, int index) { 24851 if (element == null) 24852 return; 24853 Complex t; 24854 if (Utilities.noString(parentType)) 24855 t = parent; 24856 else { 24857 t = parent.predicate("fhir:"+name,index > -1); 24858 } 24859 composeBackboneElement(t, "molecularWeight", name, element, index); 24860 if (element.hasMethod()) { 24861 composeCodeableConcept(t, "SubstanceDefinitionMolecularWeightComponent", "method", element.getMethod(), -1); 24862 } 24863 if (element.hasType()) { 24864 composeCodeableConcept(t, "SubstanceDefinitionMolecularWeightComponent", "type", element.getType(), -1); 24865 } 24866 if (element.hasAmount()) { 24867 composeQuantity(t, "SubstanceDefinitionMolecularWeightComponent", "amount", element.getAmount(), -1); 24868 } 24869 } 24870 24871 protected void composeSubstanceDefinitionStructureComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionStructureComponent element, int index) { 24872 if (element == null) 24873 return; 24874 Complex t; 24875 if (Utilities.noString(parentType)) 24876 t = parent; 24877 else { 24878 t = parent.predicate("fhir:"+name,index > -1); 24879 } 24880 composeBackboneElement(t, "structure", name, element, index); 24881 if (element.hasStereochemistry()) { 24882 composeCodeableConcept(t, "SubstanceDefinitionStructureComponent", "stereochemistry", element.getStereochemistry(), -1); 24883 } 24884 if (element.hasOpticalActivity()) { 24885 composeCodeableConcept(t, "SubstanceDefinitionStructureComponent", "opticalActivity", element.getOpticalActivity(), -1); 24886 } 24887 if (element.hasMolecularFormulaElement()) { 24888 composeString(t, "SubstanceDefinitionStructureComponent", "molecularFormula", element.getMolecularFormulaElement(), -1); 24889 } 24890 if (element.hasMolecularFormulaByMoietyElement()) { 24891 composeString(t, "SubstanceDefinitionStructureComponent", "molecularFormulaByMoiety", element.getMolecularFormulaByMoietyElement(), -1); 24892 } 24893 if (element.hasMolecularWeight()) { 24894 composeSubstanceDefinitionMolecularWeightComponent(t, "SubstanceDefinitionStructureComponent", "molecularWeight", element.getMolecularWeight(), -1); 24895 } 24896 for (int i = 0; i < element.getTechnique().size(); i++) { 24897 composeCodeableConcept(t, "SubstanceDefinitionStructureComponent", "technique", element.getTechnique().get(i), i); 24898 } 24899 for (int i = 0; i < element.getSourceDocument().size(); i++) { 24900 composeReference(t, "SubstanceDefinitionStructureComponent", "sourceDocument", element.getSourceDocument().get(i), i); 24901 } 24902 for (int i = 0; i < element.getRepresentation().size(); i++) { 24903 composeSubstanceDefinitionStructureRepresentationComponent(t, "SubstanceDefinitionStructureComponent", "representation", element.getRepresentation().get(i), i); 24904 } 24905 } 24906 24907 protected void composeSubstanceDefinitionStructureRepresentationComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionStructureRepresentationComponent element, int index) { 24908 if (element == null) 24909 return; 24910 Complex t; 24911 if (Utilities.noString(parentType)) 24912 t = parent; 24913 else { 24914 t = parent.predicate("fhir:"+name,index > -1); 24915 } 24916 composeBackboneElement(t, "representation", name, element, index); 24917 if (element.hasType()) { 24918 composeCodeableConcept(t, "SubstanceDefinitionStructureRepresentationComponent", "type", element.getType(), -1); 24919 } 24920 if (element.hasRepresentationElement()) { 24921 composeString(t, "SubstanceDefinitionStructureRepresentationComponent", "representation", element.getRepresentationElement(), -1); 24922 } 24923 if (element.hasFormat()) { 24924 composeCodeableConcept(t, "SubstanceDefinitionStructureRepresentationComponent", "format", element.getFormat(), -1); 24925 } 24926 if (element.hasDocument()) { 24927 composeReference(t, "SubstanceDefinitionStructureRepresentationComponent", "document", element.getDocument(), -1); 24928 } 24929 } 24930 24931 protected void composeSubstanceDefinitionCodeComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionCodeComponent element, int index) { 24932 if (element == null) 24933 return; 24934 Complex t; 24935 if (Utilities.noString(parentType)) 24936 t = parent; 24937 else { 24938 t = parent.predicate("fhir:"+name,index > -1); 24939 } 24940 composeBackboneElement(t, "code", name, element, index); 24941 if (element.hasCode()) { 24942 composeCodeableConcept(t, "SubstanceDefinitionCodeComponent", "code", element.getCode(), -1); 24943 } 24944 if (element.hasStatus()) { 24945 composeCodeableConcept(t, "SubstanceDefinitionCodeComponent", "status", element.getStatus(), -1); 24946 } 24947 if (element.hasStatusDateElement()) { 24948 composeDateTime(t, "SubstanceDefinitionCodeComponent", "statusDate", element.getStatusDateElement(), -1); 24949 } 24950 for (int i = 0; i < element.getNote().size(); i++) { 24951 composeAnnotation(t, "SubstanceDefinitionCodeComponent", "note", element.getNote().get(i), i); 24952 } 24953 for (int i = 0; i < element.getSource().size(); i++) { 24954 composeReference(t, "SubstanceDefinitionCodeComponent", "source", element.getSource().get(i), i); 24955 } 24956 } 24957 24958 protected void composeSubstanceDefinitionNameComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionNameComponent element, int index) { 24959 if (element == null) 24960 return; 24961 Complex t; 24962 if (Utilities.noString(parentType)) 24963 t = parent; 24964 else { 24965 t = parent.predicate("fhir:"+name,index > -1); 24966 } 24967 composeBackboneElement(t, "name", name, element, index); 24968 if (element.hasNameElement()) { 24969 composeString(t, "SubstanceDefinitionNameComponent", "name", element.getNameElement(), -1); 24970 } 24971 if (element.hasType()) { 24972 composeCodeableConcept(t, "SubstanceDefinitionNameComponent", "type", element.getType(), -1); 24973 } 24974 if (element.hasStatus()) { 24975 composeCodeableConcept(t, "SubstanceDefinitionNameComponent", "status", element.getStatus(), -1); 24976 } 24977 if (element.hasPreferredElement()) { 24978 composeBoolean(t, "SubstanceDefinitionNameComponent", "preferred", element.getPreferredElement(), -1); 24979 } 24980 for (int i = 0; i < element.getLanguage().size(); i++) { 24981 composeCodeableConcept(t, "SubstanceDefinitionNameComponent", "language", element.getLanguage().get(i), i); 24982 } 24983 for (int i = 0; i < element.getDomain().size(); i++) { 24984 composeCodeableConcept(t, "SubstanceDefinitionNameComponent", "domain", element.getDomain().get(i), i); 24985 } 24986 for (int i = 0; i < element.getJurisdiction().size(); i++) { 24987 composeCodeableConcept(t, "SubstanceDefinitionNameComponent", "jurisdiction", element.getJurisdiction().get(i), i); 24988 } 24989 for (int i = 0; i < element.getSynonym().size(); i++) { 24990 composeSubstanceDefinitionNameComponent(t, "SubstanceDefinitionNameComponent", "synonym", element.getSynonym().get(i), i); 24991 } 24992 for (int i = 0; i < element.getTranslation().size(); i++) { 24993 composeSubstanceDefinitionNameComponent(t, "SubstanceDefinitionNameComponent", "translation", element.getTranslation().get(i), i); 24994 } 24995 for (int i = 0; i < element.getOfficial().size(); i++) { 24996 composeSubstanceDefinitionNameOfficialComponent(t, "SubstanceDefinitionNameComponent", "official", element.getOfficial().get(i), i); 24997 } 24998 for (int i = 0; i < element.getSource().size(); i++) { 24999 composeReference(t, "SubstanceDefinitionNameComponent", "source", element.getSource().get(i), i); 25000 } 25001 } 25002 25003 protected void composeSubstanceDefinitionNameOfficialComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionNameOfficialComponent element, int index) { 25004 if (element == null) 25005 return; 25006 Complex t; 25007 if (Utilities.noString(parentType)) 25008 t = parent; 25009 else { 25010 t = parent.predicate("fhir:"+name,index > -1); 25011 } 25012 composeBackboneElement(t, "official", name, element, index); 25013 if (element.hasAuthority()) { 25014 composeCodeableConcept(t, "SubstanceDefinitionNameOfficialComponent", "authority", element.getAuthority(), -1); 25015 } 25016 if (element.hasStatus()) { 25017 composeCodeableConcept(t, "SubstanceDefinitionNameOfficialComponent", "status", element.getStatus(), -1); 25018 } 25019 if (element.hasDateElement()) { 25020 composeDateTime(t, "SubstanceDefinitionNameOfficialComponent", "date", element.getDateElement(), -1); 25021 } 25022 } 25023 25024 protected void composeSubstanceDefinitionRelationshipComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionRelationshipComponent element, int index) { 25025 if (element == null) 25026 return; 25027 Complex t; 25028 if (Utilities.noString(parentType)) 25029 t = parent; 25030 else { 25031 t = parent.predicate("fhir:"+name,index > -1); 25032 } 25033 composeBackboneElement(t, "relationship", name, element, index); 25034 if (element.hasSubstanceDefinition()) { 25035 composeType(t, "SubstanceDefinitionRelationshipComponent", "substanceDefinition", element.getSubstanceDefinition(), -1); 25036 } 25037 if (element.hasType()) { 25038 composeCodeableConcept(t, "SubstanceDefinitionRelationshipComponent", "type", element.getType(), -1); 25039 } 25040 if (element.hasIsDefiningElement()) { 25041 composeBoolean(t, "SubstanceDefinitionRelationshipComponent", "isDefining", element.getIsDefiningElement(), -1); 25042 } 25043 if (element.hasAmount()) { 25044 composeType(t, "SubstanceDefinitionRelationshipComponent", "amount", element.getAmount(), -1); 25045 } 25046 if (element.hasRatioHighLimitAmount()) { 25047 composeRatio(t, "SubstanceDefinitionRelationshipComponent", "ratioHighLimitAmount", element.getRatioHighLimitAmount(), -1); 25048 } 25049 if (element.hasComparator()) { 25050 composeCodeableConcept(t, "SubstanceDefinitionRelationshipComponent", "comparator", element.getComparator(), -1); 25051 } 25052 for (int i = 0; i < element.getSource().size(); i++) { 25053 composeReference(t, "SubstanceDefinitionRelationshipComponent", "source", element.getSource().get(i), i); 25054 } 25055 } 25056 25057 protected void composeSubstanceDefinitionSourceMaterialComponent(Complex parent, String parentType, String name, SubstanceDefinition.SubstanceDefinitionSourceMaterialComponent element, int index) { 25058 if (element == null) 25059 return; 25060 Complex t; 25061 if (Utilities.noString(parentType)) 25062 t = parent; 25063 else { 25064 t = parent.predicate("fhir:"+name,index > -1); 25065 } 25066 composeBackboneElement(t, "sourceMaterial", name, element, index); 25067 if (element.hasType()) { 25068 composeCodeableConcept(t, "SubstanceDefinitionSourceMaterialComponent", "type", element.getType(), -1); 25069 } 25070 if (element.hasGenus()) { 25071 composeCodeableConcept(t, "SubstanceDefinitionSourceMaterialComponent", "genus", element.getGenus(), -1); 25072 } 25073 if (element.hasSpecies()) { 25074 composeCodeableConcept(t, "SubstanceDefinitionSourceMaterialComponent", "species", element.getSpecies(), -1); 25075 } 25076 if (element.hasPart()) { 25077 composeCodeableConcept(t, "SubstanceDefinitionSourceMaterialComponent", "part", element.getPart(), -1); 25078 } 25079 for (int i = 0; i < element.getCountryOfOrigin().size(); i++) { 25080 composeCodeableConcept(t, "SubstanceDefinitionSourceMaterialComponent", "countryOfOrigin", element.getCountryOfOrigin().get(i), i); 25081 } 25082 } 25083 25084 protected void composeSubstanceNucleicAcid(Complex parent, String parentType, String name, SubstanceNucleicAcid element, int index) { 25085 if (element == null) 25086 return; 25087 Complex t; 25088 if (Utilities.noString(parentType)) 25089 t = parent; 25090 else { 25091 t = parent.predicate("fhir:"+name,index > -1); 25092 } 25093 composeDomainResource(t, "SubstanceNucleicAcid", name, element, index); 25094 if (element.hasSequenceType()) { 25095 composeCodeableConcept(t, "SubstanceNucleicAcid", "sequenceType", element.getSequenceType(), -1); 25096 } 25097 if (element.hasNumberOfSubunitsElement()) { 25098 composeInteger(t, "SubstanceNucleicAcid", "numberOfSubunits", element.getNumberOfSubunitsElement(), -1); 25099 } 25100 if (element.hasAreaOfHybridisationElement()) { 25101 composeString(t, "SubstanceNucleicAcid", "areaOfHybridisation", element.getAreaOfHybridisationElement(), -1); 25102 } 25103 if (element.hasOligoNucleotideType()) { 25104 composeCodeableConcept(t, "SubstanceNucleicAcid", "oligoNucleotideType", element.getOligoNucleotideType(), -1); 25105 } 25106 for (int i = 0; i < element.getSubunit().size(); i++) { 25107 composeSubstanceNucleicAcidSubunitComponent(t, "SubstanceNucleicAcid", "subunit", element.getSubunit().get(i), i); 25108 } 25109 } 25110 25111 protected void composeSubstanceNucleicAcidSubunitComponent(Complex parent, String parentType, String name, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitComponent element, int index) { 25112 if (element == null) 25113 return; 25114 Complex t; 25115 if (Utilities.noString(parentType)) 25116 t = parent; 25117 else { 25118 t = parent.predicate("fhir:"+name,index > -1); 25119 } 25120 composeBackboneElement(t, "subunit", name, element, index); 25121 if (element.hasSubunitElement()) { 25122 composeInteger(t, "SubstanceNucleicAcidSubunitComponent", "subunit", element.getSubunitElement(), -1); 25123 } 25124 if (element.hasSequenceElement()) { 25125 composeString(t, "SubstanceNucleicAcidSubunitComponent", "sequence", element.getSequenceElement(), -1); 25126 } 25127 if (element.hasLengthElement()) { 25128 composeInteger(t, "SubstanceNucleicAcidSubunitComponent", "length", element.getLengthElement(), -1); 25129 } 25130 if (element.hasSequenceAttachment()) { 25131 composeAttachment(t, "SubstanceNucleicAcidSubunitComponent", "sequenceAttachment", element.getSequenceAttachment(), -1); 25132 } 25133 if (element.hasFivePrime()) { 25134 composeCodeableConcept(t, "SubstanceNucleicAcidSubunitComponent", "fivePrime", element.getFivePrime(), -1); 25135 } 25136 if (element.hasThreePrime()) { 25137 composeCodeableConcept(t, "SubstanceNucleicAcidSubunitComponent", "threePrime", element.getThreePrime(), -1); 25138 } 25139 for (int i = 0; i < element.getLinkage().size(); i++) { 25140 composeSubstanceNucleicAcidSubunitLinkageComponent(t, "SubstanceNucleicAcidSubunitComponent", "linkage", element.getLinkage().get(i), i); 25141 } 25142 for (int i = 0; i < element.getSugar().size(); i++) { 25143 composeSubstanceNucleicAcidSubunitSugarComponent(t, "SubstanceNucleicAcidSubunitComponent", "sugar", element.getSugar().get(i), i); 25144 } 25145 } 25146 25147 protected void composeSubstanceNucleicAcidSubunitLinkageComponent(Complex parent, String parentType, String name, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitLinkageComponent element, int index) { 25148 if (element == null) 25149 return; 25150 Complex t; 25151 if (Utilities.noString(parentType)) 25152 t = parent; 25153 else { 25154 t = parent.predicate("fhir:"+name,index > -1); 25155 } 25156 composeBackboneElement(t, "linkage", name, element, index); 25157 if (element.hasConnectivityElement()) { 25158 composeString(t, "SubstanceNucleicAcidSubunitLinkageComponent", "connectivity", element.getConnectivityElement(), -1); 25159 } 25160 if (element.hasIdentifier()) { 25161 composeIdentifier(t, "SubstanceNucleicAcidSubunitLinkageComponent", "identifier", element.getIdentifier(), -1); 25162 } 25163 if (element.hasNameElement()) { 25164 composeString(t, "SubstanceNucleicAcidSubunitLinkageComponent", "name", element.getNameElement(), -1); 25165 } 25166 if (element.hasResidueSiteElement()) { 25167 composeString(t, "SubstanceNucleicAcidSubunitLinkageComponent", "residueSite", element.getResidueSiteElement(), -1); 25168 } 25169 } 25170 25171 protected void composeSubstanceNucleicAcidSubunitSugarComponent(Complex parent, String parentType, String name, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitSugarComponent element, int index) { 25172 if (element == null) 25173 return; 25174 Complex t; 25175 if (Utilities.noString(parentType)) 25176 t = parent; 25177 else { 25178 t = parent.predicate("fhir:"+name,index > -1); 25179 } 25180 composeBackboneElement(t, "sugar", name, element, index); 25181 if (element.hasIdentifier()) { 25182 composeIdentifier(t, "SubstanceNucleicAcidSubunitSugarComponent", "identifier", element.getIdentifier(), -1); 25183 } 25184 if (element.hasNameElement()) { 25185 composeString(t, "SubstanceNucleicAcidSubunitSugarComponent", "name", element.getNameElement(), -1); 25186 } 25187 if (element.hasResidueSiteElement()) { 25188 composeString(t, "SubstanceNucleicAcidSubunitSugarComponent", "residueSite", element.getResidueSiteElement(), -1); 25189 } 25190 } 25191 25192 protected void composeSubstancePolymer(Complex parent, String parentType, String name, SubstancePolymer element, int index) { 25193 if (element == null) 25194 return; 25195 Complex t; 25196 if (Utilities.noString(parentType)) 25197 t = parent; 25198 else { 25199 t = parent.predicate("fhir:"+name,index > -1); 25200 } 25201 composeDomainResource(t, "SubstancePolymer", name, element, index); 25202 if (element.hasIdentifier()) { 25203 composeIdentifier(t, "SubstancePolymer", "identifier", element.getIdentifier(), -1); 25204 } 25205 if (element.hasClass_()) { 25206 composeCodeableConcept(t, "SubstancePolymer", "class", element.getClass_(), -1); 25207 } 25208 if (element.hasGeometry()) { 25209 composeCodeableConcept(t, "SubstancePolymer", "geometry", element.getGeometry(), -1); 25210 } 25211 for (int i = 0; i < element.getCopolymerConnectivity().size(); i++) { 25212 composeCodeableConcept(t, "SubstancePolymer", "copolymerConnectivity", element.getCopolymerConnectivity().get(i), i); 25213 } 25214 if (element.hasModificationElement()) { 25215 composeString(t, "SubstancePolymer", "modification", element.getModificationElement(), -1); 25216 } 25217 for (int i = 0; i < element.getMonomerSet().size(); i++) { 25218 composeSubstancePolymerMonomerSetComponent(t, "SubstancePolymer", "monomerSet", element.getMonomerSet().get(i), i); 25219 } 25220 for (int i = 0; i < element.getRepeat().size(); i++) { 25221 composeSubstancePolymerRepeatComponent(t, "SubstancePolymer", "repeat", element.getRepeat().get(i), i); 25222 } 25223 } 25224 25225 protected void composeSubstancePolymerMonomerSetComponent(Complex parent, String parentType, String name, SubstancePolymer.SubstancePolymerMonomerSetComponent element, int index) { 25226 if (element == null) 25227 return; 25228 Complex t; 25229 if (Utilities.noString(parentType)) 25230 t = parent; 25231 else { 25232 t = parent.predicate("fhir:"+name,index > -1); 25233 } 25234 composeBackboneElement(t, "monomerSet", name, element, index); 25235 if (element.hasRatioType()) { 25236 composeCodeableConcept(t, "SubstancePolymerMonomerSetComponent", "ratioType", element.getRatioType(), -1); 25237 } 25238 for (int i = 0; i < element.getStartingMaterial().size(); i++) { 25239 composeSubstancePolymerMonomerSetStartingMaterialComponent(t, "SubstancePolymerMonomerSetComponent", "startingMaterial", element.getStartingMaterial().get(i), i); 25240 } 25241 } 25242 25243 protected void composeSubstancePolymerMonomerSetStartingMaterialComponent(Complex parent, String parentType, String name, SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent element, int index) { 25244 if (element == null) 25245 return; 25246 Complex t; 25247 if (Utilities.noString(parentType)) 25248 t = parent; 25249 else { 25250 t = parent.predicate("fhir:"+name,index > -1); 25251 } 25252 composeBackboneElement(t, "startingMaterial", name, element, index); 25253 if (element.hasCode()) { 25254 composeCodeableConcept(t, "SubstancePolymerMonomerSetStartingMaterialComponent", "code", element.getCode(), -1); 25255 } 25256 if (element.hasCategory()) { 25257 composeCodeableConcept(t, "SubstancePolymerMonomerSetStartingMaterialComponent", "category", element.getCategory(), -1); 25258 } 25259 if (element.hasIsDefiningElement()) { 25260 composeBoolean(t, "SubstancePolymerMonomerSetStartingMaterialComponent", "isDefining", element.getIsDefiningElement(), -1); 25261 } 25262 if (element.hasAmount()) { 25263 composeQuantity(t, "SubstancePolymerMonomerSetStartingMaterialComponent", "amount", element.getAmount(), -1); 25264 } 25265 } 25266 25267 protected void composeSubstancePolymerRepeatComponent(Complex parent, String parentType, String name, SubstancePolymer.SubstancePolymerRepeatComponent element, int index) { 25268 if (element == null) 25269 return; 25270 Complex t; 25271 if (Utilities.noString(parentType)) 25272 t = parent; 25273 else { 25274 t = parent.predicate("fhir:"+name,index > -1); 25275 } 25276 composeBackboneElement(t, "repeat", name, element, index); 25277 if (element.hasAverageMolecularFormulaElement()) { 25278 composeString(t, "SubstancePolymerRepeatComponent", "averageMolecularFormula", element.getAverageMolecularFormulaElement(), -1); 25279 } 25280 if (element.hasRepeatUnitAmountType()) { 25281 composeCodeableConcept(t, "SubstancePolymerRepeatComponent", "repeatUnitAmountType", element.getRepeatUnitAmountType(), -1); 25282 } 25283 for (int i = 0; i < element.getRepeatUnit().size(); i++) { 25284 composeSubstancePolymerRepeatRepeatUnitComponent(t, "SubstancePolymerRepeatComponent", "repeatUnit", element.getRepeatUnit().get(i), i); 25285 } 25286 } 25287 25288 protected void composeSubstancePolymerRepeatRepeatUnitComponent(Complex parent, String parentType, String name, SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent element, int index) { 25289 if (element == null) 25290 return; 25291 Complex t; 25292 if (Utilities.noString(parentType)) 25293 t = parent; 25294 else { 25295 t = parent.predicate("fhir:"+name,index > -1); 25296 } 25297 composeBackboneElement(t, "repeatUnit", name, element, index); 25298 if (element.hasUnitElement()) { 25299 composeString(t, "SubstancePolymerRepeatRepeatUnitComponent", "unit", element.getUnitElement(), -1); 25300 } 25301 if (element.hasOrientation()) { 25302 composeCodeableConcept(t, "SubstancePolymerRepeatRepeatUnitComponent", "orientation", element.getOrientation(), -1); 25303 } 25304 if (element.hasAmountElement()) { 25305 composeInteger(t, "SubstancePolymerRepeatRepeatUnitComponent", "amount", element.getAmountElement(), -1); 25306 } 25307 for (int i = 0; i < element.getDegreeOfPolymerisation().size(); i++) { 25308 composeSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(t, "SubstancePolymerRepeatRepeatUnitComponent", "degreeOfPolymerisation", element.getDegreeOfPolymerisation().get(i), i); 25309 } 25310 for (int i = 0; i < element.getStructuralRepresentation().size(); i++) { 25311 composeSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent(t, "SubstancePolymerRepeatRepeatUnitComponent", "structuralRepresentation", element.getStructuralRepresentation().get(i), i); 25312 } 25313 } 25314 25315 protected void composeSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(Complex parent, String parentType, String name, SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent element, int index) { 25316 if (element == null) 25317 return; 25318 Complex t; 25319 if (Utilities.noString(parentType)) 25320 t = parent; 25321 else { 25322 t = parent.predicate("fhir:"+name,index > -1); 25323 } 25324 composeBackboneElement(t, "degreeOfPolymerisation", name, element, index); 25325 if (element.hasType()) { 25326 composeCodeableConcept(t, "SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent", "type", element.getType(), -1); 25327 } 25328 if (element.hasAverageElement()) { 25329 composeInteger(t, "SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent", "average", element.getAverageElement(), -1); 25330 } 25331 if (element.hasLowElement()) { 25332 composeInteger(t, "SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent", "low", element.getLowElement(), -1); 25333 } 25334 if (element.hasHighElement()) { 25335 composeInteger(t, "SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent", "high", element.getHighElement(), -1); 25336 } 25337 } 25338 25339 protected void composeSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent(Complex parent, String parentType, String name, SubstancePolymer.SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent element, int index) { 25340 if (element == null) 25341 return; 25342 Complex t; 25343 if (Utilities.noString(parentType)) 25344 t = parent; 25345 else { 25346 t = parent.predicate("fhir:"+name,index > -1); 25347 } 25348 composeBackboneElement(t, "structuralRepresentation", name, element, index); 25349 if (element.hasType()) { 25350 composeCodeableConcept(t, "SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent", "type", element.getType(), -1); 25351 } 25352 if (element.hasRepresentationElement()) { 25353 composeString(t, "SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent", "representation", element.getRepresentationElement(), -1); 25354 } 25355 if (element.hasFormat()) { 25356 composeCodeableConcept(t, "SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent", "format", element.getFormat(), -1); 25357 } 25358 if (element.hasAttachment()) { 25359 composeAttachment(t, "SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent", "attachment", element.getAttachment(), -1); 25360 } 25361 } 25362 25363 protected void composeSubstanceProtein(Complex parent, String parentType, String name, SubstanceProtein element, int index) { 25364 if (element == null) 25365 return; 25366 Complex t; 25367 if (Utilities.noString(parentType)) 25368 t = parent; 25369 else { 25370 t = parent.predicate("fhir:"+name,index > -1); 25371 } 25372 composeDomainResource(t, "SubstanceProtein", name, element, index); 25373 if (element.hasSequenceType()) { 25374 composeCodeableConcept(t, "SubstanceProtein", "sequenceType", element.getSequenceType(), -1); 25375 } 25376 if (element.hasNumberOfSubunitsElement()) { 25377 composeInteger(t, "SubstanceProtein", "numberOfSubunits", element.getNumberOfSubunitsElement(), -1); 25378 } 25379 for (int i = 0; i < element.getDisulfideLinkage().size(); i++) { 25380 composeString(t, "SubstanceProtein", "disulfideLinkage", element.getDisulfideLinkage().get(i), i); 25381 } 25382 for (int i = 0; i < element.getSubunit().size(); i++) { 25383 composeSubstanceProteinSubunitComponent(t, "SubstanceProtein", "subunit", element.getSubunit().get(i), i); 25384 } 25385 } 25386 25387 protected void composeSubstanceProteinSubunitComponent(Complex parent, String parentType, String name, SubstanceProtein.SubstanceProteinSubunitComponent element, int index) { 25388 if (element == null) 25389 return; 25390 Complex t; 25391 if (Utilities.noString(parentType)) 25392 t = parent; 25393 else { 25394 t = parent.predicate("fhir:"+name,index > -1); 25395 } 25396 composeBackboneElement(t, "subunit", name, element, index); 25397 if (element.hasSubunitElement()) { 25398 composeInteger(t, "SubstanceProteinSubunitComponent", "subunit", element.getSubunitElement(), -1); 25399 } 25400 if (element.hasSequenceElement()) { 25401 composeString(t, "SubstanceProteinSubunitComponent", "sequence", element.getSequenceElement(), -1); 25402 } 25403 if (element.hasLengthElement()) { 25404 composeInteger(t, "SubstanceProteinSubunitComponent", "length", element.getLengthElement(), -1); 25405 } 25406 if (element.hasSequenceAttachment()) { 25407 composeAttachment(t, "SubstanceProteinSubunitComponent", "sequenceAttachment", element.getSequenceAttachment(), -1); 25408 } 25409 if (element.hasNTerminalModificationId()) { 25410 composeIdentifier(t, "SubstanceProteinSubunitComponent", "nTerminalModificationId", element.getNTerminalModificationId(), -1); 25411 } 25412 if (element.hasNTerminalModificationElement()) { 25413 composeString(t, "SubstanceProteinSubunitComponent", "nTerminalModification", element.getNTerminalModificationElement(), -1); 25414 } 25415 if (element.hasCTerminalModificationId()) { 25416 composeIdentifier(t, "SubstanceProteinSubunitComponent", "cTerminalModificationId", element.getCTerminalModificationId(), -1); 25417 } 25418 if (element.hasCTerminalModificationElement()) { 25419 composeString(t, "SubstanceProteinSubunitComponent", "cTerminalModification", element.getCTerminalModificationElement(), -1); 25420 } 25421 } 25422 25423 protected void composeSubstanceReferenceInformation(Complex parent, String parentType, String name, SubstanceReferenceInformation element, int index) { 25424 if (element == null) 25425 return; 25426 Complex t; 25427 if (Utilities.noString(parentType)) 25428 t = parent; 25429 else { 25430 t = parent.predicate("fhir:"+name,index > -1); 25431 } 25432 composeDomainResource(t, "SubstanceReferenceInformation", name, element, index); 25433 if (element.hasCommentElement()) { 25434 composeString(t, "SubstanceReferenceInformation", "comment", element.getCommentElement(), -1); 25435 } 25436 for (int i = 0; i < element.getGene().size(); i++) { 25437 composeSubstanceReferenceInformationGeneComponent(t, "SubstanceReferenceInformation", "gene", element.getGene().get(i), i); 25438 } 25439 for (int i = 0; i < element.getGeneElement().size(); i++) { 25440 composeSubstanceReferenceInformationGeneElementComponent(t, "SubstanceReferenceInformation", "geneElement", element.getGeneElement().get(i), i); 25441 } 25442 for (int i = 0; i < element.getTarget().size(); i++) { 25443 composeSubstanceReferenceInformationTargetComponent(t, "SubstanceReferenceInformation", "target", element.getTarget().get(i), i); 25444 } 25445 } 25446 25447 protected void composeSubstanceReferenceInformationGeneComponent(Complex parent, String parentType, String name, SubstanceReferenceInformation.SubstanceReferenceInformationGeneComponent element, int index) { 25448 if (element == null) 25449 return; 25450 Complex t; 25451 if (Utilities.noString(parentType)) 25452 t = parent; 25453 else { 25454 t = parent.predicate("fhir:"+name,index > -1); 25455 } 25456 composeBackboneElement(t, "gene", name, element, index); 25457 if (element.hasGeneSequenceOrigin()) { 25458 composeCodeableConcept(t, "SubstanceReferenceInformationGeneComponent", "geneSequenceOrigin", element.getGeneSequenceOrigin(), -1); 25459 } 25460 if (element.hasGene()) { 25461 composeCodeableConcept(t, "SubstanceReferenceInformationGeneComponent", "gene", element.getGene(), -1); 25462 } 25463 for (int i = 0; i < element.getSource().size(); i++) { 25464 composeReference(t, "SubstanceReferenceInformationGeneComponent", "source", element.getSource().get(i), i); 25465 } 25466 } 25467 25468 protected void composeSubstanceReferenceInformationGeneElementComponent(Complex parent, String parentType, String name, SubstanceReferenceInformation.SubstanceReferenceInformationGeneElementComponent element, int index) { 25469 if (element == null) 25470 return; 25471 Complex t; 25472 if (Utilities.noString(parentType)) 25473 t = parent; 25474 else { 25475 t = parent.predicate("fhir:"+name,index > -1); 25476 } 25477 composeBackboneElement(t, "geneElement", name, element, index); 25478 if (element.hasType()) { 25479 composeCodeableConcept(t, "SubstanceReferenceInformationGeneElementComponent", "type", element.getType(), -1); 25480 } 25481 if (element.hasElement()) { 25482 composeIdentifier(t, "SubstanceReferenceInformationGeneElementComponent", "element", element.getElement(), -1); 25483 } 25484 for (int i = 0; i < element.getSource().size(); i++) { 25485 composeReference(t, "SubstanceReferenceInformationGeneElementComponent", "source", element.getSource().get(i), i); 25486 } 25487 } 25488 25489 protected void composeSubstanceReferenceInformationTargetComponent(Complex parent, String parentType, String name, SubstanceReferenceInformation.SubstanceReferenceInformationTargetComponent element, int index) { 25490 if (element == null) 25491 return; 25492 Complex t; 25493 if (Utilities.noString(parentType)) 25494 t = parent; 25495 else { 25496 t = parent.predicate("fhir:"+name,index > -1); 25497 } 25498 composeBackboneElement(t, "target", name, element, index); 25499 if (element.hasTarget()) { 25500 composeIdentifier(t, "SubstanceReferenceInformationTargetComponent", "target", element.getTarget(), -1); 25501 } 25502 if (element.hasType()) { 25503 composeCodeableConcept(t, "SubstanceReferenceInformationTargetComponent", "type", element.getType(), -1); 25504 } 25505 if (element.hasInteraction()) { 25506 composeCodeableConcept(t, "SubstanceReferenceInformationTargetComponent", "interaction", element.getInteraction(), -1); 25507 } 25508 if (element.hasOrganism()) { 25509 composeCodeableConcept(t, "SubstanceReferenceInformationTargetComponent", "organism", element.getOrganism(), -1); 25510 } 25511 if (element.hasOrganismType()) { 25512 composeCodeableConcept(t, "SubstanceReferenceInformationTargetComponent", "organismType", element.getOrganismType(), -1); 25513 } 25514 if (element.hasAmount()) { 25515 composeType(t, "SubstanceReferenceInformationTargetComponent", "amount", element.getAmount(), -1); 25516 } 25517 if (element.hasAmountType()) { 25518 composeCodeableConcept(t, "SubstanceReferenceInformationTargetComponent", "amountType", element.getAmountType(), -1); 25519 } 25520 for (int i = 0; i < element.getSource().size(); i++) { 25521 composeReference(t, "SubstanceReferenceInformationTargetComponent", "source", element.getSource().get(i), i); 25522 } 25523 } 25524 25525 protected void composeSubstanceSourceMaterial(Complex parent, String parentType, String name, SubstanceSourceMaterial element, int index) { 25526 if (element == null) 25527 return; 25528 Complex t; 25529 if (Utilities.noString(parentType)) 25530 t = parent; 25531 else { 25532 t = parent.predicate("fhir:"+name,index > -1); 25533 } 25534 composeDomainResource(t, "SubstanceSourceMaterial", name, element, index); 25535 if (element.hasSourceMaterialClass()) { 25536 composeCodeableConcept(t, "SubstanceSourceMaterial", "sourceMaterialClass", element.getSourceMaterialClass(), -1); 25537 } 25538 if (element.hasSourceMaterialType()) { 25539 composeCodeableConcept(t, "SubstanceSourceMaterial", "sourceMaterialType", element.getSourceMaterialType(), -1); 25540 } 25541 if (element.hasSourceMaterialState()) { 25542 composeCodeableConcept(t, "SubstanceSourceMaterial", "sourceMaterialState", element.getSourceMaterialState(), -1); 25543 } 25544 if (element.hasOrganismId()) { 25545 composeIdentifier(t, "SubstanceSourceMaterial", "organismId", element.getOrganismId(), -1); 25546 } 25547 if (element.hasOrganismNameElement()) { 25548 composeString(t, "SubstanceSourceMaterial", "organismName", element.getOrganismNameElement(), -1); 25549 } 25550 for (int i = 0; i < element.getParentSubstanceId().size(); i++) { 25551 composeIdentifier(t, "SubstanceSourceMaterial", "parentSubstanceId", element.getParentSubstanceId().get(i), i); 25552 } 25553 for (int i = 0; i < element.getParentSubstanceName().size(); i++) { 25554 composeString(t, "SubstanceSourceMaterial", "parentSubstanceName", element.getParentSubstanceName().get(i), i); 25555 } 25556 for (int i = 0; i < element.getCountryOfOrigin().size(); i++) { 25557 composeCodeableConcept(t, "SubstanceSourceMaterial", "countryOfOrigin", element.getCountryOfOrigin().get(i), i); 25558 } 25559 for (int i = 0; i < element.getGeographicalLocation().size(); i++) { 25560 composeString(t, "SubstanceSourceMaterial", "geographicalLocation", element.getGeographicalLocation().get(i), i); 25561 } 25562 if (element.hasDevelopmentStage()) { 25563 composeCodeableConcept(t, "SubstanceSourceMaterial", "developmentStage", element.getDevelopmentStage(), -1); 25564 } 25565 for (int i = 0; i < element.getFractionDescription().size(); i++) { 25566 composeSubstanceSourceMaterialFractionDescriptionComponent(t, "SubstanceSourceMaterial", "fractionDescription", element.getFractionDescription().get(i), i); 25567 } 25568 if (element.hasOrganism()) { 25569 composeSubstanceSourceMaterialOrganismComponent(t, "SubstanceSourceMaterial", "organism", element.getOrganism(), -1); 25570 } 25571 for (int i = 0; i < element.getPartDescription().size(); i++) { 25572 composeSubstanceSourceMaterialPartDescriptionComponent(t, "SubstanceSourceMaterial", "partDescription", element.getPartDescription().get(i), i); 25573 } 25574 } 25575 25576 protected void composeSubstanceSourceMaterialFractionDescriptionComponent(Complex parent, String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialFractionDescriptionComponent element, int index) { 25577 if (element == null) 25578 return; 25579 Complex t; 25580 if (Utilities.noString(parentType)) 25581 t = parent; 25582 else { 25583 t = parent.predicate("fhir:"+name,index > -1); 25584 } 25585 composeBackboneElement(t, "fractionDescription", name, element, index); 25586 if (element.hasFractionElement()) { 25587 composeString(t, "SubstanceSourceMaterialFractionDescriptionComponent", "fraction", element.getFractionElement(), -1); 25588 } 25589 if (element.hasMaterialType()) { 25590 composeCodeableConcept(t, "SubstanceSourceMaterialFractionDescriptionComponent", "materialType", element.getMaterialType(), -1); 25591 } 25592 } 25593 25594 protected void composeSubstanceSourceMaterialOrganismComponent(Complex parent, String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismComponent element, int index) { 25595 if (element == null) 25596 return; 25597 Complex t; 25598 if (Utilities.noString(parentType)) 25599 t = parent; 25600 else { 25601 t = parent.predicate("fhir:"+name,index > -1); 25602 } 25603 composeBackboneElement(t, "organism", name, element, index); 25604 if (element.hasFamily()) { 25605 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismComponent", "family", element.getFamily(), -1); 25606 } 25607 if (element.hasGenus()) { 25608 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismComponent", "genus", element.getGenus(), -1); 25609 } 25610 if (element.hasSpecies()) { 25611 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismComponent", "species", element.getSpecies(), -1); 25612 } 25613 if (element.hasIntraspecificType()) { 25614 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismComponent", "intraspecificType", element.getIntraspecificType(), -1); 25615 } 25616 if (element.hasIntraspecificDescriptionElement()) { 25617 composeString(t, "SubstanceSourceMaterialOrganismComponent", "intraspecificDescription", element.getIntraspecificDescriptionElement(), -1); 25618 } 25619 for (int i = 0; i < element.getAuthor().size(); i++) { 25620 composeSubstanceSourceMaterialOrganismAuthorComponent(t, "SubstanceSourceMaterialOrganismComponent", "author", element.getAuthor().get(i), i); 25621 } 25622 if (element.hasHybrid()) { 25623 composeSubstanceSourceMaterialOrganismHybridComponent(t, "SubstanceSourceMaterialOrganismComponent", "hybrid", element.getHybrid(), -1); 25624 } 25625 if (element.hasOrganismGeneral()) { 25626 composeSubstanceSourceMaterialOrganismOrganismGeneralComponent(t, "SubstanceSourceMaterialOrganismComponent", "organismGeneral", element.getOrganismGeneral(), -1); 25627 } 25628 } 25629 25630 protected void composeSubstanceSourceMaterialOrganismAuthorComponent(Complex parent, String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismAuthorComponent element, int index) { 25631 if (element == null) 25632 return; 25633 Complex t; 25634 if (Utilities.noString(parentType)) 25635 t = parent; 25636 else { 25637 t = parent.predicate("fhir:"+name,index > -1); 25638 } 25639 composeBackboneElement(t, "author", name, element, index); 25640 if (element.hasAuthorType()) { 25641 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismAuthorComponent", "authorType", element.getAuthorType(), -1); 25642 } 25643 if (element.hasAuthorDescriptionElement()) { 25644 composeString(t, "SubstanceSourceMaterialOrganismAuthorComponent", "authorDescription", element.getAuthorDescriptionElement(), -1); 25645 } 25646 } 25647 25648 protected void composeSubstanceSourceMaterialOrganismHybridComponent(Complex parent, String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismHybridComponent element, int index) { 25649 if (element == null) 25650 return; 25651 Complex t; 25652 if (Utilities.noString(parentType)) 25653 t = parent; 25654 else { 25655 t = parent.predicate("fhir:"+name,index > -1); 25656 } 25657 composeBackboneElement(t, "hybrid", name, element, index); 25658 if (element.hasMaternalOrganismIdElement()) { 25659 composeString(t, "SubstanceSourceMaterialOrganismHybridComponent", "maternalOrganismId", element.getMaternalOrganismIdElement(), -1); 25660 } 25661 if (element.hasMaternalOrganismNameElement()) { 25662 composeString(t, "SubstanceSourceMaterialOrganismHybridComponent", "maternalOrganismName", element.getMaternalOrganismNameElement(), -1); 25663 } 25664 if (element.hasPaternalOrganismIdElement()) { 25665 composeString(t, "SubstanceSourceMaterialOrganismHybridComponent", "paternalOrganismId", element.getPaternalOrganismIdElement(), -1); 25666 } 25667 if (element.hasPaternalOrganismNameElement()) { 25668 composeString(t, "SubstanceSourceMaterialOrganismHybridComponent", "paternalOrganismName", element.getPaternalOrganismNameElement(), -1); 25669 } 25670 if (element.hasHybridType()) { 25671 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismHybridComponent", "hybridType", element.getHybridType(), -1); 25672 } 25673 } 25674 25675 protected void composeSubstanceSourceMaterialOrganismOrganismGeneralComponent(Complex parent, String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismOrganismGeneralComponent element, int index) { 25676 if (element == null) 25677 return; 25678 Complex t; 25679 if (Utilities.noString(parentType)) 25680 t = parent; 25681 else { 25682 t = parent.predicate("fhir:"+name,index > -1); 25683 } 25684 composeBackboneElement(t, "organismGeneral", name, element, index); 25685 if (element.hasKingdom()) { 25686 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismOrganismGeneralComponent", "kingdom", element.getKingdom(), -1); 25687 } 25688 if (element.hasPhylum()) { 25689 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismOrganismGeneralComponent", "phylum", element.getPhylum(), -1); 25690 } 25691 if (element.hasClass_()) { 25692 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismOrganismGeneralComponent", "class", element.getClass_(), -1); 25693 } 25694 if (element.hasOrder()) { 25695 composeCodeableConcept(t, "SubstanceSourceMaterialOrganismOrganismGeneralComponent", "order", element.getOrder(), -1); 25696 } 25697 } 25698 25699 protected void composeSubstanceSourceMaterialPartDescriptionComponent(Complex parent, String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialPartDescriptionComponent element, int index) { 25700 if (element == null) 25701 return; 25702 Complex t; 25703 if (Utilities.noString(parentType)) 25704 t = parent; 25705 else { 25706 t = parent.predicate("fhir:"+name,index > -1); 25707 } 25708 composeBackboneElement(t, "partDescription", name, element, index); 25709 if (element.hasPart()) { 25710 composeCodeableConcept(t, "SubstanceSourceMaterialPartDescriptionComponent", "part", element.getPart(), -1); 25711 } 25712 if (element.hasPartLocation()) { 25713 composeCodeableConcept(t, "SubstanceSourceMaterialPartDescriptionComponent", "partLocation", element.getPartLocation(), -1); 25714 } 25715 } 25716 25717 protected void composeSupplyDelivery(Complex parent, String parentType, String name, SupplyDelivery element, int index) { 25718 if (element == null) 25719 return; 25720 Complex t; 25721 if (Utilities.noString(parentType)) 25722 t = parent; 25723 else { 25724 t = parent.predicate("fhir:"+name,index > -1); 25725 } 25726 composeDomainResource(t, "SupplyDelivery", name, element, index); 25727 for (int i = 0; i < element.getIdentifier().size(); i++) { 25728 composeIdentifier(t, "SupplyDelivery", "identifier", element.getIdentifier().get(i), i); 25729 } 25730 for (int i = 0; i < element.getBasedOn().size(); i++) { 25731 composeReference(t, "SupplyDelivery", "basedOn", element.getBasedOn().get(i), i); 25732 } 25733 for (int i = 0; i < element.getPartOf().size(); i++) { 25734 composeReference(t, "SupplyDelivery", "partOf", element.getPartOf().get(i), i); 25735 } 25736 if (element.hasStatusElement()) { 25737 composeEnum(t, "SupplyDelivery", "status", element.getStatusElement(), -1); 25738 } 25739 if (element.hasPatient()) { 25740 composeReference(t, "SupplyDelivery", "patient", element.getPatient(), -1); 25741 } 25742 if (element.hasType()) { 25743 composeCodeableConcept(t, "SupplyDelivery", "type", element.getType(), -1); 25744 } 25745 for (int i = 0; i < element.getSuppliedItem().size(); i++) { 25746 composeSupplyDeliverySuppliedItemComponent(t, "SupplyDelivery", "suppliedItem", element.getSuppliedItem().get(i), i); 25747 } 25748 if (element.hasOccurrence()) { 25749 composeType(t, "SupplyDelivery", "occurrence", element.getOccurrence(), -1); 25750 } 25751 if (element.hasSupplier()) { 25752 composeReference(t, "SupplyDelivery", "supplier", element.getSupplier(), -1); 25753 } 25754 if (element.hasDestination()) { 25755 composeReference(t, "SupplyDelivery", "destination", element.getDestination(), -1); 25756 } 25757 for (int i = 0; i < element.getReceiver().size(); i++) { 25758 composeReference(t, "SupplyDelivery", "receiver", element.getReceiver().get(i), i); 25759 } 25760 } 25761 25762 protected void composeSupplyDeliverySuppliedItemComponent(Complex parent, String parentType, String name, SupplyDelivery.SupplyDeliverySuppliedItemComponent element, int index) { 25763 if (element == null) 25764 return; 25765 Complex t; 25766 if (Utilities.noString(parentType)) 25767 t = parent; 25768 else { 25769 t = parent.predicate("fhir:"+name,index > -1); 25770 } 25771 composeBackboneElement(t, "suppliedItem", name, element, index); 25772 if (element.hasQuantity()) { 25773 composeQuantity(t, "SupplyDeliverySuppliedItemComponent", "quantity", element.getQuantity(), -1); 25774 } 25775 if (element.hasItem()) { 25776 composeType(t, "SupplyDeliverySuppliedItemComponent", "item", element.getItem(), -1); 25777 } 25778 } 25779 25780 protected void composeSupplyRequest(Complex parent, String parentType, String name, SupplyRequest element, int index) { 25781 if (element == null) 25782 return; 25783 Complex t; 25784 if (Utilities.noString(parentType)) 25785 t = parent; 25786 else { 25787 t = parent.predicate("fhir:"+name,index > -1); 25788 } 25789 composeDomainResource(t, "SupplyRequest", name, element, index); 25790 for (int i = 0; i < element.getIdentifier().size(); i++) { 25791 composeIdentifier(t, "SupplyRequest", "identifier", element.getIdentifier().get(i), i); 25792 } 25793 if (element.hasStatusElement()) { 25794 composeEnum(t, "SupplyRequest", "status", element.getStatusElement(), -1); 25795 } 25796 for (int i = 0; i < element.getBasedOn().size(); i++) { 25797 composeReference(t, "SupplyRequest", "basedOn", element.getBasedOn().get(i), i); 25798 } 25799 if (element.hasCategory()) { 25800 composeCodeableConcept(t, "SupplyRequest", "category", element.getCategory(), -1); 25801 } 25802 if (element.hasPriorityElement()) { 25803 composeEnum(t, "SupplyRequest", "priority", element.getPriorityElement(), -1); 25804 } 25805 if (element.hasDeliverFor()) { 25806 composeReference(t, "SupplyRequest", "deliverFor", element.getDeliverFor(), -1); 25807 } 25808 if (element.hasItem()) { 25809 composeCodeableReference(t, "SupplyRequest", "item", element.getItem(), -1); 25810 } 25811 if (element.hasQuantity()) { 25812 composeQuantity(t, "SupplyRequest", "quantity", element.getQuantity(), -1); 25813 } 25814 for (int i = 0; i < element.getParameter().size(); i++) { 25815 composeSupplyRequestParameterComponent(t, "SupplyRequest", "parameter", element.getParameter().get(i), i); 25816 } 25817 if (element.hasOccurrence()) { 25818 composeType(t, "SupplyRequest", "occurrence", element.getOccurrence(), -1); 25819 } 25820 if (element.hasAuthoredOnElement()) { 25821 composeDateTime(t, "SupplyRequest", "authoredOn", element.getAuthoredOnElement(), -1); 25822 } 25823 if (element.hasRequester()) { 25824 composeReference(t, "SupplyRequest", "requester", element.getRequester(), -1); 25825 } 25826 for (int i = 0; i < element.getSupplier().size(); i++) { 25827 composeReference(t, "SupplyRequest", "supplier", element.getSupplier().get(i), i); 25828 } 25829 for (int i = 0; i < element.getReason().size(); i++) { 25830 composeCodeableReference(t, "SupplyRequest", "reason", element.getReason().get(i), i); 25831 } 25832 if (element.hasDeliverFrom()) { 25833 composeReference(t, "SupplyRequest", "deliverFrom", element.getDeliverFrom(), -1); 25834 } 25835 if (element.hasDeliverTo()) { 25836 composeReference(t, "SupplyRequest", "deliverTo", element.getDeliverTo(), -1); 25837 } 25838 } 25839 25840 protected void composeSupplyRequestParameterComponent(Complex parent, String parentType, String name, SupplyRequest.SupplyRequestParameterComponent element, int index) { 25841 if (element == null) 25842 return; 25843 Complex t; 25844 if (Utilities.noString(parentType)) 25845 t = parent; 25846 else { 25847 t = parent.predicate("fhir:"+name,index > -1); 25848 } 25849 composeBackboneElement(t, "parameter", name, element, index); 25850 if (element.hasCode()) { 25851 composeCodeableConcept(t, "SupplyRequestParameterComponent", "code", element.getCode(), -1); 25852 } 25853 if (element.hasValue()) { 25854 composeType(t, "SupplyRequestParameterComponent", "value", element.getValue(), -1); 25855 } 25856 } 25857 25858 protected void composeTask(Complex parent, String parentType, String name, Task element, int index) { 25859 if (element == null) 25860 return; 25861 Complex t; 25862 if (Utilities.noString(parentType)) 25863 t = parent; 25864 else { 25865 t = parent.predicate("fhir:"+name,index > -1); 25866 } 25867 composeDomainResource(t, "Task", name, element, index); 25868 for (int i = 0; i < element.getIdentifier().size(); i++) { 25869 composeIdentifier(t, "Task", "identifier", element.getIdentifier().get(i), i); 25870 } 25871 if (element.hasInstantiatesCanonicalElement()) { 25872 composeCanonical(t, "Task", "instantiatesCanonical", element.getInstantiatesCanonicalElement(), -1); 25873 } 25874 if (element.hasInstantiatesUriElement()) { 25875 composeUri(t, "Task", "instantiatesUri", element.getInstantiatesUriElement(), -1); 25876 } 25877 for (int i = 0; i < element.getBasedOn().size(); i++) { 25878 composeReference(t, "Task", "basedOn", element.getBasedOn().get(i), i); 25879 } 25880 if (element.hasGroupIdentifier()) { 25881 composeIdentifier(t, "Task", "groupIdentifier", element.getGroupIdentifier(), -1); 25882 } 25883 for (int i = 0; i < element.getPartOf().size(); i++) { 25884 composeReference(t, "Task", "partOf", element.getPartOf().get(i), i); 25885 } 25886 if (element.hasStatusElement()) { 25887 composeEnum(t, "Task", "status", element.getStatusElement(), -1); 25888 } 25889 if (element.hasStatusReason()) { 25890 composeCodeableReference(t, "Task", "statusReason", element.getStatusReason(), -1); 25891 } 25892 if (element.hasBusinessStatus()) { 25893 composeCodeableConcept(t, "Task", "businessStatus", element.getBusinessStatus(), -1); 25894 } 25895 if (element.hasIntentElement()) { 25896 composeEnum(t, "Task", "intent", element.getIntentElement(), -1); 25897 } 25898 if (element.hasPriorityElement()) { 25899 composeEnum(t, "Task", "priority", element.getPriorityElement(), -1); 25900 } 25901 if (element.hasDoNotPerformElement()) { 25902 composeBoolean(t, "Task", "doNotPerform", element.getDoNotPerformElement(), -1); 25903 } 25904 if (element.hasCode()) { 25905 composeCodeableConcept(t, "Task", "code", element.getCode(), -1); 25906 } 25907 if (element.hasDescriptionElement()) { 25908 composeString(t, "Task", "description", element.getDescriptionElement(), -1); 25909 } 25910 if (element.hasFocus()) { 25911 composeReference(t, "Task", "focus", element.getFocus(), -1); 25912 } 25913 if (element.hasFor()) { 25914 composeReference(t, "Task", "for", element.getFor(), -1); 25915 } 25916 if (element.hasEncounter()) { 25917 composeReference(t, "Task", "encounter", element.getEncounter(), -1); 25918 } 25919 if (element.hasRequestedPeriod()) { 25920 composePeriod(t, "Task", "requestedPeriod", element.getRequestedPeriod(), -1); 25921 } 25922 if (element.hasExecutionPeriod()) { 25923 composePeriod(t, "Task", "executionPeriod", element.getExecutionPeriod(), -1); 25924 } 25925 if (element.hasAuthoredOnElement()) { 25926 composeDateTime(t, "Task", "authoredOn", element.getAuthoredOnElement(), -1); 25927 } 25928 if (element.hasLastModifiedElement()) { 25929 composeDateTime(t, "Task", "lastModified", element.getLastModifiedElement(), -1); 25930 } 25931 if (element.hasRequester()) { 25932 composeReference(t, "Task", "requester", element.getRequester(), -1); 25933 } 25934 for (int i = 0; i < element.getRequestedPerformer().size(); i++) { 25935 composeCodeableReference(t, "Task", "requestedPerformer", element.getRequestedPerformer().get(i), i); 25936 } 25937 if (element.hasOwner()) { 25938 composeReference(t, "Task", "owner", element.getOwner(), -1); 25939 } 25940 for (int i = 0; i < element.getPerformer().size(); i++) { 25941 composeTaskPerformerComponent(t, "Task", "performer", element.getPerformer().get(i), i); 25942 } 25943 if (element.hasLocation()) { 25944 composeReference(t, "Task", "location", element.getLocation(), -1); 25945 } 25946 for (int i = 0; i < element.getReason().size(); i++) { 25947 composeCodeableReference(t, "Task", "reason", element.getReason().get(i), i); 25948 } 25949 for (int i = 0; i < element.getInsurance().size(); i++) { 25950 composeReference(t, "Task", "insurance", element.getInsurance().get(i), i); 25951 } 25952 for (int i = 0; i < element.getNote().size(); i++) { 25953 composeAnnotation(t, "Task", "note", element.getNote().get(i), i); 25954 } 25955 for (int i = 0; i < element.getRelevantHistory().size(); i++) { 25956 composeReference(t, "Task", "relevantHistory", element.getRelevantHistory().get(i), i); 25957 } 25958 if (element.hasRestriction()) { 25959 composeTaskRestrictionComponent(t, "Task", "restriction", element.getRestriction(), -1); 25960 } 25961 for (int i = 0; i < element.getInput().size(); i++) { 25962 composeTaskInputComponent(t, "Task", "input", element.getInput().get(i), i); 25963 } 25964 for (int i = 0; i < element.getOutput().size(); i++) { 25965 composeTaskOutputComponent(t, "Task", "output", element.getOutput().get(i), i); 25966 } 25967 } 25968 25969 protected void composeTaskPerformerComponent(Complex parent, String parentType, String name, Task.TaskPerformerComponent element, int index) { 25970 if (element == null) 25971 return; 25972 Complex t; 25973 if (Utilities.noString(parentType)) 25974 t = parent; 25975 else { 25976 t = parent.predicate("fhir:"+name,index > -1); 25977 } 25978 composeBackboneElement(t, "performer", name, element, index); 25979 if (element.hasFunction()) { 25980 composeCodeableConcept(t, "TaskPerformerComponent", "function", element.getFunction(), -1); 25981 } 25982 if (element.hasActor()) { 25983 composeReference(t, "TaskPerformerComponent", "actor", element.getActor(), -1); 25984 } 25985 } 25986 25987 protected void composeTaskRestrictionComponent(Complex parent, String parentType, String name, Task.TaskRestrictionComponent element, int index) { 25988 if (element == null) 25989 return; 25990 Complex t; 25991 if (Utilities.noString(parentType)) 25992 t = parent; 25993 else { 25994 t = parent.predicate("fhir:"+name,index > -1); 25995 } 25996 composeBackboneElement(t, "restriction", name, element, index); 25997 if (element.hasRepetitionsElement()) { 25998 composePositiveInt(t, "TaskRestrictionComponent", "repetitions", element.getRepetitionsElement(), -1); 25999 } 26000 if (element.hasPeriod()) { 26001 composePeriod(t, "TaskRestrictionComponent", "period", element.getPeriod(), -1); 26002 } 26003 for (int i = 0; i < element.getRecipient().size(); i++) { 26004 composeReference(t, "TaskRestrictionComponent", "recipient", element.getRecipient().get(i), i); 26005 } 26006 } 26007 26008 protected void composeTaskInputComponent(Complex parent, String parentType, String name, Task.TaskInputComponent element, int index) { 26009 if (element == null) 26010 return; 26011 Complex t; 26012 if (Utilities.noString(parentType)) 26013 t = parent; 26014 else { 26015 t = parent.predicate("fhir:"+name,index > -1); 26016 } 26017 composeBackboneElement(t, "input", name, element, index); 26018 if (element.hasType()) { 26019 composeCodeableConcept(t, "TaskInputComponent", "type", element.getType(), -1); 26020 } 26021 if (element.hasValue()) { 26022 composeType(t, "TaskInputComponent", "value", element.getValue(), -1); 26023 } 26024 } 26025 26026 protected void composeTaskOutputComponent(Complex parent, String parentType, String name, Task.TaskOutputComponent element, int index) { 26027 if (element == null) 26028 return; 26029 Complex t; 26030 if (Utilities.noString(parentType)) 26031 t = parent; 26032 else { 26033 t = parent.predicate("fhir:"+name,index > -1); 26034 } 26035 composeBackboneElement(t, "output", name, element, index); 26036 if (element.hasType()) { 26037 composeCodeableConcept(t, "TaskOutputComponent", "type", element.getType(), -1); 26038 } 26039 if (element.hasValue()) { 26040 composeType(t, "TaskOutputComponent", "value", element.getValue(), -1); 26041 } 26042 } 26043 26044 protected void composeTerminologyCapabilities(Complex parent, String parentType, String name, TerminologyCapabilities element, int index) { 26045 if (element == null) 26046 return; 26047 Complex t; 26048 if (Utilities.noString(parentType)) 26049 t = parent; 26050 else { 26051 t = parent.predicate("fhir:"+name,index > -1); 26052 } 26053 composeCanonicalResource(t, "TerminologyCapabilities", name, element, index); 26054 if (element.hasUrlElement()) { 26055 composeUri(t, "TerminologyCapabilities", "url", element.getUrlElement(), -1); 26056 } 26057 for (int i = 0; i < element.getIdentifier().size(); i++) { 26058 composeIdentifier(t, "TerminologyCapabilities", "identifier", element.getIdentifier().get(i), i); 26059 } 26060 if (element.hasVersionElement()) { 26061 composeString(t, "TerminologyCapabilities", "version", element.getVersionElement(), -1); 26062 } 26063 if (element.hasVersionAlgorithm()) { 26064 composeType(t, "TerminologyCapabilities", "versionAlgorithm", element.getVersionAlgorithm(), -1); 26065 } 26066 if (element.hasNameElement()) { 26067 composeString(t, "TerminologyCapabilities", "name", element.getNameElement(), -1); 26068 } 26069 if (element.hasTitleElement()) { 26070 composeString(t, "TerminologyCapabilities", "title", element.getTitleElement(), -1); 26071 } 26072 if (element.hasStatusElement()) { 26073 composeEnum(t, "TerminologyCapabilities", "status", element.getStatusElement(), -1); 26074 } 26075 if (element.hasExperimentalElement()) { 26076 composeBoolean(t, "TerminologyCapabilities", "experimental", element.getExperimentalElement(), -1); 26077 } 26078 if (element.hasDateElement()) { 26079 composeDateTime(t, "TerminologyCapabilities", "date", element.getDateElement(), -1); 26080 } 26081 if (element.hasPublisherElement()) { 26082 composeString(t, "TerminologyCapabilities", "publisher", element.getPublisherElement(), -1); 26083 } 26084 for (int i = 0; i < element.getContact().size(); i++) { 26085 composeContactDetail(t, "TerminologyCapabilities", "contact", element.getContact().get(i), i); 26086 } 26087 if (element.hasDescriptionElement()) { 26088 composeMarkdown(t, "TerminologyCapabilities", "description", element.getDescriptionElement(), -1); 26089 } 26090 for (int i = 0; i < element.getUseContext().size(); i++) { 26091 composeUsageContext(t, "TerminologyCapabilities", "useContext", element.getUseContext().get(i), i); 26092 } 26093 for (int i = 0; i < element.getJurisdiction().size(); i++) { 26094 composeCodeableConcept(t, "TerminologyCapabilities", "jurisdiction", element.getJurisdiction().get(i), i); 26095 } 26096 if (element.hasPurposeElement()) { 26097 composeMarkdown(t, "TerminologyCapabilities", "purpose", element.getPurposeElement(), -1); 26098 } 26099 if (element.hasCopyrightElement()) { 26100 composeMarkdown(t, "TerminologyCapabilities", "copyright", element.getCopyrightElement(), -1); 26101 } 26102 if (element.hasCopyrightLabelElement()) { 26103 composeString(t, "TerminologyCapabilities", "copyrightLabel", element.getCopyrightLabelElement(), -1); 26104 } 26105 if (element.hasKindElement()) { 26106 composeEnum(t, "TerminologyCapabilities", "kind", element.getKindElement(), -1); 26107 } 26108 if (element.hasSoftware()) { 26109 composeTerminologyCapabilitiesSoftwareComponent(t, "TerminologyCapabilities", "software", element.getSoftware(), -1); 26110 } 26111 if (element.hasImplementation()) { 26112 composeTerminologyCapabilitiesImplementationComponent(t, "TerminologyCapabilities", "implementation", element.getImplementation(), -1); 26113 } 26114 if (element.hasLockedDateElement()) { 26115 composeBoolean(t, "TerminologyCapabilities", "lockedDate", element.getLockedDateElement(), -1); 26116 } 26117 for (int i = 0; i < element.getCodeSystem().size(); i++) { 26118 composeTerminologyCapabilitiesCodeSystemComponent(t, "TerminologyCapabilities", "codeSystem", element.getCodeSystem().get(i), i); 26119 } 26120 if (element.hasExpansion()) { 26121 composeTerminologyCapabilitiesExpansionComponent(t, "TerminologyCapabilities", "expansion", element.getExpansion(), -1); 26122 } 26123 if (element.hasCodeSearchElement()) { 26124 composeEnum(t, "TerminologyCapabilities", "codeSearch", element.getCodeSearchElement(), -1); 26125 } 26126 if (element.hasValidateCode()) { 26127 composeTerminologyCapabilitiesValidateCodeComponent(t, "TerminologyCapabilities", "validateCode", element.getValidateCode(), -1); 26128 } 26129 if (element.hasTranslation()) { 26130 composeTerminologyCapabilitiesTranslationComponent(t, "TerminologyCapabilities", "translation", element.getTranslation(), -1); 26131 } 26132 if (element.hasClosure()) { 26133 composeTerminologyCapabilitiesClosureComponent(t, "TerminologyCapabilities", "closure", element.getClosure(), -1); 26134 } 26135 } 26136 26137 protected void composeTerminologyCapabilitiesSoftwareComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesSoftwareComponent element, int index) { 26138 if (element == null) 26139 return; 26140 Complex t; 26141 if (Utilities.noString(parentType)) 26142 t = parent; 26143 else { 26144 t = parent.predicate("fhir:"+name,index > -1); 26145 } 26146 composeBackboneElement(t, "software", name, element, index); 26147 if (element.hasNameElement()) { 26148 composeString(t, "TerminologyCapabilitiesSoftwareComponent", "name", element.getNameElement(), -1); 26149 } 26150 if (element.hasVersionElement()) { 26151 composeString(t, "TerminologyCapabilitiesSoftwareComponent", "version", element.getVersionElement(), -1); 26152 } 26153 } 26154 26155 protected void composeTerminologyCapabilitiesImplementationComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesImplementationComponent element, int index) { 26156 if (element == null) 26157 return; 26158 Complex t; 26159 if (Utilities.noString(parentType)) 26160 t = parent; 26161 else { 26162 t = parent.predicate("fhir:"+name,index > -1); 26163 } 26164 composeBackboneElement(t, "implementation", name, element, index); 26165 if (element.hasDescriptionElement()) { 26166 composeString(t, "TerminologyCapabilitiesImplementationComponent", "description", element.getDescriptionElement(), -1); 26167 } 26168 if (element.hasUrlElement()) { 26169 composeUrl(t, "TerminologyCapabilitiesImplementationComponent", "url", element.getUrlElement(), -1); 26170 } 26171 } 26172 26173 protected void composeTerminologyCapabilitiesCodeSystemComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemComponent element, int index) { 26174 if (element == null) 26175 return; 26176 Complex t; 26177 if (Utilities.noString(parentType)) 26178 t = parent; 26179 else { 26180 t = parent.predicate("fhir:"+name,index > -1); 26181 } 26182 composeBackboneElement(t, "codeSystem", name, element, index); 26183 if (element.hasUriElement()) { 26184 composeCanonical(t, "TerminologyCapabilitiesCodeSystemComponent", "uri", element.getUriElement(), -1); 26185 } 26186 for (int i = 0; i < element.getVersion().size(); i++) { 26187 composeTerminologyCapabilitiesCodeSystemVersionComponent(t, "TerminologyCapabilitiesCodeSystemComponent", "version", element.getVersion().get(i), i); 26188 } 26189 if (element.hasContentElement()) { 26190 composeEnum(t, "TerminologyCapabilitiesCodeSystemComponent", "content", element.getContentElement(), -1); 26191 } 26192 if (element.hasSubsumptionElement()) { 26193 composeBoolean(t, "TerminologyCapabilitiesCodeSystemComponent", "subsumption", element.getSubsumptionElement(), -1); 26194 } 26195 } 26196 26197 protected void composeTerminologyCapabilitiesCodeSystemVersionComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionComponent element, int index) { 26198 if (element == null) 26199 return; 26200 Complex t; 26201 if (Utilities.noString(parentType)) 26202 t = parent; 26203 else { 26204 t = parent.predicate("fhir:"+name,index > -1); 26205 } 26206 composeBackboneElement(t, "version", name, element, index); 26207 if (element.hasCodeElement()) { 26208 composeString(t, "TerminologyCapabilitiesCodeSystemVersionComponent", "code", element.getCodeElement(), -1); 26209 } 26210 if (element.hasIsDefaultElement()) { 26211 composeBoolean(t, "TerminologyCapabilitiesCodeSystemVersionComponent", "isDefault", element.getIsDefaultElement(), -1); 26212 } 26213 if (element.hasCompositionalElement()) { 26214 composeBoolean(t, "TerminologyCapabilitiesCodeSystemVersionComponent", "compositional", element.getCompositionalElement(), -1); 26215 } 26216 for (int i = 0; i < element.getLanguage().size(); i++) { 26217 composeEnum(t, "TerminologyCapabilitiesCodeSystemVersionComponent", "language", element.getLanguage().get(i), i); 26218 } 26219 for (int i = 0; i < element.getFilter().size(); i++) { 26220 composeTerminologyCapabilitiesCodeSystemVersionFilterComponent(t, "TerminologyCapabilitiesCodeSystemVersionComponent", "filter", element.getFilter().get(i), i); 26221 } 26222 for (int i = 0; i < element.getProperty().size(); i++) { 26223 composeCode(t, "TerminologyCapabilitiesCodeSystemVersionComponent", "property", element.getProperty().get(i), i); 26224 } 26225 } 26226 26227 protected void composeTerminologyCapabilitiesCodeSystemVersionFilterComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionFilterComponent element, int index) { 26228 if (element == null) 26229 return; 26230 Complex t; 26231 if (Utilities.noString(parentType)) 26232 t = parent; 26233 else { 26234 t = parent.predicate("fhir:"+name,index > -1); 26235 } 26236 composeBackboneElement(t, "filter", name, element, index); 26237 if (element.hasCodeElement()) { 26238 composeCode(t, "TerminologyCapabilitiesCodeSystemVersionFilterComponent", "code", element.getCodeElement(), -1); 26239 } 26240 for (int i = 0; i < element.getOp().size(); i++) { 26241 composeCode(t, "TerminologyCapabilitiesCodeSystemVersionFilterComponent", "op", element.getOp().get(i), i); 26242 } 26243 } 26244 26245 protected void composeTerminologyCapabilitiesExpansionComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesExpansionComponent element, int index) { 26246 if (element == null) 26247 return; 26248 Complex t; 26249 if (Utilities.noString(parentType)) 26250 t = parent; 26251 else { 26252 t = parent.predicate("fhir:"+name,index > -1); 26253 } 26254 composeBackboneElement(t, "expansion", name, element, index); 26255 if (element.hasHierarchicalElement()) { 26256 composeBoolean(t, "TerminologyCapabilitiesExpansionComponent", "hierarchical", element.getHierarchicalElement(), -1); 26257 } 26258 if (element.hasPagingElement()) { 26259 composeBoolean(t, "TerminologyCapabilitiesExpansionComponent", "paging", element.getPagingElement(), -1); 26260 } 26261 if (element.hasIncompleteElement()) { 26262 composeBoolean(t, "TerminologyCapabilitiesExpansionComponent", "incomplete", element.getIncompleteElement(), -1); 26263 } 26264 for (int i = 0; i < element.getParameter().size(); i++) { 26265 composeTerminologyCapabilitiesExpansionParameterComponent(t, "TerminologyCapabilitiesExpansionComponent", "parameter", element.getParameter().get(i), i); 26266 } 26267 if (element.hasTextFilterElement()) { 26268 composeMarkdown(t, "TerminologyCapabilitiesExpansionComponent", "textFilter", element.getTextFilterElement(), -1); 26269 } 26270 } 26271 26272 protected void composeTerminologyCapabilitiesExpansionParameterComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesExpansionParameterComponent element, int index) { 26273 if (element == null) 26274 return; 26275 Complex t; 26276 if (Utilities.noString(parentType)) 26277 t = parent; 26278 else { 26279 t = parent.predicate("fhir:"+name,index > -1); 26280 } 26281 composeBackboneElement(t, "parameter", name, element, index); 26282 if (element.hasNameElement()) { 26283 composeCode(t, "TerminologyCapabilitiesExpansionParameterComponent", "name", element.getNameElement(), -1); 26284 } 26285 if (element.hasDocumentationElement()) { 26286 composeString(t, "TerminologyCapabilitiesExpansionParameterComponent", "documentation", element.getDocumentationElement(), -1); 26287 } 26288 } 26289 26290 protected void composeTerminologyCapabilitiesValidateCodeComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesValidateCodeComponent element, int index) { 26291 if (element == null) 26292 return; 26293 Complex t; 26294 if (Utilities.noString(parentType)) 26295 t = parent; 26296 else { 26297 t = parent.predicate("fhir:"+name,index > -1); 26298 } 26299 composeBackboneElement(t, "validateCode", name, element, index); 26300 if (element.hasTranslationsElement()) { 26301 composeBoolean(t, "TerminologyCapabilitiesValidateCodeComponent", "translations", element.getTranslationsElement(), -1); 26302 } 26303 } 26304 26305 protected void composeTerminologyCapabilitiesTranslationComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesTranslationComponent element, int index) { 26306 if (element == null) 26307 return; 26308 Complex t; 26309 if (Utilities.noString(parentType)) 26310 t = parent; 26311 else { 26312 t = parent.predicate("fhir:"+name,index > -1); 26313 } 26314 composeBackboneElement(t, "translation", name, element, index); 26315 if (element.hasNeedsMapElement()) { 26316 composeBoolean(t, "TerminologyCapabilitiesTranslationComponent", "needsMap", element.getNeedsMapElement(), -1); 26317 } 26318 } 26319 26320 protected void composeTerminologyCapabilitiesClosureComponent(Complex parent, String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesClosureComponent element, int index) { 26321 if (element == null) 26322 return; 26323 Complex t; 26324 if (Utilities.noString(parentType)) 26325 t = parent; 26326 else { 26327 t = parent.predicate("fhir:"+name,index > -1); 26328 } 26329 composeBackboneElement(t, "closure", name, element, index); 26330 if (element.hasTranslationElement()) { 26331 composeBoolean(t, "TerminologyCapabilitiesClosureComponent", "translation", element.getTranslationElement(), -1); 26332 } 26333 } 26334 26335 protected void composeTestPlan(Complex parent, String parentType, String name, TestPlan element, int index) { 26336 if (element == null) 26337 return; 26338 Complex t; 26339 if (Utilities.noString(parentType)) 26340 t = parent; 26341 else { 26342 t = parent.predicate("fhir:"+name,index > -1); 26343 } 26344 composeCanonicalResource(t, "TestPlan", name, element, index); 26345 if (element.hasUrlElement()) { 26346 composeUri(t, "TestPlan", "url", element.getUrlElement(), -1); 26347 } 26348 for (int i = 0; i < element.getIdentifier().size(); i++) { 26349 composeIdentifier(t, "TestPlan", "identifier", element.getIdentifier().get(i), i); 26350 } 26351 if (element.hasVersionElement()) { 26352 composeString(t, "TestPlan", "version", element.getVersionElement(), -1); 26353 } 26354 if (element.hasVersionAlgorithm()) { 26355 composeType(t, "TestPlan", "versionAlgorithm", element.getVersionAlgorithm(), -1); 26356 } 26357 if (element.hasNameElement()) { 26358 composeString(t, "TestPlan", "name", element.getNameElement(), -1); 26359 } 26360 if (element.hasTitleElement()) { 26361 composeString(t, "TestPlan", "title", element.getTitleElement(), -1); 26362 } 26363 if (element.hasStatusElement()) { 26364 composeEnum(t, "TestPlan", "status", element.getStatusElement(), -1); 26365 } 26366 if (element.hasExperimentalElement()) { 26367 composeBoolean(t, "TestPlan", "experimental", element.getExperimentalElement(), -1); 26368 } 26369 if (element.hasDateElement()) { 26370 composeDateTime(t, "TestPlan", "date", element.getDateElement(), -1); 26371 } 26372 if (element.hasPublisherElement()) { 26373 composeString(t, "TestPlan", "publisher", element.getPublisherElement(), -1); 26374 } 26375 for (int i = 0; i < element.getContact().size(); i++) { 26376 composeContactDetail(t, "TestPlan", "contact", element.getContact().get(i), i); 26377 } 26378 if (element.hasDescriptionElement()) { 26379 composeMarkdown(t, "TestPlan", "description", element.getDescriptionElement(), -1); 26380 } 26381 for (int i = 0; i < element.getUseContext().size(); i++) { 26382 composeUsageContext(t, "TestPlan", "useContext", element.getUseContext().get(i), i); 26383 } 26384 for (int i = 0; i < element.getJurisdiction().size(); i++) { 26385 composeCodeableConcept(t, "TestPlan", "jurisdiction", element.getJurisdiction().get(i), i); 26386 } 26387 if (element.hasPurposeElement()) { 26388 composeMarkdown(t, "TestPlan", "purpose", element.getPurposeElement(), -1); 26389 } 26390 if (element.hasCopyrightElement()) { 26391 composeMarkdown(t, "TestPlan", "copyright", element.getCopyrightElement(), -1); 26392 } 26393 if (element.hasCopyrightLabelElement()) { 26394 composeString(t, "TestPlan", "copyrightLabel", element.getCopyrightLabelElement(), -1); 26395 } 26396 for (int i = 0; i < element.getCategory().size(); i++) { 26397 composeCodeableConcept(t, "TestPlan", "category", element.getCategory().get(i), i); 26398 } 26399 for (int i = 0; i < element.getScope().size(); i++) { 26400 composeReference(t, "TestPlan", "scope", element.getScope().get(i), i); 26401 } 26402 if (element.hasTestToolsElement()) { 26403 composeMarkdown(t, "TestPlan", "testTools", element.getTestToolsElement(), -1); 26404 } 26405 for (int i = 0; i < element.getDependency().size(); i++) { 26406 composeTestPlanDependencyComponent(t, "TestPlan", "dependency", element.getDependency().get(i), i); 26407 } 26408 if (element.hasExitCriteriaElement()) { 26409 composeMarkdown(t, "TestPlan", "exitCriteria", element.getExitCriteriaElement(), -1); 26410 } 26411 for (int i = 0; i < element.getTestCase().size(); i++) { 26412 composeTestPlanTestCaseComponent(t, "TestPlan", "testCase", element.getTestCase().get(i), i); 26413 } 26414 } 26415 26416 protected void composeTestPlanDependencyComponent(Complex parent, String parentType, String name, TestPlan.TestPlanDependencyComponent element, int index) { 26417 if (element == null) 26418 return; 26419 Complex t; 26420 if (Utilities.noString(parentType)) 26421 t = parent; 26422 else { 26423 t = parent.predicate("fhir:"+name,index > -1); 26424 } 26425 composeBackboneElement(t, "dependency", name, element, index); 26426 if (element.hasDescriptionElement()) { 26427 composeMarkdown(t, "TestPlanDependencyComponent", "description", element.getDescriptionElement(), -1); 26428 } 26429 if (element.hasPredecessor()) { 26430 composeReference(t, "TestPlanDependencyComponent", "predecessor", element.getPredecessor(), -1); 26431 } 26432 } 26433 26434 protected void composeTestPlanTestCaseComponent(Complex parent, String parentType, String name, TestPlan.TestPlanTestCaseComponent element, int index) { 26435 if (element == null) 26436 return; 26437 Complex t; 26438 if (Utilities.noString(parentType)) 26439 t = parent; 26440 else { 26441 t = parent.predicate("fhir:"+name,index > -1); 26442 } 26443 composeBackboneElement(t, "testCase", name, element, index); 26444 if (element.hasSequenceElement()) { 26445 composeInteger(t, "TestPlanTestCaseComponent", "sequence", element.getSequenceElement(), -1); 26446 } 26447 for (int i = 0; i < element.getScope().size(); i++) { 26448 composeReference(t, "TestPlanTestCaseComponent", "scope", element.getScope().get(i), i); 26449 } 26450 for (int i = 0; i < element.getDependency().size(); i++) { 26451 composeTestPlanTestCaseDependencyComponent(t, "TestPlanTestCaseComponent", "dependency", element.getDependency().get(i), i); 26452 } 26453 for (int i = 0; i < element.getTestRun().size(); i++) { 26454 composeTestPlanTestCaseTestRunComponent(t, "TestPlanTestCaseComponent", "testRun", element.getTestRun().get(i), i); 26455 } 26456 for (int i = 0; i < element.getTestData().size(); i++) { 26457 composeTestPlanTestCaseTestDataComponent(t, "TestPlanTestCaseComponent", "testData", element.getTestData().get(i), i); 26458 } 26459 for (int i = 0; i < element.getAssertion().size(); i++) { 26460 composeTestPlanTestCaseAssertionComponent(t, "TestPlanTestCaseComponent", "assertion", element.getAssertion().get(i), i); 26461 } 26462 } 26463 26464 protected void composeTestPlanTestCaseDependencyComponent(Complex parent, String parentType, String name, TestPlan.TestCaseDependencyComponent element, int index) { 26465 if (element == null) 26466 return; 26467 Complex t; 26468 if (Utilities.noString(parentType)) 26469 t = parent; 26470 else { 26471 t = parent.predicate("fhir:"+name,index > -1); 26472 } 26473 composeBackboneElement(t, "dependency", name, element, index); 26474 if (element.hasDescriptionElement()) { 26475 composeMarkdown(t, "TestCaseDependencyComponent", "description", element.getDescriptionElement(), -1); 26476 } 26477 if (element.hasPredecessor()) { 26478 composeReference(t, "TestCaseDependencyComponent", "predecessor", element.getPredecessor(), -1); 26479 } 26480 } 26481 26482 protected void composeTestPlanTestCaseTestRunComponent(Complex parent, String parentType, String name, TestPlan.TestPlanTestCaseTestRunComponent element, int index) { 26483 if (element == null) 26484 return; 26485 Complex t; 26486 if (Utilities.noString(parentType)) 26487 t = parent; 26488 else { 26489 t = parent.predicate("fhir:"+name,index > -1); 26490 } 26491 composeBackboneElement(t, "testRun", name, element, index); 26492 if (element.hasNarrativeElement()) { 26493 composeMarkdown(t, "TestPlanTestCaseTestRunComponent", "narrative", element.getNarrativeElement(), -1); 26494 } 26495 if (element.hasScript()) { 26496 composeTestPlanTestCaseTestRunScriptComponent(t, "TestPlanTestCaseTestRunComponent", "script", element.getScript(), -1); 26497 } 26498 } 26499 26500 protected void composeTestPlanTestCaseTestRunScriptComponent(Complex parent, String parentType, String name, TestPlan.TestPlanTestCaseTestRunScriptComponent element, int index) { 26501 if (element == null) 26502 return; 26503 Complex t; 26504 if (Utilities.noString(parentType)) 26505 t = parent; 26506 else { 26507 t = parent.predicate("fhir:"+name,index > -1); 26508 } 26509 composeBackboneElement(t, "script", name, element, index); 26510 if (element.hasLanguage()) { 26511 composeCodeableConcept(t, "TestPlanTestCaseTestRunScriptComponent", "language", element.getLanguage(), -1); 26512 } 26513 if (element.hasSource()) { 26514 composeType(t, "TestPlanTestCaseTestRunScriptComponent", "source", element.getSource(), -1); 26515 } 26516 } 26517 26518 protected void composeTestPlanTestCaseTestDataComponent(Complex parent, String parentType, String name, TestPlan.TestPlanTestCaseTestDataComponent element, int index) { 26519 if (element == null) 26520 return; 26521 Complex t; 26522 if (Utilities.noString(parentType)) 26523 t = parent; 26524 else { 26525 t = parent.predicate("fhir:"+name,index > -1); 26526 } 26527 composeBackboneElement(t, "testData", name, element, index); 26528 if (element.hasType()) { 26529 composeCoding(t, "TestPlanTestCaseTestDataComponent", "type", element.getType(), -1); 26530 } 26531 if (element.hasContent()) { 26532 composeReference(t, "TestPlanTestCaseTestDataComponent", "content", element.getContent(), -1); 26533 } 26534 if (element.hasSource()) { 26535 composeType(t, "TestPlanTestCaseTestDataComponent", "source", element.getSource(), -1); 26536 } 26537 } 26538 26539 protected void composeTestPlanTestCaseAssertionComponent(Complex parent, String parentType, String name, TestPlan.TestPlanTestCaseAssertionComponent element, int index) { 26540 if (element == null) 26541 return; 26542 Complex t; 26543 if (Utilities.noString(parentType)) 26544 t = parent; 26545 else { 26546 t = parent.predicate("fhir:"+name,index > -1); 26547 } 26548 composeBackboneElement(t, "assertion", name, element, index); 26549 for (int i = 0; i < element.getType().size(); i++) { 26550 composeCodeableConcept(t, "TestPlanTestCaseAssertionComponent", "type", element.getType().get(i), i); 26551 } 26552 for (int i = 0; i < element.getObject().size(); i++) { 26553 composeCodeableReference(t, "TestPlanTestCaseAssertionComponent", "object", element.getObject().get(i), i); 26554 } 26555 for (int i = 0; i < element.getResult().size(); i++) { 26556 composeCodeableReference(t, "TestPlanTestCaseAssertionComponent", "result", element.getResult().get(i), i); 26557 } 26558 } 26559 26560 protected void composeTestReport(Complex parent, String parentType, String name, TestReport element, int index) { 26561 if (element == null) 26562 return; 26563 Complex t; 26564 if (Utilities.noString(parentType)) 26565 t = parent; 26566 else { 26567 t = parent.predicate("fhir:"+name,index > -1); 26568 } 26569 composeDomainResource(t, "TestReport", name, element, index); 26570 if (element.hasIdentifier()) { 26571 composeIdentifier(t, "TestReport", "identifier", element.getIdentifier(), -1); 26572 } 26573 if (element.hasNameElement()) { 26574 composeString(t, "TestReport", "name", element.getNameElement(), -1); 26575 } 26576 if (element.hasStatusElement()) { 26577 composeEnum(t, "TestReport", "status", element.getStatusElement(), -1); 26578 } 26579 if (element.hasTestScriptElement()) { 26580 composeCanonical(t, "TestReport", "testScript", element.getTestScriptElement(), -1); 26581 } 26582 if (element.hasResultElement()) { 26583 composeEnum(t, "TestReport", "result", element.getResultElement(), -1); 26584 } 26585 if (element.hasScoreElement()) { 26586 composeDecimal(t, "TestReport", "score", element.getScoreElement(), -1); 26587 } 26588 if (element.hasTesterElement()) { 26589 composeString(t, "TestReport", "tester", element.getTesterElement(), -1); 26590 } 26591 if (element.hasIssuedElement()) { 26592 composeDateTime(t, "TestReport", "issued", element.getIssuedElement(), -1); 26593 } 26594 for (int i = 0; i < element.getParticipant().size(); i++) { 26595 composeTestReportParticipantComponent(t, "TestReport", "participant", element.getParticipant().get(i), i); 26596 } 26597 if (element.hasSetup()) { 26598 composeTestReportSetupComponent(t, "TestReport", "setup", element.getSetup(), -1); 26599 } 26600 for (int i = 0; i < element.getTest().size(); i++) { 26601 composeTestReportTestComponent(t, "TestReport", "test", element.getTest().get(i), i); 26602 } 26603 if (element.hasTeardown()) { 26604 composeTestReportTeardownComponent(t, "TestReport", "teardown", element.getTeardown(), -1); 26605 } 26606 } 26607 26608 protected void composeTestReportParticipantComponent(Complex parent, String parentType, String name, TestReport.TestReportParticipantComponent element, int index) { 26609 if (element == null) 26610 return; 26611 Complex t; 26612 if (Utilities.noString(parentType)) 26613 t = parent; 26614 else { 26615 t = parent.predicate("fhir:"+name,index > -1); 26616 } 26617 composeBackboneElement(t, "participant", name, element, index); 26618 if (element.hasTypeElement()) { 26619 composeEnum(t, "TestReportParticipantComponent", "type", element.getTypeElement(), -1); 26620 } 26621 if (element.hasUriElement()) { 26622 composeUri(t, "TestReportParticipantComponent", "uri", element.getUriElement(), -1); 26623 } 26624 if (element.hasDisplayElement()) { 26625 composeString(t, "TestReportParticipantComponent", "display", element.getDisplayElement(), -1); 26626 } 26627 } 26628 26629 protected void composeTestReportSetupComponent(Complex parent, String parentType, String name, TestReport.TestReportSetupComponent element, int index) { 26630 if (element == null) 26631 return; 26632 Complex t; 26633 if (Utilities.noString(parentType)) 26634 t = parent; 26635 else { 26636 t = parent.predicate("fhir:"+name,index > -1); 26637 } 26638 composeBackboneElement(t, "setup", name, element, index); 26639 for (int i = 0; i < element.getAction().size(); i++) { 26640 composeTestReportSetupActionComponent(t, "TestReportSetupComponent", "action", element.getAction().get(i), i); 26641 } 26642 } 26643 26644 protected void composeTestReportSetupActionComponent(Complex parent, String parentType, String name, TestReport.SetupActionComponent element, int index) { 26645 if (element == null) 26646 return; 26647 Complex t; 26648 if (Utilities.noString(parentType)) 26649 t = parent; 26650 else { 26651 t = parent.predicate("fhir:"+name,index > -1); 26652 } 26653 composeBackboneElement(t, "action", name, element, index); 26654 if (element.hasOperation()) { 26655 composeTestReportSetupActionOperationComponent(t, "SetupActionComponent", "operation", element.getOperation(), -1); 26656 } 26657 if (element.hasAssert()) { 26658 composeTestReportSetupActionAssertComponent(t, "SetupActionComponent", "assert", element.getAssert(), -1); 26659 } 26660 } 26661 26662 protected void composeTestReportSetupActionOperationComponent(Complex parent, String parentType, String name, TestReport.SetupActionOperationComponent element, int index) { 26663 if (element == null) 26664 return; 26665 Complex t; 26666 if (Utilities.noString(parentType)) 26667 t = parent; 26668 else { 26669 t = parent.predicate("fhir:"+name,index > -1); 26670 } 26671 composeBackboneElement(t, "operation", name, element, index); 26672 if (element.hasResultElement()) { 26673 composeEnum(t, "SetupActionOperationComponent", "result", element.getResultElement(), -1); 26674 } 26675 if (element.hasMessageElement()) { 26676 composeMarkdown(t, "SetupActionOperationComponent", "message", element.getMessageElement(), -1); 26677 } 26678 if (element.hasDetailElement()) { 26679 composeUri(t, "SetupActionOperationComponent", "detail", element.getDetailElement(), -1); 26680 } 26681 } 26682 26683 protected void composeTestReportSetupActionAssertComponent(Complex parent, String parentType, String name, TestReport.SetupActionAssertComponent element, int index) { 26684 if (element == null) 26685 return; 26686 Complex t; 26687 if (Utilities.noString(parentType)) 26688 t = parent; 26689 else { 26690 t = parent.predicate("fhir:"+name,index > -1); 26691 } 26692 composeBackboneElement(t, "assert", name, element, index); 26693 if (element.hasResultElement()) { 26694 composeEnum(t, "SetupActionAssertComponent", "result", element.getResultElement(), -1); 26695 } 26696 if (element.hasMessageElement()) { 26697 composeMarkdown(t, "SetupActionAssertComponent", "message", element.getMessageElement(), -1); 26698 } 26699 if (element.hasDetailElement()) { 26700 composeString(t, "SetupActionAssertComponent", "detail", element.getDetailElement(), -1); 26701 } 26702 for (int i = 0; i < element.getRequirement().size(); i++) { 26703 composeTestReportSetupActionAssertRequirementComponent(t, "SetupActionAssertComponent", "requirement", element.getRequirement().get(i), i); 26704 } 26705 } 26706 26707 protected void composeTestReportSetupActionAssertRequirementComponent(Complex parent, String parentType, String name, TestReport.SetupActionAssertRequirementComponent element, int index) { 26708 if (element == null) 26709 return; 26710 Complex t; 26711 if (Utilities.noString(parentType)) 26712 t = parent; 26713 else { 26714 t = parent.predicate("fhir:"+name,index > -1); 26715 } 26716 composeBackboneElement(t, "requirement", name, element, index); 26717 if (element.hasLink()) { 26718 composeType(t, "SetupActionAssertRequirementComponent", "link", element.getLink(), -1); 26719 } 26720 } 26721 26722 protected void composeTestReportTestComponent(Complex parent, String parentType, String name, TestReport.TestReportTestComponent element, int index) { 26723 if (element == null) 26724 return; 26725 Complex t; 26726 if (Utilities.noString(parentType)) 26727 t = parent; 26728 else { 26729 t = parent.predicate("fhir:"+name,index > -1); 26730 } 26731 composeBackboneElement(t, "test", name, element, index); 26732 if (element.hasNameElement()) { 26733 composeString(t, "TestReportTestComponent", "name", element.getNameElement(), -1); 26734 } 26735 if (element.hasDescriptionElement()) { 26736 composeString(t, "TestReportTestComponent", "description", element.getDescriptionElement(), -1); 26737 } 26738 for (int i = 0; i < element.getAction().size(); i++) { 26739 composeTestReportTestActionComponent(t, "TestReportTestComponent", "action", element.getAction().get(i), i); 26740 } 26741 } 26742 26743 protected void composeTestReportTestActionComponent(Complex parent, String parentType, String name, TestReport.TestActionComponent element, int index) { 26744 if (element == null) 26745 return; 26746 Complex t; 26747 if (Utilities.noString(parentType)) 26748 t = parent; 26749 else { 26750 t = parent.predicate("fhir:"+name,index > -1); 26751 } 26752 composeBackboneElement(t, "action", name, element, index); 26753 if (element.hasOperation()) { 26754 composeTestReportSetupActionOperationComponent(t, "TestActionComponent", "operation", element.getOperation(), -1); 26755 } 26756 if (element.hasAssert()) { 26757 composeTestReportSetupActionAssertComponent(t, "TestActionComponent", "assert", element.getAssert(), -1); 26758 } 26759 } 26760 26761 protected void composeTestReportTeardownComponent(Complex parent, String parentType, String name, TestReport.TestReportTeardownComponent element, int index) { 26762 if (element == null) 26763 return; 26764 Complex t; 26765 if (Utilities.noString(parentType)) 26766 t = parent; 26767 else { 26768 t = parent.predicate("fhir:"+name,index > -1); 26769 } 26770 composeBackboneElement(t, "teardown", name, element, index); 26771 for (int i = 0; i < element.getAction().size(); i++) { 26772 composeTestReportTeardownActionComponent(t, "TestReportTeardownComponent", "action", element.getAction().get(i), i); 26773 } 26774 } 26775 26776 protected void composeTestReportTeardownActionComponent(Complex parent, String parentType, String name, TestReport.TeardownActionComponent element, int index) { 26777 if (element == null) 26778 return; 26779 Complex t; 26780 if (Utilities.noString(parentType)) 26781 t = parent; 26782 else { 26783 t = parent.predicate("fhir:"+name,index > -1); 26784 } 26785 composeBackboneElement(t, "action", name, element, index); 26786 if (element.hasOperation()) { 26787 composeTestReportSetupActionOperationComponent(t, "TeardownActionComponent", "operation", element.getOperation(), -1); 26788 } 26789 } 26790 26791 protected void composeTestScript(Complex parent, String parentType, String name, TestScript element, int index) { 26792 if (element == null) 26793 return; 26794 Complex t; 26795 if (Utilities.noString(parentType)) 26796 t = parent; 26797 else { 26798 t = parent.predicate("fhir:"+name,index > -1); 26799 } 26800 composeCanonicalResource(t, "TestScript", name, element, index); 26801 if (element.hasUrlElement()) { 26802 composeUri(t, "TestScript", "url", element.getUrlElement(), -1); 26803 } 26804 for (int i = 0; i < element.getIdentifier().size(); i++) { 26805 composeIdentifier(t, "TestScript", "identifier", element.getIdentifier().get(i), i); 26806 } 26807 if (element.hasVersionElement()) { 26808 composeString(t, "TestScript", "version", element.getVersionElement(), -1); 26809 } 26810 if (element.hasVersionAlgorithm()) { 26811 composeType(t, "TestScript", "versionAlgorithm", element.getVersionAlgorithm(), -1); 26812 } 26813 if (element.hasNameElement()) { 26814 composeString(t, "TestScript", "name", element.getNameElement(), -1); 26815 } 26816 if (element.hasTitleElement()) { 26817 composeString(t, "TestScript", "title", element.getTitleElement(), -1); 26818 } 26819 if (element.hasStatusElement()) { 26820 composeEnum(t, "TestScript", "status", element.getStatusElement(), -1); 26821 } 26822 if (element.hasExperimentalElement()) { 26823 composeBoolean(t, "TestScript", "experimental", element.getExperimentalElement(), -1); 26824 } 26825 if (element.hasDateElement()) { 26826 composeDateTime(t, "TestScript", "date", element.getDateElement(), -1); 26827 } 26828 if (element.hasPublisherElement()) { 26829 composeString(t, "TestScript", "publisher", element.getPublisherElement(), -1); 26830 } 26831 for (int i = 0; i < element.getContact().size(); i++) { 26832 composeContactDetail(t, "TestScript", "contact", element.getContact().get(i), i); 26833 } 26834 if (element.hasDescriptionElement()) { 26835 composeMarkdown(t, "TestScript", "description", element.getDescriptionElement(), -1); 26836 } 26837 for (int i = 0; i < element.getUseContext().size(); i++) { 26838 composeUsageContext(t, "TestScript", "useContext", element.getUseContext().get(i), i); 26839 } 26840 for (int i = 0; i < element.getJurisdiction().size(); i++) { 26841 composeCodeableConcept(t, "TestScript", "jurisdiction", element.getJurisdiction().get(i), i); 26842 } 26843 if (element.hasPurposeElement()) { 26844 composeMarkdown(t, "TestScript", "purpose", element.getPurposeElement(), -1); 26845 } 26846 if (element.hasCopyrightElement()) { 26847 composeMarkdown(t, "TestScript", "copyright", element.getCopyrightElement(), -1); 26848 } 26849 if (element.hasCopyrightLabelElement()) { 26850 composeString(t, "TestScript", "copyrightLabel", element.getCopyrightLabelElement(), -1); 26851 } 26852 for (int i = 0; i < element.getOrigin().size(); i++) { 26853 composeTestScriptOriginComponent(t, "TestScript", "origin", element.getOrigin().get(i), i); 26854 } 26855 for (int i = 0; i < element.getDestination().size(); i++) { 26856 composeTestScriptDestinationComponent(t, "TestScript", "destination", element.getDestination().get(i), i); 26857 } 26858 if (element.hasMetadata()) { 26859 composeTestScriptMetadataComponent(t, "TestScript", "metadata", element.getMetadata(), -1); 26860 } 26861 for (int i = 0; i < element.getScope().size(); i++) { 26862 composeTestScriptScopeComponent(t, "TestScript", "scope", element.getScope().get(i), i); 26863 } 26864 for (int i = 0; i < element.getFixture().size(); i++) { 26865 composeTestScriptFixtureComponent(t, "TestScript", "fixture", element.getFixture().get(i), i); 26866 } 26867 for (int i = 0; i < element.getProfile().size(); i++) { 26868 composeCanonical(t, "TestScript", "profile", element.getProfile().get(i), i); 26869 } 26870 for (int i = 0; i < element.getVariable().size(); i++) { 26871 composeTestScriptVariableComponent(t, "TestScript", "variable", element.getVariable().get(i), i); 26872 } 26873 if (element.hasSetup()) { 26874 composeTestScriptSetupComponent(t, "TestScript", "setup", element.getSetup(), -1); 26875 } 26876 for (int i = 0; i < element.getTest().size(); i++) { 26877 composeTestScriptTestComponent(t, "TestScript", "test", element.getTest().get(i), i); 26878 } 26879 if (element.hasTeardown()) { 26880 composeTestScriptTeardownComponent(t, "TestScript", "teardown", element.getTeardown(), -1); 26881 } 26882 } 26883 26884 protected void composeTestScriptOriginComponent(Complex parent, String parentType, String name, TestScript.TestScriptOriginComponent element, int index) { 26885 if (element == null) 26886 return; 26887 Complex t; 26888 if (Utilities.noString(parentType)) 26889 t = parent; 26890 else { 26891 t = parent.predicate("fhir:"+name,index > -1); 26892 } 26893 composeBackboneElement(t, "origin", name, element, index); 26894 if (element.hasIndexElement()) { 26895 composeInteger(t, "TestScriptOriginComponent", "index", element.getIndexElement(), -1); 26896 } 26897 if (element.hasProfile()) { 26898 composeCoding(t, "TestScriptOriginComponent", "profile", element.getProfile(), -1); 26899 } 26900 if (element.hasUrlElement()) { 26901 composeUrl(t, "TestScriptOriginComponent", "url", element.getUrlElement(), -1); 26902 } 26903 } 26904 26905 protected void composeTestScriptDestinationComponent(Complex parent, String parentType, String name, TestScript.TestScriptDestinationComponent element, int index) { 26906 if (element == null) 26907 return; 26908 Complex t; 26909 if (Utilities.noString(parentType)) 26910 t = parent; 26911 else { 26912 t = parent.predicate("fhir:"+name,index > -1); 26913 } 26914 composeBackboneElement(t, "destination", name, element, index); 26915 if (element.hasIndexElement()) { 26916 composeInteger(t, "TestScriptDestinationComponent", "index", element.getIndexElement(), -1); 26917 } 26918 if (element.hasProfile()) { 26919 composeCoding(t, "TestScriptDestinationComponent", "profile", element.getProfile(), -1); 26920 } 26921 if (element.hasUrlElement()) { 26922 composeUrl(t, "TestScriptDestinationComponent", "url", element.getUrlElement(), -1); 26923 } 26924 } 26925 26926 protected void composeTestScriptMetadataComponent(Complex parent, String parentType, String name, TestScript.TestScriptMetadataComponent element, int index) { 26927 if (element == null) 26928 return; 26929 Complex t; 26930 if (Utilities.noString(parentType)) 26931 t = parent; 26932 else { 26933 t = parent.predicate("fhir:"+name,index > -1); 26934 } 26935 composeBackboneElement(t, "metadata", name, element, index); 26936 for (int i = 0; i < element.getLink().size(); i++) { 26937 composeTestScriptMetadataLinkComponent(t, "TestScriptMetadataComponent", "link", element.getLink().get(i), i); 26938 } 26939 for (int i = 0; i < element.getCapability().size(); i++) { 26940 composeTestScriptMetadataCapabilityComponent(t, "TestScriptMetadataComponent", "capability", element.getCapability().get(i), i); 26941 } 26942 } 26943 26944 protected void composeTestScriptMetadataLinkComponent(Complex parent, String parentType, String name, TestScript.TestScriptMetadataLinkComponent element, int index) { 26945 if (element == null) 26946 return; 26947 Complex t; 26948 if (Utilities.noString(parentType)) 26949 t = parent; 26950 else { 26951 t = parent.predicate("fhir:"+name,index > -1); 26952 } 26953 composeBackboneElement(t, "link", name, element, index); 26954 if (element.hasUrlElement()) { 26955 composeUri(t, "TestScriptMetadataLinkComponent", "url", element.getUrlElement(), -1); 26956 } 26957 if (element.hasDescriptionElement()) { 26958 composeString(t, "TestScriptMetadataLinkComponent", "description", element.getDescriptionElement(), -1); 26959 } 26960 } 26961 26962 protected void composeTestScriptMetadataCapabilityComponent(Complex parent, String parentType, String name, TestScript.TestScriptMetadataCapabilityComponent element, int index) { 26963 if (element == null) 26964 return; 26965 Complex t; 26966 if (Utilities.noString(parentType)) 26967 t = parent; 26968 else { 26969 t = parent.predicate("fhir:"+name,index > -1); 26970 } 26971 composeBackboneElement(t, "capability", name, element, index); 26972 if (element.hasRequiredElement()) { 26973 composeBoolean(t, "TestScriptMetadataCapabilityComponent", "required", element.getRequiredElement(), -1); 26974 } 26975 if (element.hasValidatedElement()) { 26976 composeBoolean(t, "TestScriptMetadataCapabilityComponent", "validated", element.getValidatedElement(), -1); 26977 } 26978 if (element.hasDescriptionElement()) { 26979 composeString(t, "TestScriptMetadataCapabilityComponent", "description", element.getDescriptionElement(), -1); 26980 } 26981 for (int i = 0; i < element.getOrigin().size(); i++) { 26982 composeInteger(t, "TestScriptMetadataCapabilityComponent", "origin", element.getOrigin().get(i), i); 26983 } 26984 if (element.hasDestinationElement()) { 26985 composeInteger(t, "TestScriptMetadataCapabilityComponent", "destination", element.getDestinationElement(), -1); 26986 } 26987 for (int i = 0; i < element.getLink().size(); i++) { 26988 composeUri(t, "TestScriptMetadataCapabilityComponent", "link", element.getLink().get(i), i); 26989 } 26990 if (element.hasCapabilitiesElement()) { 26991 composeCanonical(t, "TestScriptMetadataCapabilityComponent", "capabilities", element.getCapabilitiesElement(), -1); 26992 } 26993 } 26994 26995 protected void composeTestScriptScopeComponent(Complex parent, String parentType, String name, TestScript.TestScriptScopeComponent element, int index) { 26996 if (element == null) 26997 return; 26998 Complex t; 26999 if (Utilities.noString(parentType)) 27000 t = parent; 27001 else { 27002 t = parent.predicate("fhir:"+name,index > -1); 27003 } 27004 composeBackboneElement(t, "scope", name, element, index); 27005 if (element.hasArtifactElement()) { 27006 composeCanonical(t, "TestScriptScopeComponent", "artifact", element.getArtifactElement(), -1); 27007 } 27008 if (element.hasConformance()) { 27009 composeCodeableConcept(t, "TestScriptScopeComponent", "conformance", element.getConformance(), -1); 27010 } 27011 if (element.hasPhase()) { 27012 composeCodeableConcept(t, "TestScriptScopeComponent", "phase", element.getPhase(), -1); 27013 } 27014 } 27015 27016 protected void composeTestScriptFixtureComponent(Complex parent, String parentType, String name, TestScript.TestScriptFixtureComponent element, int index) { 27017 if (element == null) 27018 return; 27019 Complex t; 27020 if (Utilities.noString(parentType)) 27021 t = parent; 27022 else { 27023 t = parent.predicate("fhir:"+name,index > -1); 27024 } 27025 composeBackboneElement(t, "fixture", name, element, index); 27026 if (element.hasAutocreateElement()) { 27027 composeBoolean(t, "TestScriptFixtureComponent", "autocreate", element.getAutocreateElement(), -1); 27028 } 27029 if (element.hasAutodeleteElement()) { 27030 composeBoolean(t, "TestScriptFixtureComponent", "autodelete", element.getAutodeleteElement(), -1); 27031 } 27032 if (element.hasResource()) { 27033 composeReference(t, "TestScriptFixtureComponent", "resource", element.getResource(), -1); 27034 } 27035 } 27036 27037 protected void composeTestScriptVariableComponent(Complex parent, String parentType, String name, TestScript.TestScriptVariableComponent element, int index) { 27038 if (element == null) 27039 return; 27040 Complex t; 27041 if (Utilities.noString(parentType)) 27042 t = parent; 27043 else { 27044 t = parent.predicate("fhir:"+name,index > -1); 27045 } 27046 composeBackboneElement(t, "variable", name, element, index); 27047 if (element.hasNameElement()) { 27048 composeString(t, "TestScriptVariableComponent", "name", element.getNameElement(), -1); 27049 } 27050 if (element.hasDefaultValueElement()) { 27051 composeString(t, "TestScriptVariableComponent", "defaultValue", element.getDefaultValueElement(), -1); 27052 } 27053 if (element.hasDescriptionElement()) { 27054 composeString(t, "TestScriptVariableComponent", "description", element.getDescriptionElement(), -1); 27055 } 27056 if (element.hasExpressionElement()) { 27057 composeString(t, "TestScriptVariableComponent", "expression", element.getExpressionElement(), -1); 27058 } 27059 if (element.hasHeaderFieldElement()) { 27060 composeString(t, "TestScriptVariableComponent", "headerField", element.getHeaderFieldElement(), -1); 27061 } 27062 if (element.hasHintElement()) { 27063 composeString(t, "TestScriptVariableComponent", "hint", element.getHintElement(), -1); 27064 } 27065 if (element.hasPathElement()) { 27066 composeString(t, "TestScriptVariableComponent", "path", element.getPathElement(), -1); 27067 } 27068 if (element.hasSourceIdElement()) { 27069 composeId(t, "TestScriptVariableComponent", "sourceId", element.getSourceIdElement(), -1); 27070 } 27071 } 27072 27073 protected void composeTestScriptSetupComponent(Complex parent, String parentType, String name, TestScript.TestScriptSetupComponent element, int index) { 27074 if (element == null) 27075 return; 27076 Complex t; 27077 if (Utilities.noString(parentType)) 27078 t = parent; 27079 else { 27080 t = parent.predicate("fhir:"+name,index > -1); 27081 } 27082 composeBackboneElement(t, "setup", name, element, index); 27083 for (int i = 0; i < element.getAction().size(); i++) { 27084 composeTestScriptSetupActionComponent(t, "TestScriptSetupComponent", "action", element.getAction().get(i), i); 27085 } 27086 } 27087 27088 protected void composeTestScriptSetupActionComponent(Complex parent, String parentType, String name, TestScript.SetupActionComponent element, int index) { 27089 if (element == null) 27090 return; 27091 Complex t; 27092 if (Utilities.noString(parentType)) 27093 t = parent; 27094 else { 27095 t = parent.predicate("fhir:"+name,index > -1); 27096 } 27097 composeBackboneElement(t, "action", name, element, index); 27098 if (element.hasOperation()) { 27099 composeTestScriptSetupActionOperationComponent(t, "SetupActionComponent", "operation", element.getOperation(), -1); 27100 } 27101 if (element.hasAssert()) { 27102 composeTestScriptSetupActionAssertComponent(t, "SetupActionComponent", "assert", element.getAssert(), -1); 27103 } 27104 } 27105 27106 protected void composeTestScriptSetupActionOperationComponent(Complex parent, String parentType, String name, TestScript.SetupActionOperationComponent element, int index) { 27107 if (element == null) 27108 return; 27109 Complex t; 27110 if (Utilities.noString(parentType)) 27111 t = parent; 27112 else { 27113 t = parent.predicate("fhir:"+name,index > -1); 27114 } 27115 composeBackboneElement(t, "operation", name, element, index); 27116 if (element.hasType()) { 27117 composeCoding(t, "SetupActionOperationComponent", "type", element.getType(), -1); 27118 } 27119 if (element.hasResourceElement()) { 27120 composeUri(t, "SetupActionOperationComponent", "resource", element.getResourceElement(), -1); 27121 } 27122 if (element.hasLabelElement()) { 27123 composeString(t, "SetupActionOperationComponent", "label", element.getLabelElement(), -1); 27124 } 27125 if (element.hasDescriptionElement()) { 27126 composeString(t, "SetupActionOperationComponent", "description", element.getDescriptionElement(), -1); 27127 } 27128 if (element.hasAcceptElement()) { 27129 composeCode(t, "SetupActionOperationComponent", "accept", element.getAcceptElement(), -1); 27130 } 27131 if (element.hasContentTypeElement()) { 27132 composeCode(t, "SetupActionOperationComponent", "contentType", element.getContentTypeElement(), -1); 27133 } 27134 if (element.hasDestinationElement()) { 27135 composeInteger(t, "SetupActionOperationComponent", "destination", element.getDestinationElement(), -1); 27136 } 27137 if (element.hasEncodeRequestUrlElement()) { 27138 composeBoolean(t, "SetupActionOperationComponent", "encodeRequestUrl", element.getEncodeRequestUrlElement(), -1); 27139 } 27140 if (element.hasMethodElement()) { 27141 composeEnum(t, "SetupActionOperationComponent", "method", element.getMethodElement(), -1); 27142 } 27143 if (element.hasOriginElement()) { 27144 composeInteger(t, "SetupActionOperationComponent", "origin", element.getOriginElement(), -1); 27145 } 27146 if (element.hasParamsElement()) { 27147 composeString(t, "SetupActionOperationComponent", "params", element.getParamsElement(), -1); 27148 } 27149 for (int i = 0; i < element.getRequestHeader().size(); i++) { 27150 composeTestScriptSetupActionOperationRequestHeaderComponent(t, "SetupActionOperationComponent", "requestHeader", element.getRequestHeader().get(i), i); 27151 } 27152 if (element.hasRequestIdElement()) { 27153 composeId(t, "SetupActionOperationComponent", "requestId", element.getRequestIdElement(), -1); 27154 } 27155 if (element.hasResponseIdElement()) { 27156 composeId(t, "SetupActionOperationComponent", "responseId", element.getResponseIdElement(), -1); 27157 } 27158 if (element.hasSourceIdElement()) { 27159 composeId(t, "SetupActionOperationComponent", "sourceId", element.getSourceIdElement(), -1); 27160 } 27161 if (element.hasTargetIdElement()) { 27162 composeId(t, "SetupActionOperationComponent", "targetId", element.getTargetIdElement(), -1); 27163 } 27164 if (element.hasUrlElement()) { 27165 composeString(t, "SetupActionOperationComponent", "url", element.getUrlElement(), -1); 27166 } 27167 } 27168 27169 protected void composeTestScriptSetupActionOperationRequestHeaderComponent(Complex parent, String parentType, String name, TestScript.SetupActionOperationRequestHeaderComponent element, int index) { 27170 if (element == null) 27171 return; 27172 Complex t; 27173 if (Utilities.noString(parentType)) 27174 t = parent; 27175 else { 27176 t = parent.predicate("fhir:"+name,index > -1); 27177 } 27178 composeBackboneElement(t, "requestHeader", name, element, index); 27179 if (element.hasFieldElement()) { 27180 composeString(t, "SetupActionOperationRequestHeaderComponent", "field", element.getFieldElement(), -1); 27181 } 27182 if (element.hasValueElement()) { 27183 composeString(t, "SetupActionOperationRequestHeaderComponent", "value", element.getValueElement(), -1); 27184 } 27185 } 27186 27187 protected void composeTestScriptSetupActionAssertComponent(Complex parent, String parentType, String name, TestScript.SetupActionAssertComponent element, int index) { 27188 if (element == null) 27189 return; 27190 Complex t; 27191 if (Utilities.noString(parentType)) 27192 t = parent; 27193 else { 27194 t = parent.predicate("fhir:"+name,index > -1); 27195 } 27196 composeBackboneElement(t, "assert", name, element, index); 27197 if (element.hasLabelElement()) { 27198 composeString(t, "SetupActionAssertComponent", "label", element.getLabelElement(), -1); 27199 } 27200 if (element.hasDescriptionElement()) { 27201 composeString(t, "SetupActionAssertComponent", "description", element.getDescriptionElement(), -1); 27202 } 27203 if (element.hasDirectionElement()) { 27204 composeEnum(t, "SetupActionAssertComponent", "direction", element.getDirectionElement(), -1); 27205 } 27206 if (element.hasCompareToSourceIdElement()) { 27207 composeString(t, "SetupActionAssertComponent", "compareToSourceId", element.getCompareToSourceIdElement(), -1); 27208 } 27209 if (element.hasCompareToSourceExpressionElement()) { 27210 composeString(t, "SetupActionAssertComponent", "compareToSourceExpression", element.getCompareToSourceExpressionElement(), -1); 27211 } 27212 if (element.hasCompareToSourcePathElement()) { 27213 composeString(t, "SetupActionAssertComponent", "compareToSourcePath", element.getCompareToSourcePathElement(), -1); 27214 } 27215 if (element.hasContentTypeElement()) { 27216 composeCode(t, "SetupActionAssertComponent", "contentType", element.getContentTypeElement(), -1); 27217 } 27218 if (element.hasDefaultManualCompletionElement()) { 27219 composeEnum(t, "SetupActionAssertComponent", "defaultManualCompletion", element.getDefaultManualCompletionElement(), -1); 27220 } 27221 if (element.hasExpressionElement()) { 27222 composeString(t, "SetupActionAssertComponent", "expression", element.getExpressionElement(), -1); 27223 } 27224 if (element.hasHeaderFieldElement()) { 27225 composeString(t, "SetupActionAssertComponent", "headerField", element.getHeaderFieldElement(), -1); 27226 } 27227 if (element.hasMinimumIdElement()) { 27228 composeString(t, "SetupActionAssertComponent", "minimumId", element.getMinimumIdElement(), -1); 27229 } 27230 if (element.hasNavigationLinksElement()) { 27231 composeBoolean(t, "SetupActionAssertComponent", "navigationLinks", element.getNavigationLinksElement(), -1); 27232 } 27233 if (element.hasOperatorElement()) { 27234 composeEnum(t, "SetupActionAssertComponent", "operator", element.getOperatorElement(), -1); 27235 } 27236 if (element.hasPathElement()) { 27237 composeString(t, "SetupActionAssertComponent", "path", element.getPathElement(), -1); 27238 } 27239 if (element.hasRequestMethodElement()) { 27240 composeEnum(t, "SetupActionAssertComponent", "requestMethod", element.getRequestMethodElement(), -1); 27241 } 27242 if (element.hasRequestURLElement()) { 27243 composeString(t, "SetupActionAssertComponent", "requestURL", element.getRequestURLElement(), -1); 27244 } 27245 if (element.hasResourceElement()) { 27246 composeUri(t, "SetupActionAssertComponent", "resource", element.getResourceElement(), -1); 27247 } 27248 if (element.hasResponseElement()) { 27249 composeEnum(t, "SetupActionAssertComponent", "response", element.getResponseElement(), -1); 27250 } 27251 if (element.hasResponseCodeElement()) { 27252 composeString(t, "SetupActionAssertComponent", "responseCode", element.getResponseCodeElement(), -1); 27253 } 27254 if (element.hasSourceIdElement()) { 27255 composeId(t, "SetupActionAssertComponent", "sourceId", element.getSourceIdElement(), -1); 27256 } 27257 if (element.hasStopTestOnFailElement()) { 27258 composeBoolean(t, "SetupActionAssertComponent", "stopTestOnFail", element.getStopTestOnFailElement(), -1); 27259 } 27260 if (element.hasValidateProfileIdElement()) { 27261 composeId(t, "SetupActionAssertComponent", "validateProfileId", element.getValidateProfileIdElement(), -1); 27262 } 27263 if (element.hasValueElement()) { 27264 composeString(t, "SetupActionAssertComponent", "value", element.getValueElement(), -1); 27265 } 27266 if (element.hasWarningOnlyElement()) { 27267 composeBoolean(t, "SetupActionAssertComponent", "warningOnly", element.getWarningOnlyElement(), -1); 27268 } 27269 for (int i = 0; i < element.getRequirement().size(); i++) { 27270 composeTestScriptSetupActionAssertRequirementComponent(t, "SetupActionAssertComponent", "requirement", element.getRequirement().get(i), i); 27271 } 27272 } 27273 27274 protected void composeTestScriptSetupActionAssertRequirementComponent(Complex parent, String parentType, String name, TestScript.SetupActionAssertRequirementComponent element, int index) { 27275 if (element == null) 27276 return; 27277 Complex t; 27278 if (Utilities.noString(parentType)) 27279 t = parent; 27280 else { 27281 t = parent.predicate("fhir:"+name,index > -1); 27282 } 27283 composeBackboneElement(t, "requirement", name, element, index); 27284 if (element.hasLink()) { 27285 composeType(t, "SetupActionAssertRequirementComponent", "link", element.getLink(), -1); 27286 } 27287 } 27288 27289 protected void composeTestScriptTestComponent(Complex parent, String parentType, String name, TestScript.TestScriptTestComponent element, int index) { 27290 if (element == null) 27291 return; 27292 Complex t; 27293 if (Utilities.noString(parentType)) 27294 t = parent; 27295 else { 27296 t = parent.predicate("fhir:"+name,index > -1); 27297 } 27298 composeBackboneElement(t, "test", name, element, index); 27299 if (element.hasNameElement()) { 27300 composeString(t, "TestScriptTestComponent", "name", element.getNameElement(), -1); 27301 } 27302 if (element.hasDescriptionElement()) { 27303 composeString(t, "TestScriptTestComponent", "description", element.getDescriptionElement(), -1); 27304 } 27305 for (int i = 0; i < element.getAction().size(); i++) { 27306 composeTestScriptTestActionComponent(t, "TestScriptTestComponent", "action", element.getAction().get(i), i); 27307 } 27308 } 27309 27310 protected void composeTestScriptTestActionComponent(Complex parent, String parentType, String name, TestScript.TestActionComponent element, int index) { 27311 if (element == null) 27312 return; 27313 Complex t; 27314 if (Utilities.noString(parentType)) 27315 t = parent; 27316 else { 27317 t = parent.predicate("fhir:"+name,index > -1); 27318 } 27319 composeBackboneElement(t, "action", name, element, index); 27320 if (element.hasOperation()) { 27321 composeTestScriptSetupActionOperationComponent(t, "TestActionComponent", "operation", element.getOperation(), -1); 27322 } 27323 if (element.hasAssert()) { 27324 composeTestScriptSetupActionAssertComponent(t, "TestActionComponent", "assert", element.getAssert(), -1); 27325 } 27326 } 27327 27328 protected void composeTestScriptTeardownComponent(Complex parent, String parentType, String name, TestScript.TestScriptTeardownComponent element, int index) { 27329 if (element == null) 27330 return; 27331 Complex t; 27332 if (Utilities.noString(parentType)) 27333 t = parent; 27334 else { 27335 t = parent.predicate("fhir:"+name,index > -1); 27336 } 27337 composeBackboneElement(t, "teardown", name, element, index); 27338 for (int i = 0; i < element.getAction().size(); i++) { 27339 composeTestScriptTeardownActionComponent(t, "TestScriptTeardownComponent", "action", element.getAction().get(i), i); 27340 } 27341 } 27342 27343 protected void composeTestScriptTeardownActionComponent(Complex parent, String parentType, String name, TestScript.TeardownActionComponent element, int index) { 27344 if (element == null) 27345 return; 27346 Complex t; 27347 if (Utilities.noString(parentType)) 27348 t = parent; 27349 else { 27350 t = parent.predicate("fhir:"+name,index > -1); 27351 } 27352 composeBackboneElement(t, "action", name, element, index); 27353 if (element.hasOperation()) { 27354 composeTestScriptSetupActionOperationComponent(t, "TeardownActionComponent", "operation", element.getOperation(), -1); 27355 } 27356 } 27357 27358 protected void composeTransport(Complex parent, String parentType, String name, Transport element, int index) { 27359 if (element == null) 27360 return; 27361 Complex t; 27362 if (Utilities.noString(parentType)) 27363 t = parent; 27364 else { 27365 t = parent.predicate("fhir:"+name,index > -1); 27366 } 27367 composeDomainResource(t, "Transport", name, element, index); 27368 for (int i = 0; i < element.getIdentifier().size(); i++) { 27369 composeIdentifier(t, "Transport", "identifier", element.getIdentifier().get(i), i); 27370 } 27371 if (element.hasInstantiatesCanonicalElement()) { 27372 composeCanonical(t, "Transport", "instantiatesCanonical", element.getInstantiatesCanonicalElement(), -1); 27373 } 27374 if (element.hasInstantiatesUriElement()) { 27375 composeUri(t, "Transport", "instantiatesUri", element.getInstantiatesUriElement(), -1); 27376 } 27377 for (int i = 0; i < element.getBasedOn().size(); i++) { 27378 composeReference(t, "Transport", "basedOn", element.getBasedOn().get(i), i); 27379 } 27380 if (element.hasGroupIdentifier()) { 27381 composeIdentifier(t, "Transport", "groupIdentifier", element.getGroupIdentifier(), -1); 27382 } 27383 for (int i = 0; i < element.getPartOf().size(); i++) { 27384 composeReference(t, "Transport", "partOf", element.getPartOf().get(i), i); 27385 } 27386 if (element.hasStatusElement()) { 27387 composeEnum(t, "Transport", "status", element.getStatusElement(), -1); 27388 } 27389 if (element.hasStatusReason()) { 27390 composeCodeableConcept(t, "Transport", "statusReason", element.getStatusReason(), -1); 27391 } 27392 if (element.hasIntentElement()) { 27393 composeEnum(t, "Transport", "intent", element.getIntentElement(), -1); 27394 } 27395 if (element.hasPriorityElement()) { 27396 composeEnum(t, "Transport", "priority", element.getPriorityElement(), -1); 27397 } 27398 if (element.hasCode()) { 27399 composeCodeableConcept(t, "Transport", "code", element.getCode(), -1); 27400 } 27401 if (element.hasDescriptionElement()) { 27402 composeString(t, "Transport", "description", element.getDescriptionElement(), -1); 27403 } 27404 if (element.hasFocus()) { 27405 composeReference(t, "Transport", "focus", element.getFocus(), -1); 27406 } 27407 if (element.hasFor()) { 27408 composeReference(t, "Transport", "for", element.getFor(), -1); 27409 } 27410 if (element.hasEncounter()) { 27411 composeReference(t, "Transport", "encounter", element.getEncounter(), -1); 27412 } 27413 if (element.hasCompletionTimeElement()) { 27414 composeDateTime(t, "Transport", "completionTime", element.getCompletionTimeElement(), -1); 27415 } 27416 if (element.hasAuthoredOnElement()) { 27417 composeDateTime(t, "Transport", "authoredOn", element.getAuthoredOnElement(), -1); 27418 } 27419 if (element.hasLastModifiedElement()) { 27420 composeDateTime(t, "Transport", "lastModified", element.getLastModifiedElement(), -1); 27421 } 27422 if (element.hasRequester()) { 27423 composeReference(t, "Transport", "requester", element.getRequester(), -1); 27424 } 27425 for (int i = 0; i < element.getPerformerType().size(); i++) { 27426 composeCodeableConcept(t, "Transport", "performerType", element.getPerformerType().get(i), i); 27427 } 27428 if (element.hasOwner()) { 27429 composeReference(t, "Transport", "owner", element.getOwner(), -1); 27430 } 27431 if (element.hasLocation()) { 27432 composeReference(t, "Transport", "location", element.getLocation(), -1); 27433 } 27434 for (int i = 0; i < element.getInsurance().size(); i++) { 27435 composeReference(t, "Transport", "insurance", element.getInsurance().get(i), i); 27436 } 27437 for (int i = 0; i < element.getNote().size(); i++) { 27438 composeAnnotation(t, "Transport", "note", element.getNote().get(i), i); 27439 } 27440 for (int i = 0; i < element.getRelevantHistory().size(); i++) { 27441 composeReference(t, "Transport", "relevantHistory", element.getRelevantHistory().get(i), i); 27442 } 27443 if (element.hasRestriction()) { 27444 composeTransportRestrictionComponent(t, "Transport", "restriction", element.getRestriction(), -1); 27445 } 27446 for (int i = 0; i < element.getInput().size(); i++) { 27447 composeTransportParameterComponent(t, "Transport", "input", element.getInput().get(i), i); 27448 } 27449 for (int i = 0; i < element.getOutput().size(); i++) { 27450 composeTransportOutputComponent(t, "Transport", "output", element.getOutput().get(i), i); 27451 } 27452 if (element.hasRequestedLocation()) { 27453 composeReference(t, "Transport", "requestedLocation", element.getRequestedLocation(), -1); 27454 } 27455 if (element.hasCurrentLocation()) { 27456 composeReference(t, "Transport", "currentLocation", element.getCurrentLocation(), -1); 27457 } 27458 if (element.hasReason()) { 27459 composeCodeableReference(t, "Transport", "reason", element.getReason(), -1); 27460 } 27461 if (element.hasHistory()) { 27462 composeReference(t, "Transport", "history", element.getHistory(), -1); 27463 } 27464 } 27465 27466 protected void composeTransportRestrictionComponent(Complex parent, String parentType, String name, Transport.TransportRestrictionComponent element, int index) { 27467 if (element == null) 27468 return; 27469 Complex t; 27470 if (Utilities.noString(parentType)) 27471 t = parent; 27472 else { 27473 t = parent.predicate("fhir:"+name,index > -1); 27474 } 27475 composeBackboneElement(t, "restriction", name, element, index); 27476 if (element.hasRepetitionsElement()) { 27477 composePositiveInt(t, "TransportRestrictionComponent", "repetitions", element.getRepetitionsElement(), -1); 27478 } 27479 if (element.hasPeriod()) { 27480 composePeriod(t, "TransportRestrictionComponent", "period", element.getPeriod(), -1); 27481 } 27482 for (int i = 0; i < element.getRecipient().size(); i++) { 27483 composeReference(t, "TransportRestrictionComponent", "recipient", element.getRecipient().get(i), i); 27484 } 27485 } 27486 27487 protected void composeTransportParameterComponent(Complex parent, String parentType, String name, Transport.ParameterComponent element, int index) { 27488 if (element == null) 27489 return; 27490 Complex t; 27491 if (Utilities.noString(parentType)) 27492 t = parent; 27493 else { 27494 t = parent.predicate("fhir:"+name,index > -1); 27495 } 27496 composeBackboneElement(t, "input", name, element, index); 27497 if (element.hasType()) { 27498 composeCodeableConcept(t, "ParameterComponent", "type", element.getType(), -1); 27499 } 27500 if (element.hasValue()) { 27501 composeType(t, "ParameterComponent", "value", element.getValue(), -1); 27502 } 27503 } 27504 27505 protected void composeTransportOutputComponent(Complex parent, String parentType, String name, Transport.TransportOutputComponent element, int index) { 27506 if (element == null) 27507 return; 27508 Complex t; 27509 if (Utilities.noString(parentType)) 27510 t = parent; 27511 else { 27512 t = parent.predicate("fhir:"+name,index > -1); 27513 } 27514 composeBackboneElement(t, "output", name, element, index); 27515 if (element.hasType()) { 27516 composeCodeableConcept(t, "TransportOutputComponent", "type", element.getType(), -1); 27517 } 27518 if (element.hasValue()) { 27519 composeType(t, "TransportOutputComponent", "value", element.getValue(), -1); 27520 } 27521 } 27522 27523 protected void composeValueSet(Complex parent, String parentType, String name, ValueSet element, int index) { 27524 if (element == null) 27525 return; 27526 Complex t; 27527 if (Utilities.noString(parentType)) 27528 t = parent; 27529 else { 27530 t = parent.predicate("fhir:"+name,index > -1); 27531 } 27532 composeMetadataResource(t, "ValueSet", name, element, index); 27533 if (element.hasUrlElement()) { 27534 composeUri(t, "ValueSet", "url", element.getUrlElement(), -1); 27535 } 27536 for (int i = 0; i < element.getIdentifier().size(); i++) { 27537 composeIdentifier(t, "ValueSet", "identifier", element.getIdentifier().get(i), i); 27538 } 27539 if (element.hasVersionElement()) { 27540 composeString(t, "ValueSet", "version", element.getVersionElement(), -1); 27541 } 27542 if (element.hasVersionAlgorithm()) { 27543 composeType(t, "ValueSet", "versionAlgorithm", element.getVersionAlgorithm(), -1); 27544 } 27545 if (element.hasNameElement()) { 27546 composeString(t, "ValueSet", "name", element.getNameElement(), -1); 27547 } 27548 if (element.hasTitleElement()) { 27549 composeString(t, "ValueSet", "title", element.getTitleElement(), -1); 27550 } 27551 if (element.hasStatusElement()) { 27552 composeEnum(t, "ValueSet", "status", element.getStatusElement(), -1); 27553 } 27554 if (element.hasExperimentalElement()) { 27555 composeBoolean(t, "ValueSet", "experimental", element.getExperimentalElement(), -1); 27556 } 27557 if (element.hasDateElement()) { 27558 composeDateTime(t, "ValueSet", "date", element.getDateElement(), -1); 27559 } 27560 if (element.hasPublisherElement()) { 27561 composeString(t, "ValueSet", "publisher", element.getPublisherElement(), -1); 27562 } 27563 for (int i = 0; i < element.getContact().size(); i++) { 27564 composeContactDetail(t, "ValueSet", "contact", element.getContact().get(i), i); 27565 } 27566 if (element.hasDescriptionElement()) { 27567 composeMarkdown(t, "ValueSet", "description", element.getDescriptionElement(), -1); 27568 } 27569 for (int i = 0; i < element.getUseContext().size(); i++) { 27570 composeUsageContext(t, "ValueSet", "useContext", element.getUseContext().get(i), i); 27571 } 27572 for (int i = 0; i < element.getJurisdiction().size(); i++) { 27573 composeCodeableConcept(t, "ValueSet", "jurisdiction", element.getJurisdiction().get(i), i); 27574 } 27575 if (element.hasImmutableElement()) { 27576 composeBoolean(t, "ValueSet", "immutable", element.getImmutableElement(), -1); 27577 } 27578 if (element.hasPurposeElement()) { 27579 composeMarkdown(t, "ValueSet", "purpose", element.getPurposeElement(), -1); 27580 } 27581 if (element.hasCopyrightElement()) { 27582 composeMarkdown(t, "ValueSet", "copyright", element.getCopyrightElement(), -1); 27583 } 27584 if (element.hasCopyrightLabelElement()) { 27585 composeString(t, "ValueSet", "copyrightLabel", element.getCopyrightLabelElement(), -1); 27586 } 27587 if (element.hasApprovalDateElement()) { 27588 composeDate(t, "ValueSet", "approvalDate", element.getApprovalDateElement(), -1); 27589 } 27590 if (element.hasLastReviewDateElement()) { 27591 composeDate(t, "ValueSet", "lastReviewDate", element.getLastReviewDateElement(), -1); 27592 } 27593 if (element.hasEffectivePeriod()) { 27594 composePeriod(t, "ValueSet", "effectivePeriod", element.getEffectivePeriod(), -1); 27595 } 27596 for (int i = 0; i < element.getTopic().size(); i++) { 27597 composeCodeableConcept(t, "ValueSet", "topic", element.getTopic().get(i), i); 27598 } 27599 for (int i = 0; i < element.getAuthor().size(); i++) { 27600 composeContactDetail(t, "ValueSet", "author", element.getAuthor().get(i), i); 27601 } 27602 for (int i = 0; i < element.getEditor().size(); i++) { 27603 composeContactDetail(t, "ValueSet", "editor", element.getEditor().get(i), i); 27604 } 27605 for (int i = 0; i < element.getReviewer().size(); i++) { 27606 composeContactDetail(t, "ValueSet", "reviewer", element.getReviewer().get(i), i); 27607 } 27608 for (int i = 0; i < element.getEndorser().size(); i++) { 27609 composeContactDetail(t, "ValueSet", "endorser", element.getEndorser().get(i), i); 27610 } 27611 for (int i = 0; i < element.getRelatedArtifact().size(); i++) { 27612 composeRelatedArtifact(t, "ValueSet", "relatedArtifact", element.getRelatedArtifact().get(i), i); 27613 } 27614 if (element.hasCompose()) { 27615 composeValueSetComposeComponent(t, "ValueSet", "compose", element.getCompose(), -1); 27616 } 27617 if (element.hasExpansion()) { 27618 composeValueSetExpansionComponent(t, "ValueSet", "expansion", element.getExpansion(), -1); 27619 } 27620 if (element.hasScope()) { 27621 composeValueSetScopeComponent(t, "ValueSet", "scope", element.getScope(), -1); 27622 } 27623 } 27624 27625 protected void composeValueSetComposeComponent(Complex parent, String parentType, String name, ValueSet.ValueSetComposeComponent element, int index) { 27626 if (element == null) 27627 return; 27628 Complex t; 27629 if (Utilities.noString(parentType)) 27630 t = parent; 27631 else { 27632 t = parent.predicate("fhir:"+name,index > -1); 27633 } 27634 composeBackboneElement(t, "compose", name, element, index); 27635 if (element.hasLockedDateElement()) { 27636 composeDate(t, "ValueSetComposeComponent", "lockedDate", element.getLockedDateElement(), -1); 27637 } 27638 if (element.hasInactiveElement()) { 27639 composeBoolean(t, "ValueSetComposeComponent", "inactive", element.getInactiveElement(), -1); 27640 } 27641 for (int i = 0; i < element.getInclude().size(); i++) { 27642 composeValueSetConceptSetComponent(t, "ValueSetComposeComponent", "include", element.getInclude().get(i), i); 27643 } 27644 for (int i = 0; i < element.getExclude().size(); i++) { 27645 composeValueSetConceptSetComponent(t, "ValueSetComposeComponent", "exclude", element.getExclude().get(i), i); 27646 } 27647 for (int i = 0; i < element.getProperty().size(); i++) { 27648 composeString(t, "ValueSetComposeComponent", "property", element.getProperty().get(i), i); 27649 } 27650 } 27651 27652 protected void composeValueSetConceptSetComponent(Complex parent, String parentType, String name, ValueSet.ConceptSetComponent element, int index) { 27653 if (element == null) 27654 return; 27655 Complex t; 27656 if (Utilities.noString(parentType)) 27657 t = parent; 27658 else { 27659 t = parent.predicate("fhir:"+name,index > -1); 27660 } 27661 composeBackboneElement(t, "include", name, element, index); 27662 if (element.hasSystemElement()) { 27663 composeUri(t, "ConceptSetComponent", "system", element.getSystemElement(), -1); 27664 } 27665 if (element.hasVersionElement()) { 27666 composeString(t, "ConceptSetComponent", "version", element.getVersionElement(), -1); 27667 } 27668 for (int i = 0; i < element.getConcept().size(); i++) { 27669 composeValueSetConceptReferenceComponent(t, "ConceptSetComponent", "concept", element.getConcept().get(i), i); 27670 } 27671 for (int i = 0; i < element.getFilter().size(); i++) { 27672 composeValueSetConceptSetFilterComponent(t, "ConceptSetComponent", "filter", element.getFilter().get(i), i); 27673 } 27674 for (int i = 0; i < element.getValueSet().size(); i++) { 27675 composeCanonical(t, "ConceptSetComponent", "valueSet", element.getValueSet().get(i), i); 27676 } 27677 if (element.hasCopyrightElement()) { 27678 composeString(t, "ConceptSetComponent", "copyright", element.getCopyrightElement(), -1); 27679 } 27680 } 27681 27682 protected void composeValueSetConceptReferenceComponent(Complex parent, String parentType, String name, ValueSet.ConceptReferenceComponent element, int index) { 27683 if (element == null) 27684 return; 27685 Complex t; 27686 if (Utilities.noString(parentType)) 27687 t = parent; 27688 else { 27689 t = parent.predicate("fhir:"+name,index > -1); 27690 } 27691 composeBackboneElement(t, "concept", name, element, index); 27692 if (element.hasCodeElement()) { 27693 composeCode(t, "ConceptReferenceComponent", "code", element.getCodeElement(), -1); 27694 } 27695 if (element.hasDisplayElement()) { 27696 composeString(t, "ConceptReferenceComponent", "display", element.getDisplayElement(), -1); 27697 } 27698 for (int i = 0; i < element.getDesignation().size(); i++) { 27699 composeValueSetConceptReferenceDesignationComponent(t, "ConceptReferenceComponent", "designation", element.getDesignation().get(i), i); 27700 } 27701 } 27702 27703 protected void composeValueSetConceptReferenceDesignationComponent(Complex parent, String parentType, String name, ValueSet.ConceptReferenceDesignationComponent element, int index) { 27704 if (element == null) 27705 return; 27706 Complex t; 27707 if (Utilities.noString(parentType)) 27708 t = parent; 27709 else { 27710 t = parent.predicate("fhir:"+name,index > -1); 27711 } 27712 composeBackboneElement(t, "designation", name, element, index); 27713 if (element.hasLanguageElement()) { 27714 composeCode(t, "ConceptReferenceDesignationComponent", "language", element.getLanguageElement(), -1); 27715 } 27716 if (element.hasUse()) { 27717 composeCoding(t, "ConceptReferenceDesignationComponent", "use", element.getUse(), -1); 27718 } 27719 for (int i = 0; i < element.getAdditionalUse().size(); i++) { 27720 composeCoding(t, "ConceptReferenceDesignationComponent", "additionalUse", element.getAdditionalUse().get(i), i); 27721 } 27722 if (element.hasValueElement()) { 27723 composeString(t, "ConceptReferenceDesignationComponent", "value", element.getValueElement(), -1); 27724 } 27725 } 27726 27727 protected void composeValueSetConceptSetFilterComponent(Complex parent, String parentType, String name, ValueSet.ConceptSetFilterComponent element, int index) { 27728 if (element == null) 27729 return; 27730 Complex t; 27731 if (Utilities.noString(parentType)) 27732 t = parent; 27733 else { 27734 t = parent.predicate("fhir:"+name,index > -1); 27735 } 27736 composeBackboneElement(t, "filter", name, element, index); 27737 if (element.hasPropertyElement()) { 27738 composeCode(t, "ConceptSetFilterComponent", "property", element.getPropertyElement(), -1); 27739 } 27740 if (element.hasOpElement()) { 27741 composeEnum(t, "ConceptSetFilterComponent", "op", element.getOpElement(), -1); 27742 } 27743 if (element.hasValueElement()) { 27744 composeString(t, "ConceptSetFilterComponent", "value", element.getValueElement(), -1); 27745 } 27746 } 27747 27748 protected void composeValueSetExpansionComponent(Complex parent, String parentType, String name, ValueSet.ValueSetExpansionComponent element, int index) { 27749 if (element == null) 27750 return; 27751 Complex t; 27752 if (Utilities.noString(parentType)) 27753 t = parent; 27754 else { 27755 t = parent.predicate("fhir:"+name,index > -1); 27756 } 27757 composeBackboneElement(t, "expansion", name, element, index); 27758 if (element.hasIdentifierElement()) { 27759 composeUri(t, "ValueSetExpansionComponent", "identifier", element.getIdentifierElement(), -1); 27760 } 27761 if (element.hasNextElement()) { 27762 composeUri(t, "ValueSetExpansionComponent", "next", element.getNextElement(), -1); 27763 } 27764 if (element.hasTimestampElement()) { 27765 composeDateTime(t, "ValueSetExpansionComponent", "timestamp", element.getTimestampElement(), -1); 27766 } 27767 if (element.hasTotalElement()) { 27768 composeInteger(t, "ValueSetExpansionComponent", "total", element.getTotalElement(), -1); 27769 } 27770 if (element.hasOffsetElement()) { 27771 composeInteger(t, "ValueSetExpansionComponent", "offset", element.getOffsetElement(), -1); 27772 } 27773 for (int i = 0; i < element.getParameter().size(); i++) { 27774 composeValueSetExpansionParameterComponent(t, "ValueSetExpansionComponent", "parameter", element.getParameter().get(i), i); 27775 } 27776 for (int i = 0; i < element.getProperty().size(); i++) { 27777 composeValueSetExpansionPropertyComponent(t, "ValueSetExpansionComponent", "property", element.getProperty().get(i), i); 27778 } 27779 for (int i = 0; i < element.getContains().size(); i++) { 27780 composeValueSetExpansionContainsComponent(t, "ValueSetExpansionComponent", "contains", element.getContains().get(i), i); 27781 } 27782 } 27783 27784 protected void composeValueSetExpansionParameterComponent(Complex parent, String parentType, String name, ValueSet.ValueSetExpansionParameterComponent element, int index) { 27785 if (element == null) 27786 return; 27787 Complex t; 27788 if (Utilities.noString(parentType)) 27789 t = parent; 27790 else { 27791 t = parent.predicate("fhir:"+name,index > -1); 27792 } 27793 composeBackboneElement(t, "parameter", name, element, index); 27794 if (element.hasNameElement()) { 27795 composeString(t, "ValueSetExpansionParameterComponent", "name", element.getNameElement(), -1); 27796 } 27797 if (element.hasValue()) { 27798 composeType(t, "ValueSetExpansionParameterComponent", "value", element.getValue(), -1); 27799 } 27800 } 27801 27802 protected void composeValueSetExpansionPropertyComponent(Complex parent, String parentType, String name, ValueSet.ValueSetExpansionPropertyComponent element, int index) { 27803 if (element == null) 27804 return; 27805 Complex t; 27806 if (Utilities.noString(parentType)) 27807 t = parent; 27808 else { 27809 t = parent.predicate("fhir:"+name,index > -1); 27810 } 27811 composeBackboneElement(t, "property", name, element, index); 27812 if (element.hasCodeElement()) { 27813 composeCode(t, "ValueSetExpansionPropertyComponent", "code", element.getCodeElement(), -1); 27814 } 27815 if (element.hasUriElement()) { 27816 composeUri(t, "ValueSetExpansionPropertyComponent", "uri", element.getUriElement(), -1); 27817 } 27818 } 27819 27820 protected void composeValueSetExpansionContainsComponent(Complex parent, String parentType, String name, ValueSet.ValueSetExpansionContainsComponent element, int index) { 27821 if (element == null) 27822 return; 27823 Complex t; 27824 if (Utilities.noString(parentType)) 27825 t = parent; 27826 else { 27827 t = parent.predicate("fhir:"+name,index > -1); 27828 } 27829 composeBackboneElement(t, "contains", name, element, index); 27830 if (element.hasSystemElement()) { 27831 composeUri(t, "ValueSetExpansionContainsComponent", "system", element.getSystemElement(), -1); 27832 } 27833 if (element.hasAbstractElement()) { 27834 composeBoolean(t, "ValueSetExpansionContainsComponent", "abstract", element.getAbstractElement(), -1); 27835 } 27836 if (element.hasInactiveElement()) { 27837 composeBoolean(t, "ValueSetExpansionContainsComponent", "inactive", element.getInactiveElement(), -1); 27838 } 27839 if (element.hasVersionElement()) { 27840 composeString(t, "ValueSetExpansionContainsComponent", "version", element.getVersionElement(), -1); 27841 } 27842 if (element.hasCodeElement()) { 27843 composeCode(t, "ValueSetExpansionContainsComponent", "code", element.getCodeElement(), -1); 27844 } 27845 if (element.hasDisplayElement()) { 27846 composeString(t, "ValueSetExpansionContainsComponent", "display", element.getDisplayElement(), -1); 27847 } 27848 for (int i = 0; i < element.getDesignation().size(); i++) { 27849 composeValueSetConceptReferenceDesignationComponent(t, "ValueSetExpansionContainsComponent", "designation", element.getDesignation().get(i), i); 27850 } 27851 for (int i = 0; i < element.getProperty().size(); i++) { 27852 composeValueSetConceptPropertyComponent(t, "ValueSetExpansionContainsComponent", "property", element.getProperty().get(i), i); 27853 } 27854 for (int i = 0; i < element.getContains().size(); i++) { 27855 composeValueSetExpansionContainsComponent(t, "ValueSetExpansionContainsComponent", "contains", element.getContains().get(i), i); 27856 } 27857 } 27858 27859 protected void composeValueSetConceptPropertyComponent(Complex parent, String parentType, String name, ValueSet.ConceptPropertyComponent element, int index) { 27860 if (element == null) 27861 return; 27862 Complex t; 27863 if (Utilities.noString(parentType)) 27864 t = parent; 27865 else { 27866 t = parent.predicate("fhir:"+name,index > -1); 27867 } 27868 composeBackboneElement(t, "property", name, element, index); 27869 if (element.hasCodeElement()) { 27870 composeCode(t, "ConceptPropertyComponent", "code", element.getCodeElement(), -1); 27871 } 27872 if (element.hasValue()) { 27873 composeType(t, "ConceptPropertyComponent", "value", element.getValue(), -1); 27874 } 27875 for (int i = 0; i < element.getSubProperty().size(); i++) { 27876 composeValueSetConceptSubPropertyComponent(t, "ConceptPropertyComponent", "subProperty", element.getSubProperty().get(i), i); 27877 } 27878 } 27879 27880 protected void composeValueSetConceptSubPropertyComponent(Complex parent, String parentType, String name, ValueSet.ConceptSubPropertyComponent element, int index) { 27881 if (element == null) 27882 return; 27883 Complex t; 27884 if (Utilities.noString(parentType)) 27885 t = parent; 27886 else { 27887 t = parent.predicate("fhir:"+name,index > -1); 27888 } 27889 composeBackboneElement(t, "subProperty", name, element, index); 27890 if (element.hasCodeElement()) { 27891 composeCode(t, "ConceptSubPropertyComponent", "code", element.getCodeElement(), -1); 27892 } 27893 if (element.hasValue()) { 27894 composeType(t, "ConceptSubPropertyComponent", "value", element.getValue(), -1); 27895 } 27896 } 27897 27898 protected void composeValueSetScopeComponent(Complex parent, String parentType, String name, ValueSet.ValueSetScopeComponent element, int index) { 27899 if (element == null) 27900 return; 27901 Complex t; 27902 if (Utilities.noString(parentType)) 27903 t = parent; 27904 else { 27905 t = parent.predicate("fhir:"+name,index > -1); 27906 } 27907 composeBackboneElement(t, "scope", name, element, index); 27908 if (element.hasInclusionCriteriaElement()) { 27909 composeString(t, "ValueSetScopeComponent", "inclusionCriteria", element.getInclusionCriteriaElement(), -1); 27910 } 27911 if (element.hasExclusionCriteriaElement()) { 27912 composeString(t, "ValueSetScopeComponent", "exclusionCriteria", element.getExclusionCriteriaElement(), -1); 27913 } 27914 } 27915 27916 protected void composeVerificationResult(Complex parent, String parentType, String name, VerificationResult element, int index) { 27917 if (element == null) 27918 return; 27919 Complex t; 27920 if (Utilities.noString(parentType)) 27921 t = parent; 27922 else { 27923 t = parent.predicate("fhir:"+name,index > -1); 27924 } 27925 composeDomainResource(t, "VerificationResult", name, element, index); 27926 for (int i = 0; i < element.getTarget().size(); i++) { 27927 composeReference(t, "VerificationResult", "target", element.getTarget().get(i), i); 27928 } 27929 for (int i = 0; i < element.getTargetLocation().size(); i++) { 27930 composeString(t, "VerificationResult", "targetLocation", element.getTargetLocation().get(i), i); 27931 } 27932 if (element.hasNeed()) { 27933 composeCodeableConcept(t, "VerificationResult", "need", element.getNeed(), -1); 27934 } 27935 if (element.hasStatusElement()) { 27936 composeEnum(t, "VerificationResult", "status", element.getStatusElement(), -1); 27937 } 27938 if (element.hasStatusDateElement()) { 27939 composeDateTime(t, "VerificationResult", "statusDate", element.getStatusDateElement(), -1); 27940 } 27941 if (element.hasValidationType()) { 27942 composeCodeableConcept(t, "VerificationResult", "validationType", element.getValidationType(), -1); 27943 } 27944 for (int i = 0; i < element.getValidationProcess().size(); i++) { 27945 composeCodeableConcept(t, "VerificationResult", "validationProcess", element.getValidationProcess().get(i), i); 27946 } 27947 if (element.hasFrequency()) { 27948 composeTiming(t, "VerificationResult", "frequency", element.getFrequency(), -1); 27949 } 27950 if (element.hasLastPerformedElement()) { 27951 composeDateTime(t, "VerificationResult", "lastPerformed", element.getLastPerformedElement(), -1); 27952 } 27953 if (element.hasNextScheduledElement()) { 27954 composeDate(t, "VerificationResult", "nextScheduled", element.getNextScheduledElement(), -1); 27955 } 27956 if (element.hasFailureAction()) { 27957 composeCodeableConcept(t, "VerificationResult", "failureAction", element.getFailureAction(), -1); 27958 } 27959 for (int i = 0; i < element.getPrimarySource().size(); i++) { 27960 composeVerificationResultPrimarySourceComponent(t, "VerificationResult", "primarySource", element.getPrimarySource().get(i), i); 27961 } 27962 if (element.hasAttestation()) { 27963 composeVerificationResultAttestationComponent(t, "VerificationResult", "attestation", element.getAttestation(), -1); 27964 } 27965 for (int i = 0; i < element.getValidator().size(); i++) { 27966 composeVerificationResultValidatorComponent(t, "VerificationResult", "validator", element.getValidator().get(i), i); 27967 } 27968 } 27969 27970 protected void composeVerificationResultPrimarySourceComponent(Complex parent, String parentType, String name, VerificationResult.VerificationResultPrimarySourceComponent element, int index) { 27971 if (element == null) 27972 return; 27973 Complex t; 27974 if (Utilities.noString(parentType)) 27975 t = parent; 27976 else { 27977 t = parent.predicate("fhir:"+name,index > -1); 27978 } 27979 composeBackboneElement(t, "primarySource", name, element, index); 27980 if (element.hasWho()) { 27981 composeReference(t, "VerificationResultPrimarySourceComponent", "who", element.getWho(), -1); 27982 } 27983 for (int i = 0; i < element.getType().size(); i++) { 27984 composeCodeableConcept(t, "VerificationResultPrimarySourceComponent", "type", element.getType().get(i), i); 27985 } 27986 for (int i = 0; i < element.getCommunicationMethod().size(); i++) { 27987 composeCodeableConcept(t, "VerificationResultPrimarySourceComponent", "communicationMethod", element.getCommunicationMethod().get(i), i); 27988 } 27989 if (element.hasValidationStatus()) { 27990 composeCodeableConcept(t, "VerificationResultPrimarySourceComponent", "validationStatus", element.getValidationStatus(), -1); 27991 } 27992 if (element.hasValidationDateElement()) { 27993 composeDateTime(t, "VerificationResultPrimarySourceComponent", "validationDate", element.getValidationDateElement(), -1); 27994 } 27995 if (element.hasCanPushUpdates()) { 27996 composeCodeableConcept(t, "VerificationResultPrimarySourceComponent", "canPushUpdates", element.getCanPushUpdates(), -1); 27997 } 27998 for (int i = 0; i < element.getPushTypeAvailable().size(); i++) { 27999 composeCodeableConcept(t, "VerificationResultPrimarySourceComponent", "pushTypeAvailable", element.getPushTypeAvailable().get(i), i); 28000 } 28001 } 28002 28003 protected void composeVerificationResultAttestationComponent(Complex parent, String parentType, String name, VerificationResult.VerificationResultAttestationComponent element, int index) { 28004 if (element == null) 28005 return; 28006 Complex t; 28007 if (Utilities.noString(parentType)) 28008 t = parent; 28009 else { 28010 t = parent.predicate("fhir:"+name,index > -1); 28011 } 28012 composeBackboneElement(t, "attestation", name, element, index); 28013 if (element.hasWho()) { 28014 composeReference(t, "VerificationResultAttestationComponent", "who", element.getWho(), -1); 28015 } 28016 if (element.hasOnBehalfOf()) { 28017 composeReference(t, "VerificationResultAttestationComponent", "onBehalfOf", element.getOnBehalfOf(), -1); 28018 } 28019 if (element.hasCommunicationMethod()) { 28020 composeCodeableConcept(t, "VerificationResultAttestationComponent", "communicationMethod", element.getCommunicationMethod(), -1); 28021 } 28022 if (element.hasDateElement()) { 28023 composeDate(t, "VerificationResultAttestationComponent", "date", element.getDateElement(), -1); 28024 } 28025 if (element.hasSourceIdentityCertificateElement()) { 28026 composeString(t, "VerificationResultAttestationComponent", "sourceIdentityCertificate", element.getSourceIdentityCertificateElement(), -1); 28027 } 28028 if (element.hasProxyIdentityCertificateElement()) { 28029 composeString(t, "VerificationResultAttestationComponent", "proxyIdentityCertificate", element.getProxyIdentityCertificateElement(), -1); 28030 } 28031 if (element.hasProxySignature()) { 28032 composeSignature(t, "VerificationResultAttestationComponent", "proxySignature", element.getProxySignature(), -1); 28033 } 28034 if (element.hasSourceSignature()) { 28035 composeSignature(t, "VerificationResultAttestationComponent", "sourceSignature", element.getSourceSignature(), -1); 28036 } 28037 } 28038 28039 protected void composeVerificationResultValidatorComponent(Complex parent, String parentType, String name, VerificationResult.VerificationResultValidatorComponent element, int index) { 28040 if (element == null) 28041 return; 28042 Complex t; 28043 if (Utilities.noString(parentType)) 28044 t = parent; 28045 else { 28046 t = parent.predicate("fhir:"+name,index > -1); 28047 } 28048 composeBackboneElement(t, "validator", name, element, index); 28049 if (element.hasOrganization()) { 28050 composeReference(t, "VerificationResultValidatorComponent", "organization", element.getOrganization(), -1); 28051 } 28052 if (element.hasIdentityCertificateElement()) { 28053 composeString(t, "VerificationResultValidatorComponent", "identityCertificate", element.getIdentityCertificateElement(), -1); 28054 } 28055 if (element.hasAttestationSignature()) { 28056 composeSignature(t, "VerificationResultValidatorComponent", "attestationSignature", element.getAttestationSignature(), -1); 28057 } 28058 } 28059 28060 protected void composeVisionPrescription(Complex parent, String parentType, String name, VisionPrescription element, int index) { 28061 if (element == null) 28062 return; 28063 Complex t; 28064 if (Utilities.noString(parentType)) 28065 t = parent; 28066 else { 28067 t = parent.predicate("fhir:"+name,index > -1); 28068 } 28069 composeDomainResource(t, "VisionPrescription", name, element, index); 28070 for (int i = 0; i < element.getIdentifier().size(); i++) { 28071 composeIdentifier(t, "VisionPrescription", "identifier", element.getIdentifier().get(i), i); 28072 } 28073 if (element.hasStatusElement()) { 28074 composeEnum(t, "VisionPrescription", "status", element.getStatusElement(), -1); 28075 } 28076 if (element.hasCreatedElement()) { 28077 composeDateTime(t, "VisionPrescription", "created", element.getCreatedElement(), -1); 28078 } 28079 if (element.hasPatient()) { 28080 composeReference(t, "VisionPrescription", "patient", element.getPatient(), -1); 28081 } 28082 if (element.hasEncounter()) { 28083 composeReference(t, "VisionPrescription", "encounter", element.getEncounter(), -1); 28084 } 28085 if (element.hasDateWrittenElement()) { 28086 composeDateTime(t, "VisionPrescription", "dateWritten", element.getDateWrittenElement(), -1); 28087 } 28088 if (element.hasPrescriber()) { 28089 composeReference(t, "VisionPrescription", "prescriber", element.getPrescriber(), -1); 28090 } 28091 for (int i = 0; i < element.getLensSpecification().size(); i++) { 28092 composeVisionPrescriptionLensSpecificationComponent(t, "VisionPrescription", "lensSpecification", element.getLensSpecification().get(i), i); 28093 } 28094 } 28095 28096 protected void composeVisionPrescriptionLensSpecificationComponent(Complex parent, String parentType, String name, VisionPrescription.VisionPrescriptionLensSpecificationComponent element, int index) { 28097 if (element == null) 28098 return; 28099 Complex t; 28100 if (Utilities.noString(parentType)) 28101 t = parent; 28102 else { 28103 t = parent.predicate("fhir:"+name,index > -1); 28104 } 28105 composeBackboneElement(t, "lensSpecification", name, element, index); 28106 if (element.hasProduct()) { 28107 composeCodeableConcept(t, "VisionPrescriptionLensSpecificationComponent", "product", element.getProduct(), -1); 28108 } 28109 if (element.hasEyeElement()) { 28110 composeEnum(t, "VisionPrescriptionLensSpecificationComponent", "eye", element.getEyeElement(), -1); 28111 } 28112 if (element.hasSphereElement()) { 28113 composeDecimal(t, "VisionPrescriptionLensSpecificationComponent", "sphere", element.getSphereElement(), -1); 28114 } 28115 if (element.hasCylinderElement()) { 28116 composeDecimal(t, "VisionPrescriptionLensSpecificationComponent", "cylinder", element.getCylinderElement(), -1); 28117 } 28118 if (element.hasAxisElement()) { 28119 composeInteger(t, "VisionPrescriptionLensSpecificationComponent", "axis", element.getAxisElement(), -1); 28120 } 28121 for (int i = 0; i < element.getPrism().size(); i++) { 28122 composeVisionPrescriptionPrismComponent(t, "VisionPrescriptionLensSpecificationComponent", "prism", element.getPrism().get(i), i); 28123 } 28124 if (element.hasAddElement()) { 28125 composeDecimal(t, "VisionPrescriptionLensSpecificationComponent", "add", element.getAddElement(), -1); 28126 } 28127 if (element.hasPowerElement()) { 28128 composeDecimal(t, "VisionPrescriptionLensSpecificationComponent", "power", element.getPowerElement(), -1); 28129 } 28130 if (element.hasBackCurveElement()) { 28131 composeDecimal(t, "VisionPrescriptionLensSpecificationComponent", "backCurve", element.getBackCurveElement(), -1); 28132 } 28133 if (element.hasDiameterElement()) { 28134 composeDecimal(t, "VisionPrescriptionLensSpecificationComponent", "diameter", element.getDiameterElement(), -1); 28135 } 28136 if (element.hasDuration()) { 28137 composeQuantity(t, "VisionPrescriptionLensSpecificationComponent", "duration", element.getDuration(), -1); 28138 } 28139 if (element.hasColorElement()) { 28140 composeString(t, "VisionPrescriptionLensSpecificationComponent", "color", element.getColorElement(), -1); 28141 } 28142 if (element.hasBrandElement()) { 28143 composeString(t, "VisionPrescriptionLensSpecificationComponent", "brand", element.getBrandElement(), -1); 28144 } 28145 for (int i = 0; i < element.getNote().size(); i++) { 28146 composeAnnotation(t, "VisionPrescriptionLensSpecificationComponent", "note", element.getNote().get(i), i); 28147 } 28148 } 28149 28150 protected void composeVisionPrescriptionPrismComponent(Complex parent, String parentType, String name, VisionPrescription.PrismComponent element, int index) { 28151 if (element == null) 28152 return; 28153 Complex t; 28154 if (Utilities.noString(parentType)) 28155 t = parent; 28156 else { 28157 t = parent.predicate("fhir:"+name,index > -1); 28158 } 28159 composeBackboneElement(t, "prism", name, element, index); 28160 if (element.hasAmountElement()) { 28161 composeDecimal(t, "PrismComponent", "amount", element.getAmountElement(), -1); 28162 } 28163 if (element.hasBaseElement()) { 28164 composeEnum(t, "PrismComponent", "base", element.getBaseElement(), -1); 28165 } 28166 } 28167 28168 28169 28170 28171 @Override 28172 protected void composeResource(Complex parent, Resource resource) { 28173 if (parent == null) { 28174 throw new Error("parent == null"); 28175 } else if (resource == null) { 28176 throw new Error("resource == null"); 28177 } else if (resource instanceof Account) { 28178 composeAccount(parent, null, "Account", (Account)resource, -1); 28179 } else if (resource instanceof ActivityDefinition) { 28180 composeActivityDefinition(parent, null, "ActivityDefinition", (ActivityDefinition)resource, -1); 28181 } else if (resource instanceof ActorDefinition) { 28182 composeActorDefinition(parent, null, "ActorDefinition", (ActorDefinition)resource, -1); 28183 } else if (resource instanceof AdministrableProductDefinition) { 28184 composeAdministrableProductDefinition(parent, null, "AdministrableProductDefinition", (AdministrableProductDefinition)resource, -1); 28185 } else if (resource instanceof AdverseEvent) { 28186 composeAdverseEvent(parent, null, "AdverseEvent", (AdverseEvent)resource, -1); 28187 } else if (resource instanceof AllergyIntolerance) { 28188 composeAllergyIntolerance(parent, null, "AllergyIntolerance", (AllergyIntolerance)resource, -1); 28189 } else if (resource instanceof Appointment) { 28190 composeAppointment(parent, null, "Appointment", (Appointment)resource, -1); 28191 } else if (resource instanceof AppointmentResponse) { 28192 composeAppointmentResponse(parent, null, "AppointmentResponse", (AppointmentResponse)resource, -1); 28193 } else if (resource instanceof ArtifactAssessment) { 28194 composeArtifactAssessment(parent, null, "ArtifactAssessment", (ArtifactAssessment)resource, -1); 28195 } else if (resource instanceof AuditEvent) { 28196 composeAuditEvent(parent, null, "AuditEvent", (AuditEvent)resource, -1); 28197 } else if (resource instanceof Basic) { 28198 composeBasic(parent, null, "Basic", (Basic)resource, -1); 28199 } else if (resource instanceof Binary) { 28200 composeBinary(parent, null, "Binary", (Binary)resource, -1); 28201 } else if (resource instanceof BiologicallyDerivedProduct) { 28202 composeBiologicallyDerivedProduct(parent, null, "BiologicallyDerivedProduct", (BiologicallyDerivedProduct)resource, -1); 28203 } else if (resource instanceof BiologicallyDerivedProductDispense) { 28204 composeBiologicallyDerivedProductDispense(parent, null, "BiologicallyDerivedProductDispense", (BiologicallyDerivedProductDispense)resource, -1); 28205 } else if (resource instanceof BodyStructure) { 28206 composeBodyStructure(parent, null, "BodyStructure", (BodyStructure)resource, -1); 28207 } else if (resource instanceof Bundle) { 28208 composeBundle(parent, null, "Bundle", (Bundle)resource, -1); 28209 } else if (resource instanceof CapabilityStatement) { 28210 composeCapabilityStatement(parent, null, "CapabilityStatement", (CapabilityStatement)resource, -1); 28211 } else if (resource instanceof CarePlan) { 28212 composeCarePlan(parent, null, "CarePlan", (CarePlan)resource, -1); 28213 } else if (resource instanceof CareTeam) { 28214 composeCareTeam(parent, null, "CareTeam", (CareTeam)resource, -1); 28215 } else if (resource instanceof ChargeItem) { 28216 composeChargeItem(parent, null, "ChargeItem", (ChargeItem)resource, -1); 28217 } else if (resource instanceof ChargeItemDefinition) { 28218 composeChargeItemDefinition(parent, null, "ChargeItemDefinition", (ChargeItemDefinition)resource, -1); 28219 } else if (resource instanceof Citation) { 28220 composeCitation(parent, null, "Citation", (Citation)resource, -1); 28221 } else if (resource instanceof Claim) { 28222 composeClaim(parent, null, "Claim", (Claim)resource, -1); 28223 } else if (resource instanceof ClaimResponse) { 28224 composeClaimResponse(parent, null, "ClaimResponse", (ClaimResponse)resource, -1); 28225 } else if (resource instanceof ClinicalImpression) { 28226 composeClinicalImpression(parent, null, "ClinicalImpression", (ClinicalImpression)resource, -1); 28227 } else if (resource instanceof ClinicalUseDefinition) { 28228 composeClinicalUseDefinition(parent, null, "ClinicalUseDefinition", (ClinicalUseDefinition)resource, -1); 28229 } else if (resource instanceof CodeSystem) { 28230 composeCodeSystem(parent, null, "CodeSystem", (CodeSystem)resource, -1); 28231 } else if (resource instanceof Communication) { 28232 composeCommunication(parent, null, "Communication", (Communication)resource, -1); 28233 } else if (resource instanceof CommunicationRequest) { 28234 composeCommunicationRequest(parent, null, "CommunicationRequest", (CommunicationRequest)resource, -1); 28235 } else if (resource instanceof CompartmentDefinition) { 28236 composeCompartmentDefinition(parent, null, "CompartmentDefinition", (CompartmentDefinition)resource, -1); 28237 } else if (resource instanceof Composition) { 28238 composeComposition(parent, null, "Composition", (Composition)resource, -1); 28239 } else if (resource instanceof ConceptMap) { 28240 composeConceptMap(parent, null, "ConceptMap", (ConceptMap)resource, -1); 28241 } else if (resource instanceof Condition) { 28242 composeCondition(parent, null, "Condition", (Condition)resource, -1); 28243 } else if (resource instanceof ConditionDefinition) { 28244 composeConditionDefinition(parent, null, "ConditionDefinition", (ConditionDefinition)resource, -1); 28245 } else if (resource instanceof Consent) { 28246 composeConsent(parent, null, "Consent", (Consent)resource, -1); 28247 } else if (resource instanceof Contract) { 28248 composeContract(parent, null, "Contract", (Contract)resource, -1); 28249 } else if (resource instanceof Coverage) { 28250 composeCoverage(parent, null, "Coverage", (Coverage)resource, -1); 28251 } else if (resource instanceof CoverageEligibilityRequest) { 28252 composeCoverageEligibilityRequest(parent, null, "CoverageEligibilityRequest", (CoverageEligibilityRequest)resource, -1); 28253 } else if (resource instanceof CoverageEligibilityResponse) { 28254 composeCoverageEligibilityResponse(parent, null, "CoverageEligibilityResponse", (CoverageEligibilityResponse)resource, -1); 28255 } else if (resource instanceof DetectedIssue) { 28256 composeDetectedIssue(parent, null, "DetectedIssue", (DetectedIssue)resource, -1); 28257 } else if (resource instanceof Device) { 28258 composeDevice(parent, null, "Device", (Device)resource, -1); 28259 } else if (resource instanceof DeviceAssociation) { 28260 composeDeviceAssociation(parent, null, "DeviceAssociation", (DeviceAssociation)resource, -1); 28261 } else if (resource instanceof DeviceDefinition) { 28262 composeDeviceDefinition(parent, null, "DeviceDefinition", (DeviceDefinition)resource, -1); 28263 } else if (resource instanceof DeviceDispense) { 28264 composeDeviceDispense(parent, null, "DeviceDispense", (DeviceDispense)resource, -1); 28265 } else if (resource instanceof DeviceMetric) { 28266 composeDeviceMetric(parent, null, "DeviceMetric", (DeviceMetric)resource, -1); 28267 } else if (resource instanceof DeviceRequest) { 28268 composeDeviceRequest(parent, null, "DeviceRequest", (DeviceRequest)resource, -1); 28269 } else if (resource instanceof DeviceUsage) { 28270 composeDeviceUsage(parent, null, "DeviceUsage", (DeviceUsage)resource, -1); 28271 } else if (resource instanceof DiagnosticReport) { 28272 composeDiagnosticReport(parent, null, "DiagnosticReport", (DiagnosticReport)resource, -1); 28273 } else if (resource instanceof DocumentReference) { 28274 composeDocumentReference(parent, null, "DocumentReference", (DocumentReference)resource, -1); 28275 } else if (resource instanceof Encounter) { 28276 composeEncounter(parent, null, "Encounter", (Encounter)resource, -1); 28277 } else if (resource instanceof EncounterHistory) { 28278 composeEncounterHistory(parent, null, "EncounterHistory", (EncounterHistory)resource, -1); 28279 } else if (resource instanceof Endpoint) { 28280 composeEndpoint(parent, null, "Endpoint", (Endpoint)resource, -1); 28281 } else if (resource instanceof EnrollmentRequest) { 28282 composeEnrollmentRequest(parent, null, "EnrollmentRequest", (EnrollmentRequest)resource, -1); 28283 } else if (resource instanceof EnrollmentResponse) { 28284 composeEnrollmentResponse(parent, null, "EnrollmentResponse", (EnrollmentResponse)resource, -1); 28285 } else if (resource instanceof EpisodeOfCare) { 28286 composeEpisodeOfCare(parent, null, "EpisodeOfCare", (EpisodeOfCare)resource, -1); 28287 } else if (resource instanceof EventDefinition) { 28288 composeEventDefinition(parent, null, "EventDefinition", (EventDefinition)resource, -1); 28289 } else if (resource instanceof Evidence) { 28290 composeEvidence(parent, null, "Evidence", (Evidence)resource, -1); 28291 } else if (resource instanceof EvidenceReport) { 28292 composeEvidenceReport(parent, null, "EvidenceReport", (EvidenceReport)resource, -1); 28293 } else if (resource instanceof EvidenceVariable) { 28294 composeEvidenceVariable(parent, null, "EvidenceVariable", (EvidenceVariable)resource, -1); 28295 } else if (resource instanceof ExampleScenario) { 28296 composeExampleScenario(parent, null, "ExampleScenario", (ExampleScenario)resource, -1); 28297 } else if (resource instanceof ExplanationOfBenefit) { 28298 composeExplanationOfBenefit(parent, null, "ExplanationOfBenefit", (ExplanationOfBenefit)resource, -1); 28299 } else if (resource instanceof FamilyMemberHistory) { 28300 composeFamilyMemberHistory(parent, null, "FamilyMemberHistory", (FamilyMemberHistory)resource, -1); 28301 } else if (resource instanceof Flag) { 28302 composeFlag(parent, null, "Flag", (Flag)resource, -1); 28303 } else if (resource instanceof FormularyItem) { 28304 composeFormularyItem(parent, null, "FormularyItem", (FormularyItem)resource, -1); 28305 } else if (resource instanceof GenomicStudy) { 28306 composeGenomicStudy(parent, null, "GenomicStudy", (GenomicStudy)resource, -1); 28307 } else if (resource instanceof Goal) { 28308 composeGoal(parent, null, "Goal", (Goal)resource, -1); 28309 } else if (resource instanceof GraphDefinition) { 28310 composeGraphDefinition(parent, null, "GraphDefinition", (GraphDefinition)resource, -1); 28311 } else if (resource instanceof Group) { 28312 composeGroup(parent, null, "Group", (Group)resource, -1); 28313 } else if (resource instanceof GuidanceResponse) { 28314 composeGuidanceResponse(parent, null, "GuidanceResponse", (GuidanceResponse)resource, -1); 28315 } else if (resource instanceof HealthcareService) { 28316 composeHealthcareService(parent, null, "HealthcareService", (HealthcareService)resource, -1); 28317 } else if (resource instanceof ImagingSelection) { 28318 composeImagingSelection(parent, null, "ImagingSelection", (ImagingSelection)resource, -1); 28319 } else if (resource instanceof ImagingStudy) { 28320 composeImagingStudy(parent, null, "ImagingStudy", (ImagingStudy)resource, -1); 28321 } else if (resource instanceof Immunization) { 28322 composeImmunization(parent, null, "Immunization", (Immunization)resource, -1); 28323 } else if (resource instanceof ImmunizationEvaluation) { 28324 composeImmunizationEvaluation(parent, null, "ImmunizationEvaluation", (ImmunizationEvaluation)resource, -1); 28325 } else if (resource instanceof ImmunizationRecommendation) { 28326 composeImmunizationRecommendation(parent, null, "ImmunizationRecommendation", (ImmunizationRecommendation)resource, -1); 28327 } else if (resource instanceof ImplementationGuide) { 28328 composeImplementationGuide(parent, null, "ImplementationGuide", (ImplementationGuide)resource, -1); 28329 } else if (resource instanceof Ingredient) { 28330 composeIngredient(parent, null, "Ingredient", (Ingredient)resource, -1); 28331 } else if (resource instanceof InsurancePlan) { 28332 composeInsurancePlan(parent, null, "InsurancePlan", (InsurancePlan)resource, -1); 28333 } else if (resource instanceof InventoryItem) { 28334 composeInventoryItem(parent, null, "InventoryItem", (InventoryItem)resource, -1); 28335 } else if (resource instanceof InventoryReport) { 28336 composeInventoryReport(parent, null, "InventoryReport", (InventoryReport)resource, -1); 28337 } else if (resource instanceof Invoice) { 28338 composeInvoice(parent, null, "Invoice", (Invoice)resource, -1); 28339 } else if (resource instanceof Library) { 28340 composeLibrary(parent, null, "Library", (Library)resource, -1); 28341 } else if (resource instanceof Linkage) { 28342 composeLinkage(parent, null, "Linkage", (Linkage)resource, -1); 28343 } else if (resource instanceof ListResource) { 28344 composeListResource(parent, null, "List", (ListResource)resource, -1); 28345 } else if (resource instanceof Location) { 28346 composeLocation(parent, null, "Location", (Location)resource, -1); 28347 } else if (resource instanceof ManufacturedItemDefinition) { 28348 composeManufacturedItemDefinition(parent, null, "ManufacturedItemDefinition", (ManufacturedItemDefinition)resource, -1); 28349 } else if (resource instanceof Measure) { 28350 composeMeasure(parent, null, "Measure", (Measure)resource, -1); 28351 } else if (resource instanceof MeasureReport) { 28352 composeMeasureReport(parent, null, "MeasureReport", (MeasureReport)resource, -1); 28353 } else if (resource instanceof Medication) { 28354 composeMedication(parent, null, "Medication", (Medication)resource, -1); 28355 } else if (resource instanceof MedicationAdministration) { 28356 composeMedicationAdministration(parent, null, "MedicationAdministration", (MedicationAdministration)resource, -1); 28357 } else if (resource instanceof MedicationDispense) { 28358 composeMedicationDispense(parent, null, "MedicationDispense", (MedicationDispense)resource, -1); 28359 } else if (resource instanceof MedicationKnowledge) { 28360 composeMedicationKnowledge(parent, null, "MedicationKnowledge", (MedicationKnowledge)resource, -1); 28361 } else if (resource instanceof MedicationRequest) { 28362 composeMedicationRequest(parent, null, "MedicationRequest", (MedicationRequest)resource, -1); 28363 } else if (resource instanceof MedicationStatement) { 28364 composeMedicationStatement(parent, null, "MedicationStatement", (MedicationStatement)resource, -1); 28365 } else if (resource instanceof MedicinalProductDefinition) { 28366 composeMedicinalProductDefinition(parent, null, "MedicinalProductDefinition", (MedicinalProductDefinition)resource, -1); 28367 } else if (resource instanceof MessageDefinition) { 28368 composeMessageDefinition(parent, null, "MessageDefinition", (MessageDefinition)resource, -1); 28369 } else if (resource instanceof MessageHeader) { 28370 composeMessageHeader(parent, null, "MessageHeader", (MessageHeader)resource, -1); 28371 } else if (resource instanceof MolecularSequence) { 28372 composeMolecularSequence(parent, null, "MolecularSequence", (MolecularSequence)resource, -1); 28373 } else if (resource instanceof NamingSystem) { 28374 composeNamingSystem(parent, null, "NamingSystem", (NamingSystem)resource, -1); 28375 } else if (resource instanceof NutritionIntake) { 28376 composeNutritionIntake(parent, null, "NutritionIntake", (NutritionIntake)resource, -1); 28377 } else if (resource instanceof NutritionOrder) { 28378 composeNutritionOrder(parent, null, "NutritionOrder", (NutritionOrder)resource, -1); 28379 } else if (resource instanceof NutritionProduct) { 28380 composeNutritionProduct(parent, null, "NutritionProduct", (NutritionProduct)resource, -1); 28381 } else if (resource instanceof Observation) { 28382 composeObservation(parent, null, "Observation", (Observation)resource, -1); 28383 } else if (resource instanceof ObservationDefinition) { 28384 composeObservationDefinition(parent, null, "ObservationDefinition", (ObservationDefinition)resource, -1); 28385 } else if (resource instanceof OperationDefinition) { 28386 composeOperationDefinition(parent, null, "OperationDefinition", (OperationDefinition)resource, -1); 28387 } else if (resource instanceof OperationOutcome) { 28388 composeOperationOutcome(parent, null, "OperationOutcome", (OperationOutcome)resource, -1); 28389 } else if (resource instanceof Organization) { 28390 composeOrganization(parent, null, "Organization", (Organization)resource, -1); 28391 } else if (resource instanceof OrganizationAffiliation) { 28392 composeOrganizationAffiliation(parent, null, "OrganizationAffiliation", (OrganizationAffiliation)resource, -1); 28393 } else if (resource instanceof PackagedProductDefinition) { 28394 composePackagedProductDefinition(parent, null, "PackagedProductDefinition", (PackagedProductDefinition)resource, -1); 28395 } else if (resource instanceof Parameters) { 28396 composeParameters(parent, null, "Parameters", (Parameters)resource, -1); 28397 } else if (resource instanceof Patient) { 28398 composePatient(parent, null, "Patient", (Patient)resource, -1); 28399 } else if (resource instanceof PaymentNotice) { 28400 composePaymentNotice(parent, null, "PaymentNotice", (PaymentNotice)resource, -1); 28401 } else if (resource instanceof PaymentReconciliation) { 28402 composePaymentReconciliation(parent, null, "PaymentReconciliation", (PaymentReconciliation)resource, -1); 28403 } else if (resource instanceof Permission) { 28404 composePermission(parent, null, "Permission", (Permission)resource, -1); 28405 } else if (resource instanceof Person) { 28406 composePerson(parent, null, "Person", (Person)resource, -1); 28407 } else if (resource instanceof PlanDefinition) { 28408 composePlanDefinition(parent, null, "PlanDefinition", (PlanDefinition)resource, -1); 28409 } else if (resource instanceof Practitioner) { 28410 composePractitioner(parent, null, "Practitioner", (Practitioner)resource, -1); 28411 } else if (resource instanceof PractitionerRole) { 28412 composePractitionerRole(parent, null, "PractitionerRole", (PractitionerRole)resource, -1); 28413 } else if (resource instanceof Procedure) { 28414 composeProcedure(parent, null, "Procedure", (Procedure)resource, -1); 28415 } else if (resource instanceof Provenance) { 28416 composeProvenance(parent, null, "Provenance", (Provenance)resource, -1); 28417 } else if (resource instanceof Questionnaire) { 28418 composeQuestionnaire(parent, null, "Questionnaire", (Questionnaire)resource, -1); 28419 } else if (resource instanceof QuestionnaireResponse) { 28420 composeQuestionnaireResponse(parent, null, "QuestionnaireResponse", (QuestionnaireResponse)resource, -1); 28421 } else if (resource instanceof RegulatedAuthorization) { 28422 composeRegulatedAuthorization(parent, null, "RegulatedAuthorization", (RegulatedAuthorization)resource, -1); 28423 } else if (resource instanceof RelatedPerson) { 28424 composeRelatedPerson(parent, null, "RelatedPerson", (RelatedPerson)resource, -1); 28425 } else if (resource instanceof RequestOrchestration) { 28426 composeRequestOrchestration(parent, null, "RequestOrchestration", (RequestOrchestration)resource, -1); 28427 } else if (resource instanceof Requirements) { 28428 composeRequirements(parent, null, "Requirements", (Requirements)resource, -1); 28429 } else if (resource instanceof ResearchStudy) { 28430 composeResearchStudy(parent, null, "ResearchStudy", (ResearchStudy)resource, -1); 28431 } else if (resource instanceof ResearchSubject) { 28432 composeResearchSubject(parent, null, "ResearchSubject", (ResearchSubject)resource, -1); 28433 } else if (resource instanceof RiskAssessment) { 28434 composeRiskAssessment(parent, null, "RiskAssessment", (RiskAssessment)resource, -1); 28435 } else if (resource instanceof Schedule) { 28436 composeSchedule(parent, null, "Schedule", (Schedule)resource, -1); 28437 } else if (resource instanceof SearchParameter) { 28438 composeSearchParameter(parent, null, "SearchParameter", (SearchParameter)resource, -1); 28439 } else if (resource instanceof ServiceRequest) { 28440 composeServiceRequest(parent, null, "ServiceRequest", (ServiceRequest)resource, -1); 28441 } else if (resource instanceof Slot) { 28442 composeSlot(parent, null, "Slot", (Slot)resource, -1); 28443 } else if (resource instanceof Specimen) { 28444 composeSpecimen(parent, null, "Specimen", (Specimen)resource, -1); 28445 } else if (resource instanceof SpecimenDefinition) { 28446 composeSpecimenDefinition(parent, null, "SpecimenDefinition", (SpecimenDefinition)resource, -1); 28447 } else if (resource instanceof StructureDefinition) { 28448 composeStructureDefinition(parent, null, "StructureDefinition", (StructureDefinition)resource, -1); 28449 } else if (resource instanceof StructureMap) { 28450 composeStructureMap(parent, null, "StructureMap", (StructureMap)resource, -1); 28451 } else if (resource instanceof Subscription) { 28452 composeSubscription(parent, null, "Subscription", (Subscription)resource, -1); 28453 } else if (resource instanceof SubscriptionStatus) { 28454 composeSubscriptionStatus(parent, null, "SubscriptionStatus", (SubscriptionStatus)resource, -1); 28455 } else if (resource instanceof SubscriptionTopic) { 28456 composeSubscriptionTopic(parent, null, "SubscriptionTopic", (SubscriptionTopic)resource, -1); 28457 } else if (resource instanceof Substance) { 28458 composeSubstance(parent, null, "Substance", (Substance)resource, -1); 28459 } else if (resource instanceof SubstanceDefinition) { 28460 composeSubstanceDefinition(parent, null, "SubstanceDefinition", (SubstanceDefinition)resource, -1); 28461 } else if (resource instanceof SubstanceNucleicAcid) { 28462 composeSubstanceNucleicAcid(parent, null, "SubstanceNucleicAcid", (SubstanceNucleicAcid)resource, -1); 28463 } else if (resource instanceof SubstancePolymer) { 28464 composeSubstancePolymer(parent, null, "SubstancePolymer", (SubstancePolymer)resource, -1); 28465 } else if (resource instanceof SubstanceProtein) { 28466 composeSubstanceProtein(parent, null, "SubstanceProtein", (SubstanceProtein)resource, -1); 28467 } else if (resource instanceof SubstanceReferenceInformation) { 28468 composeSubstanceReferenceInformation(parent, null, "SubstanceReferenceInformation", (SubstanceReferenceInformation)resource, -1); 28469 } else if (resource instanceof SubstanceSourceMaterial) { 28470 composeSubstanceSourceMaterial(parent, null, "SubstanceSourceMaterial", (SubstanceSourceMaterial)resource, -1); 28471 } else if (resource instanceof SupplyDelivery) { 28472 composeSupplyDelivery(parent, null, "SupplyDelivery", (SupplyDelivery)resource, -1); 28473 } else if (resource instanceof SupplyRequest) { 28474 composeSupplyRequest(parent, null, "SupplyRequest", (SupplyRequest)resource, -1); 28475 } else if (resource instanceof Task) { 28476 composeTask(parent, null, "Task", (Task)resource, -1); 28477 } else if (resource instanceof TerminologyCapabilities) { 28478 composeTerminologyCapabilities(parent, null, "TerminologyCapabilities", (TerminologyCapabilities)resource, -1); 28479 } else if (resource instanceof TestPlan) { 28480 composeTestPlan(parent, null, "TestPlan", (TestPlan)resource, -1); 28481 } else if (resource instanceof TestReport) { 28482 composeTestReport(parent, null, "TestReport", (TestReport)resource, -1); 28483 } else if (resource instanceof TestScript) { 28484 composeTestScript(parent, null, "TestScript", (TestScript)resource, -1); 28485 } else if (resource instanceof Transport) { 28486 composeTransport(parent, null, "Transport", (Transport)resource, -1); 28487 } else if (resource instanceof ValueSet) { 28488 composeValueSet(parent, null, "ValueSet", (ValueSet)resource, -1); 28489 } else if (resource instanceof VerificationResult) { 28490 composeVerificationResult(parent, null, "VerificationResult", (VerificationResult)resource, -1); 28491 } else if (resource instanceof VisionPrescription) { 28492 composeVisionPrescription(parent, null, "VisionPrescription", (VisionPrescription)resource, -1); 28493 28494 } else { 28495 throw new Error("Unhandled resource type "+resource.getClass().getName()); 28496 } 28497 } 28498 28499 protected void composeType(Complex parent, String parentType, String name, DataType value, int index) { 28500 if (parent == null) { 28501 throw new Error("parent == null"); 28502 } else if (parentType == null) { 28503 throw new Error("parentType == null"); 28504 } else if (name == null) { 28505 throw new Error("name == null"); 28506 } else if (value == null) { 28507 throw new Error("value == null"); 28508 } else if (value instanceof DateType) { 28509 composeDate(parent, parentType, name, (DateType)value, index); 28510 } else if (value instanceof DateTimeType) { 28511 composeDateTime(parent, parentType, name, (DateTimeType)value, index); 28512 } else if (value instanceof CodeType) { 28513 composeCode(parent, parentType, name, (CodeType)value, index); 28514 } else if (value instanceof StringType) { 28515 composeString(parent, parentType, name, (StringType)value, index); 28516 } else if (value instanceof IntegerType) { 28517 composeInteger(parent, parentType, name, (IntegerType)value, index); 28518 } else if (value instanceof Integer64Type) { 28519 composeInteger64(parent, parentType, name, (Integer64Type)value, index); 28520 } else if (value instanceof OidType) { 28521 composeOid(parent, parentType, name, (OidType)value, index); 28522 } else if (value instanceof CanonicalType) { 28523 composeCanonical(parent, parentType, name, (CanonicalType)value, index); 28524 } else if (value instanceof UriType) { 28525 composeUri(parent, parentType, name, (UriType)value, index); 28526 } else if (value instanceof UuidType) { 28527 composeUuid(parent, parentType, name, (UuidType)value, index); 28528 } else if (value instanceof UrlType) { 28529 composeUrl(parent, parentType, name, (UrlType)value, index); 28530 } else if (value instanceof InstantType) { 28531 composeInstant(parent, parentType, name, (InstantType)value, index); 28532 } else if (value instanceof BooleanType) { 28533 composeBoolean(parent, parentType, name, (BooleanType)value, index); 28534 } else if (value instanceof Base64BinaryType) { 28535 composeBase64Binary(parent, parentType, name, (Base64BinaryType)value, index); 28536 } else if (value instanceof UnsignedIntType) { 28537 composeUnsignedInt(parent, parentType, name, (UnsignedIntType)value, index); 28538 } else if (value instanceof MarkdownType) { 28539 composeMarkdown(parent, parentType, name, (MarkdownType)value, index); 28540 } else if (value instanceof TimeType) { 28541 composeTime(parent, parentType, name, (TimeType)value, index); 28542 } else if (value instanceof IdType) { 28543 composeId(parent, parentType, name, (IdType)value, index); 28544 } else if (value instanceof PositiveIntType) { 28545 composePositiveInt(parent, parentType, name, (PositiveIntType)value, index); 28546 } else if (value instanceof DecimalType) { 28547 composeDecimal(parent, parentType, name, (DecimalType)value, index); 28548 } else if (value instanceof Address) { 28549 composeAddress(parent, parentType, name, (Address)value, index); 28550 } else if (value instanceof Age) { 28551 composeAge(parent, parentType, name, (Age)value, index); 28552 } else if (value instanceof Annotation) { 28553 composeAnnotation(parent, parentType, name, (Annotation)value, index); 28554 } else if (value instanceof Attachment) { 28555 composeAttachment(parent, parentType, name, (Attachment)value, index); 28556 } else if (value instanceof Availability) { 28557 composeAvailability(parent, parentType, name, (Availability)value, index); 28558 } else if (value instanceof CodeableConcept) { 28559 composeCodeableConcept(parent, parentType, name, (CodeableConcept)value, index); 28560 } else if (value instanceof CodeableReference) { 28561 composeCodeableReference(parent, parentType, name, (CodeableReference)value, index); 28562 } else if (value instanceof Coding) { 28563 composeCoding(parent, parentType, name, (Coding)value, index); 28564 } else if (value instanceof ContactDetail) { 28565 composeContactDetail(parent, parentType, name, (ContactDetail)value, index); 28566 } else if (value instanceof ContactPoint) { 28567 composeContactPoint(parent, parentType, name, (ContactPoint)value, index); 28568 } else if (value instanceof Contributor) { 28569 composeContributor(parent, parentType, name, (Contributor)value, index); 28570 } else if (value instanceof Count) { 28571 composeCount(parent, parentType, name, (Count)value, index); 28572 } else if (value instanceof DataRequirement) { 28573 composeDataRequirement(parent, parentType, name, (DataRequirement)value, index); 28574 } else if (value instanceof Distance) { 28575 composeDistance(parent, parentType, name, (Distance)value, index); 28576 } else if (value instanceof Dosage) { 28577 composeDosage(parent, parentType, name, (Dosage)value, index); 28578 } else if (value instanceof Duration) { 28579 composeDuration(parent, parentType, name, (Duration)value, index); 28580 } else if (value instanceof ElementDefinition) { 28581 composeElementDefinition(parent, parentType, name, (ElementDefinition)value, index); 28582 } else if (value instanceof Expression) { 28583 composeExpression(parent, parentType, name, (Expression)value, index); 28584 } else if (value instanceof ExtendedContactDetail) { 28585 composeExtendedContactDetail(parent, parentType, name, (ExtendedContactDetail)value, index); 28586 } else if (value instanceof Extension) { 28587 composeExtension(parent, parentType, name, (Extension)value, index); 28588 } else if (value instanceof HumanName) { 28589 composeHumanName(parent, parentType, name, (HumanName)value, index); 28590 } else if (value instanceof Identifier) { 28591 composeIdentifier(parent, parentType, name, (Identifier)value, index); 28592 } else if (value instanceof MarketingStatus) { 28593 composeMarketingStatus(parent, parentType, name, (MarketingStatus)value, index); 28594 } else if (value instanceof Meta) { 28595 composeMeta(parent, parentType, name, (Meta)value, index); 28596 } else if (value instanceof MonetaryComponent) { 28597 composeMonetaryComponent(parent, parentType, name, (MonetaryComponent)value, index); 28598 } else if (value instanceof Money) { 28599 composeMoney(parent, parentType, name, (Money)value, index); 28600 } else if (value instanceof Narrative) { 28601 composeNarrative(parent, parentType, name, (Narrative)value, index); 28602 } else if (value instanceof ParameterDefinition) { 28603 composeParameterDefinition(parent, parentType, name, (ParameterDefinition)value, index); 28604 } else if (value instanceof Period) { 28605 composePeriod(parent, parentType, name, (Period)value, index); 28606 } else if (value instanceof ProductShelfLife) { 28607 composeProductShelfLife(parent, parentType, name, (ProductShelfLife)value, index); 28608 } else if (value instanceof Quantity) { 28609 composeQuantity(parent, parentType, name, (Quantity)value, index); 28610 } else if (value instanceof Range) { 28611 composeRange(parent, parentType, name, (Range)value, index); 28612 } else if (value instanceof Ratio) { 28613 composeRatio(parent, parentType, name, (Ratio)value, index); 28614 } else if (value instanceof RatioRange) { 28615 composeRatioRange(parent, parentType, name, (RatioRange)value, index); 28616 } else if (value instanceof Reference) { 28617 composeReference(parent, parentType, name, (Reference)value, index); 28618 } else if (value instanceof RelatedArtifact) { 28619 composeRelatedArtifact(parent, parentType, name, (RelatedArtifact)value, index); 28620 } else if (value instanceof SampledData) { 28621 composeSampledData(parent, parentType, name, (SampledData)value, index); 28622 } else if (value instanceof Signature) { 28623 composeSignature(parent, parentType, name, (Signature)value, index); 28624 } else if (value instanceof Timing) { 28625 composeTiming(parent, parentType, name, (Timing)value, index); 28626 } else if (value instanceof TriggerDefinition) { 28627 composeTriggerDefinition(parent, parentType, name, (TriggerDefinition)value, index); 28628 } else if (value instanceof UsageContext) { 28629 composeUsageContext(parent, parentType, name, (UsageContext)value, index); 28630 } else if (value instanceof VirtualServiceDetail) { 28631 composeVirtualServiceDetail(parent, parentType, name, (VirtualServiceDetail)value, index); 28632 28633 } else { 28634 throw new Error("Unhandled type"); 28635 } 28636 } 28637 28638}