001package org.hl7.fhir.r4.formats; 002 003/* 004 Copyright (c) 2011+, HL7, Inc. 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without modification, 008 are permitted provided that the following conditions are met: 009 010 * Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 * Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 * Neither the name of HL7 nor the names of its contributors may be used to 016 endorse or promote products derived from this software without specific 017 prior written permission. 018 019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 020 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 021 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 022 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 023 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 024 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 025 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 026 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 027 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 028 POSSIBILITY OF SUCH DAMAGE. 029 030*/ 031 032// Generated on Tue, May 12, 2020 07:48+1000 for FHIR v4.0.1 033import org.hl7.fhir.r4.model.*; 034import org.hl7.fhir.r4.utils.formats.Turtle.Complex; 035import org.hl7.fhir.utilities.Utilities; 036 037public class RdfParser extends RdfParserBase { 038 039 public RdfParser() { 040 super(); 041 } 042 043 public RdfParser(boolean allowUnknownContent) { 044 super(); 045 setAllowUnknownContent(allowUnknownContent); 046 } 047 048 protected void composeElement(Complex t, String parentType, String name, Element element, int index) { 049 if (element == null) 050 return; 051 if (index > -1) 052 t.predicate("fhir:index", Integer.toString(index)); 053 if (element.hasIdElement()) 054 composeString(t, "Element", "id", element.getIdElement(), -1); 055 for (int i = 0; i < element.getExtension().size(); i++) 056 composeExtension(t, "Element", "extension", element.getExtension().get(i), i); 057 } 058 059 protected void composeBackboneElement(Complex t, String tType, String name, BackboneElement element, int index) { 060 composeElement(t, tType, name, element, index); 061 for (int i = 0; i < element.getModifierExtension().size(); i++) 062 composeExtension(t, "Element", "modifierExtension", element.getModifierExtension().get(i), i); 063 } 064 065 private void composeEnum(Complex parent, String parentType, String name, Enumeration<? extends Enum> value, 066 int index) { 067 if (value == null) 068 return; 069 Complex t = parent.predicate("fhir:" + parentType + "." + name); 070 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 071 composeElement(t, parentType, name, value, index); 072 decorateCode(t, value); 073 } 074 075 protected void composeDate(Complex parent, String parentType, String name, DateType value, int index) { 076 if (value == null) 077 return; 078 Complex t = parent.predicate("fhir:" + parentType + "." + name); 079 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 080 composeElement(t, parentType, name, value, index); 081 } 082 083 protected void composeDateTime(Complex parent, String parentType, String name, DateTimeType value, int index) { 084 if (value == null) 085 return; 086 Complex t = parent.predicate("fhir:" + parentType + "." + name); 087 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 088 composeElement(t, parentType, name, value, index); 089 } 090 091 protected void composeCode(Complex parent, String parentType, String name, CodeType value, int index) { 092 if (value == null) 093 return; 094 Complex t = parent.predicate("fhir:" + parentType + "." + name); 095 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 096 composeElement(t, parentType, name, value, index); 097 decorateCode(t, value); 098 } 099 100 protected void composeString(Complex parent, String parentType, String name, StringType value, int index) { 101 if (value == null) 102 return; 103 Complex t = parent.predicate("fhir:" + parentType + "." + name); 104 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 105 composeElement(t, parentType, name, value, index); 106 } 107 108 protected void composeInteger(Complex parent, String parentType, String name, IntegerType value, int index) { 109 if (value == null) 110 return; 111 Complex t = parent.predicate("fhir:" + parentType + "." + name); 112 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 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:" + parentType + "." + name); 120 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 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:" + parentType + "." + name); 128 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 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:" + parentType + "." + name); 136 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 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:" + parentType + "." + name); 144 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 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:" + parentType + "." + name); 152 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 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:" + parentType + "." + name); 160 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 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:" + parentType + "." + name); 168 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 169 composeElement(t, parentType, name, value, index); 170 } 171 172 protected void composeBase64Binary(Complex parent, String parentType, String name, Base64BinaryType value, 173 int index) { 174 if (value == null) 175 return; 176 Complex t = parent.predicate("fhir:" + parentType + "." + name); 177 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 178 composeElement(t, parentType, name, value, index); 179 } 180 181 protected void composeUnsignedInt(Complex parent, String parentType, String name, UnsignedIntType value, int index) { 182 if (value == null) 183 return; 184 Complex t = parent.predicate("fhir:" + parentType + "." + name); 185 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 186 composeElement(t, parentType, name, value, index); 187 } 188 189 protected void composeMarkdown(Complex parent, String parentType, String name, MarkdownType value, int index) { 190 if (value == null) 191 return; 192 Complex t = parent.predicate("fhir:" + parentType + "." + name); 193 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 194 composeElement(t, parentType, name, value, index); 195 } 196 197 protected void composeTime(Complex parent, String parentType, String name, TimeType value, int index) { 198 if (value == null) 199 return; 200 Complex t = parent.predicate("fhir:" + parentType + "." + name); 201 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 202 composeElement(t, parentType, name, value, index); 203 } 204 205 protected void composeId(Complex parent, String parentType, String name, IdType value, int index) { 206 if (value == null) 207 return; 208 Complex t = parent.predicate("fhir:" + parentType + "." + name); 209 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 210 composeElement(t, parentType, name, value, index); 211 } 212 213 protected void composePositiveInt(Complex parent, String parentType, String name, PositiveIntType value, int index) { 214 if (value == null) 215 return; 216 Complex t = parent.predicate("fhir:" + parentType + "." + name); 217 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 218 composeElement(t, parentType, name, value, index); 219 } 220 221 protected void composeDecimal(Complex parent, String parentType, String name, DecimalType value, int index) { 222 if (value == null) 223 return; 224 Complex t = parent.predicate("fhir:" + parentType + "." + name); 225 t.predicate("fhir:value", ttlLiteral(value.asStringValue())); 226 composeElement(t, parentType, name, value, index); 227 } 228 229 protected void composeExtension(Complex parent, String parentType, String name, Extension element, int index) { 230 if (element == null) 231 return; 232 Complex t; 233 if (Utilities.noString(parentType)) 234 t = parent; 235 else { 236 t = parent.predicate("fhir:" + parentType + '.' + name); 237 } 238 composeElement(t, "Extension", name, element, index); 239 if (element.hasUrlElement()) 240 composeUri(t, "Extension", "url", element.getUrlElement(), -1); 241 if (element.hasValue()) 242 composeType(t, "Extension", "value", element.getValue(), -1); 243 } 244 245 protected void composeNarrative(Complex parent, String parentType, String name, Narrative element, int index) { 246 if (element == null) 247 return; 248 Complex t; 249 if (Utilities.noString(parentType)) 250 t = parent; 251 else { 252 t = parent.predicate("fhir:" + parentType + '.' + name); 253 } 254 composeElement(t, "Narrative", name, element, index); 255 if (element.hasStatusElement()) 256 composeEnum(t, "Narrative", "status", element.getStatusElement(), -1); 257 if (element.hasDiv()) 258 composeXhtml(t, "Narrative", "div", element.getDiv(), -1); 259 } 260 261 protected void composeMeta(Complex parent, String parentType, String name, Meta element, int index) { 262 if (element == null) 263 return; 264 Complex t; 265 if (Utilities.noString(parentType)) 266 t = parent; 267 else { 268 t = parent.predicate("fhir:" + parentType + '.' + name); 269 } 270 composeElement(t, "Meta", name, element, index); 271 if (element.hasVersionIdElement()) 272 composeId(t, "Meta", "versionId", element.getVersionIdElement(), -1); 273 if (element.hasLastUpdatedElement()) 274 composeInstant(t, "Meta", "lastUpdated", element.getLastUpdatedElement(), -1); 275 if (element.hasSourceElement()) 276 composeUri(t, "Meta", "source", element.getSourceElement(), -1); 277 for (int i = 0; i < element.getProfile().size(); i++) 278 composeCanonical(t, "Meta", "profile", element.getProfile().get(i), i); 279 for (int i = 0; i < element.getSecurity().size(); i++) 280 composeCoding(t, "Meta", "security", element.getSecurity().get(i), i); 281 for (int i = 0; i < element.getTag().size(); i++) 282 composeCoding(t, "Meta", "tag", element.getTag().get(i), i); 283 } 284 285 protected void composeAddress(Complex parent, String parentType, String name, Address element, int index) { 286 if (element == null) 287 return; 288 Complex t; 289 if (Utilities.noString(parentType)) 290 t = parent; 291 else { 292 t = parent.predicate("fhir:" + parentType + '.' + name); 293 } 294 composeElement(t, "Address", name, element, index); 295 if (element.hasUseElement()) 296 composeEnum(t, "Address", "use", element.getUseElement(), -1); 297 if (element.hasTypeElement()) 298 composeEnum(t, "Address", "type", element.getTypeElement(), -1); 299 if (element.hasTextElement()) 300 composeString(t, "Address", "text", element.getTextElement(), -1); 301 for (int i = 0; i < element.getLine().size(); i++) 302 composeString(t, "Address", "line", element.getLine().get(i), i); 303 if (element.hasCityElement()) 304 composeString(t, "Address", "city", element.getCityElement(), -1); 305 if (element.hasDistrictElement()) 306 composeString(t, "Address", "district", element.getDistrictElement(), -1); 307 if (element.hasStateElement()) 308 composeString(t, "Address", "state", element.getStateElement(), -1); 309 if (element.hasPostalCodeElement()) 310 composeString(t, "Address", "postalCode", element.getPostalCodeElement(), -1); 311 if (element.hasCountryElement()) 312 composeString(t, "Address", "country", element.getCountryElement(), -1); 313 if (element.hasPeriod()) 314 composePeriod(t, "Address", "period", element.getPeriod(), -1); 315 } 316 317 protected void composeContributor(Complex parent, String parentType, String name, Contributor element, int index) { 318 if (element == null) 319 return; 320 Complex t; 321 if (Utilities.noString(parentType)) 322 t = parent; 323 else { 324 t = parent.predicate("fhir:" + parentType + '.' + name); 325 } 326 composeElement(t, "Contributor", name, element, index); 327 if (element.hasTypeElement()) 328 composeEnum(t, "Contributor", "type", element.getTypeElement(), -1); 329 if (element.hasNameElement()) 330 composeString(t, "Contributor", "name", element.getNameElement(), -1); 331 for (int i = 0; i < element.getContact().size(); i++) 332 composeContactDetail(t, "Contributor", "contact", element.getContact().get(i), i); 333 } 334 335 protected void composeAttachment(Complex parent, String parentType, String name, Attachment element, int index) { 336 if (element == null) 337 return; 338 Complex t; 339 if (Utilities.noString(parentType)) 340 t = parent; 341 else { 342 t = parent.predicate("fhir:" + parentType + '.' + name); 343 } 344 composeElement(t, "Attachment", name, element, index); 345 if (element.hasContentTypeElement()) 346 composeCode(t, "Attachment", "contentType", element.getContentTypeElement(), -1); 347 if (element.hasLanguageElement()) 348 composeCode(t, "Attachment", "language", element.getLanguageElement(), -1); 349 if (element.hasDataElement()) 350 composeBase64Binary(t, "Attachment", "data", element.getDataElement(), -1); 351 if (element.hasUrlElement()) 352 composeUrl(t, "Attachment", "url", element.getUrlElement(), -1); 353 if (element.hasSizeElement()) 354 composeUnsignedInt(t, "Attachment", "size", element.getSizeElement(), -1); 355 if (element.hasHashElement()) 356 composeBase64Binary(t, "Attachment", "hash", element.getHashElement(), -1); 357 if (element.hasTitleElement()) 358 composeString(t, "Attachment", "title", element.getTitleElement(), -1); 359 if (element.hasCreationElement()) 360 composeDateTime(t, "Attachment", "creation", element.getCreationElement(), -1); 361 } 362 363 protected void composeCount(Complex parent, String parentType, String name, Count element, int index) { 364 if (element == null) 365 return; 366 Complex t; 367 if (Utilities.noString(parentType)) 368 t = parent; 369 else { 370 t = parent.predicate("fhir:" + parentType + '.' + name); 371 } 372 composeElement(t, "Count", name, element, index); 373 } 374 375 protected void composeDataRequirement(Complex parent, String parentType, String name, DataRequirement element, 376 int index) { 377 if (element == null) 378 return; 379 Complex t; 380 if (Utilities.noString(parentType)) 381 t = parent; 382 else { 383 t = parent.predicate("fhir:" + parentType + '.' + name); 384 } 385 composeElement(t, "DataRequirement", name, element, index); 386 if (element.hasTypeElement()) 387 composeCode(t, "DataRequirement", "type", element.getTypeElement(), -1); 388 for (int i = 0; i < element.getProfile().size(); i++) 389 composeCanonical(t, "DataRequirement", "profile", element.getProfile().get(i), i); 390 if (element.hasSubject()) 391 composeType(t, "DataRequirement", "subject", element.getSubject(), -1); 392 for (int i = 0; i < element.getMustSupport().size(); i++) 393 composeString(t, "DataRequirement", "mustSupport", element.getMustSupport().get(i), i); 394 for (int i = 0; i < element.getCodeFilter().size(); i++) 395 composeDataRequirementDataRequirementCodeFilterComponent(t, "DataRequirement", "codeFilter", 396 element.getCodeFilter().get(i), i); 397 for (int i = 0; i < element.getDateFilter().size(); i++) 398 composeDataRequirementDataRequirementDateFilterComponent(t, "DataRequirement", "dateFilter", 399 element.getDateFilter().get(i), i); 400 if (element.hasLimitElement()) 401 composePositiveInt(t, "DataRequirement", "limit", element.getLimitElement(), -1); 402 for (int i = 0; i < element.getSort().size(); i++) 403 composeDataRequirementDataRequirementSortComponent(t, "DataRequirement", "sort", element.getSort().get(i), i); 404 } 405 406 protected void composeDataRequirementDataRequirementCodeFilterComponent(Complex parent, String parentType, 407 String name, DataRequirement.DataRequirementCodeFilterComponent element, int index) { 408 if (element == null) 409 return; 410 Complex t; 411 if (Utilities.noString(parentType)) 412 t = parent; 413 else { 414 t = parent.predicate("fhir:" + parentType + '.' + name); 415 } 416 composeElement(t, "codeFilter", name, element, index); 417 if (element.hasPathElement()) 418 composeString(t, "DataRequirement", "path", element.getPathElement(), -1); 419 if (element.hasSearchParamElement()) 420 composeString(t, "DataRequirement", "searchParam", element.getSearchParamElement(), -1); 421 if (element.hasValueSetElement()) 422 composeCanonical(t, "DataRequirement", "valueSet", element.getValueSetElement(), -1); 423 for (int i = 0; i < element.getCode().size(); i++) 424 composeCoding(t, "DataRequirement", "code", element.getCode().get(i), i); 425 } 426 427 protected void composeDataRequirementDataRequirementDateFilterComponent(Complex parent, String parentType, 428 String name, DataRequirement.DataRequirementDateFilterComponent element, int index) { 429 if (element == null) 430 return; 431 Complex t; 432 if (Utilities.noString(parentType)) 433 t = parent; 434 else { 435 t = parent.predicate("fhir:" + parentType + '.' + name); 436 } 437 composeElement(t, "dateFilter", name, element, index); 438 if (element.hasPathElement()) 439 composeString(t, "DataRequirement", "path", element.getPathElement(), -1); 440 if (element.hasSearchParamElement()) 441 composeString(t, "DataRequirement", "searchParam", element.getSearchParamElement(), -1); 442 if (element.hasValue()) 443 composeType(t, "DataRequirement", "value", element.getValue(), -1); 444 } 445 446 protected void composeDataRequirementDataRequirementSortComponent(Complex parent, String parentType, String name, 447 DataRequirement.DataRequirementSortComponent element, int index) { 448 if (element == null) 449 return; 450 Complex t; 451 if (Utilities.noString(parentType)) 452 t = parent; 453 else { 454 t = parent.predicate("fhir:" + parentType + '.' + name); 455 } 456 composeElement(t, "sort", name, element, index); 457 if (element.hasPathElement()) 458 composeString(t, "DataRequirement", "path", element.getPathElement(), -1); 459 if (element.hasDirectionElement()) 460 composeEnum(t, "DataRequirement", "direction", element.getDirectionElement(), -1); 461 } 462 463 protected void composeDosage(Complex parent, String parentType, String name, Dosage element, int index) { 464 if (element == null) 465 return; 466 Complex t; 467 if (Utilities.noString(parentType)) 468 t = parent; 469 else { 470 t = parent.predicate("fhir:" + parentType + '.' + name); 471 } 472 composeElement(t, "Dosage", name, element, index); 473 if (element.hasSequenceElement()) 474 composeInteger(t, "Dosage", "sequence", element.getSequenceElement(), -1); 475 if (element.hasTextElement()) 476 composeString(t, "Dosage", "text", element.getTextElement(), -1); 477 for (int i = 0; i < element.getAdditionalInstruction().size(); i++) 478 composeCodeableConcept(t, "Dosage", "additionalInstruction", element.getAdditionalInstruction().get(i), i); 479 if (element.hasPatientInstructionElement()) 480 composeString(t, "Dosage", "patientInstruction", element.getPatientInstructionElement(), -1); 481 if (element.hasTiming()) 482 composeTiming(t, "Dosage", "timing", element.getTiming(), -1); 483 if (element.hasAsNeeded()) 484 composeType(t, "Dosage", "asNeeded", element.getAsNeeded(), -1); 485 if (element.hasSite()) 486 composeCodeableConcept(t, "Dosage", "site", element.getSite(), -1); 487 if (element.hasRoute()) 488 composeCodeableConcept(t, "Dosage", "route", element.getRoute(), -1); 489 if (element.hasMethod()) 490 composeCodeableConcept(t, "Dosage", "method", element.getMethod(), -1); 491 for (int i = 0; i < element.getDoseAndRate().size(); i++) 492 composeDosageDosageDoseAndRateComponent(t, "Dosage", "doseAndRate", element.getDoseAndRate().get(i), i); 493 if (element.hasMaxDosePerPeriod()) 494 composeRatio(t, "Dosage", "maxDosePerPeriod", element.getMaxDosePerPeriod(), -1); 495 if (element.hasMaxDosePerAdministration()) 496 composeQuantity(t, "Dosage", "maxDosePerAdministration", element.getMaxDosePerAdministration(), -1); 497 if (element.hasMaxDosePerLifetime()) 498 composeQuantity(t, "Dosage", "maxDosePerLifetime", element.getMaxDosePerLifetime(), -1); 499 } 500 501 protected void composeDosageDosageDoseAndRateComponent(Complex parent, String parentType, String name, 502 Dosage.DosageDoseAndRateComponent element, int index) { 503 if (element == null) 504 return; 505 Complex t; 506 if (Utilities.noString(parentType)) 507 t = parent; 508 else { 509 t = parent.predicate("fhir:" + parentType + '.' + name); 510 } 511 composeElement(t, "doseAndRate", name, element, index); 512 if (element.hasType()) 513 composeCodeableConcept(t, "Dosage", "type", element.getType(), -1); 514 if (element.hasDose()) 515 composeType(t, "Dosage", "dose", element.getDose(), -1); 516 if (element.hasRate()) 517 composeType(t, "Dosage", "rate", element.getRate(), -1); 518 } 519 520 protected void composeMoney(Complex parent, String parentType, String name, Money element, int index) { 521 if (element == null) 522 return; 523 Complex t; 524 if (Utilities.noString(parentType)) 525 t = parent; 526 else { 527 t = parent.predicate("fhir:" + parentType + '.' + name); 528 } 529 composeElement(t, "Money", name, element, index); 530 if (element.hasValueElement()) 531 composeDecimal(t, "Money", "value", element.getValueElement(), -1); 532 if (element.hasCurrencyElement()) 533 composeCode(t, "Money", "currency", element.getCurrencyElement(), -1); 534 } 535 536 protected void composeHumanName(Complex parent, String parentType, String name, HumanName element, int index) { 537 if (element == null) 538 return; 539 Complex t; 540 if (Utilities.noString(parentType)) 541 t = parent; 542 else { 543 t = parent.predicate("fhir:" + parentType + '.' + name); 544 } 545 composeElement(t, "HumanName", name, element, index); 546 if (element.hasUseElement()) 547 composeEnum(t, "HumanName", "use", element.getUseElement(), -1); 548 if (element.hasTextElement()) 549 composeString(t, "HumanName", "text", element.getTextElement(), -1); 550 if (element.hasFamilyElement()) 551 composeString(t, "HumanName", "family", element.getFamilyElement(), -1); 552 for (int i = 0; i < element.getGiven().size(); i++) 553 composeString(t, "HumanName", "given", element.getGiven().get(i), i); 554 for (int i = 0; i < element.getPrefix().size(); i++) 555 composeString(t, "HumanName", "prefix", element.getPrefix().get(i), i); 556 for (int i = 0; i < element.getSuffix().size(); i++) 557 composeString(t, "HumanName", "suffix", element.getSuffix().get(i), i); 558 if (element.hasPeriod()) 559 composePeriod(t, "HumanName", "period", element.getPeriod(), -1); 560 } 561 562 protected void composeContactPoint(Complex parent, String parentType, String name, ContactPoint element, int index) { 563 if (element == null) 564 return; 565 Complex t; 566 if (Utilities.noString(parentType)) 567 t = parent; 568 else { 569 t = parent.predicate("fhir:" + parentType + '.' + name); 570 } 571 composeElement(t, "ContactPoint", name, element, index); 572 if (element.hasSystemElement()) 573 composeEnum(t, "ContactPoint", "system", element.getSystemElement(), -1); 574 if (element.hasValueElement()) 575 composeString(t, "ContactPoint", "value", element.getValueElement(), -1); 576 if (element.hasUseElement()) 577 composeEnum(t, "ContactPoint", "use", element.getUseElement(), -1); 578 if (element.hasRankElement()) 579 composePositiveInt(t, "ContactPoint", "rank", element.getRankElement(), -1); 580 if (element.hasPeriod()) 581 composePeriod(t, "ContactPoint", "period", element.getPeriod(), -1); 582 } 583 584 protected void composeMarketingStatus(Complex parent, String parentType, String name, MarketingStatus element, 585 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:" + parentType + '.' + name); 593 } 594 composeElement(t, "MarketingStatus", name, element, index); 595 if (element.hasCountry()) 596 composeCodeableConcept(t, "MarketingStatus", "country", element.getCountry(), -1); 597 if (element.hasJurisdiction()) 598 composeCodeableConcept(t, "MarketingStatus", "jurisdiction", element.getJurisdiction(), -1); 599 if (element.hasStatus()) 600 composeCodeableConcept(t, "MarketingStatus", "status", element.getStatus(), -1); 601 if (element.hasDateRange()) 602 composePeriod(t, "MarketingStatus", "dateRange", element.getDateRange(), -1); 603 if (element.hasRestoreDateElement()) 604 composeDateTime(t, "MarketingStatus", "restoreDate", element.getRestoreDateElement(), -1); 605 } 606 607 protected void composeIdentifier(Complex parent, String parentType, String name, Identifier element, int index) { 608 if (element == null) 609 return; 610 Complex t; 611 if (Utilities.noString(parentType)) 612 t = parent; 613 else { 614 t = parent.predicate("fhir:" + parentType + '.' + name); 615 } 616 composeElement(t, "Identifier", name, element, index); 617 if (element.hasUseElement()) 618 composeEnum(t, "Identifier", "use", element.getUseElement(), -1); 619 if (element.hasType()) 620 composeCodeableConcept(t, "Identifier", "type", element.getType(), -1); 621 if (element.hasSystemElement()) 622 composeUri(t, "Identifier", "system", element.getSystemElement(), -1); 623 if (element.hasValueElement()) 624 composeString(t, "Identifier", "value", element.getValueElement(), -1); 625 if (element.hasPeriod()) 626 composePeriod(t, "Identifier", "period", element.getPeriod(), -1); 627 if (element.hasAssigner()) 628 composeReference(t, "Identifier", "assigner", element.getAssigner(), -1); 629 } 630 631 protected void composeSubstanceAmount(Complex parent, String parentType, String name, SubstanceAmount element, 632 int index) { 633 if (element == null) 634 return; 635 Complex t; 636 if (Utilities.noString(parentType)) 637 t = parent; 638 else { 639 t = parent.predicate("fhir:" + parentType + '.' + name); 640 } 641 composeElement(t, "SubstanceAmount", name, element, index); 642 if (element.hasAmount()) 643 composeType(t, "SubstanceAmount", "amount", element.getAmount(), -1); 644 if (element.hasAmountType()) 645 composeCodeableConcept(t, "SubstanceAmount", "amountType", element.getAmountType(), -1); 646 if (element.hasAmountTextElement()) 647 composeString(t, "SubstanceAmount", "amountText", element.getAmountTextElement(), -1); 648 if (element.hasReferenceRange()) 649 composeSubstanceAmountSubstanceAmountReferenceRangeComponent(t, "SubstanceAmount", "referenceRange", 650 element.getReferenceRange(), -1); 651 } 652 653 protected void composeSubstanceAmountSubstanceAmountReferenceRangeComponent(Complex parent, String parentType, 654 String name, SubstanceAmount.SubstanceAmountReferenceRangeComponent element, int index) { 655 if (element == null) 656 return; 657 Complex t; 658 if (Utilities.noString(parentType)) 659 t = parent; 660 else { 661 t = parent.predicate("fhir:" + parentType + '.' + name); 662 } 663 composeElement(t, "referenceRange", name, element, index); 664 if (element.hasLowLimit()) 665 composeQuantity(t, "SubstanceAmount", "lowLimit", element.getLowLimit(), -1); 666 if (element.hasHighLimit()) 667 composeQuantity(t, "SubstanceAmount", "highLimit", element.getHighLimit(), -1); 668 } 669 670 protected void composeCoding(Complex parent, String parentType, String name, Coding element, int index) { 671 if (element == null) 672 return; 673 Complex t; 674 if (Utilities.noString(parentType)) 675 t = parent; 676 else { 677 t = parent.predicate("fhir:" + parentType + '.' + name); 678 } 679 composeElement(t, "Coding", name, element, index); 680 decorateCoding(t, element); 681 if (element.hasSystemElement()) 682 composeUri(t, "Coding", "system", element.getSystemElement(), -1); 683 if (element.hasVersionElement()) 684 composeString(t, "Coding", "version", element.getVersionElement(), -1); 685 if (element.hasCodeElement()) 686 composeCode(t, "Coding", "code", element.getCodeElement(), -1); 687 if (element.hasDisplayElement()) 688 composeString(t, "Coding", "display", element.getDisplayElement(), -1); 689 if (element.hasUserSelectedElement()) 690 composeBoolean(t, "Coding", "userSelected", element.getUserSelectedElement(), -1); 691 } 692 693 protected void composeSampledData(Complex parent, String parentType, String name, SampledData 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:" + parentType + '.' + name); 701 } 702 composeElement(t, "SampledData", name, element, index); 703 if (element.hasOrigin()) 704 composeQuantity(t, "SampledData", "origin", element.getOrigin(), -1); 705 if (element.hasPeriodElement()) 706 composeDecimal(t, "SampledData", "period", element.getPeriodElement(), -1); 707 if (element.hasFactorElement()) 708 composeDecimal(t, "SampledData", "factor", element.getFactorElement(), -1); 709 if (element.hasLowerLimitElement()) 710 composeDecimal(t, "SampledData", "lowerLimit", element.getLowerLimitElement(), -1); 711 if (element.hasUpperLimitElement()) 712 composeDecimal(t, "SampledData", "upperLimit", element.getUpperLimitElement(), -1); 713 if (element.hasDimensionsElement()) 714 composePositiveInt(t, "SampledData", "dimensions", element.getDimensionsElement(), -1); 715 if (element.hasDataElement()) 716 composeString(t, "SampledData", "data", element.getDataElement(), -1); 717 } 718 719 protected void composePopulation(Complex parent, String parentType, String name, Population element, int index) { 720 if (element == null) 721 return; 722 Complex t; 723 if (Utilities.noString(parentType)) 724 t = parent; 725 else { 726 t = parent.predicate("fhir:" + parentType + '.' + name); 727 } 728 composeElement(t, "Population", name, element, index); 729 if (element.hasAge()) 730 composeType(t, "Population", "age", element.getAge(), -1); 731 if (element.hasGender()) 732 composeCodeableConcept(t, "Population", "gender", element.getGender(), -1); 733 if (element.hasRace()) 734 composeCodeableConcept(t, "Population", "race", element.getRace(), -1); 735 if (element.hasPhysiologicalCondition()) 736 composeCodeableConcept(t, "Population", "physiologicalCondition", element.getPhysiologicalCondition(), -1); 737 } 738 739 protected void composeRatio(Complex parent, String parentType, String name, Ratio element, int index) { 740 if (element == null) 741 return; 742 Complex t; 743 if (Utilities.noString(parentType)) 744 t = parent; 745 else { 746 t = parent.predicate("fhir:" + parentType + '.' + name); 747 } 748 composeElement(t, "Ratio", name, element, index); 749 if (element.hasNumerator()) 750 composeQuantity(t, "Ratio", "numerator", element.getNumerator(), -1); 751 if (element.hasDenominator()) 752 composeQuantity(t, "Ratio", "denominator", element.getDenominator(), -1); 753 } 754 755 protected void composeDistance(Complex parent, String parentType, String name, Distance element, int index) { 756 if (element == null) 757 return; 758 Complex t; 759 if (Utilities.noString(parentType)) 760 t = parent; 761 else { 762 t = parent.predicate("fhir:" + parentType + '.' + name); 763 } 764 composeElement(t, "Distance", name, element, index); 765 } 766 767 protected void composeAge(Complex parent, String parentType, String name, Age element, int index) { 768 if (element == null) 769 return; 770 Complex t; 771 if (Utilities.noString(parentType)) 772 t = parent; 773 else { 774 t = parent.predicate("fhir:" + parentType + '.' + name); 775 } 776 composeElement(t, "Age", name, element, index); 777 } 778 779 protected void composeReference(Complex parent, String parentType, String name, Reference element, int index) { 780 if (element == null) 781 return; 782 Complex t; 783 if (Utilities.noString(parentType)) 784 t = parent; 785 else { 786 t = parent.predicate("fhir:" + parentType + '.' + name); 787 } 788 composeElement(t, "Reference", name, element, index); 789 if (element.hasReferenceElement()) 790 composeString(t, "Reference", "reference", element.getReferenceElement_(), -1); 791 if (element.hasTypeElement()) 792 composeUri(t, "Reference", "type", element.getTypeElement(), -1); 793 if (element.hasIdentifier()) 794 composeIdentifier(t, "Reference", "identifier", element.getIdentifier(), -1); 795 if (element.hasDisplayElement()) 796 composeString(t, "Reference", "display", element.getDisplayElement(), -1); 797 } 798 799 protected void composeTriggerDefinition(Complex parent, String parentType, String name, TriggerDefinition element, 800 int index) { 801 if (element == null) 802 return; 803 Complex t; 804 if (Utilities.noString(parentType)) 805 t = parent; 806 else { 807 t = parent.predicate("fhir:" + parentType + '.' + name); 808 } 809 composeElement(t, "TriggerDefinition", name, element, index); 810 if (element.hasTypeElement()) 811 composeEnum(t, "TriggerDefinition", "type", element.getTypeElement(), -1); 812 if (element.hasNameElement()) 813 composeString(t, "TriggerDefinition", "name", element.getNameElement(), -1); 814 if (element.hasTiming()) 815 composeType(t, "TriggerDefinition", "timing", element.getTiming(), -1); 816 for (int i = 0; i < element.getData().size(); i++) 817 composeDataRequirement(t, "TriggerDefinition", "data", element.getData().get(i), i); 818 if (element.hasCondition()) 819 composeExpression(t, "TriggerDefinition", "condition", element.getCondition(), -1); 820 } 821 822 protected void composeQuantity(Complex parent, String parentType, String name, Quantity element, int index) { 823 if (element == null) 824 return; 825 Complex t; 826 if (Utilities.noString(parentType)) 827 t = parent; 828 else { 829 t = parent.predicate("fhir:" + parentType + '.' + name); 830 } 831 composeElement(t, "Quantity", name, element, index); 832 if (element.hasValueElement()) 833 composeDecimal(t, "Quantity", "value", element.getValueElement(), -1); 834 if (element.hasComparatorElement()) 835 composeEnum(t, "Quantity", "comparator", element.getComparatorElement(), -1); 836 if (element.hasUnitElement()) 837 composeString(t, "Quantity", "unit", element.getUnitElement(), -1); 838 if (element.hasSystemElement()) 839 composeUri(t, "Quantity", "system", element.getSystemElement(), -1); 840 if (element.hasCodeElement()) 841 composeCode(t, "Quantity", "code", element.getCodeElement(), -1); 842 } 843 844 protected void composePeriod(Complex parent, String parentType, String name, Period element, int index) { 845 if (element == null) 846 return; 847 Complex t; 848 if (Utilities.noString(parentType)) 849 t = parent; 850 else { 851 t = parent.predicate("fhir:" + parentType + '.' + name); 852 } 853 composeElement(t, "Period", name, element, index); 854 if (element.hasStartElement()) 855 composeDateTime(t, "Period", "start", element.getStartElement(), -1); 856 if (element.hasEndElement()) 857 composeDateTime(t, "Period", "end", element.getEndElement(), -1); 858 } 859 860 protected void composeDuration(Complex parent, String parentType, String name, Duration element, int index) { 861 if (element == null) 862 return; 863 Complex t; 864 if (Utilities.noString(parentType)) 865 t = parent; 866 else { 867 t = parent.predicate("fhir:" + parentType + '.' + name); 868 } 869 composeElement(t, "Duration", name, element, index); 870 } 871 872 protected void composeRange(Complex parent, String parentType, String name, Range element, int index) { 873 if (element == null) 874 return; 875 Complex t; 876 if (Utilities.noString(parentType)) 877 t = parent; 878 else { 879 t = parent.predicate("fhir:" + parentType + '.' + name); 880 } 881 composeElement(t, "Range", name, element, index); 882 if (element.hasLow()) 883 composeQuantity(t, "Range", "low", element.getLow(), -1); 884 if (element.hasHigh()) 885 composeQuantity(t, "Range", "high", element.getHigh(), -1); 886 } 887 888 protected void composeRelatedArtifact(Complex parent, String parentType, String name, RelatedArtifact element, 889 int index) { 890 if (element == null) 891 return; 892 Complex t; 893 if (Utilities.noString(parentType)) 894 t = parent; 895 else { 896 t = parent.predicate("fhir:" + parentType + '.' + name); 897 } 898 composeElement(t, "RelatedArtifact", name, element, index); 899 if (element.hasTypeElement()) 900 composeEnum(t, "RelatedArtifact", "type", element.getTypeElement(), -1); 901 if (element.hasLabelElement()) 902 composeString(t, "RelatedArtifact", "label", element.getLabelElement(), -1); 903 if (element.hasDisplayElement()) 904 composeString(t, "RelatedArtifact", "display", element.getDisplayElement(), -1); 905 if (element.hasCitationElement()) 906 composeMarkdown(t, "RelatedArtifact", "citation", element.getCitationElement(), -1); 907 if (element.hasUrlElement()) 908 composeUrl(t, "RelatedArtifact", "url", element.getUrlElement(), -1); 909 if (element.hasDocument()) 910 composeAttachment(t, "RelatedArtifact", "document", element.getDocument(), -1); 911 if (element.hasResourceElement()) 912 composeCanonical(t, "RelatedArtifact", "resource", element.getResourceElement(), -1); 913 } 914 915 protected void composeAnnotation(Complex parent, String parentType, String name, Annotation element, int index) { 916 if (element == null) 917 return; 918 Complex t; 919 if (Utilities.noString(parentType)) 920 t = parent; 921 else { 922 t = parent.predicate("fhir:" + parentType + '.' + name); 923 } 924 composeElement(t, "Annotation", name, element, index); 925 if (element.hasAuthor()) 926 composeType(t, "Annotation", "author", element.getAuthor(), -1); 927 if (element.hasTimeElement()) 928 composeDateTime(t, "Annotation", "time", element.getTimeElement(), -1); 929 if (element.hasTextElement()) 930 composeMarkdown(t, "Annotation", "text", element.getTextElement(), -1); 931 } 932 933 protected void composeProductShelfLife(Complex parent, String parentType, String name, ProductShelfLife element, 934 int index) { 935 if (element == null) 936 return; 937 Complex t; 938 if (Utilities.noString(parentType)) 939 t = parent; 940 else { 941 t = parent.predicate("fhir:" + parentType + '.' + name); 942 } 943 composeElement(t, "ProductShelfLife", name, element, index); 944 if (element.hasIdentifier()) 945 composeIdentifier(t, "ProductShelfLife", "identifier", element.getIdentifier(), -1); 946 if (element.hasType()) 947 composeCodeableConcept(t, "ProductShelfLife", "type", element.getType(), -1); 948 if (element.hasPeriod()) 949 composeQuantity(t, "ProductShelfLife", "period", element.getPeriod(), -1); 950 for (int i = 0; i < element.getSpecialPrecautionsForStorage().size(); i++) 951 composeCodeableConcept(t, "ProductShelfLife", "specialPrecautionsForStorage", 952 element.getSpecialPrecautionsForStorage().get(i), i); 953 } 954 955 protected void composeContactDetail(Complex parent, String parentType, String name, ContactDetail element, 956 int index) { 957 if (element == null) 958 return; 959 Complex t; 960 if (Utilities.noString(parentType)) 961 t = parent; 962 else { 963 t = parent.predicate("fhir:" + parentType + '.' + name); 964 } 965 composeElement(t, "ContactDetail", name, element, index); 966 if (element.hasNameElement()) 967 composeString(t, "ContactDetail", "name", element.getNameElement(), -1); 968 for (int i = 0; i < element.getTelecom().size(); i++) 969 composeContactPoint(t, "ContactDetail", "telecom", element.getTelecom().get(i), i); 970 } 971 972 protected void composeUsageContext(Complex parent, String parentType, String name, UsageContext 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:" + parentType + '.' + name); 980 } 981 composeElement(t, "UsageContext", name, element, index); 982 if (element.hasCode()) 983 composeCoding(t, "UsageContext", "code", element.getCode(), -1); 984 if (element.hasValue()) 985 composeType(t, "UsageContext", "value", element.getValue(), -1); 986 } 987 988 protected void composeExpression(Complex parent, String parentType, String name, Expression element, int index) { 989 if (element == null) 990 return; 991 Complex t; 992 if (Utilities.noString(parentType)) 993 t = parent; 994 else { 995 t = parent.predicate("fhir:" + parentType + '.' + name); 996 } 997 composeElement(t, "Expression", name, element, index); 998 if (element.hasDescriptionElement()) 999 composeString(t, "Expression", "description", element.getDescriptionElement(), -1); 1000 if (element.hasNameElement()) 1001 composeId(t, "Expression", "name", element.getNameElement(), -1); 1002 if (element.hasLanguageElement()) 1003 composeCode(t, "Expression", "language", element.getLanguageElement(), -1); 1004 if (element.hasExpressionElement()) 1005 composeString(t, "Expression", "expression", element.getExpressionElement(), -1); 1006 if (element.hasReferenceElement()) 1007 composeUri(t, "Expression", "reference", element.getReferenceElement(), -1); 1008 } 1009 1010 protected void composeSignature(Complex parent, String parentType, String name, Signature element, int index) { 1011 if (element == null) 1012 return; 1013 Complex t; 1014 if (Utilities.noString(parentType)) 1015 t = parent; 1016 else { 1017 t = parent.predicate("fhir:" + parentType + '.' + name); 1018 } 1019 composeElement(t, "Signature", name, element, index); 1020 for (int i = 0; i < element.getType().size(); i++) 1021 composeCoding(t, "Signature", "type", element.getType().get(i), i); 1022 if (element.hasWhenElement()) 1023 composeInstant(t, "Signature", "when", element.getWhenElement(), -1); 1024 if (element.hasWho()) 1025 composeReference(t, "Signature", "who", element.getWho(), -1); 1026 if (element.hasOnBehalfOf()) 1027 composeReference(t, "Signature", "onBehalfOf", element.getOnBehalfOf(), -1); 1028 if (element.hasTargetFormatElement()) 1029 composeCode(t, "Signature", "targetFormat", element.getTargetFormatElement(), -1); 1030 if (element.hasSigFormatElement()) 1031 composeCode(t, "Signature", "sigFormat", element.getSigFormatElement(), -1); 1032 if (element.hasDataElement()) 1033 composeBase64Binary(t, "Signature", "data", element.getDataElement(), -1); 1034 } 1035 1036 protected void composeTiming(Complex parent, String parentType, String name, Timing element, int index) { 1037 if (element == null) 1038 return; 1039 Complex t; 1040 if (Utilities.noString(parentType)) 1041 t = parent; 1042 else { 1043 t = parent.predicate("fhir:" + parentType + '.' + name); 1044 } 1045 composeElement(t, "Timing", name, element, index); 1046 for (int i = 0; i < element.getEvent().size(); i++) 1047 composeDateTime(t, "Timing", "event", element.getEvent().get(i), i); 1048 if (element.hasRepeat()) 1049 composeTimingTimingRepeatComponent(t, "Timing", "repeat", element.getRepeat(), -1); 1050 if (element.hasCode()) 1051 composeCodeableConcept(t, "Timing", "code", element.getCode(), -1); 1052 } 1053 1054 protected void composeTimingTimingRepeatComponent(Complex parent, String parentType, String name, 1055 Timing.TimingRepeatComponent element, int index) { 1056 if (element == null) 1057 return; 1058 Complex t; 1059 if (Utilities.noString(parentType)) 1060 t = parent; 1061 else { 1062 t = parent.predicate("fhir:" + parentType + '.' + name); 1063 } 1064 composeElement(t, "repeat", name, element, index); 1065 if (element.hasBounds()) 1066 composeType(t, "Timing", "bounds", element.getBounds(), -1); 1067 if (element.hasCountElement()) 1068 composePositiveInt(t, "Timing", "count", element.getCountElement(), -1); 1069 if (element.hasCountMaxElement()) 1070 composePositiveInt(t, "Timing", "countMax", element.getCountMaxElement(), -1); 1071 if (element.hasDurationElement()) 1072 composeDecimal(t, "Timing", "duration", element.getDurationElement(), -1); 1073 if (element.hasDurationMaxElement()) 1074 composeDecimal(t, "Timing", "durationMax", element.getDurationMaxElement(), -1); 1075 if (element.hasDurationUnitElement()) 1076 composeEnum(t, "Timing", "durationUnit", element.getDurationUnitElement(), -1); 1077 if (element.hasFrequencyElement()) 1078 composePositiveInt(t, "Timing", "frequency", element.getFrequencyElement(), -1); 1079 if (element.hasFrequencyMaxElement()) 1080 composePositiveInt(t, "Timing", "frequencyMax", element.getFrequencyMaxElement(), -1); 1081 if (element.hasPeriodElement()) 1082 composeDecimal(t, "Timing", "period", element.getPeriodElement(), -1); 1083 if (element.hasPeriodMaxElement()) 1084 composeDecimal(t, "Timing", "periodMax", element.getPeriodMaxElement(), -1); 1085 if (element.hasPeriodUnitElement()) 1086 composeEnum(t, "Timing", "periodUnit", element.getPeriodUnitElement(), -1); 1087 for (int i = 0; i < element.getDayOfWeek().size(); i++) 1088 composeEnum(t, "Timing", "dayOfWeek", element.getDayOfWeek().get(i), i); 1089 for (int i = 0; i < element.getTimeOfDay().size(); i++) 1090 composeTime(t, "Timing", "timeOfDay", element.getTimeOfDay().get(i), i); 1091 for (int i = 0; i < element.getWhen().size(); i++) 1092 composeEnum(t, "Timing", "when", element.getWhen().get(i), i); 1093 if (element.hasOffsetElement()) 1094 composeUnsignedInt(t, "Timing", "offset", element.getOffsetElement(), -1); 1095 } 1096 1097 protected void composeProdCharacteristic(Complex parent, String parentType, String name, ProdCharacteristic element, 1098 int index) { 1099 if (element == null) 1100 return; 1101 Complex t; 1102 if (Utilities.noString(parentType)) 1103 t = parent; 1104 else { 1105 t = parent.predicate("fhir:" + parentType + '.' + name); 1106 } 1107 composeElement(t, "ProdCharacteristic", name, element, index); 1108 if (element.hasHeight()) 1109 composeQuantity(t, "ProdCharacteristic", "height", element.getHeight(), -1); 1110 if (element.hasWidth()) 1111 composeQuantity(t, "ProdCharacteristic", "width", element.getWidth(), -1); 1112 if (element.hasDepth()) 1113 composeQuantity(t, "ProdCharacteristic", "depth", element.getDepth(), -1); 1114 if (element.hasWeight()) 1115 composeQuantity(t, "ProdCharacteristic", "weight", element.getWeight(), -1); 1116 if (element.hasNominalVolume()) 1117 composeQuantity(t, "ProdCharacteristic", "nominalVolume", element.getNominalVolume(), -1); 1118 if (element.hasExternalDiameter()) 1119 composeQuantity(t, "ProdCharacteristic", "externalDiameter", element.getExternalDiameter(), -1); 1120 if (element.hasShapeElement()) 1121 composeString(t, "ProdCharacteristic", "shape", element.getShapeElement(), -1); 1122 for (int i = 0; i < element.getColor().size(); i++) 1123 composeString(t, "ProdCharacteristic", "color", element.getColor().get(i), i); 1124 for (int i = 0; i < element.getImprint().size(); i++) 1125 composeString(t, "ProdCharacteristic", "imprint", element.getImprint().get(i), i); 1126 for (int i = 0; i < element.getImage().size(); i++) 1127 composeAttachment(t, "ProdCharacteristic", "image", element.getImage().get(i), i); 1128 if (element.hasScoring()) 1129 composeCodeableConcept(t, "ProdCharacteristic", "scoring", element.getScoring(), -1); 1130 } 1131 1132 protected void composeCodeableConcept(Complex parent, String parentType, String name, CodeableConcept element, 1133 int index) { 1134 if (element == null) 1135 return; 1136 Complex t; 1137 if (Utilities.noString(parentType)) 1138 t = parent; 1139 else { 1140 t = parent.predicate("fhir:" + parentType + '.' + name); 1141 } 1142 composeElement(t, "CodeableConcept", name, element, index); 1143 decorateCodeableConcept(t, element); 1144 for (int i = 0; i < element.getCoding().size(); i++) 1145 composeCoding(t, "CodeableConcept", "coding", element.getCoding().get(i), i); 1146 if (element.hasTextElement()) 1147 composeString(t, "CodeableConcept", "text", element.getTextElement(), -1); 1148 } 1149 1150 protected void composeParameterDefinition(Complex parent, String parentType, String name, ParameterDefinition element, 1151 int index) { 1152 if (element == null) 1153 return; 1154 Complex t; 1155 if (Utilities.noString(parentType)) 1156 t = parent; 1157 else { 1158 t = parent.predicate("fhir:" + parentType + '.' + name); 1159 } 1160 composeElement(t, "ParameterDefinition", name, element, index); 1161 if (element.hasNameElement()) 1162 composeCode(t, "ParameterDefinition", "name", element.getNameElement(), -1); 1163 if (element.hasUseElement()) 1164 composeEnum(t, "ParameterDefinition", "use", element.getUseElement(), -1); 1165 if (element.hasMinElement()) 1166 composeInteger(t, "ParameterDefinition", "min", element.getMinElement(), -1); 1167 if (element.hasMaxElement()) 1168 composeString(t, "ParameterDefinition", "max", element.getMaxElement(), -1); 1169 if (element.hasDocumentationElement()) 1170 composeString(t, "ParameterDefinition", "documentation", element.getDocumentationElement(), -1); 1171 if (element.hasTypeElement()) 1172 composeCode(t, "ParameterDefinition", "type", element.getTypeElement(), -1); 1173 if (element.hasProfileElement()) 1174 composeCanonical(t, "ParameterDefinition", "profile", element.getProfileElement(), -1); 1175 } 1176 1177 protected void composeElementDefinition(Complex parent, String parentType, String name, ElementDefinition element, 1178 int index) { 1179 if (element == null) 1180 return; 1181 Complex t; 1182 if (Utilities.noString(parentType)) 1183 t = parent; 1184 else { 1185 t = parent.predicate("fhir:" + parentType + '.' + name); 1186 } 1187 composeElement(t, "ElementDefinition", name, element, index); 1188 if (element.hasPathElement()) 1189 composeString(t, "ElementDefinition", "path", element.getPathElement(), -1); 1190 for (int i = 0; i < element.getRepresentation().size(); i++) 1191 composeEnum(t, "ElementDefinition", "representation", element.getRepresentation().get(i), i); 1192 if (element.hasSliceNameElement()) 1193 composeString(t, "ElementDefinition", "sliceName", element.getSliceNameElement(), -1); 1194 if (element.hasSliceIsConstrainingElement()) 1195 composeBoolean(t, "ElementDefinition", "sliceIsConstraining", element.getSliceIsConstrainingElement(), -1); 1196 if (element.hasLabelElement()) 1197 composeString(t, "ElementDefinition", "label", element.getLabelElement(), -1); 1198 for (int i = 0; i < element.getCode().size(); i++) 1199 composeCoding(t, "ElementDefinition", "code", element.getCode().get(i), i); 1200 if (element.hasSlicing()) 1201 composeElementDefinitionElementDefinitionSlicingComponent(t, "ElementDefinition", "slicing", element.getSlicing(), 1202 -1); 1203 if (element.hasShortElement()) 1204 composeString(t, "ElementDefinition", "short", element.getShortElement(), -1); 1205 if (element.hasDefinitionElement()) 1206 composeMarkdown(t, "ElementDefinition", "definition", element.getDefinitionElement(), -1); 1207 if (element.hasCommentElement()) 1208 composeMarkdown(t, "ElementDefinition", "comment", element.getCommentElement(), -1); 1209 if (element.hasRequirementsElement()) 1210 composeMarkdown(t, "ElementDefinition", "requirements", element.getRequirementsElement(), -1); 1211 for (int i = 0; i < element.getAlias().size(); i++) 1212 composeString(t, "ElementDefinition", "alias", element.getAlias().get(i), i); 1213 if (element.hasMinElement()) 1214 composeUnsignedInt(t, "ElementDefinition", "min", element.getMinElement(), -1); 1215 if (element.hasMaxElement()) 1216 composeString(t, "ElementDefinition", "max", element.getMaxElement(), -1); 1217 if (element.hasBase()) 1218 composeElementDefinitionElementDefinitionBaseComponent(t, "ElementDefinition", "base", element.getBase(), -1); 1219 if (element.hasContentReferenceElement()) 1220 composeUri(t, "ElementDefinition", "contentReference", element.getContentReferenceElement(), -1); 1221 for (int i = 0; i < element.getType().size(); i++) 1222 composeElementDefinitionTypeRefComponent(t, "ElementDefinition", "type", element.getType().get(i), i); 1223 if (element.hasDefaultValue()) 1224 composeType(t, "ElementDefinition", "defaultValue", element.getDefaultValue(), -1); 1225 if (element.hasMeaningWhenMissingElement()) 1226 composeMarkdown(t, "ElementDefinition", "meaningWhenMissing", element.getMeaningWhenMissingElement(), -1); 1227 if (element.hasOrderMeaningElement()) 1228 composeString(t, "ElementDefinition", "orderMeaning", element.getOrderMeaningElement(), -1); 1229 if (element.hasFixed()) 1230 composeType(t, "ElementDefinition", "fixed", element.getFixed(), -1); 1231 if (element.hasPattern()) 1232 composeType(t, "ElementDefinition", "pattern", element.getPattern(), -1); 1233 for (int i = 0; i < element.getExample().size(); i++) 1234 composeElementDefinitionElementDefinitionExampleComponent(t, "ElementDefinition", "example", 1235 element.getExample().get(i), i); 1236 if (element.hasMinValue()) 1237 composeType(t, "ElementDefinition", "minValue", element.getMinValue(), -1); 1238 if (element.hasMaxValue()) 1239 composeType(t, "ElementDefinition", "maxValue", element.getMaxValue(), -1); 1240 if (element.hasMaxLengthElement()) 1241 composeInteger(t, "ElementDefinition", "maxLength", element.getMaxLengthElement(), -1); 1242 for (int i = 0; i < element.getCondition().size(); i++) 1243 composeId(t, "ElementDefinition", "condition", element.getCondition().get(i), i); 1244 for (int i = 0; i < element.getConstraint().size(); i++) 1245 composeElementDefinitionElementDefinitionConstraintComponent(t, "ElementDefinition", "constraint", 1246 element.getConstraint().get(i), i); 1247 if (element.hasMustSupportElement()) 1248 composeBoolean(t, "ElementDefinition", "mustSupport", element.getMustSupportElement(), -1); 1249 if (element.hasIsModifierElement()) 1250 composeBoolean(t, "ElementDefinition", "isModifier", element.getIsModifierElement(), -1); 1251 if (element.hasIsModifierReasonElement()) 1252 composeString(t, "ElementDefinition", "isModifierReason", element.getIsModifierReasonElement(), -1); 1253 if (element.hasIsSummaryElement()) 1254 composeBoolean(t, "ElementDefinition", "isSummary", element.getIsSummaryElement(), -1); 1255 if (element.hasBinding()) 1256 composeElementDefinitionElementDefinitionBindingComponent(t, "ElementDefinition", "binding", element.getBinding(), 1257 -1); 1258 for (int i = 0; i < element.getMapping().size(); i++) 1259 composeElementDefinitionElementDefinitionMappingComponent(t, "ElementDefinition", "mapping", 1260 element.getMapping().get(i), i); 1261 } 1262 1263 protected void composeElementDefinitionElementDefinitionSlicingComponent(Complex parent, String parentType, 1264 String name, ElementDefinition.ElementDefinitionSlicingComponent element, int index) { 1265 if (element == null) 1266 return; 1267 Complex t; 1268 if (Utilities.noString(parentType)) 1269 t = parent; 1270 else { 1271 t = parent.predicate("fhir:" + parentType + '.' + name); 1272 } 1273 composeElement(t, "slicing", name, element, index); 1274 for (int i = 0; i < element.getDiscriminator().size(); i++) 1275 composeElementDefinitionElementDefinitionSlicingDiscriminatorComponent(t, "ElementDefinition", "discriminator", 1276 element.getDiscriminator().get(i), i); 1277 if (element.hasDescriptionElement()) 1278 composeString(t, "ElementDefinition", "description", element.getDescriptionElement(), -1); 1279 if (element.hasOrderedElement()) 1280 composeBoolean(t, "ElementDefinition", "ordered", element.getOrderedElement(), -1); 1281 if (element.hasRulesElement()) 1282 composeEnum(t, "ElementDefinition", "rules", element.getRulesElement(), -1); 1283 } 1284 1285 protected void composeElementDefinitionElementDefinitionSlicingDiscriminatorComponent(Complex parent, 1286 String parentType, String name, ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent element, 1287 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:" + parentType + '.' + name); 1295 } 1296 composeElement(t, "discriminator", name, element, index); 1297 if (element.hasTypeElement()) 1298 composeEnum(t, "ElementDefinition", "type", element.getTypeElement(), -1); 1299 if (element.hasPathElement()) 1300 composeString(t, "ElementDefinition", "path", element.getPathElement(), -1); 1301 } 1302 1303 protected void composeElementDefinitionElementDefinitionBaseComponent(Complex parent, String parentType, String name, 1304 ElementDefinition.ElementDefinitionBaseComponent element, int index) { 1305 if (element == null) 1306 return; 1307 Complex t; 1308 if (Utilities.noString(parentType)) 1309 t = parent; 1310 else { 1311 t = parent.predicate("fhir:" + parentType + '.' + name); 1312 } 1313 composeElement(t, "base", name, element, index); 1314 if (element.hasPathElement()) 1315 composeString(t, "ElementDefinition", "path", element.getPathElement(), -1); 1316 if (element.hasMinElement()) 1317 composeUnsignedInt(t, "ElementDefinition", "min", element.getMinElement(), -1); 1318 if (element.hasMaxElement()) 1319 composeString(t, "ElementDefinition", "max", element.getMaxElement(), -1); 1320 } 1321 1322 protected void composeElementDefinitionTypeRefComponent(Complex parent, String parentType, String name, 1323 ElementDefinition.TypeRefComponent element, int index) { 1324 if (element == null) 1325 return; 1326 Complex t; 1327 if (Utilities.noString(parentType)) 1328 t = parent; 1329 else { 1330 t = parent.predicate("fhir:" + parentType + '.' + name); 1331 } 1332 composeElement(t, "type", name, element, index); 1333 if (element.hasCodeElement()) 1334 composeUri(t, "ElementDefinition", "code", element.getCodeElement(), -1); 1335 for (int i = 0; i < element.getProfile().size(); i++) 1336 composeCanonical(t, "ElementDefinition", "profile", element.getProfile().get(i), i); 1337 for (int i = 0; i < element.getTargetProfile().size(); i++) 1338 composeCanonical(t, "ElementDefinition", "targetProfile", element.getTargetProfile().get(i), i); 1339 for (int i = 0; i < element.getAggregation().size(); i++) 1340 composeEnum(t, "ElementDefinition", "aggregation", element.getAggregation().get(i), i); 1341 if (element.hasVersioningElement()) 1342 composeEnum(t, "ElementDefinition", "versioning", element.getVersioningElement(), -1); 1343 } 1344 1345 protected void composeElementDefinitionElementDefinitionExampleComponent(Complex parent, String parentType, 1346 String name, ElementDefinition.ElementDefinitionExampleComponent element, int index) { 1347 if (element == null) 1348 return; 1349 Complex t; 1350 if (Utilities.noString(parentType)) 1351 t = parent; 1352 else { 1353 t = parent.predicate("fhir:" + parentType + '.' + name); 1354 } 1355 composeElement(t, "example", name, element, index); 1356 if (element.hasLabelElement()) 1357 composeString(t, "ElementDefinition", "label", element.getLabelElement(), -1); 1358 if (element.hasValue()) 1359 composeType(t, "ElementDefinition", "value", element.getValue(), -1); 1360 } 1361 1362 protected void composeElementDefinitionElementDefinitionConstraintComponent(Complex parent, String parentType, 1363 String name, ElementDefinition.ElementDefinitionConstraintComponent element, int index) { 1364 if (element == null) 1365 return; 1366 Complex t; 1367 if (Utilities.noString(parentType)) 1368 t = parent; 1369 else { 1370 t = parent.predicate("fhir:" + parentType + '.' + name); 1371 } 1372 composeElement(t, "constraint", name, element, index); 1373 if (element.hasKeyElement()) 1374 composeId(t, "ElementDefinition", "key", element.getKeyElement(), -1); 1375 if (element.hasRequirementsElement()) 1376 composeString(t, "ElementDefinition", "requirements", element.getRequirementsElement(), -1); 1377 if (element.hasSeverityElement()) 1378 composeEnum(t, "ElementDefinition", "severity", element.getSeverityElement(), -1); 1379 if (element.hasHumanElement()) 1380 composeString(t, "ElementDefinition", "human", element.getHumanElement(), -1); 1381 if (element.hasExpressionElement()) 1382 composeString(t, "ElementDefinition", "expression", element.getExpressionElement(), -1); 1383 if (element.hasXpathElement()) 1384 composeString(t, "ElementDefinition", "xpath", element.getXpathElement(), -1); 1385 if (element.hasSourceElement()) 1386 composeCanonical(t, "ElementDefinition", "source", element.getSourceElement(), -1); 1387 } 1388 1389 protected void composeElementDefinitionElementDefinitionBindingComponent(Complex parent, String parentType, 1390 String name, ElementDefinition.ElementDefinitionBindingComponent element, int index) { 1391 if (element == null) 1392 return; 1393 Complex t; 1394 if (Utilities.noString(parentType)) 1395 t = parent; 1396 else { 1397 t = parent.predicate("fhir:" + parentType + '.' + name); 1398 } 1399 composeElement(t, "binding", name, element, index); 1400 if (element.hasStrengthElement()) 1401 composeEnum(t, "ElementDefinition", "strength", element.getStrengthElement(), -1); 1402 if (element.hasDescriptionElement()) 1403 composeString(t, "ElementDefinition", "description", element.getDescriptionElement(), -1); 1404 if (element.hasValueSetElement()) 1405 composeCanonical(t, "ElementDefinition", "valueSet", element.getValueSetElement(), -1); 1406 } 1407 1408 protected void composeElementDefinitionElementDefinitionMappingComponent(Complex parent, String parentType, 1409 String name, ElementDefinition.ElementDefinitionMappingComponent element, int index) { 1410 if (element == null) 1411 return; 1412 Complex t; 1413 if (Utilities.noString(parentType)) 1414 t = parent; 1415 else { 1416 t = parent.predicate("fhir:" + parentType + '.' + name); 1417 } 1418 composeElement(t, "mapping", name, element, index); 1419 if (element.hasIdentityElement()) 1420 composeId(t, "ElementDefinition", "identity", element.getIdentityElement(), -1); 1421 if (element.hasLanguageElement()) 1422 composeCode(t, "ElementDefinition", "language", element.getLanguageElement(), -1); 1423 if (element.hasMapElement()) 1424 composeString(t, "ElementDefinition", "map", element.getMapElement(), -1); 1425 if (element.hasCommentElement()) 1426 composeString(t, "ElementDefinition", "comment", element.getCommentElement(), -1); 1427 } 1428 1429 protected void composeDomainResource(Complex t, String parentType, String name, DomainResource element, int index) { 1430 composeResource(t, parentType, name, element, index); 1431 if (element.hasText()) 1432 composeNarrative(t, "DomainResource", "text", element.getText(), -1); 1433 for (int i = 0; i < element.getContained().size(); i++) 1434 composeResource(t, "DomainResource", "contained", element.getContained().get(i), i); 1435 for (int i = 0; i < element.getExtension().size(); i++) 1436 composeExtension(t, "DomainResource", "extension", element.getExtension().get(i), i); 1437 for (int i = 0; i < element.getModifierExtension().size(); i++) 1438 composeExtension(t, "DomainResource", "modifierExtension", element.getModifierExtension().get(i), i); 1439 } 1440 1441 protected void composeParameters(Complex parent, String parentType, String name, Parameters element, int index) { 1442 if (element == null) 1443 return; 1444 Complex t; 1445 if (Utilities.noString(parentType)) 1446 t = parent; 1447 else { 1448 t = parent.predicate("fhir:" + parentType + '.' + name); 1449 } 1450 composeResource(t, "Parameters", name, element, index); 1451 for (int i = 0; i < element.getParameter().size(); i++) 1452 composeParametersParametersParameterComponent(t, "Parameters", "parameter", element.getParameter().get(i), i); 1453 } 1454 1455 protected void composeParametersParametersParameterComponent(Complex parent, String parentType, String name, 1456 Parameters.ParametersParameterComponent element, int index) { 1457 if (element == null) 1458 return; 1459 Complex t; 1460 if (Utilities.noString(parentType)) 1461 t = parent; 1462 else { 1463 t = parent.predicate("fhir:" + parentType + '.' + name); 1464 } 1465 composeBackboneElement(t, "parameter", name, element, index); 1466 if (element.hasNameElement()) 1467 composeString(t, "Parameters", "name", element.getNameElement(), -1); 1468 if (element.hasValue()) 1469 composeType(t, "Parameters", "value", element.getValue(), -1); 1470 if (element.hasResource()) 1471 composeResource(t, "Parameters", "resource", element.getResource(), -1); 1472 for (int i = 0; i < element.getPart().size(); i++) 1473 composeParametersParametersParameterComponent(t, "Parameters", "part", element.getPart().get(i), i); 1474 } 1475 1476 protected void composeResource(Complex t, String parentType, String name, Resource element, int index) { 1477 if (element.hasIdElement()) 1478 composeId(t, "Resource", "id", element.getIdElement(), -1); 1479 if (element.hasMeta()) 1480 composeMeta(t, "Resource", "meta", element.getMeta(), -1); 1481 if (element.hasImplicitRulesElement()) 1482 composeUri(t, "Resource", "implicitRules", element.getImplicitRulesElement(), -1); 1483 if (element.hasLanguageElement()) 1484 composeCode(t, "Resource", "language", element.getLanguageElement(), -1); 1485 } 1486 1487 protected void composeAccount(Complex parent, String parentType, String name, Account element, int index) { 1488 if (element == null) 1489 return; 1490 Complex t; 1491 if (Utilities.noString(parentType)) 1492 t = parent; 1493 else { 1494 t = parent.predicate("fhir:" + parentType + '.' + name); 1495 } 1496 composeDomainResource(t, "Account", name, element, index); 1497 for (int i = 0; i < element.getIdentifier().size(); i++) 1498 composeIdentifier(t, "Account", "identifier", element.getIdentifier().get(i), i); 1499 if (element.hasStatusElement()) 1500 composeEnum(t, "Account", "status", element.getStatusElement(), -1); 1501 if (element.hasType()) 1502 composeCodeableConcept(t, "Account", "type", element.getType(), -1); 1503 if (element.hasNameElement()) 1504 composeString(t, "Account", "name", element.getNameElement(), -1); 1505 for (int i = 0; i < element.getSubject().size(); i++) 1506 composeReference(t, "Account", "subject", element.getSubject().get(i), i); 1507 if (element.hasServicePeriod()) 1508 composePeriod(t, "Account", "servicePeriod", element.getServicePeriod(), -1); 1509 for (int i = 0; i < element.getCoverage().size(); i++) 1510 composeAccountCoverageComponent(t, "Account", "coverage", element.getCoverage().get(i), i); 1511 if (element.hasOwner()) 1512 composeReference(t, "Account", "owner", element.getOwner(), -1); 1513 if (element.hasDescriptionElement()) 1514 composeString(t, "Account", "description", element.getDescriptionElement(), -1); 1515 for (int i = 0; i < element.getGuarantor().size(); i++) 1516 composeAccountGuarantorComponent(t, "Account", "guarantor", element.getGuarantor().get(i), i); 1517 if (element.hasPartOf()) 1518 composeReference(t, "Account", "partOf", element.getPartOf(), -1); 1519 } 1520 1521 protected void composeAccountCoverageComponent(Complex parent, String parentType, String name, 1522 Account.CoverageComponent element, int index) { 1523 if (element == null) 1524 return; 1525 Complex t; 1526 if (Utilities.noString(parentType)) 1527 t = parent; 1528 else { 1529 t = parent.predicate("fhir:" + parentType + '.' + name); 1530 } 1531 composeBackboneElement(t, "coverage", name, element, index); 1532 if (element.hasCoverage()) 1533 composeReference(t, "Account", "coverage", element.getCoverage(), -1); 1534 if (element.hasPriorityElement()) 1535 composePositiveInt(t, "Account", "priority", element.getPriorityElement(), -1); 1536 } 1537 1538 protected void composeAccountGuarantorComponent(Complex parent, String parentType, String name, 1539 Account.GuarantorComponent 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:" + parentType + '.' + name); 1547 } 1548 composeBackboneElement(t, "guarantor", name, element, index); 1549 if (element.hasParty()) 1550 composeReference(t, "Account", "party", element.getParty(), -1); 1551 if (element.hasOnHoldElement()) 1552 composeBoolean(t, "Account", "onHold", element.getOnHoldElement(), -1); 1553 if (element.hasPeriod()) 1554 composePeriod(t, "Account", "period", element.getPeriod(), -1); 1555 } 1556 1557 protected void composeActivityDefinition(Complex parent, String parentType, String name, ActivityDefinition element, 1558 int index) { 1559 if (element == null) 1560 return; 1561 Complex t; 1562 if (Utilities.noString(parentType)) 1563 t = parent; 1564 else { 1565 t = parent.predicate("fhir:" + parentType + '.' + name); 1566 } 1567 composeDomainResource(t, "ActivityDefinition", name, element, index); 1568 if (element.hasUrlElement()) 1569 composeUri(t, "ActivityDefinition", "url", element.getUrlElement(), -1); 1570 for (int i = 0; i < element.getIdentifier().size(); i++) 1571 composeIdentifier(t, "ActivityDefinition", "identifier", element.getIdentifier().get(i), i); 1572 if (element.hasVersionElement()) 1573 composeString(t, "ActivityDefinition", "version", element.getVersionElement(), -1); 1574 if (element.hasNameElement()) 1575 composeString(t, "ActivityDefinition", "name", element.getNameElement(), -1); 1576 if (element.hasTitleElement()) 1577 composeString(t, "ActivityDefinition", "title", element.getTitleElement(), -1); 1578 if (element.hasSubtitleElement()) 1579 composeString(t, "ActivityDefinition", "subtitle", element.getSubtitleElement(), -1); 1580 if (element.hasStatusElement()) 1581 composeEnum(t, "ActivityDefinition", "status", element.getStatusElement(), -1); 1582 if (element.hasExperimentalElement()) 1583 composeBoolean(t, "ActivityDefinition", "experimental", element.getExperimentalElement(), -1); 1584 if (element.hasSubject()) 1585 composeType(t, "ActivityDefinition", "subject", element.getSubject(), -1); 1586 if (element.hasDateElement()) 1587 composeDateTime(t, "ActivityDefinition", "date", element.getDateElement(), -1); 1588 if (element.hasPublisherElement()) 1589 composeString(t, "ActivityDefinition", "publisher", element.getPublisherElement(), -1); 1590 for (int i = 0; i < element.getContact().size(); i++) 1591 composeContactDetail(t, "ActivityDefinition", "contact", element.getContact().get(i), i); 1592 if (element.hasDescriptionElement()) 1593 composeMarkdown(t, "ActivityDefinition", "description", element.getDescriptionElement(), -1); 1594 for (int i = 0; i < element.getUseContext().size(); i++) 1595 composeUsageContext(t, "ActivityDefinition", "useContext", element.getUseContext().get(i), i); 1596 for (int i = 0; i < element.getJurisdiction().size(); i++) 1597 composeCodeableConcept(t, "ActivityDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 1598 if (element.hasPurposeElement()) 1599 composeMarkdown(t, "ActivityDefinition", "purpose", element.getPurposeElement(), -1); 1600 if (element.hasUsageElement()) 1601 composeString(t, "ActivityDefinition", "usage", element.getUsageElement(), -1); 1602 if (element.hasCopyrightElement()) 1603 composeMarkdown(t, "ActivityDefinition", "copyright", element.getCopyrightElement(), -1); 1604 if (element.hasApprovalDateElement()) 1605 composeDate(t, "ActivityDefinition", "approvalDate", element.getApprovalDateElement(), -1); 1606 if (element.hasLastReviewDateElement()) 1607 composeDate(t, "ActivityDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 1608 if (element.hasEffectivePeriod()) 1609 composePeriod(t, "ActivityDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 1610 for (int i = 0; i < element.getTopic().size(); i++) 1611 composeCodeableConcept(t, "ActivityDefinition", "topic", element.getTopic().get(i), i); 1612 for (int i = 0; i < element.getAuthor().size(); i++) 1613 composeContactDetail(t, "ActivityDefinition", "author", element.getAuthor().get(i), i); 1614 for (int i = 0; i < element.getEditor().size(); i++) 1615 composeContactDetail(t, "ActivityDefinition", "editor", element.getEditor().get(i), i); 1616 for (int i = 0; i < element.getReviewer().size(); i++) 1617 composeContactDetail(t, "ActivityDefinition", "reviewer", element.getReviewer().get(i), i); 1618 for (int i = 0; i < element.getEndorser().size(); i++) 1619 composeContactDetail(t, "ActivityDefinition", "endorser", element.getEndorser().get(i), i); 1620 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 1621 composeRelatedArtifact(t, "ActivityDefinition", "relatedArtifact", element.getRelatedArtifact().get(i), i); 1622 for (int i = 0; i < element.getLibrary().size(); i++) 1623 composeCanonical(t, "ActivityDefinition", "library", element.getLibrary().get(i), i); 1624 if (element.hasKindElement()) 1625 composeEnum(t, "ActivityDefinition", "kind", element.getKindElement(), -1); 1626 if (element.hasProfileElement()) 1627 composeCanonical(t, "ActivityDefinition", "profile", element.getProfileElement(), -1); 1628 if (element.hasCode()) 1629 composeCodeableConcept(t, "ActivityDefinition", "code", element.getCode(), -1); 1630 if (element.hasIntentElement()) 1631 composeEnum(t, "ActivityDefinition", "intent", element.getIntentElement(), -1); 1632 if (element.hasPriorityElement()) 1633 composeEnum(t, "ActivityDefinition", "priority", element.getPriorityElement(), -1); 1634 if (element.hasDoNotPerformElement()) 1635 composeBoolean(t, "ActivityDefinition", "doNotPerform", element.getDoNotPerformElement(), -1); 1636 if (element.hasTiming()) 1637 composeType(t, "ActivityDefinition", "timing", element.getTiming(), -1); 1638 if (element.hasLocation()) 1639 composeReference(t, "ActivityDefinition", "location", element.getLocation(), -1); 1640 for (int i = 0; i < element.getParticipant().size(); i++) 1641 composeActivityDefinitionActivityDefinitionParticipantComponent(t, "ActivityDefinition", "participant", 1642 element.getParticipant().get(i), i); 1643 if (element.hasProduct()) 1644 composeType(t, "ActivityDefinition", "product", element.getProduct(), -1); 1645 if (element.hasQuantity()) 1646 composeQuantity(t, "ActivityDefinition", "quantity", element.getQuantity(), -1); 1647 for (int i = 0; i < element.getDosage().size(); i++) 1648 composeDosage(t, "ActivityDefinition", "dosage", element.getDosage().get(i), i); 1649 for (int i = 0; i < element.getBodySite().size(); i++) 1650 composeCodeableConcept(t, "ActivityDefinition", "bodySite", element.getBodySite().get(i), i); 1651 for (int i = 0; i < element.getSpecimenRequirement().size(); i++) 1652 composeReference(t, "ActivityDefinition", "specimenRequirement", element.getSpecimenRequirement().get(i), i); 1653 for (int i = 0; i < element.getObservationRequirement().size(); i++) 1654 composeReference(t, "ActivityDefinition", "observationRequirement", element.getObservationRequirement().get(i), 1655 i); 1656 for (int i = 0; i < element.getObservationResultRequirement().size(); i++) 1657 composeReference(t, "ActivityDefinition", "observationResultRequirement", 1658 element.getObservationResultRequirement().get(i), i); 1659 if (element.hasTransformElement()) 1660 composeCanonical(t, "ActivityDefinition", "transform", element.getTransformElement(), -1); 1661 for (int i = 0; i < element.getDynamicValue().size(); i++) 1662 composeActivityDefinitionActivityDefinitionDynamicValueComponent(t, "ActivityDefinition", "dynamicValue", 1663 element.getDynamicValue().get(i), i); 1664 } 1665 1666 protected void composeActivityDefinitionActivityDefinitionParticipantComponent(Complex parent, String parentType, 1667 String name, ActivityDefinition.ActivityDefinitionParticipantComponent element, int index) { 1668 if (element == null) 1669 return; 1670 Complex t; 1671 if (Utilities.noString(parentType)) 1672 t = parent; 1673 else { 1674 t = parent.predicate("fhir:" + parentType + '.' + name); 1675 } 1676 composeBackboneElement(t, "participant", name, element, index); 1677 if (element.hasTypeElement()) 1678 composeEnum(t, "ActivityDefinition", "type", element.getTypeElement(), -1); 1679 if (element.hasRole()) 1680 composeCodeableConcept(t, "ActivityDefinition", "role", element.getRole(), -1); 1681 } 1682 1683 protected void composeActivityDefinitionActivityDefinitionDynamicValueComponent(Complex parent, String parentType, 1684 String name, ActivityDefinition.ActivityDefinitionDynamicValueComponent element, int index) { 1685 if (element == null) 1686 return; 1687 Complex t; 1688 if (Utilities.noString(parentType)) 1689 t = parent; 1690 else { 1691 t = parent.predicate("fhir:" + parentType + '.' + name); 1692 } 1693 composeBackboneElement(t, "dynamicValue", name, element, index); 1694 if (element.hasPathElement()) 1695 composeString(t, "ActivityDefinition", "path", element.getPathElement(), -1); 1696 if (element.hasExpression()) 1697 composeExpression(t, "ActivityDefinition", "expression", element.getExpression(), -1); 1698 } 1699 1700 protected void composeAdverseEvent(Complex parent, String parentType, String name, AdverseEvent element, int index) { 1701 if (element == null) 1702 return; 1703 Complex t; 1704 if (Utilities.noString(parentType)) 1705 t = parent; 1706 else { 1707 t = parent.predicate("fhir:" + parentType + '.' + name); 1708 } 1709 composeDomainResource(t, "AdverseEvent", name, element, index); 1710 if (element.hasIdentifier()) 1711 composeIdentifier(t, "AdverseEvent", "identifier", element.getIdentifier(), -1); 1712 if (element.hasActualityElement()) 1713 composeEnum(t, "AdverseEvent", "actuality", element.getActualityElement(), -1); 1714 for (int i = 0; i < element.getCategory().size(); i++) 1715 composeCodeableConcept(t, "AdverseEvent", "category", element.getCategory().get(i), i); 1716 if (element.hasEvent()) 1717 composeCodeableConcept(t, "AdverseEvent", "event", element.getEvent(), -1); 1718 if (element.hasSubject()) 1719 composeReference(t, "AdverseEvent", "subject", element.getSubject(), -1); 1720 if (element.hasEncounter()) 1721 composeReference(t, "AdverseEvent", "encounter", element.getEncounter(), -1); 1722 if (element.hasDateElement()) 1723 composeDateTime(t, "AdverseEvent", "date", element.getDateElement(), -1); 1724 if (element.hasDetectedElement()) 1725 composeDateTime(t, "AdverseEvent", "detected", element.getDetectedElement(), -1); 1726 if (element.hasRecordedDateElement()) 1727 composeDateTime(t, "AdverseEvent", "recordedDate", element.getRecordedDateElement(), -1); 1728 for (int i = 0; i < element.getResultingCondition().size(); i++) 1729 composeReference(t, "AdverseEvent", "resultingCondition", element.getResultingCondition().get(i), i); 1730 if (element.hasLocation()) 1731 composeReference(t, "AdverseEvent", "location", element.getLocation(), -1); 1732 if (element.hasSeriousness()) 1733 composeCodeableConcept(t, "AdverseEvent", "seriousness", element.getSeriousness(), -1); 1734 if (element.hasSeverity()) 1735 composeCodeableConcept(t, "AdverseEvent", "severity", element.getSeverity(), -1); 1736 if (element.hasOutcome()) 1737 composeCodeableConcept(t, "AdverseEvent", "outcome", element.getOutcome(), -1); 1738 if (element.hasRecorder()) 1739 composeReference(t, "AdverseEvent", "recorder", element.getRecorder(), -1); 1740 for (int i = 0; i < element.getContributor().size(); i++) 1741 composeReference(t, "AdverseEvent", "contributor", element.getContributor().get(i), i); 1742 for (int i = 0; i < element.getSuspectEntity().size(); i++) 1743 composeAdverseEventAdverseEventSuspectEntityComponent(t, "AdverseEvent", "suspectEntity", 1744 element.getSuspectEntity().get(i), i); 1745 for (int i = 0; i < element.getSubjectMedicalHistory().size(); i++) 1746 composeReference(t, "AdverseEvent", "subjectMedicalHistory", element.getSubjectMedicalHistory().get(i), i); 1747 for (int i = 0; i < element.getReferenceDocument().size(); i++) 1748 composeReference(t, "AdverseEvent", "referenceDocument", element.getReferenceDocument().get(i), i); 1749 for (int i = 0; i < element.getStudy().size(); i++) 1750 composeReference(t, "AdverseEvent", "study", element.getStudy().get(i), i); 1751 } 1752 1753 protected void composeAdverseEventAdverseEventSuspectEntityComponent(Complex parent, String parentType, String name, 1754 AdverseEvent.AdverseEventSuspectEntityComponent element, int index) { 1755 if (element == null) 1756 return; 1757 Complex t; 1758 if (Utilities.noString(parentType)) 1759 t = parent; 1760 else { 1761 t = parent.predicate("fhir:" + parentType + '.' + name); 1762 } 1763 composeBackboneElement(t, "suspectEntity", name, element, index); 1764 if (element.hasInstance()) 1765 composeReference(t, "AdverseEvent", "instance", element.getInstance(), -1); 1766 for (int i = 0; i < element.getCausality().size(); i++) 1767 composeAdverseEventAdverseEventSuspectEntityCausalityComponent(t, "AdverseEvent", "causality", 1768 element.getCausality().get(i), i); 1769 } 1770 1771 protected void composeAdverseEventAdverseEventSuspectEntityCausalityComponent(Complex parent, String parentType, 1772 String name, AdverseEvent.AdverseEventSuspectEntityCausalityComponent element, int index) { 1773 if (element == null) 1774 return; 1775 Complex t; 1776 if (Utilities.noString(parentType)) 1777 t = parent; 1778 else { 1779 t = parent.predicate("fhir:" + parentType + '.' + name); 1780 } 1781 composeBackboneElement(t, "causality", name, element, index); 1782 if (element.hasAssessment()) 1783 composeCodeableConcept(t, "AdverseEvent", "assessment", element.getAssessment(), -1); 1784 if (element.hasProductRelatednessElement()) 1785 composeString(t, "AdverseEvent", "productRelatedness", element.getProductRelatednessElement(), -1); 1786 if (element.hasAuthor()) 1787 composeReference(t, "AdverseEvent", "author", element.getAuthor(), -1); 1788 if (element.hasMethod()) 1789 composeCodeableConcept(t, "AdverseEvent", "method", element.getMethod(), -1); 1790 } 1791 1792 protected void composeAllergyIntolerance(Complex parent, String parentType, String name, AllergyIntolerance element, 1793 int index) { 1794 if (element == null) 1795 return; 1796 Complex t; 1797 if (Utilities.noString(parentType)) 1798 t = parent; 1799 else { 1800 t = parent.predicate("fhir:" + parentType + '.' + name); 1801 } 1802 composeDomainResource(t, "AllergyIntolerance", name, element, index); 1803 for (int i = 0; i < element.getIdentifier().size(); i++) 1804 composeIdentifier(t, "AllergyIntolerance", "identifier", element.getIdentifier().get(i), i); 1805 if (element.hasClinicalStatus()) 1806 composeCodeableConcept(t, "AllergyIntolerance", "clinicalStatus", element.getClinicalStatus(), -1); 1807 if (element.hasVerificationStatus()) 1808 composeCodeableConcept(t, "AllergyIntolerance", "verificationStatus", element.getVerificationStatus(), -1); 1809 if (element.hasTypeElement()) 1810 composeEnum(t, "AllergyIntolerance", "type", element.getTypeElement(), -1); 1811 for (int i = 0; i < element.getCategory().size(); i++) 1812 composeEnum(t, "AllergyIntolerance", "category", element.getCategory().get(i), i); 1813 if (element.hasCriticalityElement()) 1814 composeEnum(t, "AllergyIntolerance", "criticality", element.getCriticalityElement(), -1); 1815 if (element.hasCode()) 1816 composeCodeableConcept(t, "AllergyIntolerance", "code", element.getCode(), -1); 1817 if (element.hasPatient()) 1818 composeReference(t, "AllergyIntolerance", "patient", element.getPatient(), -1); 1819 if (element.hasEncounter()) 1820 composeReference(t, "AllergyIntolerance", "encounter", element.getEncounter(), -1); 1821 if (element.hasOnset()) 1822 composeType(t, "AllergyIntolerance", "onset", element.getOnset(), -1); 1823 if (element.hasRecordedDateElement()) 1824 composeDateTime(t, "AllergyIntolerance", "recordedDate", element.getRecordedDateElement(), -1); 1825 if (element.hasRecorder()) 1826 composeReference(t, "AllergyIntolerance", "recorder", element.getRecorder(), -1); 1827 if (element.hasAsserter()) 1828 composeReference(t, "AllergyIntolerance", "asserter", element.getAsserter(), -1); 1829 if (element.hasLastOccurrenceElement()) 1830 composeDateTime(t, "AllergyIntolerance", "lastOccurrence", element.getLastOccurrenceElement(), -1); 1831 for (int i = 0; i < element.getNote().size(); i++) 1832 composeAnnotation(t, "AllergyIntolerance", "note", element.getNote().get(i), i); 1833 for (int i = 0; i < element.getReaction().size(); i++) 1834 composeAllergyIntoleranceAllergyIntoleranceReactionComponent(t, "AllergyIntolerance", "reaction", 1835 element.getReaction().get(i), i); 1836 } 1837 1838 protected void composeAllergyIntoleranceAllergyIntoleranceReactionComponent(Complex parent, String parentType, 1839 String name, AllergyIntolerance.AllergyIntoleranceReactionComponent element, int index) { 1840 if (element == null) 1841 return; 1842 Complex t; 1843 if (Utilities.noString(parentType)) 1844 t = parent; 1845 else { 1846 t = parent.predicate("fhir:" + parentType + '.' + name); 1847 } 1848 composeBackboneElement(t, "reaction", name, element, index); 1849 if (element.hasSubstance()) 1850 composeCodeableConcept(t, "AllergyIntolerance", "substance", element.getSubstance(), -1); 1851 for (int i = 0; i < element.getManifestation().size(); i++) 1852 composeCodeableConcept(t, "AllergyIntolerance", "manifestation", element.getManifestation().get(i), i); 1853 if (element.hasDescriptionElement()) 1854 composeString(t, "AllergyIntolerance", "description", element.getDescriptionElement(), -1); 1855 if (element.hasOnsetElement()) 1856 composeDateTime(t, "AllergyIntolerance", "onset", element.getOnsetElement(), -1); 1857 if (element.hasSeverityElement()) 1858 composeEnum(t, "AllergyIntolerance", "severity", element.getSeverityElement(), -1); 1859 if (element.hasExposureRoute()) 1860 composeCodeableConcept(t, "AllergyIntolerance", "exposureRoute", element.getExposureRoute(), -1); 1861 for (int i = 0; i < element.getNote().size(); i++) 1862 composeAnnotation(t, "AllergyIntolerance", "note", element.getNote().get(i), i); 1863 } 1864 1865 protected void composeAppointment(Complex parent, String parentType, String name, Appointment element, int index) { 1866 if (element == null) 1867 return; 1868 Complex t; 1869 if (Utilities.noString(parentType)) 1870 t = parent; 1871 else { 1872 t = parent.predicate("fhir:" + parentType + '.' + name); 1873 } 1874 composeDomainResource(t, "Appointment", name, element, index); 1875 for (int i = 0; i < element.getIdentifier().size(); i++) 1876 composeIdentifier(t, "Appointment", "identifier", element.getIdentifier().get(i), i); 1877 if (element.hasStatusElement()) 1878 composeEnum(t, "Appointment", "status", element.getStatusElement(), -1); 1879 if (element.hasCancelationReason()) 1880 composeCodeableConcept(t, "Appointment", "cancelationReason", element.getCancelationReason(), -1); 1881 for (int i = 0; i < element.getServiceCategory().size(); i++) 1882 composeCodeableConcept(t, "Appointment", "serviceCategory", element.getServiceCategory().get(i), i); 1883 for (int i = 0; i < element.getServiceType().size(); i++) 1884 composeCodeableConcept(t, "Appointment", "serviceType", element.getServiceType().get(i), i); 1885 for (int i = 0; i < element.getSpecialty().size(); i++) 1886 composeCodeableConcept(t, "Appointment", "specialty", element.getSpecialty().get(i), i); 1887 if (element.hasAppointmentType()) 1888 composeCodeableConcept(t, "Appointment", "appointmentType", element.getAppointmentType(), -1); 1889 for (int i = 0; i < element.getReasonCode().size(); i++) 1890 composeCodeableConcept(t, "Appointment", "reasonCode", element.getReasonCode().get(i), i); 1891 for (int i = 0; i < element.getReasonReference().size(); i++) 1892 composeReference(t, "Appointment", "reasonReference", element.getReasonReference().get(i), i); 1893 if (element.hasPriorityElement()) 1894 composeUnsignedInt(t, "Appointment", "priority", element.getPriorityElement(), -1); 1895 if (element.hasDescriptionElement()) 1896 composeString(t, "Appointment", "description", element.getDescriptionElement(), -1); 1897 for (int i = 0; i < element.getSupportingInformation().size(); i++) 1898 composeReference(t, "Appointment", "supportingInformation", element.getSupportingInformation().get(i), i); 1899 if (element.hasStartElement()) 1900 composeInstant(t, "Appointment", "start", element.getStartElement(), -1); 1901 if (element.hasEndElement()) 1902 composeInstant(t, "Appointment", "end", element.getEndElement(), -1); 1903 if (element.hasMinutesDurationElement()) 1904 composePositiveInt(t, "Appointment", "minutesDuration", element.getMinutesDurationElement(), -1); 1905 for (int i = 0; i < element.getSlot().size(); i++) 1906 composeReference(t, "Appointment", "slot", element.getSlot().get(i), i); 1907 if (element.hasCreatedElement()) 1908 composeDateTime(t, "Appointment", "created", element.getCreatedElement(), -1); 1909 if (element.hasCommentElement()) 1910 composeString(t, "Appointment", "comment", element.getCommentElement(), -1); 1911 if (element.hasPatientInstructionElement()) 1912 composeString(t, "Appointment", "patientInstruction", element.getPatientInstructionElement(), -1); 1913 for (int i = 0; i < element.getBasedOn().size(); i++) 1914 composeReference(t, "Appointment", "basedOn", element.getBasedOn().get(i), i); 1915 for (int i = 0; i < element.getParticipant().size(); i++) 1916 composeAppointmentAppointmentParticipantComponent(t, "Appointment", "participant", 1917 element.getParticipant().get(i), i); 1918 for (int i = 0; i < element.getRequestedPeriod().size(); i++) 1919 composePeriod(t, "Appointment", "requestedPeriod", element.getRequestedPeriod().get(i), i); 1920 } 1921 1922 protected void composeAppointmentAppointmentParticipantComponent(Complex parent, String parentType, String name, 1923 Appointment.AppointmentParticipantComponent element, int index) { 1924 if (element == null) 1925 return; 1926 Complex t; 1927 if (Utilities.noString(parentType)) 1928 t = parent; 1929 else { 1930 t = parent.predicate("fhir:" + parentType + '.' + name); 1931 } 1932 composeBackboneElement(t, "participant", name, element, index); 1933 for (int i = 0; i < element.getType().size(); i++) 1934 composeCodeableConcept(t, "Appointment", "type", element.getType().get(i), i); 1935 if (element.hasActor()) 1936 composeReference(t, "Appointment", "actor", element.getActor(), -1); 1937 if (element.hasRequiredElement()) 1938 composeEnum(t, "Appointment", "required", element.getRequiredElement(), -1); 1939 if (element.hasStatusElement()) 1940 composeEnum(t, "Appointment", "status", element.getStatusElement(), -1); 1941 if (element.hasPeriod()) 1942 composePeriod(t, "Appointment", "period", element.getPeriod(), -1); 1943 } 1944 1945 protected void composeAppointmentResponse(Complex parent, String parentType, String name, AppointmentResponse element, 1946 int index) { 1947 if (element == null) 1948 return; 1949 Complex t; 1950 if (Utilities.noString(parentType)) 1951 t = parent; 1952 else { 1953 t = parent.predicate("fhir:" + parentType + '.' + name); 1954 } 1955 composeDomainResource(t, "AppointmentResponse", name, element, index); 1956 for (int i = 0; i < element.getIdentifier().size(); i++) 1957 composeIdentifier(t, "AppointmentResponse", "identifier", element.getIdentifier().get(i), i); 1958 if (element.hasAppointment()) 1959 composeReference(t, "AppointmentResponse", "appointment", element.getAppointment(), -1); 1960 if (element.hasStartElement()) 1961 composeInstant(t, "AppointmentResponse", "start", element.getStartElement(), -1); 1962 if (element.hasEndElement()) 1963 composeInstant(t, "AppointmentResponse", "end", element.getEndElement(), -1); 1964 for (int i = 0; i < element.getParticipantType().size(); i++) 1965 composeCodeableConcept(t, "AppointmentResponse", "participantType", element.getParticipantType().get(i), i); 1966 if (element.hasActor()) 1967 composeReference(t, "AppointmentResponse", "actor", element.getActor(), -1); 1968 if (element.hasParticipantStatusElement()) 1969 composeEnum(t, "AppointmentResponse", "participantStatus", element.getParticipantStatusElement(), -1); 1970 if (element.hasCommentElement()) 1971 composeString(t, "AppointmentResponse", "comment", element.getCommentElement(), -1); 1972 } 1973 1974 protected void composeAuditEvent(Complex parent, String parentType, String name, AuditEvent element, int index) { 1975 if (element == null) 1976 return; 1977 Complex t; 1978 if (Utilities.noString(parentType)) 1979 t = parent; 1980 else { 1981 t = parent.predicate("fhir:" + parentType + '.' + name); 1982 } 1983 composeDomainResource(t, "AuditEvent", name, element, index); 1984 if (element.hasType()) 1985 composeCoding(t, "AuditEvent", "type", element.getType(), -1); 1986 for (int i = 0; i < element.getSubtype().size(); i++) 1987 composeCoding(t, "AuditEvent", "subtype", element.getSubtype().get(i), i); 1988 if (element.hasActionElement()) 1989 composeEnum(t, "AuditEvent", "action", element.getActionElement(), -1); 1990 if (element.hasPeriod()) 1991 composePeriod(t, "AuditEvent", "period", element.getPeriod(), -1); 1992 if (element.hasRecordedElement()) 1993 composeInstant(t, "AuditEvent", "recorded", element.getRecordedElement(), -1); 1994 if (element.hasOutcomeElement()) 1995 composeEnum(t, "AuditEvent", "outcome", element.getOutcomeElement(), -1); 1996 if (element.hasOutcomeDescElement()) 1997 composeString(t, "AuditEvent", "outcomeDesc", element.getOutcomeDescElement(), -1); 1998 for (int i = 0; i < element.getPurposeOfEvent().size(); i++) 1999 composeCodeableConcept(t, "AuditEvent", "purposeOfEvent", element.getPurposeOfEvent().get(i), i); 2000 for (int i = 0; i < element.getAgent().size(); i++) 2001 composeAuditEventAuditEventAgentComponent(t, "AuditEvent", "agent", element.getAgent().get(i), i); 2002 if (element.hasSource()) 2003 composeAuditEventAuditEventSourceComponent(t, "AuditEvent", "source", element.getSource(), -1); 2004 for (int i = 0; i < element.getEntity().size(); i++) 2005 composeAuditEventAuditEventEntityComponent(t, "AuditEvent", "entity", element.getEntity().get(i), i); 2006 } 2007 2008 protected void composeAuditEventAuditEventAgentComponent(Complex parent, String parentType, String name, 2009 AuditEvent.AuditEventAgentComponent element, int index) { 2010 if (element == null) 2011 return; 2012 Complex t; 2013 if (Utilities.noString(parentType)) 2014 t = parent; 2015 else { 2016 t = parent.predicate("fhir:" + parentType + '.' + name); 2017 } 2018 composeBackboneElement(t, "agent", name, element, index); 2019 if (element.hasType()) 2020 composeCodeableConcept(t, "AuditEvent", "type", element.getType(), -1); 2021 for (int i = 0; i < element.getRole().size(); i++) 2022 composeCodeableConcept(t, "AuditEvent", "role", element.getRole().get(i), i); 2023 if (element.hasWho()) 2024 composeReference(t, "AuditEvent", "who", element.getWho(), -1); 2025 if (element.hasAltIdElement()) 2026 composeString(t, "AuditEvent", "altId", element.getAltIdElement(), -1); 2027 if (element.hasNameElement()) 2028 composeString(t, "AuditEvent", "name", element.getNameElement(), -1); 2029 if (element.hasRequestorElement()) 2030 composeBoolean(t, "AuditEvent", "requestor", element.getRequestorElement(), -1); 2031 if (element.hasLocation()) 2032 composeReference(t, "AuditEvent", "location", element.getLocation(), -1); 2033 for (int i = 0; i < element.getPolicy().size(); i++) 2034 composeUri(t, "AuditEvent", "policy", element.getPolicy().get(i), i); 2035 if (element.hasMedia()) 2036 composeCoding(t, "AuditEvent", "media", element.getMedia(), -1); 2037 if (element.hasNetwork()) 2038 composeAuditEventAuditEventAgentNetworkComponent(t, "AuditEvent", "network", element.getNetwork(), -1); 2039 for (int i = 0; i < element.getPurposeOfUse().size(); i++) 2040 composeCodeableConcept(t, "AuditEvent", "purposeOfUse", element.getPurposeOfUse().get(i), i); 2041 } 2042 2043 protected void composeAuditEventAuditEventAgentNetworkComponent(Complex parent, String parentType, String name, 2044 AuditEvent.AuditEventAgentNetworkComponent element, int index) { 2045 if (element == null) 2046 return; 2047 Complex t; 2048 if (Utilities.noString(parentType)) 2049 t = parent; 2050 else { 2051 t = parent.predicate("fhir:" + parentType + '.' + name); 2052 } 2053 composeBackboneElement(t, "network", name, element, index); 2054 if (element.hasAddressElement()) 2055 composeString(t, "AuditEvent", "address", element.getAddressElement(), -1); 2056 if (element.hasTypeElement()) 2057 composeEnum(t, "AuditEvent", "type", element.getTypeElement(), -1); 2058 } 2059 2060 protected void composeAuditEventAuditEventSourceComponent(Complex parent, String parentType, String name, 2061 AuditEvent.AuditEventSourceComponent element, int index) { 2062 if (element == null) 2063 return; 2064 Complex t; 2065 if (Utilities.noString(parentType)) 2066 t = parent; 2067 else { 2068 t = parent.predicate("fhir:" + parentType + '.' + name); 2069 } 2070 composeBackboneElement(t, "source", name, element, index); 2071 if (element.hasSiteElement()) 2072 composeString(t, "AuditEvent", "site", element.getSiteElement(), -1); 2073 if (element.hasObserver()) 2074 composeReference(t, "AuditEvent", "observer", element.getObserver(), -1); 2075 for (int i = 0; i < element.getType().size(); i++) 2076 composeCoding(t, "AuditEvent", "type", element.getType().get(i), i); 2077 } 2078 2079 protected void composeAuditEventAuditEventEntityComponent(Complex parent, String parentType, String name, 2080 AuditEvent.AuditEventEntityComponent element, int index) { 2081 if (element == null) 2082 return; 2083 Complex t; 2084 if (Utilities.noString(parentType)) 2085 t = parent; 2086 else { 2087 t = parent.predicate("fhir:" + parentType + '.' + name); 2088 } 2089 composeBackboneElement(t, "entity", name, element, index); 2090 if (element.hasWhat()) 2091 composeReference(t, "AuditEvent", "what", element.getWhat(), -1); 2092 if (element.hasType()) 2093 composeCoding(t, "AuditEvent", "type", element.getType(), -1); 2094 if (element.hasRole()) 2095 composeCoding(t, "AuditEvent", "role", element.getRole(), -1); 2096 if (element.hasLifecycle()) 2097 composeCoding(t, "AuditEvent", "lifecycle", element.getLifecycle(), -1); 2098 for (int i = 0; i < element.getSecurityLabel().size(); i++) 2099 composeCoding(t, "AuditEvent", "securityLabel", element.getSecurityLabel().get(i), i); 2100 if (element.hasNameElement()) 2101 composeString(t, "AuditEvent", "name", element.getNameElement(), -1); 2102 if (element.hasDescriptionElement()) 2103 composeString(t, "AuditEvent", "description", element.getDescriptionElement(), -1); 2104 if (element.hasQueryElement()) 2105 composeBase64Binary(t, "AuditEvent", "query", element.getQueryElement(), -1); 2106 for (int i = 0; i < element.getDetail().size(); i++) 2107 composeAuditEventAuditEventEntityDetailComponent(t, "AuditEvent", "detail", element.getDetail().get(i), i); 2108 } 2109 2110 protected void composeAuditEventAuditEventEntityDetailComponent(Complex parent, String parentType, String name, 2111 AuditEvent.AuditEventEntityDetailComponent element, int index) { 2112 if (element == null) 2113 return; 2114 Complex t; 2115 if (Utilities.noString(parentType)) 2116 t = parent; 2117 else { 2118 t = parent.predicate("fhir:" + parentType + '.' + name); 2119 } 2120 composeBackboneElement(t, "detail", name, element, index); 2121 if (element.hasTypeElement()) 2122 composeString(t, "AuditEvent", "type", element.getTypeElement(), -1); 2123 if (element.hasValue()) 2124 composeType(t, "AuditEvent", "value", element.getValue(), -1); 2125 } 2126 2127 protected void composeBasic(Complex parent, String parentType, String name, Basic element, int index) { 2128 if (element == null) 2129 return; 2130 Complex t; 2131 if (Utilities.noString(parentType)) 2132 t = parent; 2133 else { 2134 t = parent.predicate("fhir:" + parentType + '.' + name); 2135 } 2136 composeDomainResource(t, "Basic", name, element, index); 2137 for (int i = 0; i < element.getIdentifier().size(); i++) 2138 composeIdentifier(t, "Basic", "identifier", element.getIdentifier().get(i), i); 2139 if (element.hasCode()) 2140 composeCodeableConcept(t, "Basic", "code", element.getCode(), -1); 2141 if (element.hasSubject()) 2142 composeReference(t, "Basic", "subject", element.getSubject(), -1); 2143 if (element.hasCreatedElement()) 2144 composeDate(t, "Basic", "created", element.getCreatedElement(), -1); 2145 if (element.hasAuthor()) 2146 composeReference(t, "Basic", "author", element.getAuthor(), -1); 2147 } 2148 2149 protected void composeBinary(Complex parent, String parentType, String name, Binary element, int index) { 2150 if (element == null) 2151 return; 2152 Complex t; 2153 if (Utilities.noString(parentType)) 2154 t = parent; 2155 else { 2156 t = parent.predicate("fhir:" + parentType + '.' + name); 2157 } 2158 composeResource(t, "Binary", name, element, index); 2159 if (element.hasContentTypeElement()) 2160 composeCode(t, "Binary", "contentType", element.getContentTypeElement(), -1); 2161 if (element.hasSecurityContext()) 2162 composeReference(t, "Binary", "securityContext", element.getSecurityContext(), -1); 2163 if (element.hasDataElement()) 2164 composeBase64Binary(t, "Binary", "data", element.getDataElement(), -1); 2165 } 2166 2167 protected void composeBiologicallyDerivedProduct(Complex parent, String parentType, String name, 2168 BiologicallyDerivedProduct element, int index) { 2169 if (element == null) 2170 return; 2171 Complex t; 2172 if (Utilities.noString(parentType)) 2173 t = parent; 2174 else { 2175 t = parent.predicate("fhir:" + parentType + '.' + name); 2176 } 2177 composeDomainResource(t, "BiologicallyDerivedProduct", name, element, index); 2178 for (int i = 0; i < element.getIdentifier().size(); i++) 2179 composeIdentifier(t, "BiologicallyDerivedProduct", "identifier", element.getIdentifier().get(i), i); 2180 if (element.hasProductCategoryElement()) 2181 composeEnum(t, "BiologicallyDerivedProduct", "productCategory", element.getProductCategoryElement(), -1); 2182 if (element.hasProductCode()) 2183 composeCodeableConcept(t, "BiologicallyDerivedProduct", "productCode", element.getProductCode(), -1); 2184 if (element.hasStatusElement()) 2185 composeEnum(t, "BiologicallyDerivedProduct", "status", element.getStatusElement(), -1); 2186 for (int i = 0; i < element.getRequest().size(); i++) 2187 composeReference(t, "BiologicallyDerivedProduct", "request", element.getRequest().get(i), i); 2188 if (element.hasQuantityElement()) 2189 composeInteger(t, "BiologicallyDerivedProduct", "quantity", element.getQuantityElement(), -1); 2190 for (int i = 0; i < element.getParent().size(); i++) 2191 composeReference(t, "BiologicallyDerivedProduct", "parent", element.getParent().get(i), i); 2192 if (element.hasCollection()) 2193 composeBiologicallyDerivedProductBiologicallyDerivedProductCollectionComponent(t, "BiologicallyDerivedProduct", 2194 "collection", element.getCollection(), -1); 2195 for (int i = 0; i < element.getProcessing().size(); i++) 2196 composeBiologicallyDerivedProductBiologicallyDerivedProductProcessingComponent(t, "BiologicallyDerivedProduct", 2197 "processing", element.getProcessing().get(i), i); 2198 if (element.hasManipulation()) 2199 composeBiologicallyDerivedProductBiologicallyDerivedProductManipulationComponent(t, "BiologicallyDerivedProduct", 2200 "manipulation", element.getManipulation(), -1); 2201 for (int i = 0; i < element.getStorage().size(); i++) 2202 composeBiologicallyDerivedProductBiologicallyDerivedProductStorageComponent(t, "BiologicallyDerivedProduct", 2203 "storage", element.getStorage().get(i), i); 2204 } 2205 2206 protected void composeBiologicallyDerivedProductBiologicallyDerivedProductCollectionComponent(Complex parent, 2207 String parentType, String name, BiologicallyDerivedProduct.BiologicallyDerivedProductCollectionComponent element, 2208 int index) { 2209 if (element == null) 2210 return; 2211 Complex t; 2212 if (Utilities.noString(parentType)) 2213 t = parent; 2214 else { 2215 t = parent.predicate("fhir:" + parentType + '.' + name); 2216 } 2217 composeBackboneElement(t, "collection", name, element, index); 2218 if (element.hasCollector()) 2219 composeReference(t, "BiologicallyDerivedProduct", "collector", element.getCollector(), -1); 2220 if (element.hasSource()) 2221 composeReference(t, "BiologicallyDerivedProduct", "source", element.getSource(), -1); 2222 if (element.hasCollected()) 2223 composeType(t, "BiologicallyDerivedProduct", "collected", element.getCollected(), -1); 2224 } 2225 2226 protected void composeBiologicallyDerivedProductBiologicallyDerivedProductProcessingComponent(Complex parent, 2227 String parentType, String name, BiologicallyDerivedProduct.BiologicallyDerivedProductProcessingComponent element, 2228 int index) { 2229 if (element == null) 2230 return; 2231 Complex t; 2232 if (Utilities.noString(parentType)) 2233 t = parent; 2234 else { 2235 t = parent.predicate("fhir:" + parentType + '.' + name); 2236 } 2237 composeBackboneElement(t, "processing", name, element, index); 2238 if (element.hasDescriptionElement()) 2239 composeString(t, "BiologicallyDerivedProduct", "description", element.getDescriptionElement(), -1); 2240 if (element.hasProcedure()) 2241 composeCodeableConcept(t, "BiologicallyDerivedProduct", "procedure", element.getProcedure(), -1); 2242 if (element.hasAdditive()) 2243 composeReference(t, "BiologicallyDerivedProduct", "additive", element.getAdditive(), -1); 2244 if (element.hasTime()) 2245 composeType(t, "BiologicallyDerivedProduct", "time", element.getTime(), -1); 2246 } 2247 2248 protected void composeBiologicallyDerivedProductBiologicallyDerivedProductManipulationComponent(Complex parent, 2249 String parentType, String name, 2250 BiologicallyDerivedProduct.BiologicallyDerivedProductManipulationComponent element, int index) { 2251 if (element == null) 2252 return; 2253 Complex t; 2254 if (Utilities.noString(parentType)) 2255 t = parent; 2256 else { 2257 t = parent.predicate("fhir:" + parentType + '.' + name); 2258 } 2259 composeBackboneElement(t, "manipulation", name, element, index); 2260 if (element.hasDescriptionElement()) 2261 composeString(t, "BiologicallyDerivedProduct", "description", element.getDescriptionElement(), -1); 2262 if (element.hasTime()) 2263 composeType(t, "BiologicallyDerivedProduct", "time", element.getTime(), -1); 2264 } 2265 2266 protected void composeBiologicallyDerivedProductBiologicallyDerivedProductStorageComponent(Complex parent, 2267 String parentType, String name, BiologicallyDerivedProduct.BiologicallyDerivedProductStorageComponent element, 2268 int index) { 2269 if (element == null) 2270 return; 2271 Complex t; 2272 if (Utilities.noString(parentType)) 2273 t = parent; 2274 else { 2275 t = parent.predicate("fhir:" + parentType + '.' + name); 2276 } 2277 composeBackboneElement(t, "storage", name, element, index); 2278 if (element.hasDescriptionElement()) 2279 composeString(t, "BiologicallyDerivedProduct", "description", element.getDescriptionElement(), -1); 2280 if (element.hasTemperatureElement()) 2281 composeDecimal(t, "BiologicallyDerivedProduct", "temperature", element.getTemperatureElement(), -1); 2282 if (element.hasScaleElement()) 2283 composeEnum(t, "BiologicallyDerivedProduct", "scale", element.getScaleElement(), -1); 2284 if (element.hasDuration()) 2285 composePeriod(t, "BiologicallyDerivedProduct", "duration", element.getDuration(), -1); 2286 } 2287 2288 protected void composeBodyStructure(Complex parent, String parentType, String name, BodyStructure element, 2289 int index) { 2290 if (element == null) 2291 return; 2292 Complex t; 2293 if (Utilities.noString(parentType)) 2294 t = parent; 2295 else { 2296 t = parent.predicate("fhir:" + parentType + '.' + name); 2297 } 2298 composeDomainResource(t, "BodyStructure", name, element, index); 2299 for (int i = 0; i < element.getIdentifier().size(); i++) 2300 composeIdentifier(t, "BodyStructure", "identifier", element.getIdentifier().get(i), i); 2301 if (element.hasActiveElement()) 2302 composeBoolean(t, "BodyStructure", "active", element.getActiveElement(), -1); 2303 if (element.hasMorphology()) 2304 composeCodeableConcept(t, "BodyStructure", "morphology", element.getMorphology(), -1); 2305 if (element.hasLocation()) 2306 composeCodeableConcept(t, "BodyStructure", "location", element.getLocation(), -1); 2307 for (int i = 0; i < element.getLocationQualifier().size(); i++) 2308 composeCodeableConcept(t, "BodyStructure", "locationQualifier", element.getLocationQualifier().get(i), i); 2309 if (element.hasDescriptionElement()) 2310 composeString(t, "BodyStructure", "description", element.getDescriptionElement(), -1); 2311 for (int i = 0; i < element.getImage().size(); i++) 2312 composeAttachment(t, "BodyStructure", "image", element.getImage().get(i), i); 2313 if (element.hasPatient()) 2314 composeReference(t, "BodyStructure", "patient", element.getPatient(), -1); 2315 } 2316 2317 protected void composeBundle(Complex parent, String parentType, String name, Bundle element, int index) { 2318 if (element == null) 2319 return; 2320 Complex t; 2321 if (Utilities.noString(parentType)) 2322 t = parent; 2323 else { 2324 t = parent.predicate("fhir:" + parentType + '.' + name); 2325 } 2326 composeResource(t, "Bundle", name, element, index); 2327 if (element.hasIdentifier()) 2328 composeIdentifier(t, "Bundle", "identifier", element.getIdentifier(), -1); 2329 if (element.hasTypeElement()) 2330 composeEnum(t, "Bundle", "type", element.getTypeElement(), -1); 2331 if (element.hasTimestampElement()) 2332 composeInstant(t, "Bundle", "timestamp", element.getTimestampElement(), -1); 2333 if (element.hasTotalElement()) 2334 composeUnsignedInt(t, "Bundle", "total", element.getTotalElement(), -1); 2335 for (int i = 0; i < element.getLink().size(); i++) 2336 composeBundleBundleLinkComponent(t, "Bundle", "link", element.getLink().get(i), i); 2337 for (int i = 0; i < element.getEntry().size(); i++) 2338 composeBundleBundleEntryComponent(t, "Bundle", "entry", element.getEntry().get(i), i); 2339 if (element.hasSignature()) 2340 composeSignature(t, "Bundle", "signature", element.getSignature(), -1); 2341 } 2342 2343 protected void composeBundleBundleLinkComponent(Complex parent, String parentType, String name, 2344 Bundle.BundleLinkComponent element, int index) { 2345 if (element == null) 2346 return; 2347 Complex t; 2348 if (Utilities.noString(parentType)) 2349 t = parent; 2350 else { 2351 t = parent.predicate("fhir:" + parentType + '.' + name); 2352 } 2353 composeBackboneElement(t, "link", name, element, index); 2354 if (element.hasRelationElement()) 2355 composeString(t, "Bundle", "relation", element.getRelationElement(), -1); 2356 if (element.hasUrlElement()) 2357 composeUri(t, "Bundle", "url", element.getUrlElement(), -1); 2358 } 2359 2360 protected void composeBundleBundleEntryComponent(Complex parent, String parentType, String name, 2361 Bundle.BundleEntryComponent element, int index) { 2362 if (element == null) 2363 return; 2364 Complex t; 2365 if (Utilities.noString(parentType)) 2366 t = parent; 2367 else { 2368 t = parent.predicate("fhir:" + parentType + '.' + name); 2369 } 2370 composeBackboneElement(t, "entry", name, element, index); 2371 for (int i = 0; i < element.getLink().size(); i++) 2372 composeBundleBundleLinkComponent(t, "Bundle", "link", element.getLink().get(i), i); 2373 if (element.hasFullUrlElement()) 2374 composeUri(t, "Bundle", "fullUrl", element.getFullUrlElement(), -1); 2375 if (element.hasResource()) 2376 composeResource(t, "Bundle", "resource", element.getResource(), -1); 2377 if (element.hasSearch()) 2378 composeBundleBundleEntrySearchComponent(t, "Bundle", "search", element.getSearch(), -1); 2379 if (element.hasRequest()) 2380 composeBundleBundleEntryRequestComponent(t, "Bundle", "request", element.getRequest(), -1); 2381 if (element.hasResponse()) 2382 composeBundleBundleEntryResponseComponent(t, "Bundle", "response", element.getResponse(), -1); 2383 } 2384 2385 protected void composeBundleBundleEntrySearchComponent(Complex parent, String parentType, String name, 2386 Bundle.BundleEntrySearchComponent element, int index) { 2387 if (element == null) 2388 return; 2389 Complex t; 2390 if (Utilities.noString(parentType)) 2391 t = parent; 2392 else { 2393 t = parent.predicate("fhir:" + parentType + '.' + name); 2394 } 2395 composeBackboneElement(t, "search", name, element, index); 2396 if (element.hasModeElement()) 2397 composeEnum(t, "Bundle", "mode", element.getModeElement(), -1); 2398 if (element.hasScoreElement()) 2399 composeDecimal(t, "Bundle", "score", element.getScoreElement(), -1); 2400 } 2401 2402 protected void composeBundleBundleEntryRequestComponent(Complex parent, String parentType, String name, 2403 Bundle.BundleEntryRequestComponent element, int index) { 2404 if (element == null) 2405 return; 2406 Complex t; 2407 if (Utilities.noString(parentType)) 2408 t = parent; 2409 else { 2410 t = parent.predicate("fhir:" + parentType + '.' + name); 2411 } 2412 composeBackboneElement(t, "request", name, element, index); 2413 if (element.hasMethodElement()) 2414 composeEnum(t, "Bundle", "method", element.getMethodElement(), -1); 2415 if (element.hasUrlElement()) 2416 composeUri(t, "Bundle", "url", element.getUrlElement(), -1); 2417 if (element.hasIfNoneMatchElement()) 2418 composeString(t, "Bundle", "ifNoneMatch", element.getIfNoneMatchElement(), -1); 2419 if (element.hasIfModifiedSinceElement()) 2420 composeInstant(t, "Bundle", "ifModifiedSince", element.getIfModifiedSinceElement(), -1); 2421 if (element.hasIfMatchElement()) 2422 composeString(t, "Bundle", "ifMatch", element.getIfMatchElement(), -1); 2423 if (element.hasIfNoneExistElement()) 2424 composeString(t, "Bundle", "ifNoneExist", element.getIfNoneExistElement(), -1); 2425 } 2426 2427 protected void composeBundleBundleEntryResponseComponent(Complex parent, String parentType, String name, 2428 Bundle.BundleEntryResponseComponent element, int index) { 2429 if (element == null) 2430 return; 2431 Complex t; 2432 if (Utilities.noString(parentType)) 2433 t = parent; 2434 else { 2435 t = parent.predicate("fhir:" + parentType + '.' + name); 2436 } 2437 composeBackboneElement(t, "response", name, element, index); 2438 if (element.hasStatusElement()) 2439 composeString(t, "Bundle", "status", element.getStatusElement(), -1); 2440 if (element.hasLocationElement()) 2441 composeUri(t, "Bundle", "location", element.getLocationElement(), -1); 2442 if (element.hasEtagElement()) 2443 composeString(t, "Bundle", "etag", element.getEtagElement(), -1); 2444 if (element.hasLastModifiedElement()) 2445 composeInstant(t, "Bundle", "lastModified", element.getLastModifiedElement(), -1); 2446 if (element.hasOutcome()) 2447 composeResource(t, "Bundle", "outcome", element.getOutcome(), -1); 2448 } 2449 2450 protected void composeCapabilityStatement(Complex parent, String parentType, String name, CapabilityStatement element, 2451 int index) { 2452 if (element == null) 2453 return; 2454 Complex t; 2455 if (Utilities.noString(parentType)) 2456 t = parent; 2457 else { 2458 t = parent.predicate("fhir:" + parentType + '.' + name); 2459 } 2460 composeDomainResource(t, "CapabilityStatement", name, element, index); 2461 if (element.hasUrlElement()) 2462 composeUri(t, "CapabilityStatement", "url", element.getUrlElement(), -1); 2463 if (element.hasVersionElement()) 2464 composeString(t, "CapabilityStatement", "version", element.getVersionElement(), -1); 2465 if (element.hasNameElement()) 2466 composeString(t, "CapabilityStatement", "name", element.getNameElement(), -1); 2467 if (element.hasTitleElement()) 2468 composeString(t, "CapabilityStatement", "title", element.getTitleElement(), -1); 2469 if (element.hasStatusElement()) 2470 composeEnum(t, "CapabilityStatement", "status", element.getStatusElement(), -1); 2471 if (element.hasExperimentalElement()) 2472 composeBoolean(t, "CapabilityStatement", "experimental", element.getExperimentalElement(), -1); 2473 if (element.hasDateElement()) 2474 composeDateTime(t, "CapabilityStatement", "date", element.getDateElement(), -1); 2475 if (element.hasPublisherElement()) 2476 composeString(t, "CapabilityStatement", "publisher", element.getPublisherElement(), -1); 2477 for (int i = 0; i < element.getContact().size(); i++) 2478 composeContactDetail(t, "CapabilityStatement", "contact", element.getContact().get(i), i); 2479 if (element.hasDescriptionElement()) 2480 composeMarkdown(t, "CapabilityStatement", "description", element.getDescriptionElement(), -1); 2481 for (int i = 0; i < element.getUseContext().size(); i++) 2482 composeUsageContext(t, "CapabilityStatement", "useContext", element.getUseContext().get(i), i); 2483 for (int i = 0; i < element.getJurisdiction().size(); i++) 2484 composeCodeableConcept(t, "CapabilityStatement", "jurisdiction", element.getJurisdiction().get(i), i); 2485 if (element.hasPurposeElement()) 2486 composeMarkdown(t, "CapabilityStatement", "purpose", element.getPurposeElement(), -1); 2487 if (element.hasCopyrightElement()) 2488 composeMarkdown(t, "CapabilityStatement", "copyright", element.getCopyrightElement(), -1); 2489 if (element.hasKindElement()) 2490 composeEnum(t, "CapabilityStatement", "kind", element.getKindElement(), -1); 2491 for (int i = 0; i < element.getInstantiates().size(); i++) 2492 composeCanonical(t, "CapabilityStatement", "instantiates", element.getInstantiates().get(i), i); 2493 for (int i = 0; i < element.getImports().size(); i++) 2494 composeCanonical(t, "CapabilityStatement", "imports", element.getImports().get(i), i); 2495 if (element.hasSoftware()) 2496 composeCapabilityStatementCapabilityStatementSoftwareComponent(t, "CapabilityStatement", "software", 2497 element.getSoftware(), -1); 2498 if (element.hasImplementation()) 2499 composeCapabilityStatementCapabilityStatementImplementationComponent(t, "CapabilityStatement", "implementation", 2500 element.getImplementation(), -1); 2501 if (element.hasFhirVersionElement()) 2502 composeEnum(t, "CapabilityStatement", "fhirVersion", element.getFhirVersionElement(), -1); 2503 for (int i = 0; i < element.getFormat().size(); i++) 2504 composeCode(t, "CapabilityStatement", "format", element.getFormat().get(i), i); 2505 for (int i = 0; i < element.getPatchFormat().size(); i++) 2506 composeCode(t, "CapabilityStatement", "patchFormat", element.getPatchFormat().get(i), i); 2507 for (int i = 0; i < element.getImplementationGuide().size(); i++) 2508 composeCanonical(t, "CapabilityStatement", "implementationGuide", element.getImplementationGuide().get(i), i); 2509 for (int i = 0; i < element.getRest().size(); i++) 2510 composeCapabilityStatementCapabilityStatementRestComponent(t, "CapabilityStatement", "rest", 2511 element.getRest().get(i), i); 2512 for (int i = 0; i < element.getMessaging().size(); i++) 2513 composeCapabilityStatementCapabilityStatementMessagingComponent(t, "CapabilityStatement", "messaging", 2514 element.getMessaging().get(i), i); 2515 for (int i = 0; i < element.getDocument().size(); i++) 2516 composeCapabilityStatementCapabilityStatementDocumentComponent(t, "CapabilityStatement", "document", 2517 element.getDocument().get(i), i); 2518 } 2519 2520 protected void composeCapabilityStatementCapabilityStatementSoftwareComponent(Complex parent, String parentType, 2521 String name, CapabilityStatement.CapabilityStatementSoftwareComponent element, int index) { 2522 if (element == null) 2523 return; 2524 Complex t; 2525 if (Utilities.noString(parentType)) 2526 t = parent; 2527 else { 2528 t = parent.predicate("fhir:" + parentType + '.' + name); 2529 } 2530 composeBackboneElement(t, "software", name, element, index); 2531 if (element.hasNameElement()) 2532 composeString(t, "CapabilityStatement", "name", element.getNameElement(), -1); 2533 if (element.hasVersionElement()) 2534 composeString(t, "CapabilityStatement", "version", element.getVersionElement(), -1); 2535 if (element.hasReleaseDateElement()) 2536 composeDateTime(t, "CapabilityStatement", "releaseDate", element.getReleaseDateElement(), -1); 2537 } 2538 2539 protected void composeCapabilityStatementCapabilityStatementImplementationComponent(Complex parent, String parentType, 2540 String name, CapabilityStatement.CapabilityStatementImplementationComponent element, int index) { 2541 if (element == null) 2542 return; 2543 Complex t; 2544 if (Utilities.noString(parentType)) 2545 t = parent; 2546 else { 2547 t = parent.predicate("fhir:" + parentType + '.' + name); 2548 } 2549 composeBackboneElement(t, "implementation", name, element, index); 2550 if (element.hasDescriptionElement()) 2551 composeString(t, "CapabilityStatement", "description", element.getDescriptionElement(), -1); 2552 if (element.hasUrlElement()) 2553 composeUrl(t, "CapabilityStatement", "url", element.getUrlElement(), -1); 2554 if (element.hasCustodian()) 2555 composeReference(t, "CapabilityStatement", "custodian", element.getCustodian(), -1); 2556 } 2557 2558 protected void composeCapabilityStatementCapabilityStatementRestComponent(Complex parent, String parentType, 2559 String name, CapabilityStatement.CapabilityStatementRestComponent element, int index) { 2560 if (element == null) 2561 return; 2562 Complex t; 2563 if (Utilities.noString(parentType)) 2564 t = parent; 2565 else { 2566 t = parent.predicate("fhir:" + parentType + '.' + name); 2567 } 2568 composeBackboneElement(t, "rest", name, element, index); 2569 if (element.hasModeElement()) 2570 composeEnum(t, "CapabilityStatement", "mode", element.getModeElement(), -1); 2571 if (element.hasDocumentationElement()) 2572 composeMarkdown(t, "CapabilityStatement", "documentation", element.getDocumentationElement(), -1); 2573 if (element.hasSecurity()) 2574 composeCapabilityStatementCapabilityStatementRestSecurityComponent(t, "CapabilityStatement", "security", 2575 element.getSecurity(), -1); 2576 for (int i = 0; i < element.getResource().size(); i++) 2577 composeCapabilityStatementCapabilityStatementRestResourceComponent(t, "CapabilityStatement", "resource", 2578 element.getResource().get(i), i); 2579 for (int i = 0; i < element.getInteraction().size(); i++) 2580 composeCapabilityStatementSystemInteractionComponent(t, "CapabilityStatement", "interaction", 2581 element.getInteraction().get(i), i); 2582 for (int i = 0; i < element.getSearchParam().size(); i++) 2583 composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(t, "CapabilityStatement", 2584 "searchParam", element.getSearchParam().get(i), i); 2585 for (int i = 0; i < element.getOperation().size(); i++) 2586 composeCapabilityStatementCapabilityStatementRestResourceOperationComponent(t, "CapabilityStatement", "operation", 2587 element.getOperation().get(i), i); 2588 for (int i = 0; i < element.getCompartment().size(); i++) 2589 composeCanonical(t, "CapabilityStatement", "compartment", element.getCompartment().get(i), i); 2590 } 2591 2592 protected void composeCapabilityStatementCapabilityStatementRestSecurityComponent(Complex parent, String parentType, 2593 String name, CapabilityStatement.CapabilityStatementRestSecurityComponent element, int index) { 2594 if (element == null) 2595 return; 2596 Complex t; 2597 if (Utilities.noString(parentType)) 2598 t = parent; 2599 else { 2600 t = parent.predicate("fhir:" + parentType + '.' + name); 2601 } 2602 composeBackboneElement(t, "security", name, element, index); 2603 if (element.hasCorsElement()) 2604 composeBoolean(t, "CapabilityStatement", "cors", element.getCorsElement(), -1); 2605 for (int i = 0; i < element.getService().size(); i++) 2606 composeCodeableConcept(t, "CapabilityStatement", "service", element.getService().get(i), i); 2607 if (element.hasDescriptionElement()) 2608 composeMarkdown(t, "CapabilityStatement", "description", element.getDescriptionElement(), -1); 2609 } 2610 2611 protected void composeCapabilityStatementCapabilityStatementRestResourceComponent(Complex parent, String parentType, 2612 String name, CapabilityStatement.CapabilityStatementRestResourceComponent element, int index) { 2613 if (element == null) 2614 return; 2615 Complex t; 2616 if (Utilities.noString(parentType)) 2617 t = parent; 2618 else { 2619 t = parent.predicate("fhir:" + parentType + '.' + name); 2620 } 2621 composeBackboneElement(t, "resource", name, element, index); 2622 if (element.hasTypeElement()) 2623 composeCode(t, "CapabilityStatement", "type", element.getTypeElement(), -1); 2624 if (element.hasProfileElement()) 2625 composeCanonical(t, "CapabilityStatement", "profile", element.getProfileElement(), -1); 2626 for (int i = 0; i < element.getSupportedProfile().size(); i++) 2627 composeCanonical(t, "CapabilityStatement", "supportedProfile", element.getSupportedProfile().get(i), i); 2628 if (element.hasDocumentationElement()) 2629 composeMarkdown(t, "CapabilityStatement", "documentation", element.getDocumentationElement(), -1); 2630 for (int i = 0; i < element.getInteraction().size(); i++) 2631 composeCapabilityStatementResourceInteractionComponent(t, "CapabilityStatement", "interaction", 2632 element.getInteraction().get(i), i); 2633 if (element.hasVersioningElement()) 2634 composeEnum(t, "CapabilityStatement", "versioning", element.getVersioningElement(), -1); 2635 if (element.hasReadHistoryElement()) 2636 composeBoolean(t, "CapabilityStatement", "readHistory", element.getReadHistoryElement(), -1); 2637 if (element.hasUpdateCreateElement()) 2638 composeBoolean(t, "CapabilityStatement", "updateCreate", element.getUpdateCreateElement(), -1); 2639 if (element.hasConditionalCreateElement()) 2640 composeBoolean(t, "CapabilityStatement", "conditionalCreate", element.getConditionalCreateElement(), -1); 2641 if (element.hasConditionalReadElement()) 2642 composeEnum(t, "CapabilityStatement", "conditionalRead", element.getConditionalReadElement(), -1); 2643 if (element.hasConditionalUpdateElement()) 2644 composeBoolean(t, "CapabilityStatement", "conditionalUpdate", element.getConditionalUpdateElement(), -1); 2645 if (element.hasConditionalDeleteElement()) 2646 composeEnum(t, "CapabilityStatement", "conditionalDelete", element.getConditionalDeleteElement(), -1); 2647 for (int i = 0; i < element.getReferencePolicy().size(); i++) 2648 composeEnum(t, "CapabilityStatement", "referencePolicy", element.getReferencePolicy().get(i), i); 2649 for (int i = 0; i < element.getSearchInclude().size(); i++) 2650 composeString(t, "CapabilityStatement", "searchInclude", element.getSearchInclude().get(i), i); 2651 for (int i = 0; i < element.getSearchRevInclude().size(); i++) 2652 composeString(t, "CapabilityStatement", "searchRevInclude", element.getSearchRevInclude().get(i), i); 2653 for (int i = 0; i < element.getSearchParam().size(); i++) 2654 composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(t, "CapabilityStatement", 2655 "searchParam", element.getSearchParam().get(i), i); 2656 for (int i = 0; i < element.getOperation().size(); i++) 2657 composeCapabilityStatementCapabilityStatementRestResourceOperationComponent(t, "CapabilityStatement", "operation", 2658 element.getOperation().get(i), i); 2659 } 2660 2661 protected void composeCapabilityStatementResourceInteractionComponent(Complex parent, String parentType, String name, 2662 CapabilityStatement.ResourceInteractionComponent element, int index) { 2663 if (element == null) 2664 return; 2665 Complex t; 2666 if (Utilities.noString(parentType)) 2667 t = parent; 2668 else { 2669 t = parent.predicate("fhir:" + parentType + '.' + name); 2670 } 2671 composeBackboneElement(t, "interaction", name, element, index); 2672 if (element.hasCodeElement()) 2673 composeEnum(t, "CapabilityStatement", "code", element.getCodeElement(), -1); 2674 if (element.hasDocumentationElement()) 2675 composeMarkdown(t, "CapabilityStatement", "documentation", element.getDocumentationElement(), -1); 2676 } 2677 2678 protected void composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(Complex parent, 2679 String parentType, String name, CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent element, 2680 int index) { 2681 if (element == null) 2682 return; 2683 Complex t; 2684 if (Utilities.noString(parentType)) 2685 t = parent; 2686 else { 2687 t = parent.predicate("fhir:" + parentType + '.' + name); 2688 } 2689 composeBackboneElement(t, "searchParam", name, element, index); 2690 if (element.hasNameElement()) 2691 composeString(t, "CapabilityStatement", "name", element.getNameElement(), -1); 2692 if (element.hasDefinitionElement()) 2693 composeCanonical(t, "CapabilityStatement", "definition", element.getDefinitionElement(), -1); 2694 if (element.hasTypeElement()) 2695 composeEnum(t, "CapabilityStatement", "type", element.getTypeElement(), -1); 2696 if (element.hasDocumentationElement()) 2697 composeMarkdown(t, "CapabilityStatement", "documentation", element.getDocumentationElement(), -1); 2698 } 2699 2700 protected void composeCapabilityStatementCapabilityStatementRestResourceOperationComponent(Complex parent, 2701 String parentType, String name, CapabilityStatement.CapabilityStatementRestResourceOperationComponent element, 2702 int index) { 2703 if (element == null) 2704 return; 2705 Complex t; 2706 if (Utilities.noString(parentType)) 2707 t = parent; 2708 else { 2709 t = parent.predicate("fhir:" + parentType + '.' + name); 2710 } 2711 composeBackboneElement(t, "operation", name, element, index); 2712 if (element.hasNameElement()) 2713 composeString(t, "CapabilityStatement", "name", element.getNameElement(), -1); 2714 if (element.hasDefinitionElement()) 2715 composeCanonical(t, "CapabilityStatement", "definition", element.getDefinitionElement(), -1); 2716 if (element.hasDocumentationElement()) 2717 composeMarkdown(t, "CapabilityStatement", "documentation", element.getDocumentationElement(), -1); 2718 } 2719 2720 protected void composeCapabilityStatementSystemInteractionComponent(Complex parent, String parentType, String name, 2721 CapabilityStatement.SystemInteractionComponent element, int index) { 2722 if (element == null) 2723 return; 2724 Complex t; 2725 if (Utilities.noString(parentType)) 2726 t = parent; 2727 else { 2728 t = parent.predicate("fhir:" + parentType + '.' + name); 2729 } 2730 composeBackboneElement(t, "interaction", name, element, index); 2731 if (element.hasCodeElement()) 2732 composeEnum(t, "CapabilityStatement", "code", element.getCodeElement(), -1); 2733 if (element.hasDocumentationElement()) 2734 composeMarkdown(t, "CapabilityStatement", "documentation", element.getDocumentationElement(), -1); 2735 } 2736 2737 protected void composeCapabilityStatementCapabilityStatementMessagingComponent(Complex parent, String parentType, 2738 String name, CapabilityStatement.CapabilityStatementMessagingComponent element, int index) { 2739 if (element == null) 2740 return; 2741 Complex t; 2742 if (Utilities.noString(parentType)) 2743 t = parent; 2744 else { 2745 t = parent.predicate("fhir:" + parentType + '.' + name); 2746 } 2747 composeBackboneElement(t, "messaging", name, element, index); 2748 for (int i = 0; i < element.getEndpoint().size(); i++) 2749 composeCapabilityStatementCapabilityStatementMessagingEndpointComponent(t, "CapabilityStatement", "endpoint", 2750 element.getEndpoint().get(i), i); 2751 if (element.hasReliableCacheElement()) 2752 composeUnsignedInt(t, "CapabilityStatement", "reliableCache", element.getReliableCacheElement(), -1); 2753 if (element.hasDocumentationElement()) 2754 composeMarkdown(t, "CapabilityStatement", "documentation", element.getDocumentationElement(), -1); 2755 for (int i = 0; i < element.getSupportedMessage().size(); i++) 2756 composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent(t, "CapabilityStatement", 2757 "supportedMessage", element.getSupportedMessage().get(i), i); 2758 } 2759 2760 protected void composeCapabilityStatementCapabilityStatementMessagingEndpointComponent(Complex parent, 2761 String parentType, String name, CapabilityStatement.CapabilityStatementMessagingEndpointComponent element, 2762 int index) { 2763 if (element == null) 2764 return; 2765 Complex t; 2766 if (Utilities.noString(parentType)) 2767 t = parent; 2768 else { 2769 t = parent.predicate("fhir:" + parentType + '.' + name); 2770 } 2771 composeBackboneElement(t, "endpoint", name, element, index); 2772 if (element.hasProtocol()) 2773 composeCoding(t, "CapabilityStatement", "protocol", element.getProtocol(), -1); 2774 if (element.hasAddressElement()) 2775 composeUrl(t, "CapabilityStatement", "address", element.getAddressElement(), -1); 2776 } 2777 2778 protected void composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent(Complex parent, 2779 String parentType, String name, CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent element, 2780 int index) { 2781 if (element == null) 2782 return; 2783 Complex t; 2784 if (Utilities.noString(parentType)) 2785 t = parent; 2786 else { 2787 t = parent.predicate("fhir:" + parentType + '.' + name); 2788 } 2789 composeBackboneElement(t, "supportedMessage", name, element, index); 2790 if (element.hasModeElement()) 2791 composeEnum(t, "CapabilityStatement", "mode", element.getModeElement(), -1); 2792 if (element.hasDefinitionElement()) 2793 composeCanonical(t, "CapabilityStatement", "definition", element.getDefinitionElement(), -1); 2794 } 2795 2796 protected void composeCapabilityStatementCapabilityStatementDocumentComponent(Complex parent, String parentType, 2797 String name, CapabilityStatement.CapabilityStatementDocumentComponent element, int index) { 2798 if (element == null) 2799 return; 2800 Complex t; 2801 if (Utilities.noString(parentType)) 2802 t = parent; 2803 else { 2804 t = parent.predicate("fhir:" + parentType + '.' + name); 2805 } 2806 composeBackboneElement(t, "document", name, element, index); 2807 if (element.hasModeElement()) 2808 composeEnum(t, "CapabilityStatement", "mode", element.getModeElement(), -1); 2809 if (element.hasDocumentationElement()) 2810 composeMarkdown(t, "CapabilityStatement", "documentation", element.getDocumentationElement(), -1); 2811 if (element.hasProfileElement()) 2812 composeCanonical(t, "CapabilityStatement", "profile", element.getProfileElement(), -1); 2813 } 2814 2815 protected void composeCarePlan(Complex parent, String parentType, String name, CarePlan element, int index) { 2816 if (element == null) 2817 return; 2818 Complex t; 2819 if (Utilities.noString(parentType)) 2820 t = parent; 2821 else { 2822 t = parent.predicate("fhir:" + parentType + '.' + name); 2823 } 2824 composeDomainResource(t, "CarePlan", name, element, index); 2825 for (int i = 0; i < element.getIdentifier().size(); i++) 2826 composeIdentifier(t, "CarePlan", "identifier", element.getIdentifier().get(i), i); 2827 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 2828 composeCanonical(t, "CarePlan", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 2829 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 2830 composeUri(t, "CarePlan", "instantiatesUri", element.getInstantiatesUri().get(i), i); 2831 for (int i = 0; i < element.getBasedOn().size(); i++) 2832 composeReference(t, "CarePlan", "basedOn", element.getBasedOn().get(i), i); 2833 for (int i = 0; i < element.getReplaces().size(); i++) 2834 composeReference(t, "CarePlan", "replaces", element.getReplaces().get(i), i); 2835 for (int i = 0; i < element.getPartOf().size(); i++) 2836 composeReference(t, "CarePlan", "partOf", element.getPartOf().get(i), i); 2837 if (element.hasStatusElement()) 2838 composeEnum(t, "CarePlan", "status", element.getStatusElement(), -1); 2839 if (element.hasIntentElement()) 2840 composeEnum(t, "CarePlan", "intent", element.getIntentElement(), -1); 2841 for (int i = 0; i < element.getCategory().size(); i++) 2842 composeCodeableConcept(t, "CarePlan", "category", element.getCategory().get(i), i); 2843 if (element.hasTitleElement()) 2844 composeString(t, "CarePlan", "title", element.getTitleElement(), -1); 2845 if (element.hasDescriptionElement()) 2846 composeString(t, "CarePlan", "description", element.getDescriptionElement(), -1); 2847 if (element.hasSubject()) 2848 composeReference(t, "CarePlan", "subject", element.getSubject(), -1); 2849 if (element.hasEncounter()) 2850 composeReference(t, "CarePlan", "encounter", element.getEncounter(), -1); 2851 if (element.hasPeriod()) 2852 composePeriod(t, "CarePlan", "period", element.getPeriod(), -1); 2853 if (element.hasCreatedElement()) 2854 composeDateTime(t, "CarePlan", "created", element.getCreatedElement(), -1); 2855 if (element.hasAuthor()) 2856 composeReference(t, "CarePlan", "author", element.getAuthor(), -1); 2857 for (int i = 0; i < element.getContributor().size(); i++) 2858 composeReference(t, "CarePlan", "contributor", element.getContributor().get(i), i); 2859 for (int i = 0; i < element.getCareTeam().size(); i++) 2860 composeReference(t, "CarePlan", "careTeam", element.getCareTeam().get(i), i); 2861 for (int i = 0; i < element.getAddresses().size(); i++) 2862 composeReference(t, "CarePlan", "addresses", element.getAddresses().get(i), i); 2863 for (int i = 0; i < element.getSupportingInfo().size(); i++) 2864 composeReference(t, "CarePlan", "supportingInfo", element.getSupportingInfo().get(i), i); 2865 for (int i = 0; i < element.getGoal().size(); i++) 2866 composeReference(t, "CarePlan", "goal", element.getGoal().get(i), i); 2867 for (int i = 0; i < element.getActivity().size(); i++) 2868 composeCarePlanCarePlanActivityComponent(t, "CarePlan", "activity", element.getActivity().get(i), i); 2869 for (int i = 0; i < element.getNote().size(); i++) 2870 composeAnnotation(t, "CarePlan", "note", element.getNote().get(i), i); 2871 } 2872 2873 protected void composeCarePlanCarePlanActivityComponent(Complex parent, String parentType, String name, 2874 CarePlan.CarePlanActivityComponent element, int index) { 2875 if (element == null) 2876 return; 2877 Complex t; 2878 if (Utilities.noString(parentType)) 2879 t = parent; 2880 else { 2881 t = parent.predicate("fhir:" + parentType + '.' + name); 2882 } 2883 composeBackboneElement(t, "activity", name, element, index); 2884 for (int i = 0; i < element.getOutcomeCodeableConcept().size(); i++) 2885 composeCodeableConcept(t, "CarePlan", "outcomeCodeableConcept", element.getOutcomeCodeableConcept().get(i), i); 2886 for (int i = 0; i < element.getOutcomeReference().size(); i++) 2887 composeReference(t, "CarePlan", "outcomeReference", element.getOutcomeReference().get(i), i); 2888 for (int i = 0; i < element.getProgress().size(); i++) 2889 composeAnnotation(t, "CarePlan", "progress", element.getProgress().get(i), i); 2890 if (element.hasReference()) 2891 composeReference(t, "CarePlan", "reference", element.getReference(), -1); 2892 if (element.hasDetail()) 2893 composeCarePlanCarePlanActivityDetailComponent(t, "CarePlan", "detail", element.getDetail(), -1); 2894 } 2895 2896 protected void composeCarePlanCarePlanActivityDetailComponent(Complex parent, String parentType, String name, 2897 CarePlan.CarePlanActivityDetailComponent element, int index) { 2898 if (element == null) 2899 return; 2900 Complex t; 2901 if (Utilities.noString(parentType)) 2902 t = parent; 2903 else { 2904 t = parent.predicate("fhir:" + parentType + '.' + name); 2905 } 2906 composeBackboneElement(t, "detail", name, element, index); 2907 if (element.hasKindElement()) 2908 composeEnum(t, "CarePlan", "kind", element.getKindElement(), -1); 2909 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 2910 composeCanonical(t, "CarePlan", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 2911 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 2912 composeUri(t, "CarePlan", "instantiatesUri", element.getInstantiatesUri().get(i), i); 2913 if (element.hasCode()) 2914 composeCodeableConcept(t, "CarePlan", "code", element.getCode(), -1); 2915 for (int i = 0; i < element.getReasonCode().size(); i++) 2916 composeCodeableConcept(t, "CarePlan", "reasonCode", element.getReasonCode().get(i), i); 2917 for (int i = 0; i < element.getReasonReference().size(); i++) 2918 composeReference(t, "CarePlan", "reasonReference", element.getReasonReference().get(i), i); 2919 for (int i = 0; i < element.getGoal().size(); i++) 2920 composeReference(t, "CarePlan", "goal", element.getGoal().get(i), i); 2921 if (element.hasStatusElement()) 2922 composeEnum(t, "CarePlan", "status", element.getStatusElement(), -1); 2923 if (element.hasStatusReason()) 2924 composeCodeableConcept(t, "CarePlan", "statusReason", element.getStatusReason(), -1); 2925 if (element.hasDoNotPerformElement()) 2926 composeBoolean(t, "CarePlan", "doNotPerform", element.getDoNotPerformElement(), -1); 2927 if (element.hasScheduled()) 2928 composeType(t, "CarePlan", "scheduled", element.getScheduled(), -1); 2929 if (element.hasLocation()) 2930 composeReference(t, "CarePlan", "location", element.getLocation(), -1); 2931 for (int i = 0; i < element.getPerformer().size(); i++) 2932 composeReference(t, "CarePlan", "performer", element.getPerformer().get(i), i); 2933 if (element.hasProduct()) 2934 composeType(t, "CarePlan", "product", element.getProduct(), -1); 2935 if (element.hasDailyAmount()) 2936 composeQuantity(t, "CarePlan", "dailyAmount", element.getDailyAmount(), -1); 2937 if (element.hasQuantity()) 2938 composeQuantity(t, "CarePlan", "quantity", element.getQuantity(), -1); 2939 if (element.hasDescriptionElement()) 2940 composeString(t, "CarePlan", "description", element.getDescriptionElement(), -1); 2941 } 2942 2943 protected void composeCareTeam(Complex parent, String parentType, String name, CareTeam element, int index) { 2944 if (element == null) 2945 return; 2946 Complex t; 2947 if (Utilities.noString(parentType)) 2948 t = parent; 2949 else { 2950 t = parent.predicate("fhir:" + parentType + '.' + name); 2951 } 2952 composeDomainResource(t, "CareTeam", name, element, index); 2953 for (int i = 0; i < element.getIdentifier().size(); i++) 2954 composeIdentifier(t, "CareTeam", "identifier", element.getIdentifier().get(i), i); 2955 if (element.hasStatusElement()) 2956 composeEnum(t, "CareTeam", "status", element.getStatusElement(), -1); 2957 for (int i = 0; i < element.getCategory().size(); i++) 2958 composeCodeableConcept(t, "CareTeam", "category", element.getCategory().get(i), i); 2959 if (element.hasNameElement()) 2960 composeString(t, "CareTeam", "name", element.getNameElement(), -1); 2961 if (element.hasSubject()) 2962 composeReference(t, "CareTeam", "subject", element.getSubject(), -1); 2963 if (element.hasEncounter()) 2964 composeReference(t, "CareTeam", "encounter", element.getEncounter(), -1); 2965 if (element.hasPeriod()) 2966 composePeriod(t, "CareTeam", "period", element.getPeriod(), -1); 2967 for (int i = 0; i < element.getParticipant().size(); i++) 2968 composeCareTeamCareTeamParticipantComponent(t, "CareTeam", "participant", element.getParticipant().get(i), i); 2969 for (int i = 0; i < element.getReasonCode().size(); i++) 2970 composeCodeableConcept(t, "CareTeam", "reasonCode", element.getReasonCode().get(i), i); 2971 for (int i = 0; i < element.getReasonReference().size(); i++) 2972 composeReference(t, "CareTeam", "reasonReference", element.getReasonReference().get(i), i); 2973 for (int i = 0; i < element.getManagingOrganization().size(); i++) 2974 composeReference(t, "CareTeam", "managingOrganization", element.getManagingOrganization().get(i), i); 2975 for (int i = 0; i < element.getTelecom().size(); i++) 2976 composeContactPoint(t, "CareTeam", "telecom", element.getTelecom().get(i), i); 2977 for (int i = 0; i < element.getNote().size(); i++) 2978 composeAnnotation(t, "CareTeam", "note", element.getNote().get(i), i); 2979 } 2980 2981 protected void composeCareTeamCareTeamParticipantComponent(Complex parent, String parentType, String name, 2982 CareTeam.CareTeamParticipantComponent element, int index) { 2983 if (element == null) 2984 return; 2985 Complex t; 2986 if (Utilities.noString(parentType)) 2987 t = parent; 2988 else { 2989 t = parent.predicate("fhir:" + parentType + '.' + name); 2990 } 2991 composeBackboneElement(t, "participant", name, element, index); 2992 for (int i = 0; i < element.getRole().size(); i++) 2993 composeCodeableConcept(t, "CareTeam", "role", element.getRole().get(i), i); 2994 if (element.hasMember()) 2995 composeReference(t, "CareTeam", "member", element.getMember(), -1); 2996 if (element.hasOnBehalfOf()) 2997 composeReference(t, "CareTeam", "onBehalfOf", element.getOnBehalfOf(), -1); 2998 if (element.hasPeriod()) 2999 composePeriod(t, "CareTeam", "period", element.getPeriod(), -1); 3000 } 3001 3002 protected void composeCatalogEntry(Complex parent, String parentType, String name, CatalogEntry element, int index) { 3003 if (element == null) 3004 return; 3005 Complex t; 3006 if (Utilities.noString(parentType)) 3007 t = parent; 3008 else { 3009 t = parent.predicate("fhir:" + parentType + '.' + name); 3010 } 3011 composeDomainResource(t, "CatalogEntry", name, element, index); 3012 for (int i = 0; i < element.getIdentifier().size(); i++) 3013 composeIdentifier(t, "CatalogEntry", "identifier", element.getIdentifier().get(i), i); 3014 if (element.hasType()) 3015 composeCodeableConcept(t, "CatalogEntry", "type", element.getType(), -1); 3016 if (element.hasOrderableElement()) 3017 composeBoolean(t, "CatalogEntry", "orderable", element.getOrderableElement(), -1); 3018 if (element.hasReferencedItem()) 3019 composeReference(t, "CatalogEntry", "referencedItem", element.getReferencedItem(), -1); 3020 for (int i = 0; i < element.getAdditionalIdentifier().size(); i++) 3021 composeIdentifier(t, "CatalogEntry", "additionalIdentifier", element.getAdditionalIdentifier().get(i), i); 3022 for (int i = 0; i < element.getClassification().size(); i++) 3023 composeCodeableConcept(t, "CatalogEntry", "classification", element.getClassification().get(i), i); 3024 if (element.hasStatusElement()) 3025 composeEnum(t, "CatalogEntry", "status", element.getStatusElement(), -1); 3026 if (element.hasValidityPeriod()) 3027 composePeriod(t, "CatalogEntry", "validityPeriod", element.getValidityPeriod(), -1); 3028 if (element.hasValidToElement()) 3029 composeDateTime(t, "CatalogEntry", "validTo", element.getValidToElement(), -1); 3030 if (element.hasLastUpdatedElement()) 3031 composeDateTime(t, "CatalogEntry", "lastUpdated", element.getLastUpdatedElement(), -1); 3032 for (int i = 0; i < element.getAdditionalCharacteristic().size(); i++) 3033 composeCodeableConcept(t, "CatalogEntry", "additionalCharacteristic", 3034 element.getAdditionalCharacteristic().get(i), i); 3035 for (int i = 0; i < element.getAdditionalClassification().size(); i++) 3036 composeCodeableConcept(t, "CatalogEntry", "additionalClassification", 3037 element.getAdditionalClassification().get(i), i); 3038 for (int i = 0; i < element.getRelatedEntry().size(); i++) 3039 composeCatalogEntryCatalogEntryRelatedEntryComponent(t, "CatalogEntry", "relatedEntry", 3040 element.getRelatedEntry().get(i), i); 3041 } 3042 3043 protected void composeCatalogEntryCatalogEntryRelatedEntryComponent(Complex parent, String parentType, String name, 3044 CatalogEntry.CatalogEntryRelatedEntryComponent element, int index) { 3045 if (element == null) 3046 return; 3047 Complex t; 3048 if (Utilities.noString(parentType)) 3049 t = parent; 3050 else { 3051 t = parent.predicate("fhir:" + parentType + '.' + name); 3052 } 3053 composeBackboneElement(t, "relatedEntry", name, element, index); 3054 if (element.hasRelationtypeElement()) 3055 composeEnum(t, "CatalogEntry", "relationtype", element.getRelationtypeElement(), -1); 3056 if (element.hasItem()) 3057 composeReference(t, "CatalogEntry", "item", element.getItem(), -1); 3058 } 3059 3060 protected void composeChargeItem(Complex parent, String parentType, String name, ChargeItem element, int index) { 3061 if (element == null) 3062 return; 3063 Complex t; 3064 if (Utilities.noString(parentType)) 3065 t = parent; 3066 else { 3067 t = parent.predicate("fhir:" + parentType + '.' + name); 3068 } 3069 composeDomainResource(t, "ChargeItem", name, element, index); 3070 for (int i = 0; i < element.getIdentifier().size(); i++) 3071 composeIdentifier(t, "ChargeItem", "identifier", element.getIdentifier().get(i), i); 3072 for (int i = 0; i < element.getDefinitionUri().size(); i++) 3073 composeUri(t, "ChargeItem", "definitionUri", element.getDefinitionUri().get(i), i); 3074 for (int i = 0; i < element.getDefinitionCanonical().size(); i++) 3075 composeCanonical(t, "ChargeItem", "definitionCanonical", element.getDefinitionCanonical().get(i), i); 3076 if (element.hasStatusElement()) 3077 composeEnum(t, "ChargeItem", "status", element.getStatusElement(), -1); 3078 for (int i = 0; i < element.getPartOf().size(); i++) 3079 composeReference(t, "ChargeItem", "partOf", element.getPartOf().get(i), i); 3080 if (element.hasCode()) 3081 composeCodeableConcept(t, "ChargeItem", "code", element.getCode(), -1); 3082 if (element.hasSubject()) 3083 composeReference(t, "ChargeItem", "subject", element.getSubject(), -1); 3084 if (element.hasContext()) 3085 composeReference(t, "ChargeItem", "context", element.getContext(), -1); 3086 if (element.hasOccurrence()) 3087 composeType(t, "ChargeItem", "occurrence", element.getOccurrence(), -1); 3088 for (int i = 0; i < element.getPerformer().size(); i++) 3089 composeChargeItemChargeItemPerformerComponent(t, "ChargeItem", "performer", element.getPerformer().get(i), i); 3090 if (element.hasPerformingOrganization()) 3091 composeReference(t, "ChargeItem", "performingOrganization", element.getPerformingOrganization(), -1); 3092 if (element.hasRequestingOrganization()) 3093 composeReference(t, "ChargeItem", "requestingOrganization", element.getRequestingOrganization(), -1); 3094 if (element.hasCostCenter()) 3095 composeReference(t, "ChargeItem", "costCenter", element.getCostCenter(), -1); 3096 if (element.hasQuantity()) 3097 composeQuantity(t, "ChargeItem", "quantity", element.getQuantity(), -1); 3098 for (int i = 0; i < element.getBodysite().size(); i++) 3099 composeCodeableConcept(t, "ChargeItem", "bodysite", element.getBodysite().get(i), i); 3100 if (element.hasFactorOverrideElement()) 3101 composeDecimal(t, "ChargeItem", "factorOverride", element.getFactorOverrideElement(), -1); 3102 if (element.hasPriceOverride()) 3103 composeMoney(t, "ChargeItem", "priceOverride", element.getPriceOverride(), -1); 3104 if (element.hasOverrideReasonElement()) 3105 composeString(t, "ChargeItem", "overrideReason", element.getOverrideReasonElement(), -1); 3106 if (element.hasEnterer()) 3107 composeReference(t, "ChargeItem", "enterer", element.getEnterer(), -1); 3108 if (element.hasEnteredDateElement()) 3109 composeDateTime(t, "ChargeItem", "enteredDate", element.getEnteredDateElement(), -1); 3110 for (int i = 0; i < element.getReason().size(); i++) 3111 composeCodeableConcept(t, "ChargeItem", "reason", element.getReason().get(i), i); 3112 for (int i = 0; i < element.getService().size(); i++) 3113 composeReference(t, "ChargeItem", "service", element.getService().get(i), i); 3114 if (element.hasProduct()) 3115 composeType(t, "ChargeItem", "product", element.getProduct(), -1); 3116 for (int i = 0; i < element.getAccount().size(); i++) 3117 composeReference(t, "ChargeItem", "account", element.getAccount().get(i), i); 3118 for (int i = 0; i < element.getNote().size(); i++) 3119 composeAnnotation(t, "ChargeItem", "note", element.getNote().get(i), i); 3120 for (int i = 0; i < element.getSupportingInformation().size(); i++) 3121 composeReference(t, "ChargeItem", "supportingInformation", element.getSupportingInformation().get(i), i); 3122 } 3123 3124 protected void composeChargeItemChargeItemPerformerComponent(Complex parent, String parentType, String name, 3125 ChargeItem.ChargeItemPerformerComponent element, int index) { 3126 if (element == null) 3127 return; 3128 Complex t; 3129 if (Utilities.noString(parentType)) 3130 t = parent; 3131 else { 3132 t = parent.predicate("fhir:" + parentType + '.' + name); 3133 } 3134 composeBackboneElement(t, "performer", name, element, index); 3135 if (element.hasFunction()) 3136 composeCodeableConcept(t, "ChargeItem", "function", element.getFunction(), -1); 3137 if (element.hasActor()) 3138 composeReference(t, "ChargeItem", "actor", element.getActor(), -1); 3139 } 3140 3141 protected void composeChargeItemDefinition(Complex parent, String parentType, String name, 3142 ChargeItemDefinition element, int index) { 3143 if (element == null) 3144 return; 3145 Complex t; 3146 if (Utilities.noString(parentType)) 3147 t = parent; 3148 else { 3149 t = parent.predicate("fhir:" + parentType + '.' + name); 3150 } 3151 composeDomainResource(t, "ChargeItemDefinition", name, element, index); 3152 if (element.hasUrlElement()) 3153 composeUri(t, "ChargeItemDefinition", "url", element.getUrlElement(), -1); 3154 for (int i = 0; i < element.getIdentifier().size(); i++) 3155 composeIdentifier(t, "ChargeItemDefinition", "identifier", element.getIdentifier().get(i), i); 3156 if (element.hasVersionElement()) 3157 composeString(t, "ChargeItemDefinition", "version", element.getVersionElement(), -1); 3158 if (element.hasTitleElement()) 3159 composeString(t, "ChargeItemDefinition", "title", element.getTitleElement(), -1); 3160 for (int i = 0; i < element.getDerivedFromUri().size(); i++) 3161 composeUri(t, "ChargeItemDefinition", "derivedFromUri", element.getDerivedFromUri().get(i), i); 3162 for (int i = 0; i < element.getPartOf().size(); i++) 3163 composeCanonical(t, "ChargeItemDefinition", "partOf", element.getPartOf().get(i), i); 3164 for (int i = 0; i < element.getReplaces().size(); i++) 3165 composeCanonical(t, "ChargeItemDefinition", "replaces", element.getReplaces().get(i), i); 3166 if (element.hasStatusElement()) 3167 composeEnum(t, "ChargeItemDefinition", "status", element.getStatusElement(), -1); 3168 if (element.hasExperimentalElement()) 3169 composeBoolean(t, "ChargeItemDefinition", "experimental", element.getExperimentalElement(), -1); 3170 if (element.hasDateElement()) 3171 composeDateTime(t, "ChargeItemDefinition", "date", element.getDateElement(), -1); 3172 if (element.hasPublisherElement()) 3173 composeString(t, "ChargeItemDefinition", "publisher", element.getPublisherElement(), -1); 3174 for (int i = 0; i < element.getContact().size(); i++) 3175 composeContactDetail(t, "ChargeItemDefinition", "contact", element.getContact().get(i), i); 3176 if (element.hasDescriptionElement()) 3177 composeMarkdown(t, "ChargeItemDefinition", "description", element.getDescriptionElement(), -1); 3178 for (int i = 0; i < element.getUseContext().size(); i++) 3179 composeUsageContext(t, "ChargeItemDefinition", "useContext", element.getUseContext().get(i), i); 3180 for (int i = 0; i < element.getJurisdiction().size(); i++) 3181 composeCodeableConcept(t, "ChargeItemDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 3182 if (element.hasCopyrightElement()) 3183 composeMarkdown(t, "ChargeItemDefinition", "copyright", element.getCopyrightElement(), -1); 3184 if (element.hasApprovalDateElement()) 3185 composeDate(t, "ChargeItemDefinition", "approvalDate", element.getApprovalDateElement(), -1); 3186 if (element.hasLastReviewDateElement()) 3187 composeDate(t, "ChargeItemDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 3188 if (element.hasEffectivePeriod()) 3189 composePeriod(t, "ChargeItemDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 3190 if (element.hasCode()) 3191 composeCodeableConcept(t, "ChargeItemDefinition", "code", element.getCode(), -1); 3192 for (int i = 0; i < element.getInstance().size(); i++) 3193 composeReference(t, "ChargeItemDefinition", "instance", element.getInstance().get(i), i); 3194 for (int i = 0; i < element.getApplicability().size(); i++) 3195 composeChargeItemDefinitionChargeItemDefinitionApplicabilityComponent(t, "ChargeItemDefinition", "applicability", 3196 element.getApplicability().get(i), i); 3197 for (int i = 0; i < element.getPropertyGroup().size(); i++) 3198 composeChargeItemDefinitionChargeItemDefinitionPropertyGroupComponent(t, "ChargeItemDefinition", "propertyGroup", 3199 element.getPropertyGroup().get(i), i); 3200 } 3201 3202 protected void composeChargeItemDefinitionChargeItemDefinitionApplicabilityComponent(Complex parent, 3203 String parentType, String name, ChargeItemDefinition.ChargeItemDefinitionApplicabilityComponent element, 3204 int index) { 3205 if (element == null) 3206 return; 3207 Complex t; 3208 if (Utilities.noString(parentType)) 3209 t = parent; 3210 else { 3211 t = parent.predicate("fhir:" + parentType + '.' + name); 3212 } 3213 composeBackboneElement(t, "applicability", name, element, index); 3214 if (element.hasDescriptionElement()) 3215 composeString(t, "ChargeItemDefinition", "description", element.getDescriptionElement(), -1); 3216 if (element.hasLanguageElement()) 3217 composeString(t, "ChargeItemDefinition", "language", element.getLanguageElement(), -1); 3218 if (element.hasExpressionElement()) 3219 composeString(t, "ChargeItemDefinition", "expression", element.getExpressionElement(), -1); 3220 } 3221 3222 protected void composeChargeItemDefinitionChargeItemDefinitionPropertyGroupComponent(Complex parent, 3223 String parentType, String name, ChargeItemDefinition.ChargeItemDefinitionPropertyGroupComponent element, 3224 int index) { 3225 if (element == null) 3226 return; 3227 Complex t; 3228 if (Utilities.noString(parentType)) 3229 t = parent; 3230 else { 3231 t = parent.predicate("fhir:" + parentType + '.' + name); 3232 } 3233 composeBackboneElement(t, "propertyGroup", name, element, index); 3234 for (int i = 0; i < element.getApplicability().size(); i++) 3235 composeChargeItemDefinitionChargeItemDefinitionApplicabilityComponent(t, "ChargeItemDefinition", "applicability", 3236 element.getApplicability().get(i), i); 3237 for (int i = 0; i < element.getPriceComponent().size(); i++) 3238 composeChargeItemDefinitionChargeItemDefinitionPropertyGroupPriceComponentComponent(t, "ChargeItemDefinition", 3239 "priceComponent", element.getPriceComponent().get(i), i); 3240 } 3241 3242 protected void composeChargeItemDefinitionChargeItemDefinitionPropertyGroupPriceComponentComponent(Complex parent, 3243 String parentType, String name, 3244 ChargeItemDefinition.ChargeItemDefinitionPropertyGroupPriceComponentComponent element, int index) { 3245 if (element == null) 3246 return; 3247 Complex t; 3248 if (Utilities.noString(parentType)) 3249 t = parent; 3250 else { 3251 t = parent.predicate("fhir:" + parentType + '.' + name); 3252 } 3253 composeBackboneElement(t, "priceComponent", name, element, index); 3254 if (element.hasTypeElement()) 3255 composeEnum(t, "ChargeItemDefinition", "type", element.getTypeElement(), -1); 3256 if (element.hasCode()) 3257 composeCodeableConcept(t, "ChargeItemDefinition", "code", element.getCode(), -1); 3258 if (element.hasFactorElement()) 3259 composeDecimal(t, "ChargeItemDefinition", "factor", element.getFactorElement(), -1); 3260 if (element.hasAmount()) 3261 composeMoney(t, "ChargeItemDefinition", "amount", element.getAmount(), -1); 3262 } 3263 3264 protected void composeClaim(Complex parent, String parentType, String name, Claim element, int index) { 3265 if (element == null) 3266 return; 3267 Complex t; 3268 if (Utilities.noString(parentType)) 3269 t = parent; 3270 else { 3271 t = parent.predicate("fhir:" + parentType + '.' + name); 3272 } 3273 composeDomainResource(t, "Claim", name, element, index); 3274 for (int i = 0; i < element.getIdentifier().size(); i++) 3275 composeIdentifier(t, "Claim", "identifier", element.getIdentifier().get(i), i); 3276 if (element.hasStatusElement()) 3277 composeEnum(t, "Claim", "status", element.getStatusElement(), -1); 3278 if (element.hasType()) 3279 composeCodeableConcept(t, "Claim", "type", element.getType(), -1); 3280 if (element.hasSubType()) 3281 composeCodeableConcept(t, "Claim", "subType", element.getSubType(), -1); 3282 if (element.hasUseElement()) 3283 composeEnum(t, "Claim", "use", element.getUseElement(), -1); 3284 if (element.hasPatient()) 3285 composeReference(t, "Claim", "patient", element.getPatient(), -1); 3286 if (element.hasBillablePeriod()) 3287 composePeriod(t, "Claim", "billablePeriod", element.getBillablePeriod(), -1); 3288 if (element.hasCreatedElement()) 3289 composeDateTime(t, "Claim", "created", element.getCreatedElement(), -1); 3290 if (element.hasEnterer()) 3291 composeReference(t, "Claim", "enterer", element.getEnterer(), -1); 3292 if (element.hasInsurer()) 3293 composeReference(t, "Claim", "insurer", element.getInsurer(), -1); 3294 if (element.hasProvider()) 3295 composeReference(t, "Claim", "provider", element.getProvider(), -1); 3296 if (element.hasPriority()) 3297 composeCodeableConcept(t, "Claim", "priority", element.getPriority(), -1); 3298 if (element.hasFundsReserve()) 3299 composeCodeableConcept(t, "Claim", "fundsReserve", element.getFundsReserve(), -1); 3300 for (int i = 0; i < element.getRelated().size(); i++) 3301 composeClaimRelatedClaimComponent(t, "Claim", "related", element.getRelated().get(i), i); 3302 if (element.hasPrescription()) 3303 composeReference(t, "Claim", "prescription", element.getPrescription(), -1); 3304 if (element.hasOriginalPrescription()) 3305 composeReference(t, "Claim", "originalPrescription", element.getOriginalPrescription(), -1); 3306 if (element.hasPayee()) 3307 composeClaimPayeeComponent(t, "Claim", "payee", element.getPayee(), -1); 3308 if (element.hasReferral()) 3309 composeReference(t, "Claim", "referral", element.getReferral(), -1); 3310 if (element.hasFacility()) 3311 composeReference(t, "Claim", "facility", element.getFacility(), -1); 3312 for (int i = 0; i < element.getCareTeam().size(); i++) 3313 composeClaimCareTeamComponent(t, "Claim", "careTeam", element.getCareTeam().get(i), i); 3314 for (int i = 0; i < element.getSupportingInfo().size(); i++) 3315 composeClaimSupportingInformationComponent(t, "Claim", "supportingInfo", element.getSupportingInfo().get(i), i); 3316 for (int i = 0; i < element.getDiagnosis().size(); i++) 3317 composeClaimDiagnosisComponent(t, "Claim", "diagnosis", element.getDiagnosis().get(i), i); 3318 for (int i = 0; i < element.getProcedure().size(); i++) 3319 composeClaimProcedureComponent(t, "Claim", "procedure", element.getProcedure().get(i), i); 3320 for (int i = 0; i < element.getInsurance().size(); i++) 3321 composeClaimInsuranceComponent(t, "Claim", "insurance", element.getInsurance().get(i), i); 3322 if (element.hasAccident()) 3323 composeClaimAccidentComponent(t, "Claim", "accident", element.getAccident(), -1); 3324 for (int i = 0; i < element.getItem().size(); i++) 3325 composeClaimItemComponent(t, "Claim", "item", element.getItem().get(i), i); 3326 if (element.hasTotal()) 3327 composeMoney(t, "Claim", "total", element.getTotal(), -1); 3328 } 3329 3330 protected void composeClaimRelatedClaimComponent(Complex parent, String parentType, String name, 3331 Claim.RelatedClaimComponent element, int index) { 3332 if (element == null) 3333 return; 3334 Complex t; 3335 if (Utilities.noString(parentType)) 3336 t = parent; 3337 else { 3338 t = parent.predicate("fhir:" + parentType + '.' + name); 3339 } 3340 composeBackboneElement(t, "related", name, element, index); 3341 if (element.hasClaim()) 3342 composeReference(t, "Claim", "claim", element.getClaim(), -1); 3343 if (element.hasRelationship()) 3344 composeCodeableConcept(t, "Claim", "relationship", element.getRelationship(), -1); 3345 if (element.hasReference()) 3346 composeIdentifier(t, "Claim", "reference", element.getReference(), -1); 3347 } 3348 3349 protected void composeClaimPayeeComponent(Complex parent, String parentType, String name, 3350 Claim.PayeeComponent element, int index) { 3351 if (element == null) 3352 return; 3353 Complex t; 3354 if (Utilities.noString(parentType)) 3355 t = parent; 3356 else { 3357 t = parent.predicate("fhir:" + parentType + '.' + name); 3358 } 3359 composeBackboneElement(t, "payee", name, element, index); 3360 if (element.hasType()) 3361 composeCodeableConcept(t, "Claim", "type", element.getType(), -1); 3362 if (element.hasParty()) 3363 composeReference(t, "Claim", "party", element.getParty(), -1); 3364 } 3365 3366 protected void composeClaimCareTeamComponent(Complex parent, String parentType, String name, 3367 Claim.CareTeamComponent 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:" + parentType + '.' + name); 3375 } 3376 composeBackboneElement(t, "careTeam", name, element, index); 3377 if (element.hasSequenceElement()) 3378 composePositiveInt(t, "Claim", "sequence", element.getSequenceElement(), -1); 3379 if (element.hasProvider()) 3380 composeReference(t, "Claim", "provider", element.getProvider(), -1); 3381 if (element.hasResponsibleElement()) 3382 composeBoolean(t, "Claim", "responsible", element.getResponsibleElement(), -1); 3383 if (element.hasRole()) 3384 composeCodeableConcept(t, "Claim", "role", element.getRole(), -1); 3385 if (element.hasQualification()) 3386 composeCodeableConcept(t, "Claim", "qualification", element.getQualification(), -1); 3387 } 3388 3389 protected void composeClaimSupportingInformationComponent(Complex parent, String parentType, String name, 3390 Claim.SupportingInformationComponent element, int index) { 3391 if (element == null) 3392 return; 3393 Complex t; 3394 if (Utilities.noString(parentType)) 3395 t = parent; 3396 else { 3397 t = parent.predicate("fhir:" + parentType + '.' + name); 3398 } 3399 composeBackboneElement(t, "supportingInfo", name, element, index); 3400 if (element.hasSequenceElement()) 3401 composePositiveInt(t, "Claim", "sequence", element.getSequenceElement(), -1); 3402 if (element.hasCategory()) 3403 composeCodeableConcept(t, "Claim", "category", element.getCategory(), -1); 3404 if (element.hasCode()) 3405 composeCodeableConcept(t, "Claim", "code", element.getCode(), -1); 3406 if (element.hasTiming()) 3407 composeType(t, "Claim", "timing", element.getTiming(), -1); 3408 if (element.hasValue()) 3409 composeType(t, "Claim", "value", element.getValue(), -1); 3410 if (element.hasReason()) 3411 composeCodeableConcept(t, "Claim", "reason", element.getReason(), -1); 3412 } 3413 3414 protected void composeClaimDiagnosisComponent(Complex parent, String parentType, String name, 3415 Claim.DiagnosisComponent element, int index) { 3416 if (element == null) 3417 return; 3418 Complex t; 3419 if (Utilities.noString(parentType)) 3420 t = parent; 3421 else { 3422 t = parent.predicate("fhir:" + parentType + '.' + name); 3423 } 3424 composeBackboneElement(t, "diagnosis", name, element, index); 3425 if (element.hasSequenceElement()) 3426 composePositiveInt(t, "Claim", "sequence", element.getSequenceElement(), -1); 3427 if (element.hasDiagnosis()) 3428 composeType(t, "Claim", "diagnosis", element.getDiagnosis(), -1); 3429 for (int i = 0; i < element.getType().size(); i++) 3430 composeCodeableConcept(t, "Claim", "type", element.getType().get(i), i); 3431 if (element.hasOnAdmission()) 3432 composeCodeableConcept(t, "Claim", "onAdmission", element.getOnAdmission(), -1); 3433 if (element.hasPackageCode()) 3434 composeCodeableConcept(t, "Claim", "packageCode", element.getPackageCode(), -1); 3435 } 3436 3437 protected void composeClaimProcedureComponent(Complex parent, String parentType, String name, 3438 Claim.ProcedureComponent element, int index) { 3439 if (element == null) 3440 return; 3441 Complex t; 3442 if (Utilities.noString(parentType)) 3443 t = parent; 3444 else { 3445 t = parent.predicate("fhir:" + parentType + '.' + name); 3446 } 3447 composeBackboneElement(t, "procedure", name, element, index); 3448 if (element.hasSequenceElement()) 3449 composePositiveInt(t, "Claim", "sequence", element.getSequenceElement(), -1); 3450 for (int i = 0; i < element.getType().size(); i++) 3451 composeCodeableConcept(t, "Claim", "type", element.getType().get(i), i); 3452 if (element.hasDateElement()) 3453 composeDateTime(t, "Claim", "date", element.getDateElement(), -1); 3454 if (element.hasProcedure()) 3455 composeType(t, "Claim", "procedure", element.getProcedure(), -1); 3456 for (int i = 0; i < element.getUdi().size(); i++) 3457 composeReference(t, "Claim", "udi", element.getUdi().get(i), i); 3458 } 3459 3460 protected void composeClaimInsuranceComponent(Complex parent, String parentType, String name, 3461 Claim.InsuranceComponent element, int index) { 3462 if (element == null) 3463 return; 3464 Complex t; 3465 if (Utilities.noString(parentType)) 3466 t = parent; 3467 else { 3468 t = parent.predicate("fhir:" + parentType + '.' + name); 3469 } 3470 composeBackboneElement(t, "insurance", name, element, index); 3471 if (element.hasSequenceElement()) 3472 composePositiveInt(t, "Claim", "sequence", element.getSequenceElement(), -1); 3473 if (element.hasFocalElement()) 3474 composeBoolean(t, "Claim", "focal", element.getFocalElement(), -1); 3475 if (element.hasIdentifier()) 3476 composeIdentifier(t, "Claim", "identifier", element.getIdentifier(), -1); 3477 if (element.hasCoverage()) 3478 composeReference(t, "Claim", "coverage", element.getCoverage(), -1); 3479 if (element.hasBusinessArrangementElement()) 3480 composeString(t, "Claim", "businessArrangement", element.getBusinessArrangementElement(), -1); 3481 for (int i = 0; i < element.getPreAuthRef().size(); i++) 3482 composeString(t, "Claim", "preAuthRef", element.getPreAuthRef().get(i), i); 3483 if (element.hasClaimResponse()) 3484 composeReference(t, "Claim", "claimResponse", element.getClaimResponse(), -1); 3485 } 3486 3487 protected void composeClaimAccidentComponent(Complex parent, String parentType, String name, 3488 Claim.AccidentComponent element, int index) { 3489 if (element == null) 3490 return; 3491 Complex t; 3492 if (Utilities.noString(parentType)) 3493 t = parent; 3494 else { 3495 t = parent.predicate("fhir:" + parentType + '.' + name); 3496 } 3497 composeBackboneElement(t, "accident", name, element, index); 3498 if (element.hasDateElement()) 3499 composeDate(t, "Claim", "date", element.getDateElement(), -1); 3500 if (element.hasType()) 3501 composeCodeableConcept(t, "Claim", "type", element.getType(), -1); 3502 if (element.hasLocation()) 3503 composeType(t, "Claim", "location", element.getLocation(), -1); 3504 } 3505 3506 protected void composeClaimItemComponent(Complex parent, String parentType, String name, Claim.ItemComponent element, 3507 int index) { 3508 if (element == null) 3509 return; 3510 Complex t; 3511 if (Utilities.noString(parentType)) 3512 t = parent; 3513 else { 3514 t = parent.predicate("fhir:" + parentType + '.' + name); 3515 } 3516 composeBackboneElement(t, "item", name, element, index); 3517 if (element.hasSequenceElement()) 3518 composePositiveInt(t, "Claim", "sequence", element.getSequenceElement(), -1); 3519 for (int i = 0; i < element.getCareTeamSequence().size(); i++) 3520 composePositiveInt(t, "Claim", "careTeamSequence", element.getCareTeamSequence().get(i), i); 3521 for (int i = 0; i < element.getDiagnosisSequence().size(); i++) 3522 composePositiveInt(t, "Claim", "diagnosisSequence", element.getDiagnosisSequence().get(i), i); 3523 for (int i = 0; i < element.getProcedureSequence().size(); i++) 3524 composePositiveInt(t, "Claim", "procedureSequence", element.getProcedureSequence().get(i), i); 3525 for (int i = 0; i < element.getInformationSequence().size(); i++) 3526 composePositiveInt(t, "Claim", "informationSequence", element.getInformationSequence().get(i), i); 3527 if (element.hasRevenue()) 3528 composeCodeableConcept(t, "Claim", "revenue", element.getRevenue(), -1); 3529 if (element.hasCategory()) 3530 composeCodeableConcept(t, "Claim", "category", element.getCategory(), -1); 3531 if (element.hasProductOrService()) 3532 composeCodeableConcept(t, "Claim", "productOrService", element.getProductOrService(), -1); 3533 for (int i = 0; i < element.getModifier().size(); i++) 3534 composeCodeableConcept(t, "Claim", "modifier", element.getModifier().get(i), i); 3535 for (int i = 0; i < element.getProgramCode().size(); i++) 3536 composeCodeableConcept(t, "Claim", "programCode", element.getProgramCode().get(i), i); 3537 if (element.hasServiced()) 3538 composeType(t, "Claim", "serviced", element.getServiced(), -1); 3539 if (element.hasLocation()) 3540 composeType(t, "Claim", "location", element.getLocation(), -1); 3541 if (element.hasQuantity()) 3542 composeQuantity(t, "Claim", "quantity", element.getQuantity(), -1); 3543 if (element.hasUnitPrice()) 3544 composeMoney(t, "Claim", "unitPrice", element.getUnitPrice(), -1); 3545 if (element.hasFactorElement()) 3546 composeDecimal(t, "Claim", "factor", element.getFactorElement(), -1); 3547 if (element.hasNet()) 3548 composeMoney(t, "Claim", "net", element.getNet(), -1); 3549 for (int i = 0; i < element.getUdi().size(); i++) 3550 composeReference(t, "Claim", "udi", element.getUdi().get(i), i); 3551 if (element.hasBodySite()) 3552 composeCodeableConcept(t, "Claim", "bodySite", element.getBodySite(), -1); 3553 for (int i = 0; i < element.getSubSite().size(); i++) 3554 composeCodeableConcept(t, "Claim", "subSite", element.getSubSite().get(i), i); 3555 for (int i = 0; i < element.getEncounter().size(); i++) 3556 composeReference(t, "Claim", "encounter", element.getEncounter().get(i), i); 3557 for (int i = 0; i < element.getDetail().size(); i++) 3558 composeClaimDetailComponent(t, "Claim", "detail", element.getDetail().get(i), i); 3559 } 3560 3561 protected void composeClaimDetailComponent(Complex parent, String parentType, String name, 3562 Claim.DetailComponent element, int index) { 3563 if (element == null) 3564 return; 3565 Complex t; 3566 if (Utilities.noString(parentType)) 3567 t = parent; 3568 else { 3569 t = parent.predicate("fhir:" + parentType + '.' + name); 3570 } 3571 composeBackboneElement(t, "detail", name, element, index); 3572 if (element.hasSequenceElement()) 3573 composePositiveInt(t, "Claim", "sequence", element.getSequenceElement(), -1); 3574 if (element.hasRevenue()) 3575 composeCodeableConcept(t, "Claim", "revenue", element.getRevenue(), -1); 3576 if (element.hasCategory()) 3577 composeCodeableConcept(t, "Claim", "category", element.getCategory(), -1); 3578 if (element.hasProductOrService()) 3579 composeCodeableConcept(t, "Claim", "productOrService", element.getProductOrService(), -1); 3580 for (int i = 0; i < element.getModifier().size(); i++) 3581 composeCodeableConcept(t, "Claim", "modifier", element.getModifier().get(i), i); 3582 for (int i = 0; i < element.getProgramCode().size(); i++) 3583 composeCodeableConcept(t, "Claim", "programCode", element.getProgramCode().get(i), i); 3584 if (element.hasQuantity()) 3585 composeQuantity(t, "Claim", "quantity", element.getQuantity(), -1); 3586 if (element.hasUnitPrice()) 3587 composeMoney(t, "Claim", "unitPrice", element.getUnitPrice(), -1); 3588 if (element.hasFactorElement()) 3589 composeDecimal(t, "Claim", "factor", element.getFactorElement(), -1); 3590 if (element.hasNet()) 3591 composeMoney(t, "Claim", "net", element.getNet(), -1); 3592 for (int i = 0; i < element.getUdi().size(); i++) 3593 composeReference(t, "Claim", "udi", element.getUdi().get(i), i); 3594 for (int i = 0; i < element.getSubDetail().size(); i++) 3595 composeClaimSubDetailComponent(t, "Claim", "subDetail", element.getSubDetail().get(i), i); 3596 } 3597 3598 protected void composeClaimSubDetailComponent(Complex parent, String parentType, String name, 3599 Claim.SubDetailComponent element, int index) { 3600 if (element == null) 3601 return; 3602 Complex t; 3603 if (Utilities.noString(parentType)) 3604 t = parent; 3605 else { 3606 t = parent.predicate("fhir:" + parentType + '.' + name); 3607 } 3608 composeBackboneElement(t, "subDetail", name, element, index); 3609 if (element.hasSequenceElement()) 3610 composePositiveInt(t, "Claim", "sequence", element.getSequenceElement(), -1); 3611 if (element.hasRevenue()) 3612 composeCodeableConcept(t, "Claim", "revenue", element.getRevenue(), -1); 3613 if (element.hasCategory()) 3614 composeCodeableConcept(t, "Claim", "category", element.getCategory(), -1); 3615 if (element.hasProductOrService()) 3616 composeCodeableConcept(t, "Claim", "productOrService", element.getProductOrService(), -1); 3617 for (int i = 0; i < element.getModifier().size(); i++) 3618 composeCodeableConcept(t, "Claim", "modifier", element.getModifier().get(i), i); 3619 for (int i = 0; i < element.getProgramCode().size(); i++) 3620 composeCodeableConcept(t, "Claim", "programCode", element.getProgramCode().get(i), i); 3621 if (element.hasQuantity()) 3622 composeQuantity(t, "Claim", "quantity", element.getQuantity(), -1); 3623 if (element.hasUnitPrice()) 3624 composeMoney(t, "Claim", "unitPrice", element.getUnitPrice(), -1); 3625 if (element.hasFactorElement()) 3626 composeDecimal(t, "Claim", "factor", element.getFactorElement(), -1); 3627 if (element.hasNet()) 3628 composeMoney(t, "Claim", "net", element.getNet(), -1); 3629 for (int i = 0; i < element.getUdi().size(); i++) 3630 composeReference(t, "Claim", "udi", element.getUdi().get(i), i); 3631 } 3632 3633 protected void composeClaimResponse(Complex parent, String parentType, String name, ClaimResponse element, 3634 int index) { 3635 if (element == null) 3636 return; 3637 Complex t; 3638 if (Utilities.noString(parentType)) 3639 t = parent; 3640 else { 3641 t = parent.predicate("fhir:" + parentType + '.' + name); 3642 } 3643 composeDomainResource(t, "ClaimResponse", name, element, index); 3644 for (int i = 0; i < element.getIdentifier().size(); i++) 3645 composeIdentifier(t, "ClaimResponse", "identifier", element.getIdentifier().get(i), i); 3646 if (element.hasStatusElement()) 3647 composeEnum(t, "ClaimResponse", "status", element.getStatusElement(), -1); 3648 if (element.hasType()) 3649 composeCodeableConcept(t, "ClaimResponse", "type", element.getType(), -1); 3650 if (element.hasSubType()) 3651 composeCodeableConcept(t, "ClaimResponse", "subType", element.getSubType(), -1); 3652 if (element.hasUseElement()) 3653 composeEnum(t, "ClaimResponse", "use", element.getUseElement(), -1); 3654 if (element.hasPatient()) 3655 composeReference(t, "ClaimResponse", "patient", element.getPatient(), -1); 3656 if (element.hasCreatedElement()) 3657 composeDateTime(t, "ClaimResponse", "created", element.getCreatedElement(), -1); 3658 if (element.hasInsurer()) 3659 composeReference(t, "ClaimResponse", "insurer", element.getInsurer(), -1); 3660 if (element.hasRequestor()) 3661 composeReference(t, "ClaimResponse", "requestor", element.getRequestor(), -1); 3662 if (element.hasRequest()) 3663 composeReference(t, "ClaimResponse", "request", element.getRequest(), -1); 3664 if (element.hasOutcomeElement()) 3665 composeEnum(t, "ClaimResponse", "outcome", element.getOutcomeElement(), -1); 3666 if (element.hasDispositionElement()) 3667 composeString(t, "ClaimResponse", "disposition", element.getDispositionElement(), -1); 3668 if (element.hasPreAuthRefElement()) 3669 composeString(t, "ClaimResponse", "preAuthRef", element.getPreAuthRefElement(), -1); 3670 if (element.hasPreAuthPeriod()) 3671 composePeriod(t, "ClaimResponse", "preAuthPeriod", element.getPreAuthPeriod(), -1); 3672 if (element.hasPayeeType()) 3673 composeCodeableConcept(t, "ClaimResponse", "payeeType", element.getPayeeType(), -1); 3674 for (int i = 0; i < element.getItem().size(); i++) 3675 composeClaimResponseItemComponent(t, "ClaimResponse", "item", element.getItem().get(i), i); 3676 for (int i = 0; i < element.getAddItem().size(); i++) 3677 composeClaimResponseAddedItemComponent(t, "ClaimResponse", "addItem", element.getAddItem().get(i), i); 3678 for (int i = 0; i < element.getAdjudication().size(); i++) 3679 composeClaimResponseAdjudicationComponent(t, "ClaimResponse", "adjudication", element.getAdjudication().get(i), 3680 i); 3681 for (int i = 0; i < element.getTotal().size(); i++) 3682 composeClaimResponseTotalComponent(t, "ClaimResponse", "total", element.getTotal().get(i), i); 3683 if (element.hasPayment()) 3684 composeClaimResponsePaymentComponent(t, "ClaimResponse", "payment", element.getPayment(), -1); 3685 if (element.hasFundsReserve()) 3686 composeCodeableConcept(t, "ClaimResponse", "fundsReserve", element.getFundsReserve(), -1); 3687 if (element.hasFormCode()) 3688 composeCodeableConcept(t, "ClaimResponse", "formCode", element.getFormCode(), -1); 3689 if (element.hasForm()) 3690 composeAttachment(t, "ClaimResponse", "form", element.getForm(), -1); 3691 for (int i = 0; i < element.getProcessNote().size(); i++) 3692 composeClaimResponseNoteComponent(t, "ClaimResponse", "processNote", element.getProcessNote().get(i), i); 3693 for (int i = 0; i < element.getCommunicationRequest().size(); i++) 3694 composeReference(t, "ClaimResponse", "communicationRequest", element.getCommunicationRequest().get(i), i); 3695 for (int i = 0; i < element.getInsurance().size(); i++) 3696 composeClaimResponseInsuranceComponent(t, "ClaimResponse", "insurance", element.getInsurance().get(i), i); 3697 for (int i = 0; i < element.getError().size(); i++) 3698 composeClaimResponseErrorComponent(t, "ClaimResponse", "error", element.getError().get(i), i); 3699 } 3700 3701 protected void composeClaimResponseItemComponent(Complex parent, String parentType, String name, 3702 ClaimResponse.ItemComponent element, int index) { 3703 if (element == null) 3704 return; 3705 Complex t; 3706 if (Utilities.noString(parentType)) 3707 t = parent; 3708 else { 3709 t = parent.predicate("fhir:" + parentType + '.' + name); 3710 } 3711 composeBackboneElement(t, "item", name, element, index); 3712 if (element.hasItemSequenceElement()) 3713 composePositiveInt(t, "ClaimResponse", "itemSequence", element.getItemSequenceElement(), -1); 3714 for (int i = 0; i < element.getNoteNumber().size(); i++) 3715 composePositiveInt(t, "ClaimResponse", "noteNumber", element.getNoteNumber().get(i), i); 3716 for (int i = 0; i < element.getAdjudication().size(); i++) 3717 composeClaimResponseAdjudicationComponent(t, "ClaimResponse", "adjudication", element.getAdjudication().get(i), 3718 i); 3719 for (int i = 0; i < element.getDetail().size(); i++) 3720 composeClaimResponseItemDetailComponent(t, "ClaimResponse", "detail", element.getDetail().get(i), i); 3721 } 3722 3723 protected void composeClaimResponseAdjudicationComponent(Complex parent, String parentType, String name, 3724 ClaimResponse.AdjudicationComponent 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:" + parentType + '.' + name); 3732 } 3733 composeBackboneElement(t, "adjudication", name, element, index); 3734 if (element.hasCategory()) 3735 composeCodeableConcept(t, "ClaimResponse", "category", element.getCategory(), -1); 3736 if (element.hasReason()) 3737 composeCodeableConcept(t, "ClaimResponse", "reason", element.getReason(), -1); 3738 if (element.hasAmount()) 3739 composeMoney(t, "ClaimResponse", "amount", element.getAmount(), -1); 3740 if (element.hasValueElement()) 3741 composeDecimal(t, "ClaimResponse", "value", element.getValueElement(), -1); 3742 } 3743 3744 protected void composeClaimResponseItemDetailComponent(Complex parent, String parentType, String name, 3745 ClaimResponse.ItemDetailComponent element, int index) { 3746 if (element == null) 3747 return; 3748 Complex t; 3749 if (Utilities.noString(parentType)) 3750 t = parent; 3751 else { 3752 t = parent.predicate("fhir:" + parentType + '.' + name); 3753 } 3754 composeBackboneElement(t, "detail", name, element, index); 3755 if (element.hasDetailSequenceElement()) 3756 composePositiveInt(t, "ClaimResponse", "detailSequence", element.getDetailSequenceElement(), -1); 3757 for (int i = 0; i < element.getNoteNumber().size(); i++) 3758 composePositiveInt(t, "ClaimResponse", "noteNumber", element.getNoteNumber().get(i), i); 3759 for (int i = 0; i < element.getAdjudication().size(); i++) 3760 composeClaimResponseAdjudicationComponent(t, "ClaimResponse", "adjudication", element.getAdjudication().get(i), 3761 i); 3762 for (int i = 0; i < element.getSubDetail().size(); i++) 3763 composeClaimResponseSubDetailComponent(t, "ClaimResponse", "subDetail", element.getSubDetail().get(i), i); 3764 } 3765 3766 protected void composeClaimResponseSubDetailComponent(Complex parent, String parentType, String name, 3767 ClaimResponse.SubDetailComponent element, int index) { 3768 if (element == null) 3769 return; 3770 Complex t; 3771 if (Utilities.noString(parentType)) 3772 t = parent; 3773 else { 3774 t = parent.predicate("fhir:" + parentType + '.' + name); 3775 } 3776 composeBackboneElement(t, "subDetail", name, element, index); 3777 if (element.hasSubDetailSequenceElement()) 3778 composePositiveInt(t, "ClaimResponse", "subDetailSequence", element.getSubDetailSequenceElement(), -1); 3779 for (int i = 0; i < element.getNoteNumber().size(); i++) 3780 composePositiveInt(t, "ClaimResponse", "noteNumber", element.getNoteNumber().get(i), i); 3781 for (int i = 0; i < element.getAdjudication().size(); i++) 3782 composeClaimResponseAdjudicationComponent(t, "ClaimResponse", "adjudication", element.getAdjudication().get(i), 3783 i); 3784 } 3785 3786 protected void composeClaimResponseAddedItemComponent(Complex parent, String parentType, String name, 3787 ClaimResponse.AddedItemComponent element, int index) { 3788 if (element == null) 3789 return; 3790 Complex t; 3791 if (Utilities.noString(parentType)) 3792 t = parent; 3793 else { 3794 t = parent.predicate("fhir:" + parentType + '.' + name); 3795 } 3796 composeBackboneElement(t, "addItem", name, element, index); 3797 for (int i = 0; i < element.getItemSequence().size(); i++) 3798 composePositiveInt(t, "ClaimResponse", "itemSequence", element.getItemSequence().get(i), i); 3799 for (int i = 0; i < element.getDetailSequence().size(); i++) 3800 composePositiveInt(t, "ClaimResponse", "detailSequence", element.getDetailSequence().get(i), i); 3801 for (int i = 0; i < element.getSubdetailSequence().size(); i++) 3802 composePositiveInt(t, "ClaimResponse", "subdetailSequence", element.getSubdetailSequence().get(i), i); 3803 for (int i = 0; i < element.getProvider().size(); i++) 3804 composeReference(t, "ClaimResponse", "provider", element.getProvider().get(i), i); 3805 if (element.hasProductOrService()) 3806 composeCodeableConcept(t, "ClaimResponse", "productOrService", element.getProductOrService(), -1); 3807 for (int i = 0; i < element.getModifier().size(); i++) 3808 composeCodeableConcept(t, "ClaimResponse", "modifier", element.getModifier().get(i), i); 3809 for (int i = 0; i < element.getProgramCode().size(); i++) 3810 composeCodeableConcept(t, "ClaimResponse", "programCode", element.getProgramCode().get(i), i); 3811 if (element.hasServiced()) 3812 composeType(t, "ClaimResponse", "serviced", element.getServiced(), -1); 3813 if (element.hasLocation()) 3814 composeType(t, "ClaimResponse", "location", element.getLocation(), -1); 3815 if (element.hasQuantity()) 3816 composeQuantity(t, "ClaimResponse", "quantity", element.getQuantity(), -1); 3817 if (element.hasUnitPrice()) 3818 composeMoney(t, "ClaimResponse", "unitPrice", element.getUnitPrice(), -1); 3819 if (element.hasFactorElement()) 3820 composeDecimal(t, "ClaimResponse", "factor", element.getFactorElement(), -1); 3821 if (element.hasNet()) 3822 composeMoney(t, "ClaimResponse", "net", element.getNet(), -1); 3823 if (element.hasBodySite()) 3824 composeCodeableConcept(t, "ClaimResponse", "bodySite", element.getBodySite(), -1); 3825 for (int i = 0; i < element.getSubSite().size(); i++) 3826 composeCodeableConcept(t, "ClaimResponse", "subSite", element.getSubSite().get(i), i); 3827 for (int i = 0; i < element.getNoteNumber().size(); i++) 3828 composePositiveInt(t, "ClaimResponse", "noteNumber", element.getNoteNumber().get(i), i); 3829 for (int i = 0; i < element.getAdjudication().size(); i++) 3830 composeClaimResponseAdjudicationComponent(t, "ClaimResponse", "adjudication", element.getAdjudication().get(i), 3831 i); 3832 for (int i = 0; i < element.getDetail().size(); i++) 3833 composeClaimResponseAddedItemDetailComponent(t, "ClaimResponse", "detail", element.getDetail().get(i), i); 3834 } 3835 3836 protected void composeClaimResponseAddedItemDetailComponent(Complex parent, String parentType, String name, 3837 ClaimResponse.AddedItemDetailComponent element, int index) { 3838 if (element == null) 3839 return; 3840 Complex t; 3841 if (Utilities.noString(parentType)) 3842 t = parent; 3843 else { 3844 t = parent.predicate("fhir:" + parentType + '.' + name); 3845 } 3846 composeBackboneElement(t, "detail", name, element, index); 3847 if (element.hasProductOrService()) 3848 composeCodeableConcept(t, "ClaimResponse", "productOrService", element.getProductOrService(), -1); 3849 for (int i = 0; i < element.getModifier().size(); i++) 3850 composeCodeableConcept(t, "ClaimResponse", "modifier", element.getModifier().get(i), i); 3851 if (element.hasQuantity()) 3852 composeQuantity(t, "ClaimResponse", "quantity", element.getQuantity(), -1); 3853 if (element.hasUnitPrice()) 3854 composeMoney(t, "ClaimResponse", "unitPrice", element.getUnitPrice(), -1); 3855 if (element.hasFactorElement()) 3856 composeDecimal(t, "ClaimResponse", "factor", element.getFactorElement(), -1); 3857 if (element.hasNet()) 3858 composeMoney(t, "ClaimResponse", "net", element.getNet(), -1); 3859 for (int i = 0; i < element.getNoteNumber().size(); i++) 3860 composePositiveInt(t, "ClaimResponse", "noteNumber", element.getNoteNumber().get(i), i); 3861 for (int i = 0; i < element.getAdjudication().size(); i++) 3862 composeClaimResponseAdjudicationComponent(t, "ClaimResponse", "adjudication", element.getAdjudication().get(i), 3863 i); 3864 for (int i = 0; i < element.getSubDetail().size(); i++) 3865 composeClaimResponseAddedItemSubDetailComponent(t, "ClaimResponse", "subDetail", element.getSubDetail().get(i), 3866 i); 3867 } 3868 3869 protected void composeClaimResponseAddedItemSubDetailComponent(Complex parent, String parentType, String name, 3870 ClaimResponse.AddedItemSubDetailComponent element, int index) { 3871 if (element == null) 3872 return; 3873 Complex t; 3874 if (Utilities.noString(parentType)) 3875 t = parent; 3876 else { 3877 t = parent.predicate("fhir:" + parentType + '.' + name); 3878 } 3879 composeBackboneElement(t, "subDetail", name, element, index); 3880 if (element.hasProductOrService()) 3881 composeCodeableConcept(t, "ClaimResponse", "productOrService", element.getProductOrService(), -1); 3882 for (int i = 0; i < element.getModifier().size(); i++) 3883 composeCodeableConcept(t, "ClaimResponse", "modifier", element.getModifier().get(i), i); 3884 if (element.hasQuantity()) 3885 composeQuantity(t, "ClaimResponse", "quantity", element.getQuantity(), -1); 3886 if (element.hasUnitPrice()) 3887 composeMoney(t, "ClaimResponse", "unitPrice", element.getUnitPrice(), -1); 3888 if (element.hasFactorElement()) 3889 composeDecimal(t, "ClaimResponse", "factor", element.getFactorElement(), -1); 3890 if (element.hasNet()) 3891 composeMoney(t, "ClaimResponse", "net", element.getNet(), -1); 3892 for (int i = 0; i < element.getNoteNumber().size(); i++) 3893 composePositiveInt(t, "ClaimResponse", "noteNumber", element.getNoteNumber().get(i), i); 3894 for (int i = 0; i < element.getAdjudication().size(); i++) 3895 composeClaimResponseAdjudicationComponent(t, "ClaimResponse", "adjudication", element.getAdjudication().get(i), 3896 i); 3897 } 3898 3899 protected void composeClaimResponseTotalComponent(Complex parent, String parentType, String name, 3900 ClaimResponse.TotalComponent element, int index) { 3901 if (element == null) 3902 return; 3903 Complex t; 3904 if (Utilities.noString(parentType)) 3905 t = parent; 3906 else { 3907 t = parent.predicate("fhir:" + parentType + '.' + name); 3908 } 3909 composeBackboneElement(t, "total", name, element, index); 3910 if (element.hasCategory()) 3911 composeCodeableConcept(t, "ClaimResponse", "category", element.getCategory(), -1); 3912 if (element.hasAmount()) 3913 composeMoney(t, "ClaimResponse", "amount", element.getAmount(), -1); 3914 } 3915 3916 protected void composeClaimResponsePaymentComponent(Complex parent, String parentType, String name, 3917 ClaimResponse.PaymentComponent element, int index) { 3918 if (element == null) 3919 return; 3920 Complex t; 3921 if (Utilities.noString(parentType)) 3922 t = parent; 3923 else { 3924 t = parent.predicate("fhir:" + parentType + '.' + name); 3925 } 3926 composeBackboneElement(t, "payment", name, element, index); 3927 if (element.hasType()) 3928 composeCodeableConcept(t, "ClaimResponse", "type", element.getType(), -1); 3929 if (element.hasAdjustment()) 3930 composeMoney(t, "ClaimResponse", "adjustment", element.getAdjustment(), -1); 3931 if (element.hasAdjustmentReason()) 3932 composeCodeableConcept(t, "ClaimResponse", "adjustmentReason", element.getAdjustmentReason(), -1); 3933 if (element.hasDateElement()) 3934 composeDate(t, "ClaimResponse", "date", element.getDateElement(), -1); 3935 if (element.hasAmount()) 3936 composeMoney(t, "ClaimResponse", "amount", element.getAmount(), -1); 3937 if (element.hasIdentifier()) 3938 composeIdentifier(t, "ClaimResponse", "identifier", element.getIdentifier(), -1); 3939 } 3940 3941 protected void composeClaimResponseNoteComponent(Complex parent, String parentType, String name, 3942 ClaimResponse.NoteComponent element, int index) { 3943 if (element == null) 3944 return; 3945 Complex t; 3946 if (Utilities.noString(parentType)) 3947 t = parent; 3948 else { 3949 t = parent.predicate("fhir:" + parentType + '.' + name); 3950 } 3951 composeBackboneElement(t, "processNote", name, element, index); 3952 if (element.hasNumberElement()) 3953 composePositiveInt(t, "ClaimResponse", "number", element.getNumberElement(), -1); 3954 if (element.hasTypeElement()) 3955 composeEnum(t, "ClaimResponse", "type", element.getTypeElement(), -1); 3956 if (element.hasTextElement()) 3957 composeString(t, "ClaimResponse", "text", element.getTextElement(), -1); 3958 if (element.hasLanguage()) 3959 composeCodeableConcept(t, "ClaimResponse", "language", element.getLanguage(), -1); 3960 } 3961 3962 protected void composeClaimResponseInsuranceComponent(Complex parent, String parentType, String name, 3963 ClaimResponse.InsuranceComponent element, int index) { 3964 if (element == null) 3965 return; 3966 Complex t; 3967 if (Utilities.noString(parentType)) 3968 t = parent; 3969 else { 3970 t = parent.predicate("fhir:" + parentType + '.' + name); 3971 } 3972 composeBackboneElement(t, "insurance", name, element, index); 3973 if (element.hasSequenceElement()) 3974 composePositiveInt(t, "ClaimResponse", "sequence", element.getSequenceElement(), -1); 3975 if (element.hasFocalElement()) 3976 composeBoolean(t, "ClaimResponse", "focal", element.getFocalElement(), -1); 3977 if (element.hasCoverage()) 3978 composeReference(t, "ClaimResponse", "coverage", element.getCoverage(), -1); 3979 if (element.hasBusinessArrangementElement()) 3980 composeString(t, "ClaimResponse", "businessArrangement", element.getBusinessArrangementElement(), -1); 3981 if (element.hasClaimResponse()) 3982 composeReference(t, "ClaimResponse", "claimResponse", element.getClaimResponse(), -1); 3983 } 3984 3985 protected void composeClaimResponseErrorComponent(Complex parent, String parentType, String name, 3986 ClaimResponse.ErrorComponent element, int index) { 3987 if (element == null) 3988 return; 3989 Complex t; 3990 if (Utilities.noString(parentType)) 3991 t = parent; 3992 else { 3993 t = parent.predicate("fhir:" + parentType + '.' + name); 3994 } 3995 composeBackboneElement(t, "error", name, element, index); 3996 if (element.hasItemSequenceElement()) 3997 composePositiveInt(t, "ClaimResponse", "itemSequence", element.getItemSequenceElement(), -1); 3998 if (element.hasDetailSequenceElement()) 3999 composePositiveInt(t, "ClaimResponse", "detailSequence", element.getDetailSequenceElement(), -1); 4000 if (element.hasSubDetailSequenceElement()) 4001 composePositiveInt(t, "ClaimResponse", "subDetailSequence", element.getSubDetailSequenceElement(), -1); 4002 if (element.hasCode()) 4003 composeCodeableConcept(t, "ClaimResponse", "code", element.getCode(), -1); 4004 } 4005 4006 protected void composeClinicalImpression(Complex parent, String parentType, String name, ClinicalImpression element, 4007 int index) { 4008 if (element == null) 4009 return; 4010 Complex t; 4011 if (Utilities.noString(parentType)) 4012 t = parent; 4013 else { 4014 t = parent.predicate("fhir:" + parentType + '.' + name); 4015 } 4016 composeDomainResource(t, "ClinicalImpression", name, element, index); 4017 for (int i = 0; i < element.getIdentifier().size(); i++) 4018 composeIdentifier(t, "ClinicalImpression", "identifier", element.getIdentifier().get(i), i); 4019 if (element.hasStatusElement()) 4020 composeEnum(t, "ClinicalImpression", "status", element.getStatusElement(), -1); 4021 if (element.hasStatusReason()) 4022 composeCodeableConcept(t, "ClinicalImpression", "statusReason", element.getStatusReason(), -1); 4023 if (element.hasCode()) 4024 composeCodeableConcept(t, "ClinicalImpression", "code", element.getCode(), -1); 4025 if (element.hasDescriptionElement()) 4026 composeString(t, "ClinicalImpression", "description", element.getDescriptionElement(), -1); 4027 if (element.hasSubject()) 4028 composeReference(t, "ClinicalImpression", "subject", element.getSubject(), -1); 4029 if (element.hasEncounter()) 4030 composeReference(t, "ClinicalImpression", "encounter", element.getEncounter(), -1); 4031 if (element.hasEffective()) 4032 composeType(t, "ClinicalImpression", "effective", element.getEffective(), -1); 4033 if (element.hasDateElement()) 4034 composeDateTime(t, "ClinicalImpression", "date", element.getDateElement(), -1); 4035 if (element.hasAssessor()) 4036 composeReference(t, "ClinicalImpression", "assessor", element.getAssessor(), -1); 4037 if (element.hasPrevious()) 4038 composeReference(t, "ClinicalImpression", "previous", element.getPrevious(), -1); 4039 for (int i = 0; i < element.getProblem().size(); i++) 4040 composeReference(t, "ClinicalImpression", "problem", element.getProblem().get(i), i); 4041 for (int i = 0; i < element.getInvestigation().size(); i++) 4042 composeClinicalImpressionClinicalImpressionInvestigationComponent(t, "ClinicalImpression", "investigation", 4043 element.getInvestigation().get(i), i); 4044 for (int i = 0; i < element.getProtocol().size(); i++) 4045 composeUri(t, "ClinicalImpression", "protocol", element.getProtocol().get(i), i); 4046 if (element.hasSummaryElement()) 4047 composeString(t, "ClinicalImpression", "summary", element.getSummaryElement(), -1); 4048 for (int i = 0; i < element.getFinding().size(); i++) 4049 composeClinicalImpressionClinicalImpressionFindingComponent(t, "ClinicalImpression", "finding", 4050 element.getFinding().get(i), i); 4051 for (int i = 0; i < element.getPrognosisCodeableConcept().size(); i++) 4052 composeCodeableConcept(t, "ClinicalImpression", "prognosisCodeableConcept", 4053 element.getPrognosisCodeableConcept().get(i), i); 4054 for (int i = 0; i < element.getPrognosisReference().size(); i++) 4055 composeReference(t, "ClinicalImpression", "prognosisReference", element.getPrognosisReference().get(i), i); 4056 for (int i = 0; i < element.getSupportingInfo().size(); i++) 4057 composeReference(t, "ClinicalImpression", "supportingInfo", element.getSupportingInfo().get(i), i); 4058 for (int i = 0; i < element.getNote().size(); i++) 4059 composeAnnotation(t, "ClinicalImpression", "note", element.getNote().get(i), i); 4060 } 4061 4062 protected void composeClinicalImpressionClinicalImpressionInvestigationComponent(Complex parent, String parentType, 4063 String name, ClinicalImpression.ClinicalImpressionInvestigationComponent element, int index) { 4064 if (element == null) 4065 return; 4066 Complex t; 4067 if (Utilities.noString(parentType)) 4068 t = parent; 4069 else { 4070 t = parent.predicate("fhir:" + parentType + '.' + name); 4071 } 4072 composeBackboneElement(t, "investigation", name, element, index); 4073 if (element.hasCode()) 4074 composeCodeableConcept(t, "ClinicalImpression", "code", element.getCode(), -1); 4075 for (int i = 0; i < element.getItem().size(); i++) 4076 composeReference(t, "ClinicalImpression", "item", element.getItem().get(i), i); 4077 } 4078 4079 protected void composeClinicalImpressionClinicalImpressionFindingComponent(Complex parent, String parentType, 4080 String name, ClinicalImpression.ClinicalImpressionFindingComponent element, int index) { 4081 if (element == null) 4082 return; 4083 Complex t; 4084 if (Utilities.noString(parentType)) 4085 t = parent; 4086 else { 4087 t = parent.predicate("fhir:" + parentType + '.' + name); 4088 } 4089 composeBackboneElement(t, "finding", name, element, index); 4090 if (element.hasItemCodeableConcept()) 4091 composeCodeableConcept(t, "ClinicalImpression", "itemCodeableConcept", element.getItemCodeableConcept(), -1); 4092 if (element.hasItemReference()) 4093 composeReference(t, "ClinicalImpression", "itemReference", element.getItemReference(), -1); 4094 if (element.hasBasisElement()) 4095 composeString(t, "ClinicalImpression", "basis", element.getBasisElement(), -1); 4096 } 4097 4098 protected void composeCodeSystem(Complex parent, String parentType, String name, CodeSystem element, int index) { 4099 if (element == null) 4100 return; 4101 Complex t; 4102 if (Utilities.noString(parentType)) 4103 t = parent; 4104 else { 4105 t = parent.predicate("fhir:" + parentType + '.' + name); 4106 } 4107 composeDomainResource(t, "CodeSystem", name, element, index); 4108 if (element.hasUrlElement()) 4109 composeUri(t, "CodeSystem", "url", element.getUrlElement(), -1); 4110 for (int i = 0; i < element.getIdentifier().size(); i++) 4111 composeIdentifier(t, "CodeSystem", "identifier", element.getIdentifier().get(i), i); 4112 if (element.hasVersionElement()) 4113 composeString(t, "CodeSystem", "version", element.getVersionElement(), -1); 4114 if (element.hasNameElement()) 4115 composeString(t, "CodeSystem", "name", element.getNameElement(), -1); 4116 if (element.hasTitleElement()) 4117 composeString(t, "CodeSystem", "title", element.getTitleElement(), -1); 4118 if (element.hasStatusElement()) 4119 composeEnum(t, "CodeSystem", "status", element.getStatusElement(), -1); 4120 if (element.hasExperimentalElement()) 4121 composeBoolean(t, "CodeSystem", "experimental", element.getExperimentalElement(), -1); 4122 if (element.hasDateElement()) 4123 composeDateTime(t, "CodeSystem", "date", element.getDateElement(), -1); 4124 if (element.hasPublisherElement()) 4125 composeString(t, "CodeSystem", "publisher", element.getPublisherElement(), -1); 4126 for (int i = 0; i < element.getContact().size(); i++) 4127 composeContactDetail(t, "CodeSystem", "contact", element.getContact().get(i), i); 4128 if (element.hasDescriptionElement()) 4129 composeMarkdown(t, "CodeSystem", "description", element.getDescriptionElement(), -1); 4130 for (int i = 0; i < element.getUseContext().size(); i++) 4131 composeUsageContext(t, "CodeSystem", "useContext", element.getUseContext().get(i), i); 4132 for (int i = 0; i < element.getJurisdiction().size(); i++) 4133 composeCodeableConcept(t, "CodeSystem", "jurisdiction", element.getJurisdiction().get(i), i); 4134 if (element.hasPurposeElement()) 4135 composeMarkdown(t, "CodeSystem", "purpose", element.getPurposeElement(), -1); 4136 if (element.hasCopyrightElement()) 4137 composeMarkdown(t, "CodeSystem", "copyright", element.getCopyrightElement(), -1); 4138 if (element.hasCaseSensitiveElement()) 4139 composeBoolean(t, "CodeSystem", "caseSensitive", element.getCaseSensitiveElement(), -1); 4140 if (element.hasValueSetElement()) 4141 composeCanonical(t, "CodeSystem", "valueSet", element.getValueSetElement(), -1); 4142 if (element.hasHierarchyMeaningElement()) 4143 composeEnum(t, "CodeSystem", "hierarchyMeaning", element.getHierarchyMeaningElement(), -1); 4144 if (element.hasCompositionalElement()) 4145 composeBoolean(t, "CodeSystem", "compositional", element.getCompositionalElement(), -1); 4146 if (element.hasVersionNeededElement()) 4147 composeBoolean(t, "CodeSystem", "versionNeeded", element.getVersionNeededElement(), -1); 4148 if (element.hasContentElement()) 4149 composeEnum(t, "CodeSystem", "content", element.getContentElement(), -1); 4150 if (element.hasSupplementsElement()) 4151 composeCanonical(t, "CodeSystem", "supplements", element.getSupplementsElement(), -1); 4152 if (element.hasCountElement()) 4153 composeUnsignedInt(t, "CodeSystem", "count", element.getCountElement(), -1); 4154 for (int i = 0; i < element.getFilter().size(); i++) 4155 composeCodeSystemCodeSystemFilterComponent(t, "CodeSystem", "filter", element.getFilter().get(i), i); 4156 for (int i = 0; i < element.getProperty().size(); i++) 4157 composeCodeSystemPropertyComponent(t, "CodeSystem", "property", element.getProperty().get(i), i); 4158 for (int i = 0; i < element.getConcept().size(); i++) 4159 composeCodeSystemConceptDefinitionComponent(t, "CodeSystem", "concept", element.getConcept().get(i), i); 4160 } 4161 4162 protected void composeCodeSystemCodeSystemFilterComponent(Complex parent, String parentType, String name, 4163 CodeSystem.CodeSystemFilterComponent element, int index) { 4164 if (element == null) 4165 return; 4166 Complex t; 4167 if (Utilities.noString(parentType)) 4168 t = parent; 4169 else { 4170 t = parent.predicate("fhir:" + parentType + '.' + name); 4171 } 4172 composeBackboneElement(t, "filter", name, element, index); 4173 if (element.hasCodeElement()) 4174 composeCode(t, "CodeSystem", "code", element.getCodeElement(), -1); 4175 if (element.hasDescriptionElement()) 4176 composeString(t, "CodeSystem", "description", element.getDescriptionElement(), -1); 4177 for (int i = 0; i < element.getOperator().size(); i++) 4178 composeEnum(t, "CodeSystem", "operator", element.getOperator().get(i), i); 4179 if (element.hasValueElement()) 4180 composeString(t, "CodeSystem", "value", element.getValueElement(), -1); 4181 } 4182 4183 protected void composeCodeSystemPropertyComponent(Complex parent, String parentType, String name, 4184 CodeSystem.PropertyComponent element, int index) { 4185 if (element == null) 4186 return; 4187 Complex t; 4188 if (Utilities.noString(parentType)) 4189 t = parent; 4190 else { 4191 t = parent.predicate("fhir:" + parentType + '.' + name); 4192 } 4193 composeBackboneElement(t, "property", name, element, index); 4194 if (element.hasCodeElement()) 4195 composeCode(t, "CodeSystem", "code", element.getCodeElement(), -1); 4196 if (element.hasUriElement()) 4197 composeUri(t, "CodeSystem", "uri", element.getUriElement(), -1); 4198 if (element.hasDescriptionElement()) 4199 composeString(t, "CodeSystem", "description", element.getDescriptionElement(), -1); 4200 if (element.hasTypeElement()) 4201 composeEnum(t, "CodeSystem", "type", element.getTypeElement(), -1); 4202 } 4203 4204 protected void composeCodeSystemConceptDefinitionComponent(Complex parent, String parentType, String name, 4205 CodeSystem.ConceptDefinitionComponent element, int index) { 4206 if (element == null) 4207 return; 4208 Complex t; 4209 if (Utilities.noString(parentType)) 4210 t = parent; 4211 else { 4212 t = parent.predicate("fhir:" + parentType + '.' + name); 4213 } 4214 composeBackboneElement(t, "concept", name, element, index); 4215 if (element.hasCodeElement()) 4216 composeCode(t, "CodeSystem", "code", element.getCodeElement(), -1); 4217 if (element.hasDisplayElement()) 4218 composeString(t, "CodeSystem", "display", element.getDisplayElement(), -1); 4219 if (element.hasDefinitionElement()) 4220 composeString(t, "CodeSystem", "definition", element.getDefinitionElement(), -1); 4221 for (int i = 0; i < element.getDesignation().size(); i++) 4222 composeCodeSystemConceptDefinitionDesignationComponent(t, "CodeSystem", "designation", 4223 element.getDesignation().get(i), i); 4224 for (int i = 0; i < element.getProperty().size(); i++) 4225 composeCodeSystemConceptPropertyComponent(t, "CodeSystem", "property", element.getProperty().get(i), i); 4226 for (int i = 0; i < element.getConcept().size(); i++) 4227 composeCodeSystemConceptDefinitionComponent(t, "CodeSystem", "concept", element.getConcept().get(i), i); 4228 } 4229 4230 protected void composeCodeSystemConceptDefinitionDesignationComponent(Complex parent, String parentType, String name, 4231 CodeSystem.ConceptDefinitionDesignationComponent element, int index) { 4232 if (element == null) 4233 return; 4234 Complex t; 4235 if (Utilities.noString(parentType)) 4236 t = parent; 4237 else { 4238 t = parent.predicate("fhir:" + parentType + '.' + name); 4239 } 4240 composeBackboneElement(t, "designation", name, element, index); 4241 if (element.hasLanguageElement()) 4242 composeCode(t, "CodeSystem", "language", element.getLanguageElement(), -1); 4243 if (element.hasUse()) 4244 composeCoding(t, "CodeSystem", "use", element.getUse(), -1); 4245 if (element.hasValueElement()) 4246 composeString(t, "CodeSystem", "value", element.getValueElement(), -1); 4247 } 4248 4249 protected void composeCodeSystemConceptPropertyComponent(Complex parent, String parentType, String name, 4250 CodeSystem.ConceptPropertyComponent element, int index) { 4251 if (element == null) 4252 return; 4253 Complex t; 4254 if (Utilities.noString(parentType)) 4255 t = parent; 4256 else { 4257 t = parent.predicate("fhir:" + parentType + '.' + name); 4258 } 4259 composeBackboneElement(t, "property", name, element, index); 4260 if (element.hasCodeElement()) 4261 composeCode(t, "CodeSystem", "code", element.getCodeElement(), -1); 4262 if (element.hasValue()) 4263 composeType(t, "CodeSystem", "value", element.getValue(), -1); 4264 } 4265 4266 protected void composeCommunication(Complex parent, String parentType, String name, Communication element, 4267 int index) { 4268 if (element == null) 4269 return; 4270 Complex t; 4271 if (Utilities.noString(parentType)) 4272 t = parent; 4273 else { 4274 t = parent.predicate("fhir:" + parentType + '.' + name); 4275 } 4276 composeDomainResource(t, "Communication", name, element, index); 4277 for (int i = 0; i < element.getIdentifier().size(); i++) 4278 composeIdentifier(t, "Communication", "identifier", element.getIdentifier().get(i), i); 4279 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 4280 composeCanonical(t, "Communication", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 4281 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 4282 composeUri(t, "Communication", "instantiatesUri", element.getInstantiatesUri().get(i), i); 4283 for (int i = 0; i < element.getBasedOn().size(); i++) 4284 composeReference(t, "Communication", "basedOn", element.getBasedOn().get(i), i); 4285 for (int i = 0; i < element.getPartOf().size(); i++) 4286 composeReference(t, "Communication", "partOf", element.getPartOf().get(i), i); 4287 for (int i = 0; i < element.getInResponseTo().size(); i++) 4288 composeReference(t, "Communication", "inResponseTo", element.getInResponseTo().get(i), i); 4289 if (element.hasStatusElement()) 4290 composeEnum(t, "Communication", "status", element.getStatusElement(), -1); 4291 if (element.hasStatusReason()) 4292 composeCodeableConcept(t, "Communication", "statusReason", element.getStatusReason(), -1); 4293 for (int i = 0; i < element.getCategory().size(); i++) 4294 composeCodeableConcept(t, "Communication", "category", element.getCategory().get(i), i); 4295 if (element.hasPriorityElement()) 4296 composeEnum(t, "Communication", "priority", element.getPriorityElement(), -1); 4297 for (int i = 0; i < element.getMedium().size(); i++) 4298 composeCodeableConcept(t, "Communication", "medium", element.getMedium().get(i), i); 4299 if (element.hasSubject()) 4300 composeReference(t, "Communication", "subject", element.getSubject(), -1); 4301 if (element.hasTopic()) 4302 composeCodeableConcept(t, "Communication", "topic", element.getTopic(), -1); 4303 for (int i = 0; i < element.getAbout().size(); i++) 4304 composeReference(t, "Communication", "about", element.getAbout().get(i), i); 4305 if (element.hasEncounter()) 4306 composeReference(t, "Communication", "encounter", element.getEncounter(), -1); 4307 if (element.hasSentElement()) 4308 composeDateTime(t, "Communication", "sent", element.getSentElement(), -1); 4309 if (element.hasReceivedElement()) 4310 composeDateTime(t, "Communication", "received", element.getReceivedElement(), -1); 4311 for (int i = 0; i < element.getRecipient().size(); i++) 4312 composeReference(t, "Communication", "recipient", element.getRecipient().get(i), i); 4313 if (element.hasSender()) 4314 composeReference(t, "Communication", "sender", element.getSender(), -1); 4315 for (int i = 0; i < element.getReasonCode().size(); i++) 4316 composeCodeableConcept(t, "Communication", "reasonCode", element.getReasonCode().get(i), i); 4317 for (int i = 0; i < element.getReasonReference().size(); i++) 4318 composeReference(t, "Communication", "reasonReference", element.getReasonReference().get(i), i); 4319 for (int i = 0; i < element.getPayload().size(); i++) 4320 composeCommunicationCommunicationPayloadComponent(t, "Communication", "payload", element.getPayload().get(i), i); 4321 for (int i = 0; i < element.getNote().size(); i++) 4322 composeAnnotation(t, "Communication", "note", element.getNote().get(i), i); 4323 } 4324 4325 protected void composeCommunicationCommunicationPayloadComponent(Complex parent, String parentType, String name, 4326 Communication.CommunicationPayloadComponent element, int index) { 4327 if (element == null) 4328 return; 4329 Complex t; 4330 if (Utilities.noString(parentType)) 4331 t = parent; 4332 else { 4333 t = parent.predicate("fhir:" + parentType + '.' + name); 4334 } 4335 composeBackboneElement(t, "payload", name, element, index); 4336 if (element.hasContent()) 4337 composeType(t, "Communication", "content", element.getContent(), -1); 4338 } 4339 4340 protected void composeCommunicationRequest(Complex parent, String parentType, String name, 4341 CommunicationRequest element, int index) { 4342 if (element == null) 4343 return; 4344 Complex t; 4345 if (Utilities.noString(parentType)) 4346 t = parent; 4347 else { 4348 t = parent.predicate("fhir:" + parentType + '.' + name); 4349 } 4350 composeDomainResource(t, "CommunicationRequest", name, element, index); 4351 for (int i = 0; i < element.getIdentifier().size(); i++) 4352 composeIdentifier(t, "CommunicationRequest", "identifier", element.getIdentifier().get(i), i); 4353 for (int i = 0; i < element.getBasedOn().size(); i++) 4354 composeReference(t, "CommunicationRequest", "basedOn", element.getBasedOn().get(i), i); 4355 for (int i = 0; i < element.getReplaces().size(); i++) 4356 composeReference(t, "CommunicationRequest", "replaces", element.getReplaces().get(i), i); 4357 if (element.hasGroupIdentifier()) 4358 composeIdentifier(t, "CommunicationRequest", "groupIdentifier", element.getGroupIdentifier(), -1); 4359 if (element.hasStatusElement()) 4360 composeEnum(t, "CommunicationRequest", "status", element.getStatusElement(), -1); 4361 if (element.hasStatusReason()) 4362 composeCodeableConcept(t, "CommunicationRequest", "statusReason", element.getStatusReason(), -1); 4363 for (int i = 0; i < element.getCategory().size(); i++) 4364 composeCodeableConcept(t, "CommunicationRequest", "category", element.getCategory().get(i), i); 4365 if (element.hasPriorityElement()) 4366 composeEnum(t, "CommunicationRequest", "priority", element.getPriorityElement(), -1); 4367 if (element.hasDoNotPerformElement()) 4368 composeBoolean(t, "CommunicationRequest", "doNotPerform", element.getDoNotPerformElement(), -1); 4369 for (int i = 0; i < element.getMedium().size(); i++) 4370 composeCodeableConcept(t, "CommunicationRequest", "medium", element.getMedium().get(i), i); 4371 if (element.hasSubject()) 4372 composeReference(t, "CommunicationRequest", "subject", element.getSubject(), -1); 4373 for (int i = 0; i < element.getAbout().size(); i++) 4374 composeReference(t, "CommunicationRequest", "about", element.getAbout().get(i), i); 4375 if (element.hasEncounter()) 4376 composeReference(t, "CommunicationRequest", "encounter", element.getEncounter(), -1); 4377 for (int i = 0; i < element.getPayload().size(); i++) 4378 composeCommunicationRequestCommunicationRequestPayloadComponent(t, "CommunicationRequest", "payload", 4379 element.getPayload().get(i), i); 4380 if (element.hasOccurrence()) 4381 composeType(t, "CommunicationRequest", "occurrence", element.getOccurrence(), -1); 4382 if (element.hasAuthoredOnElement()) 4383 composeDateTime(t, "CommunicationRequest", "authoredOn", element.getAuthoredOnElement(), -1); 4384 if (element.hasRequester()) 4385 composeReference(t, "CommunicationRequest", "requester", element.getRequester(), -1); 4386 for (int i = 0; i < element.getRecipient().size(); i++) 4387 composeReference(t, "CommunicationRequest", "recipient", element.getRecipient().get(i), i); 4388 if (element.hasSender()) 4389 composeReference(t, "CommunicationRequest", "sender", element.getSender(), -1); 4390 for (int i = 0; i < element.getReasonCode().size(); i++) 4391 composeCodeableConcept(t, "CommunicationRequest", "reasonCode", element.getReasonCode().get(i), i); 4392 for (int i = 0; i < element.getReasonReference().size(); i++) 4393 composeReference(t, "CommunicationRequest", "reasonReference", element.getReasonReference().get(i), i); 4394 for (int i = 0; i < element.getNote().size(); i++) 4395 composeAnnotation(t, "CommunicationRequest", "note", element.getNote().get(i), i); 4396 } 4397 4398 protected void composeCommunicationRequestCommunicationRequestPayloadComponent(Complex parent, String parentType, 4399 String name, CommunicationRequest.CommunicationRequestPayloadComponent element, int index) { 4400 if (element == null) 4401 return; 4402 Complex t; 4403 if (Utilities.noString(parentType)) 4404 t = parent; 4405 else { 4406 t = parent.predicate("fhir:" + parentType + '.' + name); 4407 } 4408 composeBackboneElement(t, "payload", name, element, index); 4409 if (element.hasContent()) 4410 composeType(t, "CommunicationRequest", "content", element.getContent(), -1); 4411 } 4412 4413 protected void composeCompartmentDefinition(Complex parent, String parentType, String name, 4414 CompartmentDefinition element, int index) { 4415 if (element == null) 4416 return; 4417 Complex t; 4418 if (Utilities.noString(parentType)) 4419 t = parent; 4420 else { 4421 t = parent.predicate("fhir:" + parentType + '.' + name); 4422 } 4423 composeDomainResource(t, "CompartmentDefinition", name, element, index); 4424 if (element.hasUrlElement()) 4425 composeUri(t, "CompartmentDefinition", "url", element.getUrlElement(), -1); 4426 if (element.hasVersionElement()) 4427 composeString(t, "CompartmentDefinition", "version", element.getVersionElement(), -1); 4428 if (element.hasNameElement()) 4429 composeString(t, "CompartmentDefinition", "name", element.getNameElement(), -1); 4430 if (element.hasStatusElement()) 4431 composeEnum(t, "CompartmentDefinition", "status", element.getStatusElement(), -1); 4432 if (element.hasExperimentalElement()) 4433 composeBoolean(t, "CompartmentDefinition", "experimental", element.getExperimentalElement(), -1); 4434 if (element.hasDateElement()) 4435 composeDateTime(t, "CompartmentDefinition", "date", element.getDateElement(), -1); 4436 if (element.hasPublisherElement()) 4437 composeString(t, "CompartmentDefinition", "publisher", element.getPublisherElement(), -1); 4438 for (int i = 0; i < element.getContact().size(); i++) 4439 composeContactDetail(t, "CompartmentDefinition", "contact", element.getContact().get(i), i); 4440 if (element.hasDescriptionElement()) 4441 composeMarkdown(t, "CompartmentDefinition", "description", element.getDescriptionElement(), -1); 4442 for (int i = 0; i < element.getUseContext().size(); i++) 4443 composeUsageContext(t, "CompartmentDefinition", "useContext", element.getUseContext().get(i), i); 4444 if (element.hasPurposeElement()) 4445 composeMarkdown(t, "CompartmentDefinition", "purpose", element.getPurposeElement(), -1); 4446 if (element.hasCodeElement()) 4447 composeEnum(t, "CompartmentDefinition", "code", element.getCodeElement(), -1); 4448 if (element.hasSearchElement()) 4449 composeBoolean(t, "CompartmentDefinition", "search", element.getSearchElement(), -1); 4450 for (int i = 0; i < element.getResource().size(); i++) 4451 composeCompartmentDefinitionCompartmentDefinitionResourceComponent(t, "CompartmentDefinition", "resource", 4452 element.getResource().get(i), i); 4453 } 4454 4455 protected void composeCompartmentDefinitionCompartmentDefinitionResourceComponent(Complex parent, String parentType, 4456 String name, CompartmentDefinition.CompartmentDefinitionResourceComponent element, int index) { 4457 if (element == null) 4458 return; 4459 Complex t; 4460 if (Utilities.noString(parentType)) 4461 t = parent; 4462 else { 4463 t = parent.predicate("fhir:" + parentType + '.' + name); 4464 } 4465 composeBackboneElement(t, "resource", name, element, index); 4466 if (element.hasCodeElement()) 4467 composeCode(t, "CompartmentDefinition", "code", element.getCodeElement(), -1); 4468 for (int i = 0; i < element.getParam().size(); i++) 4469 composeString(t, "CompartmentDefinition", "param", element.getParam().get(i), i); 4470 if (element.hasDocumentationElement()) 4471 composeString(t, "CompartmentDefinition", "documentation", element.getDocumentationElement(), -1); 4472 } 4473 4474 protected void composeComposition(Complex parent, String parentType, String name, Composition element, int index) { 4475 if (element == null) 4476 return; 4477 Complex t; 4478 if (Utilities.noString(parentType)) 4479 t = parent; 4480 else { 4481 t = parent.predicate("fhir:" + parentType + '.' + name); 4482 } 4483 composeDomainResource(t, "Composition", name, element, index); 4484 if (element.hasIdentifier()) 4485 composeIdentifier(t, "Composition", "identifier", element.getIdentifier(), -1); 4486 if (element.hasStatusElement()) 4487 composeEnum(t, "Composition", "status", element.getStatusElement(), -1); 4488 if (element.hasType()) 4489 composeCodeableConcept(t, "Composition", "type", element.getType(), -1); 4490 for (int i = 0; i < element.getCategory().size(); i++) 4491 composeCodeableConcept(t, "Composition", "category", element.getCategory().get(i), i); 4492 if (element.hasSubject()) 4493 composeReference(t, "Composition", "subject", element.getSubject(), -1); 4494 if (element.hasEncounter()) 4495 composeReference(t, "Composition", "encounter", element.getEncounter(), -1); 4496 if (element.hasDateElement()) 4497 composeDateTime(t, "Composition", "date", element.getDateElement(), -1); 4498 for (int i = 0; i < element.getAuthor().size(); i++) 4499 composeReference(t, "Composition", "author", element.getAuthor().get(i), i); 4500 if (element.hasTitleElement()) 4501 composeString(t, "Composition", "title", element.getTitleElement(), -1); 4502 if (element.hasConfidentialityElement()) 4503 composeEnum(t, "Composition", "confidentiality", element.getConfidentialityElement(), -1); 4504 for (int i = 0; i < element.getAttester().size(); i++) 4505 composeCompositionCompositionAttesterComponent(t, "Composition", "attester", element.getAttester().get(i), i); 4506 if (element.hasCustodian()) 4507 composeReference(t, "Composition", "custodian", element.getCustodian(), -1); 4508 for (int i = 0; i < element.getRelatesTo().size(); i++) 4509 composeCompositionCompositionRelatesToComponent(t, "Composition", "relatesTo", element.getRelatesTo().get(i), i); 4510 for (int i = 0; i < element.getEvent().size(); i++) 4511 composeCompositionCompositionEventComponent(t, "Composition", "event", element.getEvent().get(i), i); 4512 for (int i = 0; i < element.getSection().size(); i++) 4513 composeCompositionSectionComponent(t, "Composition", "section", element.getSection().get(i), i); 4514 } 4515 4516 protected void composeCompositionCompositionAttesterComponent(Complex parent, String parentType, String name, 4517 Composition.CompositionAttesterComponent element, int index) { 4518 if (element == null) 4519 return; 4520 Complex t; 4521 if (Utilities.noString(parentType)) 4522 t = parent; 4523 else { 4524 t = parent.predicate("fhir:" + parentType + '.' + name); 4525 } 4526 composeBackboneElement(t, "attester", name, element, index); 4527 if (element.hasModeElement()) 4528 composeEnum(t, "Composition", "mode", element.getModeElement(), -1); 4529 if (element.hasTimeElement()) 4530 composeDateTime(t, "Composition", "time", element.getTimeElement(), -1); 4531 if (element.hasParty()) 4532 composeReference(t, "Composition", "party", element.getParty(), -1); 4533 } 4534 4535 protected void composeCompositionCompositionRelatesToComponent(Complex parent, String parentType, String name, 4536 Composition.CompositionRelatesToComponent element, int index) { 4537 if (element == null) 4538 return; 4539 Complex t; 4540 if (Utilities.noString(parentType)) 4541 t = parent; 4542 else { 4543 t = parent.predicate("fhir:" + parentType + '.' + name); 4544 } 4545 composeBackboneElement(t, "relatesTo", name, element, index); 4546 if (element.hasCodeElement()) 4547 composeEnum(t, "Composition", "code", element.getCodeElement(), -1); 4548 if (element.hasTarget()) 4549 composeType(t, "Composition", "target", element.getTarget(), -1); 4550 } 4551 4552 protected void composeCompositionCompositionEventComponent(Complex parent, String parentType, String name, 4553 Composition.CompositionEventComponent element, int index) { 4554 if (element == null) 4555 return; 4556 Complex t; 4557 if (Utilities.noString(parentType)) 4558 t = parent; 4559 else { 4560 t = parent.predicate("fhir:" + parentType + '.' + name); 4561 } 4562 composeBackboneElement(t, "event", name, element, index); 4563 for (int i = 0; i < element.getCode().size(); i++) 4564 composeCodeableConcept(t, "Composition", "code", element.getCode().get(i), i); 4565 if (element.hasPeriod()) 4566 composePeriod(t, "Composition", "period", element.getPeriod(), -1); 4567 for (int i = 0; i < element.getDetail().size(); i++) 4568 composeReference(t, "Composition", "detail", element.getDetail().get(i), i); 4569 } 4570 4571 protected void composeCompositionSectionComponent(Complex parent, String parentType, String name, 4572 Composition.SectionComponent element, int index) { 4573 if (element == null) 4574 return; 4575 Complex t; 4576 if (Utilities.noString(parentType)) 4577 t = parent; 4578 else { 4579 t = parent.predicate("fhir:" + parentType + '.' + name); 4580 } 4581 composeBackboneElement(t, "section", name, element, index); 4582 if (element.hasTitleElement()) 4583 composeString(t, "Composition", "title", element.getTitleElement(), -1); 4584 if (element.hasCode()) 4585 composeCodeableConcept(t, "Composition", "code", element.getCode(), -1); 4586 for (int i = 0; i < element.getAuthor().size(); i++) 4587 composeReference(t, "Composition", "author", element.getAuthor().get(i), i); 4588 if (element.hasFocus()) 4589 composeReference(t, "Composition", "focus", element.getFocus(), -1); 4590 if (element.hasText()) 4591 composeNarrative(t, "Composition", "text", element.getText(), -1); 4592 if (element.hasModeElement()) 4593 composeEnum(t, "Composition", "mode", element.getModeElement(), -1); 4594 if (element.hasOrderedBy()) 4595 composeCodeableConcept(t, "Composition", "orderedBy", element.getOrderedBy(), -1); 4596 for (int i = 0; i < element.getEntry().size(); i++) 4597 composeReference(t, "Composition", "entry", element.getEntry().get(i), i); 4598 if (element.hasEmptyReason()) 4599 composeCodeableConcept(t, "Composition", "emptyReason", element.getEmptyReason(), -1); 4600 for (int i = 0; i < element.getSection().size(); i++) 4601 composeCompositionSectionComponent(t, "Composition", "section", element.getSection().get(i), i); 4602 } 4603 4604 protected void composeConceptMap(Complex parent, String parentType, String name, ConceptMap element, int index) { 4605 if (element == null) 4606 return; 4607 Complex t; 4608 if (Utilities.noString(parentType)) 4609 t = parent; 4610 else { 4611 t = parent.predicate("fhir:" + parentType + '.' + name); 4612 } 4613 composeDomainResource(t, "ConceptMap", name, element, index); 4614 if (element.hasUrlElement()) 4615 composeUri(t, "ConceptMap", "url", element.getUrlElement(), -1); 4616 if (element.hasIdentifier()) 4617 composeIdentifier(t, "ConceptMap", "identifier", element.getIdentifier(), -1); 4618 if (element.hasVersionElement()) 4619 composeString(t, "ConceptMap", "version", element.getVersionElement(), -1); 4620 if (element.hasNameElement()) 4621 composeString(t, "ConceptMap", "name", element.getNameElement(), -1); 4622 if (element.hasTitleElement()) 4623 composeString(t, "ConceptMap", "title", element.getTitleElement(), -1); 4624 if (element.hasStatusElement()) 4625 composeEnum(t, "ConceptMap", "status", element.getStatusElement(), -1); 4626 if (element.hasExperimentalElement()) 4627 composeBoolean(t, "ConceptMap", "experimental", element.getExperimentalElement(), -1); 4628 if (element.hasDateElement()) 4629 composeDateTime(t, "ConceptMap", "date", element.getDateElement(), -1); 4630 if (element.hasPublisherElement()) 4631 composeString(t, "ConceptMap", "publisher", element.getPublisherElement(), -1); 4632 for (int i = 0; i < element.getContact().size(); i++) 4633 composeContactDetail(t, "ConceptMap", "contact", element.getContact().get(i), i); 4634 if (element.hasDescriptionElement()) 4635 composeMarkdown(t, "ConceptMap", "description", element.getDescriptionElement(), -1); 4636 for (int i = 0; i < element.getUseContext().size(); i++) 4637 composeUsageContext(t, "ConceptMap", "useContext", element.getUseContext().get(i), i); 4638 for (int i = 0; i < element.getJurisdiction().size(); i++) 4639 composeCodeableConcept(t, "ConceptMap", "jurisdiction", element.getJurisdiction().get(i), i); 4640 if (element.hasPurposeElement()) 4641 composeMarkdown(t, "ConceptMap", "purpose", element.getPurposeElement(), -1); 4642 if (element.hasCopyrightElement()) 4643 composeMarkdown(t, "ConceptMap", "copyright", element.getCopyrightElement(), -1); 4644 if (element.hasSource()) 4645 composeType(t, "ConceptMap", "source", element.getSource(), -1); 4646 if (element.hasTarget()) 4647 composeType(t, "ConceptMap", "target", element.getTarget(), -1); 4648 for (int i = 0; i < element.getGroup().size(); i++) 4649 composeConceptMapConceptMapGroupComponent(t, "ConceptMap", "group", element.getGroup().get(i), i); 4650 } 4651 4652 protected void composeConceptMapConceptMapGroupComponent(Complex parent, String parentType, String name, 4653 ConceptMap.ConceptMapGroupComponent element, int index) { 4654 if (element == null) 4655 return; 4656 Complex t; 4657 if (Utilities.noString(parentType)) 4658 t = parent; 4659 else { 4660 t = parent.predicate("fhir:" + parentType + '.' + name); 4661 } 4662 composeBackboneElement(t, "group", name, element, index); 4663 if (element.hasSourceElement()) 4664 composeUri(t, "ConceptMap", "source", element.getSourceElement(), -1); 4665 if (element.hasSourceVersionElement()) 4666 composeString(t, "ConceptMap", "sourceVersion", element.getSourceVersionElement(), -1); 4667 if (element.hasTargetElement()) 4668 composeUri(t, "ConceptMap", "target", element.getTargetElement(), -1); 4669 if (element.hasTargetVersionElement()) 4670 composeString(t, "ConceptMap", "targetVersion", element.getTargetVersionElement(), -1); 4671 for (int i = 0; i < element.getElement().size(); i++) 4672 composeConceptMapSourceElementComponent(t, "ConceptMap", "element", element.getElement().get(i), i); 4673 if (element.hasUnmapped()) 4674 composeConceptMapConceptMapGroupUnmappedComponent(t, "ConceptMap", "unmapped", element.getUnmapped(), -1); 4675 } 4676 4677 protected void composeConceptMapSourceElementComponent(Complex parent, String parentType, String name, 4678 ConceptMap.SourceElementComponent element, int index) { 4679 if (element == null) 4680 return; 4681 Complex t; 4682 if (Utilities.noString(parentType)) 4683 t = parent; 4684 else { 4685 t = parent.predicate("fhir:" + parentType + '.' + name); 4686 } 4687 composeBackboneElement(t, "element", name, element, index); 4688 if (element.hasCodeElement()) 4689 composeCode(t, "ConceptMap", "code", element.getCodeElement(), -1); 4690 if (element.hasDisplayElement()) 4691 composeString(t, "ConceptMap", "display", element.getDisplayElement(), -1); 4692 for (int i = 0; i < element.getTarget().size(); i++) 4693 composeConceptMapTargetElementComponent(t, "ConceptMap", "target", element.getTarget().get(i), i); 4694 } 4695 4696 protected void composeConceptMapTargetElementComponent(Complex parent, String parentType, String name, 4697 ConceptMap.TargetElementComponent element, int index) { 4698 if (element == null) 4699 return; 4700 Complex t; 4701 if (Utilities.noString(parentType)) 4702 t = parent; 4703 else { 4704 t = parent.predicate("fhir:" + parentType + '.' + name); 4705 } 4706 composeBackboneElement(t, "target", name, element, index); 4707 if (element.hasCodeElement()) 4708 composeCode(t, "ConceptMap", "code", element.getCodeElement(), -1); 4709 if (element.hasDisplayElement()) 4710 composeString(t, "ConceptMap", "display", element.getDisplayElement(), -1); 4711 if (element.hasEquivalenceElement()) 4712 composeEnum(t, "ConceptMap", "equivalence", element.getEquivalenceElement(), -1); 4713 if (element.hasCommentElement()) 4714 composeString(t, "ConceptMap", "comment", element.getCommentElement(), -1); 4715 for (int i = 0; i < element.getDependsOn().size(); i++) 4716 composeConceptMapOtherElementComponent(t, "ConceptMap", "dependsOn", element.getDependsOn().get(i), i); 4717 for (int i = 0; i < element.getProduct().size(); i++) 4718 composeConceptMapOtherElementComponent(t, "ConceptMap", "product", element.getProduct().get(i), i); 4719 } 4720 4721 protected void composeConceptMapOtherElementComponent(Complex parent, String parentType, String name, 4722 ConceptMap.OtherElementComponent element, int index) { 4723 if (element == null) 4724 return; 4725 Complex t; 4726 if (Utilities.noString(parentType)) 4727 t = parent; 4728 else { 4729 t = parent.predicate("fhir:" + parentType + '.' + name); 4730 } 4731 composeBackboneElement(t, "dependsOn", name, element, index); 4732 if (element.hasPropertyElement()) 4733 composeUri(t, "ConceptMap", "property", element.getPropertyElement(), -1); 4734 if (element.hasSystemElement()) 4735 composeCanonical(t, "ConceptMap", "system", element.getSystemElement(), -1); 4736 if (element.hasValueElement()) 4737 composeString(t, "ConceptMap", "value", element.getValueElement(), -1); 4738 if (element.hasDisplayElement()) 4739 composeString(t, "ConceptMap", "display", element.getDisplayElement(), -1); 4740 } 4741 4742 protected void composeConceptMapConceptMapGroupUnmappedComponent(Complex parent, String parentType, String name, 4743 ConceptMap.ConceptMapGroupUnmappedComponent element, int index) { 4744 if (element == null) 4745 return; 4746 Complex t; 4747 if (Utilities.noString(parentType)) 4748 t = parent; 4749 else { 4750 t = parent.predicate("fhir:" + parentType + '.' + name); 4751 } 4752 composeBackboneElement(t, "unmapped", name, element, index); 4753 if (element.hasModeElement()) 4754 composeEnum(t, "ConceptMap", "mode", element.getModeElement(), -1); 4755 if (element.hasCodeElement()) 4756 composeCode(t, "ConceptMap", "code", element.getCodeElement(), -1); 4757 if (element.hasDisplayElement()) 4758 composeString(t, "ConceptMap", "display", element.getDisplayElement(), -1); 4759 if (element.hasUrlElement()) 4760 composeCanonical(t, "ConceptMap", "url", element.getUrlElement(), -1); 4761 } 4762 4763 protected void composeCondition(Complex parent, String parentType, String name, Condition element, int index) { 4764 if (element == null) 4765 return; 4766 Complex t; 4767 if (Utilities.noString(parentType)) 4768 t = parent; 4769 else { 4770 t = parent.predicate("fhir:" + parentType + '.' + name); 4771 } 4772 composeDomainResource(t, "Condition", name, element, index); 4773 for (int i = 0; i < element.getIdentifier().size(); i++) 4774 composeIdentifier(t, "Condition", "identifier", element.getIdentifier().get(i), i); 4775 if (element.hasClinicalStatus()) 4776 composeCodeableConcept(t, "Condition", "clinicalStatus", element.getClinicalStatus(), -1); 4777 if (element.hasVerificationStatus()) 4778 composeCodeableConcept(t, "Condition", "verificationStatus", element.getVerificationStatus(), -1); 4779 for (int i = 0; i < element.getCategory().size(); i++) 4780 composeCodeableConcept(t, "Condition", "category", element.getCategory().get(i), i); 4781 if (element.hasSeverity()) 4782 composeCodeableConcept(t, "Condition", "severity", element.getSeverity(), -1); 4783 if (element.hasCode()) 4784 composeCodeableConcept(t, "Condition", "code", element.getCode(), -1); 4785 for (int i = 0; i < element.getBodySite().size(); i++) 4786 composeCodeableConcept(t, "Condition", "bodySite", element.getBodySite().get(i), i); 4787 if (element.hasSubject()) 4788 composeReference(t, "Condition", "subject", element.getSubject(), -1); 4789 if (element.hasEncounter()) 4790 composeReference(t, "Condition", "encounter", element.getEncounter(), -1); 4791 if (element.hasOnset()) 4792 composeType(t, "Condition", "onset", element.getOnset(), -1); 4793 if (element.hasAbatement()) 4794 composeType(t, "Condition", "abatement", element.getAbatement(), -1); 4795 if (element.hasRecordedDateElement()) 4796 composeDateTime(t, "Condition", "recordedDate", element.getRecordedDateElement(), -1); 4797 if (element.hasRecorder()) 4798 composeReference(t, "Condition", "recorder", element.getRecorder(), -1); 4799 if (element.hasAsserter()) 4800 composeReference(t, "Condition", "asserter", element.getAsserter(), -1); 4801 for (int i = 0; i < element.getStage().size(); i++) 4802 composeConditionConditionStageComponent(t, "Condition", "stage", element.getStage().get(i), i); 4803 for (int i = 0; i < element.getEvidence().size(); i++) 4804 composeConditionConditionEvidenceComponent(t, "Condition", "evidence", element.getEvidence().get(i), i); 4805 for (int i = 0; i < element.getNote().size(); i++) 4806 composeAnnotation(t, "Condition", "note", element.getNote().get(i), i); 4807 } 4808 4809 protected void composeConditionConditionStageComponent(Complex parent, String parentType, String name, 4810 Condition.ConditionStageComponent element, int index) { 4811 if (element == null) 4812 return; 4813 Complex t; 4814 if (Utilities.noString(parentType)) 4815 t = parent; 4816 else { 4817 t = parent.predicate("fhir:" + parentType + '.' + name); 4818 } 4819 composeBackboneElement(t, "stage", name, element, index); 4820 if (element.hasSummary()) 4821 composeCodeableConcept(t, "Condition", "summary", element.getSummary(), -1); 4822 for (int i = 0; i < element.getAssessment().size(); i++) 4823 composeReference(t, "Condition", "assessment", element.getAssessment().get(i), i); 4824 if (element.hasType()) 4825 composeCodeableConcept(t, "Condition", "type", element.getType(), -1); 4826 } 4827 4828 protected void composeConditionConditionEvidenceComponent(Complex parent, String parentType, String name, 4829 Condition.ConditionEvidenceComponent element, int index) { 4830 if (element == null) 4831 return; 4832 Complex t; 4833 if (Utilities.noString(parentType)) 4834 t = parent; 4835 else { 4836 t = parent.predicate("fhir:" + parentType + '.' + name); 4837 } 4838 composeBackboneElement(t, "evidence", name, element, index); 4839 for (int i = 0; i < element.getCode().size(); i++) 4840 composeCodeableConcept(t, "Condition", "code", element.getCode().get(i), i); 4841 for (int i = 0; i < element.getDetail().size(); i++) 4842 composeReference(t, "Condition", "detail", element.getDetail().get(i), i); 4843 } 4844 4845 protected void composeConsent(Complex parent, String parentType, String name, Consent element, int index) { 4846 if (element == null) 4847 return; 4848 Complex t; 4849 if (Utilities.noString(parentType)) 4850 t = parent; 4851 else { 4852 t = parent.predicate("fhir:" + parentType + '.' + name); 4853 } 4854 composeDomainResource(t, "Consent", name, element, index); 4855 for (int i = 0; i < element.getIdentifier().size(); i++) 4856 composeIdentifier(t, "Consent", "identifier", element.getIdentifier().get(i), i); 4857 if (element.hasStatusElement()) 4858 composeEnum(t, "Consent", "status", element.getStatusElement(), -1); 4859 if (element.hasScope()) 4860 composeCodeableConcept(t, "Consent", "scope", element.getScope(), -1); 4861 for (int i = 0; i < element.getCategory().size(); i++) 4862 composeCodeableConcept(t, "Consent", "category", element.getCategory().get(i), i); 4863 if (element.hasPatient()) 4864 composeReference(t, "Consent", "patient", element.getPatient(), -1); 4865 if (element.hasDateTimeElement()) 4866 composeDateTime(t, "Consent", "dateTime", element.getDateTimeElement(), -1); 4867 for (int i = 0; i < element.getPerformer().size(); i++) 4868 composeReference(t, "Consent", "performer", element.getPerformer().get(i), i); 4869 for (int i = 0; i < element.getOrganization().size(); i++) 4870 composeReference(t, "Consent", "organization", element.getOrganization().get(i), i); 4871 if (element.hasSource()) 4872 composeType(t, "Consent", "source", element.getSource(), -1); 4873 for (int i = 0; i < element.getPolicy().size(); i++) 4874 composeConsentConsentPolicyComponent(t, "Consent", "policy", element.getPolicy().get(i), i); 4875 if (element.hasPolicyRule()) 4876 composeCodeableConcept(t, "Consent", "policyRule", element.getPolicyRule(), -1); 4877 for (int i = 0; i < element.getVerification().size(); i++) 4878 composeConsentConsentVerificationComponent(t, "Consent", "verification", element.getVerification().get(i), i); 4879 if (element.hasProvision()) 4880 composeConsentprovisionComponent(t, "Consent", "provision", element.getProvision(), -1); 4881 } 4882 4883 protected void composeConsentConsentPolicyComponent(Complex parent, String parentType, String name, 4884 Consent.ConsentPolicyComponent element, int index) { 4885 if (element == null) 4886 return; 4887 Complex t; 4888 if (Utilities.noString(parentType)) 4889 t = parent; 4890 else { 4891 t = parent.predicate("fhir:" + parentType + '.' + name); 4892 } 4893 composeBackboneElement(t, "policy", name, element, index); 4894 if (element.hasAuthorityElement()) 4895 composeUri(t, "Consent", "authority", element.getAuthorityElement(), -1); 4896 if (element.hasUriElement()) 4897 composeUri(t, "Consent", "uri", element.getUriElement(), -1); 4898 } 4899 4900 protected void composeConsentConsentVerificationComponent(Complex parent, String parentType, String name, 4901 Consent.ConsentVerificationComponent element, int index) { 4902 if (element == null) 4903 return; 4904 Complex t; 4905 if (Utilities.noString(parentType)) 4906 t = parent; 4907 else { 4908 t = parent.predicate("fhir:" + parentType + '.' + name); 4909 } 4910 composeBackboneElement(t, "verification", name, element, index); 4911 if (element.hasVerifiedElement()) 4912 composeBoolean(t, "Consent", "verified", element.getVerifiedElement(), -1); 4913 if (element.hasVerifiedWith()) 4914 composeReference(t, "Consent", "verifiedWith", element.getVerifiedWith(), -1); 4915 if (element.hasVerificationDateElement()) 4916 composeDateTime(t, "Consent", "verificationDate", element.getVerificationDateElement(), -1); 4917 } 4918 4919 protected void composeConsentprovisionComponent(Complex parent, String parentType, String name, 4920 Consent.ProvisionComponent element, int index) { 4921 if (element == null) 4922 return; 4923 Complex t; 4924 if (Utilities.noString(parentType)) 4925 t = parent; 4926 else { 4927 t = parent.predicate("fhir:" + parentType + '.' + name); 4928 } 4929 composeBackboneElement(t, "provision", name, element, index); 4930 if (element.hasTypeElement()) 4931 composeEnum(t, "Consent", "type", element.getTypeElement(), -1); 4932 if (element.hasPeriod()) 4933 composePeriod(t, "Consent", "period", element.getPeriod(), -1); 4934 for (int i = 0; i < element.getActor().size(); i++) 4935 composeConsentprovisionActorComponent(t, "Consent", "actor", element.getActor().get(i), i); 4936 for (int i = 0; i < element.getAction().size(); i++) 4937 composeCodeableConcept(t, "Consent", "action", element.getAction().get(i), i); 4938 for (int i = 0; i < element.getSecurityLabel().size(); i++) 4939 composeCoding(t, "Consent", "securityLabel", element.getSecurityLabel().get(i), i); 4940 for (int i = 0; i < element.getPurpose().size(); i++) 4941 composeCoding(t, "Consent", "purpose", element.getPurpose().get(i), i); 4942 for (int i = 0; i < element.getClass_().size(); i++) 4943 composeCoding(t, "Consent", "class", element.getClass_().get(i), i); 4944 for (int i = 0; i < element.getCode().size(); i++) 4945 composeCodeableConcept(t, "Consent", "code", element.getCode().get(i), i); 4946 if (element.hasDataPeriod()) 4947 composePeriod(t, "Consent", "dataPeriod", element.getDataPeriod(), -1); 4948 for (int i = 0; i < element.getData().size(); i++) 4949 composeConsentprovisionDataComponent(t, "Consent", "data", element.getData().get(i), i); 4950 for (int i = 0; i < element.getProvision().size(); i++) 4951 composeConsentprovisionComponent(t, "Consent", "provision", element.getProvision().get(i), i); 4952 } 4953 4954 protected void composeConsentprovisionActorComponent(Complex parent, String parentType, String name, 4955 Consent.provisionActorComponent element, int index) { 4956 if (element == null) 4957 return; 4958 Complex t; 4959 if (Utilities.noString(parentType)) 4960 t = parent; 4961 else { 4962 t = parent.predicate("fhir:" + parentType + '.' + name); 4963 } 4964 composeBackboneElement(t, "actor", name, element, index); 4965 if (element.hasRole()) 4966 composeCodeableConcept(t, "Consent", "role", element.getRole(), -1); 4967 if (element.hasReference()) 4968 composeReference(t, "Consent", "reference", element.getReference(), -1); 4969 } 4970 4971 protected void composeConsentprovisionDataComponent(Complex parent, String parentType, String name, 4972 Consent.provisionDataComponent element, int index) { 4973 if (element == null) 4974 return; 4975 Complex t; 4976 if (Utilities.noString(parentType)) 4977 t = parent; 4978 else { 4979 t = parent.predicate("fhir:" + parentType + '.' + name); 4980 } 4981 composeBackboneElement(t, "data", name, element, index); 4982 if (element.hasMeaningElement()) 4983 composeEnum(t, "Consent", "meaning", element.getMeaningElement(), -1); 4984 if (element.hasReference()) 4985 composeReference(t, "Consent", "reference", element.getReference(), -1); 4986 } 4987 4988 protected void composeContract(Complex parent, String parentType, String name, Contract element, int index) { 4989 if (element == null) 4990 return; 4991 Complex t; 4992 if (Utilities.noString(parentType)) 4993 t = parent; 4994 else { 4995 t = parent.predicate("fhir:" + parentType + '.' + name); 4996 } 4997 composeDomainResource(t, "Contract", name, element, index); 4998 for (int i = 0; i < element.getIdentifier().size(); i++) 4999 composeIdentifier(t, "Contract", "identifier", element.getIdentifier().get(i), i); 5000 if (element.hasUrlElement()) 5001 composeUri(t, "Contract", "url", element.getUrlElement(), -1); 5002 if (element.hasVersionElement()) 5003 composeString(t, "Contract", "version", element.getVersionElement(), -1); 5004 if (element.hasStatusElement()) 5005 composeEnum(t, "Contract", "status", element.getStatusElement(), -1); 5006 if (element.hasLegalState()) 5007 composeCodeableConcept(t, "Contract", "legalState", element.getLegalState(), -1); 5008 if (element.hasInstantiatesCanonical()) 5009 composeReference(t, "Contract", "instantiatesCanonical", element.getInstantiatesCanonical(), -1); 5010 if (element.hasInstantiatesUriElement()) 5011 composeUri(t, "Contract", "instantiatesUri", element.getInstantiatesUriElement(), -1); 5012 if (element.hasContentDerivative()) 5013 composeCodeableConcept(t, "Contract", "contentDerivative", element.getContentDerivative(), -1); 5014 if (element.hasIssuedElement()) 5015 composeDateTime(t, "Contract", "issued", element.getIssuedElement(), -1); 5016 if (element.hasApplies()) 5017 composePeriod(t, "Contract", "applies", element.getApplies(), -1); 5018 if (element.hasExpirationType()) 5019 composeCodeableConcept(t, "Contract", "expirationType", element.getExpirationType(), -1); 5020 for (int i = 0; i < element.getSubject().size(); i++) 5021 composeReference(t, "Contract", "subject", element.getSubject().get(i), i); 5022 for (int i = 0; i < element.getAuthority().size(); i++) 5023 composeReference(t, "Contract", "authority", element.getAuthority().get(i), i); 5024 for (int i = 0; i < element.getDomain().size(); i++) 5025 composeReference(t, "Contract", "domain", element.getDomain().get(i), i); 5026 for (int i = 0; i < element.getSite().size(); i++) 5027 composeReference(t, "Contract", "site", element.getSite().get(i), i); 5028 if (element.hasNameElement()) 5029 composeString(t, "Contract", "name", element.getNameElement(), -1); 5030 if (element.hasTitleElement()) 5031 composeString(t, "Contract", "title", element.getTitleElement(), -1); 5032 if (element.hasSubtitleElement()) 5033 composeString(t, "Contract", "subtitle", element.getSubtitleElement(), -1); 5034 for (int i = 0; i < element.getAlias().size(); i++) 5035 composeString(t, "Contract", "alias", element.getAlias().get(i), i); 5036 if (element.hasAuthor()) 5037 composeReference(t, "Contract", "author", element.getAuthor(), -1); 5038 if (element.hasScope()) 5039 composeCodeableConcept(t, "Contract", "scope", element.getScope(), -1); 5040 if (element.hasTopic()) 5041 composeType(t, "Contract", "topic", element.getTopic(), -1); 5042 if (element.hasType()) 5043 composeCodeableConcept(t, "Contract", "type", element.getType(), -1); 5044 for (int i = 0; i < element.getSubType().size(); i++) 5045 composeCodeableConcept(t, "Contract", "subType", element.getSubType().get(i), i); 5046 if (element.hasContentDefinition()) 5047 composeContractContentDefinitionComponent(t, "Contract", "contentDefinition", element.getContentDefinition(), -1); 5048 for (int i = 0; i < element.getTerm().size(); i++) 5049 composeContractTermComponent(t, "Contract", "term", element.getTerm().get(i), i); 5050 for (int i = 0; i < element.getSupportingInfo().size(); i++) 5051 composeReference(t, "Contract", "supportingInfo", element.getSupportingInfo().get(i), i); 5052 for (int i = 0; i < element.getRelevantHistory().size(); i++) 5053 composeReference(t, "Contract", "relevantHistory", element.getRelevantHistory().get(i), i); 5054 for (int i = 0; i < element.getSigner().size(); i++) 5055 composeContractSignatoryComponent(t, "Contract", "signer", element.getSigner().get(i), i); 5056 for (int i = 0; i < element.getFriendly().size(); i++) 5057 composeContractFriendlyLanguageComponent(t, "Contract", "friendly", element.getFriendly().get(i), i); 5058 for (int i = 0; i < element.getLegal().size(); i++) 5059 composeContractLegalLanguageComponent(t, "Contract", "legal", element.getLegal().get(i), i); 5060 for (int i = 0; i < element.getRule().size(); i++) 5061 composeContractComputableLanguageComponent(t, "Contract", "rule", element.getRule().get(i), i); 5062 if (element.hasLegallyBinding()) 5063 composeType(t, "Contract", "legallyBinding", element.getLegallyBinding(), -1); 5064 } 5065 5066 protected void composeContractContentDefinitionComponent(Complex parent, String parentType, String name, 5067 Contract.ContentDefinitionComponent element, int index) { 5068 if (element == null) 5069 return; 5070 Complex t; 5071 if (Utilities.noString(parentType)) 5072 t = parent; 5073 else { 5074 t = parent.predicate("fhir:" + parentType + '.' + name); 5075 } 5076 composeBackboneElement(t, "contentDefinition", name, element, index); 5077 if (element.hasType()) 5078 composeCodeableConcept(t, "Contract", "type", element.getType(), -1); 5079 if (element.hasSubType()) 5080 composeCodeableConcept(t, "Contract", "subType", element.getSubType(), -1); 5081 if (element.hasPublisher()) 5082 composeReference(t, "Contract", "publisher", element.getPublisher(), -1); 5083 if (element.hasPublicationDateElement()) 5084 composeDateTime(t, "Contract", "publicationDate", element.getPublicationDateElement(), -1); 5085 if (element.hasPublicationStatusElement()) 5086 composeEnum(t, "Contract", "publicationStatus", element.getPublicationStatusElement(), -1); 5087 if (element.hasCopyrightElement()) 5088 composeMarkdown(t, "Contract", "copyright", element.getCopyrightElement(), -1); 5089 } 5090 5091 protected void composeContractTermComponent(Complex parent, String parentType, String name, 5092 Contract.TermComponent 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:" + parentType + '.' + name); 5100 } 5101 composeBackboneElement(t, "term", name, element, index); 5102 if (element.hasIdentifier()) 5103 composeIdentifier(t, "Contract", "identifier", element.getIdentifier(), -1); 5104 if (element.hasIssuedElement()) 5105 composeDateTime(t, "Contract", "issued", element.getIssuedElement(), -1); 5106 if (element.hasApplies()) 5107 composePeriod(t, "Contract", "applies", element.getApplies(), -1); 5108 if (element.hasTopic()) 5109 composeType(t, "Contract", "topic", element.getTopic(), -1); 5110 if (element.hasType()) 5111 composeCodeableConcept(t, "Contract", "type", element.getType(), -1); 5112 if (element.hasSubType()) 5113 composeCodeableConcept(t, "Contract", "subType", element.getSubType(), -1); 5114 if (element.hasTextElement()) 5115 composeString(t, "Contract", "text", element.getTextElement(), -1); 5116 for (int i = 0; i < element.getSecurityLabel().size(); i++) 5117 composeContractSecurityLabelComponent(t, "Contract", "securityLabel", element.getSecurityLabel().get(i), i); 5118 if (element.hasOffer()) 5119 composeContractContractOfferComponent(t, "Contract", "offer", element.getOffer(), -1); 5120 for (int i = 0; i < element.getAsset().size(); i++) 5121 composeContractContractAssetComponent(t, "Contract", "asset", element.getAsset().get(i), i); 5122 for (int i = 0; i < element.getAction().size(); i++) 5123 composeContractActionComponent(t, "Contract", "action", element.getAction().get(i), i); 5124 for (int i = 0; i < element.getGroup().size(); i++) 5125 composeContractTermComponent(t, "Contract", "group", element.getGroup().get(i), i); 5126 } 5127 5128 protected void composeContractSecurityLabelComponent(Complex parent, String parentType, String name, 5129 Contract.SecurityLabelComponent element, int index) { 5130 if (element == null) 5131 return; 5132 Complex t; 5133 if (Utilities.noString(parentType)) 5134 t = parent; 5135 else { 5136 t = parent.predicate("fhir:" + parentType + '.' + name); 5137 } 5138 composeBackboneElement(t, "securityLabel", name, element, index); 5139 for (int i = 0; i < element.getNumber().size(); i++) 5140 composeUnsignedInt(t, "Contract", "number", element.getNumber().get(i), i); 5141 if (element.hasClassification()) 5142 composeCoding(t, "Contract", "classification", element.getClassification(), -1); 5143 for (int i = 0; i < element.getCategory().size(); i++) 5144 composeCoding(t, "Contract", "category", element.getCategory().get(i), i); 5145 for (int i = 0; i < element.getControl().size(); i++) 5146 composeCoding(t, "Contract", "control", element.getControl().get(i), i); 5147 } 5148 5149 protected void composeContractContractOfferComponent(Complex parent, String parentType, String name, 5150 Contract.ContractOfferComponent element, int index) { 5151 if (element == null) 5152 return; 5153 Complex t; 5154 if (Utilities.noString(parentType)) 5155 t = parent; 5156 else { 5157 t = parent.predicate("fhir:" + parentType + '.' + name); 5158 } 5159 composeBackboneElement(t, "offer", name, element, index); 5160 for (int i = 0; i < element.getIdentifier().size(); i++) 5161 composeIdentifier(t, "Contract", "identifier", element.getIdentifier().get(i), i); 5162 for (int i = 0; i < element.getParty().size(); i++) 5163 composeContractContractPartyComponent(t, "Contract", "party", element.getParty().get(i), i); 5164 if (element.hasTopic()) 5165 composeReference(t, "Contract", "topic", element.getTopic(), -1); 5166 if (element.hasType()) 5167 composeCodeableConcept(t, "Contract", "type", element.getType(), -1); 5168 if (element.hasDecision()) 5169 composeCodeableConcept(t, "Contract", "decision", element.getDecision(), -1); 5170 for (int i = 0; i < element.getDecisionMode().size(); i++) 5171 composeCodeableConcept(t, "Contract", "decisionMode", element.getDecisionMode().get(i), i); 5172 for (int i = 0; i < element.getAnswer().size(); i++) 5173 composeContractAnswerComponent(t, "Contract", "answer", element.getAnswer().get(i), i); 5174 if (element.hasTextElement()) 5175 composeString(t, "Contract", "text", element.getTextElement(), -1); 5176 for (int i = 0; i < element.getLinkId().size(); i++) 5177 composeString(t, "Contract", "linkId", element.getLinkId().get(i), i); 5178 for (int i = 0; i < element.getSecurityLabelNumber().size(); i++) 5179 composeUnsignedInt(t, "Contract", "securityLabelNumber", element.getSecurityLabelNumber().get(i), i); 5180 } 5181 5182 protected void composeContractContractPartyComponent(Complex parent, String parentType, String name, 5183 Contract.ContractPartyComponent element, int index) { 5184 if (element == null) 5185 return; 5186 Complex t; 5187 if (Utilities.noString(parentType)) 5188 t = parent; 5189 else { 5190 t = parent.predicate("fhir:" + parentType + '.' + name); 5191 } 5192 composeBackboneElement(t, "party", name, element, index); 5193 for (int i = 0; i < element.getReference().size(); i++) 5194 composeReference(t, "Contract", "reference", element.getReference().get(i), i); 5195 if (element.hasRole()) 5196 composeCodeableConcept(t, "Contract", "role", element.getRole(), -1); 5197 } 5198 5199 protected void composeContractAnswerComponent(Complex parent, String parentType, String name, 5200 Contract.AnswerComponent element, int index) { 5201 if (element == null) 5202 return; 5203 Complex t; 5204 if (Utilities.noString(parentType)) 5205 t = parent; 5206 else { 5207 t = parent.predicate("fhir:" + parentType + '.' + name); 5208 } 5209 composeBackboneElement(t, "answer", name, element, index); 5210 if (element.hasValue()) 5211 composeType(t, "Contract", "value", element.getValue(), -1); 5212 } 5213 5214 protected void composeContractContractAssetComponent(Complex parent, String parentType, String name, 5215 Contract.ContractAssetComponent element, int index) { 5216 if (element == null) 5217 return; 5218 Complex t; 5219 if (Utilities.noString(parentType)) 5220 t = parent; 5221 else { 5222 t = parent.predicate("fhir:" + parentType + '.' + name); 5223 } 5224 composeBackboneElement(t, "asset", name, element, index); 5225 if (element.hasScope()) 5226 composeCodeableConcept(t, "Contract", "scope", element.getScope(), -1); 5227 for (int i = 0; i < element.getType().size(); i++) 5228 composeCodeableConcept(t, "Contract", "type", element.getType().get(i), i); 5229 for (int i = 0; i < element.getTypeReference().size(); i++) 5230 composeReference(t, "Contract", "typeReference", element.getTypeReference().get(i), i); 5231 for (int i = 0; i < element.getSubtype().size(); i++) 5232 composeCodeableConcept(t, "Contract", "subtype", element.getSubtype().get(i), i); 5233 if (element.hasRelationship()) 5234 composeCoding(t, "Contract", "relationship", element.getRelationship(), -1); 5235 for (int i = 0; i < element.getContext().size(); i++) 5236 composeContractAssetContextComponent(t, "Contract", "context", element.getContext().get(i), i); 5237 if (element.hasConditionElement()) 5238 composeString(t, "Contract", "condition", element.getConditionElement(), -1); 5239 for (int i = 0; i < element.getPeriodType().size(); i++) 5240 composeCodeableConcept(t, "Contract", "periodType", element.getPeriodType().get(i), i); 5241 for (int i = 0; i < element.getPeriod().size(); i++) 5242 composePeriod(t, "Contract", "period", element.getPeriod().get(i), i); 5243 for (int i = 0; i < element.getUsePeriod().size(); i++) 5244 composePeriod(t, "Contract", "usePeriod", element.getUsePeriod().get(i), i); 5245 if (element.hasTextElement()) 5246 composeString(t, "Contract", "text", element.getTextElement(), -1); 5247 for (int i = 0; i < element.getLinkId().size(); i++) 5248 composeString(t, "Contract", "linkId", element.getLinkId().get(i), i); 5249 for (int i = 0; i < element.getAnswer().size(); i++) 5250 composeContractAnswerComponent(t, "Contract", "answer", element.getAnswer().get(i), i); 5251 for (int i = 0; i < element.getSecurityLabelNumber().size(); i++) 5252 composeUnsignedInt(t, "Contract", "securityLabelNumber", element.getSecurityLabelNumber().get(i), i); 5253 for (int i = 0; i < element.getValuedItem().size(); i++) 5254 composeContractValuedItemComponent(t, "Contract", "valuedItem", element.getValuedItem().get(i), i); 5255 } 5256 5257 protected void composeContractAssetContextComponent(Complex parent, String parentType, String name, 5258 Contract.AssetContextComponent element, int index) { 5259 if (element == null) 5260 return; 5261 Complex t; 5262 if (Utilities.noString(parentType)) 5263 t = parent; 5264 else { 5265 t = parent.predicate("fhir:" + parentType + '.' + name); 5266 } 5267 composeBackboneElement(t, "context", name, element, index); 5268 if (element.hasReference()) 5269 composeReference(t, "Contract", "reference", element.getReference(), -1); 5270 for (int i = 0; i < element.getCode().size(); i++) 5271 composeCodeableConcept(t, "Contract", "code", element.getCode().get(i), i); 5272 if (element.hasTextElement()) 5273 composeString(t, "Contract", "text", element.getTextElement(), -1); 5274 } 5275 5276 protected void composeContractValuedItemComponent(Complex parent, String parentType, String name, 5277 Contract.ValuedItemComponent element, int index) { 5278 if (element == null) 5279 return; 5280 Complex t; 5281 if (Utilities.noString(parentType)) 5282 t = parent; 5283 else { 5284 t = parent.predicate("fhir:" + parentType + '.' + name); 5285 } 5286 composeBackboneElement(t, "valuedItem", name, element, index); 5287 if (element.hasEntity()) 5288 composeType(t, "Contract", "entity", element.getEntity(), -1); 5289 if (element.hasIdentifier()) 5290 composeIdentifier(t, "Contract", "identifier", element.getIdentifier(), -1); 5291 if (element.hasEffectiveTimeElement()) 5292 composeDateTime(t, "Contract", "effectiveTime", element.getEffectiveTimeElement(), -1); 5293 if (element.hasQuantity()) 5294 composeQuantity(t, "Contract", "quantity", element.getQuantity(), -1); 5295 if (element.hasUnitPrice()) 5296 composeMoney(t, "Contract", "unitPrice", element.getUnitPrice(), -1); 5297 if (element.hasFactorElement()) 5298 composeDecimal(t, "Contract", "factor", element.getFactorElement(), -1); 5299 if (element.hasPointsElement()) 5300 composeDecimal(t, "Contract", "points", element.getPointsElement(), -1); 5301 if (element.hasNet()) 5302 composeMoney(t, "Contract", "net", element.getNet(), -1); 5303 if (element.hasPaymentElement()) 5304 composeString(t, "Contract", "payment", element.getPaymentElement(), -1); 5305 if (element.hasPaymentDateElement()) 5306 composeDateTime(t, "Contract", "paymentDate", element.getPaymentDateElement(), -1); 5307 if (element.hasResponsible()) 5308 composeReference(t, "Contract", "responsible", element.getResponsible(), -1); 5309 if (element.hasRecipient()) 5310 composeReference(t, "Contract", "recipient", element.getRecipient(), -1); 5311 for (int i = 0; i < element.getLinkId().size(); i++) 5312 composeString(t, "Contract", "linkId", element.getLinkId().get(i), i); 5313 for (int i = 0; i < element.getSecurityLabelNumber().size(); i++) 5314 composeUnsignedInt(t, "Contract", "securityLabelNumber", element.getSecurityLabelNumber().get(i), i); 5315 } 5316 5317 protected void composeContractActionComponent(Complex parent, String parentType, String name, 5318 Contract.ActionComponent element, int index) { 5319 if (element == null) 5320 return; 5321 Complex t; 5322 if (Utilities.noString(parentType)) 5323 t = parent; 5324 else { 5325 t = parent.predicate("fhir:" + parentType + '.' + name); 5326 } 5327 composeBackboneElement(t, "action", name, element, index); 5328 if (element.hasDoNotPerformElement()) 5329 composeBoolean(t, "Contract", "doNotPerform", element.getDoNotPerformElement(), -1); 5330 if (element.hasType()) 5331 composeCodeableConcept(t, "Contract", "type", element.getType(), -1); 5332 for (int i = 0; i < element.getSubject().size(); i++) 5333 composeContractActionSubjectComponent(t, "Contract", "subject", element.getSubject().get(i), i); 5334 if (element.hasIntent()) 5335 composeCodeableConcept(t, "Contract", "intent", element.getIntent(), -1); 5336 for (int i = 0; i < element.getLinkId().size(); i++) 5337 composeString(t, "Contract", "linkId", element.getLinkId().get(i), i); 5338 if (element.hasStatus()) 5339 composeCodeableConcept(t, "Contract", "status", element.getStatus(), -1); 5340 if (element.hasContext()) 5341 composeReference(t, "Contract", "context", element.getContext(), -1); 5342 for (int i = 0; i < element.getContextLinkId().size(); i++) 5343 composeString(t, "Contract", "contextLinkId", element.getContextLinkId().get(i), i); 5344 if (element.hasOccurrence()) 5345 composeType(t, "Contract", "occurrence", element.getOccurrence(), -1); 5346 for (int i = 0; i < element.getRequester().size(); i++) 5347 composeReference(t, "Contract", "requester", element.getRequester().get(i), i); 5348 for (int i = 0; i < element.getRequesterLinkId().size(); i++) 5349 composeString(t, "Contract", "requesterLinkId", element.getRequesterLinkId().get(i), i); 5350 for (int i = 0; i < element.getPerformerType().size(); i++) 5351 composeCodeableConcept(t, "Contract", "performerType", element.getPerformerType().get(i), i); 5352 if (element.hasPerformerRole()) 5353 composeCodeableConcept(t, "Contract", "performerRole", element.getPerformerRole(), -1); 5354 if (element.hasPerformer()) 5355 composeReference(t, "Contract", "performer", element.getPerformer(), -1); 5356 for (int i = 0; i < element.getPerformerLinkId().size(); i++) 5357 composeString(t, "Contract", "performerLinkId", element.getPerformerLinkId().get(i), i); 5358 for (int i = 0; i < element.getReasonCode().size(); i++) 5359 composeCodeableConcept(t, "Contract", "reasonCode", element.getReasonCode().get(i), i); 5360 for (int i = 0; i < element.getReasonReference().size(); i++) 5361 composeReference(t, "Contract", "reasonReference", element.getReasonReference().get(i), i); 5362 for (int i = 0; i < element.getReason().size(); i++) 5363 composeString(t, "Contract", "reason", element.getReason().get(i), i); 5364 for (int i = 0; i < element.getReasonLinkId().size(); i++) 5365 composeString(t, "Contract", "reasonLinkId", element.getReasonLinkId().get(i), i); 5366 for (int i = 0; i < element.getNote().size(); i++) 5367 composeAnnotation(t, "Contract", "note", element.getNote().get(i), i); 5368 for (int i = 0; i < element.getSecurityLabelNumber().size(); i++) 5369 composeUnsignedInt(t, "Contract", "securityLabelNumber", element.getSecurityLabelNumber().get(i), i); 5370 } 5371 5372 protected void composeContractActionSubjectComponent(Complex parent, String parentType, String name, 5373 Contract.ActionSubjectComponent element, int index) { 5374 if (element == null) 5375 return; 5376 Complex t; 5377 if (Utilities.noString(parentType)) 5378 t = parent; 5379 else { 5380 t = parent.predicate("fhir:" + parentType + '.' + name); 5381 } 5382 composeBackboneElement(t, "subject", name, element, index); 5383 for (int i = 0; i < element.getReference().size(); i++) 5384 composeReference(t, "Contract", "reference", element.getReference().get(i), i); 5385 if (element.hasRole()) 5386 composeCodeableConcept(t, "Contract", "role", element.getRole(), -1); 5387 } 5388 5389 protected void composeContractSignatoryComponent(Complex parent, String parentType, String name, 5390 Contract.SignatoryComponent element, int index) { 5391 if (element == null) 5392 return; 5393 Complex t; 5394 if (Utilities.noString(parentType)) 5395 t = parent; 5396 else { 5397 t = parent.predicate("fhir:" + parentType + '.' + name); 5398 } 5399 composeBackboneElement(t, "signer", name, element, index); 5400 if (element.hasType()) 5401 composeCoding(t, "Contract", "type", element.getType(), -1); 5402 if (element.hasParty()) 5403 composeReference(t, "Contract", "party", element.getParty(), -1); 5404 for (int i = 0; i < element.getSignature().size(); i++) 5405 composeSignature(t, "Contract", "signature", element.getSignature().get(i), i); 5406 } 5407 5408 protected void composeContractFriendlyLanguageComponent(Complex parent, String parentType, String name, 5409 Contract.FriendlyLanguageComponent element, int index) { 5410 if (element == null) 5411 return; 5412 Complex t; 5413 if (Utilities.noString(parentType)) 5414 t = parent; 5415 else { 5416 t = parent.predicate("fhir:" + parentType + '.' + name); 5417 } 5418 composeBackboneElement(t, "friendly", name, element, index); 5419 if (element.hasContent()) 5420 composeType(t, "Contract", "content", element.getContent(), -1); 5421 } 5422 5423 protected void composeContractLegalLanguageComponent(Complex parent, String parentType, String name, 5424 Contract.LegalLanguageComponent element, int index) { 5425 if (element == null) 5426 return; 5427 Complex t; 5428 if (Utilities.noString(parentType)) 5429 t = parent; 5430 else { 5431 t = parent.predicate("fhir:" + parentType + '.' + name); 5432 } 5433 composeBackboneElement(t, "legal", name, element, index); 5434 if (element.hasContent()) 5435 composeType(t, "Contract", "content", element.getContent(), -1); 5436 } 5437 5438 protected void composeContractComputableLanguageComponent(Complex parent, String parentType, String name, 5439 Contract.ComputableLanguageComponent element, int index) { 5440 if (element == null) 5441 return; 5442 Complex t; 5443 if (Utilities.noString(parentType)) 5444 t = parent; 5445 else { 5446 t = parent.predicate("fhir:" + parentType + '.' + name); 5447 } 5448 composeBackboneElement(t, "rule", name, element, index); 5449 if (element.hasContent()) 5450 composeType(t, "Contract", "content", element.getContent(), -1); 5451 } 5452 5453 protected void composeCoverage(Complex parent, String parentType, String name, Coverage element, int index) { 5454 if (element == null) 5455 return; 5456 Complex t; 5457 if (Utilities.noString(parentType)) 5458 t = parent; 5459 else { 5460 t = parent.predicate("fhir:" + parentType + '.' + name); 5461 } 5462 composeDomainResource(t, "Coverage", name, element, index); 5463 for (int i = 0; i < element.getIdentifier().size(); i++) 5464 composeIdentifier(t, "Coverage", "identifier", element.getIdentifier().get(i), i); 5465 if (element.hasStatusElement()) 5466 composeEnum(t, "Coverage", "status", element.getStatusElement(), -1); 5467 if (element.hasType()) 5468 composeCodeableConcept(t, "Coverage", "type", element.getType(), -1); 5469 if (element.hasPolicyHolder()) 5470 composeReference(t, "Coverage", "policyHolder", element.getPolicyHolder(), -1); 5471 if (element.hasSubscriber()) 5472 composeReference(t, "Coverage", "subscriber", element.getSubscriber(), -1); 5473 if (element.hasSubscriberIdElement()) 5474 composeString(t, "Coverage", "subscriberId", element.getSubscriberIdElement(), -1); 5475 if (element.hasBeneficiary()) 5476 composeReference(t, "Coverage", "beneficiary", element.getBeneficiary(), -1); 5477 if (element.hasDependentElement()) 5478 composeString(t, "Coverage", "dependent", element.getDependentElement(), -1); 5479 if (element.hasRelationship()) 5480 composeCodeableConcept(t, "Coverage", "relationship", element.getRelationship(), -1); 5481 if (element.hasPeriod()) 5482 composePeriod(t, "Coverage", "period", element.getPeriod(), -1); 5483 for (int i = 0; i < element.getPayor().size(); i++) 5484 composeReference(t, "Coverage", "payor", element.getPayor().get(i), i); 5485 for (int i = 0; i < element.getClass_().size(); i++) 5486 composeCoverageClassComponent(t, "Coverage", "class", element.getClass_().get(i), i); 5487 if (element.hasOrderElement()) 5488 composePositiveInt(t, "Coverage", "order", element.getOrderElement(), -1); 5489 if (element.hasNetworkElement()) 5490 composeString(t, "Coverage", "network", element.getNetworkElement(), -1); 5491 for (int i = 0; i < element.getCostToBeneficiary().size(); i++) 5492 composeCoverageCostToBeneficiaryComponent(t, "Coverage", "costToBeneficiary", 5493 element.getCostToBeneficiary().get(i), i); 5494 if (element.hasSubrogationElement()) 5495 composeBoolean(t, "Coverage", "subrogation", element.getSubrogationElement(), -1); 5496 for (int i = 0; i < element.getContract().size(); i++) 5497 composeReference(t, "Coverage", "contract", element.getContract().get(i), i); 5498 } 5499 5500 protected void composeCoverageClassComponent(Complex parent, String parentType, String name, 5501 Coverage.ClassComponent element, int index) { 5502 if (element == null) 5503 return; 5504 Complex t; 5505 if (Utilities.noString(parentType)) 5506 t = parent; 5507 else { 5508 t = parent.predicate("fhir:" + parentType + '.' + name); 5509 } 5510 composeBackboneElement(t, "class", name, element, index); 5511 if (element.hasType()) 5512 composeCodeableConcept(t, "Coverage", "type", element.getType(), -1); 5513 if (element.hasValueElement()) 5514 composeString(t, "Coverage", "value", element.getValueElement(), -1); 5515 if (element.hasNameElement()) 5516 composeString(t, "Coverage", "name", element.getNameElement(), -1); 5517 } 5518 5519 protected void composeCoverageCostToBeneficiaryComponent(Complex parent, String parentType, String name, 5520 Coverage.CostToBeneficiaryComponent element, int index) { 5521 if (element == null) 5522 return; 5523 Complex t; 5524 if (Utilities.noString(parentType)) 5525 t = parent; 5526 else { 5527 t = parent.predicate("fhir:" + parentType + '.' + name); 5528 } 5529 composeBackboneElement(t, "costToBeneficiary", name, element, index); 5530 if (element.hasType()) 5531 composeCodeableConcept(t, "Coverage", "type", element.getType(), -1); 5532 if (element.hasValue()) 5533 composeType(t, "Coverage", "value", element.getValue(), -1); 5534 for (int i = 0; i < element.getException().size(); i++) 5535 composeCoverageExemptionComponent(t, "Coverage", "exception", element.getException().get(i), i); 5536 } 5537 5538 protected void composeCoverageExemptionComponent(Complex parent, String parentType, String name, 5539 Coverage.ExemptionComponent element, int index) { 5540 if (element == null) 5541 return; 5542 Complex t; 5543 if (Utilities.noString(parentType)) 5544 t = parent; 5545 else { 5546 t = parent.predicate("fhir:" + parentType + '.' + name); 5547 } 5548 composeBackboneElement(t, "exception", name, element, index); 5549 if (element.hasType()) 5550 composeCodeableConcept(t, "Coverage", "type", element.getType(), -1); 5551 if (element.hasPeriod()) 5552 composePeriod(t, "Coverage", "period", element.getPeriod(), -1); 5553 } 5554 5555 protected void composeCoverageEligibilityRequest(Complex parent, String parentType, String name, 5556 CoverageEligibilityRequest element, int index) { 5557 if (element == null) 5558 return; 5559 Complex t; 5560 if (Utilities.noString(parentType)) 5561 t = parent; 5562 else { 5563 t = parent.predicate("fhir:" + parentType + '.' + name); 5564 } 5565 composeDomainResource(t, "CoverageEligibilityRequest", name, element, index); 5566 for (int i = 0; i < element.getIdentifier().size(); i++) 5567 composeIdentifier(t, "CoverageEligibilityRequest", "identifier", element.getIdentifier().get(i), i); 5568 if (element.hasStatusElement()) 5569 composeEnum(t, "CoverageEligibilityRequest", "status", element.getStatusElement(), -1); 5570 if (element.hasPriority()) 5571 composeCodeableConcept(t, "CoverageEligibilityRequest", "priority", element.getPriority(), -1); 5572 for (int i = 0; i < element.getPurpose().size(); i++) 5573 composeEnum(t, "CoverageEligibilityRequest", "purpose", element.getPurpose().get(i), i); 5574 if (element.hasPatient()) 5575 composeReference(t, "CoverageEligibilityRequest", "patient", element.getPatient(), -1); 5576 if (element.hasServiced()) 5577 composeType(t, "CoverageEligibilityRequest", "serviced", element.getServiced(), -1); 5578 if (element.hasCreatedElement()) 5579 composeDateTime(t, "CoverageEligibilityRequest", "created", element.getCreatedElement(), -1); 5580 if (element.hasEnterer()) 5581 composeReference(t, "CoverageEligibilityRequest", "enterer", element.getEnterer(), -1); 5582 if (element.hasProvider()) 5583 composeReference(t, "CoverageEligibilityRequest", "provider", element.getProvider(), -1); 5584 if (element.hasInsurer()) 5585 composeReference(t, "CoverageEligibilityRequest", "insurer", element.getInsurer(), -1); 5586 if (element.hasFacility()) 5587 composeReference(t, "CoverageEligibilityRequest", "facility", element.getFacility(), -1); 5588 for (int i = 0; i < element.getSupportingInfo().size(); i++) 5589 composeCoverageEligibilityRequestSupportingInformationComponent(t, "CoverageEligibilityRequest", "supportingInfo", 5590 element.getSupportingInfo().get(i), i); 5591 for (int i = 0; i < element.getInsurance().size(); i++) 5592 composeCoverageEligibilityRequestInsuranceComponent(t, "CoverageEligibilityRequest", "insurance", 5593 element.getInsurance().get(i), i); 5594 for (int i = 0; i < element.getItem().size(); i++) 5595 composeCoverageEligibilityRequestDetailsComponent(t, "CoverageEligibilityRequest", "item", 5596 element.getItem().get(i), i); 5597 } 5598 5599 protected void composeCoverageEligibilityRequestSupportingInformationComponent(Complex parent, String parentType, 5600 String name, CoverageEligibilityRequest.SupportingInformationComponent element, int index) { 5601 if (element == null) 5602 return; 5603 Complex t; 5604 if (Utilities.noString(parentType)) 5605 t = parent; 5606 else { 5607 t = parent.predicate("fhir:" + parentType + '.' + name); 5608 } 5609 composeBackboneElement(t, "supportingInfo", name, element, index); 5610 if (element.hasSequenceElement()) 5611 composePositiveInt(t, "CoverageEligibilityRequest", "sequence", element.getSequenceElement(), -1); 5612 if (element.hasInformation()) 5613 composeReference(t, "CoverageEligibilityRequest", "information", element.getInformation(), -1); 5614 if (element.hasAppliesToAllElement()) 5615 composeBoolean(t, "CoverageEligibilityRequest", "appliesToAll", element.getAppliesToAllElement(), -1); 5616 } 5617 5618 protected void composeCoverageEligibilityRequestInsuranceComponent(Complex parent, String parentType, String name, 5619 CoverageEligibilityRequest.InsuranceComponent element, int index) { 5620 if (element == null) 5621 return; 5622 Complex t; 5623 if (Utilities.noString(parentType)) 5624 t = parent; 5625 else { 5626 t = parent.predicate("fhir:" + parentType + '.' + name); 5627 } 5628 composeBackboneElement(t, "insurance", name, element, index); 5629 if (element.hasFocalElement()) 5630 composeBoolean(t, "CoverageEligibilityRequest", "focal", element.getFocalElement(), -1); 5631 if (element.hasCoverage()) 5632 composeReference(t, "CoverageEligibilityRequest", "coverage", element.getCoverage(), -1); 5633 if (element.hasBusinessArrangementElement()) 5634 composeString(t, "CoverageEligibilityRequest", "businessArrangement", element.getBusinessArrangementElement(), 5635 -1); 5636 } 5637 5638 protected void composeCoverageEligibilityRequestDetailsComponent(Complex parent, String parentType, String name, 5639 CoverageEligibilityRequest.DetailsComponent element, int index) { 5640 if (element == null) 5641 return; 5642 Complex t; 5643 if (Utilities.noString(parentType)) 5644 t = parent; 5645 else { 5646 t = parent.predicate("fhir:" + parentType + '.' + name); 5647 } 5648 composeBackboneElement(t, "item", name, element, index); 5649 for (int i = 0; i < element.getSupportingInfoSequence().size(); i++) 5650 composePositiveInt(t, "CoverageEligibilityRequest", "supportingInfoSequence", 5651 element.getSupportingInfoSequence().get(i), i); 5652 if (element.hasCategory()) 5653 composeCodeableConcept(t, "CoverageEligibilityRequest", "category", element.getCategory(), -1); 5654 if (element.hasProductOrService()) 5655 composeCodeableConcept(t, "CoverageEligibilityRequest", "productOrService", element.getProductOrService(), -1); 5656 for (int i = 0; i < element.getModifier().size(); i++) 5657 composeCodeableConcept(t, "CoverageEligibilityRequest", "modifier", element.getModifier().get(i), i); 5658 if (element.hasProvider()) 5659 composeReference(t, "CoverageEligibilityRequest", "provider", element.getProvider(), -1); 5660 if (element.hasQuantity()) 5661 composeQuantity(t, "CoverageEligibilityRequest", "quantity", element.getQuantity(), -1); 5662 if (element.hasUnitPrice()) 5663 composeMoney(t, "CoverageEligibilityRequest", "unitPrice", element.getUnitPrice(), -1); 5664 if (element.hasFacility()) 5665 composeReference(t, "CoverageEligibilityRequest", "facility", element.getFacility(), -1); 5666 for (int i = 0; i < element.getDiagnosis().size(); i++) 5667 composeCoverageEligibilityRequestDiagnosisComponent(t, "CoverageEligibilityRequest", "diagnosis", 5668 element.getDiagnosis().get(i), i); 5669 for (int i = 0; i < element.getDetail().size(); i++) 5670 composeReference(t, "CoverageEligibilityRequest", "detail", element.getDetail().get(i), i); 5671 } 5672 5673 protected void composeCoverageEligibilityRequestDiagnosisComponent(Complex parent, String parentType, String name, 5674 CoverageEligibilityRequest.DiagnosisComponent element, int index) { 5675 if (element == null) 5676 return; 5677 Complex t; 5678 if (Utilities.noString(parentType)) 5679 t = parent; 5680 else { 5681 t = parent.predicate("fhir:" + parentType + '.' + name); 5682 } 5683 composeBackboneElement(t, "diagnosis", name, element, index); 5684 if (element.hasDiagnosis()) 5685 composeType(t, "CoverageEligibilityRequest", "diagnosis", element.getDiagnosis(), -1); 5686 } 5687 5688 protected void composeCoverageEligibilityResponse(Complex parent, String parentType, String name, 5689 CoverageEligibilityResponse element, int index) { 5690 if (element == null) 5691 return; 5692 Complex t; 5693 if (Utilities.noString(parentType)) 5694 t = parent; 5695 else { 5696 t = parent.predicate("fhir:" + parentType + '.' + name); 5697 } 5698 composeDomainResource(t, "CoverageEligibilityResponse", name, element, index); 5699 for (int i = 0; i < element.getIdentifier().size(); i++) 5700 composeIdentifier(t, "CoverageEligibilityResponse", "identifier", element.getIdentifier().get(i), i); 5701 if (element.hasStatusElement()) 5702 composeEnum(t, "CoverageEligibilityResponse", "status", element.getStatusElement(), -1); 5703 for (int i = 0; i < element.getPurpose().size(); i++) 5704 composeEnum(t, "CoverageEligibilityResponse", "purpose", element.getPurpose().get(i), i); 5705 if (element.hasPatient()) 5706 composeReference(t, "CoverageEligibilityResponse", "patient", element.getPatient(), -1); 5707 if (element.hasServiced()) 5708 composeType(t, "CoverageEligibilityResponse", "serviced", element.getServiced(), -1); 5709 if (element.hasCreatedElement()) 5710 composeDateTime(t, "CoverageEligibilityResponse", "created", element.getCreatedElement(), -1); 5711 if (element.hasRequestor()) 5712 composeReference(t, "CoverageEligibilityResponse", "requestor", element.getRequestor(), -1); 5713 if (element.hasRequest()) 5714 composeReference(t, "CoverageEligibilityResponse", "request", element.getRequest(), -1); 5715 if (element.hasOutcomeElement()) 5716 composeEnum(t, "CoverageEligibilityResponse", "outcome", element.getOutcomeElement(), -1); 5717 if (element.hasDispositionElement()) 5718 composeString(t, "CoverageEligibilityResponse", "disposition", element.getDispositionElement(), -1); 5719 if (element.hasInsurer()) 5720 composeReference(t, "CoverageEligibilityResponse", "insurer", element.getInsurer(), -1); 5721 for (int i = 0; i < element.getInsurance().size(); i++) 5722 composeCoverageEligibilityResponseInsuranceComponent(t, "CoverageEligibilityResponse", "insurance", 5723 element.getInsurance().get(i), i); 5724 if (element.hasPreAuthRefElement()) 5725 composeString(t, "CoverageEligibilityResponse", "preAuthRef", element.getPreAuthRefElement(), -1); 5726 if (element.hasForm()) 5727 composeCodeableConcept(t, "CoverageEligibilityResponse", "form", element.getForm(), -1); 5728 for (int i = 0; i < element.getError().size(); i++) 5729 composeCoverageEligibilityResponseErrorsComponent(t, "CoverageEligibilityResponse", "error", 5730 element.getError().get(i), i); 5731 } 5732 5733 protected void composeCoverageEligibilityResponseInsuranceComponent(Complex parent, String parentType, String name, 5734 CoverageEligibilityResponse.InsuranceComponent element, int index) { 5735 if (element == null) 5736 return; 5737 Complex t; 5738 if (Utilities.noString(parentType)) 5739 t = parent; 5740 else { 5741 t = parent.predicate("fhir:" + parentType + '.' + name); 5742 } 5743 composeBackboneElement(t, "insurance", name, element, index); 5744 if (element.hasCoverage()) 5745 composeReference(t, "CoverageEligibilityResponse", "coverage", element.getCoverage(), -1); 5746 if (element.hasInforceElement()) 5747 composeBoolean(t, "CoverageEligibilityResponse", "inforce", element.getInforceElement(), -1); 5748 if (element.hasBenefitPeriod()) 5749 composePeriod(t, "CoverageEligibilityResponse", "benefitPeriod", element.getBenefitPeriod(), -1); 5750 for (int i = 0; i < element.getItem().size(); i++) 5751 composeCoverageEligibilityResponseItemsComponent(t, "CoverageEligibilityResponse", "item", 5752 element.getItem().get(i), i); 5753 } 5754 5755 protected void composeCoverageEligibilityResponseItemsComponent(Complex parent, String parentType, String name, 5756 CoverageEligibilityResponse.ItemsComponent element, int index) { 5757 if (element == null) 5758 return; 5759 Complex t; 5760 if (Utilities.noString(parentType)) 5761 t = parent; 5762 else { 5763 t = parent.predicate("fhir:" + parentType + '.' + name); 5764 } 5765 composeBackboneElement(t, "item", name, element, index); 5766 if (element.hasCategory()) 5767 composeCodeableConcept(t, "CoverageEligibilityResponse", "category", element.getCategory(), -1); 5768 if (element.hasProductOrService()) 5769 composeCodeableConcept(t, "CoverageEligibilityResponse", "productOrService", element.getProductOrService(), -1); 5770 for (int i = 0; i < element.getModifier().size(); i++) 5771 composeCodeableConcept(t, "CoverageEligibilityResponse", "modifier", element.getModifier().get(i), i); 5772 if (element.hasProvider()) 5773 composeReference(t, "CoverageEligibilityResponse", "provider", element.getProvider(), -1); 5774 if (element.hasExcludedElement()) 5775 composeBoolean(t, "CoverageEligibilityResponse", "excluded", element.getExcludedElement(), -1); 5776 if (element.hasNameElement()) 5777 composeString(t, "CoverageEligibilityResponse", "name", element.getNameElement(), -1); 5778 if (element.hasDescriptionElement()) 5779 composeString(t, "CoverageEligibilityResponse", "description", element.getDescriptionElement(), -1); 5780 if (element.hasNetwork()) 5781 composeCodeableConcept(t, "CoverageEligibilityResponse", "network", element.getNetwork(), -1); 5782 if (element.hasUnit()) 5783 composeCodeableConcept(t, "CoverageEligibilityResponse", "unit", element.getUnit(), -1); 5784 if (element.hasTerm()) 5785 composeCodeableConcept(t, "CoverageEligibilityResponse", "term", element.getTerm(), -1); 5786 for (int i = 0; i < element.getBenefit().size(); i++) 5787 composeCoverageEligibilityResponseBenefitComponent(t, "CoverageEligibilityResponse", "benefit", 5788 element.getBenefit().get(i), i); 5789 if (element.hasAuthorizationRequiredElement()) 5790 composeBoolean(t, "CoverageEligibilityResponse", "authorizationRequired", 5791 element.getAuthorizationRequiredElement(), -1); 5792 for (int i = 0; i < element.getAuthorizationSupporting().size(); i++) 5793 composeCodeableConcept(t, "CoverageEligibilityResponse", "authorizationSupporting", 5794 element.getAuthorizationSupporting().get(i), i); 5795 if (element.hasAuthorizationUrlElement()) 5796 composeUri(t, "CoverageEligibilityResponse", "authorizationUrl", element.getAuthorizationUrlElement(), -1); 5797 } 5798 5799 protected void composeCoverageEligibilityResponseBenefitComponent(Complex parent, String parentType, String name, 5800 CoverageEligibilityResponse.BenefitComponent element, int index) { 5801 if (element == null) 5802 return; 5803 Complex t; 5804 if (Utilities.noString(parentType)) 5805 t = parent; 5806 else { 5807 t = parent.predicate("fhir:" + parentType + '.' + name); 5808 } 5809 composeBackboneElement(t, "benefit", name, element, index); 5810 if (element.hasType()) 5811 composeCodeableConcept(t, "CoverageEligibilityResponse", "type", element.getType(), -1); 5812 if (element.hasAllowed()) 5813 composeType(t, "CoverageEligibilityResponse", "allowed", element.getAllowed(), -1); 5814 if (element.hasUsed()) 5815 composeType(t, "CoverageEligibilityResponse", "used", element.getUsed(), -1); 5816 } 5817 5818 protected void composeCoverageEligibilityResponseErrorsComponent(Complex parent, String parentType, String name, 5819 CoverageEligibilityResponse.ErrorsComponent element, int index) { 5820 if (element == null) 5821 return; 5822 Complex t; 5823 if (Utilities.noString(parentType)) 5824 t = parent; 5825 else { 5826 t = parent.predicate("fhir:" + parentType + '.' + name); 5827 } 5828 composeBackboneElement(t, "error", name, element, index); 5829 if (element.hasCode()) 5830 composeCodeableConcept(t, "CoverageEligibilityResponse", "code", element.getCode(), -1); 5831 } 5832 5833 protected void composeDetectedIssue(Complex parent, String parentType, String name, DetectedIssue element, 5834 int index) { 5835 if (element == null) 5836 return; 5837 Complex t; 5838 if (Utilities.noString(parentType)) 5839 t = parent; 5840 else { 5841 t = parent.predicate("fhir:" + parentType + '.' + name); 5842 } 5843 composeDomainResource(t, "DetectedIssue", name, element, index); 5844 for (int i = 0; i < element.getIdentifier().size(); i++) 5845 composeIdentifier(t, "DetectedIssue", "identifier", element.getIdentifier().get(i), i); 5846 if (element.hasStatusElement()) 5847 composeEnum(t, "DetectedIssue", "status", element.getStatusElement(), -1); 5848 if (element.hasCode()) 5849 composeCodeableConcept(t, "DetectedIssue", "code", element.getCode(), -1); 5850 if (element.hasSeverityElement()) 5851 composeEnum(t, "DetectedIssue", "severity", element.getSeverityElement(), -1); 5852 if (element.hasPatient()) 5853 composeReference(t, "DetectedIssue", "patient", element.getPatient(), -1); 5854 if (element.hasIdentified()) 5855 composeType(t, "DetectedIssue", "identified", element.getIdentified(), -1); 5856 if (element.hasAuthor()) 5857 composeReference(t, "DetectedIssue", "author", element.getAuthor(), -1); 5858 for (int i = 0; i < element.getImplicated().size(); i++) 5859 composeReference(t, "DetectedIssue", "implicated", element.getImplicated().get(i), i); 5860 for (int i = 0; i < element.getEvidence().size(); i++) 5861 composeDetectedIssueDetectedIssueEvidenceComponent(t, "DetectedIssue", "evidence", element.getEvidence().get(i), 5862 i); 5863 if (element.hasDetailElement()) 5864 composeString(t, "DetectedIssue", "detail", element.getDetailElement(), -1); 5865 if (element.hasReferenceElement()) 5866 composeUri(t, "DetectedIssue", "reference", element.getReferenceElement(), -1); 5867 for (int i = 0; i < element.getMitigation().size(); i++) 5868 composeDetectedIssueDetectedIssueMitigationComponent(t, "DetectedIssue", "mitigation", 5869 element.getMitigation().get(i), i); 5870 } 5871 5872 protected void composeDetectedIssueDetectedIssueEvidenceComponent(Complex parent, String parentType, String name, 5873 DetectedIssue.DetectedIssueEvidenceComponent element, int index) { 5874 if (element == null) 5875 return; 5876 Complex t; 5877 if (Utilities.noString(parentType)) 5878 t = parent; 5879 else { 5880 t = parent.predicate("fhir:" + parentType + '.' + name); 5881 } 5882 composeBackboneElement(t, "evidence", name, element, index); 5883 for (int i = 0; i < element.getCode().size(); i++) 5884 composeCodeableConcept(t, "DetectedIssue", "code", element.getCode().get(i), i); 5885 for (int i = 0; i < element.getDetail().size(); i++) 5886 composeReference(t, "DetectedIssue", "detail", element.getDetail().get(i), i); 5887 } 5888 5889 protected void composeDetectedIssueDetectedIssueMitigationComponent(Complex parent, String parentType, String name, 5890 DetectedIssue.DetectedIssueMitigationComponent element, int index) { 5891 if (element == null) 5892 return; 5893 Complex t; 5894 if (Utilities.noString(parentType)) 5895 t = parent; 5896 else { 5897 t = parent.predicate("fhir:" + parentType + '.' + name); 5898 } 5899 composeBackboneElement(t, "mitigation", name, element, index); 5900 if (element.hasAction()) 5901 composeCodeableConcept(t, "DetectedIssue", "action", element.getAction(), -1); 5902 if (element.hasDateElement()) 5903 composeDateTime(t, "DetectedIssue", "date", element.getDateElement(), -1); 5904 if (element.hasAuthor()) 5905 composeReference(t, "DetectedIssue", "author", element.getAuthor(), -1); 5906 } 5907 5908 protected void composeDevice(Complex parent, String parentType, String name, Device element, int index) { 5909 if (element == null) 5910 return; 5911 Complex t; 5912 if (Utilities.noString(parentType)) 5913 t = parent; 5914 else { 5915 t = parent.predicate("fhir:" + parentType + '.' + name); 5916 } 5917 composeDomainResource(t, "Device", name, element, index); 5918 for (int i = 0; i < element.getIdentifier().size(); i++) 5919 composeIdentifier(t, "Device", "identifier", element.getIdentifier().get(i), i); 5920 if (element.hasDefinition()) 5921 composeReference(t, "Device", "definition", element.getDefinition(), -1); 5922 for (int i = 0; i < element.getUdiCarrier().size(); i++) 5923 composeDeviceDeviceUdiCarrierComponent(t, "Device", "udiCarrier", element.getUdiCarrier().get(i), i); 5924 if (element.hasStatusElement()) 5925 composeEnum(t, "Device", "status", element.getStatusElement(), -1); 5926 for (int i = 0; i < element.getStatusReason().size(); i++) 5927 composeCodeableConcept(t, "Device", "statusReason", element.getStatusReason().get(i), i); 5928 if (element.hasDistinctIdentifierElement()) 5929 composeString(t, "Device", "distinctIdentifier", element.getDistinctIdentifierElement(), -1); 5930 if (element.hasManufacturerElement()) 5931 composeString(t, "Device", "manufacturer", element.getManufacturerElement(), -1); 5932 if (element.hasManufactureDateElement()) 5933 composeDateTime(t, "Device", "manufactureDate", element.getManufactureDateElement(), -1); 5934 if (element.hasExpirationDateElement()) 5935 composeDateTime(t, "Device", "expirationDate", element.getExpirationDateElement(), -1); 5936 if (element.hasLotNumberElement()) 5937 composeString(t, "Device", "lotNumber", element.getLotNumberElement(), -1); 5938 if (element.hasSerialNumberElement()) 5939 composeString(t, "Device", "serialNumber", element.getSerialNumberElement(), -1); 5940 for (int i = 0; i < element.getDeviceName().size(); i++) 5941 composeDeviceDeviceDeviceNameComponent(t, "Device", "deviceName", element.getDeviceName().get(i), i); 5942 if (element.hasModelNumberElement()) 5943 composeString(t, "Device", "modelNumber", element.getModelNumberElement(), -1); 5944 if (element.hasPartNumberElement()) 5945 composeString(t, "Device", "partNumber", element.getPartNumberElement(), -1); 5946 if (element.hasType()) 5947 composeCodeableConcept(t, "Device", "type", element.getType(), -1); 5948 for (int i = 0; i < element.getSpecialization().size(); i++) 5949 composeDeviceDeviceSpecializationComponent(t, "Device", "specialization", element.getSpecialization().get(i), i); 5950 for (int i = 0; i < element.getVersion().size(); i++) 5951 composeDeviceDeviceVersionComponent(t, "Device", "version", element.getVersion().get(i), i); 5952 for (int i = 0; i < element.getProperty().size(); i++) 5953 composeDeviceDevicePropertyComponent(t, "Device", "property", element.getProperty().get(i), i); 5954 if (element.hasPatient()) 5955 composeReference(t, "Device", "patient", element.getPatient(), -1); 5956 if (element.hasOwner()) 5957 composeReference(t, "Device", "owner", element.getOwner(), -1); 5958 for (int i = 0; i < element.getContact().size(); i++) 5959 composeContactPoint(t, "Device", "contact", element.getContact().get(i), i); 5960 if (element.hasLocation()) 5961 composeReference(t, "Device", "location", element.getLocation(), -1); 5962 if (element.hasUrlElement()) 5963 composeUri(t, "Device", "url", element.getUrlElement(), -1); 5964 for (int i = 0; i < element.getNote().size(); i++) 5965 composeAnnotation(t, "Device", "note", element.getNote().get(i), i); 5966 for (int i = 0; i < element.getSafety().size(); i++) 5967 composeCodeableConcept(t, "Device", "safety", element.getSafety().get(i), i); 5968 if (element.hasParent()) 5969 composeReference(t, "Device", "parent", element.getParent(), -1); 5970 } 5971 5972 protected void composeDeviceDeviceUdiCarrierComponent(Complex parent, String parentType, String name, 5973 Device.DeviceUdiCarrierComponent element, int index) { 5974 if (element == null) 5975 return; 5976 Complex t; 5977 if (Utilities.noString(parentType)) 5978 t = parent; 5979 else { 5980 t = parent.predicate("fhir:" + parentType + '.' + name); 5981 } 5982 composeBackboneElement(t, "udiCarrier", name, element, index); 5983 if (element.hasDeviceIdentifierElement()) 5984 composeString(t, "Device", "deviceIdentifier", element.getDeviceIdentifierElement(), -1); 5985 if (element.hasIssuerElement()) 5986 composeUri(t, "Device", "issuer", element.getIssuerElement(), -1); 5987 if (element.hasJurisdictionElement()) 5988 composeUri(t, "Device", "jurisdiction", element.getJurisdictionElement(), -1); 5989 if (element.hasCarrierAIDCElement()) 5990 composeBase64Binary(t, "Device", "carrierAIDC", element.getCarrierAIDCElement(), -1); 5991 if (element.hasCarrierHRFElement()) 5992 composeString(t, "Device", "carrierHRF", element.getCarrierHRFElement(), -1); 5993 if (element.hasEntryTypeElement()) 5994 composeEnum(t, "Device", "entryType", element.getEntryTypeElement(), -1); 5995 } 5996 5997 protected void composeDeviceDeviceDeviceNameComponent(Complex parent, String parentType, String name, 5998 Device.DeviceDeviceNameComponent element, int index) { 5999 if (element == null) 6000 return; 6001 Complex t; 6002 if (Utilities.noString(parentType)) 6003 t = parent; 6004 else { 6005 t = parent.predicate("fhir:" + parentType + '.' + name); 6006 } 6007 composeBackboneElement(t, "deviceName", name, element, index); 6008 if (element.hasNameElement()) 6009 composeString(t, "Device", "name", element.getNameElement(), -1); 6010 if (element.hasTypeElement()) 6011 composeEnum(t, "Device", "type", element.getTypeElement(), -1); 6012 } 6013 6014 protected void composeDeviceDeviceSpecializationComponent(Complex parent, String parentType, String name, 6015 Device.DeviceSpecializationComponent element, int index) { 6016 if (element == null) 6017 return; 6018 Complex t; 6019 if (Utilities.noString(parentType)) 6020 t = parent; 6021 else { 6022 t = parent.predicate("fhir:" + parentType + '.' + name); 6023 } 6024 composeBackboneElement(t, "specialization", name, element, index); 6025 if (element.hasSystemType()) 6026 composeCodeableConcept(t, "Device", "systemType", element.getSystemType(), -1); 6027 if (element.hasVersionElement()) 6028 composeString(t, "Device", "version", element.getVersionElement(), -1); 6029 } 6030 6031 protected void composeDeviceDeviceVersionComponent(Complex parent, String parentType, String name, 6032 Device.DeviceVersionComponent element, int index) { 6033 if (element == null) 6034 return; 6035 Complex t; 6036 if (Utilities.noString(parentType)) 6037 t = parent; 6038 else { 6039 t = parent.predicate("fhir:" + parentType + '.' + name); 6040 } 6041 composeBackboneElement(t, "version", name, element, index); 6042 if (element.hasType()) 6043 composeCodeableConcept(t, "Device", "type", element.getType(), -1); 6044 if (element.hasComponent()) 6045 composeIdentifier(t, "Device", "component", element.getComponent(), -1); 6046 if (element.hasValueElement()) 6047 composeString(t, "Device", "value", element.getValueElement(), -1); 6048 } 6049 6050 protected void composeDeviceDevicePropertyComponent(Complex parent, String parentType, String name, 6051 Device.DevicePropertyComponent element, int index) { 6052 if (element == null) 6053 return; 6054 Complex t; 6055 if (Utilities.noString(parentType)) 6056 t = parent; 6057 else { 6058 t = parent.predicate("fhir:" + parentType + '.' + name); 6059 } 6060 composeBackboneElement(t, "property", name, element, index); 6061 if (element.hasType()) 6062 composeCodeableConcept(t, "Device", "type", element.getType(), -1); 6063 for (int i = 0; i < element.getValueQuantity().size(); i++) 6064 composeQuantity(t, "Device", "valueQuantity", element.getValueQuantity().get(i), i); 6065 for (int i = 0; i < element.getValueCode().size(); i++) 6066 composeCodeableConcept(t, "Device", "valueCode", element.getValueCode().get(i), i); 6067 } 6068 6069 protected void composeDeviceDefinition(Complex parent, String parentType, String name, DeviceDefinition element, 6070 int index) { 6071 if (element == null) 6072 return; 6073 Complex t; 6074 if (Utilities.noString(parentType)) 6075 t = parent; 6076 else { 6077 t = parent.predicate("fhir:" + parentType + '.' + name); 6078 } 6079 composeDomainResource(t, "DeviceDefinition", name, element, index); 6080 for (int i = 0; i < element.getIdentifier().size(); i++) 6081 composeIdentifier(t, "DeviceDefinition", "identifier", element.getIdentifier().get(i), i); 6082 for (int i = 0; i < element.getUdiDeviceIdentifier().size(); i++) 6083 composeDeviceDefinitionDeviceDefinitionUdiDeviceIdentifierComponent(t, "DeviceDefinition", "udiDeviceIdentifier", 6084 element.getUdiDeviceIdentifier().get(i), i); 6085 if (element.hasManufacturer()) 6086 composeType(t, "DeviceDefinition", "manufacturer", element.getManufacturer(), -1); 6087 for (int i = 0; i < element.getDeviceName().size(); i++) 6088 composeDeviceDefinitionDeviceDefinitionDeviceNameComponent(t, "DeviceDefinition", "deviceName", 6089 element.getDeviceName().get(i), i); 6090 if (element.hasModelNumberElement()) 6091 composeString(t, "DeviceDefinition", "modelNumber", element.getModelNumberElement(), -1); 6092 if (element.hasType()) 6093 composeCodeableConcept(t, "DeviceDefinition", "type", element.getType(), -1); 6094 for (int i = 0; i < element.getSpecialization().size(); i++) 6095 composeDeviceDefinitionDeviceDefinitionSpecializationComponent(t, "DeviceDefinition", "specialization", 6096 element.getSpecialization().get(i), i); 6097 for (int i = 0; i < element.getVersion().size(); i++) 6098 composeString(t, "DeviceDefinition", "version", element.getVersion().get(i), i); 6099 for (int i = 0; i < element.getSafety().size(); i++) 6100 composeCodeableConcept(t, "DeviceDefinition", "safety", element.getSafety().get(i), i); 6101 for (int i = 0; i < element.getShelfLifeStorage().size(); i++) 6102 composeProductShelfLife(t, "DeviceDefinition", "shelfLifeStorage", element.getShelfLifeStorage().get(i), i); 6103 if (element.hasPhysicalCharacteristics()) 6104 composeProdCharacteristic(t, "DeviceDefinition", "physicalCharacteristics", element.getPhysicalCharacteristics(), 6105 -1); 6106 for (int i = 0; i < element.getLanguageCode().size(); i++) 6107 composeCodeableConcept(t, "DeviceDefinition", "languageCode", element.getLanguageCode().get(i), i); 6108 for (int i = 0; i < element.getCapability().size(); i++) 6109 composeDeviceDefinitionDeviceDefinitionCapabilityComponent(t, "DeviceDefinition", "capability", 6110 element.getCapability().get(i), i); 6111 for (int i = 0; i < element.getProperty().size(); i++) 6112 composeDeviceDefinitionDeviceDefinitionPropertyComponent(t, "DeviceDefinition", "property", 6113 element.getProperty().get(i), i); 6114 if (element.hasOwner()) 6115 composeReference(t, "DeviceDefinition", "owner", element.getOwner(), -1); 6116 for (int i = 0; i < element.getContact().size(); i++) 6117 composeContactPoint(t, "DeviceDefinition", "contact", element.getContact().get(i), i); 6118 if (element.hasUrlElement()) 6119 composeUri(t, "DeviceDefinition", "url", element.getUrlElement(), -1); 6120 if (element.hasOnlineInformationElement()) 6121 composeUri(t, "DeviceDefinition", "onlineInformation", element.getOnlineInformationElement(), -1); 6122 for (int i = 0; i < element.getNote().size(); i++) 6123 composeAnnotation(t, "DeviceDefinition", "note", element.getNote().get(i), i); 6124 if (element.hasQuantity()) 6125 composeQuantity(t, "DeviceDefinition", "quantity", element.getQuantity(), -1); 6126 if (element.hasParentDevice()) 6127 composeReference(t, "DeviceDefinition", "parentDevice", element.getParentDevice(), -1); 6128 for (int i = 0; i < element.getMaterial().size(); i++) 6129 composeDeviceDefinitionDeviceDefinitionMaterialComponent(t, "DeviceDefinition", "material", 6130 element.getMaterial().get(i), i); 6131 } 6132 6133 protected void composeDeviceDefinitionDeviceDefinitionUdiDeviceIdentifierComponent(Complex parent, String parentType, 6134 String name, DeviceDefinition.DeviceDefinitionUdiDeviceIdentifierComponent element, int index) { 6135 if (element == null) 6136 return; 6137 Complex t; 6138 if (Utilities.noString(parentType)) 6139 t = parent; 6140 else { 6141 t = parent.predicate("fhir:" + parentType + '.' + name); 6142 } 6143 composeBackboneElement(t, "udiDeviceIdentifier", name, element, index); 6144 if (element.hasDeviceIdentifierElement()) 6145 composeString(t, "DeviceDefinition", "deviceIdentifier", element.getDeviceIdentifierElement(), -1); 6146 if (element.hasIssuerElement()) 6147 composeUri(t, "DeviceDefinition", "issuer", element.getIssuerElement(), -1); 6148 if (element.hasJurisdictionElement()) 6149 composeUri(t, "DeviceDefinition", "jurisdiction", element.getJurisdictionElement(), -1); 6150 } 6151 6152 protected void composeDeviceDefinitionDeviceDefinitionDeviceNameComponent(Complex parent, String parentType, 6153 String name, DeviceDefinition.DeviceDefinitionDeviceNameComponent element, int index) { 6154 if (element == null) 6155 return; 6156 Complex t; 6157 if (Utilities.noString(parentType)) 6158 t = parent; 6159 else { 6160 t = parent.predicate("fhir:" + parentType + '.' + name); 6161 } 6162 composeBackboneElement(t, "deviceName", name, element, index); 6163 if (element.hasNameElement()) 6164 composeString(t, "DeviceDefinition", "name", element.getNameElement(), -1); 6165 if (element.hasTypeElement()) 6166 composeEnum(t, "DeviceDefinition", "type", element.getTypeElement(), -1); 6167 } 6168 6169 protected void composeDeviceDefinitionDeviceDefinitionSpecializationComponent(Complex parent, String parentType, 6170 String name, DeviceDefinition.DeviceDefinitionSpecializationComponent element, int index) { 6171 if (element == null) 6172 return; 6173 Complex t; 6174 if (Utilities.noString(parentType)) 6175 t = parent; 6176 else { 6177 t = parent.predicate("fhir:" + parentType + '.' + name); 6178 } 6179 composeBackboneElement(t, "specialization", name, element, index); 6180 if (element.hasSystemTypeElement()) 6181 composeString(t, "DeviceDefinition", "systemType", element.getSystemTypeElement(), -1); 6182 if (element.hasVersionElement()) 6183 composeString(t, "DeviceDefinition", "version", element.getVersionElement(), -1); 6184 } 6185 6186 protected void composeDeviceDefinitionDeviceDefinitionCapabilityComponent(Complex parent, String parentType, 6187 String name, DeviceDefinition.DeviceDefinitionCapabilityComponent element, int index) { 6188 if (element == null) 6189 return; 6190 Complex t; 6191 if (Utilities.noString(parentType)) 6192 t = parent; 6193 else { 6194 t = parent.predicate("fhir:" + parentType + '.' + name); 6195 } 6196 composeBackboneElement(t, "capability", name, element, index); 6197 if (element.hasType()) 6198 composeCodeableConcept(t, "DeviceDefinition", "type", element.getType(), -1); 6199 for (int i = 0; i < element.getDescription().size(); i++) 6200 composeCodeableConcept(t, "DeviceDefinition", "description", element.getDescription().get(i), i); 6201 } 6202 6203 protected void composeDeviceDefinitionDeviceDefinitionPropertyComponent(Complex parent, String parentType, 6204 String name, DeviceDefinition.DeviceDefinitionPropertyComponent element, int index) { 6205 if (element == null) 6206 return; 6207 Complex t; 6208 if (Utilities.noString(parentType)) 6209 t = parent; 6210 else { 6211 t = parent.predicate("fhir:" + parentType + '.' + name); 6212 } 6213 composeBackboneElement(t, "property", name, element, index); 6214 if (element.hasType()) 6215 composeCodeableConcept(t, "DeviceDefinition", "type", element.getType(), -1); 6216 for (int i = 0; i < element.getValueQuantity().size(); i++) 6217 composeQuantity(t, "DeviceDefinition", "valueQuantity", element.getValueQuantity().get(i), i); 6218 for (int i = 0; i < element.getValueCode().size(); i++) 6219 composeCodeableConcept(t, "DeviceDefinition", "valueCode", element.getValueCode().get(i), i); 6220 } 6221 6222 protected void composeDeviceDefinitionDeviceDefinitionMaterialComponent(Complex parent, String parentType, 6223 String name, DeviceDefinition.DeviceDefinitionMaterialComponent element, int index) { 6224 if (element == null) 6225 return; 6226 Complex t; 6227 if (Utilities.noString(parentType)) 6228 t = parent; 6229 else { 6230 t = parent.predicate("fhir:" + parentType + '.' + name); 6231 } 6232 composeBackboneElement(t, "material", name, element, index); 6233 if (element.hasSubstance()) 6234 composeCodeableConcept(t, "DeviceDefinition", "substance", element.getSubstance(), -1); 6235 if (element.hasAlternateElement()) 6236 composeBoolean(t, "DeviceDefinition", "alternate", element.getAlternateElement(), -1); 6237 if (element.hasAllergenicIndicatorElement()) 6238 composeBoolean(t, "DeviceDefinition", "allergenicIndicator", element.getAllergenicIndicatorElement(), -1); 6239 } 6240 6241 protected void composeDeviceMetric(Complex parent, String parentType, String name, DeviceMetric element, int index) { 6242 if (element == null) 6243 return; 6244 Complex t; 6245 if (Utilities.noString(parentType)) 6246 t = parent; 6247 else { 6248 t = parent.predicate("fhir:" + parentType + '.' + name); 6249 } 6250 composeDomainResource(t, "DeviceMetric", name, element, index); 6251 for (int i = 0; i < element.getIdentifier().size(); i++) 6252 composeIdentifier(t, "DeviceMetric", "identifier", element.getIdentifier().get(i), i); 6253 if (element.hasType()) 6254 composeCodeableConcept(t, "DeviceMetric", "type", element.getType(), -1); 6255 if (element.hasUnit()) 6256 composeCodeableConcept(t, "DeviceMetric", "unit", element.getUnit(), -1); 6257 if (element.hasSource()) 6258 composeReference(t, "DeviceMetric", "source", element.getSource(), -1); 6259 if (element.hasParent()) 6260 composeReference(t, "DeviceMetric", "parent", element.getParent(), -1); 6261 if (element.hasOperationalStatusElement()) 6262 composeEnum(t, "DeviceMetric", "operationalStatus", element.getOperationalStatusElement(), -1); 6263 if (element.hasColorElement()) 6264 composeEnum(t, "DeviceMetric", "color", element.getColorElement(), -1); 6265 if (element.hasCategoryElement()) 6266 composeEnum(t, "DeviceMetric", "category", element.getCategoryElement(), -1); 6267 if (element.hasMeasurementPeriod()) 6268 composeTiming(t, "DeviceMetric", "measurementPeriod", element.getMeasurementPeriod(), -1); 6269 for (int i = 0; i < element.getCalibration().size(); i++) 6270 composeDeviceMetricDeviceMetricCalibrationComponent(t, "DeviceMetric", "calibration", 6271 element.getCalibration().get(i), i); 6272 } 6273 6274 protected void composeDeviceMetricDeviceMetricCalibrationComponent(Complex parent, String parentType, String name, 6275 DeviceMetric.DeviceMetricCalibrationComponent element, int index) { 6276 if (element == null) 6277 return; 6278 Complex t; 6279 if (Utilities.noString(parentType)) 6280 t = parent; 6281 else { 6282 t = parent.predicate("fhir:" + parentType + '.' + name); 6283 } 6284 composeBackboneElement(t, "calibration", name, element, index); 6285 if (element.hasTypeElement()) 6286 composeEnum(t, "DeviceMetric", "type", element.getTypeElement(), -1); 6287 if (element.hasStateElement()) 6288 composeEnum(t, "DeviceMetric", "state", element.getStateElement(), -1); 6289 if (element.hasTimeElement()) 6290 composeInstant(t, "DeviceMetric", "time", element.getTimeElement(), -1); 6291 } 6292 6293 protected void composeDeviceRequest(Complex parent, String parentType, String name, DeviceRequest element, 6294 int index) { 6295 if (element == null) 6296 return; 6297 Complex t; 6298 if (Utilities.noString(parentType)) 6299 t = parent; 6300 else { 6301 t = parent.predicate("fhir:" + parentType + '.' + name); 6302 } 6303 composeDomainResource(t, "DeviceRequest", name, element, index); 6304 for (int i = 0; i < element.getIdentifier().size(); i++) 6305 composeIdentifier(t, "DeviceRequest", "identifier", element.getIdentifier().get(i), i); 6306 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 6307 composeCanonical(t, "DeviceRequest", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 6308 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 6309 composeUri(t, "DeviceRequest", "instantiatesUri", element.getInstantiatesUri().get(i), i); 6310 for (int i = 0; i < element.getBasedOn().size(); i++) 6311 composeReference(t, "DeviceRequest", "basedOn", element.getBasedOn().get(i), i); 6312 for (int i = 0; i < element.getPriorRequest().size(); i++) 6313 composeReference(t, "DeviceRequest", "priorRequest", element.getPriorRequest().get(i), i); 6314 if (element.hasGroupIdentifier()) 6315 composeIdentifier(t, "DeviceRequest", "groupIdentifier", element.getGroupIdentifier(), -1); 6316 if (element.hasStatusElement()) 6317 composeEnum(t, "DeviceRequest", "status", element.getStatusElement(), -1); 6318 if (element.hasIntentElement()) 6319 composeEnum(t, "DeviceRequest", "intent", element.getIntentElement(), -1); 6320 if (element.hasPriorityElement()) 6321 composeEnum(t, "DeviceRequest", "priority", element.getPriorityElement(), -1); 6322 if (element.hasCode()) 6323 composeType(t, "DeviceRequest", "code", element.getCode(), -1); 6324 for (int i = 0; i < element.getParameter().size(); i++) 6325 composeDeviceRequestDeviceRequestParameterComponent(t, "DeviceRequest", "parameter", 6326 element.getParameter().get(i), i); 6327 if (element.hasSubject()) 6328 composeReference(t, "DeviceRequest", "subject", element.getSubject(), -1); 6329 if (element.hasEncounter()) 6330 composeReference(t, "DeviceRequest", "encounter", element.getEncounter(), -1); 6331 if (element.hasOccurrence()) 6332 composeType(t, "DeviceRequest", "occurrence", element.getOccurrence(), -1); 6333 if (element.hasAuthoredOnElement()) 6334 composeDateTime(t, "DeviceRequest", "authoredOn", element.getAuthoredOnElement(), -1); 6335 if (element.hasRequester()) 6336 composeReference(t, "DeviceRequest", "requester", element.getRequester(), -1); 6337 if (element.hasPerformerType()) 6338 composeCodeableConcept(t, "DeviceRequest", "performerType", element.getPerformerType(), -1); 6339 if (element.hasPerformer()) 6340 composeReference(t, "DeviceRequest", "performer", element.getPerformer(), -1); 6341 for (int i = 0; i < element.getReasonCode().size(); i++) 6342 composeCodeableConcept(t, "DeviceRequest", "reasonCode", element.getReasonCode().get(i), i); 6343 for (int i = 0; i < element.getReasonReference().size(); i++) 6344 composeReference(t, "DeviceRequest", "reasonReference", element.getReasonReference().get(i), i); 6345 for (int i = 0; i < element.getInsurance().size(); i++) 6346 composeReference(t, "DeviceRequest", "insurance", element.getInsurance().get(i), i); 6347 for (int i = 0; i < element.getSupportingInfo().size(); i++) 6348 composeReference(t, "DeviceRequest", "supportingInfo", element.getSupportingInfo().get(i), i); 6349 for (int i = 0; i < element.getNote().size(); i++) 6350 composeAnnotation(t, "DeviceRequest", "note", element.getNote().get(i), i); 6351 for (int i = 0; i < element.getRelevantHistory().size(); i++) 6352 composeReference(t, "DeviceRequest", "relevantHistory", element.getRelevantHistory().get(i), i); 6353 } 6354 6355 protected void composeDeviceRequestDeviceRequestParameterComponent(Complex parent, String parentType, String name, 6356 DeviceRequest.DeviceRequestParameterComponent element, int index) { 6357 if (element == null) 6358 return; 6359 Complex t; 6360 if (Utilities.noString(parentType)) 6361 t = parent; 6362 else { 6363 t = parent.predicate("fhir:" + parentType + '.' + name); 6364 } 6365 composeBackboneElement(t, "parameter", name, element, index); 6366 if (element.hasCode()) 6367 composeCodeableConcept(t, "DeviceRequest", "code", element.getCode(), -1); 6368 if (element.hasValue()) 6369 composeType(t, "DeviceRequest", "value", element.getValue(), -1); 6370 } 6371 6372 protected void composeDeviceUseStatement(Complex parent, String parentType, String name, DeviceUseStatement element, 6373 int index) { 6374 if (element == null) 6375 return; 6376 Complex t; 6377 if (Utilities.noString(parentType)) 6378 t = parent; 6379 else { 6380 t = parent.predicate("fhir:" + parentType + '.' + name); 6381 } 6382 composeDomainResource(t, "DeviceUseStatement", name, element, index); 6383 for (int i = 0; i < element.getIdentifier().size(); i++) 6384 composeIdentifier(t, "DeviceUseStatement", "identifier", element.getIdentifier().get(i), i); 6385 for (int i = 0; i < element.getBasedOn().size(); i++) 6386 composeReference(t, "DeviceUseStatement", "basedOn", element.getBasedOn().get(i), i); 6387 if (element.hasStatusElement()) 6388 composeEnum(t, "DeviceUseStatement", "status", element.getStatusElement(), -1); 6389 if (element.hasSubject()) 6390 composeReference(t, "DeviceUseStatement", "subject", element.getSubject(), -1); 6391 for (int i = 0; i < element.getDerivedFrom().size(); i++) 6392 composeReference(t, "DeviceUseStatement", "derivedFrom", element.getDerivedFrom().get(i), i); 6393 if (element.hasTiming()) 6394 composeType(t, "DeviceUseStatement", "timing", element.getTiming(), -1); 6395 if (element.hasRecordedOnElement()) 6396 composeDateTime(t, "DeviceUseStatement", "recordedOn", element.getRecordedOnElement(), -1); 6397 if (element.hasSource()) 6398 composeReference(t, "DeviceUseStatement", "source", element.getSource(), -1); 6399 if (element.hasDevice()) 6400 composeReference(t, "DeviceUseStatement", "device", element.getDevice(), -1); 6401 for (int i = 0; i < element.getReasonCode().size(); i++) 6402 composeCodeableConcept(t, "DeviceUseStatement", "reasonCode", element.getReasonCode().get(i), i); 6403 for (int i = 0; i < element.getReasonReference().size(); i++) 6404 composeReference(t, "DeviceUseStatement", "reasonReference", element.getReasonReference().get(i), i); 6405 if (element.hasBodySite()) 6406 composeCodeableConcept(t, "DeviceUseStatement", "bodySite", element.getBodySite(), -1); 6407 for (int i = 0; i < element.getNote().size(); i++) 6408 composeAnnotation(t, "DeviceUseStatement", "note", element.getNote().get(i), i); 6409 } 6410 6411 protected void composeDiagnosticReport(Complex parent, String parentType, String name, DiagnosticReport element, 6412 int index) { 6413 if (element == null) 6414 return; 6415 Complex t; 6416 if (Utilities.noString(parentType)) 6417 t = parent; 6418 else { 6419 t = parent.predicate("fhir:" + parentType + '.' + name); 6420 } 6421 composeDomainResource(t, "DiagnosticReport", name, element, index); 6422 for (int i = 0; i < element.getIdentifier().size(); i++) 6423 composeIdentifier(t, "DiagnosticReport", "identifier", element.getIdentifier().get(i), i); 6424 for (int i = 0; i < element.getBasedOn().size(); i++) 6425 composeReference(t, "DiagnosticReport", "basedOn", element.getBasedOn().get(i), i); 6426 if (element.hasStatusElement()) 6427 composeEnum(t, "DiagnosticReport", "status", element.getStatusElement(), -1); 6428 for (int i = 0; i < element.getCategory().size(); i++) 6429 composeCodeableConcept(t, "DiagnosticReport", "category", element.getCategory().get(i), i); 6430 if (element.hasCode()) 6431 composeCodeableConcept(t, "DiagnosticReport", "code", element.getCode(), -1); 6432 if (element.hasSubject()) 6433 composeReference(t, "DiagnosticReport", "subject", element.getSubject(), -1); 6434 if (element.hasEncounter()) 6435 composeReference(t, "DiagnosticReport", "encounter", element.getEncounter(), -1); 6436 if (element.hasEffective()) 6437 composeType(t, "DiagnosticReport", "effective", element.getEffective(), -1); 6438 if (element.hasIssuedElement()) 6439 composeInstant(t, "DiagnosticReport", "issued", element.getIssuedElement(), -1); 6440 for (int i = 0; i < element.getPerformer().size(); i++) 6441 composeReference(t, "DiagnosticReport", "performer", element.getPerformer().get(i), i); 6442 for (int i = 0; i < element.getResultsInterpreter().size(); i++) 6443 composeReference(t, "DiagnosticReport", "resultsInterpreter", element.getResultsInterpreter().get(i), i); 6444 for (int i = 0; i < element.getSpecimen().size(); i++) 6445 composeReference(t, "DiagnosticReport", "specimen", element.getSpecimen().get(i), i); 6446 for (int i = 0; i < element.getResult().size(); i++) 6447 composeReference(t, "DiagnosticReport", "result", element.getResult().get(i), i); 6448 for (int i = 0; i < element.getImagingStudy().size(); i++) 6449 composeReference(t, "DiagnosticReport", "imagingStudy", element.getImagingStudy().get(i), i); 6450 for (int i = 0; i < element.getMedia().size(); i++) 6451 composeDiagnosticReportDiagnosticReportMediaComponent(t, "DiagnosticReport", "media", element.getMedia().get(i), 6452 i); 6453 if (element.hasConclusionElement()) 6454 composeString(t, "DiagnosticReport", "conclusion", element.getConclusionElement(), -1); 6455 for (int i = 0; i < element.getConclusionCode().size(); i++) 6456 composeCodeableConcept(t, "DiagnosticReport", "conclusionCode", element.getConclusionCode().get(i), i); 6457 for (int i = 0; i < element.getPresentedForm().size(); i++) 6458 composeAttachment(t, "DiagnosticReport", "presentedForm", element.getPresentedForm().get(i), i); 6459 } 6460 6461 protected void composeDiagnosticReportDiagnosticReportMediaComponent(Complex parent, String parentType, String name, 6462 DiagnosticReport.DiagnosticReportMediaComponent element, int index) { 6463 if (element == null) 6464 return; 6465 Complex t; 6466 if (Utilities.noString(parentType)) 6467 t = parent; 6468 else { 6469 t = parent.predicate("fhir:" + parentType + '.' + name); 6470 } 6471 composeBackboneElement(t, "media", name, element, index); 6472 if (element.hasCommentElement()) 6473 composeString(t, "DiagnosticReport", "comment", element.getCommentElement(), -1); 6474 if (element.hasLink()) 6475 composeReference(t, "DiagnosticReport", "link", element.getLink(), -1); 6476 } 6477 6478 protected void composeDocumentManifest(Complex parent, String parentType, String name, DocumentManifest element, 6479 int index) { 6480 if (element == null) 6481 return; 6482 Complex t; 6483 if (Utilities.noString(parentType)) 6484 t = parent; 6485 else { 6486 t = parent.predicate("fhir:" + parentType + '.' + name); 6487 } 6488 composeDomainResource(t, "DocumentManifest", name, element, index); 6489 if (element.hasMasterIdentifier()) 6490 composeIdentifier(t, "DocumentManifest", "masterIdentifier", element.getMasterIdentifier(), -1); 6491 for (int i = 0; i < element.getIdentifier().size(); i++) 6492 composeIdentifier(t, "DocumentManifest", "identifier", element.getIdentifier().get(i), i); 6493 if (element.hasStatusElement()) 6494 composeEnum(t, "DocumentManifest", "status", element.getStatusElement(), -1); 6495 if (element.hasType()) 6496 composeCodeableConcept(t, "DocumentManifest", "type", element.getType(), -1); 6497 if (element.hasSubject()) 6498 composeReference(t, "DocumentManifest", "subject", element.getSubject(), -1); 6499 if (element.hasCreatedElement()) 6500 composeDateTime(t, "DocumentManifest", "created", element.getCreatedElement(), -1); 6501 for (int i = 0; i < element.getAuthor().size(); i++) 6502 composeReference(t, "DocumentManifest", "author", element.getAuthor().get(i), i); 6503 for (int i = 0; i < element.getRecipient().size(); i++) 6504 composeReference(t, "DocumentManifest", "recipient", element.getRecipient().get(i), i); 6505 if (element.hasSourceElement()) 6506 composeUri(t, "DocumentManifest", "source", element.getSourceElement(), -1); 6507 if (element.hasDescriptionElement()) 6508 composeString(t, "DocumentManifest", "description", element.getDescriptionElement(), -1); 6509 for (int i = 0; i < element.getContent().size(); i++) 6510 composeReference(t, "DocumentManifest", "content", element.getContent().get(i), i); 6511 for (int i = 0; i < element.getRelated().size(); i++) 6512 composeDocumentManifestDocumentManifestRelatedComponent(t, "DocumentManifest", "related", 6513 element.getRelated().get(i), i); 6514 } 6515 6516 protected void composeDocumentManifestDocumentManifestRelatedComponent(Complex parent, String parentType, String name, 6517 DocumentManifest.DocumentManifestRelatedComponent element, int index) { 6518 if (element == null) 6519 return; 6520 Complex t; 6521 if (Utilities.noString(parentType)) 6522 t = parent; 6523 else { 6524 t = parent.predicate("fhir:" + parentType + '.' + name); 6525 } 6526 composeBackboneElement(t, "related", name, element, index); 6527 if (element.hasIdentifier()) 6528 composeIdentifier(t, "DocumentManifest", "identifier", element.getIdentifier(), -1); 6529 if (element.hasRef()) 6530 composeReference(t, "DocumentManifest", "ref", element.getRef(), -1); 6531 } 6532 6533 protected void composeDocumentReference(Complex parent, String parentType, String name, DocumentReference element, 6534 int index) { 6535 if (element == null) 6536 return; 6537 Complex t; 6538 if (Utilities.noString(parentType)) 6539 t = parent; 6540 else { 6541 t = parent.predicate("fhir:" + parentType + '.' + name); 6542 } 6543 composeDomainResource(t, "DocumentReference", name, element, index); 6544 if (element.hasMasterIdentifier()) 6545 composeIdentifier(t, "DocumentReference", "masterIdentifier", element.getMasterIdentifier(), -1); 6546 for (int i = 0; i < element.getIdentifier().size(); i++) 6547 composeIdentifier(t, "DocumentReference", "identifier", element.getIdentifier().get(i), i); 6548 if (element.hasStatusElement()) 6549 composeEnum(t, "DocumentReference", "status", element.getStatusElement(), -1); 6550 if (element.hasDocStatusElement()) 6551 composeEnum(t, "DocumentReference", "docStatus", element.getDocStatusElement(), -1); 6552 if (element.hasType()) 6553 composeCodeableConcept(t, "DocumentReference", "type", element.getType(), -1); 6554 for (int i = 0; i < element.getCategory().size(); i++) 6555 composeCodeableConcept(t, "DocumentReference", "category", element.getCategory().get(i), i); 6556 if (element.hasSubject()) 6557 composeReference(t, "DocumentReference", "subject", element.getSubject(), -1); 6558 if (element.hasDateElement()) 6559 composeInstant(t, "DocumentReference", "date", element.getDateElement(), -1); 6560 for (int i = 0; i < element.getAuthor().size(); i++) 6561 composeReference(t, "DocumentReference", "author", element.getAuthor().get(i), i); 6562 if (element.hasAuthenticator()) 6563 composeReference(t, "DocumentReference", "authenticator", element.getAuthenticator(), -1); 6564 if (element.hasCustodian()) 6565 composeReference(t, "DocumentReference", "custodian", element.getCustodian(), -1); 6566 for (int i = 0; i < element.getRelatesTo().size(); i++) 6567 composeDocumentReferenceDocumentReferenceRelatesToComponent(t, "DocumentReference", "relatesTo", 6568 element.getRelatesTo().get(i), i); 6569 if (element.hasDescriptionElement()) 6570 composeString(t, "DocumentReference", "description", element.getDescriptionElement(), -1); 6571 for (int i = 0; i < element.getSecurityLabel().size(); i++) 6572 composeCodeableConcept(t, "DocumentReference", "securityLabel", element.getSecurityLabel().get(i), i); 6573 for (int i = 0; i < element.getContent().size(); i++) 6574 composeDocumentReferenceDocumentReferenceContentComponent(t, "DocumentReference", "content", 6575 element.getContent().get(i), i); 6576 if (element.hasContext()) 6577 composeDocumentReferenceDocumentReferenceContextComponent(t, "DocumentReference", "context", element.getContext(), 6578 -1); 6579 } 6580 6581 protected void composeDocumentReferenceDocumentReferenceRelatesToComponent(Complex parent, String parentType, 6582 String name, DocumentReference.DocumentReferenceRelatesToComponent element, int index) { 6583 if (element == null) 6584 return; 6585 Complex t; 6586 if (Utilities.noString(parentType)) 6587 t = parent; 6588 else { 6589 t = parent.predicate("fhir:" + parentType + '.' + name); 6590 } 6591 composeBackboneElement(t, "relatesTo", name, element, index); 6592 if (element.hasCodeElement()) 6593 composeEnum(t, "DocumentReference", "code", element.getCodeElement(), -1); 6594 if (element.hasTarget()) 6595 composeReference(t, "DocumentReference", "target", element.getTarget(), -1); 6596 } 6597 6598 protected void composeDocumentReferenceDocumentReferenceContentComponent(Complex parent, String parentType, 6599 String name, DocumentReference.DocumentReferenceContentComponent element, int index) { 6600 if (element == null) 6601 return; 6602 Complex t; 6603 if (Utilities.noString(parentType)) 6604 t = parent; 6605 else { 6606 t = parent.predicate("fhir:" + parentType + '.' + name); 6607 } 6608 composeBackboneElement(t, "content", name, element, index); 6609 if (element.hasAttachment()) 6610 composeAttachment(t, "DocumentReference", "attachment", element.getAttachment(), -1); 6611 if (element.hasFormat()) 6612 composeCoding(t, "DocumentReference", "format", element.getFormat(), -1); 6613 } 6614 6615 protected void composeDocumentReferenceDocumentReferenceContextComponent(Complex parent, String parentType, 6616 String name, DocumentReference.DocumentReferenceContextComponent element, int index) { 6617 if (element == null) 6618 return; 6619 Complex t; 6620 if (Utilities.noString(parentType)) 6621 t = parent; 6622 else { 6623 t = parent.predicate("fhir:" + parentType + '.' + name); 6624 } 6625 composeBackboneElement(t, "context", name, element, index); 6626 for (int i = 0; i < element.getEncounter().size(); i++) 6627 composeReference(t, "DocumentReference", "encounter", element.getEncounter().get(i), i); 6628 for (int i = 0; i < element.getEvent().size(); i++) 6629 composeCodeableConcept(t, "DocumentReference", "event", element.getEvent().get(i), i); 6630 if (element.hasPeriod()) 6631 composePeriod(t, "DocumentReference", "period", element.getPeriod(), -1); 6632 if (element.hasFacilityType()) 6633 composeCodeableConcept(t, "DocumentReference", "facilityType", element.getFacilityType(), -1); 6634 if (element.hasPracticeSetting()) 6635 composeCodeableConcept(t, "DocumentReference", "practiceSetting", element.getPracticeSetting(), -1); 6636 if (element.hasSourcePatientInfo()) 6637 composeReference(t, "DocumentReference", "sourcePatientInfo", element.getSourcePatientInfo(), -1); 6638 for (int i = 0; i < element.getRelated().size(); i++) 6639 composeReference(t, "DocumentReference", "related", element.getRelated().get(i), i); 6640 } 6641 6642 protected void composeEffectEvidenceSynthesis(Complex parent, String parentType, String name, 6643 EffectEvidenceSynthesis element, int index) { 6644 if (element == null) 6645 return; 6646 Complex t; 6647 if (Utilities.noString(parentType)) 6648 t = parent; 6649 else { 6650 t = parent.predicate("fhir:" + parentType + '.' + name); 6651 } 6652 composeDomainResource(t, "EffectEvidenceSynthesis", name, element, index); 6653 if (element.hasUrlElement()) 6654 composeUri(t, "EffectEvidenceSynthesis", "url", element.getUrlElement(), -1); 6655 for (int i = 0; i < element.getIdentifier().size(); i++) 6656 composeIdentifier(t, "EffectEvidenceSynthesis", "identifier", element.getIdentifier().get(i), i); 6657 if (element.hasVersionElement()) 6658 composeString(t, "EffectEvidenceSynthesis", "version", element.getVersionElement(), -1); 6659 if (element.hasNameElement()) 6660 composeString(t, "EffectEvidenceSynthesis", "name", element.getNameElement(), -1); 6661 if (element.hasTitleElement()) 6662 composeString(t, "EffectEvidenceSynthesis", "title", element.getTitleElement(), -1); 6663 if (element.hasStatusElement()) 6664 composeEnum(t, "EffectEvidenceSynthesis", "status", element.getStatusElement(), -1); 6665 if (element.hasDateElement()) 6666 composeDateTime(t, "EffectEvidenceSynthesis", "date", element.getDateElement(), -1); 6667 if (element.hasPublisherElement()) 6668 composeString(t, "EffectEvidenceSynthesis", "publisher", element.getPublisherElement(), -1); 6669 for (int i = 0; i < element.getContact().size(); i++) 6670 composeContactDetail(t, "EffectEvidenceSynthesis", "contact", element.getContact().get(i), i); 6671 if (element.hasDescriptionElement()) 6672 composeMarkdown(t, "EffectEvidenceSynthesis", "description", element.getDescriptionElement(), -1); 6673 for (int i = 0; i < element.getNote().size(); i++) 6674 composeAnnotation(t, "EffectEvidenceSynthesis", "note", element.getNote().get(i), i); 6675 for (int i = 0; i < element.getUseContext().size(); i++) 6676 composeUsageContext(t, "EffectEvidenceSynthesis", "useContext", element.getUseContext().get(i), i); 6677 for (int i = 0; i < element.getJurisdiction().size(); i++) 6678 composeCodeableConcept(t, "EffectEvidenceSynthesis", "jurisdiction", element.getJurisdiction().get(i), i); 6679 if (element.hasCopyrightElement()) 6680 composeMarkdown(t, "EffectEvidenceSynthesis", "copyright", element.getCopyrightElement(), -1); 6681 if (element.hasApprovalDateElement()) 6682 composeDate(t, "EffectEvidenceSynthesis", "approvalDate", element.getApprovalDateElement(), -1); 6683 if (element.hasLastReviewDateElement()) 6684 composeDate(t, "EffectEvidenceSynthesis", "lastReviewDate", element.getLastReviewDateElement(), -1); 6685 if (element.hasEffectivePeriod()) 6686 composePeriod(t, "EffectEvidenceSynthesis", "effectivePeriod", element.getEffectivePeriod(), -1); 6687 for (int i = 0; i < element.getTopic().size(); i++) 6688 composeCodeableConcept(t, "EffectEvidenceSynthesis", "topic", element.getTopic().get(i), i); 6689 for (int i = 0; i < element.getAuthor().size(); i++) 6690 composeContactDetail(t, "EffectEvidenceSynthesis", "author", element.getAuthor().get(i), i); 6691 for (int i = 0; i < element.getEditor().size(); i++) 6692 composeContactDetail(t, "EffectEvidenceSynthesis", "editor", element.getEditor().get(i), i); 6693 for (int i = 0; i < element.getReviewer().size(); i++) 6694 composeContactDetail(t, "EffectEvidenceSynthesis", "reviewer", element.getReviewer().get(i), i); 6695 for (int i = 0; i < element.getEndorser().size(); i++) 6696 composeContactDetail(t, "EffectEvidenceSynthesis", "endorser", element.getEndorser().get(i), i); 6697 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 6698 composeRelatedArtifact(t, "EffectEvidenceSynthesis", "relatedArtifact", element.getRelatedArtifact().get(i), i); 6699 if (element.hasSynthesisType()) 6700 composeCodeableConcept(t, "EffectEvidenceSynthesis", "synthesisType", element.getSynthesisType(), -1); 6701 if (element.hasStudyType()) 6702 composeCodeableConcept(t, "EffectEvidenceSynthesis", "studyType", element.getStudyType(), -1); 6703 if (element.hasPopulation()) 6704 composeReference(t, "EffectEvidenceSynthesis", "population", element.getPopulation(), -1); 6705 if (element.hasExposure()) 6706 composeReference(t, "EffectEvidenceSynthesis", "exposure", element.getExposure(), -1); 6707 if (element.hasExposureAlternative()) 6708 composeReference(t, "EffectEvidenceSynthesis", "exposureAlternative", element.getExposureAlternative(), -1); 6709 if (element.hasOutcome()) 6710 composeReference(t, "EffectEvidenceSynthesis", "outcome", element.getOutcome(), -1); 6711 if (element.hasSampleSize()) 6712 composeEffectEvidenceSynthesisEffectEvidenceSynthesisSampleSizeComponent(t, "EffectEvidenceSynthesis", 6713 "sampleSize", element.getSampleSize(), -1); 6714 for (int i = 0; i < element.getResultsByExposure().size(); i++) 6715 composeEffectEvidenceSynthesisEffectEvidenceSynthesisResultsByExposureComponent(t, "EffectEvidenceSynthesis", 6716 "resultsByExposure", element.getResultsByExposure().get(i), i); 6717 for (int i = 0; i < element.getEffectEstimate().size(); i++) 6718 composeEffectEvidenceSynthesisEffectEvidenceSynthesisEffectEstimateComponent(t, "EffectEvidenceSynthesis", 6719 "effectEstimate", element.getEffectEstimate().get(i), i); 6720 for (int i = 0; i < element.getCertainty().size(); i++) 6721 composeEffectEvidenceSynthesisEffectEvidenceSynthesisCertaintyComponent(t, "EffectEvidenceSynthesis", "certainty", 6722 element.getCertainty().get(i), i); 6723 } 6724 6725 protected void composeEffectEvidenceSynthesisEffectEvidenceSynthesisSampleSizeComponent(Complex parent, 6726 String parentType, String name, EffectEvidenceSynthesis.EffectEvidenceSynthesisSampleSizeComponent element, 6727 int index) { 6728 if (element == null) 6729 return; 6730 Complex t; 6731 if (Utilities.noString(parentType)) 6732 t = parent; 6733 else { 6734 t = parent.predicate("fhir:" + parentType + '.' + name); 6735 } 6736 composeBackboneElement(t, "sampleSize", name, element, index); 6737 if (element.hasDescriptionElement()) 6738 composeString(t, "EffectEvidenceSynthesis", "description", element.getDescriptionElement(), -1); 6739 if (element.hasNumberOfStudiesElement()) 6740 composeInteger(t, "EffectEvidenceSynthesis", "numberOfStudies", element.getNumberOfStudiesElement(), -1); 6741 if (element.hasNumberOfParticipantsElement()) 6742 composeInteger(t, "EffectEvidenceSynthesis", "numberOfParticipants", element.getNumberOfParticipantsElement(), 6743 -1); 6744 } 6745 6746 protected void composeEffectEvidenceSynthesisEffectEvidenceSynthesisResultsByExposureComponent(Complex parent, 6747 String parentType, String name, EffectEvidenceSynthesis.EffectEvidenceSynthesisResultsByExposureComponent element, 6748 int index) { 6749 if (element == null) 6750 return; 6751 Complex t; 6752 if (Utilities.noString(parentType)) 6753 t = parent; 6754 else { 6755 t = parent.predicate("fhir:" + parentType + '.' + name); 6756 } 6757 composeBackboneElement(t, "resultsByExposure", name, element, index); 6758 if (element.hasDescriptionElement()) 6759 composeString(t, "EffectEvidenceSynthesis", "description", element.getDescriptionElement(), -1); 6760 if (element.hasExposureStateElement()) 6761 composeEnum(t, "EffectEvidenceSynthesis", "exposureState", element.getExposureStateElement(), -1); 6762 if (element.hasVariantState()) 6763 composeCodeableConcept(t, "EffectEvidenceSynthesis", "variantState", element.getVariantState(), -1); 6764 if (element.hasRiskEvidenceSynthesis()) 6765 composeReference(t, "EffectEvidenceSynthesis", "riskEvidenceSynthesis", element.getRiskEvidenceSynthesis(), -1); 6766 } 6767 6768 protected void composeEffectEvidenceSynthesisEffectEvidenceSynthesisEffectEstimateComponent(Complex parent, 6769 String parentType, String name, EffectEvidenceSynthesis.EffectEvidenceSynthesisEffectEstimateComponent element, 6770 int index) { 6771 if (element == null) 6772 return; 6773 Complex t; 6774 if (Utilities.noString(parentType)) 6775 t = parent; 6776 else { 6777 t = parent.predicate("fhir:" + parentType + '.' + name); 6778 } 6779 composeBackboneElement(t, "effectEstimate", name, element, index); 6780 if (element.hasDescriptionElement()) 6781 composeString(t, "EffectEvidenceSynthesis", "description", element.getDescriptionElement(), -1); 6782 if (element.hasType()) 6783 composeCodeableConcept(t, "EffectEvidenceSynthesis", "type", element.getType(), -1); 6784 if (element.hasVariantState()) 6785 composeCodeableConcept(t, "EffectEvidenceSynthesis", "variantState", element.getVariantState(), -1); 6786 if (element.hasValueElement()) 6787 composeDecimal(t, "EffectEvidenceSynthesis", "value", element.getValueElement(), -1); 6788 if (element.hasUnitOfMeasure()) 6789 composeCodeableConcept(t, "EffectEvidenceSynthesis", "unitOfMeasure", element.getUnitOfMeasure(), -1); 6790 for (int i = 0; i < element.getPrecisionEstimate().size(); i++) 6791 composeEffectEvidenceSynthesisEffectEvidenceSynthesisEffectEstimatePrecisionEstimateComponent(t, 6792 "EffectEvidenceSynthesis", "precisionEstimate", element.getPrecisionEstimate().get(i), i); 6793 } 6794 6795 protected void composeEffectEvidenceSynthesisEffectEvidenceSynthesisEffectEstimatePrecisionEstimateComponent( 6796 Complex parent, String parentType, String name, 6797 EffectEvidenceSynthesis.EffectEvidenceSynthesisEffectEstimatePrecisionEstimateComponent element, int index) { 6798 if (element == null) 6799 return; 6800 Complex t; 6801 if (Utilities.noString(parentType)) 6802 t = parent; 6803 else { 6804 t = parent.predicate("fhir:" + parentType + '.' + name); 6805 } 6806 composeBackboneElement(t, "precisionEstimate", name, element, index); 6807 if (element.hasType()) 6808 composeCodeableConcept(t, "EffectEvidenceSynthesis", "type", element.getType(), -1); 6809 if (element.hasLevelElement()) 6810 composeDecimal(t, "EffectEvidenceSynthesis", "level", element.getLevelElement(), -1); 6811 if (element.hasFromElement()) 6812 composeDecimal(t, "EffectEvidenceSynthesis", "from", element.getFromElement(), -1); 6813 if (element.hasToElement()) 6814 composeDecimal(t, "EffectEvidenceSynthesis", "to", element.getToElement(), -1); 6815 } 6816 6817 protected void composeEffectEvidenceSynthesisEffectEvidenceSynthesisCertaintyComponent(Complex parent, 6818 String parentType, String name, EffectEvidenceSynthesis.EffectEvidenceSynthesisCertaintyComponent element, 6819 int index) { 6820 if (element == null) 6821 return; 6822 Complex t; 6823 if (Utilities.noString(parentType)) 6824 t = parent; 6825 else { 6826 t = parent.predicate("fhir:" + parentType + '.' + name); 6827 } 6828 composeBackboneElement(t, "certainty", name, element, index); 6829 for (int i = 0; i < element.getRating().size(); i++) 6830 composeCodeableConcept(t, "EffectEvidenceSynthesis", "rating", element.getRating().get(i), i); 6831 for (int i = 0; i < element.getNote().size(); i++) 6832 composeAnnotation(t, "EffectEvidenceSynthesis", "note", element.getNote().get(i), i); 6833 for (int i = 0; i < element.getCertaintySubcomponent().size(); i++) 6834 composeEffectEvidenceSynthesisEffectEvidenceSynthesisCertaintyCertaintySubcomponentComponent(t, 6835 "EffectEvidenceSynthesis", "certaintySubcomponent", element.getCertaintySubcomponent().get(i), i); 6836 } 6837 6838 protected void composeEffectEvidenceSynthesisEffectEvidenceSynthesisCertaintyCertaintySubcomponentComponent( 6839 Complex parent, String parentType, String name, 6840 EffectEvidenceSynthesis.EffectEvidenceSynthesisCertaintyCertaintySubcomponentComponent element, int index) { 6841 if (element == null) 6842 return; 6843 Complex t; 6844 if (Utilities.noString(parentType)) 6845 t = parent; 6846 else { 6847 t = parent.predicate("fhir:" + parentType + '.' + name); 6848 } 6849 composeBackboneElement(t, "certaintySubcomponent", name, element, index); 6850 if (element.hasType()) 6851 composeCodeableConcept(t, "EffectEvidenceSynthesis", "type", element.getType(), -1); 6852 for (int i = 0; i < element.getRating().size(); i++) 6853 composeCodeableConcept(t, "EffectEvidenceSynthesis", "rating", element.getRating().get(i), i); 6854 for (int i = 0; i < element.getNote().size(); i++) 6855 composeAnnotation(t, "EffectEvidenceSynthesis", "note", element.getNote().get(i), i); 6856 } 6857 6858 protected void composeEncounter(Complex parent, String parentType, String name, Encounter element, int index) { 6859 if (element == null) 6860 return; 6861 Complex t; 6862 if (Utilities.noString(parentType)) 6863 t = parent; 6864 else { 6865 t = parent.predicate("fhir:" + parentType + '.' + name); 6866 } 6867 composeDomainResource(t, "Encounter", name, element, index); 6868 for (int i = 0; i < element.getIdentifier().size(); i++) 6869 composeIdentifier(t, "Encounter", "identifier", element.getIdentifier().get(i), i); 6870 if (element.hasStatusElement()) 6871 composeEnum(t, "Encounter", "status", element.getStatusElement(), -1); 6872 for (int i = 0; i < element.getStatusHistory().size(); i++) 6873 composeEncounterStatusHistoryComponent(t, "Encounter", "statusHistory", element.getStatusHistory().get(i), i); 6874 if (element.hasClass_()) 6875 composeCoding(t, "Encounter", "class", element.getClass_(), -1); 6876 for (int i = 0; i < element.getClassHistory().size(); i++) 6877 composeEncounterClassHistoryComponent(t, "Encounter", "classHistory", element.getClassHistory().get(i), i); 6878 for (int i = 0; i < element.getType().size(); i++) 6879 composeCodeableConcept(t, "Encounter", "type", element.getType().get(i), i); 6880 if (element.hasServiceType()) 6881 composeCodeableConcept(t, "Encounter", "serviceType", element.getServiceType(), -1); 6882 if (element.hasPriority()) 6883 composeCodeableConcept(t, "Encounter", "priority", element.getPriority(), -1); 6884 if (element.hasSubject()) 6885 composeReference(t, "Encounter", "subject", element.getSubject(), -1); 6886 for (int i = 0; i < element.getEpisodeOfCare().size(); i++) 6887 composeReference(t, "Encounter", "episodeOfCare", element.getEpisodeOfCare().get(i), i); 6888 for (int i = 0; i < element.getBasedOn().size(); i++) 6889 composeReference(t, "Encounter", "basedOn", element.getBasedOn().get(i), i); 6890 for (int i = 0; i < element.getParticipant().size(); i++) 6891 composeEncounterEncounterParticipantComponent(t, "Encounter", "participant", element.getParticipant().get(i), i); 6892 for (int i = 0; i < element.getAppointment().size(); i++) 6893 composeReference(t, "Encounter", "appointment", element.getAppointment().get(i), i); 6894 if (element.hasPeriod()) 6895 composePeriod(t, "Encounter", "period", element.getPeriod(), -1); 6896 if (element.hasLength()) 6897 composeDuration(t, "Encounter", "length", element.getLength(), -1); 6898 for (int i = 0; i < element.getReasonCode().size(); i++) 6899 composeCodeableConcept(t, "Encounter", "reasonCode", element.getReasonCode().get(i), i); 6900 for (int i = 0; i < element.getReasonReference().size(); i++) 6901 composeReference(t, "Encounter", "reasonReference", element.getReasonReference().get(i), i); 6902 for (int i = 0; i < element.getDiagnosis().size(); i++) 6903 composeEncounterDiagnosisComponent(t, "Encounter", "diagnosis", element.getDiagnosis().get(i), i); 6904 for (int i = 0; i < element.getAccount().size(); i++) 6905 composeReference(t, "Encounter", "account", element.getAccount().get(i), i); 6906 if (element.hasHospitalization()) 6907 composeEncounterEncounterHospitalizationComponent(t, "Encounter", "hospitalization", element.getHospitalization(), 6908 -1); 6909 for (int i = 0; i < element.getLocation().size(); i++) 6910 composeEncounterEncounterLocationComponent(t, "Encounter", "location", element.getLocation().get(i), i); 6911 if (element.hasServiceProvider()) 6912 composeReference(t, "Encounter", "serviceProvider", element.getServiceProvider(), -1); 6913 if (element.hasPartOf()) 6914 composeReference(t, "Encounter", "partOf", element.getPartOf(), -1); 6915 } 6916 6917 protected void composeEncounterStatusHistoryComponent(Complex parent, String parentType, String name, 6918 Encounter.StatusHistoryComponent element, int index) { 6919 if (element == null) 6920 return; 6921 Complex t; 6922 if (Utilities.noString(parentType)) 6923 t = parent; 6924 else { 6925 t = parent.predicate("fhir:" + parentType + '.' + name); 6926 } 6927 composeBackboneElement(t, "statusHistory", name, element, index); 6928 if (element.hasStatusElement()) 6929 composeEnum(t, "Encounter", "status", element.getStatusElement(), -1); 6930 if (element.hasPeriod()) 6931 composePeriod(t, "Encounter", "period", element.getPeriod(), -1); 6932 } 6933 6934 protected void composeEncounterClassHistoryComponent(Complex parent, String parentType, String name, 6935 Encounter.ClassHistoryComponent element, int index) { 6936 if (element == null) 6937 return; 6938 Complex t; 6939 if (Utilities.noString(parentType)) 6940 t = parent; 6941 else { 6942 t = parent.predicate("fhir:" + parentType + '.' + name); 6943 } 6944 composeBackboneElement(t, "classHistory", name, element, index); 6945 if (element.hasClass_()) 6946 composeCoding(t, "Encounter", "class", element.getClass_(), -1); 6947 if (element.hasPeriod()) 6948 composePeriod(t, "Encounter", "period", element.getPeriod(), -1); 6949 } 6950 6951 protected void composeEncounterEncounterParticipantComponent(Complex parent, String parentType, String name, 6952 Encounter.EncounterParticipantComponent element, int index) { 6953 if (element == null) 6954 return; 6955 Complex t; 6956 if (Utilities.noString(parentType)) 6957 t = parent; 6958 else { 6959 t = parent.predicate("fhir:" + parentType + '.' + name); 6960 } 6961 composeBackboneElement(t, "participant", name, element, index); 6962 for (int i = 0; i < element.getType().size(); i++) 6963 composeCodeableConcept(t, "Encounter", "type", element.getType().get(i), i); 6964 if (element.hasPeriod()) 6965 composePeriod(t, "Encounter", "period", element.getPeriod(), -1); 6966 if (element.hasIndividual()) 6967 composeReference(t, "Encounter", "individual", element.getIndividual(), -1); 6968 } 6969 6970 protected void composeEncounterDiagnosisComponent(Complex parent, String parentType, String name, 6971 Encounter.DiagnosisComponent element, int index) { 6972 if (element == null) 6973 return; 6974 Complex t; 6975 if (Utilities.noString(parentType)) 6976 t = parent; 6977 else { 6978 t = parent.predicate("fhir:" + parentType + '.' + name); 6979 } 6980 composeBackboneElement(t, "diagnosis", name, element, index); 6981 if (element.hasCondition()) 6982 composeReference(t, "Encounter", "condition", element.getCondition(), -1); 6983 if (element.hasUse()) 6984 composeCodeableConcept(t, "Encounter", "use", element.getUse(), -1); 6985 if (element.hasRankElement()) 6986 composePositiveInt(t, "Encounter", "rank", element.getRankElement(), -1); 6987 } 6988 6989 protected void composeEncounterEncounterHospitalizationComponent(Complex parent, String parentType, String name, 6990 Encounter.EncounterHospitalizationComponent element, int index) { 6991 if (element == null) 6992 return; 6993 Complex t; 6994 if (Utilities.noString(parentType)) 6995 t = parent; 6996 else { 6997 t = parent.predicate("fhir:" + parentType + '.' + name); 6998 } 6999 composeBackboneElement(t, "hospitalization", name, element, index); 7000 if (element.hasPreAdmissionIdentifier()) 7001 composeIdentifier(t, "Encounter", "preAdmissionIdentifier", element.getPreAdmissionIdentifier(), -1); 7002 if (element.hasOrigin()) 7003 composeReference(t, "Encounter", "origin", element.getOrigin(), -1); 7004 if (element.hasAdmitSource()) 7005 composeCodeableConcept(t, "Encounter", "admitSource", element.getAdmitSource(), -1); 7006 if (element.hasReAdmission()) 7007 composeCodeableConcept(t, "Encounter", "reAdmission", element.getReAdmission(), -1); 7008 for (int i = 0; i < element.getDietPreference().size(); i++) 7009 composeCodeableConcept(t, "Encounter", "dietPreference", element.getDietPreference().get(i), i); 7010 for (int i = 0; i < element.getSpecialCourtesy().size(); i++) 7011 composeCodeableConcept(t, "Encounter", "specialCourtesy", element.getSpecialCourtesy().get(i), i); 7012 for (int i = 0; i < element.getSpecialArrangement().size(); i++) 7013 composeCodeableConcept(t, "Encounter", "specialArrangement", element.getSpecialArrangement().get(i), i); 7014 if (element.hasDestination()) 7015 composeReference(t, "Encounter", "destination", element.getDestination(), -1); 7016 if (element.hasDischargeDisposition()) 7017 composeCodeableConcept(t, "Encounter", "dischargeDisposition", element.getDischargeDisposition(), -1); 7018 } 7019 7020 protected void composeEncounterEncounterLocationComponent(Complex parent, String parentType, String name, 7021 Encounter.EncounterLocationComponent element, int index) { 7022 if (element == null) 7023 return; 7024 Complex t; 7025 if (Utilities.noString(parentType)) 7026 t = parent; 7027 else { 7028 t = parent.predicate("fhir:" + parentType + '.' + name); 7029 } 7030 composeBackboneElement(t, "location", name, element, index); 7031 if (element.hasLocation()) 7032 composeReference(t, "Encounter", "location", element.getLocation(), -1); 7033 if (element.hasStatusElement()) 7034 composeEnum(t, "Encounter", "status", element.getStatusElement(), -1); 7035 if (element.hasPhysicalType()) 7036 composeCodeableConcept(t, "Encounter", "physicalType", element.getPhysicalType(), -1); 7037 if (element.hasPeriod()) 7038 composePeriod(t, "Encounter", "period", element.getPeriod(), -1); 7039 } 7040 7041 protected void composeEndpoint(Complex parent, String parentType, String name, Endpoint element, int index) { 7042 if (element == null) 7043 return; 7044 Complex t; 7045 if (Utilities.noString(parentType)) 7046 t = parent; 7047 else { 7048 t = parent.predicate("fhir:" + parentType + '.' + name); 7049 } 7050 composeDomainResource(t, "Endpoint", name, element, index); 7051 for (int i = 0; i < element.getIdentifier().size(); i++) 7052 composeIdentifier(t, "Endpoint", "identifier", element.getIdentifier().get(i), i); 7053 if (element.hasStatusElement()) 7054 composeEnum(t, "Endpoint", "status", element.getStatusElement(), -1); 7055 if (element.hasConnectionType()) 7056 composeCoding(t, "Endpoint", "connectionType", element.getConnectionType(), -1); 7057 if (element.hasNameElement()) 7058 composeString(t, "Endpoint", "name", element.getNameElement(), -1); 7059 if (element.hasManagingOrganization()) 7060 composeReference(t, "Endpoint", "managingOrganization", element.getManagingOrganization(), -1); 7061 for (int i = 0; i < element.getContact().size(); i++) 7062 composeContactPoint(t, "Endpoint", "contact", element.getContact().get(i), i); 7063 if (element.hasPeriod()) 7064 composePeriod(t, "Endpoint", "period", element.getPeriod(), -1); 7065 for (int i = 0; i < element.getPayloadType().size(); i++) 7066 composeCodeableConcept(t, "Endpoint", "payloadType", element.getPayloadType().get(i), i); 7067 for (int i = 0; i < element.getPayloadMimeType().size(); i++) 7068 composeCode(t, "Endpoint", "payloadMimeType", element.getPayloadMimeType().get(i), i); 7069 if (element.hasAddressElement()) 7070 composeUrl(t, "Endpoint", "address", element.getAddressElement(), -1); 7071 for (int i = 0; i < element.getHeader().size(); i++) 7072 composeString(t, "Endpoint", "header", element.getHeader().get(i), i); 7073 } 7074 7075 protected void composeEnrollmentRequest(Complex parent, String parentType, String name, EnrollmentRequest element, 7076 int index) { 7077 if (element == null) 7078 return; 7079 Complex t; 7080 if (Utilities.noString(parentType)) 7081 t = parent; 7082 else { 7083 t = parent.predicate("fhir:" + parentType + '.' + name); 7084 } 7085 composeDomainResource(t, "EnrollmentRequest", name, element, index); 7086 for (int i = 0; i < element.getIdentifier().size(); i++) 7087 composeIdentifier(t, "EnrollmentRequest", "identifier", element.getIdentifier().get(i), i); 7088 if (element.hasStatusElement()) 7089 composeEnum(t, "EnrollmentRequest", "status", element.getStatusElement(), -1); 7090 if (element.hasCreatedElement()) 7091 composeDateTime(t, "EnrollmentRequest", "created", element.getCreatedElement(), -1); 7092 if (element.hasInsurer()) 7093 composeReference(t, "EnrollmentRequest", "insurer", element.getInsurer(), -1); 7094 if (element.hasProvider()) 7095 composeReference(t, "EnrollmentRequest", "provider", element.getProvider(), -1); 7096 if (element.hasCandidate()) 7097 composeReference(t, "EnrollmentRequest", "candidate", element.getCandidate(), -1); 7098 if (element.hasCoverage()) 7099 composeReference(t, "EnrollmentRequest", "coverage", element.getCoverage(), -1); 7100 } 7101 7102 protected void composeEnrollmentResponse(Complex parent, String parentType, String name, EnrollmentResponse element, 7103 int index) { 7104 if (element == null) 7105 return; 7106 Complex t; 7107 if (Utilities.noString(parentType)) 7108 t = parent; 7109 else { 7110 t = parent.predicate("fhir:" + parentType + '.' + name); 7111 } 7112 composeDomainResource(t, "EnrollmentResponse", name, element, index); 7113 for (int i = 0; i < element.getIdentifier().size(); i++) 7114 composeIdentifier(t, "EnrollmentResponse", "identifier", element.getIdentifier().get(i), i); 7115 if (element.hasStatusElement()) 7116 composeEnum(t, "EnrollmentResponse", "status", element.getStatusElement(), -1); 7117 if (element.hasRequest()) 7118 composeReference(t, "EnrollmentResponse", "request", element.getRequest(), -1); 7119 if (element.hasOutcomeElement()) 7120 composeEnum(t, "EnrollmentResponse", "outcome", element.getOutcomeElement(), -1); 7121 if (element.hasDispositionElement()) 7122 composeString(t, "EnrollmentResponse", "disposition", element.getDispositionElement(), -1); 7123 if (element.hasCreatedElement()) 7124 composeDateTime(t, "EnrollmentResponse", "created", element.getCreatedElement(), -1); 7125 if (element.hasOrganization()) 7126 composeReference(t, "EnrollmentResponse", "organization", element.getOrganization(), -1); 7127 if (element.hasRequestProvider()) 7128 composeReference(t, "EnrollmentResponse", "requestProvider", element.getRequestProvider(), -1); 7129 } 7130 7131 protected void composeEpisodeOfCare(Complex parent, String parentType, String name, EpisodeOfCare element, 7132 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:" + parentType + '.' + name); 7140 } 7141 composeDomainResource(t, "EpisodeOfCare", name, element, index); 7142 for (int i = 0; i < element.getIdentifier().size(); i++) 7143 composeIdentifier(t, "EpisodeOfCare", "identifier", element.getIdentifier().get(i), i); 7144 if (element.hasStatusElement()) 7145 composeEnum(t, "EpisodeOfCare", "status", element.getStatusElement(), -1); 7146 for (int i = 0; i < element.getStatusHistory().size(); i++) 7147 composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent(t, "EpisodeOfCare", "statusHistory", 7148 element.getStatusHistory().get(i), i); 7149 for (int i = 0; i < element.getType().size(); i++) 7150 composeCodeableConcept(t, "EpisodeOfCare", "type", element.getType().get(i), i); 7151 for (int i = 0; i < element.getDiagnosis().size(); i++) 7152 composeEpisodeOfCareDiagnosisComponent(t, "EpisodeOfCare", "diagnosis", element.getDiagnosis().get(i), i); 7153 if (element.hasPatient()) 7154 composeReference(t, "EpisodeOfCare", "patient", element.getPatient(), -1); 7155 if (element.hasManagingOrganization()) 7156 composeReference(t, "EpisodeOfCare", "managingOrganization", element.getManagingOrganization(), -1); 7157 if (element.hasPeriod()) 7158 composePeriod(t, "EpisodeOfCare", "period", element.getPeriod(), -1); 7159 for (int i = 0; i < element.getReferralRequest().size(); i++) 7160 composeReference(t, "EpisodeOfCare", "referralRequest", element.getReferralRequest().get(i), i); 7161 if (element.hasCareManager()) 7162 composeReference(t, "EpisodeOfCare", "careManager", element.getCareManager(), -1); 7163 for (int i = 0; i < element.getTeam().size(); i++) 7164 composeReference(t, "EpisodeOfCare", "team", element.getTeam().get(i), i); 7165 for (int i = 0; i < element.getAccount().size(); i++) 7166 composeReference(t, "EpisodeOfCare", "account", element.getAccount().get(i), i); 7167 } 7168 7169 protected void composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent(Complex parent, String parentType, String name, 7170 EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element, int index) { 7171 if (element == null) 7172 return; 7173 Complex t; 7174 if (Utilities.noString(parentType)) 7175 t = parent; 7176 else { 7177 t = parent.predicate("fhir:" + parentType + '.' + name); 7178 } 7179 composeBackboneElement(t, "statusHistory", name, element, index); 7180 if (element.hasStatusElement()) 7181 composeEnum(t, "EpisodeOfCare", "status", element.getStatusElement(), -1); 7182 if (element.hasPeriod()) 7183 composePeriod(t, "EpisodeOfCare", "period", element.getPeriod(), -1); 7184 } 7185 7186 protected void composeEpisodeOfCareDiagnosisComponent(Complex parent, String parentType, String name, 7187 EpisodeOfCare.DiagnosisComponent element, int index) { 7188 if (element == null) 7189 return; 7190 Complex t; 7191 if (Utilities.noString(parentType)) 7192 t = parent; 7193 else { 7194 t = parent.predicate("fhir:" + parentType + '.' + name); 7195 } 7196 composeBackboneElement(t, "diagnosis", name, element, index); 7197 if (element.hasCondition()) 7198 composeReference(t, "EpisodeOfCare", "condition", element.getCondition(), -1); 7199 if (element.hasRole()) 7200 composeCodeableConcept(t, "EpisodeOfCare", "role", element.getRole(), -1); 7201 if (element.hasRankElement()) 7202 composePositiveInt(t, "EpisodeOfCare", "rank", element.getRankElement(), -1); 7203 } 7204 7205 protected void composeEventDefinition(Complex parent, String parentType, String name, EventDefinition element, 7206 int index) { 7207 if (element == null) 7208 return; 7209 Complex t; 7210 if (Utilities.noString(parentType)) 7211 t = parent; 7212 else { 7213 t = parent.predicate("fhir:" + parentType + '.' + name); 7214 } 7215 composeDomainResource(t, "EventDefinition", name, element, index); 7216 if (element.hasUrlElement()) 7217 composeUri(t, "EventDefinition", "url", element.getUrlElement(), -1); 7218 for (int i = 0; i < element.getIdentifier().size(); i++) 7219 composeIdentifier(t, "EventDefinition", "identifier", element.getIdentifier().get(i), i); 7220 if (element.hasVersionElement()) 7221 composeString(t, "EventDefinition", "version", element.getVersionElement(), -1); 7222 if (element.hasNameElement()) 7223 composeString(t, "EventDefinition", "name", element.getNameElement(), -1); 7224 if (element.hasTitleElement()) 7225 composeString(t, "EventDefinition", "title", element.getTitleElement(), -1); 7226 if (element.hasSubtitleElement()) 7227 composeString(t, "EventDefinition", "subtitle", element.getSubtitleElement(), -1); 7228 if (element.hasStatusElement()) 7229 composeEnum(t, "EventDefinition", "status", element.getStatusElement(), -1); 7230 if (element.hasExperimentalElement()) 7231 composeBoolean(t, "EventDefinition", "experimental", element.getExperimentalElement(), -1); 7232 if (element.hasSubject()) 7233 composeType(t, "EventDefinition", "subject", element.getSubject(), -1); 7234 if (element.hasDateElement()) 7235 composeDateTime(t, "EventDefinition", "date", element.getDateElement(), -1); 7236 if (element.hasPublisherElement()) 7237 composeString(t, "EventDefinition", "publisher", element.getPublisherElement(), -1); 7238 for (int i = 0; i < element.getContact().size(); i++) 7239 composeContactDetail(t, "EventDefinition", "contact", element.getContact().get(i), i); 7240 if (element.hasDescriptionElement()) 7241 composeMarkdown(t, "EventDefinition", "description", element.getDescriptionElement(), -1); 7242 for (int i = 0; i < element.getUseContext().size(); i++) 7243 composeUsageContext(t, "EventDefinition", "useContext", element.getUseContext().get(i), i); 7244 for (int i = 0; i < element.getJurisdiction().size(); i++) 7245 composeCodeableConcept(t, "EventDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 7246 if (element.hasPurposeElement()) 7247 composeMarkdown(t, "EventDefinition", "purpose", element.getPurposeElement(), -1); 7248 if (element.hasUsageElement()) 7249 composeString(t, "EventDefinition", "usage", element.getUsageElement(), -1); 7250 if (element.hasCopyrightElement()) 7251 composeMarkdown(t, "EventDefinition", "copyright", element.getCopyrightElement(), -1); 7252 if (element.hasApprovalDateElement()) 7253 composeDate(t, "EventDefinition", "approvalDate", element.getApprovalDateElement(), -1); 7254 if (element.hasLastReviewDateElement()) 7255 composeDate(t, "EventDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 7256 if (element.hasEffectivePeriod()) 7257 composePeriod(t, "EventDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 7258 for (int i = 0; i < element.getTopic().size(); i++) 7259 composeCodeableConcept(t, "EventDefinition", "topic", element.getTopic().get(i), i); 7260 for (int i = 0; i < element.getAuthor().size(); i++) 7261 composeContactDetail(t, "EventDefinition", "author", element.getAuthor().get(i), i); 7262 for (int i = 0; i < element.getEditor().size(); i++) 7263 composeContactDetail(t, "EventDefinition", "editor", element.getEditor().get(i), i); 7264 for (int i = 0; i < element.getReviewer().size(); i++) 7265 composeContactDetail(t, "EventDefinition", "reviewer", element.getReviewer().get(i), i); 7266 for (int i = 0; i < element.getEndorser().size(); i++) 7267 composeContactDetail(t, "EventDefinition", "endorser", element.getEndorser().get(i), i); 7268 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 7269 composeRelatedArtifact(t, "EventDefinition", "relatedArtifact", element.getRelatedArtifact().get(i), i); 7270 for (int i = 0; i < element.getTrigger().size(); i++) 7271 composeTriggerDefinition(t, "EventDefinition", "trigger", element.getTrigger().get(i), i); 7272 } 7273 7274 protected void composeEvidence(Complex parent, String parentType, String name, Evidence element, int index) { 7275 if (element == null) 7276 return; 7277 Complex t; 7278 if (Utilities.noString(parentType)) 7279 t = parent; 7280 else { 7281 t = parent.predicate("fhir:" + parentType + '.' + name); 7282 } 7283 composeDomainResource(t, "Evidence", name, element, index); 7284 if (element.hasUrlElement()) 7285 composeUri(t, "Evidence", "url", element.getUrlElement(), -1); 7286 for (int i = 0; i < element.getIdentifier().size(); i++) 7287 composeIdentifier(t, "Evidence", "identifier", element.getIdentifier().get(i), i); 7288 if (element.hasVersionElement()) 7289 composeString(t, "Evidence", "version", element.getVersionElement(), -1); 7290 if (element.hasNameElement()) 7291 composeString(t, "Evidence", "name", element.getNameElement(), -1); 7292 if (element.hasTitleElement()) 7293 composeString(t, "Evidence", "title", element.getTitleElement(), -1); 7294 if (element.hasShortTitleElement()) 7295 composeString(t, "Evidence", "shortTitle", element.getShortTitleElement(), -1); 7296 if (element.hasSubtitleElement()) 7297 composeString(t, "Evidence", "subtitle", element.getSubtitleElement(), -1); 7298 if (element.hasStatusElement()) 7299 composeEnum(t, "Evidence", "status", element.getStatusElement(), -1); 7300 if (element.hasDateElement()) 7301 composeDateTime(t, "Evidence", "date", element.getDateElement(), -1); 7302 if (element.hasPublisherElement()) 7303 composeString(t, "Evidence", "publisher", element.getPublisherElement(), -1); 7304 for (int i = 0; i < element.getContact().size(); i++) 7305 composeContactDetail(t, "Evidence", "contact", element.getContact().get(i), i); 7306 if (element.hasDescriptionElement()) 7307 composeMarkdown(t, "Evidence", "description", element.getDescriptionElement(), -1); 7308 for (int i = 0; i < element.getNote().size(); i++) 7309 composeAnnotation(t, "Evidence", "note", element.getNote().get(i), i); 7310 for (int i = 0; i < element.getUseContext().size(); i++) 7311 composeUsageContext(t, "Evidence", "useContext", element.getUseContext().get(i), i); 7312 for (int i = 0; i < element.getJurisdiction().size(); i++) 7313 composeCodeableConcept(t, "Evidence", "jurisdiction", element.getJurisdiction().get(i), i); 7314 if (element.hasCopyrightElement()) 7315 composeMarkdown(t, "Evidence", "copyright", element.getCopyrightElement(), -1); 7316 if (element.hasApprovalDateElement()) 7317 composeDate(t, "Evidence", "approvalDate", element.getApprovalDateElement(), -1); 7318 if (element.hasLastReviewDateElement()) 7319 composeDate(t, "Evidence", "lastReviewDate", element.getLastReviewDateElement(), -1); 7320 if (element.hasEffectivePeriod()) 7321 composePeriod(t, "Evidence", "effectivePeriod", element.getEffectivePeriod(), -1); 7322 for (int i = 0; i < element.getTopic().size(); i++) 7323 composeCodeableConcept(t, "Evidence", "topic", element.getTopic().get(i), i); 7324 for (int i = 0; i < element.getAuthor().size(); i++) 7325 composeContactDetail(t, "Evidence", "author", element.getAuthor().get(i), i); 7326 for (int i = 0; i < element.getEditor().size(); i++) 7327 composeContactDetail(t, "Evidence", "editor", element.getEditor().get(i), i); 7328 for (int i = 0; i < element.getReviewer().size(); i++) 7329 composeContactDetail(t, "Evidence", "reviewer", element.getReviewer().get(i), i); 7330 for (int i = 0; i < element.getEndorser().size(); i++) 7331 composeContactDetail(t, "Evidence", "endorser", element.getEndorser().get(i), i); 7332 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 7333 composeRelatedArtifact(t, "Evidence", "relatedArtifact", element.getRelatedArtifact().get(i), i); 7334 if (element.hasExposureBackground()) 7335 composeReference(t, "Evidence", "exposureBackground", element.getExposureBackground(), -1); 7336 for (int i = 0; i < element.getExposureVariant().size(); i++) 7337 composeReference(t, "Evidence", "exposureVariant", element.getExposureVariant().get(i), i); 7338 for (int i = 0; i < element.getOutcome().size(); i++) 7339 composeReference(t, "Evidence", "outcome", element.getOutcome().get(i), i); 7340 } 7341 7342 protected void composeEvidenceVariable(Complex parent, String parentType, String name, EvidenceVariable element, 7343 int index) { 7344 if (element == null) 7345 return; 7346 Complex t; 7347 if (Utilities.noString(parentType)) 7348 t = parent; 7349 else { 7350 t = parent.predicate("fhir:" + parentType + '.' + name); 7351 } 7352 composeDomainResource(t, "EvidenceVariable", name, element, index); 7353 if (element.hasUrlElement()) 7354 composeUri(t, "EvidenceVariable", "url", element.getUrlElement(), -1); 7355 for (int i = 0; i < element.getIdentifier().size(); i++) 7356 composeIdentifier(t, "EvidenceVariable", "identifier", element.getIdentifier().get(i), i); 7357 if (element.hasVersionElement()) 7358 composeString(t, "EvidenceVariable", "version", element.getVersionElement(), -1); 7359 if (element.hasNameElement()) 7360 composeString(t, "EvidenceVariable", "name", element.getNameElement(), -1); 7361 if (element.hasTitleElement()) 7362 composeString(t, "EvidenceVariable", "title", element.getTitleElement(), -1); 7363 if (element.hasShortTitleElement()) 7364 composeString(t, "EvidenceVariable", "shortTitle", element.getShortTitleElement(), -1); 7365 if (element.hasSubtitleElement()) 7366 composeString(t, "EvidenceVariable", "subtitle", element.getSubtitleElement(), -1); 7367 if (element.hasStatusElement()) 7368 composeEnum(t, "EvidenceVariable", "status", element.getStatusElement(), -1); 7369 if (element.hasDateElement()) 7370 composeDateTime(t, "EvidenceVariable", "date", element.getDateElement(), -1); 7371 if (element.hasPublisherElement()) 7372 composeString(t, "EvidenceVariable", "publisher", element.getPublisherElement(), -1); 7373 for (int i = 0; i < element.getContact().size(); i++) 7374 composeContactDetail(t, "EvidenceVariable", "contact", element.getContact().get(i), i); 7375 if (element.hasDescriptionElement()) 7376 composeMarkdown(t, "EvidenceVariable", "description", element.getDescriptionElement(), -1); 7377 for (int i = 0; i < element.getNote().size(); i++) 7378 composeAnnotation(t, "EvidenceVariable", "note", element.getNote().get(i), i); 7379 for (int i = 0; i < element.getUseContext().size(); i++) 7380 composeUsageContext(t, "EvidenceVariable", "useContext", element.getUseContext().get(i), i); 7381 for (int i = 0; i < element.getJurisdiction().size(); i++) 7382 composeCodeableConcept(t, "EvidenceVariable", "jurisdiction", element.getJurisdiction().get(i), i); 7383 if (element.hasCopyrightElement()) 7384 composeMarkdown(t, "EvidenceVariable", "copyright", element.getCopyrightElement(), -1); 7385 if (element.hasApprovalDateElement()) 7386 composeDate(t, "EvidenceVariable", "approvalDate", element.getApprovalDateElement(), -1); 7387 if (element.hasLastReviewDateElement()) 7388 composeDate(t, "EvidenceVariable", "lastReviewDate", element.getLastReviewDateElement(), -1); 7389 if (element.hasEffectivePeriod()) 7390 composePeriod(t, "EvidenceVariable", "effectivePeriod", element.getEffectivePeriod(), -1); 7391 for (int i = 0; i < element.getTopic().size(); i++) 7392 composeCodeableConcept(t, "EvidenceVariable", "topic", element.getTopic().get(i), i); 7393 for (int i = 0; i < element.getAuthor().size(); i++) 7394 composeContactDetail(t, "EvidenceVariable", "author", element.getAuthor().get(i), i); 7395 for (int i = 0; i < element.getEditor().size(); i++) 7396 composeContactDetail(t, "EvidenceVariable", "editor", element.getEditor().get(i), i); 7397 for (int i = 0; i < element.getReviewer().size(); i++) 7398 composeContactDetail(t, "EvidenceVariable", "reviewer", element.getReviewer().get(i), i); 7399 for (int i = 0; i < element.getEndorser().size(); i++) 7400 composeContactDetail(t, "EvidenceVariable", "endorser", element.getEndorser().get(i), i); 7401 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 7402 composeRelatedArtifact(t, "EvidenceVariable", "relatedArtifact", element.getRelatedArtifact().get(i), i); 7403 if (element.hasTypeElement()) 7404 composeEnum(t, "EvidenceVariable", "type", element.getTypeElement(), -1); 7405 for (int i = 0; i < element.getCharacteristic().size(); i++) 7406 composeEvidenceVariableEvidenceVariableCharacteristicComponent(t, "EvidenceVariable", "characteristic", 7407 element.getCharacteristic().get(i), i); 7408 } 7409 7410 protected void composeEvidenceVariableEvidenceVariableCharacteristicComponent(Complex parent, String parentType, 7411 String name, EvidenceVariable.EvidenceVariableCharacteristicComponent element, int index) { 7412 if (element == null) 7413 return; 7414 Complex t; 7415 if (Utilities.noString(parentType)) 7416 t = parent; 7417 else { 7418 t = parent.predicate("fhir:" + parentType + '.' + name); 7419 } 7420 composeBackboneElement(t, "characteristic", name, element, index); 7421 if (element.hasDescriptionElement()) 7422 composeString(t, "EvidenceVariable", "description", element.getDescriptionElement(), -1); 7423 if (element.hasDefinition()) 7424 composeType(t, "EvidenceVariable", "definition", element.getDefinition(), -1); 7425 for (int i = 0; i < element.getUsageContext().size(); i++) 7426 composeUsageContext(t, "EvidenceVariable", "usageContext", element.getUsageContext().get(i), i); 7427 if (element.hasExcludeElement()) 7428 composeBoolean(t, "EvidenceVariable", "exclude", element.getExcludeElement(), -1); 7429 if (element.hasParticipantEffective()) 7430 composeType(t, "EvidenceVariable", "participantEffective", element.getParticipantEffective(), -1); 7431 if (element.hasTimeFromStart()) 7432 composeDuration(t, "EvidenceVariable", "timeFromStart", element.getTimeFromStart(), -1); 7433 if (element.hasGroupMeasureElement()) 7434 composeEnum(t, "EvidenceVariable", "groupMeasure", element.getGroupMeasureElement(), -1); 7435 } 7436 7437 protected void composeExampleScenario(Complex parent, String parentType, String name, ExampleScenario element, 7438 int index) { 7439 if (element == null) 7440 return; 7441 Complex t; 7442 if (Utilities.noString(parentType)) 7443 t = parent; 7444 else { 7445 t = parent.predicate("fhir:" + parentType + '.' + name); 7446 } 7447 composeDomainResource(t, "ExampleScenario", name, element, index); 7448 if (element.hasUrlElement()) 7449 composeUri(t, "ExampleScenario", "url", element.getUrlElement(), -1); 7450 for (int i = 0; i < element.getIdentifier().size(); i++) 7451 composeIdentifier(t, "ExampleScenario", "identifier", element.getIdentifier().get(i), i); 7452 if (element.hasVersionElement()) 7453 composeString(t, "ExampleScenario", "version", element.getVersionElement(), -1); 7454 if (element.hasNameElement()) 7455 composeString(t, "ExampleScenario", "name", element.getNameElement(), -1); 7456 if (element.hasStatusElement()) 7457 composeEnum(t, "ExampleScenario", "status", element.getStatusElement(), -1); 7458 if (element.hasExperimentalElement()) 7459 composeBoolean(t, "ExampleScenario", "experimental", element.getExperimentalElement(), -1); 7460 if (element.hasDateElement()) 7461 composeDateTime(t, "ExampleScenario", "date", element.getDateElement(), -1); 7462 if (element.hasPublisherElement()) 7463 composeString(t, "ExampleScenario", "publisher", element.getPublisherElement(), -1); 7464 for (int i = 0; i < element.getContact().size(); i++) 7465 composeContactDetail(t, "ExampleScenario", "contact", element.getContact().get(i), i); 7466 for (int i = 0; i < element.getUseContext().size(); i++) 7467 composeUsageContext(t, "ExampleScenario", "useContext", element.getUseContext().get(i), i); 7468 for (int i = 0; i < element.getJurisdiction().size(); i++) 7469 composeCodeableConcept(t, "ExampleScenario", "jurisdiction", element.getJurisdiction().get(i), i); 7470 if (element.hasCopyrightElement()) 7471 composeMarkdown(t, "ExampleScenario", "copyright", element.getCopyrightElement(), -1); 7472 if (element.hasPurposeElement()) 7473 composeMarkdown(t, "ExampleScenario", "purpose", element.getPurposeElement(), -1); 7474 for (int i = 0; i < element.getActor().size(); i++) 7475 composeExampleScenarioExampleScenarioActorComponent(t, "ExampleScenario", "actor", element.getActor().get(i), i); 7476 for (int i = 0; i < element.getInstance().size(); i++) 7477 composeExampleScenarioExampleScenarioInstanceComponent(t, "ExampleScenario", "instance", 7478 element.getInstance().get(i), i); 7479 for (int i = 0; i < element.getProcess().size(); i++) 7480 composeExampleScenarioExampleScenarioProcessComponent(t, "ExampleScenario", "process", 7481 element.getProcess().get(i), i); 7482 for (int i = 0; i < element.getWorkflow().size(); i++) 7483 composeCanonical(t, "ExampleScenario", "workflow", element.getWorkflow().get(i), i); 7484 } 7485 7486 protected void composeExampleScenarioExampleScenarioActorComponent(Complex parent, String parentType, String name, 7487 ExampleScenario.ExampleScenarioActorComponent element, int index) { 7488 if (element == null) 7489 return; 7490 Complex t; 7491 if (Utilities.noString(parentType)) 7492 t = parent; 7493 else { 7494 t = parent.predicate("fhir:" + parentType + '.' + name); 7495 } 7496 composeBackboneElement(t, "actor", name, element, index); 7497 if (element.hasActorIdElement()) 7498 composeString(t, "ExampleScenario", "actorId", element.getActorIdElement(), -1); 7499 if (element.hasTypeElement()) 7500 composeEnum(t, "ExampleScenario", "type", element.getTypeElement(), -1); 7501 if (element.hasNameElement()) 7502 composeString(t, "ExampleScenario", "name", element.getNameElement(), -1); 7503 if (element.hasDescriptionElement()) 7504 composeMarkdown(t, "ExampleScenario", "description", element.getDescriptionElement(), -1); 7505 } 7506 7507 protected void composeExampleScenarioExampleScenarioInstanceComponent(Complex parent, String parentType, String name, 7508 ExampleScenario.ExampleScenarioInstanceComponent element, int index) { 7509 if (element == null) 7510 return; 7511 Complex t; 7512 if (Utilities.noString(parentType)) 7513 t = parent; 7514 else { 7515 t = parent.predicate("fhir:" + parentType + '.' + name); 7516 } 7517 composeBackboneElement(t, "instance", name, element, index); 7518 if (element.hasResourceIdElement()) 7519 composeString(t, "ExampleScenario", "resourceId", element.getResourceIdElement(), -1); 7520 if (element.hasResourceTypeElement()) 7521 composeEnum(t, "ExampleScenario", "resourceType", element.getResourceTypeElement(), -1); 7522 if (element.hasNameElement()) 7523 composeString(t, "ExampleScenario", "name", element.getNameElement(), -1); 7524 if (element.hasDescriptionElement()) 7525 composeMarkdown(t, "ExampleScenario", "description", element.getDescriptionElement(), -1); 7526 for (int i = 0; i < element.getVersion().size(); i++) 7527 composeExampleScenarioExampleScenarioInstanceVersionComponent(t, "ExampleScenario", "version", 7528 element.getVersion().get(i), i); 7529 for (int i = 0; i < element.getContainedInstance().size(); i++) 7530 composeExampleScenarioExampleScenarioInstanceContainedInstanceComponent(t, "ExampleScenario", "containedInstance", 7531 element.getContainedInstance().get(i), i); 7532 } 7533 7534 protected void composeExampleScenarioExampleScenarioInstanceVersionComponent(Complex parent, String parentType, 7535 String name, ExampleScenario.ExampleScenarioInstanceVersionComponent element, int index) { 7536 if (element == null) 7537 return; 7538 Complex t; 7539 if (Utilities.noString(parentType)) 7540 t = parent; 7541 else { 7542 t = parent.predicate("fhir:" + parentType + '.' + name); 7543 } 7544 composeBackboneElement(t, "version", name, element, index); 7545 if (element.hasVersionIdElement()) 7546 composeString(t, "ExampleScenario", "versionId", element.getVersionIdElement(), -1); 7547 if (element.hasDescriptionElement()) 7548 composeMarkdown(t, "ExampleScenario", "description", element.getDescriptionElement(), -1); 7549 } 7550 7551 protected void composeExampleScenarioExampleScenarioInstanceContainedInstanceComponent(Complex parent, 7552 String parentType, String name, ExampleScenario.ExampleScenarioInstanceContainedInstanceComponent element, 7553 int index) { 7554 if (element == null) 7555 return; 7556 Complex t; 7557 if (Utilities.noString(parentType)) 7558 t = parent; 7559 else { 7560 t = parent.predicate("fhir:" + parentType + '.' + name); 7561 } 7562 composeBackboneElement(t, "containedInstance", name, element, index); 7563 if (element.hasResourceIdElement()) 7564 composeString(t, "ExampleScenario", "resourceId", element.getResourceIdElement(), -1); 7565 if (element.hasVersionIdElement()) 7566 composeString(t, "ExampleScenario", "versionId", element.getVersionIdElement(), -1); 7567 } 7568 7569 protected void composeExampleScenarioExampleScenarioProcessComponent(Complex parent, String parentType, String name, 7570 ExampleScenario.ExampleScenarioProcessComponent element, int index) { 7571 if (element == null) 7572 return; 7573 Complex t; 7574 if (Utilities.noString(parentType)) 7575 t = parent; 7576 else { 7577 t = parent.predicate("fhir:" + parentType + '.' + name); 7578 } 7579 composeBackboneElement(t, "process", name, element, index); 7580 if (element.hasTitleElement()) 7581 composeString(t, "ExampleScenario", "title", element.getTitleElement(), -1); 7582 if (element.hasDescriptionElement()) 7583 composeMarkdown(t, "ExampleScenario", "description", element.getDescriptionElement(), -1); 7584 if (element.hasPreConditionsElement()) 7585 composeMarkdown(t, "ExampleScenario", "preConditions", element.getPreConditionsElement(), -1); 7586 if (element.hasPostConditionsElement()) 7587 composeMarkdown(t, "ExampleScenario", "postConditions", element.getPostConditionsElement(), -1); 7588 for (int i = 0; i < element.getStep().size(); i++) 7589 composeExampleScenarioExampleScenarioProcessStepComponent(t, "ExampleScenario", "step", element.getStep().get(i), 7590 i); 7591 } 7592 7593 protected void composeExampleScenarioExampleScenarioProcessStepComponent(Complex parent, String parentType, 7594 String name, ExampleScenario.ExampleScenarioProcessStepComponent element, int index) { 7595 if (element == null) 7596 return; 7597 Complex t; 7598 if (Utilities.noString(parentType)) 7599 t = parent; 7600 else { 7601 t = parent.predicate("fhir:" + parentType + '.' + name); 7602 } 7603 composeBackboneElement(t, "step", name, element, index); 7604 for (int i = 0; i < element.getProcess().size(); i++) 7605 composeExampleScenarioExampleScenarioProcessComponent(t, "ExampleScenario", "process", 7606 element.getProcess().get(i), i); 7607 if (element.hasPauseElement()) 7608 composeBoolean(t, "ExampleScenario", "pause", element.getPauseElement(), -1); 7609 if (element.hasOperation()) 7610 composeExampleScenarioExampleScenarioProcessStepOperationComponent(t, "ExampleScenario", "operation", 7611 element.getOperation(), -1); 7612 for (int i = 0; i < element.getAlternative().size(); i++) 7613 composeExampleScenarioExampleScenarioProcessStepAlternativeComponent(t, "ExampleScenario", "alternative", 7614 element.getAlternative().get(i), i); 7615 } 7616 7617 protected void composeExampleScenarioExampleScenarioProcessStepOperationComponent(Complex parent, String parentType, 7618 String name, ExampleScenario.ExampleScenarioProcessStepOperationComponent element, int index) { 7619 if (element == null) 7620 return; 7621 Complex t; 7622 if (Utilities.noString(parentType)) 7623 t = parent; 7624 else { 7625 t = parent.predicate("fhir:" + parentType + '.' + name); 7626 } 7627 composeBackboneElement(t, "operation", name, element, index); 7628 if (element.hasNumberElement()) 7629 composeString(t, "ExampleScenario", "number", element.getNumberElement(), -1); 7630 if (element.hasTypeElement()) 7631 composeString(t, "ExampleScenario", "type", element.getTypeElement(), -1); 7632 if (element.hasNameElement()) 7633 composeString(t, "ExampleScenario", "name", element.getNameElement(), -1); 7634 if (element.hasInitiatorElement()) 7635 composeString(t, "ExampleScenario", "initiator", element.getInitiatorElement(), -1); 7636 if (element.hasReceiverElement()) 7637 composeString(t, "ExampleScenario", "receiver", element.getReceiverElement(), -1); 7638 if (element.hasDescriptionElement()) 7639 composeMarkdown(t, "ExampleScenario", "description", element.getDescriptionElement(), -1); 7640 if (element.hasInitiatorActiveElement()) 7641 composeBoolean(t, "ExampleScenario", "initiatorActive", element.getInitiatorActiveElement(), -1); 7642 if (element.hasReceiverActiveElement()) 7643 composeBoolean(t, "ExampleScenario", "receiverActive", element.getReceiverActiveElement(), -1); 7644 if (element.hasRequest()) 7645 composeExampleScenarioExampleScenarioInstanceContainedInstanceComponent(t, "ExampleScenario", "request", 7646 element.getRequest(), -1); 7647 if (element.hasResponse()) 7648 composeExampleScenarioExampleScenarioInstanceContainedInstanceComponent(t, "ExampleScenario", "response", 7649 element.getResponse(), -1); 7650 } 7651 7652 protected void composeExampleScenarioExampleScenarioProcessStepAlternativeComponent(Complex parent, String parentType, 7653 String name, ExampleScenario.ExampleScenarioProcessStepAlternativeComponent element, int index) { 7654 if (element == null) 7655 return; 7656 Complex t; 7657 if (Utilities.noString(parentType)) 7658 t = parent; 7659 else { 7660 t = parent.predicate("fhir:" + parentType + '.' + name); 7661 } 7662 composeBackboneElement(t, "alternative", name, element, index); 7663 if (element.hasTitleElement()) 7664 composeString(t, "ExampleScenario", "title", element.getTitleElement(), -1); 7665 if (element.hasDescriptionElement()) 7666 composeMarkdown(t, "ExampleScenario", "description", element.getDescriptionElement(), -1); 7667 for (int i = 0; i < element.getStep().size(); i++) 7668 composeExampleScenarioExampleScenarioProcessStepComponent(t, "ExampleScenario", "step", element.getStep().get(i), 7669 i); 7670 } 7671 7672 protected void composeExplanationOfBenefit(Complex parent, String parentType, String name, 7673 ExplanationOfBenefit element, int index) { 7674 if (element == null) 7675 return; 7676 Complex t; 7677 if (Utilities.noString(parentType)) 7678 t = parent; 7679 else { 7680 t = parent.predicate("fhir:" + parentType + '.' + name); 7681 } 7682 composeDomainResource(t, "ExplanationOfBenefit", name, element, index); 7683 for (int i = 0; i < element.getIdentifier().size(); i++) 7684 composeIdentifier(t, "ExplanationOfBenefit", "identifier", element.getIdentifier().get(i), i); 7685 if (element.hasStatusElement()) 7686 composeEnum(t, "ExplanationOfBenefit", "status", element.getStatusElement(), -1); 7687 if (element.hasType()) 7688 composeCodeableConcept(t, "ExplanationOfBenefit", "type", element.getType(), -1); 7689 if (element.hasSubType()) 7690 composeCodeableConcept(t, "ExplanationOfBenefit", "subType", element.getSubType(), -1); 7691 if (element.hasUseElement()) 7692 composeEnum(t, "ExplanationOfBenefit", "use", element.getUseElement(), -1); 7693 if (element.hasPatient()) 7694 composeReference(t, "ExplanationOfBenefit", "patient", element.getPatient(), -1); 7695 if (element.hasBillablePeriod()) 7696 composePeriod(t, "ExplanationOfBenefit", "billablePeriod", element.getBillablePeriod(), -1); 7697 if (element.hasCreatedElement()) 7698 composeDateTime(t, "ExplanationOfBenefit", "created", element.getCreatedElement(), -1); 7699 if (element.hasEnterer()) 7700 composeReference(t, "ExplanationOfBenefit", "enterer", element.getEnterer(), -1); 7701 if (element.hasInsurer()) 7702 composeReference(t, "ExplanationOfBenefit", "insurer", element.getInsurer(), -1); 7703 if (element.hasProvider()) 7704 composeReference(t, "ExplanationOfBenefit", "provider", element.getProvider(), -1); 7705 if (element.hasPriority()) 7706 composeCodeableConcept(t, "ExplanationOfBenefit", "priority", element.getPriority(), -1); 7707 if (element.hasFundsReserveRequested()) 7708 composeCodeableConcept(t, "ExplanationOfBenefit", "fundsReserveRequested", element.getFundsReserveRequested(), 7709 -1); 7710 if (element.hasFundsReserve()) 7711 composeCodeableConcept(t, "ExplanationOfBenefit", "fundsReserve", element.getFundsReserve(), -1); 7712 for (int i = 0; i < element.getRelated().size(); i++) 7713 composeExplanationOfBenefitRelatedClaimComponent(t, "ExplanationOfBenefit", "related", 7714 element.getRelated().get(i), i); 7715 if (element.hasPrescription()) 7716 composeReference(t, "ExplanationOfBenefit", "prescription", element.getPrescription(), -1); 7717 if (element.hasOriginalPrescription()) 7718 composeReference(t, "ExplanationOfBenefit", "originalPrescription", element.getOriginalPrescription(), -1); 7719 if (element.hasPayee()) 7720 composeExplanationOfBenefitPayeeComponent(t, "ExplanationOfBenefit", "payee", element.getPayee(), -1); 7721 if (element.hasReferral()) 7722 composeReference(t, "ExplanationOfBenefit", "referral", element.getReferral(), -1); 7723 if (element.hasFacility()) 7724 composeReference(t, "ExplanationOfBenefit", "facility", element.getFacility(), -1); 7725 if (element.hasClaim()) 7726 composeReference(t, "ExplanationOfBenefit", "claim", element.getClaim(), -1); 7727 if (element.hasClaimResponse()) 7728 composeReference(t, "ExplanationOfBenefit", "claimResponse", element.getClaimResponse(), -1); 7729 if (element.hasOutcomeElement()) 7730 composeEnum(t, "ExplanationOfBenefit", "outcome", element.getOutcomeElement(), -1); 7731 if (element.hasDispositionElement()) 7732 composeString(t, "ExplanationOfBenefit", "disposition", element.getDispositionElement(), -1); 7733 for (int i = 0; i < element.getPreAuthRef().size(); i++) 7734 composeString(t, "ExplanationOfBenefit", "preAuthRef", element.getPreAuthRef().get(i), i); 7735 for (int i = 0; i < element.getPreAuthRefPeriod().size(); i++) 7736 composePeriod(t, "ExplanationOfBenefit", "preAuthRefPeriod", element.getPreAuthRefPeriod().get(i), i); 7737 for (int i = 0; i < element.getCareTeam().size(); i++) 7738 composeExplanationOfBenefitCareTeamComponent(t, "ExplanationOfBenefit", "careTeam", element.getCareTeam().get(i), 7739 i); 7740 for (int i = 0; i < element.getSupportingInfo().size(); i++) 7741 composeExplanationOfBenefitSupportingInformationComponent(t, "ExplanationOfBenefit", "supportingInfo", 7742 element.getSupportingInfo().get(i), i); 7743 for (int i = 0; i < element.getDiagnosis().size(); i++) 7744 composeExplanationOfBenefitDiagnosisComponent(t, "ExplanationOfBenefit", "diagnosis", 7745 element.getDiagnosis().get(i), i); 7746 for (int i = 0; i < element.getProcedure().size(); i++) 7747 composeExplanationOfBenefitProcedureComponent(t, "ExplanationOfBenefit", "procedure", 7748 element.getProcedure().get(i), i); 7749 if (element.hasPrecedenceElement()) 7750 composePositiveInt(t, "ExplanationOfBenefit", "precedence", element.getPrecedenceElement(), -1); 7751 for (int i = 0; i < element.getInsurance().size(); i++) 7752 composeExplanationOfBenefitInsuranceComponent(t, "ExplanationOfBenefit", "insurance", 7753 element.getInsurance().get(i), i); 7754 if (element.hasAccident()) 7755 composeExplanationOfBenefitAccidentComponent(t, "ExplanationOfBenefit", "accident", element.getAccident(), -1); 7756 for (int i = 0; i < element.getItem().size(); i++) 7757 composeExplanationOfBenefitItemComponent(t, "ExplanationOfBenefit", "item", element.getItem().get(i), i); 7758 for (int i = 0; i < element.getAddItem().size(); i++) 7759 composeExplanationOfBenefitAddedItemComponent(t, "ExplanationOfBenefit", "addItem", element.getAddItem().get(i), 7760 i); 7761 for (int i = 0; i < element.getAdjudication().size(); i++) 7762 composeExplanationOfBenefitAdjudicationComponent(t, "ExplanationOfBenefit", "adjudication", 7763 element.getAdjudication().get(i), i); 7764 for (int i = 0; i < element.getTotal().size(); i++) 7765 composeExplanationOfBenefitTotalComponent(t, "ExplanationOfBenefit", "total", element.getTotal().get(i), i); 7766 if (element.hasPayment()) 7767 composeExplanationOfBenefitPaymentComponent(t, "ExplanationOfBenefit", "payment", element.getPayment(), -1); 7768 if (element.hasFormCode()) 7769 composeCodeableConcept(t, "ExplanationOfBenefit", "formCode", element.getFormCode(), -1); 7770 if (element.hasForm()) 7771 composeAttachment(t, "ExplanationOfBenefit", "form", element.getForm(), -1); 7772 for (int i = 0; i < element.getProcessNote().size(); i++) 7773 composeExplanationOfBenefitNoteComponent(t, "ExplanationOfBenefit", "processNote", 7774 element.getProcessNote().get(i), i); 7775 if (element.hasBenefitPeriod()) 7776 composePeriod(t, "ExplanationOfBenefit", "benefitPeriod", element.getBenefitPeriod(), -1); 7777 for (int i = 0; i < element.getBenefitBalance().size(); i++) 7778 composeExplanationOfBenefitBenefitBalanceComponent(t, "ExplanationOfBenefit", "benefitBalance", 7779 element.getBenefitBalance().get(i), i); 7780 } 7781 7782 protected void composeExplanationOfBenefitRelatedClaimComponent(Complex parent, String parentType, String name, 7783 ExplanationOfBenefit.RelatedClaimComponent element, int index) { 7784 if (element == null) 7785 return; 7786 Complex t; 7787 if (Utilities.noString(parentType)) 7788 t = parent; 7789 else { 7790 t = parent.predicate("fhir:" + parentType + '.' + name); 7791 } 7792 composeBackboneElement(t, "related", name, element, index); 7793 if (element.hasClaim()) 7794 composeReference(t, "ExplanationOfBenefit", "claim", element.getClaim(), -1); 7795 if (element.hasRelationship()) 7796 composeCodeableConcept(t, "ExplanationOfBenefit", "relationship", element.getRelationship(), -1); 7797 if (element.hasReference()) 7798 composeIdentifier(t, "ExplanationOfBenefit", "reference", element.getReference(), -1); 7799 } 7800 7801 protected void composeExplanationOfBenefitPayeeComponent(Complex parent, String parentType, String name, 7802 ExplanationOfBenefit.PayeeComponent element, int index) { 7803 if (element == null) 7804 return; 7805 Complex t; 7806 if (Utilities.noString(parentType)) 7807 t = parent; 7808 else { 7809 t = parent.predicate("fhir:" + parentType + '.' + name); 7810 } 7811 composeBackboneElement(t, "payee", name, element, index); 7812 if (element.hasType()) 7813 composeCodeableConcept(t, "ExplanationOfBenefit", "type", element.getType(), -1); 7814 if (element.hasParty()) 7815 composeReference(t, "ExplanationOfBenefit", "party", element.getParty(), -1); 7816 } 7817 7818 protected void composeExplanationOfBenefitCareTeamComponent(Complex parent, String parentType, String name, 7819 ExplanationOfBenefit.CareTeamComponent element, int index) { 7820 if (element == null) 7821 return; 7822 Complex t; 7823 if (Utilities.noString(parentType)) 7824 t = parent; 7825 else { 7826 t = parent.predicate("fhir:" + parentType + '.' + name); 7827 } 7828 composeBackboneElement(t, "careTeam", name, element, index); 7829 if (element.hasSequenceElement()) 7830 composePositiveInt(t, "ExplanationOfBenefit", "sequence", element.getSequenceElement(), -1); 7831 if (element.hasProvider()) 7832 composeReference(t, "ExplanationOfBenefit", "provider", element.getProvider(), -1); 7833 if (element.hasResponsibleElement()) 7834 composeBoolean(t, "ExplanationOfBenefit", "responsible", element.getResponsibleElement(), -1); 7835 if (element.hasRole()) 7836 composeCodeableConcept(t, "ExplanationOfBenefit", "role", element.getRole(), -1); 7837 if (element.hasQualification()) 7838 composeCodeableConcept(t, "ExplanationOfBenefit", "qualification", element.getQualification(), -1); 7839 } 7840 7841 protected void composeExplanationOfBenefitSupportingInformationComponent(Complex parent, String parentType, 7842 String name, ExplanationOfBenefit.SupportingInformationComponent element, int index) { 7843 if (element == null) 7844 return; 7845 Complex t; 7846 if (Utilities.noString(parentType)) 7847 t = parent; 7848 else { 7849 t = parent.predicate("fhir:" + parentType + '.' + name); 7850 } 7851 composeBackboneElement(t, "supportingInfo", name, element, index); 7852 if (element.hasSequenceElement()) 7853 composePositiveInt(t, "ExplanationOfBenefit", "sequence", element.getSequenceElement(), -1); 7854 if (element.hasCategory()) 7855 composeCodeableConcept(t, "ExplanationOfBenefit", "category", element.getCategory(), -1); 7856 if (element.hasCode()) 7857 composeCodeableConcept(t, "ExplanationOfBenefit", "code", element.getCode(), -1); 7858 if (element.hasTiming()) 7859 composeType(t, "ExplanationOfBenefit", "timing", element.getTiming(), -1); 7860 if (element.hasValue()) 7861 composeType(t, "ExplanationOfBenefit", "value", element.getValue(), -1); 7862 if (element.hasReason()) 7863 composeCoding(t, "ExplanationOfBenefit", "reason", element.getReason(), -1); 7864 } 7865 7866 protected void composeExplanationOfBenefitDiagnosisComponent(Complex parent, String parentType, String name, 7867 ExplanationOfBenefit.DiagnosisComponent element, int index) { 7868 if (element == null) 7869 return; 7870 Complex t; 7871 if (Utilities.noString(parentType)) 7872 t = parent; 7873 else { 7874 t = parent.predicate("fhir:" + parentType + '.' + name); 7875 } 7876 composeBackboneElement(t, "diagnosis", name, element, index); 7877 if (element.hasSequenceElement()) 7878 composePositiveInt(t, "ExplanationOfBenefit", "sequence", element.getSequenceElement(), -1); 7879 if (element.hasDiagnosis()) 7880 composeType(t, "ExplanationOfBenefit", "diagnosis", element.getDiagnosis(), -1); 7881 for (int i = 0; i < element.getType().size(); i++) 7882 composeCodeableConcept(t, "ExplanationOfBenefit", "type", element.getType().get(i), i); 7883 if (element.hasOnAdmission()) 7884 composeCodeableConcept(t, "ExplanationOfBenefit", "onAdmission", element.getOnAdmission(), -1); 7885 if (element.hasPackageCode()) 7886 composeCodeableConcept(t, "ExplanationOfBenefit", "packageCode", element.getPackageCode(), -1); 7887 } 7888 7889 protected void composeExplanationOfBenefitProcedureComponent(Complex parent, String parentType, String name, 7890 ExplanationOfBenefit.ProcedureComponent element, int index) { 7891 if (element == null) 7892 return; 7893 Complex t; 7894 if (Utilities.noString(parentType)) 7895 t = parent; 7896 else { 7897 t = parent.predicate("fhir:" + parentType + '.' + name); 7898 } 7899 composeBackboneElement(t, "procedure", name, element, index); 7900 if (element.hasSequenceElement()) 7901 composePositiveInt(t, "ExplanationOfBenefit", "sequence", element.getSequenceElement(), -1); 7902 for (int i = 0; i < element.getType().size(); i++) 7903 composeCodeableConcept(t, "ExplanationOfBenefit", "type", element.getType().get(i), i); 7904 if (element.hasDateElement()) 7905 composeDateTime(t, "ExplanationOfBenefit", "date", element.getDateElement(), -1); 7906 if (element.hasProcedure()) 7907 composeType(t, "ExplanationOfBenefit", "procedure", element.getProcedure(), -1); 7908 for (int i = 0; i < element.getUdi().size(); i++) 7909 composeReference(t, "ExplanationOfBenefit", "udi", element.getUdi().get(i), i); 7910 } 7911 7912 protected void composeExplanationOfBenefitInsuranceComponent(Complex parent, String parentType, String name, 7913 ExplanationOfBenefit.InsuranceComponent element, int index) { 7914 if (element == null) 7915 return; 7916 Complex t; 7917 if (Utilities.noString(parentType)) 7918 t = parent; 7919 else { 7920 t = parent.predicate("fhir:" + parentType + '.' + name); 7921 } 7922 composeBackboneElement(t, "insurance", name, element, index); 7923 if (element.hasFocalElement()) 7924 composeBoolean(t, "ExplanationOfBenefit", "focal", element.getFocalElement(), -1); 7925 if (element.hasCoverage()) 7926 composeReference(t, "ExplanationOfBenefit", "coverage", element.getCoverage(), -1); 7927 for (int i = 0; i < element.getPreAuthRef().size(); i++) 7928 composeString(t, "ExplanationOfBenefit", "preAuthRef", element.getPreAuthRef().get(i), i); 7929 } 7930 7931 protected void composeExplanationOfBenefitAccidentComponent(Complex parent, String parentType, String name, 7932 ExplanationOfBenefit.AccidentComponent element, int index) { 7933 if (element == null) 7934 return; 7935 Complex t; 7936 if (Utilities.noString(parentType)) 7937 t = parent; 7938 else { 7939 t = parent.predicate("fhir:" + parentType + '.' + name); 7940 } 7941 composeBackboneElement(t, "accident", name, element, index); 7942 if (element.hasDateElement()) 7943 composeDate(t, "ExplanationOfBenefit", "date", element.getDateElement(), -1); 7944 if (element.hasType()) 7945 composeCodeableConcept(t, "ExplanationOfBenefit", "type", element.getType(), -1); 7946 if (element.hasLocation()) 7947 composeType(t, "ExplanationOfBenefit", "location", element.getLocation(), -1); 7948 } 7949 7950 protected void composeExplanationOfBenefitItemComponent(Complex parent, String parentType, String name, 7951 ExplanationOfBenefit.ItemComponent element, int index) { 7952 if (element == null) 7953 return; 7954 Complex t; 7955 if (Utilities.noString(parentType)) 7956 t = parent; 7957 else { 7958 t = parent.predicate("fhir:" + parentType + '.' + name); 7959 } 7960 composeBackboneElement(t, "item", name, element, index); 7961 if (element.hasSequenceElement()) 7962 composePositiveInt(t, "ExplanationOfBenefit", "sequence", element.getSequenceElement(), -1); 7963 for (int i = 0; i < element.getCareTeamSequence().size(); i++) 7964 composePositiveInt(t, "ExplanationOfBenefit", "careTeamSequence", element.getCareTeamSequence().get(i), i); 7965 for (int i = 0; i < element.getDiagnosisSequence().size(); i++) 7966 composePositiveInt(t, "ExplanationOfBenefit", "diagnosisSequence", element.getDiagnosisSequence().get(i), i); 7967 for (int i = 0; i < element.getProcedureSequence().size(); i++) 7968 composePositiveInt(t, "ExplanationOfBenefit", "procedureSequence", element.getProcedureSequence().get(i), i); 7969 for (int i = 0; i < element.getInformationSequence().size(); i++) 7970 composePositiveInt(t, "ExplanationOfBenefit", "informationSequence", element.getInformationSequence().get(i), i); 7971 if (element.hasRevenue()) 7972 composeCodeableConcept(t, "ExplanationOfBenefit", "revenue", element.getRevenue(), -1); 7973 if (element.hasCategory()) 7974 composeCodeableConcept(t, "ExplanationOfBenefit", "category", element.getCategory(), -1); 7975 if (element.hasProductOrService()) 7976 composeCodeableConcept(t, "ExplanationOfBenefit", "productOrService", element.getProductOrService(), -1); 7977 for (int i = 0; i < element.getModifier().size(); i++) 7978 composeCodeableConcept(t, "ExplanationOfBenefit", "modifier", element.getModifier().get(i), i); 7979 for (int i = 0; i < element.getProgramCode().size(); i++) 7980 composeCodeableConcept(t, "ExplanationOfBenefit", "programCode", element.getProgramCode().get(i), i); 7981 if (element.hasServiced()) 7982 composeType(t, "ExplanationOfBenefit", "serviced", element.getServiced(), -1); 7983 if (element.hasLocation()) 7984 composeType(t, "ExplanationOfBenefit", "location", element.getLocation(), -1); 7985 if (element.hasQuantity()) 7986 composeQuantity(t, "ExplanationOfBenefit", "quantity", element.getQuantity(), -1); 7987 if (element.hasUnitPrice()) 7988 composeMoney(t, "ExplanationOfBenefit", "unitPrice", element.getUnitPrice(), -1); 7989 if (element.hasFactorElement()) 7990 composeDecimal(t, "ExplanationOfBenefit", "factor", element.getFactorElement(), -1); 7991 if (element.hasNet()) 7992 composeMoney(t, "ExplanationOfBenefit", "net", element.getNet(), -1); 7993 for (int i = 0; i < element.getUdi().size(); i++) 7994 composeReference(t, "ExplanationOfBenefit", "udi", element.getUdi().get(i), i); 7995 if (element.hasBodySite()) 7996 composeCodeableConcept(t, "ExplanationOfBenefit", "bodySite", element.getBodySite(), -1); 7997 for (int i = 0; i < element.getSubSite().size(); i++) 7998 composeCodeableConcept(t, "ExplanationOfBenefit", "subSite", element.getSubSite().get(i), i); 7999 for (int i = 0; i < element.getEncounter().size(); i++) 8000 composeReference(t, "ExplanationOfBenefit", "encounter", element.getEncounter().get(i), i); 8001 for (int i = 0; i < element.getNoteNumber().size(); i++) 8002 composePositiveInt(t, "ExplanationOfBenefit", "noteNumber", element.getNoteNumber().get(i), i); 8003 for (int i = 0; i < element.getAdjudication().size(); i++) 8004 composeExplanationOfBenefitAdjudicationComponent(t, "ExplanationOfBenefit", "adjudication", 8005 element.getAdjudication().get(i), i); 8006 for (int i = 0; i < element.getDetail().size(); i++) 8007 composeExplanationOfBenefitDetailComponent(t, "ExplanationOfBenefit", "detail", element.getDetail().get(i), i); 8008 } 8009 8010 protected void composeExplanationOfBenefitAdjudicationComponent(Complex parent, String parentType, String name, 8011 ExplanationOfBenefit.AdjudicationComponent element, int index) { 8012 if (element == null) 8013 return; 8014 Complex t; 8015 if (Utilities.noString(parentType)) 8016 t = parent; 8017 else { 8018 t = parent.predicate("fhir:" + parentType + '.' + name); 8019 } 8020 composeBackboneElement(t, "adjudication", name, element, index); 8021 if (element.hasCategory()) 8022 composeCodeableConcept(t, "ExplanationOfBenefit", "category", element.getCategory(), -1); 8023 if (element.hasReason()) 8024 composeCodeableConcept(t, "ExplanationOfBenefit", "reason", element.getReason(), -1); 8025 if (element.hasAmount()) 8026 composeMoney(t, "ExplanationOfBenefit", "amount", element.getAmount(), -1); 8027 if (element.hasValueElement()) 8028 composeDecimal(t, "ExplanationOfBenefit", "value", element.getValueElement(), -1); 8029 } 8030 8031 protected void composeExplanationOfBenefitDetailComponent(Complex parent, String parentType, String name, 8032 ExplanationOfBenefit.DetailComponent element, int index) { 8033 if (element == null) 8034 return; 8035 Complex t; 8036 if (Utilities.noString(parentType)) 8037 t = parent; 8038 else { 8039 t = parent.predicate("fhir:" + parentType + '.' + name); 8040 } 8041 composeBackboneElement(t, "detail", name, element, index); 8042 if (element.hasSequenceElement()) 8043 composePositiveInt(t, "ExplanationOfBenefit", "sequence", element.getSequenceElement(), -1); 8044 if (element.hasRevenue()) 8045 composeCodeableConcept(t, "ExplanationOfBenefit", "revenue", element.getRevenue(), -1); 8046 if (element.hasCategory()) 8047 composeCodeableConcept(t, "ExplanationOfBenefit", "category", element.getCategory(), -1); 8048 if (element.hasProductOrService()) 8049 composeCodeableConcept(t, "ExplanationOfBenefit", "productOrService", element.getProductOrService(), -1); 8050 for (int i = 0; i < element.getModifier().size(); i++) 8051 composeCodeableConcept(t, "ExplanationOfBenefit", "modifier", element.getModifier().get(i), i); 8052 for (int i = 0; i < element.getProgramCode().size(); i++) 8053 composeCodeableConcept(t, "ExplanationOfBenefit", "programCode", element.getProgramCode().get(i), i); 8054 if (element.hasQuantity()) 8055 composeQuantity(t, "ExplanationOfBenefit", "quantity", element.getQuantity(), -1); 8056 if (element.hasUnitPrice()) 8057 composeMoney(t, "ExplanationOfBenefit", "unitPrice", element.getUnitPrice(), -1); 8058 if (element.hasFactorElement()) 8059 composeDecimal(t, "ExplanationOfBenefit", "factor", element.getFactorElement(), -1); 8060 if (element.hasNet()) 8061 composeMoney(t, "ExplanationOfBenefit", "net", element.getNet(), -1); 8062 for (int i = 0; i < element.getUdi().size(); i++) 8063 composeReference(t, "ExplanationOfBenefit", "udi", element.getUdi().get(i), i); 8064 for (int i = 0; i < element.getNoteNumber().size(); i++) 8065 composePositiveInt(t, "ExplanationOfBenefit", "noteNumber", element.getNoteNumber().get(i), i); 8066 for (int i = 0; i < element.getAdjudication().size(); i++) 8067 composeExplanationOfBenefitAdjudicationComponent(t, "ExplanationOfBenefit", "adjudication", 8068 element.getAdjudication().get(i), i); 8069 for (int i = 0; i < element.getSubDetail().size(); i++) 8070 composeExplanationOfBenefitSubDetailComponent(t, "ExplanationOfBenefit", "subDetail", 8071 element.getSubDetail().get(i), i); 8072 } 8073 8074 protected void composeExplanationOfBenefitSubDetailComponent(Complex parent, String parentType, String name, 8075 ExplanationOfBenefit.SubDetailComponent element, int index) { 8076 if (element == null) 8077 return; 8078 Complex t; 8079 if (Utilities.noString(parentType)) 8080 t = parent; 8081 else { 8082 t = parent.predicate("fhir:" + parentType + '.' + name); 8083 } 8084 composeBackboneElement(t, "subDetail", name, element, index); 8085 if (element.hasSequenceElement()) 8086 composePositiveInt(t, "ExplanationOfBenefit", "sequence", element.getSequenceElement(), -1); 8087 if (element.hasRevenue()) 8088 composeCodeableConcept(t, "ExplanationOfBenefit", "revenue", element.getRevenue(), -1); 8089 if (element.hasCategory()) 8090 composeCodeableConcept(t, "ExplanationOfBenefit", "category", element.getCategory(), -1); 8091 if (element.hasProductOrService()) 8092 composeCodeableConcept(t, "ExplanationOfBenefit", "productOrService", element.getProductOrService(), -1); 8093 for (int i = 0; i < element.getModifier().size(); i++) 8094 composeCodeableConcept(t, "ExplanationOfBenefit", "modifier", element.getModifier().get(i), i); 8095 for (int i = 0; i < element.getProgramCode().size(); i++) 8096 composeCodeableConcept(t, "ExplanationOfBenefit", "programCode", element.getProgramCode().get(i), i); 8097 if (element.hasQuantity()) 8098 composeQuantity(t, "ExplanationOfBenefit", "quantity", element.getQuantity(), -1); 8099 if (element.hasUnitPrice()) 8100 composeMoney(t, "ExplanationOfBenefit", "unitPrice", element.getUnitPrice(), -1); 8101 if (element.hasFactorElement()) 8102 composeDecimal(t, "ExplanationOfBenefit", "factor", element.getFactorElement(), -1); 8103 if (element.hasNet()) 8104 composeMoney(t, "ExplanationOfBenefit", "net", element.getNet(), -1); 8105 for (int i = 0; i < element.getUdi().size(); i++) 8106 composeReference(t, "ExplanationOfBenefit", "udi", element.getUdi().get(i), i); 8107 for (int i = 0; i < element.getNoteNumber().size(); i++) 8108 composePositiveInt(t, "ExplanationOfBenefit", "noteNumber", element.getNoteNumber().get(i), i); 8109 for (int i = 0; i < element.getAdjudication().size(); i++) 8110 composeExplanationOfBenefitAdjudicationComponent(t, "ExplanationOfBenefit", "adjudication", 8111 element.getAdjudication().get(i), i); 8112 } 8113 8114 protected void composeExplanationOfBenefitAddedItemComponent(Complex parent, String parentType, String name, 8115 ExplanationOfBenefit.AddedItemComponent element, int index) { 8116 if (element == null) 8117 return; 8118 Complex t; 8119 if (Utilities.noString(parentType)) 8120 t = parent; 8121 else { 8122 t = parent.predicate("fhir:" + parentType + '.' + name); 8123 } 8124 composeBackboneElement(t, "addItem", name, element, index); 8125 for (int i = 0; i < element.getItemSequence().size(); i++) 8126 composePositiveInt(t, "ExplanationOfBenefit", "itemSequence", element.getItemSequence().get(i), i); 8127 for (int i = 0; i < element.getDetailSequence().size(); i++) 8128 composePositiveInt(t, "ExplanationOfBenefit", "detailSequence", element.getDetailSequence().get(i), i); 8129 for (int i = 0; i < element.getSubDetailSequence().size(); i++) 8130 composePositiveInt(t, "ExplanationOfBenefit", "subDetailSequence", element.getSubDetailSequence().get(i), i); 8131 for (int i = 0; i < element.getProvider().size(); i++) 8132 composeReference(t, "ExplanationOfBenefit", "provider", element.getProvider().get(i), i); 8133 if (element.hasProductOrService()) 8134 composeCodeableConcept(t, "ExplanationOfBenefit", "productOrService", element.getProductOrService(), -1); 8135 for (int i = 0; i < element.getModifier().size(); i++) 8136 composeCodeableConcept(t, "ExplanationOfBenefit", "modifier", element.getModifier().get(i), i); 8137 for (int i = 0; i < element.getProgramCode().size(); i++) 8138 composeCodeableConcept(t, "ExplanationOfBenefit", "programCode", element.getProgramCode().get(i), i); 8139 if (element.hasServiced()) 8140 composeType(t, "ExplanationOfBenefit", "serviced", element.getServiced(), -1); 8141 if (element.hasLocation()) 8142 composeType(t, "ExplanationOfBenefit", "location", element.getLocation(), -1); 8143 if (element.hasQuantity()) 8144 composeQuantity(t, "ExplanationOfBenefit", "quantity", element.getQuantity(), -1); 8145 if (element.hasUnitPrice()) 8146 composeMoney(t, "ExplanationOfBenefit", "unitPrice", element.getUnitPrice(), -1); 8147 if (element.hasFactorElement()) 8148 composeDecimal(t, "ExplanationOfBenefit", "factor", element.getFactorElement(), -1); 8149 if (element.hasNet()) 8150 composeMoney(t, "ExplanationOfBenefit", "net", element.getNet(), -1); 8151 if (element.hasBodySite()) 8152 composeCodeableConcept(t, "ExplanationOfBenefit", "bodySite", element.getBodySite(), -1); 8153 for (int i = 0; i < element.getSubSite().size(); i++) 8154 composeCodeableConcept(t, "ExplanationOfBenefit", "subSite", element.getSubSite().get(i), i); 8155 for (int i = 0; i < element.getNoteNumber().size(); i++) 8156 composePositiveInt(t, "ExplanationOfBenefit", "noteNumber", element.getNoteNumber().get(i), i); 8157 for (int i = 0; i < element.getAdjudication().size(); i++) 8158 composeExplanationOfBenefitAdjudicationComponent(t, "ExplanationOfBenefit", "adjudication", 8159 element.getAdjudication().get(i), i); 8160 for (int i = 0; i < element.getDetail().size(); i++) 8161 composeExplanationOfBenefitAddedItemDetailComponent(t, "ExplanationOfBenefit", "detail", 8162 element.getDetail().get(i), i); 8163 } 8164 8165 protected void composeExplanationOfBenefitAddedItemDetailComponent(Complex parent, String parentType, String name, 8166 ExplanationOfBenefit.AddedItemDetailComponent element, int index) { 8167 if (element == null) 8168 return; 8169 Complex t; 8170 if (Utilities.noString(parentType)) 8171 t = parent; 8172 else { 8173 t = parent.predicate("fhir:" + parentType + '.' + name); 8174 } 8175 composeBackboneElement(t, "detail", name, element, index); 8176 if (element.hasProductOrService()) 8177 composeCodeableConcept(t, "ExplanationOfBenefit", "productOrService", element.getProductOrService(), -1); 8178 for (int i = 0; i < element.getModifier().size(); i++) 8179 composeCodeableConcept(t, "ExplanationOfBenefit", "modifier", element.getModifier().get(i), i); 8180 if (element.hasQuantity()) 8181 composeQuantity(t, "ExplanationOfBenefit", "quantity", element.getQuantity(), -1); 8182 if (element.hasUnitPrice()) 8183 composeMoney(t, "ExplanationOfBenefit", "unitPrice", element.getUnitPrice(), -1); 8184 if (element.hasFactorElement()) 8185 composeDecimal(t, "ExplanationOfBenefit", "factor", element.getFactorElement(), -1); 8186 if (element.hasNet()) 8187 composeMoney(t, "ExplanationOfBenefit", "net", element.getNet(), -1); 8188 for (int i = 0; i < element.getNoteNumber().size(); i++) 8189 composePositiveInt(t, "ExplanationOfBenefit", "noteNumber", element.getNoteNumber().get(i), i); 8190 for (int i = 0; i < element.getAdjudication().size(); i++) 8191 composeExplanationOfBenefitAdjudicationComponent(t, "ExplanationOfBenefit", "adjudication", 8192 element.getAdjudication().get(i), i); 8193 for (int i = 0; i < element.getSubDetail().size(); i++) 8194 composeExplanationOfBenefitAddedItemDetailSubDetailComponent(t, "ExplanationOfBenefit", "subDetail", 8195 element.getSubDetail().get(i), i); 8196 } 8197 8198 protected void composeExplanationOfBenefitAddedItemDetailSubDetailComponent(Complex parent, String parentType, 8199 String name, ExplanationOfBenefit.AddedItemDetailSubDetailComponent element, int index) { 8200 if (element == null) 8201 return; 8202 Complex t; 8203 if (Utilities.noString(parentType)) 8204 t = parent; 8205 else { 8206 t = parent.predicate("fhir:" + parentType + '.' + name); 8207 } 8208 composeBackboneElement(t, "subDetail", name, element, index); 8209 if (element.hasProductOrService()) 8210 composeCodeableConcept(t, "ExplanationOfBenefit", "productOrService", element.getProductOrService(), -1); 8211 for (int i = 0; i < element.getModifier().size(); i++) 8212 composeCodeableConcept(t, "ExplanationOfBenefit", "modifier", element.getModifier().get(i), i); 8213 if (element.hasQuantity()) 8214 composeQuantity(t, "ExplanationOfBenefit", "quantity", element.getQuantity(), -1); 8215 if (element.hasUnitPrice()) 8216 composeMoney(t, "ExplanationOfBenefit", "unitPrice", element.getUnitPrice(), -1); 8217 if (element.hasFactorElement()) 8218 composeDecimal(t, "ExplanationOfBenefit", "factor", element.getFactorElement(), -1); 8219 if (element.hasNet()) 8220 composeMoney(t, "ExplanationOfBenefit", "net", element.getNet(), -1); 8221 for (int i = 0; i < element.getNoteNumber().size(); i++) 8222 composePositiveInt(t, "ExplanationOfBenefit", "noteNumber", element.getNoteNumber().get(i), i); 8223 for (int i = 0; i < element.getAdjudication().size(); i++) 8224 composeExplanationOfBenefitAdjudicationComponent(t, "ExplanationOfBenefit", "adjudication", 8225 element.getAdjudication().get(i), i); 8226 } 8227 8228 protected void composeExplanationOfBenefitTotalComponent(Complex parent, String parentType, String name, 8229 ExplanationOfBenefit.TotalComponent element, int index) { 8230 if (element == null) 8231 return; 8232 Complex t; 8233 if (Utilities.noString(parentType)) 8234 t = parent; 8235 else { 8236 t = parent.predicate("fhir:" + parentType + '.' + name); 8237 } 8238 composeBackboneElement(t, "total", name, element, index); 8239 if (element.hasCategory()) 8240 composeCodeableConcept(t, "ExplanationOfBenefit", "category", element.getCategory(), -1); 8241 if (element.hasAmount()) 8242 composeMoney(t, "ExplanationOfBenefit", "amount", element.getAmount(), -1); 8243 } 8244 8245 protected void composeExplanationOfBenefitPaymentComponent(Complex parent, String parentType, String name, 8246 ExplanationOfBenefit.PaymentComponent element, int index) { 8247 if (element == null) 8248 return; 8249 Complex t; 8250 if (Utilities.noString(parentType)) 8251 t = parent; 8252 else { 8253 t = parent.predicate("fhir:" + parentType + '.' + name); 8254 } 8255 composeBackboneElement(t, "payment", name, element, index); 8256 if (element.hasType()) 8257 composeCodeableConcept(t, "ExplanationOfBenefit", "type", element.getType(), -1); 8258 if (element.hasAdjustment()) 8259 composeMoney(t, "ExplanationOfBenefit", "adjustment", element.getAdjustment(), -1); 8260 if (element.hasAdjustmentReason()) 8261 composeCodeableConcept(t, "ExplanationOfBenefit", "adjustmentReason", element.getAdjustmentReason(), -1); 8262 if (element.hasDateElement()) 8263 composeDate(t, "ExplanationOfBenefit", "date", element.getDateElement(), -1); 8264 if (element.hasAmount()) 8265 composeMoney(t, "ExplanationOfBenefit", "amount", element.getAmount(), -1); 8266 if (element.hasIdentifier()) 8267 composeIdentifier(t, "ExplanationOfBenefit", "identifier", element.getIdentifier(), -1); 8268 } 8269 8270 protected void composeExplanationOfBenefitNoteComponent(Complex parent, String parentType, String name, 8271 ExplanationOfBenefit.NoteComponent element, int index) { 8272 if (element == null) 8273 return; 8274 Complex t; 8275 if (Utilities.noString(parentType)) 8276 t = parent; 8277 else { 8278 t = parent.predicate("fhir:" + parentType + '.' + name); 8279 } 8280 composeBackboneElement(t, "processNote", name, element, index); 8281 if (element.hasNumberElement()) 8282 composePositiveInt(t, "ExplanationOfBenefit", "number", element.getNumberElement(), -1); 8283 if (element.hasTypeElement()) 8284 composeEnum(t, "ExplanationOfBenefit", "type", element.getTypeElement(), -1); 8285 if (element.hasTextElement()) 8286 composeString(t, "ExplanationOfBenefit", "text", element.getTextElement(), -1); 8287 if (element.hasLanguage()) 8288 composeCodeableConcept(t, "ExplanationOfBenefit", "language", element.getLanguage(), -1); 8289 } 8290 8291 protected void composeExplanationOfBenefitBenefitBalanceComponent(Complex parent, String parentType, String name, 8292 ExplanationOfBenefit.BenefitBalanceComponent element, int index) { 8293 if (element == null) 8294 return; 8295 Complex t; 8296 if (Utilities.noString(parentType)) 8297 t = parent; 8298 else { 8299 t = parent.predicate("fhir:" + parentType + '.' + name); 8300 } 8301 composeBackboneElement(t, "benefitBalance", name, element, index); 8302 if (element.hasCategory()) 8303 composeCodeableConcept(t, "ExplanationOfBenefit", "category", element.getCategory(), -1); 8304 if (element.hasExcludedElement()) 8305 composeBoolean(t, "ExplanationOfBenefit", "excluded", element.getExcludedElement(), -1); 8306 if (element.hasNameElement()) 8307 composeString(t, "ExplanationOfBenefit", "name", element.getNameElement(), -1); 8308 if (element.hasDescriptionElement()) 8309 composeString(t, "ExplanationOfBenefit", "description", element.getDescriptionElement(), -1); 8310 if (element.hasNetwork()) 8311 composeCodeableConcept(t, "ExplanationOfBenefit", "network", element.getNetwork(), -1); 8312 if (element.hasUnit()) 8313 composeCodeableConcept(t, "ExplanationOfBenefit", "unit", element.getUnit(), -1); 8314 if (element.hasTerm()) 8315 composeCodeableConcept(t, "ExplanationOfBenefit", "term", element.getTerm(), -1); 8316 for (int i = 0; i < element.getFinancial().size(); i++) 8317 composeExplanationOfBenefitBenefitComponent(t, "ExplanationOfBenefit", "financial", element.getFinancial().get(i), 8318 i); 8319 } 8320 8321 protected void composeExplanationOfBenefitBenefitComponent(Complex parent, String parentType, String name, 8322 ExplanationOfBenefit.BenefitComponent element, int index) { 8323 if (element == null) 8324 return; 8325 Complex t; 8326 if (Utilities.noString(parentType)) 8327 t = parent; 8328 else { 8329 t = parent.predicate("fhir:" + parentType + '.' + name); 8330 } 8331 composeBackboneElement(t, "financial", name, element, index); 8332 if (element.hasType()) 8333 composeCodeableConcept(t, "ExplanationOfBenefit", "type", element.getType(), -1); 8334 if (element.hasAllowed()) 8335 composeType(t, "ExplanationOfBenefit", "allowed", element.getAllowed(), -1); 8336 if (element.hasUsed()) 8337 composeType(t, "ExplanationOfBenefit", "used", element.getUsed(), -1); 8338 } 8339 8340 protected void composeFamilyMemberHistory(Complex parent, String parentType, String name, FamilyMemberHistory element, 8341 int index) { 8342 if (element == null) 8343 return; 8344 Complex t; 8345 if (Utilities.noString(parentType)) 8346 t = parent; 8347 else { 8348 t = parent.predicate("fhir:" + parentType + '.' + name); 8349 } 8350 composeDomainResource(t, "FamilyMemberHistory", name, element, index); 8351 for (int i = 0; i < element.getIdentifier().size(); i++) 8352 composeIdentifier(t, "FamilyMemberHistory", "identifier", element.getIdentifier().get(i), i); 8353 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 8354 composeCanonical(t, "FamilyMemberHistory", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 8355 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 8356 composeUri(t, "FamilyMemberHistory", "instantiatesUri", element.getInstantiatesUri().get(i), i); 8357 if (element.hasStatusElement()) 8358 composeEnum(t, "FamilyMemberHistory", "status", element.getStatusElement(), -1); 8359 if (element.hasDataAbsentReason()) 8360 composeCodeableConcept(t, "FamilyMemberHistory", "dataAbsentReason", element.getDataAbsentReason(), -1); 8361 if (element.hasPatient()) 8362 composeReference(t, "FamilyMemberHistory", "patient", element.getPatient(), -1); 8363 if (element.hasDateElement()) 8364 composeDateTime(t, "FamilyMemberHistory", "date", element.getDateElement(), -1); 8365 if (element.hasNameElement()) 8366 composeString(t, "FamilyMemberHistory", "name", element.getNameElement(), -1); 8367 if (element.hasRelationship()) 8368 composeCodeableConcept(t, "FamilyMemberHistory", "relationship", element.getRelationship(), -1); 8369 if (element.hasSex()) 8370 composeCodeableConcept(t, "FamilyMemberHistory", "sex", element.getSex(), -1); 8371 if (element.hasBorn()) 8372 composeType(t, "FamilyMemberHistory", "born", element.getBorn(), -1); 8373 if (element.hasAge()) 8374 composeType(t, "FamilyMemberHistory", "age", element.getAge(), -1); 8375 if (element.hasEstimatedAgeElement()) 8376 composeBoolean(t, "FamilyMemberHistory", "estimatedAge", element.getEstimatedAgeElement(), -1); 8377 if (element.hasDeceased()) 8378 composeType(t, "FamilyMemberHistory", "deceased", element.getDeceased(), -1); 8379 for (int i = 0; i < element.getReasonCode().size(); i++) 8380 composeCodeableConcept(t, "FamilyMemberHistory", "reasonCode", element.getReasonCode().get(i), i); 8381 for (int i = 0; i < element.getReasonReference().size(); i++) 8382 composeReference(t, "FamilyMemberHistory", "reasonReference", element.getReasonReference().get(i), i); 8383 for (int i = 0; i < element.getNote().size(); i++) 8384 composeAnnotation(t, "FamilyMemberHistory", "note", element.getNote().get(i), i); 8385 for (int i = 0; i < element.getCondition().size(); i++) 8386 composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent(t, "FamilyMemberHistory", "condition", 8387 element.getCondition().get(i), i); 8388 } 8389 8390 protected void composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent(Complex parent, String parentType, 8391 String name, FamilyMemberHistory.FamilyMemberHistoryConditionComponent element, int index) { 8392 if (element == null) 8393 return; 8394 Complex t; 8395 if (Utilities.noString(parentType)) 8396 t = parent; 8397 else { 8398 t = parent.predicate("fhir:" + parentType + '.' + name); 8399 } 8400 composeBackboneElement(t, "condition", name, element, index); 8401 if (element.hasCode()) 8402 composeCodeableConcept(t, "FamilyMemberHistory", "code", element.getCode(), -1); 8403 if (element.hasOutcome()) 8404 composeCodeableConcept(t, "FamilyMemberHistory", "outcome", element.getOutcome(), -1); 8405 if (element.hasContributedToDeathElement()) 8406 composeBoolean(t, "FamilyMemberHistory", "contributedToDeath", element.getContributedToDeathElement(), -1); 8407 if (element.hasOnset()) 8408 composeType(t, "FamilyMemberHistory", "onset", element.getOnset(), -1); 8409 for (int i = 0; i < element.getNote().size(); i++) 8410 composeAnnotation(t, "FamilyMemberHistory", "note", element.getNote().get(i), i); 8411 } 8412 8413 protected void composeFlag(Complex parent, String parentType, String name, Flag 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:" + parentType + '.' + name); 8421 } 8422 composeDomainResource(t, "Flag", name, element, index); 8423 for (int i = 0; i < element.getIdentifier().size(); i++) 8424 composeIdentifier(t, "Flag", "identifier", element.getIdentifier().get(i), i); 8425 if (element.hasStatusElement()) 8426 composeEnum(t, "Flag", "status", element.getStatusElement(), -1); 8427 for (int i = 0; i < element.getCategory().size(); i++) 8428 composeCodeableConcept(t, "Flag", "category", element.getCategory().get(i), i); 8429 if (element.hasCode()) 8430 composeCodeableConcept(t, "Flag", "code", element.getCode(), -1); 8431 if (element.hasSubject()) 8432 composeReference(t, "Flag", "subject", element.getSubject(), -1); 8433 if (element.hasPeriod()) 8434 composePeriod(t, "Flag", "period", element.getPeriod(), -1); 8435 if (element.hasEncounter()) 8436 composeReference(t, "Flag", "encounter", element.getEncounter(), -1); 8437 if (element.hasAuthor()) 8438 composeReference(t, "Flag", "author", element.getAuthor(), -1); 8439 } 8440 8441 protected void composeGoal(Complex parent, String parentType, String name, Goal element, int index) { 8442 if (element == null) 8443 return; 8444 Complex t; 8445 if (Utilities.noString(parentType)) 8446 t = parent; 8447 else { 8448 t = parent.predicate("fhir:" + parentType + '.' + name); 8449 } 8450 composeDomainResource(t, "Goal", name, element, index); 8451 for (int i = 0; i < element.getIdentifier().size(); i++) 8452 composeIdentifier(t, "Goal", "identifier", element.getIdentifier().get(i), i); 8453 if (element.hasLifecycleStatusElement()) 8454 composeEnum(t, "Goal", "lifecycleStatus", element.getLifecycleStatusElement(), -1); 8455 if (element.hasAchievementStatus()) 8456 composeCodeableConcept(t, "Goal", "achievementStatus", element.getAchievementStatus(), -1); 8457 for (int i = 0; i < element.getCategory().size(); i++) 8458 composeCodeableConcept(t, "Goal", "category", element.getCategory().get(i), i); 8459 if (element.hasPriority()) 8460 composeCodeableConcept(t, "Goal", "priority", element.getPriority(), -1); 8461 if (element.hasDescription()) 8462 composeCodeableConcept(t, "Goal", "description", element.getDescription(), -1); 8463 if (element.hasSubject()) 8464 composeReference(t, "Goal", "subject", element.getSubject(), -1); 8465 if (element.hasStart()) 8466 composeType(t, "Goal", "start", element.getStart(), -1); 8467 for (int i = 0; i < element.getTarget().size(); i++) 8468 composeGoalGoalTargetComponent(t, "Goal", "target", element.getTarget().get(i), i); 8469 if (element.hasStatusDateElement()) 8470 composeDate(t, "Goal", "statusDate", element.getStatusDateElement(), -1); 8471 if (element.hasStatusReasonElement()) 8472 composeString(t, "Goal", "statusReason", element.getStatusReasonElement(), -1); 8473 if (element.hasExpressedBy()) 8474 composeReference(t, "Goal", "expressedBy", element.getExpressedBy(), -1); 8475 for (int i = 0; i < element.getAddresses().size(); i++) 8476 composeReference(t, "Goal", "addresses", element.getAddresses().get(i), i); 8477 for (int i = 0; i < element.getNote().size(); i++) 8478 composeAnnotation(t, "Goal", "note", element.getNote().get(i), i); 8479 for (int i = 0; i < element.getOutcomeCode().size(); i++) 8480 composeCodeableConcept(t, "Goal", "outcomeCode", element.getOutcomeCode().get(i), i); 8481 for (int i = 0; i < element.getOutcomeReference().size(); i++) 8482 composeReference(t, "Goal", "outcomeReference", element.getOutcomeReference().get(i), i); 8483 } 8484 8485 protected void composeGoalGoalTargetComponent(Complex parent, String parentType, String name, 8486 Goal.GoalTargetComponent element, int index) { 8487 if (element == null) 8488 return; 8489 Complex t; 8490 if (Utilities.noString(parentType)) 8491 t = parent; 8492 else { 8493 t = parent.predicate("fhir:" + parentType + '.' + name); 8494 } 8495 composeBackboneElement(t, "target", name, element, index); 8496 if (element.hasMeasure()) 8497 composeCodeableConcept(t, "Goal", "measure", element.getMeasure(), -1); 8498 if (element.hasDetail()) 8499 composeType(t, "Goal", "detail", element.getDetail(), -1); 8500 if (element.hasDue()) 8501 composeType(t, "Goal", "due", element.getDue(), -1); 8502 } 8503 8504 protected void composeGraphDefinition(Complex parent, String parentType, String name, GraphDefinition element, 8505 int index) { 8506 if (element == null) 8507 return; 8508 Complex t; 8509 if (Utilities.noString(parentType)) 8510 t = parent; 8511 else { 8512 t = parent.predicate("fhir:" + parentType + '.' + name); 8513 } 8514 composeDomainResource(t, "GraphDefinition", name, element, index); 8515 if (element.hasUrlElement()) 8516 composeUri(t, "GraphDefinition", "url", element.getUrlElement(), -1); 8517 if (element.hasVersionElement()) 8518 composeString(t, "GraphDefinition", "version", element.getVersionElement(), -1); 8519 if (element.hasNameElement()) 8520 composeString(t, "GraphDefinition", "name", element.getNameElement(), -1); 8521 if (element.hasStatusElement()) 8522 composeEnum(t, "GraphDefinition", "status", element.getStatusElement(), -1); 8523 if (element.hasExperimentalElement()) 8524 composeBoolean(t, "GraphDefinition", "experimental", element.getExperimentalElement(), -1); 8525 if (element.hasDateElement()) 8526 composeDateTime(t, "GraphDefinition", "date", element.getDateElement(), -1); 8527 if (element.hasPublisherElement()) 8528 composeString(t, "GraphDefinition", "publisher", element.getPublisherElement(), -1); 8529 for (int i = 0; i < element.getContact().size(); i++) 8530 composeContactDetail(t, "GraphDefinition", "contact", element.getContact().get(i), i); 8531 if (element.hasDescriptionElement()) 8532 composeMarkdown(t, "GraphDefinition", "description", element.getDescriptionElement(), -1); 8533 for (int i = 0; i < element.getUseContext().size(); i++) 8534 composeUsageContext(t, "GraphDefinition", "useContext", element.getUseContext().get(i), i); 8535 for (int i = 0; i < element.getJurisdiction().size(); i++) 8536 composeCodeableConcept(t, "GraphDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 8537 if (element.hasPurposeElement()) 8538 composeMarkdown(t, "GraphDefinition", "purpose", element.getPurposeElement(), -1); 8539 if (element.hasStartElement()) 8540 composeCode(t, "GraphDefinition", "start", element.getStartElement(), -1); 8541 if (element.hasProfileElement()) 8542 composeCanonical(t, "GraphDefinition", "profile", element.getProfileElement(), -1); 8543 for (int i = 0; i < element.getLink().size(); i++) 8544 composeGraphDefinitionGraphDefinitionLinkComponent(t, "GraphDefinition", "link", element.getLink().get(i), i); 8545 } 8546 8547 protected void composeGraphDefinitionGraphDefinitionLinkComponent(Complex parent, String parentType, String name, 8548 GraphDefinition.GraphDefinitionLinkComponent element, int index) { 8549 if (element == null) 8550 return; 8551 Complex t; 8552 if (Utilities.noString(parentType)) 8553 t = parent; 8554 else { 8555 t = parent.predicate("fhir:" + parentType + '.' + name); 8556 } 8557 composeBackboneElement(t, "link", name, element, index); 8558 if (element.hasPathElement()) 8559 composeString(t, "GraphDefinition", "path", element.getPathElement(), -1); 8560 if (element.hasSliceNameElement()) 8561 composeString(t, "GraphDefinition", "sliceName", element.getSliceNameElement(), -1); 8562 if (element.hasMinElement()) 8563 composeInteger(t, "GraphDefinition", "min", element.getMinElement(), -1); 8564 if (element.hasMaxElement()) 8565 composeString(t, "GraphDefinition", "max", element.getMaxElement(), -1); 8566 if (element.hasDescriptionElement()) 8567 composeString(t, "GraphDefinition", "description", element.getDescriptionElement(), -1); 8568 for (int i = 0; i < element.getTarget().size(); i++) 8569 composeGraphDefinitionGraphDefinitionLinkTargetComponent(t, "GraphDefinition", "target", 8570 element.getTarget().get(i), i); 8571 } 8572 8573 protected void composeGraphDefinitionGraphDefinitionLinkTargetComponent(Complex parent, String parentType, 8574 String name, GraphDefinition.GraphDefinitionLinkTargetComponent element, int index) { 8575 if (element == null) 8576 return; 8577 Complex t; 8578 if (Utilities.noString(parentType)) 8579 t = parent; 8580 else { 8581 t = parent.predicate("fhir:" + parentType + '.' + name); 8582 } 8583 composeBackboneElement(t, "target", name, element, index); 8584 if (element.hasTypeElement()) 8585 composeCode(t, "GraphDefinition", "type", element.getTypeElement(), -1); 8586 if (element.hasParamsElement()) 8587 composeString(t, "GraphDefinition", "params", element.getParamsElement(), -1); 8588 if (element.hasProfileElement()) 8589 composeCanonical(t, "GraphDefinition", "profile", element.getProfileElement(), -1); 8590 for (int i = 0; i < element.getCompartment().size(); i++) 8591 composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent(t, "GraphDefinition", "compartment", 8592 element.getCompartment().get(i), i); 8593 for (int i = 0; i < element.getLink().size(); i++) 8594 composeGraphDefinitionGraphDefinitionLinkComponent(t, "GraphDefinition", "link", element.getLink().get(i), i); 8595 } 8596 8597 protected void composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent(Complex parent, String parentType, 8598 String name, GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent element, int index) { 8599 if (element == null) 8600 return; 8601 Complex t; 8602 if (Utilities.noString(parentType)) 8603 t = parent; 8604 else { 8605 t = parent.predicate("fhir:" + parentType + '.' + name); 8606 } 8607 composeBackboneElement(t, "compartment", name, element, index); 8608 if (element.hasUseElement()) 8609 composeEnum(t, "GraphDefinition", "use", element.getUseElement(), -1); 8610 if (element.hasCodeElement()) 8611 composeEnum(t, "GraphDefinition", "code", element.getCodeElement(), -1); 8612 if (element.hasRuleElement()) 8613 composeEnum(t, "GraphDefinition", "rule", element.getRuleElement(), -1); 8614 if (element.hasExpressionElement()) 8615 composeString(t, "GraphDefinition", "expression", element.getExpressionElement(), -1); 8616 if (element.hasDescriptionElement()) 8617 composeString(t, "GraphDefinition", "description", element.getDescriptionElement(), -1); 8618 } 8619 8620 protected void composeGroup(Complex parent, String parentType, String name, Group element, int index) { 8621 if (element == null) 8622 return; 8623 Complex t; 8624 if (Utilities.noString(parentType)) 8625 t = parent; 8626 else { 8627 t = parent.predicate("fhir:" + parentType + '.' + name); 8628 } 8629 composeDomainResource(t, "Group", name, element, index); 8630 for (int i = 0; i < element.getIdentifier().size(); i++) 8631 composeIdentifier(t, "Group", "identifier", element.getIdentifier().get(i), i); 8632 if (element.hasActiveElement()) 8633 composeBoolean(t, "Group", "active", element.getActiveElement(), -1); 8634 if (element.hasTypeElement()) 8635 composeEnum(t, "Group", "type", element.getTypeElement(), -1); 8636 if (element.hasActualElement()) 8637 composeBoolean(t, "Group", "actual", element.getActualElement(), -1); 8638 if (element.hasCode()) 8639 composeCodeableConcept(t, "Group", "code", element.getCode(), -1); 8640 if (element.hasNameElement()) 8641 composeString(t, "Group", "name", element.getNameElement(), -1); 8642 if (element.hasQuantityElement()) 8643 composeUnsignedInt(t, "Group", "quantity", element.getQuantityElement(), -1); 8644 if (element.hasManagingEntity()) 8645 composeReference(t, "Group", "managingEntity", element.getManagingEntity(), -1); 8646 for (int i = 0; i < element.getCharacteristic().size(); i++) 8647 composeGroupGroupCharacteristicComponent(t, "Group", "characteristic", element.getCharacteristic().get(i), i); 8648 for (int i = 0; i < element.getMember().size(); i++) 8649 composeGroupGroupMemberComponent(t, "Group", "member", element.getMember().get(i), i); 8650 } 8651 8652 protected void composeGroupGroupCharacteristicComponent(Complex parent, String parentType, String name, 8653 Group.GroupCharacteristicComponent element, int index) { 8654 if (element == null) 8655 return; 8656 Complex t; 8657 if (Utilities.noString(parentType)) 8658 t = parent; 8659 else { 8660 t = parent.predicate("fhir:" + parentType + '.' + name); 8661 } 8662 composeBackboneElement(t, "characteristic", name, element, index); 8663 if (element.hasCode()) 8664 composeCodeableConcept(t, "Group", "code", element.getCode(), -1); 8665 if (element.hasValue()) 8666 composeType(t, "Group", "value", element.getValue(), -1); 8667 if (element.hasExcludeElement()) 8668 composeBoolean(t, "Group", "exclude", element.getExcludeElement(), -1); 8669 if (element.hasPeriod()) 8670 composePeriod(t, "Group", "period", element.getPeriod(), -1); 8671 } 8672 8673 protected void composeGroupGroupMemberComponent(Complex parent, String parentType, String name, 8674 Group.GroupMemberComponent element, int index) { 8675 if (element == null) 8676 return; 8677 Complex t; 8678 if (Utilities.noString(parentType)) 8679 t = parent; 8680 else { 8681 t = parent.predicate("fhir:" + parentType + '.' + name); 8682 } 8683 composeBackboneElement(t, "member", name, element, index); 8684 if (element.hasEntity()) 8685 composeReference(t, "Group", "entity", element.getEntity(), -1); 8686 if (element.hasPeriod()) 8687 composePeriod(t, "Group", "period", element.getPeriod(), -1); 8688 if (element.hasInactiveElement()) 8689 composeBoolean(t, "Group", "inactive", element.getInactiveElement(), -1); 8690 } 8691 8692 protected void composeGuidanceResponse(Complex parent, String parentType, String name, GuidanceResponse element, 8693 int index) { 8694 if (element == null) 8695 return; 8696 Complex t; 8697 if (Utilities.noString(parentType)) 8698 t = parent; 8699 else { 8700 t = parent.predicate("fhir:" + parentType + '.' + name); 8701 } 8702 composeDomainResource(t, "GuidanceResponse", name, element, index); 8703 if (element.hasRequestIdentifier()) 8704 composeIdentifier(t, "GuidanceResponse", "requestIdentifier", element.getRequestIdentifier(), -1); 8705 for (int i = 0; i < element.getIdentifier().size(); i++) 8706 composeIdentifier(t, "GuidanceResponse", "identifier", element.getIdentifier().get(i), i); 8707 if (element.hasModule()) 8708 composeType(t, "GuidanceResponse", "module", element.getModule(), -1); 8709 if (element.hasStatusElement()) 8710 composeEnum(t, "GuidanceResponse", "status", element.getStatusElement(), -1); 8711 if (element.hasSubject()) 8712 composeReference(t, "GuidanceResponse", "subject", element.getSubject(), -1); 8713 if (element.hasEncounter()) 8714 composeReference(t, "GuidanceResponse", "encounter", element.getEncounter(), -1); 8715 if (element.hasOccurrenceDateTimeElement()) 8716 composeDateTime(t, "GuidanceResponse", "occurrenceDateTime", element.getOccurrenceDateTimeElement(), -1); 8717 if (element.hasPerformer()) 8718 composeReference(t, "GuidanceResponse", "performer", element.getPerformer(), -1); 8719 for (int i = 0; i < element.getReasonCode().size(); i++) 8720 composeCodeableConcept(t, "GuidanceResponse", "reasonCode", element.getReasonCode().get(i), i); 8721 for (int i = 0; i < element.getReasonReference().size(); i++) 8722 composeReference(t, "GuidanceResponse", "reasonReference", element.getReasonReference().get(i), i); 8723 for (int i = 0; i < element.getNote().size(); i++) 8724 composeAnnotation(t, "GuidanceResponse", "note", element.getNote().get(i), i); 8725 for (int i = 0; i < element.getEvaluationMessage().size(); i++) 8726 composeReference(t, "GuidanceResponse", "evaluationMessage", element.getEvaluationMessage().get(i), i); 8727 if (element.hasOutputParameters()) 8728 composeReference(t, "GuidanceResponse", "outputParameters", element.getOutputParameters(), -1); 8729 if (element.hasResult()) 8730 composeReference(t, "GuidanceResponse", "result", element.getResult(), -1); 8731 for (int i = 0; i < element.getDataRequirement().size(); i++) 8732 composeDataRequirement(t, "GuidanceResponse", "dataRequirement", element.getDataRequirement().get(i), i); 8733 } 8734 8735 protected void composeHealthcareService(Complex parent, String parentType, String name, HealthcareService element, 8736 int index) { 8737 if (element == null) 8738 return; 8739 Complex t; 8740 if (Utilities.noString(parentType)) 8741 t = parent; 8742 else { 8743 t = parent.predicate("fhir:" + parentType + '.' + name); 8744 } 8745 composeDomainResource(t, "HealthcareService", name, element, index); 8746 for (int i = 0; i < element.getIdentifier().size(); i++) 8747 composeIdentifier(t, "HealthcareService", "identifier", element.getIdentifier().get(i), i); 8748 if (element.hasActiveElement()) 8749 composeBoolean(t, "HealthcareService", "active", element.getActiveElement(), -1); 8750 if (element.hasProvidedBy()) 8751 composeReference(t, "HealthcareService", "providedBy", element.getProvidedBy(), -1); 8752 for (int i = 0; i < element.getCategory().size(); i++) 8753 composeCodeableConcept(t, "HealthcareService", "category", element.getCategory().get(i), i); 8754 for (int i = 0; i < element.getType().size(); i++) 8755 composeCodeableConcept(t, "HealthcareService", "type", element.getType().get(i), i); 8756 for (int i = 0; i < element.getSpecialty().size(); i++) 8757 composeCodeableConcept(t, "HealthcareService", "specialty", element.getSpecialty().get(i), i); 8758 for (int i = 0; i < element.getLocation().size(); i++) 8759 composeReference(t, "HealthcareService", "location", element.getLocation().get(i), i); 8760 if (element.hasNameElement()) 8761 composeString(t, "HealthcareService", "name", element.getNameElement(), -1); 8762 if (element.hasCommentElement()) 8763 composeString(t, "HealthcareService", "comment", element.getCommentElement(), -1); 8764 if (element.hasExtraDetailsElement()) 8765 composeMarkdown(t, "HealthcareService", "extraDetails", element.getExtraDetailsElement(), -1); 8766 if (element.hasPhoto()) 8767 composeAttachment(t, "HealthcareService", "photo", element.getPhoto(), -1); 8768 for (int i = 0; i < element.getTelecom().size(); i++) 8769 composeContactPoint(t, "HealthcareService", "telecom", element.getTelecom().get(i), i); 8770 for (int i = 0; i < element.getCoverageArea().size(); i++) 8771 composeReference(t, "HealthcareService", "coverageArea", element.getCoverageArea().get(i), i); 8772 for (int i = 0; i < element.getServiceProvisionCode().size(); i++) 8773 composeCodeableConcept(t, "HealthcareService", "serviceProvisionCode", element.getServiceProvisionCode().get(i), 8774 i); 8775 for (int i = 0; i < element.getEligibility().size(); i++) 8776 composeHealthcareServiceHealthcareServiceEligibilityComponent(t, "HealthcareService", "eligibility", 8777 element.getEligibility().get(i), i); 8778 for (int i = 0; i < element.getProgram().size(); i++) 8779 composeCodeableConcept(t, "HealthcareService", "program", element.getProgram().get(i), i); 8780 for (int i = 0; i < element.getCharacteristic().size(); i++) 8781 composeCodeableConcept(t, "HealthcareService", "characteristic", element.getCharacteristic().get(i), i); 8782 for (int i = 0; i < element.getCommunication().size(); i++) 8783 composeCodeableConcept(t, "HealthcareService", "communication", element.getCommunication().get(i), i); 8784 for (int i = 0; i < element.getReferralMethod().size(); i++) 8785 composeCodeableConcept(t, "HealthcareService", "referralMethod", element.getReferralMethod().get(i), i); 8786 if (element.hasAppointmentRequiredElement()) 8787 composeBoolean(t, "HealthcareService", "appointmentRequired", element.getAppointmentRequiredElement(), -1); 8788 for (int i = 0; i < element.getAvailableTime().size(); i++) 8789 composeHealthcareServiceHealthcareServiceAvailableTimeComponent(t, "HealthcareService", "availableTime", 8790 element.getAvailableTime().get(i), i); 8791 for (int i = 0; i < element.getNotAvailable().size(); i++) 8792 composeHealthcareServiceHealthcareServiceNotAvailableComponent(t, "HealthcareService", "notAvailable", 8793 element.getNotAvailable().get(i), i); 8794 if (element.hasAvailabilityExceptionsElement()) 8795 composeString(t, "HealthcareService", "availabilityExceptions", element.getAvailabilityExceptionsElement(), -1); 8796 for (int i = 0; i < element.getEndpoint().size(); i++) 8797 composeReference(t, "HealthcareService", "endpoint", element.getEndpoint().get(i), i); 8798 } 8799 8800 protected void composeHealthcareServiceHealthcareServiceEligibilityComponent(Complex parent, String parentType, 8801 String name, HealthcareService.HealthcareServiceEligibilityComponent element, int index) { 8802 if (element == null) 8803 return; 8804 Complex t; 8805 if (Utilities.noString(parentType)) 8806 t = parent; 8807 else { 8808 t = parent.predicate("fhir:" + parentType + '.' + name); 8809 } 8810 composeBackboneElement(t, "eligibility", name, element, index); 8811 if (element.hasCode()) 8812 composeCodeableConcept(t, "HealthcareService", "code", element.getCode(), -1); 8813 if (element.hasCommentElement()) 8814 composeMarkdown(t, "HealthcareService", "comment", element.getCommentElement(), -1); 8815 } 8816 8817 protected void composeHealthcareServiceHealthcareServiceAvailableTimeComponent(Complex parent, String parentType, 8818 String name, HealthcareService.HealthcareServiceAvailableTimeComponent element, int index) { 8819 if (element == null) 8820 return; 8821 Complex t; 8822 if (Utilities.noString(parentType)) 8823 t = parent; 8824 else { 8825 t = parent.predicate("fhir:" + parentType + '.' + name); 8826 } 8827 composeBackboneElement(t, "availableTime", name, element, index); 8828 for (int i = 0; i < element.getDaysOfWeek().size(); i++) 8829 composeEnum(t, "HealthcareService", "daysOfWeek", element.getDaysOfWeek().get(i), i); 8830 if (element.hasAllDayElement()) 8831 composeBoolean(t, "HealthcareService", "allDay", element.getAllDayElement(), -1); 8832 if (element.hasAvailableStartTimeElement()) 8833 composeTime(t, "HealthcareService", "availableStartTime", element.getAvailableStartTimeElement(), -1); 8834 if (element.hasAvailableEndTimeElement()) 8835 composeTime(t, "HealthcareService", "availableEndTime", element.getAvailableEndTimeElement(), -1); 8836 } 8837 8838 protected void composeHealthcareServiceHealthcareServiceNotAvailableComponent(Complex parent, String parentType, 8839 String name, HealthcareService.HealthcareServiceNotAvailableComponent element, int index) { 8840 if (element == null) 8841 return; 8842 Complex t; 8843 if (Utilities.noString(parentType)) 8844 t = parent; 8845 else { 8846 t = parent.predicate("fhir:" + parentType + '.' + name); 8847 } 8848 composeBackboneElement(t, "notAvailable", name, element, index); 8849 if (element.hasDescriptionElement()) 8850 composeString(t, "HealthcareService", "description", element.getDescriptionElement(), -1); 8851 if (element.hasDuring()) 8852 composePeriod(t, "HealthcareService", "during", element.getDuring(), -1); 8853 } 8854 8855 protected void composeImagingStudy(Complex parent, String parentType, String name, ImagingStudy element, int index) { 8856 if (element == null) 8857 return; 8858 Complex t; 8859 if (Utilities.noString(parentType)) 8860 t = parent; 8861 else { 8862 t = parent.predicate("fhir:" + parentType + '.' + name); 8863 } 8864 composeDomainResource(t, "ImagingStudy", name, element, index); 8865 for (int i = 0; i < element.getIdentifier().size(); i++) 8866 composeIdentifier(t, "ImagingStudy", "identifier", element.getIdentifier().get(i), i); 8867 if (element.hasStatusElement()) 8868 composeEnum(t, "ImagingStudy", "status", element.getStatusElement(), -1); 8869 for (int i = 0; i < element.getModality().size(); i++) 8870 composeCoding(t, "ImagingStudy", "modality", element.getModality().get(i), i); 8871 if (element.hasSubject()) 8872 composeReference(t, "ImagingStudy", "subject", element.getSubject(), -1); 8873 if (element.hasEncounter()) 8874 composeReference(t, "ImagingStudy", "encounter", element.getEncounter(), -1); 8875 if (element.hasStartedElement()) 8876 composeDateTime(t, "ImagingStudy", "started", element.getStartedElement(), -1); 8877 for (int i = 0; i < element.getBasedOn().size(); i++) 8878 composeReference(t, "ImagingStudy", "basedOn", element.getBasedOn().get(i), i); 8879 if (element.hasReferrer()) 8880 composeReference(t, "ImagingStudy", "referrer", element.getReferrer(), -1); 8881 for (int i = 0; i < element.getInterpreter().size(); i++) 8882 composeReference(t, "ImagingStudy", "interpreter", element.getInterpreter().get(i), i); 8883 for (int i = 0; i < element.getEndpoint().size(); i++) 8884 composeReference(t, "ImagingStudy", "endpoint", element.getEndpoint().get(i), i); 8885 if (element.hasNumberOfSeriesElement()) 8886 composeUnsignedInt(t, "ImagingStudy", "numberOfSeries", element.getNumberOfSeriesElement(), -1); 8887 if (element.hasNumberOfInstancesElement()) 8888 composeUnsignedInt(t, "ImagingStudy", "numberOfInstances", element.getNumberOfInstancesElement(), -1); 8889 if (element.hasProcedureReference()) 8890 composeReference(t, "ImagingStudy", "procedureReference", element.getProcedureReference(), -1); 8891 for (int i = 0; i < element.getProcedureCode().size(); i++) 8892 composeCodeableConcept(t, "ImagingStudy", "procedureCode", element.getProcedureCode().get(i), i); 8893 if (element.hasLocation()) 8894 composeReference(t, "ImagingStudy", "location", element.getLocation(), -1); 8895 for (int i = 0; i < element.getReasonCode().size(); i++) 8896 composeCodeableConcept(t, "ImagingStudy", "reasonCode", element.getReasonCode().get(i), i); 8897 for (int i = 0; i < element.getReasonReference().size(); i++) 8898 composeReference(t, "ImagingStudy", "reasonReference", element.getReasonReference().get(i), i); 8899 for (int i = 0; i < element.getNote().size(); i++) 8900 composeAnnotation(t, "ImagingStudy", "note", element.getNote().get(i), i); 8901 if (element.hasDescriptionElement()) 8902 composeString(t, "ImagingStudy", "description", element.getDescriptionElement(), -1); 8903 for (int i = 0; i < element.getSeries().size(); i++) 8904 composeImagingStudyImagingStudySeriesComponent(t, "ImagingStudy", "series", element.getSeries().get(i), i); 8905 } 8906 8907 protected void composeImagingStudyImagingStudySeriesComponent(Complex parent, String parentType, String name, 8908 ImagingStudy.ImagingStudySeriesComponent element, int index) { 8909 if (element == null) 8910 return; 8911 Complex t; 8912 if (Utilities.noString(parentType)) 8913 t = parent; 8914 else { 8915 t = parent.predicate("fhir:" + parentType + '.' + name); 8916 } 8917 composeBackboneElement(t, "series", name, element, index); 8918 if (element.hasUidElement()) 8919 composeId(t, "ImagingStudy", "uid", element.getUidElement(), -1); 8920 if (element.hasNumberElement()) 8921 composeUnsignedInt(t, "ImagingStudy", "number", element.getNumberElement(), -1); 8922 if (element.hasModality()) 8923 composeCoding(t, "ImagingStudy", "modality", element.getModality(), -1); 8924 if (element.hasDescriptionElement()) 8925 composeString(t, "ImagingStudy", "description", element.getDescriptionElement(), -1); 8926 if (element.hasNumberOfInstancesElement()) 8927 composeUnsignedInt(t, "ImagingStudy", "numberOfInstances", element.getNumberOfInstancesElement(), -1); 8928 for (int i = 0; i < element.getEndpoint().size(); i++) 8929 composeReference(t, "ImagingStudy", "endpoint", element.getEndpoint().get(i), i); 8930 if (element.hasBodySite()) 8931 composeCoding(t, "ImagingStudy", "bodySite", element.getBodySite(), -1); 8932 if (element.hasLaterality()) 8933 composeCoding(t, "ImagingStudy", "laterality", element.getLaterality(), -1); 8934 for (int i = 0; i < element.getSpecimen().size(); i++) 8935 composeReference(t, "ImagingStudy", "specimen", element.getSpecimen().get(i), i); 8936 if (element.hasStartedElement()) 8937 composeDateTime(t, "ImagingStudy", "started", element.getStartedElement(), -1); 8938 for (int i = 0; i < element.getPerformer().size(); i++) 8939 composeImagingStudyImagingStudySeriesPerformerComponent(t, "ImagingStudy", "performer", 8940 element.getPerformer().get(i), i); 8941 for (int i = 0; i < element.getInstance().size(); i++) 8942 composeImagingStudyImagingStudySeriesInstanceComponent(t, "ImagingStudy", "instance", 8943 element.getInstance().get(i), i); 8944 } 8945 8946 protected void composeImagingStudyImagingStudySeriesPerformerComponent(Complex parent, String parentType, String name, 8947 ImagingStudy.ImagingStudySeriesPerformerComponent element, int index) { 8948 if (element == null) 8949 return; 8950 Complex t; 8951 if (Utilities.noString(parentType)) 8952 t = parent; 8953 else { 8954 t = parent.predicate("fhir:" + parentType + '.' + name); 8955 } 8956 composeBackboneElement(t, "performer", name, element, index); 8957 if (element.hasFunction()) 8958 composeCodeableConcept(t, "ImagingStudy", "function", element.getFunction(), -1); 8959 if (element.hasActor()) 8960 composeReference(t, "ImagingStudy", "actor", element.getActor(), -1); 8961 } 8962 8963 protected void composeImagingStudyImagingStudySeriesInstanceComponent(Complex parent, String parentType, String name, 8964 ImagingStudy.ImagingStudySeriesInstanceComponent element, int index) { 8965 if (element == null) 8966 return; 8967 Complex t; 8968 if (Utilities.noString(parentType)) 8969 t = parent; 8970 else { 8971 t = parent.predicate("fhir:" + parentType + '.' + name); 8972 } 8973 composeBackboneElement(t, "instance", name, element, index); 8974 if (element.hasUidElement()) 8975 composeId(t, "ImagingStudy", "uid", element.getUidElement(), -1); 8976 if (element.hasSopClass()) 8977 composeCoding(t, "ImagingStudy", "sopClass", element.getSopClass(), -1); 8978 if (element.hasNumberElement()) 8979 composeUnsignedInt(t, "ImagingStudy", "number", element.getNumberElement(), -1); 8980 if (element.hasTitleElement()) 8981 composeString(t, "ImagingStudy", "title", element.getTitleElement(), -1); 8982 } 8983 8984 protected void composeImmunization(Complex parent, String parentType, String name, Immunization element, int index) { 8985 if (element == null) 8986 return; 8987 Complex t; 8988 if (Utilities.noString(parentType)) 8989 t = parent; 8990 else { 8991 t = parent.predicate("fhir:" + parentType + '.' + name); 8992 } 8993 composeDomainResource(t, "Immunization", name, element, index); 8994 for (int i = 0; i < element.getIdentifier().size(); i++) 8995 composeIdentifier(t, "Immunization", "identifier", element.getIdentifier().get(i), i); 8996 if (element.hasStatusElement()) 8997 composeEnum(t, "Immunization", "status", element.getStatusElement(), -1); 8998 if (element.hasStatusReason()) 8999 composeCodeableConcept(t, "Immunization", "statusReason", element.getStatusReason(), -1); 9000 if (element.hasVaccineCode()) 9001 composeCodeableConcept(t, "Immunization", "vaccineCode", element.getVaccineCode(), -1); 9002 if (element.hasPatient()) 9003 composeReference(t, "Immunization", "patient", element.getPatient(), -1); 9004 if (element.hasEncounter()) 9005 composeReference(t, "Immunization", "encounter", element.getEncounter(), -1); 9006 if (element.hasOccurrence()) 9007 composeType(t, "Immunization", "occurrence", element.getOccurrence(), -1); 9008 if (element.hasRecordedElement()) 9009 composeDateTime(t, "Immunization", "recorded", element.getRecordedElement(), -1); 9010 if (element.hasPrimarySourceElement()) 9011 composeBoolean(t, "Immunization", "primarySource", element.getPrimarySourceElement(), -1); 9012 if (element.hasReportOrigin()) 9013 composeCodeableConcept(t, "Immunization", "reportOrigin", element.getReportOrigin(), -1); 9014 if (element.hasLocation()) 9015 composeReference(t, "Immunization", "location", element.getLocation(), -1); 9016 if (element.hasManufacturer()) 9017 composeReference(t, "Immunization", "manufacturer", element.getManufacturer(), -1); 9018 if (element.hasLotNumberElement()) 9019 composeString(t, "Immunization", "lotNumber", element.getLotNumberElement(), -1); 9020 if (element.hasExpirationDateElement()) 9021 composeDate(t, "Immunization", "expirationDate", element.getExpirationDateElement(), -1); 9022 if (element.hasSite()) 9023 composeCodeableConcept(t, "Immunization", "site", element.getSite(), -1); 9024 if (element.hasRoute()) 9025 composeCodeableConcept(t, "Immunization", "route", element.getRoute(), -1); 9026 if (element.hasDoseQuantity()) 9027 composeQuantity(t, "Immunization", "doseQuantity", element.getDoseQuantity(), -1); 9028 for (int i = 0; i < element.getPerformer().size(); i++) 9029 composeImmunizationImmunizationPerformerComponent(t, "Immunization", "performer", element.getPerformer().get(i), 9030 i); 9031 for (int i = 0; i < element.getNote().size(); i++) 9032 composeAnnotation(t, "Immunization", "note", element.getNote().get(i), i); 9033 for (int i = 0; i < element.getReasonCode().size(); i++) 9034 composeCodeableConcept(t, "Immunization", "reasonCode", element.getReasonCode().get(i), i); 9035 for (int i = 0; i < element.getReasonReference().size(); i++) 9036 composeReference(t, "Immunization", "reasonReference", element.getReasonReference().get(i), i); 9037 if (element.hasIsSubpotentElement()) 9038 composeBoolean(t, "Immunization", "isSubpotent", element.getIsSubpotentElement(), -1); 9039 for (int i = 0; i < element.getSubpotentReason().size(); i++) 9040 composeCodeableConcept(t, "Immunization", "subpotentReason", element.getSubpotentReason().get(i), i); 9041 for (int i = 0; i < element.getEducation().size(); i++) 9042 composeImmunizationImmunizationEducationComponent(t, "Immunization", "education", element.getEducation().get(i), 9043 i); 9044 for (int i = 0; i < element.getProgramEligibility().size(); i++) 9045 composeCodeableConcept(t, "Immunization", "programEligibility", element.getProgramEligibility().get(i), i); 9046 if (element.hasFundingSource()) 9047 composeCodeableConcept(t, "Immunization", "fundingSource", element.getFundingSource(), -1); 9048 for (int i = 0; i < element.getReaction().size(); i++) 9049 composeImmunizationImmunizationReactionComponent(t, "Immunization", "reaction", element.getReaction().get(i), i); 9050 for (int i = 0; i < element.getProtocolApplied().size(); i++) 9051 composeImmunizationImmunizationProtocolAppliedComponent(t, "Immunization", "protocolApplied", 9052 element.getProtocolApplied().get(i), i); 9053 } 9054 9055 protected void composeImmunizationImmunizationPerformerComponent(Complex parent, String parentType, String name, 9056 Immunization.ImmunizationPerformerComponent element, int index) { 9057 if (element == null) 9058 return; 9059 Complex t; 9060 if (Utilities.noString(parentType)) 9061 t = parent; 9062 else { 9063 t = parent.predicate("fhir:" + parentType + '.' + name); 9064 } 9065 composeBackboneElement(t, "performer", name, element, index); 9066 if (element.hasFunction()) 9067 composeCodeableConcept(t, "Immunization", "function", element.getFunction(), -1); 9068 if (element.hasActor()) 9069 composeReference(t, "Immunization", "actor", element.getActor(), -1); 9070 } 9071 9072 protected void composeImmunizationImmunizationEducationComponent(Complex parent, String parentType, String name, 9073 Immunization.ImmunizationEducationComponent element, int index) { 9074 if (element == null) 9075 return; 9076 Complex t; 9077 if (Utilities.noString(parentType)) 9078 t = parent; 9079 else { 9080 t = parent.predicate("fhir:" + parentType + '.' + name); 9081 } 9082 composeBackboneElement(t, "education", name, element, index); 9083 if (element.hasDocumentTypeElement()) 9084 composeString(t, "Immunization", "documentType", element.getDocumentTypeElement(), -1); 9085 if (element.hasReferenceElement()) 9086 composeUri(t, "Immunization", "reference", element.getReferenceElement(), -1); 9087 if (element.hasPublicationDateElement()) 9088 composeDateTime(t, "Immunization", "publicationDate", element.getPublicationDateElement(), -1); 9089 if (element.hasPresentationDateElement()) 9090 composeDateTime(t, "Immunization", "presentationDate", element.getPresentationDateElement(), -1); 9091 } 9092 9093 protected void composeImmunizationImmunizationReactionComponent(Complex parent, String parentType, String name, 9094 Immunization.ImmunizationReactionComponent element, int index) { 9095 if (element == null) 9096 return; 9097 Complex t; 9098 if (Utilities.noString(parentType)) 9099 t = parent; 9100 else { 9101 t = parent.predicate("fhir:" + parentType + '.' + name); 9102 } 9103 composeBackboneElement(t, "reaction", name, element, index); 9104 if (element.hasDateElement()) 9105 composeDateTime(t, "Immunization", "date", element.getDateElement(), -1); 9106 if (element.hasDetail()) 9107 composeReference(t, "Immunization", "detail", element.getDetail(), -1); 9108 if (element.hasReportedElement()) 9109 composeBoolean(t, "Immunization", "reported", element.getReportedElement(), -1); 9110 } 9111 9112 protected void composeImmunizationImmunizationProtocolAppliedComponent(Complex parent, String parentType, String name, 9113 Immunization.ImmunizationProtocolAppliedComponent element, int index) { 9114 if (element == null) 9115 return; 9116 Complex t; 9117 if (Utilities.noString(parentType)) 9118 t = parent; 9119 else { 9120 t = parent.predicate("fhir:" + parentType + '.' + name); 9121 } 9122 composeBackboneElement(t, "protocolApplied", name, element, index); 9123 if (element.hasSeriesElement()) 9124 composeString(t, "Immunization", "series", element.getSeriesElement(), -1); 9125 if (element.hasAuthority()) 9126 composeReference(t, "Immunization", "authority", element.getAuthority(), -1); 9127 for (int i = 0; i < element.getTargetDisease().size(); i++) 9128 composeCodeableConcept(t, "Immunization", "targetDisease", element.getTargetDisease().get(i), i); 9129 if (element.hasDoseNumber()) 9130 composeType(t, "Immunization", "doseNumber", element.getDoseNumber(), -1); 9131 if (element.hasSeriesDoses()) 9132 composeType(t, "Immunization", "seriesDoses", element.getSeriesDoses(), -1); 9133 } 9134 9135 protected void composeImmunizationEvaluation(Complex parent, String parentType, String name, 9136 ImmunizationEvaluation element, int index) { 9137 if (element == null) 9138 return; 9139 Complex t; 9140 if (Utilities.noString(parentType)) 9141 t = parent; 9142 else { 9143 t = parent.predicate("fhir:" + parentType + '.' + name); 9144 } 9145 composeDomainResource(t, "ImmunizationEvaluation", name, element, index); 9146 for (int i = 0; i < element.getIdentifier().size(); i++) 9147 composeIdentifier(t, "ImmunizationEvaluation", "identifier", element.getIdentifier().get(i), i); 9148 if (element.hasStatusElement()) 9149 composeEnum(t, "ImmunizationEvaluation", "status", element.getStatusElement(), -1); 9150 if (element.hasPatient()) 9151 composeReference(t, "ImmunizationEvaluation", "patient", element.getPatient(), -1); 9152 if (element.hasDateElement()) 9153 composeDateTime(t, "ImmunizationEvaluation", "date", element.getDateElement(), -1); 9154 if (element.hasAuthority()) 9155 composeReference(t, "ImmunizationEvaluation", "authority", element.getAuthority(), -1); 9156 if (element.hasTargetDisease()) 9157 composeCodeableConcept(t, "ImmunizationEvaluation", "targetDisease", element.getTargetDisease(), -1); 9158 if (element.hasImmunizationEvent()) 9159 composeReference(t, "ImmunizationEvaluation", "immunizationEvent", element.getImmunizationEvent(), -1); 9160 if (element.hasDoseStatus()) 9161 composeCodeableConcept(t, "ImmunizationEvaluation", "doseStatus", element.getDoseStatus(), -1); 9162 for (int i = 0; i < element.getDoseStatusReason().size(); i++) 9163 composeCodeableConcept(t, "ImmunizationEvaluation", "doseStatusReason", element.getDoseStatusReason().get(i), i); 9164 if (element.hasDescriptionElement()) 9165 composeString(t, "ImmunizationEvaluation", "description", element.getDescriptionElement(), -1); 9166 if (element.hasSeriesElement()) 9167 composeString(t, "ImmunizationEvaluation", "series", element.getSeriesElement(), -1); 9168 if (element.hasDoseNumber()) 9169 composeType(t, "ImmunizationEvaluation", "doseNumber", element.getDoseNumber(), -1); 9170 if (element.hasSeriesDoses()) 9171 composeType(t, "ImmunizationEvaluation", "seriesDoses", element.getSeriesDoses(), -1); 9172 } 9173 9174 protected void composeImmunizationRecommendation(Complex parent, String parentType, String name, 9175 ImmunizationRecommendation element, int index) { 9176 if (element == null) 9177 return; 9178 Complex t; 9179 if (Utilities.noString(parentType)) 9180 t = parent; 9181 else { 9182 t = parent.predicate("fhir:" + parentType + '.' + name); 9183 } 9184 composeDomainResource(t, "ImmunizationRecommendation", name, element, index); 9185 for (int i = 0; i < element.getIdentifier().size(); i++) 9186 composeIdentifier(t, "ImmunizationRecommendation", "identifier", element.getIdentifier().get(i), i); 9187 if (element.hasPatient()) 9188 composeReference(t, "ImmunizationRecommendation", "patient", element.getPatient(), -1); 9189 if (element.hasDateElement()) 9190 composeDateTime(t, "ImmunizationRecommendation", "date", element.getDateElement(), -1); 9191 if (element.hasAuthority()) 9192 composeReference(t, "ImmunizationRecommendation", "authority", element.getAuthority(), -1); 9193 for (int i = 0; i < element.getRecommendation().size(); i++) 9194 composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent(t, 9195 "ImmunizationRecommendation", "recommendation", element.getRecommendation().get(i), i); 9196 } 9197 9198 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent(Complex parent, 9199 String parentType, String name, 9200 ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element, int index) { 9201 if (element == null) 9202 return; 9203 Complex t; 9204 if (Utilities.noString(parentType)) 9205 t = parent; 9206 else { 9207 t = parent.predicate("fhir:" + parentType + '.' + name); 9208 } 9209 composeBackboneElement(t, "recommendation", name, element, index); 9210 for (int i = 0; i < element.getVaccineCode().size(); i++) 9211 composeCodeableConcept(t, "ImmunizationRecommendation", "vaccineCode", element.getVaccineCode().get(i), i); 9212 if (element.hasTargetDisease()) 9213 composeCodeableConcept(t, "ImmunizationRecommendation", "targetDisease", element.getTargetDisease(), -1); 9214 for (int i = 0; i < element.getContraindicatedVaccineCode().size(); i++) 9215 composeCodeableConcept(t, "ImmunizationRecommendation", "contraindicatedVaccineCode", 9216 element.getContraindicatedVaccineCode().get(i), i); 9217 if (element.hasForecastStatus()) 9218 composeCodeableConcept(t, "ImmunizationRecommendation", "forecastStatus", element.getForecastStatus(), -1); 9219 for (int i = 0; i < element.getForecastReason().size(); i++) 9220 composeCodeableConcept(t, "ImmunizationRecommendation", "forecastReason", element.getForecastReason().get(i), i); 9221 for (int i = 0; i < element.getDateCriterion().size(); i++) 9222 composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(t, 9223 "ImmunizationRecommendation", "dateCriterion", element.getDateCriterion().get(i), i); 9224 if (element.hasDescriptionElement()) 9225 composeString(t, "ImmunizationRecommendation", "description", element.getDescriptionElement(), -1); 9226 if (element.hasSeriesElement()) 9227 composeString(t, "ImmunizationRecommendation", "series", element.getSeriesElement(), -1); 9228 if (element.hasDoseNumber()) 9229 composeType(t, "ImmunizationRecommendation", "doseNumber", element.getDoseNumber(), -1); 9230 if (element.hasSeriesDoses()) 9231 composeType(t, "ImmunizationRecommendation", "seriesDoses", element.getSeriesDoses(), -1); 9232 for (int i = 0; i < element.getSupportingImmunization().size(); i++) 9233 composeReference(t, "ImmunizationRecommendation", "supportingImmunization", 9234 element.getSupportingImmunization().get(i), i); 9235 for (int i = 0; i < element.getSupportingPatientInformation().size(); i++) 9236 composeReference(t, "ImmunizationRecommendation", "supportingPatientInformation", 9237 element.getSupportingPatientInformation().get(i), i); 9238 } 9239 9240 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent( 9241 Complex parent, String parentType, String name, 9242 ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element, int index) { 9243 if (element == null) 9244 return; 9245 Complex t; 9246 if (Utilities.noString(parentType)) 9247 t = parent; 9248 else { 9249 t = parent.predicate("fhir:" + parentType + '.' + name); 9250 } 9251 composeBackboneElement(t, "dateCriterion", name, element, index); 9252 if (element.hasCode()) 9253 composeCodeableConcept(t, "ImmunizationRecommendation", "code", element.getCode(), -1); 9254 if (element.hasValueElement()) 9255 composeDateTime(t, "ImmunizationRecommendation", "value", element.getValueElement(), -1); 9256 } 9257 9258 protected void composeImplementationGuide(Complex parent, String parentType, String name, ImplementationGuide element, 9259 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:" + parentType + '.' + name); 9267 } 9268 composeDomainResource(t, "ImplementationGuide", name, element, index); 9269 if (element.hasUrlElement()) 9270 composeUri(t, "ImplementationGuide", "url", element.getUrlElement(), -1); 9271 if (element.hasVersionElement()) 9272 composeString(t, "ImplementationGuide", "version", element.getVersionElement(), -1); 9273 if (element.hasNameElement()) 9274 composeString(t, "ImplementationGuide", "name", element.getNameElement(), -1); 9275 if (element.hasTitleElement()) 9276 composeString(t, "ImplementationGuide", "title", element.getTitleElement(), -1); 9277 if (element.hasStatusElement()) 9278 composeEnum(t, "ImplementationGuide", "status", element.getStatusElement(), -1); 9279 if (element.hasExperimentalElement()) 9280 composeBoolean(t, "ImplementationGuide", "experimental", element.getExperimentalElement(), -1); 9281 if (element.hasDateElement()) 9282 composeDateTime(t, "ImplementationGuide", "date", element.getDateElement(), -1); 9283 if (element.hasPublisherElement()) 9284 composeString(t, "ImplementationGuide", "publisher", element.getPublisherElement(), -1); 9285 for (int i = 0; i < element.getContact().size(); i++) 9286 composeContactDetail(t, "ImplementationGuide", "contact", element.getContact().get(i), i); 9287 if (element.hasDescriptionElement()) 9288 composeMarkdown(t, "ImplementationGuide", "description", element.getDescriptionElement(), -1); 9289 for (int i = 0; i < element.getUseContext().size(); i++) 9290 composeUsageContext(t, "ImplementationGuide", "useContext", element.getUseContext().get(i), i); 9291 for (int i = 0; i < element.getJurisdiction().size(); i++) 9292 composeCodeableConcept(t, "ImplementationGuide", "jurisdiction", element.getJurisdiction().get(i), i); 9293 if (element.hasCopyrightElement()) 9294 composeMarkdown(t, "ImplementationGuide", "copyright", element.getCopyrightElement(), -1); 9295 if (element.hasPackageIdElement()) 9296 composeId(t, "ImplementationGuide", "packageId", element.getPackageIdElement(), -1); 9297 if (element.hasLicenseElement()) 9298 composeEnum(t, "ImplementationGuide", "license", element.getLicenseElement(), -1); 9299 for (int i = 0; i < element.getFhirVersion().size(); i++) 9300 composeEnum(t, "ImplementationGuide", "fhirVersion", element.getFhirVersion().get(i), i); 9301 for (int i = 0; i < element.getDependsOn().size(); i++) 9302 composeImplementationGuideImplementationGuideDependsOnComponent(t, "ImplementationGuide", "dependsOn", 9303 element.getDependsOn().get(i), i); 9304 for (int i = 0; i < element.getGlobal().size(); i++) 9305 composeImplementationGuideImplementationGuideGlobalComponent(t, "ImplementationGuide", "global", 9306 element.getGlobal().get(i), i); 9307 if (element.hasDefinition()) 9308 composeImplementationGuideImplementationGuideDefinitionComponent(t, "ImplementationGuide", "definition", 9309 element.getDefinition(), -1); 9310 if (element.hasManifest()) 9311 composeImplementationGuideImplementationGuideManifestComponent(t, "ImplementationGuide", "manifest", 9312 element.getManifest(), -1); 9313 } 9314 9315 protected void composeImplementationGuideImplementationGuideDependsOnComponent(Complex parent, String parentType, 9316 String name, ImplementationGuide.ImplementationGuideDependsOnComponent element, int index) { 9317 if (element == null) 9318 return; 9319 Complex t; 9320 if (Utilities.noString(parentType)) 9321 t = parent; 9322 else { 9323 t = parent.predicate("fhir:" + parentType + '.' + name); 9324 } 9325 composeBackboneElement(t, "dependsOn", name, element, index); 9326 if (element.hasUriElement()) 9327 composeCanonical(t, "ImplementationGuide", "uri", element.getUriElement(), -1); 9328 if (element.hasPackageIdElement()) 9329 composeId(t, "ImplementationGuide", "packageId", element.getPackageIdElement(), -1); 9330 if (element.hasVersionElement()) 9331 composeString(t, "ImplementationGuide", "version", element.getVersionElement(), -1); 9332 } 9333 9334 protected void composeImplementationGuideImplementationGuideGlobalComponent(Complex parent, String parentType, 9335 String name, ImplementationGuide.ImplementationGuideGlobalComponent element, int index) { 9336 if (element == null) 9337 return; 9338 Complex t; 9339 if (Utilities.noString(parentType)) 9340 t = parent; 9341 else { 9342 t = parent.predicate("fhir:" + parentType + '.' + name); 9343 } 9344 composeBackboneElement(t, "global", name, element, index); 9345 if (element.hasTypeElement()) 9346 composeCode(t, "ImplementationGuide", "type", element.getTypeElement(), -1); 9347 if (element.hasProfileElement()) 9348 composeCanonical(t, "ImplementationGuide", "profile", element.getProfileElement(), -1); 9349 } 9350 9351 protected void composeImplementationGuideImplementationGuideDefinitionComponent(Complex parent, String parentType, 9352 String name, ImplementationGuide.ImplementationGuideDefinitionComponent element, int index) { 9353 if (element == null) 9354 return; 9355 Complex t; 9356 if (Utilities.noString(parentType)) 9357 t = parent; 9358 else { 9359 t = parent.predicate("fhir:" + parentType + '.' + name); 9360 } 9361 composeBackboneElement(t, "definition", name, element, index); 9362 for (int i = 0; i < element.getGrouping().size(); i++) 9363 composeImplementationGuideImplementationGuideDefinitionGroupingComponent(t, "ImplementationGuide", "grouping", 9364 element.getGrouping().get(i), i); 9365 for (int i = 0; i < element.getResource().size(); i++) 9366 composeImplementationGuideImplementationGuideDefinitionResourceComponent(t, "ImplementationGuide", "resource", 9367 element.getResource().get(i), i); 9368 if (element.hasPage()) 9369 composeImplementationGuideImplementationGuideDefinitionPageComponent(t, "ImplementationGuide", "page", 9370 element.getPage(), -1); 9371 for (int i = 0; i < element.getParameter().size(); i++) 9372 composeImplementationGuideImplementationGuideDefinitionParameterComponent(t, "ImplementationGuide", "parameter", 9373 element.getParameter().get(i), i); 9374 for (int i = 0; i < element.getTemplate().size(); i++) 9375 composeImplementationGuideImplementationGuideDefinitionTemplateComponent(t, "ImplementationGuide", "template", 9376 element.getTemplate().get(i), i); 9377 } 9378 9379 protected void composeImplementationGuideImplementationGuideDefinitionGroupingComponent(Complex parent, 9380 String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionGroupingComponent element, 9381 int index) { 9382 if (element == null) 9383 return; 9384 Complex t; 9385 if (Utilities.noString(parentType)) 9386 t = parent; 9387 else { 9388 t = parent.predicate("fhir:" + parentType + '.' + name); 9389 } 9390 composeBackboneElement(t, "grouping", name, element, index); 9391 if (element.hasNameElement()) 9392 composeString(t, "ImplementationGuide", "name", element.getNameElement(), -1); 9393 if (element.hasDescriptionElement()) 9394 composeString(t, "ImplementationGuide", "description", element.getDescriptionElement(), -1); 9395 } 9396 9397 protected void composeImplementationGuideImplementationGuideDefinitionResourceComponent(Complex parent, 9398 String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionResourceComponent element, 9399 int index) { 9400 if (element == null) 9401 return; 9402 Complex t; 9403 if (Utilities.noString(parentType)) 9404 t = parent; 9405 else { 9406 t = parent.predicate("fhir:" + parentType + '.' + name); 9407 } 9408 composeBackboneElement(t, "resource", name, element, index); 9409 if (element.hasReference()) 9410 composeReference(t, "ImplementationGuide", "reference", element.getReference(), -1); 9411 for (int i = 0; i < element.getFhirVersion().size(); i++) 9412 composeEnum(t, "ImplementationGuide", "fhirVersion", element.getFhirVersion().get(i), i); 9413 if (element.hasNameElement()) 9414 composeString(t, "ImplementationGuide", "name", element.getNameElement(), -1); 9415 if (element.hasDescriptionElement()) 9416 composeString(t, "ImplementationGuide", "description", element.getDescriptionElement(), -1); 9417 if (element.hasExample()) 9418 composeType(t, "ImplementationGuide", "example", element.getExample(), -1); 9419 if (element.hasGroupingIdElement()) 9420 composeId(t, "ImplementationGuide", "groupingId", element.getGroupingIdElement(), -1); 9421 } 9422 9423 protected void composeImplementationGuideImplementationGuideDefinitionPageComponent(Complex parent, String parentType, 9424 String name, ImplementationGuide.ImplementationGuideDefinitionPageComponent element, int index) { 9425 if (element == null) 9426 return; 9427 Complex t; 9428 if (Utilities.noString(parentType)) 9429 t = parent; 9430 else { 9431 t = parent.predicate("fhir:" + parentType + '.' + name); 9432 } 9433 composeBackboneElement(t, "page", name, element, index); 9434 if (element.hasName()) 9435 composeType(t, "ImplementationGuide", "name", element.getName(), -1); 9436 if (element.hasTitleElement()) 9437 composeString(t, "ImplementationGuide", "title", element.getTitleElement(), -1); 9438 if (element.hasGenerationElement()) 9439 composeEnum(t, "ImplementationGuide", "generation", element.getGenerationElement(), -1); 9440 for (int i = 0; i < element.getPage().size(); i++) 9441 composeImplementationGuideImplementationGuideDefinitionPageComponent(t, "ImplementationGuide", "page", 9442 element.getPage().get(i), i); 9443 } 9444 9445 protected void composeImplementationGuideImplementationGuideDefinitionParameterComponent(Complex parent, 9446 String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionParameterComponent element, 9447 int index) { 9448 if (element == null) 9449 return; 9450 Complex t; 9451 if (Utilities.noString(parentType)) 9452 t = parent; 9453 else { 9454 t = parent.predicate("fhir:" + parentType + '.' + name); 9455 } 9456 composeBackboneElement(t, "parameter", name, element, index); 9457 if (element.hasCodeElement()) 9458 composeString(t, "ImplementationGuide", "code", element.getCodeElement(), -1); 9459 if (element.hasValueElement()) 9460 composeString(t, "ImplementationGuide", "value", element.getValueElement(), -1); 9461 } 9462 9463 protected void composeImplementationGuideImplementationGuideDefinitionTemplateComponent(Complex parent, 9464 String parentType, String name, ImplementationGuide.ImplementationGuideDefinitionTemplateComponent element, 9465 int index) { 9466 if (element == null) 9467 return; 9468 Complex t; 9469 if (Utilities.noString(parentType)) 9470 t = parent; 9471 else { 9472 t = parent.predicate("fhir:" + parentType + '.' + name); 9473 } 9474 composeBackboneElement(t, "template", name, element, index); 9475 if (element.hasCodeElement()) 9476 composeCode(t, "ImplementationGuide", "code", element.getCodeElement(), -1); 9477 if (element.hasSourceElement()) 9478 composeString(t, "ImplementationGuide", "source", element.getSourceElement(), -1); 9479 if (element.hasScopeElement()) 9480 composeString(t, "ImplementationGuide", "scope", element.getScopeElement(), -1); 9481 } 9482 9483 protected void composeImplementationGuideImplementationGuideManifestComponent(Complex parent, String parentType, 9484 String name, ImplementationGuide.ImplementationGuideManifestComponent element, int index) { 9485 if (element == null) 9486 return; 9487 Complex t; 9488 if (Utilities.noString(parentType)) 9489 t = parent; 9490 else { 9491 t = parent.predicate("fhir:" + parentType + '.' + name); 9492 } 9493 composeBackboneElement(t, "manifest", name, element, index); 9494 if (element.hasRenderingElement()) 9495 composeUrl(t, "ImplementationGuide", "rendering", element.getRenderingElement(), -1); 9496 for (int i = 0; i < element.getResource().size(); i++) 9497 composeImplementationGuideManifestResourceComponent(t, "ImplementationGuide", "resource", 9498 element.getResource().get(i), i); 9499 for (int i = 0; i < element.getPage().size(); i++) 9500 composeImplementationGuideManifestPageComponent(t, "ImplementationGuide", "page", element.getPage().get(i), i); 9501 for (int i = 0; i < element.getImage().size(); i++) 9502 composeString(t, "ImplementationGuide", "image", element.getImage().get(i), i); 9503 for (int i = 0; i < element.getOther().size(); i++) 9504 composeString(t, "ImplementationGuide", "other", element.getOther().get(i), i); 9505 } 9506 9507 protected void composeImplementationGuideManifestResourceComponent(Complex parent, String parentType, String name, 9508 ImplementationGuide.ManifestResourceComponent element, int index) { 9509 if (element == null) 9510 return; 9511 Complex t; 9512 if (Utilities.noString(parentType)) 9513 t = parent; 9514 else { 9515 t = parent.predicate("fhir:" + parentType + '.' + name); 9516 } 9517 composeBackboneElement(t, "resource", name, element, index); 9518 if (element.hasReference()) 9519 composeReference(t, "ImplementationGuide", "reference", element.getReference(), -1); 9520 if (element.hasExample()) 9521 composeType(t, "ImplementationGuide", "example", element.getExample(), -1); 9522 if (element.hasRelativePathElement()) 9523 composeUrl(t, "ImplementationGuide", "relativePath", element.getRelativePathElement(), -1); 9524 } 9525 9526 protected void composeImplementationGuideManifestPageComponent(Complex parent, String parentType, String name, 9527 ImplementationGuide.ManifestPageComponent element, int index) { 9528 if (element == null) 9529 return; 9530 Complex t; 9531 if (Utilities.noString(parentType)) 9532 t = parent; 9533 else { 9534 t = parent.predicate("fhir:" + parentType + '.' + name); 9535 } 9536 composeBackboneElement(t, "page", name, element, index); 9537 if (element.hasNameElement()) 9538 composeString(t, "ImplementationGuide", "name", element.getNameElement(), -1); 9539 if (element.hasTitleElement()) 9540 composeString(t, "ImplementationGuide", "title", element.getTitleElement(), -1); 9541 for (int i = 0; i < element.getAnchor().size(); i++) 9542 composeString(t, "ImplementationGuide", "anchor", element.getAnchor().get(i), i); 9543 } 9544 9545 protected void composeInsurancePlan(Complex parent, String parentType, String name, InsurancePlan element, 9546 int index) { 9547 if (element == null) 9548 return; 9549 Complex t; 9550 if (Utilities.noString(parentType)) 9551 t = parent; 9552 else { 9553 t = parent.predicate("fhir:" + parentType + '.' + name); 9554 } 9555 composeDomainResource(t, "InsurancePlan", name, element, index); 9556 for (int i = 0; i < element.getIdentifier().size(); i++) 9557 composeIdentifier(t, "InsurancePlan", "identifier", element.getIdentifier().get(i), i); 9558 if (element.hasStatusElement()) 9559 composeEnum(t, "InsurancePlan", "status", element.getStatusElement(), -1); 9560 for (int i = 0; i < element.getType().size(); i++) 9561 composeCodeableConcept(t, "InsurancePlan", "type", element.getType().get(i), i); 9562 if (element.hasNameElement()) 9563 composeString(t, "InsurancePlan", "name", element.getNameElement(), -1); 9564 for (int i = 0; i < element.getAlias().size(); i++) 9565 composeString(t, "InsurancePlan", "alias", element.getAlias().get(i), i); 9566 if (element.hasPeriod()) 9567 composePeriod(t, "InsurancePlan", "period", element.getPeriod(), -1); 9568 if (element.hasOwnedBy()) 9569 composeReference(t, "InsurancePlan", "ownedBy", element.getOwnedBy(), -1); 9570 if (element.hasAdministeredBy()) 9571 composeReference(t, "InsurancePlan", "administeredBy", element.getAdministeredBy(), -1); 9572 for (int i = 0; i < element.getCoverageArea().size(); i++) 9573 composeReference(t, "InsurancePlan", "coverageArea", element.getCoverageArea().get(i), i); 9574 for (int i = 0; i < element.getContact().size(); i++) 9575 composeInsurancePlanInsurancePlanContactComponent(t, "InsurancePlan", "contact", element.getContact().get(i), i); 9576 for (int i = 0; i < element.getEndpoint().size(); i++) 9577 composeReference(t, "InsurancePlan", "endpoint", element.getEndpoint().get(i), i); 9578 for (int i = 0; i < element.getNetwork().size(); i++) 9579 composeReference(t, "InsurancePlan", "network", element.getNetwork().get(i), i); 9580 for (int i = 0; i < element.getCoverage().size(); i++) 9581 composeInsurancePlanInsurancePlanCoverageComponent(t, "InsurancePlan", "coverage", element.getCoverage().get(i), 9582 i); 9583 for (int i = 0; i < element.getPlan().size(); i++) 9584 composeInsurancePlanInsurancePlanPlanComponent(t, "InsurancePlan", "plan", element.getPlan().get(i), i); 9585 } 9586 9587 protected void composeInsurancePlanInsurancePlanContactComponent(Complex parent, String parentType, String name, 9588 InsurancePlan.InsurancePlanContactComponent element, int index) { 9589 if (element == null) 9590 return; 9591 Complex t; 9592 if (Utilities.noString(parentType)) 9593 t = parent; 9594 else { 9595 t = parent.predicate("fhir:" + parentType + '.' + name); 9596 } 9597 composeBackboneElement(t, "contact", name, element, index); 9598 if (element.hasPurpose()) 9599 composeCodeableConcept(t, "InsurancePlan", "purpose", element.getPurpose(), -1); 9600 if (element.hasName()) 9601 composeHumanName(t, "InsurancePlan", "name", element.getName(), -1); 9602 for (int i = 0; i < element.getTelecom().size(); i++) 9603 composeContactPoint(t, "InsurancePlan", "telecom", element.getTelecom().get(i), i); 9604 if (element.hasAddress()) 9605 composeAddress(t, "InsurancePlan", "address", element.getAddress(), -1); 9606 } 9607 9608 protected void composeInsurancePlanInsurancePlanCoverageComponent(Complex parent, String parentType, String name, 9609 InsurancePlan.InsurancePlanCoverageComponent element, int index) { 9610 if (element == null) 9611 return; 9612 Complex t; 9613 if (Utilities.noString(parentType)) 9614 t = parent; 9615 else { 9616 t = parent.predicate("fhir:" + parentType + '.' + name); 9617 } 9618 composeBackboneElement(t, "coverage", name, element, index); 9619 if (element.hasType()) 9620 composeCodeableConcept(t, "InsurancePlan", "type", element.getType(), -1); 9621 for (int i = 0; i < element.getNetwork().size(); i++) 9622 composeReference(t, "InsurancePlan", "network", element.getNetwork().get(i), i); 9623 for (int i = 0; i < element.getBenefit().size(); i++) 9624 composeInsurancePlanCoverageBenefitComponent(t, "InsurancePlan", "benefit", element.getBenefit().get(i), i); 9625 } 9626 9627 protected void composeInsurancePlanCoverageBenefitComponent(Complex parent, String parentType, String name, 9628 InsurancePlan.CoverageBenefitComponent element, int index) { 9629 if (element == null) 9630 return; 9631 Complex t; 9632 if (Utilities.noString(parentType)) 9633 t = parent; 9634 else { 9635 t = parent.predicate("fhir:" + parentType + '.' + name); 9636 } 9637 composeBackboneElement(t, "benefit", name, element, index); 9638 if (element.hasType()) 9639 composeCodeableConcept(t, "InsurancePlan", "type", element.getType(), -1); 9640 if (element.hasRequirementElement()) 9641 composeString(t, "InsurancePlan", "requirement", element.getRequirementElement(), -1); 9642 for (int i = 0; i < element.getLimit().size(); i++) 9643 composeInsurancePlanCoverageBenefitLimitComponent(t, "InsurancePlan", "limit", element.getLimit().get(i), i); 9644 } 9645 9646 protected void composeInsurancePlanCoverageBenefitLimitComponent(Complex parent, String parentType, String name, 9647 InsurancePlan.CoverageBenefitLimitComponent element, int index) { 9648 if (element == null) 9649 return; 9650 Complex t; 9651 if (Utilities.noString(parentType)) 9652 t = parent; 9653 else { 9654 t = parent.predicate("fhir:" + parentType + '.' + name); 9655 } 9656 composeBackboneElement(t, "limit", name, element, index); 9657 if (element.hasValue()) 9658 composeQuantity(t, "InsurancePlan", "value", element.getValue(), -1); 9659 if (element.hasCode()) 9660 composeCodeableConcept(t, "InsurancePlan", "code", element.getCode(), -1); 9661 } 9662 9663 protected void composeInsurancePlanInsurancePlanPlanComponent(Complex parent, String parentType, String name, 9664 InsurancePlan.InsurancePlanPlanComponent element, int index) { 9665 if (element == null) 9666 return; 9667 Complex t; 9668 if (Utilities.noString(parentType)) 9669 t = parent; 9670 else { 9671 t = parent.predicate("fhir:" + parentType + '.' + name); 9672 } 9673 composeBackboneElement(t, "plan", name, element, index); 9674 for (int i = 0; i < element.getIdentifier().size(); i++) 9675 composeIdentifier(t, "InsurancePlan", "identifier", element.getIdentifier().get(i), i); 9676 if (element.hasType()) 9677 composeCodeableConcept(t, "InsurancePlan", "type", element.getType(), -1); 9678 for (int i = 0; i < element.getCoverageArea().size(); i++) 9679 composeReference(t, "InsurancePlan", "coverageArea", element.getCoverageArea().get(i), i); 9680 for (int i = 0; i < element.getNetwork().size(); i++) 9681 composeReference(t, "InsurancePlan", "network", element.getNetwork().get(i), i); 9682 for (int i = 0; i < element.getGeneralCost().size(); i++) 9683 composeInsurancePlanInsurancePlanPlanGeneralCostComponent(t, "InsurancePlan", "generalCost", 9684 element.getGeneralCost().get(i), i); 9685 for (int i = 0; i < element.getSpecificCost().size(); i++) 9686 composeInsurancePlanInsurancePlanPlanSpecificCostComponent(t, "InsurancePlan", "specificCost", 9687 element.getSpecificCost().get(i), i); 9688 } 9689 9690 protected void composeInsurancePlanInsurancePlanPlanGeneralCostComponent(Complex parent, String parentType, 9691 String name, InsurancePlan.InsurancePlanPlanGeneralCostComponent element, int index) { 9692 if (element == null) 9693 return; 9694 Complex t; 9695 if (Utilities.noString(parentType)) 9696 t = parent; 9697 else { 9698 t = parent.predicate("fhir:" + parentType + '.' + name); 9699 } 9700 composeBackboneElement(t, "generalCost", name, element, index); 9701 if (element.hasType()) 9702 composeCodeableConcept(t, "InsurancePlan", "type", element.getType(), -1); 9703 if (element.hasGroupSizeElement()) 9704 composePositiveInt(t, "InsurancePlan", "groupSize", element.getGroupSizeElement(), -1); 9705 if (element.hasCost()) 9706 composeMoney(t, "InsurancePlan", "cost", element.getCost(), -1); 9707 if (element.hasCommentElement()) 9708 composeString(t, "InsurancePlan", "comment", element.getCommentElement(), -1); 9709 } 9710 9711 protected void composeInsurancePlanInsurancePlanPlanSpecificCostComponent(Complex parent, String parentType, 9712 String name, InsurancePlan.InsurancePlanPlanSpecificCostComponent element, int index) { 9713 if (element == null) 9714 return; 9715 Complex t; 9716 if (Utilities.noString(parentType)) 9717 t = parent; 9718 else { 9719 t = parent.predicate("fhir:" + parentType + '.' + name); 9720 } 9721 composeBackboneElement(t, "specificCost", name, element, index); 9722 if (element.hasCategory()) 9723 composeCodeableConcept(t, "InsurancePlan", "category", element.getCategory(), -1); 9724 for (int i = 0; i < element.getBenefit().size(); i++) 9725 composeInsurancePlanPlanBenefitComponent(t, "InsurancePlan", "benefit", element.getBenefit().get(i), i); 9726 } 9727 9728 protected void composeInsurancePlanPlanBenefitComponent(Complex parent, String parentType, String name, 9729 InsurancePlan.PlanBenefitComponent element, int index) { 9730 if (element == null) 9731 return; 9732 Complex t; 9733 if (Utilities.noString(parentType)) 9734 t = parent; 9735 else { 9736 t = parent.predicate("fhir:" + parentType + '.' + name); 9737 } 9738 composeBackboneElement(t, "benefit", name, element, index); 9739 if (element.hasType()) 9740 composeCodeableConcept(t, "InsurancePlan", "type", element.getType(), -1); 9741 for (int i = 0; i < element.getCost().size(); i++) 9742 composeInsurancePlanPlanBenefitCostComponent(t, "InsurancePlan", "cost", element.getCost().get(i), i); 9743 } 9744 9745 protected void composeInsurancePlanPlanBenefitCostComponent(Complex parent, String parentType, String name, 9746 InsurancePlan.PlanBenefitCostComponent element, int index) { 9747 if (element == null) 9748 return; 9749 Complex t; 9750 if (Utilities.noString(parentType)) 9751 t = parent; 9752 else { 9753 t = parent.predicate("fhir:" + parentType + '.' + name); 9754 } 9755 composeBackboneElement(t, "cost", name, element, index); 9756 if (element.hasType()) 9757 composeCodeableConcept(t, "InsurancePlan", "type", element.getType(), -1); 9758 if (element.hasApplicability()) 9759 composeCodeableConcept(t, "InsurancePlan", "applicability", element.getApplicability(), -1); 9760 for (int i = 0; i < element.getQualifiers().size(); i++) 9761 composeCodeableConcept(t, "InsurancePlan", "qualifiers", element.getQualifiers().get(i), i); 9762 if (element.hasValue()) 9763 composeQuantity(t, "InsurancePlan", "value", element.getValue(), -1); 9764 } 9765 9766 protected void composeInvoice(Complex parent, String parentType, String name, Invoice element, int index) { 9767 if (element == null) 9768 return; 9769 Complex t; 9770 if (Utilities.noString(parentType)) 9771 t = parent; 9772 else { 9773 t = parent.predicate("fhir:" + parentType + '.' + name); 9774 } 9775 composeDomainResource(t, "Invoice", name, element, index); 9776 for (int i = 0; i < element.getIdentifier().size(); i++) 9777 composeIdentifier(t, "Invoice", "identifier", element.getIdentifier().get(i), i); 9778 if (element.hasStatusElement()) 9779 composeEnum(t, "Invoice", "status", element.getStatusElement(), -1); 9780 if (element.hasCancelledReasonElement()) 9781 composeString(t, "Invoice", "cancelledReason", element.getCancelledReasonElement(), -1); 9782 if (element.hasType()) 9783 composeCodeableConcept(t, "Invoice", "type", element.getType(), -1); 9784 if (element.hasSubject()) 9785 composeReference(t, "Invoice", "subject", element.getSubject(), -1); 9786 if (element.hasRecipient()) 9787 composeReference(t, "Invoice", "recipient", element.getRecipient(), -1); 9788 if (element.hasDateElement()) 9789 composeDateTime(t, "Invoice", "date", element.getDateElement(), -1); 9790 for (int i = 0; i < element.getParticipant().size(); i++) 9791 composeInvoiceInvoiceParticipantComponent(t, "Invoice", "participant", element.getParticipant().get(i), i); 9792 if (element.hasIssuer()) 9793 composeReference(t, "Invoice", "issuer", element.getIssuer(), -1); 9794 if (element.hasAccount()) 9795 composeReference(t, "Invoice", "account", element.getAccount(), -1); 9796 for (int i = 0; i < element.getLineItem().size(); i++) 9797 composeInvoiceInvoiceLineItemComponent(t, "Invoice", "lineItem", element.getLineItem().get(i), i); 9798 for (int i = 0; i < element.getTotalPriceComponent().size(); i++) 9799 composeInvoiceInvoiceLineItemPriceComponentComponent(t, "Invoice", "totalPriceComponent", 9800 element.getTotalPriceComponent().get(i), i); 9801 if (element.hasTotalNet()) 9802 composeMoney(t, "Invoice", "totalNet", element.getTotalNet(), -1); 9803 if (element.hasTotalGross()) 9804 composeMoney(t, "Invoice", "totalGross", element.getTotalGross(), -1); 9805 if (element.hasPaymentTermsElement()) 9806 composeMarkdown(t, "Invoice", "paymentTerms", element.getPaymentTermsElement(), -1); 9807 for (int i = 0; i < element.getNote().size(); i++) 9808 composeAnnotation(t, "Invoice", "note", element.getNote().get(i), i); 9809 } 9810 9811 protected void composeInvoiceInvoiceParticipantComponent(Complex parent, String parentType, String name, 9812 Invoice.InvoiceParticipantComponent element, int index) { 9813 if (element == null) 9814 return; 9815 Complex t; 9816 if (Utilities.noString(parentType)) 9817 t = parent; 9818 else { 9819 t = parent.predicate("fhir:" + parentType + '.' + name); 9820 } 9821 composeBackboneElement(t, "participant", name, element, index); 9822 if (element.hasRole()) 9823 composeCodeableConcept(t, "Invoice", "role", element.getRole(), -1); 9824 if (element.hasActor()) 9825 composeReference(t, "Invoice", "actor", element.getActor(), -1); 9826 } 9827 9828 protected void composeInvoiceInvoiceLineItemComponent(Complex parent, String parentType, String name, 9829 Invoice.InvoiceLineItemComponent element, int index) { 9830 if (element == null) 9831 return; 9832 Complex t; 9833 if (Utilities.noString(parentType)) 9834 t = parent; 9835 else { 9836 t = parent.predicate("fhir:" + parentType + '.' + name); 9837 } 9838 composeBackboneElement(t, "lineItem", name, element, index); 9839 if (element.hasSequenceElement()) 9840 composePositiveInt(t, "Invoice", "sequence", element.getSequenceElement(), -1); 9841 if (element.hasChargeItem()) 9842 composeType(t, "Invoice", "chargeItem", element.getChargeItem(), -1); 9843 for (int i = 0; i < element.getPriceComponent().size(); i++) 9844 composeInvoiceInvoiceLineItemPriceComponentComponent(t, "Invoice", "priceComponent", 9845 element.getPriceComponent().get(i), i); 9846 } 9847 9848 protected void composeInvoiceInvoiceLineItemPriceComponentComponent(Complex parent, String parentType, String name, 9849 Invoice.InvoiceLineItemPriceComponentComponent element, int index) { 9850 if (element == null) 9851 return; 9852 Complex t; 9853 if (Utilities.noString(parentType)) 9854 t = parent; 9855 else { 9856 t = parent.predicate("fhir:" + parentType + '.' + name); 9857 } 9858 composeBackboneElement(t, "priceComponent", name, element, index); 9859 if (element.hasTypeElement()) 9860 composeEnum(t, "Invoice", "type", element.getTypeElement(), -1); 9861 if (element.hasCode()) 9862 composeCodeableConcept(t, "Invoice", "code", element.getCode(), -1); 9863 if (element.hasFactorElement()) 9864 composeDecimal(t, "Invoice", "factor", element.getFactorElement(), -1); 9865 if (element.hasAmount()) 9866 composeMoney(t, "Invoice", "amount", element.getAmount(), -1); 9867 } 9868 9869 protected void composeLibrary(Complex parent, String parentType, String name, Library element, int index) { 9870 if (element == null) 9871 return; 9872 Complex t; 9873 if (Utilities.noString(parentType)) 9874 t = parent; 9875 else { 9876 t = parent.predicate("fhir:" + parentType + '.' + name); 9877 } 9878 composeDomainResource(t, "Library", name, element, index); 9879 if (element.hasUrlElement()) 9880 composeUri(t, "Library", "url", element.getUrlElement(), -1); 9881 for (int i = 0; i < element.getIdentifier().size(); i++) 9882 composeIdentifier(t, "Library", "identifier", element.getIdentifier().get(i), i); 9883 if (element.hasVersionElement()) 9884 composeString(t, "Library", "version", element.getVersionElement(), -1); 9885 if (element.hasNameElement()) 9886 composeString(t, "Library", "name", element.getNameElement(), -1); 9887 if (element.hasTitleElement()) 9888 composeString(t, "Library", "title", element.getTitleElement(), -1); 9889 if (element.hasSubtitleElement()) 9890 composeString(t, "Library", "subtitle", element.getSubtitleElement(), -1); 9891 if (element.hasStatusElement()) 9892 composeEnum(t, "Library", "status", element.getStatusElement(), -1); 9893 if (element.hasExperimentalElement()) 9894 composeBoolean(t, "Library", "experimental", element.getExperimentalElement(), -1); 9895 if (element.hasType()) 9896 composeCodeableConcept(t, "Library", "type", element.getType(), -1); 9897 if (element.hasSubject()) 9898 composeType(t, "Library", "subject", element.getSubject(), -1); 9899 if (element.hasDateElement()) 9900 composeDateTime(t, "Library", "date", element.getDateElement(), -1); 9901 if (element.hasPublisherElement()) 9902 composeString(t, "Library", "publisher", element.getPublisherElement(), -1); 9903 for (int i = 0; i < element.getContact().size(); i++) 9904 composeContactDetail(t, "Library", "contact", element.getContact().get(i), i); 9905 if (element.hasDescriptionElement()) 9906 composeMarkdown(t, "Library", "description", element.getDescriptionElement(), -1); 9907 for (int i = 0; i < element.getUseContext().size(); i++) 9908 composeUsageContext(t, "Library", "useContext", element.getUseContext().get(i), i); 9909 for (int i = 0; i < element.getJurisdiction().size(); i++) 9910 composeCodeableConcept(t, "Library", "jurisdiction", element.getJurisdiction().get(i), i); 9911 if (element.hasPurposeElement()) 9912 composeMarkdown(t, "Library", "purpose", element.getPurposeElement(), -1); 9913 if (element.hasUsageElement()) 9914 composeString(t, "Library", "usage", element.getUsageElement(), -1); 9915 if (element.hasCopyrightElement()) 9916 composeMarkdown(t, "Library", "copyright", element.getCopyrightElement(), -1); 9917 if (element.hasApprovalDateElement()) 9918 composeDate(t, "Library", "approvalDate", element.getApprovalDateElement(), -1); 9919 if (element.hasLastReviewDateElement()) 9920 composeDate(t, "Library", "lastReviewDate", element.getLastReviewDateElement(), -1); 9921 if (element.hasEffectivePeriod()) 9922 composePeriod(t, "Library", "effectivePeriod", element.getEffectivePeriod(), -1); 9923 for (int i = 0; i < element.getTopic().size(); i++) 9924 composeCodeableConcept(t, "Library", "topic", element.getTopic().get(i), i); 9925 for (int i = 0; i < element.getAuthor().size(); i++) 9926 composeContactDetail(t, "Library", "author", element.getAuthor().get(i), i); 9927 for (int i = 0; i < element.getEditor().size(); i++) 9928 composeContactDetail(t, "Library", "editor", element.getEditor().get(i), i); 9929 for (int i = 0; i < element.getReviewer().size(); i++) 9930 composeContactDetail(t, "Library", "reviewer", element.getReviewer().get(i), i); 9931 for (int i = 0; i < element.getEndorser().size(); i++) 9932 composeContactDetail(t, "Library", "endorser", element.getEndorser().get(i), i); 9933 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 9934 composeRelatedArtifact(t, "Library", "relatedArtifact", element.getRelatedArtifact().get(i), i); 9935 for (int i = 0; i < element.getParameter().size(); i++) 9936 composeParameterDefinition(t, "Library", "parameter", element.getParameter().get(i), i); 9937 for (int i = 0; i < element.getDataRequirement().size(); i++) 9938 composeDataRequirement(t, "Library", "dataRequirement", element.getDataRequirement().get(i), i); 9939 for (int i = 0; i < element.getContent().size(); i++) 9940 composeAttachment(t, "Library", "content", element.getContent().get(i), i); 9941 } 9942 9943 protected void composeLinkage(Complex parent, String parentType, String name, Linkage element, int index) { 9944 if (element == null) 9945 return; 9946 Complex t; 9947 if (Utilities.noString(parentType)) 9948 t = parent; 9949 else { 9950 t = parent.predicate("fhir:" + parentType + '.' + name); 9951 } 9952 composeDomainResource(t, "Linkage", name, element, index); 9953 if (element.hasActiveElement()) 9954 composeBoolean(t, "Linkage", "active", element.getActiveElement(), -1); 9955 if (element.hasAuthor()) 9956 composeReference(t, "Linkage", "author", element.getAuthor(), -1); 9957 for (int i = 0; i < element.getItem().size(); i++) 9958 composeLinkageLinkageItemComponent(t, "Linkage", "item", element.getItem().get(i), i); 9959 } 9960 9961 protected void composeLinkageLinkageItemComponent(Complex parent, String parentType, String name, 9962 Linkage.LinkageItemComponent element, int index) { 9963 if (element == null) 9964 return; 9965 Complex t; 9966 if (Utilities.noString(parentType)) 9967 t = parent; 9968 else { 9969 t = parent.predicate("fhir:" + parentType + '.' + name); 9970 } 9971 composeBackboneElement(t, "item", name, element, index); 9972 if (element.hasTypeElement()) 9973 composeEnum(t, "Linkage", "type", element.getTypeElement(), -1); 9974 if (element.hasResource()) 9975 composeReference(t, "Linkage", "resource", element.getResource(), -1); 9976 } 9977 9978 protected void composeListResource(Complex parent, String parentType, String name, ListResource element, int index) { 9979 if (element == null) 9980 return; 9981 Complex t; 9982 if (Utilities.noString(parentType)) 9983 t = parent; 9984 else { 9985 t = parent.predicate("fhir:" + parentType + '.' + name); 9986 } 9987 composeDomainResource(t, "List", name, element, index); 9988 for (int i = 0; i < element.getIdentifier().size(); i++) 9989 composeIdentifier(t, "List", "identifier", element.getIdentifier().get(i), i); 9990 if (element.hasStatusElement()) 9991 composeEnum(t, "List", "status", element.getStatusElement(), -1); 9992 if (element.hasModeElement()) 9993 composeEnum(t, "List", "mode", element.getModeElement(), -1); 9994 if (element.hasTitleElement()) 9995 composeString(t, "List", "title", element.getTitleElement(), -1); 9996 if (element.hasCode()) 9997 composeCodeableConcept(t, "List", "code", element.getCode(), -1); 9998 if (element.hasSubject()) 9999 composeReference(t, "List", "subject", element.getSubject(), -1); 10000 if (element.hasEncounter()) 10001 composeReference(t, "List", "encounter", element.getEncounter(), -1); 10002 if (element.hasDateElement()) 10003 composeDateTime(t, "List", "date", element.getDateElement(), -1); 10004 if (element.hasSource()) 10005 composeReference(t, "List", "source", element.getSource(), -1); 10006 if (element.hasOrderedBy()) 10007 composeCodeableConcept(t, "List", "orderedBy", element.getOrderedBy(), -1); 10008 for (int i = 0; i < element.getNote().size(); i++) 10009 composeAnnotation(t, "List", "note", element.getNote().get(i), i); 10010 for (int i = 0; i < element.getEntry().size(); i++) 10011 composeListResourceListEntryComponent(t, "List", "entry", element.getEntry().get(i), i); 10012 if (element.hasEmptyReason()) 10013 composeCodeableConcept(t, "List", "emptyReason", element.getEmptyReason(), -1); 10014 } 10015 10016 protected void composeListResourceListEntryComponent(Complex parent, String parentType, String name, 10017 ListResource.ListEntryComponent element, int index) { 10018 if (element == null) 10019 return; 10020 Complex t; 10021 if (Utilities.noString(parentType)) 10022 t = parent; 10023 else { 10024 t = parent.predicate("fhir:" + parentType + '.' + name); 10025 } 10026 composeBackboneElement(t, "entry", name, element, index); 10027 if (element.hasFlag()) 10028 composeCodeableConcept(t, "List", "flag", element.getFlag(), -1); 10029 if (element.hasDeletedElement()) 10030 composeBoolean(t, "List", "deleted", element.getDeletedElement(), -1); 10031 if (element.hasDateElement()) 10032 composeDateTime(t, "List", "date", element.getDateElement(), -1); 10033 if (element.hasItem()) 10034 composeReference(t, "List", "item", element.getItem(), -1); 10035 } 10036 10037 protected void composeLocation(Complex parent, String parentType, String name, Location element, int index) { 10038 if (element == null) 10039 return; 10040 Complex t; 10041 if (Utilities.noString(parentType)) 10042 t = parent; 10043 else { 10044 t = parent.predicate("fhir:" + parentType + '.' + name); 10045 } 10046 composeDomainResource(t, "Location", name, element, index); 10047 for (int i = 0; i < element.getIdentifier().size(); i++) 10048 composeIdentifier(t, "Location", "identifier", element.getIdentifier().get(i), i); 10049 if (element.hasStatusElement()) 10050 composeEnum(t, "Location", "status", element.getStatusElement(), -1); 10051 if (element.hasOperationalStatus()) 10052 composeCoding(t, "Location", "operationalStatus", element.getOperationalStatus(), -1); 10053 if (element.hasNameElement()) 10054 composeString(t, "Location", "name", element.getNameElement(), -1); 10055 for (int i = 0; i < element.getAlias().size(); i++) 10056 composeString(t, "Location", "alias", element.getAlias().get(i), i); 10057 if (element.hasDescriptionElement()) 10058 composeString(t, "Location", "description", element.getDescriptionElement(), -1); 10059 if (element.hasModeElement()) 10060 composeEnum(t, "Location", "mode", element.getModeElement(), -1); 10061 for (int i = 0; i < element.getType().size(); i++) 10062 composeCodeableConcept(t, "Location", "type", element.getType().get(i), i); 10063 for (int i = 0; i < element.getTelecom().size(); i++) 10064 composeContactPoint(t, "Location", "telecom", element.getTelecom().get(i), i); 10065 if (element.hasAddress()) 10066 composeAddress(t, "Location", "address", element.getAddress(), -1); 10067 if (element.hasPhysicalType()) 10068 composeCodeableConcept(t, "Location", "physicalType", element.getPhysicalType(), -1); 10069 if (element.hasPosition()) 10070 composeLocationLocationPositionComponent(t, "Location", "position", element.getPosition(), -1); 10071 if (element.hasManagingOrganization()) 10072 composeReference(t, "Location", "managingOrganization", element.getManagingOrganization(), -1); 10073 if (element.hasPartOf()) 10074 composeReference(t, "Location", "partOf", element.getPartOf(), -1); 10075 for (int i = 0; i < element.getHoursOfOperation().size(); i++) 10076 composeLocationLocationHoursOfOperationComponent(t, "Location", "hoursOfOperation", 10077 element.getHoursOfOperation().get(i), i); 10078 if (element.hasAvailabilityExceptionsElement()) 10079 composeString(t, "Location", "availabilityExceptions", element.getAvailabilityExceptionsElement(), -1); 10080 for (int i = 0; i < element.getEndpoint().size(); i++) 10081 composeReference(t, "Location", "endpoint", element.getEndpoint().get(i), i); 10082 } 10083 10084 protected void composeLocationLocationPositionComponent(Complex parent, String parentType, String name, 10085 Location.LocationPositionComponent element, int index) { 10086 if (element == null) 10087 return; 10088 Complex t; 10089 if (Utilities.noString(parentType)) 10090 t = parent; 10091 else { 10092 t = parent.predicate("fhir:" + parentType + '.' + name); 10093 } 10094 composeBackboneElement(t, "position", name, element, index); 10095 if (element.hasLongitudeElement()) 10096 composeDecimal(t, "Location", "longitude", element.getLongitudeElement(), -1); 10097 if (element.hasLatitudeElement()) 10098 composeDecimal(t, "Location", "latitude", element.getLatitudeElement(), -1); 10099 if (element.hasAltitudeElement()) 10100 composeDecimal(t, "Location", "altitude", element.getAltitudeElement(), -1); 10101 } 10102 10103 protected void composeLocationLocationHoursOfOperationComponent(Complex parent, String parentType, String name, 10104 Location.LocationHoursOfOperationComponent element, int index) { 10105 if (element == null) 10106 return; 10107 Complex t; 10108 if (Utilities.noString(parentType)) 10109 t = parent; 10110 else { 10111 t = parent.predicate("fhir:" + parentType + '.' + name); 10112 } 10113 composeBackboneElement(t, "hoursOfOperation", name, element, index); 10114 for (int i = 0; i < element.getDaysOfWeek().size(); i++) 10115 composeEnum(t, "Location", "daysOfWeek", element.getDaysOfWeek().get(i), i); 10116 if (element.hasAllDayElement()) 10117 composeBoolean(t, "Location", "allDay", element.getAllDayElement(), -1); 10118 if (element.hasOpeningTimeElement()) 10119 composeTime(t, "Location", "openingTime", element.getOpeningTimeElement(), -1); 10120 if (element.hasClosingTimeElement()) 10121 composeTime(t, "Location", "closingTime", element.getClosingTimeElement(), -1); 10122 } 10123 10124 protected void composeMeasure(Complex parent, String parentType, String name, Measure element, int index) { 10125 if (element == null) 10126 return; 10127 Complex t; 10128 if (Utilities.noString(parentType)) 10129 t = parent; 10130 else { 10131 t = parent.predicate("fhir:" + parentType + '.' + name); 10132 } 10133 composeDomainResource(t, "Measure", name, element, index); 10134 if (element.hasUrlElement()) 10135 composeUri(t, "Measure", "url", element.getUrlElement(), -1); 10136 for (int i = 0; i < element.getIdentifier().size(); i++) 10137 composeIdentifier(t, "Measure", "identifier", element.getIdentifier().get(i), i); 10138 if (element.hasVersionElement()) 10139 composeString(t, "Measure", "version", element.getVersionElement(), -1); 10140 if (element.hasNameElement()) 10141 composeString(t, "Measure", "name", element.getNameElement(), -1); 10142 if (element.hasTitleElement()) 10143 composeString(t, "Measure", "title", element.getTitleElement(), -1); 10144 if (element.hasSubtitleElement()) 10145 composeString(t, "Measure", "subtitle", element.getSubtitleElement(), -1); 10146 if (element.hasStatusElement()) 10147 composeEnum(t, "Measure", "status", element.getStatusElement(), -1); 10148 if (element.hasExperimentalElement()) 10149 composeBoolean(t, "Measure", "experimental", element.getExperimentalElement(), -1); 10150 if (element.hasSubject()) 10151 composeType(t, "Measure", "subject", element.getSubject(), -1); 10152 if (element.hasDateElement()) 10153 composeDateTime(t, "Measure", "date", element.getDateElement(), -1); 10154 if (element.hasPublisherElement()) 10155 composeString(t, "Measure", "publisher", element.getPublisherElement(), -1); 10156 for (int i = 0; i < element.getContact().size(); i++) 10157 composeContactDetail(t, "Measure", "contact", element.getContact().get(i), i); 10158 if (element.hasDescriptionElement()) 10159 composeMarkdown(t, "Measure", "description", element.getDescriptionElement(), -1); 10160 for (int i = 0; i < element.getUseContext().size(); i++) 10161 composeUsageContext(t, "Measure", "useContext", element.getUseContext().get(i), i); 10162 for (int i = 0; i < element.getJurisdiction().size(); i++) 10163 composeCodeableConcept(t, "Measure", "jurisdiction", element.getJurisdiction().get(i), i); 10164 if (element.hasPurposeElement()) 10165 composeMarkdown(t, "Measure", "purpose", element.getPurposeElement(), -1); 10166 if (element.hasUsageElement()) 10167 composeString(t, "Measure", "usage", element.getUsageElement(), -1); 10168 if (element.hasCopyrightElement()) 10169 composeMarkdown(t, "Measure", "copyright", element.getCopyrightElement(), -1); 10170 if (element.hasApprovalDateElement()) 10171 composeDate(t, "Measure", "approvalDate", element.getApprovalDateElement(), -1); 10172 if (element.hasLastReviewDateElement()) 10173 composeDate(t, "Measure", "lastReviewDate", element.getLastReviewDateElement(), -1); 10174 if (element.hasEffectivePeriod()) 10175 composePeriod(t, "Measure", "effectivePeriod", element.getEffectivePeriod(), -1); 10176 for (int i = 0; i < element.getTopic().size(); i++) 10177 composeCodeableConcept(t, "Measure", "topic", element.getTopic().get(i), i); 10178 for (int i = 0; i < element.getAuthor().size(); i++) 10179 composeContactDetail(t, "Measure", "author", element.getAuthor().get(i), i); 10180 for (int i = 0; i < element.getEditor().size(); i++) 10181 composeContactDetail(t, "Measure", "editor", element.getEditor().get(i), i); 10182 for (int i = 0; i < element.getReviewer().size(); i++) 10183 composeContactDetail(t, "Measure", "reviewer", element.getReviewer().get(i), i); 10184 for (int i = 0; i < element.getEndorser().size(); i++) 10185 composeContactDetail(t, "Measure", "endorser", element.getEndorser().get(i), i); 10186 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 10187 composeRelatedArtifact(t, "Measure", "relatedArtifact", element.getRelatedArtifact().get(i), i); 10188 for (int i = 0; i < element.getLibrary().size(); i++) 10189 composeCanonical(t, "Measure", "library", element.getLibrary().get(i), i); 10190 if (element.hasDisclaimerElement()) 10191 composeMarkdown(t, "Measure", "disclaimer", element.getDisclaimerElement(), -1); 10192 if (element.hasScoring()) 10193 composeCodeableConcept(t, "Measure", "scoring", element.getScoring(), -1); 10194 if (element.hasCompositeScoring()) 10195 composeCodeableConcept(t, "Measure", "compositeScoring", element.getCompositeScoring(), -1); 10196 for (int i = 0; i < element.getType().size(); i++) 10197 composeCodeableConcept(t, "Measure", "type", element.getType().get(i), i); 10198 if (element.hasRiskAdjustmentElement()) 10199 composeString(t, "Measure", "riskAdjustment", element.getRiskAdjustmentElement(), -1); 10200 if (element.hasRateAggregationElement()) 10201 composeString(t, "Measure", "rateAggregation", element.getRateAggregationElement(), -1); 10202 if (element.hasRationaleElement()) 10203 composeMarkdown(t, "Measure", "rationale", element.getRationaleElement(), -1); 10204 if (element.hasClinicalRecommendationStatementElement()) 10205 composeMarkdown(t, "Measure", "clinicalRecommendationStatement", 10206 element.getClinicalRecommendationStatementElement(), -1); 10207 if (element.hasImprovementNotation()) 10208 composeCodeableConcept(t, "Measure", "improvementNotation", element.getImprovementNotation(), -1); 10209 for (int i = 0; i < element.getDefinition().size(); i++) 10210 composeMarkdown(t, "Measure", "definition", element.getDefinition().get(i), i); 10211 if (element.hasGuidanceElement()) 10212 composeMarkdown(t, "Measure", "guidance", element.getGuidanceElement(), -1); 10213 for (int i = 0; i < element.getGroup().size(); i++) 10214 composeMeasureMeasureGroupComponent(t, "Measure", "group", element.getGroup().get(i), i); 10215 for (int i = 0; i < element.getSupplementalData().size(); i++) 10216 composeMeasureMeasureSupplementalDataComponent(t, "Measure", "supplementalData", 10217 element.getSupplementalData().get(i), i); 10218 } 10219 10220 protected void composeMeasureMeasureGroupComponent(Complex parent, String parentType, String name, 10221 Measure.MeasureGroupComponent element, int index) { 10222 if (element == null) 10223 return; 10224 Complex t; 10225 if (Utilities.noString(parentType)) 10226 t = parent; 10227 else { 10228 t = parent.predicate("fhir:" + parentType + '.' + name); 10229 } 10230 composeBackboneElement(t, "group", name, element, index); 10231 if (element.hasCode()) 10232 composeCodeableConcept(t, "Measure", "code", element.getCode(), -1); 10233 if (element.hasDescriptionElement()) 10234 composeString(t, "Measure", "description", element.getDescriptionElement(), -1); 10235 for (int i = 0; i < element.getPopulation().size(); i++) 10236 composeMeasureMeasureGroupPopulationComponent(t, "Measure", "population", element.getPopulation().get(i), i); 10237 for (int i = 0; i < element.getStratifier().size(); i++) 10238 composeMeasureMeasureGroupStratifierComponent(t, "Measure", "stratifier", element.getStratifier().get(i), i); 10239 } 10240 10241 protected void composeMeasureMeasureGroupPopulationComponent(Complex parent, String parentType, String name, 10242 Measure.MeasureGroupPopulationComponent element, int index) { 10243 if (element == null) 10244 return; 10245 Complex t; 10246 if (Utilities.noString(parentType)) 10247 t = parent; 10248 else { 10249 t = parent.predicate("fhir:" + parentType + '.' + name); 10250 } 10251 composeBackboneElement(t, "population", name, element, index); 10252 if (element.hasCode()) 10253 composeCodeableConcept(t, "Measure", "code", element.getCode(), -1); 10254 if (element.hasDescriptionElement()) 10255 composeString(t, "Measure", "description", element.getDescriptionElement(), -1); 10256 if (element.hasCriteria()) 10257 composeExpression(t, "Measure", "criteria", element.getCriteria(), -1); 10258 } 10259 10260 protected void composeMeasureMeasureGroupStratifierComponent(Complex parent, String parentType, String name, 10261 Measure.MeasureGroupStratifierComponent element, int index) { 10262 if (element == null) 10263 return; 10264 Complex t; 10265 if (Utilities.noString(parentType)) 10266 t = parent; 10267 else { 10268 t = parent.predicate("fhir:" + parentType + '.' + name); 10269 } 10270 composeBackboneElement(t, "stratifier", name, element, index); 10271 if (element.hasCode()) 10272 composeCodeableConcept(t, "Measure", "code", element.getCode(), -1); 10273 if (element.hasDescriptionElement()) 10274 composeString(t, "Measure", "description", element.getDescriptionElement(), -1); 10275 if (element.hasCriteria()) 10276 composeExpression(t, "Measure", "criteria", element.getCriteria(), -1); 10277 for (int i = 0; i < element.getComponent().size(); i++) 10278 composeMeasureMeasureGroupStratifierComponentComponent(t, "Measure", "component", element.getComponent().get(i), 10279 i); 10280 } 10281 10282 protected void composeMeasureMeasureGroupStratifierComponentComponent(Complex parent, String parentType, String name, 10283 Measure.MeasureGroupStratifierComponentComponent element, int index) { 10284 if (element == null) 10285 return; 10286 Complex t; 10287 if (Utilities.noString(parentType)) 10288 t = parent; 10289 else { 10290 t = parent.predicate("fhir:" + parentType + '.' + name); 10291 } 10292 composeBackboneElement(t, "component", name, element, index); 10293 if (element.hasCode()) 10294 composeCodeableConcept(t, "Measure", "code", element.getCode(), -1); 10295 if (element.hasDescriptionElement()) 10296 composeString(t, "Measure", "description", element.getDescriptionElement(), -1); 10297 if (element.hasCriteria()) 10298 composeExpression(t, "Measure", "criteria", element.getCriteria(), -1); 10299 } 10300 10301 protected void composeMeasureMeasureSupplementalDataComponent(Complex parent, String parentType, String name, 10302 Measure.MeasureSupplementalDataComponent element, int index) { 10303 if (element == null) 10304 return; 10305 Complex t; 10306 if (Utilities.noString(parentType)) 10307 t = parent; 10308 else { 10309 t = parent.predicate("fhir:" + parentType + '.' + name); 10310 } 10311 composeBackboneElement(t, "supplementalData", name, element, index); 10312 if (element.hasCode()) 10313 composeCodeableConcept(t, "Measure", "code", element.getCode(), -1); 10314 for (int i = 0; i < element.getUsage().size(); i++) 10315 composeCodeableConcept(t, "Measure", "usage", element.getUsage().get(i), i); 10316 if (element.hasDescriptionElement()) 10317 composeString(t, "Measure", "description", element.getDescriptionElement(), -1); 10318 if (element.hasCriteria()) 10319 composeExpression(t, "Measure", "criteria", element.getCriteria(), -1); 10320 } 10321 10322 protected void composeMeasureReport(Complex parent, String parentType, String name, MeasureReport element, 10323 int index) { 10324 if (element == null) 10325 return; 10326 Complex t; 10327 if (Utilities.noString(parentType)) 10328 t = parent; 10329 else { 10330 t = parent.predicate("fhir:" + parentType + '.' + name); 10331 } 10332 composeDomainResource(t, "MeasureReport", name, element, index); 10333 for (int i = 0; i < element.getIdentifier().size(); i++) 10334 composeIdentifier(t, "MeasureReport", "identifier", element.getIdentifier().get(i), i); 10335 if (element.hasStatusElement()) 10336 composeEnum(t, "MeasureReport", "status", element.getStatusElement(), -1); 10337 if (element.hasTypeElement()) 10338 composeEnum(t, "MeasureReport", "type", element.getTypeElement(), -1); 10339 if (element.hasMeasureElement()) 10340 composeCanonical(t, "MeasureReport", "measure", element.getMeasureElement(), -1); 10341 if (element.hasSubject()) 10342 composeReference(t, "MeasureReport", "subject", element.getSubject(), -1); 10343 if (element.hasDateElement()) 10344 composeDateTime(t, "MeasureReport", "date", element.getDateElement(), -1); 10345 if (element.hasReporter()) 10346 composeReference(t, "MeasureReport", "reporter", element.getReporter(), -1); 10347 if (element.hasPeriod()) 10348 composePeriod(t, "MeasureReport", "period", element.getPeriod(), -1); 10349 if (element.hasImprovementNotation()) 10350 composeCodeableConcept(t, "MeasureReport", "improvementNotation", element.getImprovementNotation(), -1); 10351 for (int i = 0; i < element.getGroup().size(); i++) 10352 composeMeasureReportMeasureReportGroupComponent(t, "MeasureReport", "group", element.getGroup().get(i), i); 10353 for (int i = 0; i < element.getEvaluatedResource().size(); i++) 10354 composeReference(t, "MeasureReport", "evaluatedResource", element.getEvaluatedResource().get(i), i); 10355 } 10356 10357 protected void composeMeasureReportMeasureReportGroupComponent(Complex parent, String parentType, String name, 10358 MeasureReport.MeasureReportGroupComponent element, int index) { 10359 if (element == null) 10360 return; 10361 Complex t; 10362 if (Utilities.noString(parentType)) 10363 t = parent; 10364 else { 10365 t = parent.predicate("fhir:" + parentType + '.' + name); 10366 } 10367 composeBackboneElement(t, "group", name, element, index); 10368 if (element.hasCode()) 10369 composeCodeableConcept(t, "MeasureReport", "code", element.getCode(), -1); 10370 for (int i = 0; i < element.getPopulation().size(); i++) 10371 composeMeasureReportMeasureReportGroupPopulationComponent(t, "MeasureReport", "population", 10372 element.getPopulation().get(i), i); 10373 if (element.hasMeasureScore()) 10374 composeQuantity(t, "MeasureReport", "measureScore", element.getMeasureScore(), -1); 10375 for (int i = 0; i < element.getStratifier().size(); i++) 10376 composeMeasureReportMeasureReportGroupStratifierComponent(t, "MeasureReport", "stratifier", 10377 element.getStratifier().get(i), i); 10378 } 10379 10380 protected void composeMeasureReportMeasureReportGroupPopulationComponent(Complex parent, String parentType, 10381 String name, MeasureReport.MeasureReportGroupPopulationComponent element, int index) { 10382 if (element == null) 10383 return; 10384 Complex t; 10385 if (Utilities.noString(parentType)) 10386 t = parent; 10387 else { 10388 t = parent.predicate("fhir:" + parentType + '.' + name); 10389 } 10390 composeBackboneElement(t, "population", name, element, index); 10391 if (element.hasCode()) 10392 composeCodeableConcept(t, "MeasureReport", "code", element.getCode(), -1); 10393 if (element.hasCountElement()) 10394 composeInteger(t, "MeasureReport", "count", element.getCountElement(), -1); 10395 if (element.hasSubjectResults()) 10396 composeReference(t, "MeasureReport", "subjectResults", element.getSubjectResults(), -1); 10397 } 10398 10399 protected void composeMeasureReportMeasureReportGroupStratifierComponent(Complex parent, String parentType, 10400 String name, MeasureReport.MeasureReportGroupStratifierComponent element, int index) { 10401 if (element == null) 10402 return; 10403 Complex t; 10404 if (Utilities.noString(parentType)) 10405 t = parent; 10406 else { 10407 t = parent.predicate("fhir:" + parentType + '.' + name); 10408 } 10409 composeBackboneElement(t, "stratifier", name, element, index); 10410 for (int i = 0; i < element.getCode().size(); i++) 10411 composeCodeableConcept(t, "MeasureReport", "code", element.getCode().get(i), i); 10412 for (int i = 0; i < element.getStratum().size(); i++) 10413 composeMeasureReportStratifierGroupComponent(t, "MeasureReport", "stratum", element.getStratum().get(i), i); 10414 } 10415 10416 protected void composeMeasureReportStratifierGroupComponent(Complex parent, String parentType, String name, 10417 MeasureReport.StratifierGroupComponent element, int index) { 10418 if (element == null) 10419 return; 10420 Complex t; 10421 if (Utilities.noString(parentType)) 10422 t = parent; 10423 else { 10424 t = parent.predicate("fhir:" + parentType + '.' + name); 10425 } 10426 composeBackboneElement(t, "stratum", name, element, index); 10427 if (element.hasValue()) 10428 composeCodeableConcept(t, "MeasureReport", "value", element.getValue(), -1); 10429 for (int i = 0; i < element.getComponent().size(); i++) 10430 composeMeasureReportStratifierGroupComponentComponent(t, "MeasureReport", "component", 10431 element.getComponent().get(i), i); 10432 for (int i = 0; i < element.getPopulation().size(); i++) 10433 composeMeasureReportStratifierGroupPopulationComponent(t, "MeasureReport", "population", 10434 element.getPopulation().get(i), i); 10435 if (element.hasMeasureScore()) 10436 composeQuantity(t, "MeasureReport", "measureScore", element.getMeasureScore(), -1); 10437 } 10438 10439 protected void composeMeasureReportStratifierGroupComponentComponent(Complex parent, String parentType, String name, 10440 MeasureReport.StratifierGroupComponentComponent element, int index) { 10441 if (element == null) 10442 return; 10443 Complex t; 10444 if (Utilities.noString(parentType)) 10445 t = parent; 10446 else { 10447 t = parent.predicate("fhir:" + parentType + '.' + name); 10448 } 10449 composeBackboneElement(t, "component", name, element, index); 10450 if (element.hasCode()) 10451 composeCodeableConcept(t, "MeasureReport", "code", element.getCode(), -1); 10452 if (element.hasValue()) 10453 composeCodeableConcept(t, "MeasureReport", "value", element.getValue(), -1); 10454 } 10455 10456 protected void composeMeasureReportStratifierGroupPopulationComponent(Complex parent, String parentType, String name, 10457 MeasureReport.StratifierGroupPopulationComponent element, int index) { 10458 if (element == null) 10459 return; 10460 Complex t; 10461 if (Utilities.noString(parentType)) 10462 t = parent; 10463 else { 10464 t = parent.predicate("fhir:" + parentType + '.' + name); 10465 } 10466 composeBackboneElement(t, "population", name, element, index); 10467 if (element.hasCode()) 10468 composeCodeableConcept(t, "MeasureReport", "code", element.getCode(), -1); 10469 if (element.hasCountElement()) 10470 composeInteger(t, "MeasureReport", "count", element.getCountElement(), -1); 10471 if (element.hasSubjectResults()) 10472 composeReference(t, "MeasureReport", "subjectResults", element.getSubjectResults(), -1); 10473 } 10474 10475 protected void composeMedia(Complex parent, String parentType, String name, Media element, int index) { 10476 if (element == null) 10477 return; 10478 Complex t; 10479 if (Utilities.noString(parentType)) 10480 t = parent; 10481 else { 10482 t = parent.predicate("fhir:" + parentType + '.' + name); 10483 } 10484 composeDomainResource(t, "Media", name, element, index); 10485 for (int i = 0; i < element.getIdentifier().size(); i++) 10486 composeIdentifier(t, "Media", "identifier", element.getIdentifier().get(i), i); 10487 for (int i = 0; i < element.getBasedOn().size(); i++) 10488 composeReference(t, "Media", "basedOn", element.getBasedOn().get(i), i); 10489 for (int i = 0; i < element.getPartOf().size(); i++) 10490 composeReference(t, "Media", "partOf", element.getPartOf().get(i), i); 10491 if (element.hasStatusElement()) 10492 composeEnum(t, "Media", "status", element.getStatusElement(), -1); 10493 if (element.hasType()) 10494 composeCodeableConcept(t, "Media", "type", element.getType(), -1); 10495 if (element.hasModality()) 10496 composeCodeableConcept(t, "Media", "modality", element.getModality(), -1); 10497 if (element.hasView()) 10498 composeCodeableConcept(t, "Media", "view", element.getView(), -1); 10499 if (element.hasSubject()) 10500 composeReference(t, "Media", "subject", element.getSubject(), -1); 10501 if (element.hasEncounter()) 10502 composeReference(t, "Media", "encounter", element.getEncounter(), -1); 10503 if (element.hasCreated()) 10504 composeType(t, "Media", "created", element.getCreated(), -1); 10505 if (element.hasIssuedElement()) 10506 composeInstant(t, "Media", "issued", element.getIssuedElement(), -1); 10507 if (element.hasOperator()) 10508 composeReference(t, "Media", "operator", element.getOperator(), -1); 10509 for (int i = 0; i < element.getReasonCode().size(); i++) 10510 composeCodeableConcept(t, "Media", "reasonCode", element.getReasonCode().get(i), i); 10511 if (element.hasBodySite()) 10512 composeCodeableConcept(t, "Media", "bodySite", element.getBodySite(), -1); 10513 if (element.hasDeviceNameElement()) 10514 composeString(t, "Media", "deviceName", element.getDeviceNameElement(), -1); 10515 if (element.hasDevice()) 10516 composeReference(t, "Media", "device", element.getDevice(), -1); 10517 if (element.hasHeightElement()) 10518 composePositiveInt(t, "Media", "height", element.getHeightElement(), -1); 10519 if (element.hasWidthElement()) 10520 composePositiveInt(t, "Media", "width", element.getWidthElement(), -1); 10521 if (element.hasFramesElement()) 10522 composePositiveInt(t, "Media", "frames", element.getFramesElement(), -1); 10523 if (element.hasDurationElement()) 10524 composeDecimal(t, "Media", "duration", element.getDurationElement(), -1); 10525 if (element.hasContent()) 10526 composeAttachment(t, "Media", "content", element.getContent(), -1); 10527 for (int i = 0; i < element.getNote().size(); i++) 10528 composeAnnotation(t, "Media", "note", element.getNote().get(i), i); 10529 } 10530 10531 protected void composeMedication(Complex parent, String parentType, String name, Medication element, int index) { 10532 if (element == null) 10533 return; 10534 Complex t; 10535 if (Utilities.noString(parentType)) 10536 t = parent; 10537 else { 10538 t = parent.predicate("fhir:" + parentType + '.' + name); 10539 } 10540 composeDomainResource(t, "Medication", name, element, index); 10541 for (int i = 0; i < element.getIdentifier().size(); i++) 10542 composeIdentifier(t, "Medication", "identifier", element.getIdentifier().get(i), i); 10543 if (element.hasCode()) 10544 composeCodeableConcept(t, "Medication", "code", element.getCode(), -1); 10545 if (element.hasStatusElement()) 10546 composeEnum(t, "Medication", "status", element.getStatusElement(), -1); 10547 if (element.hasManufacturer()) 10548 composeReference(t, "Medication", "manufacturer", element.getManufacturer(), -1); 10549 if (element.hasForm()) 10550 composeCodeableConcept(t, "Medication", "form", element.getForm(), -1); 10551 if (element.hasAmount()) 10552 composeRatio(t, "Medication", "amount", element.getAmount(), -1); 10553 for (int i = 0; i < element.getIngredient().size(); i++) 10554 composeMedicationMedicationIngredientComponent(t, "Medication", "ingredient", element.getIngredient().get(i), i); 10555 if (element.hasBatch()) 10556 composeMedicationMedicationBatchComponent(t, "Medication", "batch", element.getBatch(), -1); 10557 } 10558 10559 protected void composeMedicationMedicationIngredientComponent(Complex parent, String parentType, String name, 10560 Medication.MedicationIngredientComponent element, int index) { 10561 if (element == null) 10562 return; 10563 Complex t; 10564 if (Utilities.noString(parentType)) 10565 t = parent; 10566 else { 10567 t = parent.predicate("fhir:" + parentType + '.' + name); 10568 } 10569 composeBackboneElement(t, "ingredient", name, element, index); 10570 if (element.hasItem()) 10571 composeType(t, "Medication", "item", element.getItem(), -1); 10572 if (element.hasIsActiveElement()) 10573 composeBoolean(t, "Medication", "isActive", element.getIsActiveElement(), -1); 10574 if (element.hasStrength()) 10575 composeRatio(t, "Medication", "strength", element.getStrength(), -1); 10576 } 10577 10578 protected void composeMedicationMedicationBatchComponent(Complex parent, String parentType, String name, 10579 Medication.MedicationBatchComponent element, int index) { 10580 if (element == null) 10581 return; 10582 Complex t; 10583 if (Utilities.noString(parentType)) 10584 t = parent; 10585 else { 10586 t = parent.predicate("fhir:" + parentType + '.' + name); 10587 } 10588 composeBackboneElement(t, "batch", name, element, index); 10589 if (element.hasLotNumberElement()) 10590 composeString(t, "Medication", "lotNumber", element.getLotNumberElement(), -1); 10591 if (element.hasExpirationDateElement()) 10592 composeDateTime(t, "Medication", "expirationDate", element.getExpirationDateElement(), -1); 10593 } 10594 10595 protected void composeMedicationAdministration(Complex parent, String parentType, String name, 10596 MedicationAdministration element, int index) { 10597 if (element == null) 10598 return; 10599 Complex t; 10600 if (Utilities.noString(parentType)) 10601 t = parent; 10602 else { 10603 t = parent.predicate("fhir:" + parentType + '.' + name); 10604 } 10605 composeDomainResource(t, "MedicationAdministration", name, element, index); 10606 for (int i = 0; i < element.getIdentifier().size(); i++) 10607 composeIdentifier(t, "MedicationAdministration", "identifier", element.getIdentifier().get(i), i); 10608 for (int i = 0; i < element.getInstantiates().size(); i++) 10609 composeUri(t, "MedicationAdministration", "instantiates", element.getInstantiates().get(i), i); 10610 for (int i = 0; i < element.getPartOf().size(); i++) 10611 composeReference(t, "MedicationAdministration", "partOf", element.getPartOf().get(i), i); 10612 if (element.hasStatusElement()) 10613 composeEnum(t, "MedicationAdministration", "status", element.getStatusElement(), -1); 10614 for (int i = 0; i < element.getStatusReason().size(); i++) 10615 composeCodeableConcept(t, "MedicationAdministration", "statusReason", element.getStatusReason().get(i), i); 10616 if (element.hasCategory()) 10617 composeCodeableConcept(t, "MedicationAdministration", "category", element.getCategory(), -1); 10618 if (element.hasMedication()) 10619 composeType(t, "MedicationAdministration", "medication", element.getMedication(), -1); 10620 if (element.hasSubject()) 10621 composeReference(t, "MedicationAdministration", "subject", element.getSubject(), -1); 10622 if (element.hasContext()) 10623 composeReference(t, "MedicationAdministration", "context", element.getContext(), -1); 10624 for (int i = 0; i < element.getSupportingInformation().size(); i++) 10625 composeReference(t, "MedicationAdministration", "supportingInformation", 10626 element.getSupportingInformation().get(i), i); 10627 if (element.hasEffective()) 10628 composeType(t, "MedicationAdministration", "effective", element.getEffective(), -1); 10629 for (int i = 0; i < element.getPerformer().size(); i++) 10630 composeMedicationAdministrationMedicationAdministrationPerformerComponent(t, "MedicationAdministration", 10631 "performer", element.getPerformer().get(i), i); 10632 for (int i = 0; i < element.getReasonCode().size(); i++) 10633 composeCodeableConcept(t, "MedicationAdministration", "reasonCode", element.getReasonCode().get(i), i); 10634 for (int i = 0; i < element.getReasonReference().size(); i++) 10635 composeReference(t, "MedicationAdministration", "reasonReference", element.getReasonReference().get(i), i); 10636 if (element.hasRequest()) 10637 composeReference(t, "MedicationAdministration", "request", element.getRequest(), -1); 10638 for (int i = 0; i < element.getDevice().size(); i++) 10639 composeReference(t, "MedicationAdministration", "device", element.getDevice().get(i), i); 10640 for (int i = 0; i < element.getNote().size(); i++) 10641 composeAnnotation(t, "MedicationAdministration", "note", element.getNote().get(i), i); 10642 if (element.hasDosage()) 10643 composeMedicationAdministrationMedicationAdministrationDosageComponent(t, "MedicationAdministration", "dosage", 10644 element.getDosage(), -1); 10645 for (int i = 0; i < element.getEventHistory().size(); i++) 10646 composeReference(t, "MedicationAdministration", "eventHistory", element.getEventHistory().get(i), i); 10647 } 10648 10649 protected void composeMedicationAdministrationMedicationAdministrationPerformerComponent(Complex parent, 10650 String parentType, String name, MedicationAdministration.MedicationAdministrationPerformerComponent element, 10651 int index) { 10652 if (element == null) 10653 return; 10654 Complex t; 10655 if (Utilities.noString(parentType)) 10656 t = parent; 10657 else { 10658 t = parent.predicate("fhir:" + parentType + '.' + name); 10659 } 10660 composeBackboneElement(t, "performer", name, element, index); 10661 if (element.hasFunction()) 10662 composeCodeableConcept(t, "MedicationAdministration", "function", element.getFunction(), -1); 10663 if (element.hasActor()) 10664 composeReference(t, "MedicationAdministration", "actor", element.getActor(), -1); 10665 } 10666 10667 protected void composeMedicationAdministrationMedicationAdministrationDosageComponent(Complex parent, 10668 String parentType, String name, MedicationAdministration.MedicationAdministrationDosageComponent element, 10669 int index) { 10670 if (element == null) 10671 return; 10672 Complex t; 10673 if (Utilities.noString(parentType)) 10674 t = parent; 10675 else { 10676 t = parent.predicate("fhir:" + parentType + '.' + name); 10677 } 10678 composeBackboneElement(t, "dosage", name, element, index); 10679 if (element.hasTextElement()) 10680 composeString(t, "MedicationAdministration", "text", element.getTextElement(), -1); 10681 if (element.hasSite()) 10682 composeCodeableConcept(t, "MedicationAdministration", "site", element.getSite(), -1); 10683 if (element.hasRoute()) 10684 composeCodeableConcept(t, "MedicationAdministration", "route", element.getRoute(), -1); 10685 if (element.hasMethod()) 10686 composeCodeableConcept(t, "MedicationAdministration", "method", element.getMethod(), -1); 10687 if (element.hasDose()) 10688 composeQuantity(t, "MedicationAdministration", "dose", element.getDose(), -1); 10689 if (element.hasRate()) 10690 composeType(t, "MedicationAdministration", "rate", element.getRate(), -1); 10691 } 10692 10693 protected void composeMedicationDispense(Complex parent, String parentType, String name, MedicationDispense element, 10694 int index) { 10695 if (element == null) 10696 return; 10697 Complex t; 10698 if (Utilities.noString(parentType)) 10699 t = parent; 10700 else { 10701 t = parent.predicate("fhir:" + parentType + '.' + name); 10702 } 10703 composeDomainResource(t, "MedicationDispense", name, element, index); 10704 for (int i = 0; i < element.getIdentifier().size(); i++) 10705 composeIdentifier(t, "MedicationDispense", "identifier", element.getIdentifier().get(i), i); 10706 for (int i = 0; i < element.getPartOf().size(); i++) 10707 composeReference(t, "MedicationDispense", "partOf", element.getPartOf().get(i), i); 10708 if (element.hasStatusElement()) 10709 composeEnum(t, "MedicationDispense", "status", element.getStatusElement(), -1); 10710 if (element.hasStatusReason()) 10711 composeType(t, "MedicationDispense", "statusReason", element.getStatusReason(), -1); 10712 if (element.hasCategory()) 10713 composeCodeableConcept(t, "MedicationDispense", "category", element.getCategory(), -1); 10714 if (element.hasMedication()) 10715 composeType(t, "MedicationDispense", "medication", element.getMedication(), -1); 10716 if (element.hasSubject()) 10717 composeReference(t, "MedicationDispense", "subject", element.getSubject(), -1); 10718 if (element.hasContext()) 10719 composeReference(t, "MedicationDispense", "context", element.getContext(), -1); 10720 for (int i = 0; i < element.getSupportingInformation().size(); i++) 10721 composeReference(t, "MedicationDispense", "supportingInformation", element.getSupportingInformation().get(i), i); 10722 for (int i = 0; i < element.getPerformer().size(); i++) 10723 composeMedicationDispenseMedicationDispensePerformerComponent(t, "MedicationDispense", "performer", 10724 element.getPerformer().get(i), i); 10725 if (element.hasLocation()) 10726 composeReference(t, "MedicationDispense", "location", element.getLocation(), -1); 10727 for (int i = 0; i < element.getAuthorizingPrescription().size(); i++) 10728 composeReference(t, "MedicationDispense", "authorizingPrescription", element.getAuthorizingPrescription().get(i), 10729 i); 10730 if (element.hasType()) 10731 composeCodeableConcept(t, "MedicationDispense", "type", element.getType(), -1); 10732 if (element.hasQuantity()) 10733 composeQuantity(t, "MedicationDispense", "quantity", element.getQuantity(), -1); 10734 if (element.hasDaysSupply()) 10735 composeQuantity(t, "MedicationDispense", "daysSupply", element.getDaysSupply(), -1); 10736 if (element.hasWhenPreparedElement()) 10737 composeDateTime(t, "MedicationDispense", "whenPrepared", element.getWhenPreparedElement(), -1); 10738 if (element.hasWhenHandedOverElement()) 10739 composeDateTime(t, "MedicationDispense", "whenHandedOver", element.getWhenHandedOverElement(), -1); 10740 if (element.hasDestination()) 10741 composeReference(t, "MedicationDispense", "destination", element.getDestination(), -1); 10742 for (int i = 0; i < element.getReceiver().size(); i++) 10743 composeReference(t, "MedicationDispense", "receiver", element.getReceiver().get(i), i); 10744 for (int i = 0; i < element.getNote().size(); i++) 10745 composeAnnotation(t, "MedicationDispense", "note", element.getNote().get(i), i); 10746 for (int i = 0; i < element.getDosageInstruction().size(); i++) 10747 composeDosage(t, "MedicationDispense", "dosageInstruction", element.getDosageInstruction().get(i), i); 10748 if (element.hasSubstitution()) 10749 composeMedicationDispenseMedicationDispenseSubstitutionComponent(t, "MedicationDispense", "substitution", 10750 element.getSubstitution(), -1); 10751 for (int i = 0; i < element.getDetectedIssue().size(); i++) 10752 composeReference(t, "MedicationDispense", "detectedIssue", element.getDetectedIssue().get(i), i); 10753 for (int i = 0; i < element.getEventHistory().size(); i++) 10754 composeReference(t, "MedicationDispense", "eventHistory", element.getEventHistory().get(i), i); 10755 } 10756 10757 protected void composeMedicationDispenseMedicationDispensePerformerComponent(Complex parent, String parentType, 10758 String name, MedicationDispense.MedicationDispensePerformerComponent element, int index) { 10759 if (element == null) 10760 return; 10761 Complex t; 10762 if (Utilities.noString(parentType)) 10763 t = parent; 10764 else { 10765 t = parent.predicate("fhir:" + parentType + '.' + name); 10766 } 10767 composeBackboneElement(t, "performer", name, element, index); 10768 if (element.hasFunction()) 10769 composeCodeableConcept(t, "MedicationDispense", "function", element.getFunction(), -1); 10770 if (element.hasActor()) 10771 composeReference(t, "MedicationDispense", "actor", element.getActor(), -1); 10772 } 10773 10774 protected void composeMedicationDispenseMedicationDispenseSubstitutionComponent(Complex parent, String parentType, 10775 String name, MedicationDispense.MedicationDispenseSubstitutionComponent element, int index) { 10776 if (element == null) 10777 return; 10778 Complex t; 10779 if (Utilities.noString(parentType)) 10780 t = parent; 10781 else { 10782 t = parent.predicate("fhir:" + parentType + '.' + name); 10783 } 10784 composeBackboneElement(t, "substitution", name, element, index); 10785 if (element.hasWasSubstitutedElement()) 10786 composeBoolean(t, "MedicationDispense", "wasSubstituted", element.getWasSubstitutedElement(), -1); 10787 if (element.hasType()) 10788 composeCodeableConcept(t, "MedicationDispense", "type", element.getType(), -1); 10789 for (int i = 0; i < element.getReason().size(); i++) 10790 composeCodeableConcept(t, "MedicationDispense", "reason", element.getReason().get(i), i); 10791 for (int i = 0; i < element.getResponsibleParty().size(); i++) 10792 composeReference(t, "MedicationDispense", "responsibleParty", element.getResponsibleParty().get(i), i); 10793 } 10794 10795 protected void composeMedicationKnowledge(Complex parent, String parentType, String name, MedicationKnowledge element, 10796 int index) { 10797 if (element == null) 10798 return; 10799 Complex t; 10800 if (Utilities.noString(parentType)) 10801 t = parent; 10802 else { 10803 t = parent.predicate("fhir:" + parentType + '.' + name); 10804 } 10805 composeDomainResource(t, "MedicationKnowledge", name, element, index); 10806 if (element.hasCode()) 10807 composeCodeableConcept(t, "MedicationKnowledge", "code", element.getCode(), -1); 10808 if (element.hasStatusElement()) 10809 composeEnum(t, "MedicationKnowledge", "status", element.getStatusElement(), -1); 10810 if (element.hasManufacturer()) 10811 composeReference(t, "MedicationKnowledge", "manufacturer", element.getManufacturer(), -1); 10812 if (element.hasDoseForm()) 10813 composeCodeableConcept(t, "MedicationKnowledge", "doseForm", element.getDoseForm(), -1); 10814 if (element.hasAmount()) 10815 composeQuantity(t, "MedicationKnowledge", "amount", element.getAmount(), -1); 10816 for (int i = 0; i < element.getSynonym().size(); i++) 10817 composeString(t, "MedicationKnowledge", "synonym", element.getSynonym().get(i), i); 10818 for (int i = 0; i < element.getRelatedMedicationKnowledge().size(); i++) 10819 composeMedicationKnowledgeMedicationKnowledgeRelatedMedicationKnowledgeComponent(t, "MedicationKnowledge", 10820 "relatedMedicationKnowledge", element.getRelatedMedicationKnowledge().get(i), i); 10821 for (int i = 0; i < element.getAssociatedMedication().size(); i++) 10822 composeReference(t, "MedicationKnowledge", "associatedMedication", element.getAssociatedMedication().get(i), i); 10823 for (int i = 0; i < element.getProductType().size(); i++) 10824 composeCodeableConcept(t, "MedicationKnowledge", "productType", element.getProductType().get(i), i); 10825 for (int i = 0; i < element.getMonograph().size(); i++) 10826 composeMedicationKnowledgeMedicationKnowledgeMonographComponent(t, "MedicationKnowledge", "monograph", 10827 element.getMonograph().get(i), i); 10828 for (int i = 0; i < element.getIngredient().size(); i++) 10829 composeMedicationKnowledgeMedicationKnowledgeIngredientComponent(t, "MedicationKnowledge", "ingredient", 10830 element.getIngredient().get(i), i); 10831 if (element.hasPreparationInstructionElement()) 10832 composeMarkdown(t, "MedicationKnowledge", "preparationInstruction", element.getPreparationInstructionElement(), 10833 -1); 10834 for (int i = 0; i < element.getIntendedRoute().size(); i++) 10835 composeCodeableConcept(t, "MedicationKnowledge", "intendedRoute", element.getIntendedRoute().get(i), i); 10836 for (int i = 0; i < element.getCost().size(); i++) 10837 composeMedicationKnowledgeMedicationKnowledgeCostComponent(t, "MedicationKnowledge", "cost", 10838 element.getCost().get(i), i); 10839 for (int i = 0; i < element.getMonitoringProgram().size(); i++) 10840 composeMedicationKnowledgeMedicationKnowledgeMonitoringProgramComponent(t, "MedicationKnowledge", 10841 "monitoringProgram", element.getMonitoringProgram().get(i), i); 10842 for (int i = 0; i < element.getAdministrationGuidelines().size(); i++) 10843 composeMedicationKnowledgeMedicationKnowledgeAdministrationGuidelinesComponent(t, "MedicationKnowledge", 10844 "administrationGuidelines", element.getAdministrationGuidelines().get(i), i); 10845 for (int i = 0; i < element.getMedicineClassification().size(); i++) 10846 composeMedicationKnowledgeMedicationKnowledgeMedicineClassificationComponent(t, "MedicationKnowledge", 10847 "medicineClassification", element.getMedicineClassification().get(i), i); 10848 if (element.hasPackaging()) 10849 composeMedicationKnowledgeMedicationKnowledgePackagingComponent(t, "MedicationKnowledge", "packaging", 10850 element.getPackaging(), -1); 10851 for (int i = 0; i < element.getDrugCharacteristic().size(); i++) 10852 composeMedicationKnowledgeMedicationKnowledgeDrugCharacteristicComponent(t, "MedicationKnowledge", 10853 "drugCharacteristic", element.getDrugCharacteristic().get(i), i); 10854 for (int i = 0; i < element.getContraindication().size(); i++) 10855 composeReference(t, "MedicationKnowledge", "contraindication", element.getContraindication().get(i), i); 10856 for (int i = 0; i < element.getRegulatory().size(); i++) 10857 composeMedicationKnowledgeMedicationKnowledgeRegulatoryComponent(t, "MedicationKnowledge", "regulatory", 10858 element.getRegulatory().get(i), i); 10859 for (int i = 0; i < element.getKinetics().size(); i++) 10860 composeMedicationKnowledgeMedicationKnowledgeKineticsComponent(t, "MedicationKnowledge", "kinetics", 10861 element.getKinetics().get(i), i); 10862 } 10863 10864 protected void composeMedicationKnowledgeMedicationKnowledgeRelatedMedicationKnowledgeComponent(Complex parent, 10865 String parentType, String name, 10866 MedicationKnowledge.MedicationKnowledgeRelatedMedicationKnowledgeComponent element, int index) { 10867 if (element == null) 10868 return; 10869 Complex t; 10870 if (Utilities.noString(parentType)) 10871 t = parent; 10872 else { 10873 t = parent.predicate("fhir:" + parentType + '.' + name); 10874 } 10875 composeBackboneElement(t, "relatedMedicationKnowledge", name, element, index); 10876 if (element.hasType()) 10877 composeCodeableConcept(t, "MedicationKnowledge", "type", element.getType(), -1); 10878 for (int i = 0; i < element.getReference().size(); i++) 10879 composeReference(t, "MedicationKnowledge", "reference", element.getReference().get(i), i); 10880 } 10881 10882 protected void composeMedicationKnowledgeMedicationKnowledgeMonographComponent(Complex parent, String parentType, 10883 String name, MedicationKnowledge.MedicationKnowledgeMonographComponent element, int index) { 10884 if (element == null) 10885 return; 10886 Complex t; 10887 if (Utilities.noString(parentType)) 10888 t = parent; 10889 else { 10890 t = parent.predicate("fhir:" + parentType + '.' + name); 10891 } 10892 composeBackboneElement(t, "monograph", name, element, index); 10893 if (element.hasType()) 10894 composeCodeableConcept(t, "MedicationKnowledge", "type", element.getType(), -1); 10895 if (element.hasSource()) 10896 composeReference(t, "MedicationKnowledge", "source", element.getSource(), -1); 10897 } 10898 10899 protected void composeMedicationKnowledgeMedicationKnowledgeIngredientComponent(Complex parent, String parentType, 10900 String name, MedicationKnowledge.MedicationKnowledgeIngredientComponent element, int index) { 10901 if (element == null) 10902 return; 10903 Complex t; 10904 if (Utilities.noString(parentType)) 10905 t = parent; 10906 else { 10907 t = parent.predicate("fhir:" + parentType + '.' + name); 10908 } 10909 composeBackboneElement(t, "ingredient", name, element, index); 10910 if (element.hasItem()) 10911 composeType(t, "MedicationKnowledge", "item", element.getItem(), -1); 10912 if (element.hasIsActiveElement()) 10913 composeBoolean(t, "MedicationKnowledge", "isActive", element.getIsActiveElement(), -1); 10914 if (element.hasStrength()) 10915 composeRatio(t, "MedicationKnowledge", "strength", element.getStrength(), -1); 10916 } 10917 10918 protected void composeMedicationKnowledgeMedicationKnowledgeCostComponent(Complex parent, String parentType, 10919 String name, MedicationKnowledge.MedicationKnowledgeCostComponent element, int index) { 10920 if (element == null) 10921 return; 10922 Complex t; 10923 if (Utilities.noString(parentType)) 10924 t = parent; 10925 else { 10926 t = parent.predicate("fhir:" + parentType + '.' + name); 10927 } 10928 composeBackboneElement(t, "cost", name, element, index); 10929 if (element.hasType()) 10930 composeCodeableConcept(t, "MedicationKnowledge", "type", element.getType(), -1); 10931 if (element.hasSourceElement()) 10932 composeString(t, "MedicationKnowledge", "source", element.getSourceElement(), -1); 10933 if (element.hasCost()) 10934 composeMoney(t, "MedicationKnowledge", "cost", element.getCost(), -1); 10935 } 10936 10937 protected void composeMedicationKnowledgeMedicationKnowledgeMonitoringProgramComponent(Complex parent, 10938 String parentType, String name, MedicationKnowledge.MedicationKnowledgeMonitoringProgramComponent element, 10939 int index) { 10940 if (element == null) 10941 return; 10942 Complex t; 10943 if (Utilities.noString(parentType)) 10944 t = parent; 10945 else { 10946 t = parent.predicate("fhir:" + parentType + '.' + name); 10947 } 10948 composeBackboneElement(t, "monitoringProgram", name, element, index); 10949 if (element.hasType()) 10950 composeCodeableConcept(t, "MedicationKnowledge", "type", element.getType(), -1); 10951 if (element.hasNameElement()) 10952 composeString(t, "MedicationKnowledge", "name", element.getNameElement(), -1); 10953 } 10954 10955 protected void composeMedicationKnowledgeMedicationKnowledgeAdministrationGuidelinesComponent(Complex parent, 10956 String parentType, String name, MedicationKnowledge.MedicationKnowledgeAdministrationGuidelinesComponent element, 10957 int index) { 10958 if (element == null) 10959 return; 10960 Complex t; 10961 if (Utilities.noString(parentType)) 10962 t = parent; 10963 else { 10964 t = parent.predicate("fhir:" + parentType + '.' + name); 10965 } 10966 composeBackboneElement(t, "administrationGuidelines", name, element, index); 10967 for (int i = 0; i < element.getDosage().size(); i++) 10968 composeMedicationKnowledgeMedicationKnowledgeAdministrationGuidelinesDosageComponent(t, "MedicationKnowledge", 10969 "dosage", element.getDosage().get(i), i); 10970 if (element.hasIndication()) 10971 composeType(t, "MedicationKnowledge", "indication", element.getIndication(), -1); 10972 for (int i = 0; i < element.getPatientCharacteristics().size(); i++) 10973 composeMedicationKnowledgeMedicationKnowledgeAdministrationGuidelinesPatientCharacteristicsComponent(t, 10974 "MedicationKnowledge", "patientCharacteristics", element.getPatientCharacteristics().get(i), i); 10975 } 10976 10977 protected void composeMedicationKnowledgeMedicationKnowledgeAdministrationGuidelinesDosageComponent(Complex parent, 10978 String parentType, String name, 10979 MedicationKnowledge.MedicationKnowledgeAdministrationGuidelinesDosageComponent element, int index) { 10980 if (element == null) 10981 return; 10982 Complex t; 10983 if (Utilities.noString(parentType)) 10984 t = parent; 10985 else { 10986 t = parent.predicate("fhir:" + parentType + '.' + name); 10987 } 10988 composeBackboneElement(t, "dosage", name, element, index); 10989 if (element.hasType()) 10990 composeCodeableConcept(t, "MedicationKnowledge", "type", element.getType(), -1); 10991 for (int i = 0; i < element.getDosage().size(); i++) 10992 composeDosage(t, "MedicationKnowledge", "dosage", element.getDosage().get(i), i); 10993 } 10994 10995 protected void composeMedicationKnowledgeMedicationKnowledgeAdministrationGuidelinesPatientCharacteristicsComponent( 10996 Complex parent, String parentType, String name, 10997 MedicationKnowledge.MedicationKnowledgeAdministrationGuidelinesPatientCharacteristicsComponent element, 10998 int index) { 10999 if (element == null) 11000 return; 11001 Complex t; 11002 if (Utilities.noString(parentType)) 11003 t = parent; 11004 else { 11005 t = parent.predicate("fhir:" + parentType + '.' + name); 11006 } 11007 composeBackboneElement(t, "patientCharacteristics", name, element, index); 11008 if (element.hasCharacteristic()) 11009 composeType(t, "MedicationKnowledge", "characteristic", element.getCharacteristic(), -1); 11010 for (int i = 0; i < element.getValue().size(); i++) 11011 composeString(t, "MedicationKnowledge", "value", element.getValue().get(i), i); 11012 } 11013 11014 protected void composeMedicationKnowledgeMedicationKnowledgeMedicineClassificationComponent(Complex parent, 11015 String parentType, String name, MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent element, 11016 int index) { 11017 if (element == null) 11018 return; 11019 Complex t; 11020 if (Utilities.noString(parentType)) 11021 t = parent; 11022 else { 11023 t = parent.predicate("fhir:" + parentType + '.' + name); 11024 } 11025 composeBackboneElement(t, "medicineClassification", name, element, index); 11026 if (element.hasType()) 11027 composeCodeableConcept(t, "MedicationKnowledge", "type", element.getType(), -1); 11028 for (int i = 0; i < element.getClassification().size(); i++) 11029 composeCodeableConcept(t, "MedicationKnowledge", "classification", element.getClassification().get(i), i); 11030 } 11031 11032 protected void composeMedicationKnowledgeMedicationKnowledgePackagingComponent(Complex parent, String parentType, 11033 String name, MedicationKnowledge.MedicationKnowledgePackagingComponent element, int index) { 11034 if (element == null) 11035 return; 11036 Complex t; 11037 if (Utilities.noString(parentType)) 11038 t = parent; 11039 else { 11040 t = parent.predicate("fhir:" + parentType + '.' + name); 11041 } 11042 composeBackboneElement(t, "packaging", name, element, index); 11043 if (element.hasType()) 11044 composeCodeableConcept(t, "MedicationKnowledge", "type", element.getType(), -1); 11045 if (element.hasQuantity()) 11046 composeQuantity(t, "MedicationKnowledge", "quantity", element.getQuantity(), -1); 11047 } 11048 11049 protected void composeMedicationKnowledgeMedicationKnowledgeDrugCharacteristicComponent(Complex parent, 11050 String parentType, String name, MedicationKnowledge.MedicationKnowledgeDrugCharacteristicComponent element, 11051 int index) { 11052 if (element == null) 11053 return; 11054 Complex t; 11055 if (Utilities.noString(parentType)) 11056 t = parent; 11057 else { 11058 t = parent.predicate("fhir:" + parentType + '.' + name); 11059 } 11060 composeBackboneElement(t, "drugCharacteristic", name, element, index); 11061 if (element.hasType()) 11062 composeCodeableConcept(t, "MedicationKnowledge", "type", element.getType(), -1); 11063 if (element.hasValue()) 11064 composeType(t, "MedicationKnowledge", "value", element.getValue(), -1); 11065 } 11066 11067 protected void composeMedicationKnowledgeMedicationKnowledgeRegulatoryComponent(Complex parent, String parentType, 11068 String name, MedicationKnowledge.MedicationKnowledgeRegulatoryComponent element, int index) { 11069 if (element == null) 11070 return; 11071 Complex t; 11072 if (Utilities.noString(parentType)) 11073 t = parent; 11074 else { 11075 t = parent.predicate("fhir:" + parentType + '.' + name); 11076 } 11077 composeBackboneElement(t, "regulatory", name, element, index); 11078 if (element.hasRegulatoryAuthority()) 11079 composeReference(t, "MedicationKnowledge", "regulatoryAuthority", element.getRegulatoryAuthority(), -1); 11080 for (int i = 0; i < element.getSubstitution().size(); i++) 11081 composeMedicationKnowledgeMedicationKnowledgeRegulatorySubstitutionComponent(t, "MedicationKnowledge", 11082 "substitution", element.getSubstitution().get(i), i); 11083 for (int i = 0; i < element.getSchedule().size(); i++) 11084 composeMedicationKnowledgeMedicationKnowledgeRegulatoryScheduleComponent(t, "MedicationKnowledge", "schedule", 11085 element.getSchedule().get(i), i); 11086 if (element.hasMaxDispense()) 11087 composeMedicationKnowledgeMedicationKnowledgeRegulatoryMaxDispenseComponent(t, "MedicationKnowledge", 11088 "maxDispense", element.getMaxDispense(), -1); 11089 } 11090 11091 protected void composeMedicationKnowledgeMedicationKnowledgeRegulatorySubstitutionComponent(Complex parent, 11092 String parentType, String name, MedicationKnowledge.MedicationKnowledgeRegulatorySubstitutionComponent element, 11093 int index) { 11094 if (element == null) 11095 return; 11096 Complex t; 11097 if (Utilities.noString(parentType)) 11098 t = parent; 11099 else { 11100 t = parent.predicate("fhir:" + parentType + '.' + name); 11101 } 11102 composeBackboneElement(t, "substitution", name, element, index); 11103 if (element.hasType()) 11104 composeCodeableConcept(t, "MedicationKnowledge", "type", element.getType(), -1); 11105 if (element.hasAllowedElement()) 11106 composeBoolean(t, "MedicationKnowledge", "allowed", element.getAllowedElement(), -1); 11107 } 11108 11109 protected void composeMedicationKnowledgeMedicationKnowledgeRegulatoryScheduleComponent(Complex parent, 11110 String parentType, String name, MedicationKnowledge.MedicationKnowledgeRegulatoryScheduleComponent element, 11111 int index) { 11112 if (element == null) 11113 return; 11114 Complex t; 11115 if (Utilities.noString(parentType)) 11116 t = parent; 11117 else { 11118 t = parent.predicate("fhir:" + parentType + '.' + name); 11119 } 11120 composeBackboneElement(t, "schedule", name, element, index); 11121 if (element.hasSchedule()) 11122 composeCodeableConcept(t, "MedicationKnowledge", "schedule", element.getSchedule(), -1); 11123 } 11124 11125 protected void composeMedicationKnowledgeMedicationKnowledgeRegulatoryMaxDispenseComponent(Complex parent, 11126 String parentType, String name, MedicationKnowledge.MedicationKnowledgeRegulatoryMaxDispenseComponent element, 11127 int index) { 11128 if (element == null) 11129 return; 11130 Complex t; 11131 if (Utilities.noString(parentType)) 11132 t = parent; 11133 else { 11134 t = parent.predicate("fhir:" + parentType + '.' + name); 11135 } 11136 composeBackboneElement(t, "maxDispense", name, element, index); 11137 if (element.hasQuantity()) 11138 composeQuantity(t, "MedicationKnowledge", "quantity", element.getQuantity(), -1); 11139 if (element.hasPeriod()) 11140 composeDuration(t, "MedicationKnowledge", "period", element.getPeriod(), -1); 11141 } 11142 11143 protected void composeMedicationKnowledgeMedicationKnowledgeKineticsComponent(Complex parent, String parentType, 11144 String name, MedicationKnowledge.MedicationKnowledgeKineticsComponent element, int index) { 11145 if (element == null) 11146 return; 11147 Complex t; 11148 if (Utilities.noString(parentType)) 11149 t = parent; 11150 else { 11151 t = parent.predicate("fhir:" + parentType + '.' + name); 11152 } 11153 composeBackboneElement(t, "kinetics", name, element, index); 11154 for (int i = 0; i < element.getAreaUnderCurve().size(); i++) 11155 composeQuantity(t, "MedicationKnowledge", "areaUnderCurve", element.getAreaUnderCurve().get(i), i); 11156 for (int i = 0; i < element.getLethalDose50().size(); i++) 11157 composeQuantity(t, "MedicationKnowledge", "lethalDose50", element.getLethalDose50().get(i), i); 11158 if (element.hasHalfLifePeriod()) 11159 composeDuration(t, "MedicationKnowledge", "halfLifePeriod", element.getHalfLifePeriod(), -1); 11160 } 11161 11162 protected void composeMedicationRequest(Complex parent, String parentType, String name, MedicationRequest element, 11163 int index) { 11164 if (element == null) 11165 return; 11166 Complex t; 11167 if (Utilities.noString(parentType)) 11168 t = parent; 11169 else { 11170 t = parent.predicate("fhir:" + parentType + '.' + name); 11171 } 11172 composeDomainResource(t, "MedicationRequest", name, element, index); 11173 for (int i = 0; i < element.getIdentifier().size(); i++) 11174 composeIdentifier(t, "MedicationRequest", "identifier", element.getIdentifier().get(i), i); 11175 if (element.hasStatusElement()) 11176 composeEnum(t, "MedicationRequest", "status", element.getStatusElement(), -1); 11177 if (element.hasStatusReason()) 11178 composeCodeableConcept(t, "MedicationRequest", "statusReason", element.getStatusReason(), -1); 11179 if (element.hasIntentElement()) 11180 composeEnum(t, "MedicationRequest", "intent", element.getIntentElement(), -1); 11181 for (int i = 0; i < element.getCategory().size(); i++) 11182 composeCodeableConcept(t, "MedicationRequest", "category", element.getCategory().get(i), i); 11183 if (element.hasPriorityElement()) 11184 composeEnum(t, "MedicationRequest", "priority", element.getPriorityElement(), -1); 11185 if (element.hasDoNotPerformElement()) 11186 composeBoolean(t, "MedicationRequest", "doNotPerform", element.getDoNotPerformElement(), -1); 11187 if (element.hasReported()) 11188 composeType(t, "MedicationRequest", "reported", element.getReported(), -1); 11189 if (element.hasMedication()) 11190 composeType(t, "MedicationRequest", "medication", element.getMedication(), -1); 11191 if (element.hasSubject()) 11192 composeReference(t, "MedicationRequest", "subject", element.getSubject(), -1); 11193 if (element.hasEncounter()) 11194 composeReference(t, "MedicationRequest", "encounter", element.getEncounter(), -1); 11195 for (int i = 0; i < element.getSupportingInformation().size(); i++) 11196 composeReference(t, "MedicationRequest", "supportingInformation", element.getSupportingInformation().get(i), i); 11197 if (element.hasAuthoredOnElement()) 11198 composeDateTime(t, "MedicationRequest", "authoredOn", element.getAuthoredOnElement(), -1); 11199 if (element.hasRequester()) 11200 composeReference(t, "MedicationRequest", "requester", element.getRequester(), -1); 11201 if (element.hasPerformer()) 11202 composeReference(t, "MedicationRequest", "performer", element.getPerformer(), -1); 11203 if (element.hasPerformerType()) 11204 composeCodeableConcept(t, "MedicationRequest", "performerType", element.getPerformerType(), -1); 11205 if (element.hasRecorder()) 11206 composeReference(t, "MedicationRequest", "recorder", element.getRecorder(), -1); 11207 for (int i = 0; i < element.getReasonCode().size(); i++) 11208 composeCodeableConcept(t, "MedicationRequest", "reasonCode", element.getReasonCode().get(i), i); 11209 for (int i = 0; i < element.getReasonReference().size(); i++) 11210 composeReference(t, "MedicationRequest", "reasonReference", element.getReasonReference().get(i), i); 11211 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 11212 composeCanonical(t, "MedicationRequest", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 11213 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 11214 composeUri(t, "MedicationRequest", "instantiatesUri", element.getInstantiatesUri().get(i), i); 11215 for (int i = 0; i < element.getBasedOn().size(); i++) 11216 composeReference(t, "MedicationRequest", "basedOn", element.getBasedOn().get(i), i); 11217 if (element.hasGroupIdentifier()) 11218 composeIdentifier(t, "MedicationRequest", "groupIdentifier", element.getGroupIdentifier(), -1); 11219 if (element.hasCourseOfTherapyType()) 11220 composeCodeableConcept(t, "MedicationRequest", "courseOfTherapyType", element.getCourseOfTherapyType(), -1); 11221 for (int i = 0; i < element.getInsurance().size(); i++) 11222 composeReference(t, "MedicationRequest", "insurance", element.getInsurance().get(i), i); 11223 for (int i = 0; i < element.getNote().size(); i++) 11224 composeAnnotation(t, "MedicationRequest", "note", element.getNote().get(i), i); 11225 for (int i = 0; i < element.getDosageInstruction().size(); i++) 11226 composeDosage(t, "MedicationRequest", "dosageInstruction", element.getDosageInstruction().get(i), i); 11227 if (element.hasDispenseRequest()) 11228 composeMedicationRequestMedicationRequestDispenseRequestComponent(t, "MedicationRequest", "dispenseRequest", 11229 element.getDispenseRequest(), -1); 11230 if (element.hasSubstitution()) 11231 composeMedicationRequestMedicationRequestSubstitutionComponent(t, "MedicationRequest", "substitution", 11232 element.getSubstitution(), -1); 11233 if (element.hasPriorPrescription()) 11234 composeReference(t, "MedicationRequest", "priorPrescription", element.getPriorPrescription(), -1); 11235 for (int i = 0; i < element.getDetectedIssue().size(); i++) 11236 composeReference(t, "MedicationRequest", "detectedIssue", element.getDetectedIssue().get(i), i); 11237 for (int i = 0; i < element.getEventHistory().size(); i++) 11238 composeReference(t, "MedicationRequest", "eventHistory", element.getEventHistory().get(i), i); 11239 } 11240 11241 protected void composeMedicationRequestMedicationRequestDispenseRequestComponent(Complex parent, String parentType, 11242 String name, MedicationRequest.MedicationRequestDispenseRequestComponent element, int index) { 11243 if (element == null) 11244 return; 11245 Complex t; 11246 if (Utilities.noString(parentType)) 11247 t = parent; 11248 else { 11249 t = parent.predicate("fhir:" + parentType + '.' + name); 11250 } 11251 composeBackboneElement(t, "dispenseRequest", name, element, index); 11252 if (element.hasInitialFill()) 11253 composeMedicationRequestMedicationRequestDispenseRequestInitialFillComponent(t, "MedicationRequest", 11254 "initialFill", element.getInitialFill(), -1); 11255 if (element.hasDispenseInterval()) 11256 composeDuration(t, "MedicationRequest", "dispenseInterval", element.getDispenseInterval(), -1); 11257 if (element.hasValidityPeriod()) 11258 composePeriod(t, "MedicationRequest", "validityPeriod", element.getValidityPeriod(), -1); 11259 if (element.hasNumberOfRepeatsAllowedElement()) 11260 composeUnsignedInt(t, "MedicationRequest", "numberOfRepeatsAllowed", element.getNumberOfRepeatsAllowedElement(), 11261 -1); 11262 if (element.hasQuantity()) 11263 composeQuantity(t, "MedicationRequest", "quantity", element.getQuantity(), -1); 11264 if (element.hasExpectedSupplyDuration()) 11265 composeDuration(t, "MedicationRequest", "expectedSupplyDuration", element.getExpectedSupplyDuration(), -1); 11266 if (element.hasPerformer()) 11267 composeReference(t, "MedicationRequest", "performer", element.getPerformer(), -1); 11268 } 11269 11270 protected void composeMedicationRequestMedicationRequestDispenseRequestInitialFillComponent(Complex parent, 11271 String parentType, String name, MedicationRequest.MedicationRequestDispenseRequestInitialFillComponent element, 11272 int index) { 11273 if (element == null) 11274 return; 11275 Complex t; 11276 if (Utilities.noString(parentType)) 11277 t = parent; 11278 else { 11279 t = parent.predicate("fhir:" + parentType + '.' + name); 11280 } 11281 composeBackboneElement(t, "initialFill", name, element, index); 11282 if (element.hasQuantity()) 11283 composeQuantity(t, "MedicationRequest", "quantity", element.getQuantity(), -1); 11284 if (element.hasDuration()) 11285 composeDuration(t, "MedicationRequest", "duration", element.getDuration(), -1); 11286 } 11287 11288 protected void composeMedicationRequestMedicationRequestSubstitutionComponent(Complex parent, String parentType, 11289 String name, MedicationRequest.MedicationRequestSubstitutionComponent element, int index) { 11290 if (element == null) 11291 return; 11292 Complex t; 11293 if (Utilities.noString(parentType)) 11294 t = parent; 11295 else { 11296 t = parent.predicate("fhir:" + parentType + '.' + name); 11297 } 11298 composeBackboneElement(t, "substitution", name, element, index); 11299 if (element.hasAllowed()) 11300 composeType(t, "MedicationRequest", "allowed", element.getAllowed(), -1); 11301 if (element.hasReason()) 11302 composeCodeableConcept(t, "MedicationRequest", "reason", element.getReason(), -1); 11303 } 11304 11305 protected void composeMedicationStatement(Complex parent, String parentType, String name, MedicationStatement element, 11306 int index) { 11307 if (element == null) 11308 return; 11309 Complex t; 11310 if (Utilities.noString(parentType)) 11311 t = parent; 11312 else { 11313 t = parent.predicate("fhir:" + parentType + '.' + name); 11314 } 11315 composeDomainResource(t, "MedicationStatement", name, element, index); 11316 for (int i = 0; i < element.getIdentifier().size(); i++) 11317 composeIdentifier(t, "MedicationStatement", "identifier", element.getIdentifier().get(i), i); 11318 for (int i = 0; i < element.getBasedOn().size(); i++) 11319 composeReference(t, "MedicationStatement", "basedOn", element.getBasedOn().get(i), i); 11320 for (int i = 0; i < element.getPartOf().size(); i++) 11321 composeReference(t, "MedicationStatement", "partOf", element.getPartOf().get(i), i); 11322 if (element.hasStatusElement()) 11323 composeEnum(t, "MedicationStatement", "status", element.getStatusElement(), -1); 11324 for (int i = 0; i < element.getStatusReason().size(); i++) 11325 composeCodeableConcept(t, "MedicationStatement", "statusReason", element.getStatusReason().get(i), i); 11326 if (element.hasCategory()) 11327 composeCodeableConcept(t, "MedicationStatement", "category", element.getCategory(), -1); 11328 if (element.hasMedication()) 11329 composeType(t, "MedicationStatement", "medication", element.getMedication(), -1); 11330 if (element.hasSubject()) 11331 composeReference(t, "MedicationStatement", "subject", element.getSubject(), -1); 11332 if (element.hasContext()) 11333 composeReference(t, "MedicationStatement", "context", element.getContext(), -1); 11334 if (element.hasEffective()) 11335 composeType(t, "MedicationStatement", "effective", element.getEffective(), -1); 11336 if (element.hasDateAssertedElement()) 11337 composeDateTime(t, "MedicationStatement", "dateAsserted", element.getDateAssertedElement(), -1); 11338 if (element.hasInformationSource()) 11339 composeReference(t, "MedicationStatement", "informationSource", element.getInformationSource(), -1); 11340 for (int i = 0; i < element.getDerivedFrom().size(); i++) 11341 composeReference(t, "MedicationStatement", "derivedFrom", element.getDerivedFrom().get(i), i); 11342 for (int i = 0; i < element.getReasonCode().size(); i++) 11343 composeCodeableConcept(t, "MedicationStatement", "reasonCode", element.getReasonCode().get(i), i); 11344 for (int i = 0; i < element.getReasonReference().size(); i++) 11345 composeReference(t, "MedicationStatement", "reasonReference", element.getReasonReference().get(i), i); 11346 for (int i = 0; i < element.getNote().size(); i++) 11347 composeAnnotation(t, "MedicationStatement", "note", element.getNote().get(i), i); 11348 for (int i = 0; i < element.getDosage().size(); i++) 11349 composeDosage(t, "MedicationStatement", "dosage", element.getDosage().get(i), i); 11350 } 11351 11352 protected void composeMedicinalProduct(Complex parent, String parentType, String name, MedicinalProduct element, 11353 int index) { 11354 if (element == null) 11355 return; 11356 Complex t; 11357 if (Utilities.noString(parentType)) 11358 t = parent; 11359 else { 11360 t = parent.predicate("fhir:" + parentType + '.' + name); 11361 } 11362 composeDomainResource(t, "MedicinalProduct", name, element, index); 11363 for (int i = 0; i < element.getIdentifier().size(); i++) 11364 composeIdentifier(t, "MedicinalProduct", "identifier", element.getIdentifier().get(i), i); 11365 if (element.hasType()) 11366 composeCodeableConcept(t, "MedicinalProduct", "type", element.getType(), -1); 11367 if (element.hasDomain()) 11368 composeCoding(t, "MedicinalProduct", "domain", element.getDomain(), -1); 11369 if (element.hasCombinedPharmaceuticalDoseForm()) 11370 composeCodeableConcept(t, "MedicinalProduct", "combinedPharmaceuticalDoseForm", 11371 element.getCombinedPharmaceuticalDoseForm(), -1); 11372 if (element.hasLegalStatusOfSupply()) 11373 composeCodeableConcept(t, "MedicinalProduct", "legalStatusOfSupply", element.getLegalStatusOfSupply(), -1); 11374 if (element.hasAdditionalMonitoringIndicator()) 11375 composeCodeableConcept(t, "MedicinalProduct", "additionalMonitoringIndicator", 11376 element.getAdditionalMonitoringIndicator(), -1); 11377 for (int i = 0; i < element.getSpecialMeasures().size(); i++) 11378 composeString(t, "MedicinalProduct", "specialMeasures", element.getSpecialMeasures().get(i), i); 11379 if (element.hasPaediatricUseIndicator()) 11380 composeCodeableConcept(t, "MedicinalProduct", "paediatricUseIndicator", element.getPaediatricUseIndicator(), -1); 11381 for (int i = 0; i < element.getProductClassification().size(); i++) 11382 composeCodeableConcept(t, "MedicinalProduct", "productClassification", element.getProductClassification().get(i), 11383 i); 11384 for (int i = 0; i < element.getMarketingStatus().size(); i++) 11385 composeMarketingStatus(t, "MedicinalProduct", "marketingStatus", element.getMarketingStatus().get(i), i); 11386 for (int i = 0; i < element.getPharmaceuticalProduct().size(); i++) 11387 composeReference(t, "MedicinalProduct", "pharmaceuticalProduct", element.getPharmaceuticalProduct().get(i), i); 11388 for (int i = 0; i < element.getPackagedMedicinalProduct().size(); i++) 11389 composeReference(t, "MedicinalProduct", "packagedMedicinalProduct", element.getPackagedMedicinalProduct().get(i), 11390 i); 11391 for (int i = 0; i < element.getAttachedDocument().size(); i++) 11392 composeReference(t, "MedicinalProduct", "attachedDocument", element.getAttachedDocument().get(i), i); 11393 for (int i = 0; i < element.getMasterFile().size(); i++) 11394 composeReference(t, "MedicinalProduct", "masterFile", element.getMasterFile().get(i), i); 11395 for (int i = 0; i < element.getContact().size(); i++) 11396 composeReference(t, "MedicinalProduct", "contact", element.getContact().get(i), i); 11397 for (int i = 0; i < element.getClinicalTrial().size(); i++) 11398 composeReference(t, "MedicinalProduct", "clinicalTrial", element.getClinicalTrial().get(i), i); 11399 for (int i = 0; i < element.getName().size(); i++) 11400 composeMedicinalProductMedicinalProductNameComponent(t, "MedicinalProduct", "name", element.getName().get(i), i); 11401 for (int i = 0; i < element.getCrossReference().size(); i++) 11402 composeIdentifier(t, "MedicinalProduct", "crossReference", element.getCrossReference().get(i), i); 11403 for (int i = 0; i < element.getManufacturingBusinessOperation().size(); i++) 11404 composeMedicinalProductMedicinalProductManufacturingBusinessOperationComponent(t, "MedicinalProduct", 11405 "manufacturingBusinessOperation", element.getManufacturingBusinessOperation().get(i), i); 11406 for (int i = 0; i < element.getSpecialDesignation().size(); i++) 11407 composeMedicinalProductMedicinalProductSpecialDesignationComponent(t, "MedicinalProduct", "specialDesignation", 11408 element.getSpecialDesignation().get(i), i); 11409 } 11410 11411 protected void composeMedicinalProductMedicinalProductNameComponent(Complex parent, String parentType, String name, 11412 MedicinalProduct.MedicinalProductNameComponent element, int index) { 11413 if (element == null) 11414 return; 11415 Complex t; 11416 if (Utilities.noString(parentType)) 11417 t = parent; 11418 else { 11419 t = parent.predicate("fhir:" + parentType + '.' + name); 11420 } 11421 composeBackboneElement(t, "name", name, element, index); 11422 if (element.hasProductNameElement()) 11423 composeString(t, "MedicinalProduct", "productName", element.getProductNameElement(), -1); 11424 for (int i = 0; i < element.getNamePart().size(); i++) 11425 composeMedicinalProductMedicinalProductNameNamePartComponent(t, "MedicinalProduct", "namePart", 11426 element.getNamePart().get(i), i); 11427 for (int i = 0; i < element.getCountryLanguage().size(); i++) 11428 composeMedicinalProductMedicinalProductNameCountryLanguageComponent(t, "MedicinalProduct", "countryLanguage", 11429 element.getCountryLanguage().get(i), i); 11430 } 11431 11432 protected void composeMedicinalProductMedicinalProductNameNamePartComponent(Complex parent, String parentType, 11433 String name, MedicinalProduct.MedicinalProductNameNamePartComponent element, int index) { 11434 if (element == null) 11435 return; 11436 Complex t; 11437 if (Utilities.noString(parentType)) 11438 t = parent; 11439 else { 11440 t = parent.predicate("fhir:" + parentType + '.' + name); 11441 } 11442 composeBackboneElement(t, "namePart", name, element, index); 11443 if (element.hasPartElement()) 11444 composeString(t, "MedicinalProduct", "part", element.getPartElement(), -1); 11445 if (element.hasType()) 11446 composeCoding(t, "MedicinalProduct", "type", element.getType(), -1); 11447 } 11448 11449 protected void composeMedicinalProductMedicinalProductNameCountryLanguageComponent(Complex parent, String parentType, 11450 String name, MedicinalProduct.MedicinalProductNameCountryLanguageComponent element, int index) { 11451 if (element == null) 11452 return; 11453 Complex t; 11454 if (Utilities.noString(parentType)) 11455 t = parent; 11456 else { 11457 t = parent.predicate("fhir:" + parentType + '.' + name); 11458 } 11459 composeBackboneElement(t, "countryLanguage", name, element, index); 11460 if (element.hasCountry()) 11461 composeCodeableConcept(t, "MedicinalProduct", "country", element.getCountry(), -1); 11462 if (element.hasJurisdiction()) 11463 composeCodeableConcept(t, "MedicinalProduct", "jurisdiction", element.getJurisdiction(), -1); 11464 if (element.hasLanguage()) 11465 composeCodeableConcept(t, "MedicinalProduct", "language", element.getLanguage(), -1); 11466 } 11467 11468 protected void composeMedicinalProductMedicinalProductManufacturingBusinessOperationComponent(Complex parent, 11469 String parentType, String name, MedicinalProduct.MedicinalProductManufacturingBusinessOperationComponent element, 11470 int index) { 11471 if (element == null) 11472 return; 11473 Complex t; 11474 if (Utilities.noString(parentType)) 11475 t = parent; 11476 else { 11477 t = parent.predicate("fhir:" + parentType + '.' + name); 11478 } 11479 composeBackboneElement(t, "manufacturingBusinessOperation", name, element, index); 11480 if (element.hasOperationType()) 11481 composeCodeableConcept(t, "MedicinalProduct", "operationType", element.getOperationType(), -1); 11482 if (element.hasAuthorisationReferenceNumber()) 11483 composeIdentifier(t, "MedicinalProduct", "authorisationReferenceNumber", 11484 element.getAuthorisationReferenceNumber(), -1); 11485 if (element.hasEffectiveDateElement()) 11486 composeDateTime(t, "MedicinalProduct", "effectiveDate", element.getEffectiveDateElement(), -1); 11487 if (element.hasConfidentialityIndicator()) 11488 composeCodeableConcept(t, "MedicinalProduct", "confidentialityIndicator", element.getConfidentialityIndicator(), 11489 -1); 11490 for (int i = 0; i < element.getManufacturer().size(); i++) 11491 composeReference(t, "MedicinalProduct", "manufacturer", element.getManufacturer().get(i), i); 11492 if (element.hasRegulator()) 11493 composeReference(t, "MedicinalProduct", "regulator", element.getRegulator(), -1); 11494 } 11495 11496 protected void composeMedicinalProductMedicinalProductSpecialDesignationComponent(Complex parent, String parentType, 11497 String name, MedicinalProduct.MedicinalProductSpecialDesignationComponent element, int index) { 11498 if (element == null) 11499 return; 11500 Complex t; 11501 if (Utilities.noString(parentType)) 11502 t = parent; 11503 else { 11504 t = parent.predicate("fhir:" + parentType + '.' + name); 11505 } 11506 composeBackboneElement(t, "specialDesignation", name, element, index); 11507 for (int i = 0; i < element.getIdentifier().size(); i++) 11508 composeIdentifier(t, "MedicinalProduct", "identifier", element.getIdentifier().get(i), i); 11509 if (element.hasType()) 11510 composeCodeableConcept(t, "MedicinalProduct", "type", element.getType(), -1); 11511 if (element.hasIntendedUse()) 11512 composeCodeableConcept(t, "MedicinalProduct", "intendedUse", element.getIntendedUse(), -1); 11513 if (element.hasIndication()) 11514 composeType(t, "MedicinalProduct", "indication", element.getIndication(), -1); 11515 if (element.hasStatus()) 11516 composeCodeableConcept(t, "MedicinalProduct", "status", element.getStatus(), -1); 11517 if (element.hasDateElement()) 11518 composeDateTime(t, "MedicinalProduct", "date", element.getDateElement(), -1); 11519 if (element.hasSpecies()) 11520 composeCodeableConcept(t, "MedicinalProduct", "species", element.getSpecies(), -1); 11521 } 11522 11523 protected void composeMedicinalProductAuthorization(Complex parent, String parentType, String name, 11524 MedicinalProductAuthorization element, int index) { 11525 if (element == null) 11526 return; 11527 Complex t; 11528 if (Utilities.noString(parentType)) 11529 t = parent; 11530 else { 11531 t = parent.predicate("fhir:" + parentType + '.' + name); 11532 } 11533 composeDomainResource(t, "MedicinalProductAuthorization", name, element, index); 11534 for (int i = 0; i < element.getIdentifier().size(); i++) 11535 composeIdentifier(t, "MedicinalProductAuthorization", "identifier", element.getIdentifier().get(i), i); 11536 if (element.hasSubject()) 11537 composeReference(t, "MedicinalProductAuthorization", "subject", element.getSubject(), -1); 11538 for (int i = 0; i < element.getCountry().size(); i++) 11539 composeCodeableConcept(t, "MedicinalProductAuthorization", "country", element.getCountry().get(i), i); 11540 for (int i = 0; i < element.getJurisdiction().size(); i++) 11541 composeCodeableConcept(t, "MedicinalProductAuthorization", "jurisdiction", element.getJurisdiction().get(i), i); 11542 if (element.hasStatus()) 11543 composeCodeableConcept(t, "MedicinalProductAuthorization", "status", element.getStatus(), -1); 11544 if (element.hasStatusDateElement()) 11545 composeDateTime(t, "MedicinalProductAuthorization", "statusDate", element.getStatusDateElement(), -1); 11546 if (element.hasRestoreDateElement()) 11547 composeDateTime(t, "MedicinalProductAuthorization", "restoreDate", element.getRestoreDateElement(), -1); 11548 if (element.hasValidityPeriod()) 11549 composePeriod(t, "MedicinalProductAuthorization", "validityPeriod", element.getValidityPeriod(), -1); 11550 if (element.hasDataExclusivityPeriod()) 11551 composePeriod(t, "MedicinalProductAuthorization", "dataExclusivityPeriod", element.getDataExclusivityPeriod(), 11552 -1); 11553 if (element.hasDateOfFirstAuthorizationElement()) 11554 composeDateTime(t, "MedicinalProductAuthorization", "dateOfFirstAuthorization", 11555 element.getDateOfFirstAuthorizationElement(), -1); 11556 if (element.hasInternationalBirthDateElement()) 11557 composeDateTime(t, "MedicinalProductAuthorization", "internationalBirthDate", 11558 element.getInternationalBirthDateElement(), -1); 11559 if (element.hasLegalBasis()) 11560 composeCodeableConcept(t, "MedicinalProductAuthorization", "legalBasis", element.getLegalBasis(), -1); 11561 for (int i = 0; i < element.getJurisdictionalAuthorization().size(); i++) 11562 composeMedicinalProductAuthorizationMedicinalProductAuthorizationJurisdictionalAuthorizationComponent(t, 11563 "MedicinalProductAuthorization", "jurisdictionalAuthorization", 11564 element.getJurisdictionalAuthorization().get(i), i); 11565 if (element.hasHolder()) 11566 composeReference(t, "MedicinalProductAuthorization", "holder", element.getHolder(), -1); 11567 if (element.hasRegulator()) 11568 composeReference(t, "MedicinalProductAuthorization", "regulator", element.getRegulator(), -1); 11569 if (element.hasProcedure()) 11570 composeMedicinalProductAuthorizationMedicinalProductAuthorizationProcedureComponent(t, 11571 "MedicinalProductAuthorization", "procedure", element.getProcedure(), -1); 11572 } 11573 11574 protected void composeMedicinalProductAuthorizationMedicinalProductAuthorizationJurisdictionalAuthorizationComponent( 11575 Complex parent, String parentType, String name, 11576 MedicinalProductAuthorization.MedicinalProductAuthorizationJurisdictionalAuthorizationComponent element, 11577 int index) { 11578 if (element == null) 11579 return; 11580 Complex t; 11581 if (Utilities.noString(parentType)) 11582 t = parent; 11583 else { 11584 t = parent.predicate("fhir:" + parentType + '.' + name); 11585 } 11586 composeBackboneElement(t, "jurisdictionalAuthorization", name, element, index); 11587 for (int i = 0; i < element.getIdentifier().size(); i++) 11588 composeIdentifier(t, "MedicinalProductAuthorization", "identifier", element.getIdentifier().get(i), i); 11589 if (element.hasCountry()) 11590 composeCodeableConcept(t, "MedicinalProductAuthorization", "country", element.getCountry(), -1); 11591 for (int i = 0; i < element.getJurisdiction().size(); i++) 11592 composeCodeableConcept(t, "MedicinalProductAuthorization", "jurisdiction", element.getJurisdiction().get(i), i); 11593 if (element.hasLegalStatusOfSupply()) 11594 composeCodeableConcept(t, "MedicinalProductAuthorization", "legalStatusOfSupply", 11595 element.getLegalStatusOfSupply(), -1); 11596 if (element.hasValidityPeriod()) 11597 composePeriod(t, "MedicinalProductAuthorization", "validityPeriod", element.getValidityPeriod(), -1); 11598 } 11599 11600 protected void composeMedicinalProductAuthorizationMedicinalProductAuthorizationProcedureComponent(Complex parent, 11601 String parentType, String name, 11602 MedicinalProductAuthorization.MedicinalProductAuthorizationProcedureComponent element, int index) { 11603 if (element == null) 11604 return; 11605 Complex t; 11606 if (Utilities.noString(parentType)) 11607 t = parent; 11608 else { 11609 t = parent.predicate("fhir:" + parentType + '.' + name); 11610 } 11611 composeBackboneElement(t, "procedure", name, element, index); 11612 if (element.hasIdentifier()) 11613 composeIdentifier(t, "MedicinalProductAuthorization", "identifier", element.getIdentifier(), -1); 11614 if (element.hasType()) 11615 composeCodeableConcept(t, "MedicinalProductAuthorization", "type", element.getType(), -1); 11616 if (element.hasDate()) 11617 composeType(t, "MedicinalProductAuthorization", "date", element.getDate(), -1); 11618 for (int i = 0; i < element.getApplication().size(); i++) 11619 composeMedicinalProductAuthorizationMedicinalProductAuthorizationProcedureComponent(t, 11620 "MedicinalProductAuthorization", "application", element.getApplication().get(i), i); 11621 } 11622 11623 protected void composeMedicinalProductContraindication(Complex parent, String parentType, String name, 11624 MedicinalProductContraindication element, int index) { 11625 if (element == null) 11626 return; 11627 Complex t; 11628 if (Utilities.noString(parentType)) 11629 t = parent; 11630 else { 11631 t = parent.predicate("fhir:" + parentType + '.' + name); 11632 } 11633 composeDomainResource(t, "MedicinalProductContraindication", name, element, index); 11634 for (int i = 0; i < element.getSubject().size(); i++) 11635 composeReference(t, "MedicinalProductContraindication", "subject", element.getSubject().get(i), i); 11636 if (element.hasDisease()) 11637 composeCodeableConcept(t, "MedicinalProductContraindication", "disease", element.getDisease(), -1); 11638 if (element.hasDiseaseStatus()) 11639 composeCodeableConcept(t, "MedicinalProductContraindication", "diseaseStatus", element.getDiseaseStatus(), -1); 11640 for (int i = 0; i < element.getComorbidity().size(); i++) 11641 composeCodeableConcept(t, "MedicinalProductContraindication", "comorbidity", element.getComorbidity().get(i), i); 11642 for (int i = 0; i < element.getTherapeuticIndication().size(); i++) 11643 composeReference(t, "MedicinalProductContraindication", "therapeuticIndication", 11644 element.getTherapeuticIndication().get(i), i); 11645 for (int i = 0; i < element.getOtherTherapy().size(); i++) 11646 composeMedicinalProductContraindicationMedicinalProductContraindicationOtherTherapyComponent(t, 11647 "MedicinalProductContraindication", "otherTherapy", element.getOtherTherapy().get(i), i); 11648 for (int i = 0; i < element.getPopulation().size(); i++) 11649 composePopulation(t, "MedicinalProductContraindication", "population", element.getPopulation().get(i), i); 11650 } 11651 11652 protected void composeMedicinalProductContraindicationMedicinalProductContraindicationOtherTherapyComponent( 11653 Complex parent, String parentType, String name, 11654 MedicinalProductContraindication.MedicinalProductContraindicationOtherTherapyComponent element, int index) { 11655 if (element == null) 11656 return; 11657 Complex t; 11658 if (Utilities.noString(parentType)) 11659 t = parent; 11660 else { 11661 t = parent.predicate("fhir:" + parentType + '.' + name); 11662 } 11663 composeBackboneElement(t, "otherTherapy", name, element, index); 11664 if (element.hasTherapyRelationshipType()) 11665 composeCodeableConcept(t, "MedicinalProductContraindication", "therapyRelationshipType", 11666 element.getTherapyRelationshipType(), -1); 11667 if (element.hasMedication()) 11668 composeType(t, "MedicinalProductContraindication", "medication", element.getMedication(), -1); 11669 } 11670 11671 protected void composeMedicinalProductIndication(Complex parent, String parentType, String name, 11672 MedicinalProductIndication element, int index) { 11673 if (element == null) 11674 return; 11675 Complex t; 11676 if (Utilities.noString(parentType)) 11677 t = parent; 11678 else { 11679 t = parent.predicate("fhir:" + parentType + '.' + name); 11680 } 11681 composeDomainResource(t, "MedicinalProductIndication", name, element, index); 11682 for (int i = 0; i < element.getSubject().size(); i++) 11683 composeReference(t, "MedicinalProductIndication", "subject", element.getSubject().get(i), i); 11684 if (element.hasDiseaseSymptomProcedure()) 11685 composeCodeableConcept(t, "MedicinalProductIndication", "diseaseSymptomProcedure", 11686 element.getDiseaseSymptomProcedure(), -1); 11687 if (element.hasDiseaseStatus()) 11688 composeCodeableConcept(t, "MedicinalProductIndication", "diseaseStatus", element.getDiseaseStatus(), -1); 11689 for (int i = 0; i < element.getComorbidity().size(); i++) 11690 composeCodeableConcept(t, "MedicinalProductIndication", "comorbidity", element.getComorbidity().get(i), i); 11691 if (element.hasIntendedEffect()) 11692 composeCodeableConcept(t, "MedicinalProductIndication", "intendedEffect", element.getIntendedEffect(), -1); 11693 if (element.hasDuration()) 11694 composeQuantity(t, "MedicinalProductIndication", "duration", element.getDuration(), -1); 11695 for (int i = 0; i < element.getOtherTherapy().size(); i++) 11696 composeMedicinalProductIndicationMedicinalProductIndicationOtherTherapyComponent(t, "MedicinalProductIndication", 11697 "otherTherapy", element.getOtherTherapy().get(i), i); 11698 for (int i = 0; i < element.getUndesirableEffect().size(); i++) 11699 composeReference(t, "MedicinalProductIndication", "undesirableEffect", element.getUndesirableEffect().get(i), i); 11700 for (int i = 0; i < element.getPopulation().size(); i++) 11701 composePopulation(t, "MedicinalProductIndication", "population", element.getPopulation().get(i), i); 11702 } 11703 11704 protected void composeMedicinalProductIndicationMedicinalProductIndicationOtherTherapyComponent(Complex parent, 11705 String parentType, String name, 11706 MedicinalProductIndication.MedicinalProductIndicationOtherTherapyComponent element, int index) { 11707 if (element == null) 11708 return; 11709 Complex t; 11710 if (Utilities.noString(parentType)) 11711 t = parent; 11712 else { 11713 t = parent.predicate("fhir:" + parentType + '.' + name); 11714 } 11715 composeBackboneElement(t, "otherTherapy", name, element, index); 11716 if (element.hasTherapyRelationshipType()) 11717 composeCodeableConcept(t, "MedicinalProductIndication", "therapyRelationshipType", 11718 element.getTherapyRelationshipType(), -1); 11719 if (element.hasMedication()) 11720 composeType(t, "MedicinalProductIndication", "medication", element.getMedication(), -1); 11721 } 11722 11723 protected void composeMedicinalProductIngredient(Complex parent, String parentType, String name, 11724 MedicinalProductIngredient element, int index) { 11725 if (element == null) 11726 return; 11727 Complex t; 11728 if (Utilities.noString(parentType)) 11729 t = parent; 11730 else { 11731 t = parent.predicate("fhir:" + parentType + '.' + name); 11732 } 11733 composeDomainResource(t, "MedicinalProductIngredient", name, element, index); 11734 if (element.hasIdentifier()) 11735 composeIdentifier(t, "MedicinalProductIngredient", "identifier", element.getIdentifier(), -1); 11736 if (element.hasRole()) 11737 composeCodeableConcept(t, "MedicinalProductIngredient", "role", element.getRole(), -1); 11738 if (element.hasAllergenicIndicatorElement()) 11739 composeBoolean(t, "MedicinalProductIngredient", "allergenicIndicator", element.getAllergenicIndicatorElement(), 11740 -1); 11741 for (int i = 0; i < element.getManufacturer().size(); i++) 11742 composeReference(t, "MedicinalProductIngredient", "manufacturer", element.getManufacturer().get(i), i); 11743 for (int i = 0; i < element.getSpecifiedSubstance().size(); i++) 11744 composeMedicinalProductIngredientMedicinalProductIngredientSpecifiedSubstanceComponent(t, 11745 "MedicinalProductIngredient", "specifiedSubstance", element.getSpecifiedSubstance().get(i), i); 11746 if (element.hasSubstance()) 11747 composeMedicinalProductIngredientMedicinalProductIngredientSubstanceComponent(t, "MedicinalProductIngredient", 11748 "substance", element.getSubstance(), -1); 11749 } 11750 11751 protected void composeMedicinalProductIngredientMedicinalProductIngredientSpecifiedSubstanceComponent(Complex parent, 11752 String parentType, String name, 11753 MedicinalProductIngredient.MedicinalProductIngredientSpecifiedSubstanceComponent element, int index) { 11754 if (element == null) 11755 return; 11756 Complex t; 11757 if (Utilities.noString(parentType)) 11758 t = parent; 11759 else { 11760 t = parent.predicate("fhir:" + parentType + '.' + name); 11761 } 11762 composeBackboneElement(t, "specifiedSubstance", name, element, index); 11763 if (element.hasCode()) 11764 composeCodeableConcept(t, "MedicinalProductIngredient", "code", element.getCode(), -1); 11765 if (element.hasGroup()) 11766 composeCodeableConcept(t, "MedicinalProductIngredient", "group", element.getGroup(), -1); 11767 if (element.hasConfidentiality()) 11768 composeCodeableConcept(t, "MedicinalProductIngredient", "confidentiality", element.getConfidentiality(), -1); 11769 for (int i = 0; i < element.getStrength().size(); i++) 11770 composeMedicinalProductIngredientMedicinalProductIngredientSpecifiedSubstanceStrengthComponent(t, 11771 "MedicinalProductIngredient", "strength", element.getStrength().get(i), i); 11772 } 11773 11774 protected void composeMedicinalProductIngredientMedicinalProductIngredientSpecifiedSubstanceStrengthComponent( 11775 Complex parent, String parentType, String name, 11776 MedicinalProductIngredient.MedicinalProductIngredientSpecifiedSubstanceStrengthComponent element, int index) { 11777 if (element == null) 11778 return; 11779 Complex t; 11780 if (Utilities.noString(parentType)) 11781 t = parent; 11782 else { 11783 t = parent.predicate("fhir:" + parentType + '.' + name); 11784 } 11785 composeBackboneElement(t, "strength", name, element, index); 11786 if (element.hasPresentation()) 11787 composeRatio(t, "MedicinalProductIngredient", "presentation", element.getPresentation(), -1); 11788 if (element.hasPresentationLowLimit()) 11789 composeRatio(t, "MedicinalProductIngredient", "presentationLowLimit", element.getPresentationLowLimit(), -1); 11790 if (element.hasConcentration()) 11791 composeRatio(t, "MedicinalProductIngredient", "concentration", element.getConcentration(), -1); 11792 if (element.hasConcentrationLowLimit()) 11793 composeRatio(t, "MedicinalProductIngredient", "concentrationLowLimit", element.getConcentrationLowLimit(), -1); 11794 if (element.hasMeasurementPointElement()) 11795 composeString(t, "MedicinalProductIngredient", "measurementPoint", element.getMeasurementPointElement(), -1); 11796 for (int i = 0; i < element.getCountry().size(); i++) 11797 composeCodeableConcept(t, "MedicinalProductIngredient", "country", element.getCountry().get(i), i); 11798 for (int i = 0; i < element.getReferenceStrength().size(); i++) 11799 composeMedicinalProductIngredientMedicinalProductIngredientSpecifiedSubstanceStrengthReferenceStrengthComponent(t, 11800 "MedicinalProductIngredient", "referenceStrength", element.getReferenceStrength().get(i), i); 11801 } 11802 11803 protected void composeMedicinalProductIngredientMedicinalProductIngredientSpecifiedSubstanceStrengthReferenceStrengthComponent( 11804 Complex parent, String parentType, String name, 11805 MedicinalProductIngredient.MedicinalProductIngredientSpecifiedSubstanceStrengthReferenceStrengthComponent element, 11806 int index) { 11807 if (element == null) 11808 return; 11809 Complex t; 11810 if (Utilities.noString(parentType)) 11811 t = parent; 11812 else { 11813 t = parent.predicate("fhir:" + parentType + '.' + name); 11814 } 11815 composeBackboneElement(t, "referenceStrength", name, element, index); 11816 if (element.hasSubstance()) 11817 composeCodeableConcept(t, "MedicinalProductIngredient", "substance", element.getSubstance(), -1); 11818 if (element.hasStrength()) 11819 composeRatio(t, "MedicinalProductIngredient", "strength", element.getStrength(), -1); 11820 if (element.hasStrengthLowLimit()) 11821 composeRatio(t, "MedicinalProductIngredient", "strengthLowLimit", element.getStrengthLowLimit(), -1); 11822 if (element.hasMeasurementPointElement()) 11823 composeString(t, "MedicinalProductIngredient", "measurementPoint", element.getMeasurementPointElement(), -1); 11824 for (int i = 0; i < element.getCountry().size(); i++) 11825 composeCodeableConcept(t, "MedicinalProductIngredient", "country", element.getCountry().get(i), i); 11826 } 11827 11828 protected void composeMedicinalProductIngredientMedicinalProductIngredientSubstanceComponent(Complex parent, 11829 String parentType, String name, MedicinalProductIngredient.MedicinalProductIngredientSubstanceComponent element, 11830 int index) { 11831 if (element == null) 11832 return; 11833 Complex t; 11834 if (Utilities.noString(parentType)) 11835 t = parent; 11836 else { 11837 t = parent.predicate("fhir:" + parentType + '.' + name); 11838 } 11839 composeBackboneElement(t, "substance", name, element, index); 11840 if (element.hasCode()) 11841 composeCodeableConcept(t, "MedicinalProductIngredient", "code", element.getCode(), -1); 11842 for (int i = 0; i < element.getStrength().size(); i++) 11843 composeMedicinalProductIngredientMedicinalProductIngredientSpecifiedSubstanceStrengthComponent(t, 11844 "MedicinalProductIngredient", "strength", element.getStrength().get(i), i); 11845 } 11846 11847 protected void composeMedicinalProductInteraction(Complex parent, String parentType, String name, 11848 MedicinalProductInteraction element, int index) { 11849 if (element == null) 11850 return; 11851 Complex t; 11852 if (Utilities.noString(parentType)) 11853 t = parent; 11854 else { 11855 t = parent.predicate("fhir:" + parentType + '.' + name); 11856 } 11857 composeDomainResource(t, "MedicinalProductInteraction", name, element, index); 11858 for (int i = 0; i < element.getSubject().size(); i++) 11859 composeReference(t, "MedicinalProductInteraction", "subject", element.getSubject().get(i), i); 11860 if (element.hasDescriptionElement()) 11861 composeString(t, "MedicinalProductInteraction", "description", element.getDescriptionElement(), -1); 11862 for (int i = 0; i < element.getInteractant().size(); i++) 11863 composeMedicinalProductInteractionMedicinalProductInteractionInteractantComponent(t, 11864 "MedicinalProductInteraction", "interactant", element.getInteractant().get(i), i); 11865 if (element.hasType()) 11866 composeCodeableConcept(t, "MedicinalProductInteraction", "type", element.getType(), -1); 11867 if (element.hasEffect()) 11868 composeCodeableConcept(t, "MedicinalProductInteraction", "effect", element.getEffect(), -1); 11869 if (element.hasIncidence()) 11870 composeCodeableConcept(t, "MedicinalProductInteraction", "incidence", element.getIncidence(), -1); 11871 if (element.hasManagement()) 11872 composeCodeableConcept(t, "MedicinalProductInteraction", "management", element.getManagement(), -1); 11873 } 11874 11875 protected void composeMedicinalProductInteractionMedicinalProductInteractionInteractantComponent(Complex parent, 11876 String parentType, String name, 11877 MedicinalProductInteraction.MedicinalProductInteractionInteractantComponent element, int index) { 11878 if (element == null) 11879 return; 11880 Complex t; 11881 if (Utilities.noString(parentType)) 11882 t = parent; 11883 else { 11884 t = parent.predicate("fhir:" + parentType + '.' + name); 11885 } 11886 composeBackboneElement(t, "interactant", name, element, index); 11887 if (element.hasItem()) 11888 composeType(t, "MedicinalProductInteraction", "item", element.getItem(), -1); 11889 } 11890 11891 protected void composeMedicinalProductManufactured(Complex parent, String parentType, String name, 11892 MedicinalProductManufactured element, int index) { 11893 if (element == null) 11894 return; 11895 Complex t; 11896 if (Utilities.noString(parentType)) 11897 t = parent; 11898 else { 11899 t = parent.predicate("fhir:" + parentType + '.' + name); 11900 } 11901 composeDomainResource(t, "MedicinalProductManufactured", name, element, index); 11902 if (element.hasManufacturedDoseForm()) 11903 composeCodeableConcept(t, "MedicinalProductManufactured", "manufacturedDoseForm", 11904 element.getManufacturedDoseForm(), -1); 11905 if (element.hasUnitOfPresentation()) 11906 composeCodeableConcept(t, "MedicinalProductManufactured", "unitOfPresentation", element.getUnitOfPresentation(), 11907 -1); 11908 if (element.hasQuantity()) 11909 composeQuantity(t, "MedicinalProductManufactured", "quantity", element.getQuantity(), -1); 11910 for (int i = 0; i < element.getManufacturer().size(); i++) 11911 composeReference(t, "MedicinalProductManufactured", "manufacturer", element.getManufacturer().get(i), i); 11912 for (int i = 0; i < element.getIngredient().size(); i++) 11913 composeReference(t, "MedicinalProductManufactured", "ingredient", element.getIngredient().get(i), i); 11914 if (element.hasPhysicalCharacteristics()) 11915 composeProdCharacteristic(t, "MedicinalProductManufactured", "physicalCharacteristics", 11916 element.getPhysicalCharacteristics(), -1); 11917 for (int i = 0; i < element.getOtherCharacteristics().size(); i++) 11918 composeCodeableConcept(t, "MedicinalProductManufactured", "otherCharacteristics", 11919 element.getOtherCharacteristics().get(i), i); 11920 } 11921 11922 protected void composeMedicinalProductPackaged(Complex parent, String parentType, String name, 11923 MedicinalProductPackaged element, int index) { 11924 if (element == null) 11925 return; 11926 Complex t; 11927 if (Utilities.noString(parentType)) 11928 t = parent; 11929 else { 11930 t = parent.predicate("fhir:" + parentType + '.' + name); 11931 } 11932 composeDomainResource(t, "MedicinalProductPackaged", name, element, index); 11933 for (int i = 0; i < element.getIdentifier().size(); i++) 11934 composeIdentifier(t, "MedicinalProductPackaged", "identifier", element.getIdentifier().get(i), i); 11935 for (int i = 0; i < element.getSubject().size(); i++) 11936 composeReference(t, "MedicinalProductPackaged", "subject", element.getSubject().get(i), i); 11937 if (element.hasDescriptionElement()) 11938 composeString(t, "MedicinalProductPackaged", "description", element.getDescriptionElement(), -1); 11939 if (element.hasLegalStatusOfSupply()) 11940 composeCodeableConcept(t, "MedicinalProductPackaged", "legalStatusOfSupply", element.getLegalStatusOfSupply(), 11941 -1); 11942 for (int i = 0; i < element.getMarketingStatus().size(); i++) 11943 composeMarketingStatus(t, "MedicinalProductPackaged", "marketingStatus", element.getMarketingStatus().get(i), i); 11944 if (element.hasMarketingAuthorization()) 11945 composeReference(t, "MedicinalProductPackaged", "marketingAuthorization", element.getMarketingAuthorization(), 11946 -1); 11947 for (int i = 0; i < element.getManufacturer().size(); i++) 11948 composeReference(t, "MedicinalProductPackaged", "manufacturer", element.getManufacturer().get(i), i); 11949 for (int i = 0; i < element.getBatchIdentifier().size(); i++) 11950 composeMedicinalProductPackagedMedicinalProductPackagedBatchIdentifierComponent(t, "MedicinalProductPackaged", 11951 "batchIdentifier", element.getBatchIdentifier().get(i), i); 11952 for (int i = 0; i < element.getPackageItem().size(); i++) 11953 composeMedicinalProductPackagedMedicinalProductPackagedPackageItemComponent(t, "MedicinalProductPackaged", 11954 "packageItem", element.getPackageItem().get(i), i); 11955 } 11956 11957 protected void composeMedicinalProductPackagedMedicinalProductPackagedBatchIdentifierComponent(Complex parent, 11958 String parentType, String name, MedicinalProductPackaged.MedicinalProductPackagedBatchIdentifierComponent element, 11959 int index) { 11960 if (element == null) 11961 return; 11962 Complex t; 11963 if (Utilities.noString(parentType)) 11964 t = parent; 11965 else { 11966 t = parent.predicate("fhir:" + parentType + '.' + name); 11967 } 11968 composeBackboneElement(t, "batchIdentifier", name, element, index); 11969 if (element.hasOuterPackaging()) 11970 composeIdentifier(t, "MedicinalProductPackaged", "outerPackaging", element.getOuterPackaging(), -1); 11971 if (element.hasImmediatePackaging()) 11972 composeIdentifier(t, "MedicinalProductPackaged", "immediatePackaging", element.getImmediatePackaging(), -1); 11973 } 11974 11975 protected void composeMedicinalProductPackagedMedicinalProductPackagedPackageItemComponent(Complex parent, 11976 String parentType, String name, MedicinalProductPackaged.MedicinalProductPackagedPackageItemComponent element, 11977 int index) { 11978 if (element == null) 11979 return; 11980 Complex t; 11981 if (Utilities.noString(parentType)) 11982 t = parent; 11983 else { 11984 t = parent.predicate("fhir:" + parentType + '.' + name); 11985 } 11986 composeBackboneElement(t, "packageItem", name, element, index); 11987 for (int i = 0; i < element.getIdentifier().size(); i++) 11988 composeIdentifier(t, "MedicinalProductPackaged", "identifier", element.getIdentifier().get(i), i); 11989 if (element.hasType()) 11990 composeCodeableConcept(t, "MedicinalProductPackaged", "type", element.getType(), -1); 11991 if (element.hasQuantity()) 11992 composeQuantity(t, "MedicinalProductPackaged", "quantity", element.getQuantity(), -1); 11993 for (int i = 0; i < element.getMaterial().size(); i++) 11994 composeCodeableConcept(t, "MedicinalProductPackaged", "material", element.getMaterial().get(i), i); 11995 for (int i = 0; i < element.getAlternateMaterial().size(); i++) 11996 composeCodeableConcept(t, "MedicinalProductPackaged", "alternateMaterial", element.getAlternateMaterial().get(i), 11997 i); 11998 for (int i = 0; i < element.getDevice().size(); i++) 11999 composeReference(t, "MedicinalProductPackaged", "device", element.getDevice().get(i), i); 12000 for (int i = 0; i < element.getManufacturedItem().size(); i++) 12001 composeReference(t, "MedicinalProductPackaged", "manufacturedItem", element.getManufacturedItem().get(i), i); 12002 for (int i = 0; i < element.getPackageItem().size(); i++) 12003 composeMedicinalProductPackagedMedicinalProductPackagedPackageItemComponent(t, "MedicinalProductPackaged", 12004 "packageItem", element.getPackageItem().get(i), i); 12005 if (element.hasPhysicalCharacteristics()) 12006 composeProdCharacteristic(t, "MedicinalProductPackaged", "physicalCharacteristics", 12007 element.getPhysicalCharacteristics(), -1); 12008 for (int i = 0; i < element.getOtherCharacteristics().size(); i++) 12009 composeCodeableConcept(t, "MedicinalProductPackaged", "otherCharacteristics", 12010 element.getOtherCharacteristics().get(i), i); 12011 for (int i = 0; i < element.getShelfLifeStorage().size(); i++) 12012 composeProductShelfLife(t, "MedicinalProductPackaged", "shelfLifeStorage", element.getShelfLifeStorage().get(i), 12013 i); 12014 for (int i = 0; i < element.getManufacturer().size(); i++) 12015 composeReference(t, "MedicinalProductPackaged", "manufacturer", element.getManufacturer().get(i), i); 12016 } 12017 12018 protected void composeMedicinalProductPharmaceutical(Complex parent, String parentType, String name, 12019 MedicinalProductPharmaceutical element, int index) { 12020 if (element == null) 12021 return; 12022 Complex t; 12023 if (Utilities.noString(parentType)) 12024 t = parent; 12025 else { 12026 t = parent.predicate("fhir:" + parentType + '.' + name); 12027 } 12028 composeDomainResource(t, "MedicinalProductPharmaceutical", name, element, index); 12029 for (int i = 0; i < element.getIdentifier().size(); i++) 12030 composeIdentifier(t, "MedicinalProductPharmaceutical", "identifier", element.getIdentifier().get(i), i); 12031 if (element.hasAdministrableDoseForm()) 12032 composeCodeableConcept(t, "MedicinalProductPharmaceutical", "administrableDoseForm", 12033 element.getAdministrableDoseForm(), -1); 12034 if (element.hasUnitOfPresentation()) 12035 composeCodeableConcept(t, "MedicinalProductPharmaceutical", "unitOfPresentation", element.getUnitOfPresentation(), 12036 -1); 12037 for (int i = 0; i < element.getIngredient().size(); i++) 12038 composeReference(t, "MedicinalProductPharmaceutical", "ingredient", element.getIngredient().get(i), i); 12039 for (int i = 0; i < element.getDevice().size(); i++) 12040 composeReference(t, "MedicinalProductPharmaceutical", "device", element.getDevice().get(i), i); 12041 for (int i = 0; i < element.getCharacteristics().size(); i++) 12042 composeMedicinalProductPharmaceuticalMedicinalProductPharmaceuticalCharacteristicsComponent(t, 12043 "MedicinalProductPharmaceutical", "characteristics", element.getCharacteristics().get(i), i); 12044 for (int i = 0; i < element.getRouteOfAdministration().size(); i++) 12045 composeMedicinalProductPharmaceuticalMedicinalProductPharmaceuticalRouteOfAdministrationComponent(t, 12046 "MedicinalProductPharmaceutical", "routeOfAdministration", element.getRouteOfAdministration().get(i), i); 12047 } 12048 12049 protected void composeMedicinalProductPharmaceuticalMedicinalProductPharmaceuticalCharacteristicsComponent( 12050 Complex parent, String parentType, String name, 12051 MedicinalProductPharmaceutical.MedicinalProductPharmaceuticalCharacteristicsComponent element, int index) { 12052 if (element == null) 12053 return; 12054 Complex t; 12055 if (Utilities.noString(parentType)) 12056 t = parent; 12057 else { 12058 t = parent.predicate("fhir:" + parentType + '.' + name); 12059 } 12060 composeBackboneElement(t, "characteristics", name, element, index); 12061 if (element.hasCode()) 12062 composeCodeableConcept(t, "MedicinalProductPharmaceutical", "code", element.getCode(), -1); 12063 if (element.hasStatus()) 12064 composeCodeableConcept(t, "MedicinalProductPharmaceutical", "status", element.getStatus(), -1); 12065 } 12066 12067 protected void composeMedicinalProductPharmaceuticalMedicinalProductPharmaceuticalRouteOfAdministrationComponent( 12068 Complex parent, String parentType, String name, 12069 MedicinalProductPharmaceutical.MedicinalProductPharmaceuticalRouteOfAdministrationComponent element, int index) { 12070 if (element == null) 12071 return; 12072 Complex t; 12073 if (Utilities.noString(parentType)) 12074 t = parent; 12075 else { 12076 t = parent.predicate("fhir:" + parentType + '.' + name); 12077 } 12078 composeBackboneElement(t, "routeOfAdministration", name, element, index); 12079 if (element.hasCode()) 12080 composeCodeableConcept(t, "MedicinalProductPharmaceutical", "code", element.getCode(), -1); 12081 if (element.hasFirstDose()) 12082 composeQuantity(t, "MedicinalProductPharmaceutical", "firstDose", element.getFirstDose(), -1); 12083 if (element.hasMaxSingleDose()) 12084 composeQuantity(t, "MedicinalProductPharmaceutical", "maxSingleDose", element.getMaxSingleDose(), -1); 12085 if (element.hasMaxDosePerDay()) 12086 composeQuantity(t, "MedicinalProductPharmaceutical", "maxDosePerDay", element.getMaxDosePerDay(), -1); 12087 if (element.hasMaxDosePerTreatmentPeriod()) 12088 composeRatio(t, "MedicinalProductPharmaceutical", "maxDosePerTreatmentPeriod", 12089 element.getMaxDosePerTreatmentPeriod(), -1); 12090 if (element.hasMaxTreatmentPeriod()) 12091 composeDuration(t, "MedicinalProductPharmaceutical", "maxTreatmentPeriod", element.getMaxTreatmentPeriod(), -1); 12092 for (int i = 0; i < element.getTargetSpecies().size(); i++) 12093 composeMedicinalProductPharmaceuticalMedicinalProductPharmaceuticalRouteOfAdministrationTargetSpeciesComponent(t, 12094 "MedicinalProductPharmaceutical", "targetSpecies", element.getTargetSpecies().get(i), i); 12095 } 12096 12097 protected void composeMedicinalProductPharmaceuticalMedicinalProductPharmaceuticalRouteOfAdministrationTargetSpeciesComponent( 12098 Complex parent, String parentType, String name, 12099 MedicinalProductPharmaceutical.MedicinalProductPharmaceuticalRouteOfAdministrationTargetSpeciesComponent element, 12100 int index) { 12101 if (element == null) 12102 return; 12103 Complex t; 12104 if (Utilities.noString(parentType)) 12105 t = parent; 12106 else { 12107 t = parent.predicate("fhir:" + parentType + '.' + name); 12108 } 12109 composeBackboneElement(t, "targetSpecies", name, element, index); 12110 if (element.hasCode()) 12111 composeCodeableConcept(t, "MedicinalProductPharmaceutical", "code", element.getCode(), -1); 12112 for (int i = 0; i < element.getWithdrawalPeriod().size(); i++) 12113 composeMedicinalProductPharmaceuticalMedicinalProductPharmaceuticalRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent( 12114 t, "MedicinalProductPharmaceutical", "withdrawalPeriod", element.getWithdrawalPeriod().get(i), i); 12115 } 12116 12117 protected void composeMedicinalProductPharmaceuticalMedicinalProductPharmaceuticalRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent( 12118 Complex parent, String parentType, String name, 12119 MedicinalProductPharmaceutical.MedicinalProductPharmaceuticalRouteOfAdministrationTargetSpeciesWithdrawalPeriodComponent element, 12120 int index) { 12121 if (element == null) 12122 return; 12123 Complex t; 12124 if (Utilities.noString(parentType)) 12125 t = parent; 12126 else { 12127 t = parent.predicate("fhir:" + parentType + '.' + name); 12128 } 12129 composeBackboneElement(t, "withdrawalPeriod", name, element, index); 12130 if (element.hasTissue()) 12131 composeCodeableConcept(t, "MedicinalProductPharmaceutical", "tissue", element.getTissue(), -1); 12132 if (element.hasValue()) 12133 composeQuantity(t, "MedicinalProductPharmaceutical", "value", element.getValue(), -1); 12134 if (element.hasSupportingInformationElement()) 12135 composeString(t, "MedicinalProductPharmaceutical", "supportingInformation", 12136 element.getSupportingInformationElement(), -1); 12137 } 12138 12139 protected void composeMedicinalProductUndesirableEffect(Complex parent, String parentType, String name, 12140 MedicinalProductUndesirableEffect element, int index) { 12141 if (element == null) 12142 return; 12143 Complex t; 12144 if (Utilities.noString(parentType)) 12145 t = parent; 12146 else { 12147 t = parent.predicate("fhir:" + parentType + '.' + name); 12148 } 12149 composeDomainResource(t, "MedicinalProductUndesirableEffect", name, element, index); 12150 for (int i = 0; i < element.getSubject().size(); i++) 12151 composeReference(t, "MedicinalProductUndesirableEffect", "subject", element.getSubject().get(i), i); 12152 if (element.hasSymptomConditionEffect()) 12153 composeCodeableConcept(t, "MedicinalProductUndesirableEffect", "symptomConditionEffect", 12154 element.getSymptomConditionEffect(), -1); 12155 if (element.hasClassification()) 12156 composeCodeableConcept(t, "MedicinalProductUndesirableEffect", "classification", element.getClassification(), -1); 12157 if (element.hasFrequencyOfOccurrence()) 12158 composeCodeableConcept(t, "MedicinalProductUndesirableEffect", "frequencyOfOccurrence", 12159 element.getFrequencyOfOccurrence(), -1); 12160 for (int i = 0; i < element.getPopulation().size(); i++) 12161 composePopulation(t, "MedicinalProductUndesirableEffect", "population", element.getPopulation().get(i), i); 12162 } 12163 12164 protected void composeMessageDefinition(Complex parent, String parentType, String name, MessageDefinition element, 12165 int index) { 12166 if (element == null) 12167 return; 12168 Complex t; 12169 if (Utilities.noString(parentType)) 12170 t = parent; 12171 else { 12172 t = parent.predicate("fhir:" + parentType + '.' + name); 12173 } 12174 composeDomainResource(t, "MessageDefinition", name, element, index); 12175 if (element.hasUrlElement()) 12176 composeUri(t, "MessageDefinition", "url", element.getUrlElement(), -1); 12177 for (int i = 0; i < element.getIdentifier().size(); i++) 12178 composeIdentifier(t, "MessageDefinition", "identifier", element.getIdentifier().get(i), i); 12179 if (element.hasVersionElement()) 12180 composeString(t, "MessageDefinition", "version", element.getVersionElement(), -1); 12181 if (element.hasNameElement()) 12182 composeString(t, "MessageDefinition", "name", element.getNameElement(), -1); 12183 if (element.hasTitleElement()) 12184 composeString(t, "MessageDefinition", "title", element.getTitleElement(), -1); 12185 for (int i = 0; i < element.getReplaces().size(); i++) 12186 composeCanonical(t, "MessageDefinition", "replaces", element.getReplaces().get(i), i); 12187 if (element.hasStatusElement()) 12188 composeEnum(t, "MessageDefinition", "status", element.getStatusElement(), -1); 12189 if (element.hasExperimentalElement()) 12190 composeBoolean(t, "MessageDefinition", "experimental", element.getExperimentalElement(), -1); 12191 if (element.hasDateElement()) 12192 composeDateTime(t, "MessageDefinition", "date", element.getDateElement(), -1); 12193 if (element.hasPublisherElement()) 12194 composeString(t, "MessageDefinition", "publisher", element.getPublisherElement(), -1); 12195 for (int i = 0; i < element.getContact().size(); i++) 12196 composeContactDetail(t, "MessageDefinition", "contact", element.getContact().get(i), i); 12197 if (element.hasDescriptionElement()) 12198 composeMarkdown(t, "MessageDefinition", "description", element.getDescriptionElement(), -1); 12199 for (int i = 0; i < element.getUseContext().size(); i++) 12200 composeUsageContext(t, "MessageDefinition", "useContext", element.getUseContext().get(i), i); 12201 for (int i = 0; i < element.getJurisdiction().size(); i++) 12202 composeCodeableConcept(t, "MessageDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 12203 if (element.hasPurposeElement()) 12204 composeMarkdown(t, "MessageDefinition", "purpose", element.getPurposeElement(), -1); 12205 if (element.hasCopyrightElement()) 12206 composeMarkdown(t, "MessageDefinition", "copyright", element.getCopyrightElement(), -1); 12207 if (element.hasBaseElement()) 12208 composeCanonical(t, "MessageDefinition", "base", element.getBaseElement(), -1); 12209 for (int i = 0; i < element.getParent().size(); i++) 12210 composeCanonical(t, "MessageDefinition", "parent", element.getParent().get(i), i); 12211 if (element.hasEvent()) 12212 composeType(t, "MessageDefinition", "event", element.getEvent(), -1); 12213 if (element.hasCategoryElement()) 12214 composeEnum(t, "MessageDefinition", "category", element.getCategoryElement(), -1); 12215 for (int i = 0; i < element.getFocus().size(); i++) 12216 composeMessageDefinitionMessageDefinitionFocusComponent(t, "MessageDefinition", "focus", 12217 element.getFocus().get(i), i); 12218 if (element.hasResponseRequiredElement()) 12219 composeEnum(t, "MessageDefinition", "responseRequired", element.getResponseRequiredElement(), -1); 12220 for (int i = 0; i < element.getAllowedResponse().size(); i++) 12221 composeMessageDefinitionMessageDefinitionAllowedResponseComponent(t, "MessageDefinition", "allowedResponse", 12222 element.getAllowedResponse().get(i), i); 12223 for (int i = 0; i < element.getGraph().size(); i++) 12224 composeCanonical(t, "MessageDefinition", "graph", element.getGraph().get(i), i); 12225 } 12226 12227 protected void composeMessageDefinitionMessageDefinitionFocusComponent(Complex parent, String parentType, String name, 12228 MessageDefinition.MessageDefinitionFocusComponent element, int index) { 12229 if (element == null) 12230 return; 12231 Complex t; 12232 if (Utilities.noString(parentType)) 12233 t = parent; 12234 else { 12235 t = parent.predicate("fhir:" + parentType + '.' + name); 12236 } 12237 composeBackboneElement(t, "focus", name, element, index); 12238 if (element.hasCodeElement()) 12239 composeCode(t, "MessageDefinition", "code", element.getCodeElement(), -1); 12240 if (element.hasProfileElement()) 12241 composeCanonical(t, "MessageDefinition", "profile", element.getProfileElement(), -1); 12242 if (element.hasMinElement()) 12243 composeUnsignedInt(t, "MessageDefinition", "min", element.getMinElement(), -1); 12244 if (element.hasMaxElement()) 12245 composeString(t, "MessageDefinition", "max", element.getMaxElement(), -1); 12246 } 12247 12248 protected void composeMessageDefinitionMessageDefinitionAllowedResponseComponent(Complex parent, String parentType, 12249 String name, MessageDefinition.MessageDefinitionAllowedResponseComponent element, int index) { 12250 if (element == null) 12251 return; 12252 Complex t; 12253 if (Utilities.noString(parentType)) 12254 t = parent; 12255 else { 12256 t = parent.predicate("fhir:" + parentType + '.' + name); 12257 } 12258 composeBackboneElement(t, "allowedResponse", name, element, index); 12259 if (element.hasMessageElement()) 12260 composeCanonical(t, "MessageDefinition", "message", element.getMessageElement(), -1); 12261 if (element.hasSituationElement()) 12262 composeMarkdown(t, "MessageDefinition", "situation", element.getSituationElement(), -1); 12263 } 12264 12265 protected void composeMessageHeader(Complex parent, String parentType, String name, MessageHeader element, 12266 int index) { 12267 if (element == null) 12268 return; 12269 Complex t; 12270 if (Utilities.noString(parentType)) 12271 t = parent; 12272 else { 12273 t = parent.predicate("fhir:" + parentType + '.' + name); 12274 } 12275 composeDomainResource(t, "MessageHeader", name, element, index); 12276 if (element.hasEvent()) 12277 composeType(t, "MessageHeader", "event", element.getEvent(), -1); 12278 for (int i = 0; i < element.getDestination().size(); i++) 12279 composeMessageHeaderMessageDestinationComponent(t, "MessageHeader", "destination", 12280 element.getDestination().get(i), i); 12281 if (element.hasSender()) 12282 composeReference(t, "MessageHeader", "sender", element.getSender(), -1); 12283 if (element.hasEnterer()) 12284 composeReference(t, "MessageHeader", "enterer", element.getEnterer(), -1); 12285 if (element.hasAuthor()) 12286 composeReference(t, "MessageHeader", "author", element.getAuthor(), -1); 12287 if (element.hasSource()) 12288 composeMessageHeaderMessageSourceComponent(t, "MessageHeader", "source", element.getSource(), -1); 12289 if (element.hasResponsible()) 12290 composeReference(t, "MessageHeader", "responsible", element.getResponsible(), -1); 12291 if (element.hasReason()) 12292 composeCodeableConcept(t, "MessageHeader", "reason", element.getReason(), -1); 12293 if (element.hasResponse()) 12294 composeMessageHeaderMessageHeaderResponseComponent(t, "MessageHeader", "response", element.getResponse(), -1); 12295 for (int i = 0; i < element.getFocus().size(); i++) 12296 composeReference(t, "MessageHeader", "focus", element.getFocus().get(i), i); 12297 if (element.hasDefinitionElement()) 12298 composeCanonical(t, "MessageHeader", "definition", element.getDefinitionElement(), -1); 12299 } 12300 12301 protected void composeMessageHeaderMessageDestinationComponent(Complex parent, String parentType, String name, 12302 MessageHeader.MessageDestinationComponent element, int index) { 12303 if (element == null) 12304 return; 12305 Complex t; 12306 if (Utilities.noString(parentType)) 12307 t = parent; 12308 else { 12309 t = parent.predicate("fhir:" + parentType + '.' + name); 12310 } 12311 composeBackboneElement(t, "destination", name, element, index); 12312 if (element.hasNameElement()) 12313 composeString(t, "MessageHeader", "name", element.getNameElement(), -1); 12314 if (element.hasTarget()) 12315 composeReference(t, "MessageHeader", "target", element.getTarget(), -1); 12316 if (element.hasEndpointElement()) 12317 composeUrl(t, "MessageHeader", "endpoint", element.getEndpointElement(), -1); 12318 if (element.hasReceiver()) 12319 composeReference(t, "MessageHeader", "receiver", element.getReceiver(), -1); 12320 } 12321 12322 protected void composeMessageHeaderMessageSourceComponent(Complex parent, String parentType, String name, 12323 MessageHeader.MessageSourceComponent element, int index) { 12324 if (element == null) 12325 return; 12326 Complex t; 12327 if (Utilities.noString(parentType)) 12328 t = parent; 12329 else { 12330 t = parent.predicate("fhir:" + parentType + '.' + name); 12331 } 12332 composeBackboneElement(t, "source", name, element, index); 12333 if (element.hasNameElement()) 12334 composeString(t, "MessageHeader", "name", element.getNameElement(), -1); 12335 if (element.hasSoftwareElement()) 12336 composeString(t, "MessageHeader", "software", element.getSoftwareElement(), -1); 12337 if (element.hasVersionElement()) 12338 composeString(t, "MessageHeader", "version", element.getVersionElement(), -1); 12339 if (element.hasContact()) 12340 composeContactPoint(t, "MessageHeader", "contact", element.getContact(), -1); 12341 if (element.hasEndpointElement()) 12342 composeUrl(t, "MessageHeader", "endpoint", element.getEndpointElement(), -1); 12343 } 12344 12345 protected void composeMessageHeaderMessageHeaderResponseComponent(Complex parent, String parentType, String name, 12346 MessageHeader.MessageHeaderResponseComponent element, int index) { 12347 if (element == null) 12348 return; 12349 Complex t; 12350 if (Utilities.noString(parentType)) 12351 t = parent; 12352 else { 12353 t = parent.predicate("fhir:" + parentType + '.' + name); 12354 } 12355 composeBackboneElement(t, "response", name, element, index); 12356 if (element.hasIdentifierElement()) 12357 composeId(t, "MessageHeader", "identifier", element.getIdentifierElement(), -1); 12358 if (element.hasCodeElement()) 12359 composeEnum(t, "MessageHeader", "code", element.getCodeElement(), -1); 12360 if (element.hasDetails()) 12361 composeReference(t, "MessageHeader", "details", element.getDetails(), -1); 12362 } 12363 12364 protected void composeMolecularSequence(Complex parent, String parentType, String name, MolecularSequence element, 12365 int index) { 12366 if (element == null) 12367 return; 12368 Complex t; 12369 if (Utilities.noString(parentType)) 12370 t = parent; 12371 else { 12372 t = parent.predicate("fhir:" + parentType + '.' + name); 12373 } 12374 composeDomainResource(t, "MolecularSequence", name, element, index); 12375 for (int i = 0; i < element.getIdentifier().size(); i++) 12376 composeIdentifier(t, "MolecularSequence", "identifier", element.getIdentifier().get(i), i); 12377 if (element.hasTypeElement()) 12378 composeEnum(t, "MolecularSequence", "type", element.getTypeElement(), -1); 12379 if (element.hasCoordinateSystemElement()) 12380 composeInteger(t, "MolecularSequence", "coordinateSystem", element.getCoordinateSystemElement(), -1); 12381 if (element.hasPatient()) 12382 composeReference(t, "MolecularSequence", "patient", element.getPatient(), -1); 12383 if (element.hasSpecimen()) 12384 composeReference(t, "MolecularSequence", "specimen", element.getSpecimen(), -1); 12385 if (element.hasDevice()) 12386 composeReference(t, "MolecularSequence", "device", element.getDevice(), -1); 12387 if (element.hasPerformer()) 12388 composeReference(t, "MolecularSequence", "performer", element.getPerformer(), -1); 12389 if (element.hasQuantity()) 12390 composeQuantity(t, "MolecularSequence", "quantity", element.getQuantity(), -1); 12391 if (element.hasReferenceSeq()) 12392 composeMolecularSequenceMolecularSequenceReferenceSeqComponent(t, "MolecularSequence", "referenceSeq", 12393 element.getReferenceSeq(), -1); 12394 for (int i = 0; i < element.getVariant().size(); i++) 12395 composeMolecularSequenceMolecularSequenceVariantComponent(t, "MolecularSequence", "variant", 12396 element.getVariant().get(i), i); 12397 if (element.hasObservedSeqElement()) 12398 composeString(t, "MolecularSequence", "observedSeq", element.getObservedSeqElement(), -1); 12399 for (int i = 0; i < element.getQuality().size(); i++) 12400 composeMolecularSequenceMolecularSequenceQualityComponent(t, "MolecularSequence", "quality", 12401 element.getQuality().get(i), i); 12402 if (element.hasReadCoverageElement()) 12403 composeInteger(t, "MolecularSequence", "readCoverage", element.getReadCoverageElement(), -1); 12404 for (int i = 0; i < element.getRepository().size(); i++) 12405 composeMolecularSequenceMolecularSequenceRepositoryComponent(t, "MolecularSequence", "repository", 12406 element.getRepository().get(i), i); 12407 for (int i = 0; i < element.getPointer().size(); i++) 12408 composeReference(t, "MolecularSequence", "pointer", element.getPointer().get(i), i); 12409 for (int i = 0; i < element.getStructureVariant().size(); i++) 12410 composeMolecularSequenceMolecularSequenceStructureVariantComponent(t, "MolecularSequence", "structureVariant", 12411 element.getStructureVariant().get(i), i); 12412 } 12413 12414 protected void composeMolecularSequenceMolecularSequenceReferenceSeqComponent(Complex parent, String parentType, 12415 String name, MolecularSequence.MolecularSequenceReferenceSeqComponent 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:" + parentType + '.' + name); 12423 } 12424 composeBackboneElement(t, "referenceSeq", name, element, index); 12425 if (element.hasChromosome()) 12426 composeCodeableConcept(t, "MolecularSequence", "chromosome", element.getChromosome(), -1); 12427 if (element.hasGenomeBuildElement()) 12428 composeString(t, "MolecularSequence", "genomeBuild", element.getGenomeBuildElement(), -1); 12429 if (element.hasOrientationElement()) 12430 composeEnum(t, "MolecularSequence", "orientation", element.getOrientationElement(), -1); 12431 if (element.hasReferenceSeqId()) 12432 composeCodeableConcept(t, "MolecularSequence", "referenceSeqId", element.getReferenceSeqId(), -1); 12433 if (element.hasReferenceSeqPointer()) 12434 composeReference(t, "MolecularSequence", "referenceSeqPointer", element.getReferenceSeqPointer(), -1); 12435 if (element.hasReferenceSeqStringElement()) 12436 composeString(t, "MolecularSequence", "referenceSeqString", element.getReferenceSeqStringElement(), -1); 12437 if (element.hasStrandElement()) 12438 composeEnum(t, "MolecularSequence", "strand", element.getStrandElement(), -1); 12439 if (element.hasWindowStartElement()) 12440 composeInteger(t, "MolecularSequence", "windowStart", element.getWindowStartElement(), -1); 12441 if (element.hasWindowEndElement()) 12442 composeInteger(t, "MolecularSequence", "windowEnd", element.getWindowEndElement(), -1); 12443 } 12444 12445 protected void composeMolecularSequenceMolecularSequenceVariantComponent(Complex parent, String parentType, 12446 String name, MolecularSequence.MolecularSequenceVariantComponent element, int index) { 12447 if (element == null) 12448 return; 12449 Complex t; 12450 if (Utilities.noString(parentType)) 12451 t = parent; 12452 else { 12453 t = parent.predicate("fhir:" + parentType + '.' + name); 12454 } 12455 composeBackboneElement(t, "variant", name, element, index); 12456 if (element.hasStartElement()) 12457 composeInteger(t, "MolecularSequence", "start", element.getStartElement(), -1); 12458 if (element.hasEndElement()) 12459 composeInteger(t, "MolecularSequence", "end", element.getEndElement(), -1); 12460 if (element.hasObservedAlleleElement()) 12461 composeString(t, "MolecularSequence", "observedAllele", element.getObservedAlleleElement(), -1); 12462 if (element.hasReferenceAlleleElement()) 12463 composeString(t, "MolecularSequence", "referenceAllele", element.getReferenceAlleleElement(), -1); 12464 if (element.hasCigarElement()) 12465 composeString(t, "MolecularSequence", "cigar", element.getCigarElement(), -1); 12466 if (element.hasVariantPointer()) 12467 composeReference(t, "MolecularSequence", "variantPointer", element.getVariantPointer(), -1); 12468 } 12469 12470 protected void composeMolecularSequenceMolecularSequenceQualityComponent(Complex parent, String parentType, 12471 String name, MolecularSequence.MolecularSequenceQualityComponent element, int index) { 12472 if (element == null) 12473 return; 12474 Complex t; 12475 if (Utilities.noString(parentType)) 12476 t = parent; 12477 else { 12478 t = parent.predicate("fhir:" + parentType + '.' + name); 12479 } 12480 composeBackboneElement(t, "quality", name, element, index); 12481 if (element.hasTypeElement()) 12482 composeEnum(t, "MolecularSequence", "type", element.getTypeElement(), -1); 12483 if (element.hasStandardSequence()) 12484 composeCodeableConcept(t, "MolecularSequence", "standardSequence", element.getStandardSequence(), -1); 12485 if (element.hasStartElement()) 12486 composeInteger(t, "MolecularSequence", "start", element.getStartElement(), -1); 12487 if (element.hasEndElement()) 12488 composeInteger(t, "MolecularSequence", "end", element.getEndElement(), -1); 12489 if (element.hasScore()) 12490 composeQuantity(t, "MolecularSequence", "score", element.getScore(), -1); 12491 if (element.hasMethod()) 12492 composeCodeableConcept(t, "MolecularSequence", "method", element.getMethod(), -1); 12493 if (element.hasTruthTPElement()) 12494 composeDecimal(t, "MolecularSequence", "truthTP", element.getTruthTPElement(), -1); 12495 if (element.hasQueryTPElement()) 12496 composeDecimal(t, "MolecularSequence", "queryTP", element.getQueryTPElement(), -1); 12497 if (element.hasTruthFNElement()) 12498 composeDecimal(t, "MolecularSequence", "truthFN", element.getTruthFNElement(), -1); 12499 if (element.hasQueryFPElement()) 12500 composeDecimal(t, "MolecularSequence", "queryFP", element.getQueryFPElement(), -1); 12501 if (element.hasGtFPElement()) 12502 composeDecimal(t, "MolecularSequence", "gtFP", element.getGtFPElement(), -1); 12503 if (element.hasPrecisionElement()) 12504 composeDecimal(t, "MolecularSequence", "precision", element.getPrecisionElement(), -1); 12505 if (element.hasRecallElement()) 12506 composeDecimal(t, "MolecularSequence", "recall", element.getRecallElement(), -1); 12507 if (element.hasFScoreElement()) 12508 composeDecimal(t, "MolecularSequence", "fScore", element.getFScoreElement(), -1); 12509 if (element.hasRoc()) 12510 composeMolecularSequenceMolecularSequenceQualityRocComponent(t, "MolecularSequence", "roc", element.getRoc(), -1); 12511 } 12512 12513 protected void composeMolecularSequenceMolecularSequenceQualityRocComponent(Complex parent, String parentType, 12514 String name, MolecularSequence.MolecularSequenceQualityRocComponent element, int index) { 12515 if (element == null) 12516 return; 12517 Complex t; 12518 if (Utilities.noString(parentType)) 12519 t = parent; 12520 else { 12521 t = parent.predicate("fhir:" + parentType + '.' + name); 12522 } 12523 composeBackboneElement(t, "roc", name, element, index); 12524 for (int i = 0; i < element.getScore().size(); i++) 12525 composeInteger(t, "MolecularSequence", "score", element.getScore().get(i), i); 12526 for (int i = 0; i < element.getNumTP().size(); i++) 12527 composeInteger(t, "MolecularSequence", "numTP", element.getNumTP().get(i), i); 12528 for (int i = 0; i < element.getNumFP().size(); i++) 12529 composeInteger(t, "MolecularSequence", "numFP", element.getNumFP().get(i), i); 12530 for (int i = 0; i < element.getNumFN().size(); i++) 12531 composeInteger(t, "MolecularSequence", "numFN", element.getNumFN().get(i), i); 12532 for (int i = 0; i < element.getPrecision().size(); i++) 12533 composeDecimal(t, "MolecularSequence", "precision", element.getPrecision().get(i), i); 12534 for (int i = 0; i < element.getSensitivity().size(); i++) 12535 composeDecimal(t, "MolecularSequence", "sensitivity", element.getSensitivity().get(i), i); 12536 for (int i = 0; i < element.getFMeasure().size(); i++) 12537 composeDecimal(t, "MolecularSequence", "fMeasure", element.getFMeasure().get(i), i); 12538 } 12539 12540 protected void composeMolecularSequenceMolecularSequenceRepositoryComponent(Complex parent, String parentType, 12541 String name, MolecularSequence.MolecularSequenceRepositoryComponent element, int index) { 12542 if (element == null) 12543 return; 12544 Complex t; 12545 if (Utilities.noString(parentType)) 12546 t = parent; 12547 else { 12548 t = parent.predicate("fhir:" + parentType + '.' + name); 12549 } 12550 composeBackboneElement(t, "repository", name, element, index); 12551 if (element.hasTypeElement()) 12552 composeEnum(t, "MolecularSequence", "type", element.getTypeElement(), -1); 12553 if (element.hasUrlElement()) 12554 composeUri(t, "MolecularSequence", "url", element.getUrlElement(), -1); 12555 if (element.hasNameElement()) 12556 composeString(t, "MolecularSequence", "name", element.getNameElement(), -1); 12557 if (element.hasDatasetIdElement()) 12558 composeString(t, "MolecularSequence", "datasetId", element.getDatasetIdElement(), -1); 12559 if (element.hasVariantsetIdElement()) 12560 composeString(t, "MolecularSequence", "variantsetId", element.getVariantsetIdElement(), -1); 12561 if (element.hasReadsetIdElement()) 12562 composeString(t, "MolecularSequence", "readsetId", element.getReadsetIdElement(), -1); 12563 } 12564 12565 protected void composeMolecularSequenceMolecularSequenceStructureVariantComponent(Complex parent, String parentType, 12566 String name, MolecularSequence.MolecularSequenceStructureVariantComponent element, int index) { 12567 if (element == null) 12568 return; 12569 Complex t; 12570 if (Utilities.noString(parentType)) 12571 t = parent; 12572 else { 12573 t = parent.predicate("fhir:" + parentType + '.' + name); 12574 } 12575 composeBackboneElement(t, "structureVariant", name, element, index); 12576 if (element.hasVariantType()) 12577 composeCodeableConcept(t, "MolecularSequence", "variantType", element.getVariantType(), -1); 12578 if (element.hasExactElement()) 12579 composeBoolean(t, "MolecularSequence", "exact", element.getExactElement(), -1); 12580 if (element.hasLengthElement()) 12581 composeInteger(t, "MolecularSequence", "length", element.getLengthElement(), -1); 12582 if (element.hasOuter()) 12583 composeMolecularSequenceMolecularSequenceStructureVariantOuterComponent(t, "MolecularSequence", "outer", 12584 element.getOuter(), -1); 12585 if (element.hasInner()) 12586 composeMolecularSequenceMolecularSequenceStructureVariantInnerComponent(t, "MolecularSequence", "inner", 12587 element.getInner(), -1); 12588 } 12589 12590 protected void composeMolecularSequenceMolecularSequenceStructureVariantOuterComponent(Complex parent, 12591 String parentType, String name, MolecularSequence.MolecularSequenceStructureVariantOuterComponent element, 12592 int index) { 12593 if (element == null) 12594 return; 12595 Complex t; 12596 if (Utilities.noString(parentType)) 12597 t = parent; 12598 else { 12599 t = parent.predicate("fhir:" + parentType + '.' + name); 12600 } 12601 composeBackboneElement(t, "outer", name, element, index); 12602 if (element.hasStartElement()) 12603 composeInteger(t, "MolecularSequence", "start", element.getStartElement(), -1); 12604 if (element.hasEndElement()) 12605 composeInteger(t, "MolecularSequence", "end", element.getEndElement(), -1); 12606 } 12607 12608 protected void composeMolecularSequenceMolecularSequenceStructureVariantInnerComponent(Complex parent, 12609 String parentType, String name, MolecularSequence.MolecularSequenceStructureVariantInnerComponent element, 12610 int index) { 12611 if (element == null) 12612 return; 12613 Complex t; 12614 if (Utilities.noString(parentType)) 12615 t = parent; 12616 else { 12617 t = parent.predicate("fhir:" + parentType + '.' + name); 12618 } 12619 composeBackboneElement(t, "inner", name, element, index); 12620 if (element.hasStartElement()) 12621 composeInteger(t, "MolecularSequence", "start", element.getStartElement(), -1); 12622 if (element.hasEndElement()) 12623 composeInteger(t, "MolecularSequence", "end", element.getEndElement(), -1); 12624 } 12625 12626 protected void composeNamingSystem(Complex parent, String parentType, String name, NamingSystem element, int index) { 12627 if (element == null) 12628 return; 12629 Complex t; 12630 if (Utilities.noString(parentType)) 12631 t = parent; 12632 else { 12633 t = parent.predicate("fhir:" + parentType + '.' + name); 12634 } 12635 composeDomainResource(t, "NamingSystem", name, element, index); 12636 if (element.hasNameElement()) 12637 composeString(t, "NamingSystem", "name", element.getNameElement(), -1); 12638 if (element.hasStatusElement()) 12639 composeEnum(t, "NamingSystem", "status", element.getStatusElement(), -1); 12640 if (element.hasKindElement()) 12641 composeEnum(t, "NamingSystem", "kind", element.getKindElement(), -1); 12642 if (element.hasDateElement()) 12643 composeDateTime(t, "NamingSystem", "date", element.getDateElement(), -1); 12644 if (element.hasPublisherElement()) 12645 composeString(t, "NamingSystem", "publisher", element.getPublisherElement(), -1); 12646 for (int i = 0; i < element.getContact().size(); i++) 12647 composeContactDetail(t, "NamingSystem", "contact", element.getContact().get(i), i); 12648 if (element.hasResponsibleElement()) 12649 composeString(t, "NamingSystem", "responsible", element.getResponsibleElement(), -1); 12650 if (element.hasType()) 12651 composeCodeableConcept(t, "NamingSystem", "type", element.getType(), -1); 12652 if (element.hasDescriptionElement()) 12653 composeMarkdown(t, "NamingSystem", "description", element.getDescriptionElement(), -1); 12654 for (int i = 0; i < element.getUseContext().size(); i++) 12655 composeUsageContext(t, "NamingSystem", "useContext", element.getUseContext().get(i), i); 12656 for (int i = 0; i < element.getJurisdiction().size(); i++) 12657 composeCodeableConcept(t, "NamingSystem", "jurisdiction", element.getJurisdiction().get(i), i); 12658 if (element.hasUsageElement()) 12659 composeString(t, "NamingSystem", "usage", element.getUsageElement(), -1); 12660 for (int i = 0; i < element.getUniqueId().size(); i++) 12661 composeNamingSystemNamingSystemUniqueIdComponent(t, "NamingSystem", "uniqueId", element.getUniqueId().get(i), i); 12662 } 12663 12664 protected void composeNamingSystemNamingSystemUniqueIdComponent(Complex parent, String parentType, String name, 12665 NamingSystem.NamingSystemUniqueIdComponent element, int index) { 12666 if (element == null) 12667 return; 12668 Complex t; 12669 if (Utilities.noString(parentType)) 12670 t = parent; 12671 else { 12672 t = parent.predicate("fhir:" + parentType + '.' + name); 12673 } 12674 composeBackboneElement(t, "uniqueId", name, element, index); 12675 if (element.hasTypeElement()) 12676 composeEnum(t, "NamingSystem", "type", element.getTypeElement(), -1); 12677 if (element.hasValueElement()) 12678 composeString(t, "NamingSystem", "value", element.getValueElement(), -1); 12679 if (element.hasPreferredElement()) 12680 composeBoolean(t, "NamingSystem", "preferred", element.getPreferredElement(), -1); 12681 if (element.hasCommentElement()) 12682 composeString(t, "NamingSystem", "comment", element.getCommentElement(), -1); 12683 if (element.hasPeriod()) 12684 composePeriod(t, "NamingSystem", "period", element.getPeriod(), -1); 12685 } 12686 12687 protected void composeNutritionOrder(Complex parent, String parentType, String name, NutritionOrder element, 12688 int index) { 12689 if (element == null) 12690 return; 12691 Complex t; 12692 if (Utilities.noString(parentType)) 12693 t = parent; 12694 else { 12695 t = parent.predicate("fhir:" + parentType + '.' + name); 12696 } 12697 composeDomainResource(t, "NutritionOrder", name, element, index); 12698 for (int i = 0; i < element.getIdentifier().size(); i++) 12699 composeIdentifier(t, "NutritionOrder", "identifier", element.getIdentifier().get(i), i); 12700 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 12701 composeCanonical(t, "NutritionOrder", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 12702 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 12703 composeUri(t, "NutritionOrder", "instantiatesUri", element.getInstantiatesUri().get(i), i); 12704 for (int i = 0; i < element.getInstantiates().size(); i++) 12705 composeUri(t, "NutritionOrder", "instantiates", element.getInstantiates().get(i), i); 12706 if (element.hasStatusElement()) 12707 composeEnum(t, "NutritionOrder", "status", element.getStatusElement(), -1); 12708 if (element.hasIntentElement()) 12709 composeEnum(t, "NutritionOrder", "intent", element.getIntentElement(), -1); 12710 if (element.hasPatient()) 12711 composeReference(t, "NutritionOrder", "patient", element.getPatient(), -1); 12712 if (element.hasEncounter()) 12713 composeReference(t, "NutritionOrder", "encounter", element.getEncounter(), -1); 12714 if (element.hasDateTimeElement()) 12715 composeDateTime(t, "NutritionOrder", "dateTime", element.getDateTimeElement(), -1); 12716 if (element.hasOrderer()) 12717 composeReference(t, "NutritionOrder", "orderer", element.getOrderer(), -1); 12718 for (int i = 0; i < element.getAllergyIntolerance().size(); i++) 12719 composeReference(t, "NutritionOrder", "allergyIntolerance", element.getAllergyIntolerance().get(i), i); 12720 for (int i = 0; i < element.getFoodPreferenceModifier().size(); i++) 12721 composeCodeableConcept(t, "NutritionOrder", "foodPreferenceModifier", element.getFoodPreferenceModifier().get(i), 12722 i); 12723 for (int i = 0; i < element.getExcludeFoodModifier().size(); i++) 12724 composeCodeableConcept(t, "NutritionOrder", "excludeFoodModifier", element.getExcludeFoodModifier().get(i), i); 12725 if (element.hasOralDiet()) 12726 composeNutritionOrderNutritionOrderOralDietComponent(t, "NutritionOrder", "oralDiet", element.getOralDiet(), -1); 12727 for (int i = 0; i < element.getSupplement().size(); i++) 12728 composeNutritionOrderNutritionOrderSupplementComponent(t, "NutritionOrder", "supplement", 12729 element.getSupplement().get(i), i); 12730 if (element.hasEnteralFormula()) 12731 composeNutritionOrderNutritionOrderEnteralFormulaComponent(t, "NutritionOrder", "enteralFormula", 12732 element.getEnteralFormula(), -1); 12733 for (int i = 0; i < element.getNote().size(); i++) 12734 composeAnnotation(t, "NutritionOrder", "note", element.getNote().get(i), i); 12735 } 12736 12737 protected void composeNutritionOrderNutritionOrderOralDietComponent(Complex parent, String parentType, String name, 12738 NutritionOrder.NutritionOrderOralDietComponent element, int index) { 12739 if (element == null) 12740 return; 12741 Complex t; 12742 if (Utilities.noString(parentType)) 12743 t = parent; 12744 else { 12745 t = parent.predicate("fhir:" + parentType + '.' + name); 12746 } 12747 composeBackboneElement(t, "oralDiet", name, element, index); 12748 for (int i = 0; i < element.getType().size(); i++) 12749 composeCodeableConcept(t, "NutritionOrder", "type", element.getType().get(i), i); 12750 for (int i = 0; i < element.getSchedule().size(); i++) 12751 composeTiming(t, "NutritionOrder", "schedule", element.getSchedule().get(i), i); 12752 for (int i = 0; i < element.getNutrient().size(); i++) 12753 composeNutritionOrderNutritionOrderOralDietNutrientComponent(t, "NutritionOrder", "nutrient", 12754 element.getNutrient().get(i), i); 12755 for (int i = 0; i < element.getTexture().size(); i++) 12756 composeNutritionOrderNutritionOrderOralDietTextureComponent(t, "NutritionOrder", "texture", 12757 element.getTexture().get(i), i); 12758 for (int i = 0; i < element.getFluidConsistencyType().size(); i++) 12759 composeCodeableConcept(t, "NutritionOrder", "fluidConsistencyType", element.getFluidConsistencyType().get(i), i); 12760 if (element.hasInstructionElement()) 12761 composeString(t, "NutritionOrder", "instruction", element.getInstructionElement(), -1); 12762 } 12763 12764 protected void composeNutritionOrderNutritionOrderOralDietNutrientComponent(Complex parent, String parentType, 12765 String name, NutritionOrder.NutritionOrderOralDietNutrientComponent element, int index) { 12766 if (element == null) 12767 return; 12768 Complex t; 12769 if (Utilities.noString(parentType)) 12770 t = parent; 12771 else { 12772 t = parent.predicate("fhir:" + parentType + '.' + name); 12773 } 12774 composeBackboneElement(t, "nutrient", name, element, index); 12775 if (element.hasModifier()) 12776 composeCodeableConcept(t, "NutritionOrder", "modifier", element.getModifier(), -1); 12777 if (element.hasAmount()) 12778 composeQuantity(t, "NutritionOrder", "amount", element.getAmount(), -1); 12779 } 12780 12781 protected void composeNutritionOrderNutritionOrderOralDietTextureComponent(Complex parent, String parentType, 12782 String name, NutritionOrder.NutritionOrderOralDietTextureComponent element, int index) { 12783 if (element == null) 12784 return; 12785 Complex t; 12786 if (Utilities.noString(parentType)) 12787 t = parent; 12788 else { 12789 t = parent.predicate("fhir:" + parentType + '.' + name); 12790 } 12791 composeBackboneElement(t, "texture", name, element, index); 12792 if (element.hasModifier()) 12793 composeCodeableConcept(t, "NutritionOrder", "modifier", element.getModifier(), -1); 12794 if (element.hasFoodType()) 12795 composeCodeableConcept(t, "NutritionOrder", "foodType", element.getFoodType(), -1); 12796 } 12797 12798 protected void composeNutritionOrderNutritionOrderSupplementComponent(Complex parent, String parentType, String name, 12799 NutritionOrder.NutritionOrderSupplementComponent 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:" + parentType + '.' + name); 12807 } 12808 composeBackboneElement(t, "supplement", name, element, index); 12809 if (element.hasType()) 12810 composeCodeableConcept(t, "NutritionOrder", "type", element.getType(), -1); 12811 if (element.hasProductNameElement()) 12812 composeString(t, "NutritionOrder", "productName", element.getProductNameElement(), -1); 12813 for (int i = 0; i < element.getSchedule().size(); i++) 12814 composeTiming(t, "NutritionOrder", "schedule", element.getSchedule().get(i), i); 12815 if (element.hasQuantity()) 12816 composeQuantity(t, "NutritionOrder", "quantity", element.getQuantity(), -1); 12817 if (element.hasInstructionElement()) 12818 composeString(t, "NutritionOrder", "instruction", element.getInstructionElement(), -1); 12819 } 12820 12821 protected void composeNutritionOrderNutritionOrderEnteralFormulaComponent(Complex parent, String parentType, 12822 String name, NutritionOrder.NutritionOrderEnteralFormulaComponent element, int index) { 12823 if (element == null) 12824 return; 12825 Complex t; 12826 if (Utilities.noString(parentType)) 12827 t = parent; 12828 else { 12829 t = parent.predicate("fhir:" + parentType + '.' + name); 12830 } 12831 composeBackboneElement(t, "enteralFormula", name, element, index); 12832 if (element.hasBaseFormulaType()) 12833 composeCodeableConcept(t, "NutritionOrder", "baseFormulaType", element.getBaseFormulaType(), -1); 12834 if (element.hasBaseFormulaProductNameElement()) 12835 composeString(t, "NutritionOrder", "baseFormulaProductName", element.getBaseFormulaProductNameElement(), -1); 12836 if (element.hasAdditiveType()) 12837 composeCodeableConcept(t, "NutritionOrder", "additiveType", element.getAdditiveType(), -1); 12838 if (element.hasAdditiveProductNameElement()) 12839 composeString(t, "NutritionOrder", "additiveProductName", element.getAdditiveProductNameElement(), -1); 12840 if (element.hasCaloricDensity()) 12841 composeQuantity(t, "NutritionOrder", "caloricDensity", element.getCaloricDensity(), -1); 12842 if (element.hasRouteofAdministration()) 12843 composeCodeableConcept(t, "NutritionOrder", "routeofAdministration", element.getRouteofAdministration(), -1); 12844 for (int i = 0; i < element.getAdministration().size(); i++) 12845 composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(t, "NutritionOrder", "administration", 12846 element.getAdministration().get(i), i); 12847 if (element.hasMaxVolumeToDeliver()) 12848 composeQuantity(t, "NutritionOrder", "maxVolumeToDeliver", element.getMaxVolumeToDeliver(), -1); 12849 if (element.hasAdministrationInstructionElement()) 12850 composeString(t, "NutritionOrder", "administrationInstruction", element.getAdministrationInstructionElement(), 12851 -1); 12852 } 12853 12854 protected void composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(Complex parent, 12855 String parentType, String name, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element, 12856 int index) { 12857 if (element == null) 12858 return; 12859 Complex t; 12860 if (Utilities.noString(parentType)) 12861 t = parent; 12862 else { 12863 t = parent.predicate("fhir:" + parentType + '.' + name); 12864 } 12865 composeBackboneElement(t, "administration", name, element, index); 12866 if (element.hasSchedule()) 12867 composeTiming(t, "NutritionOrder", "schedule", element.getSchedule(), -1); 12868 if (element.hasQuantity()) 12869 composeQuantity(t, "NutritionOrder", "quantity", element.getQuantity(), -1); 12870 if (element.hasRate()) 12871 composeType(t, "NutritionOrder", "rate", element.getRate(), -1); 12872 } 12873 12874 protected void composeObservation(Complex parent, String parentType, String name, Observation element, int index) { 12875 if (element == null) 12876 return; 12877 Complex t; 12878 if (Utilities.noString(parentType)) 12879 t = parent; 12880 else { 12881 t = parent.predicate("fhir:" + parentType + '.' + name); 12882 } 12883 composeDomainResource(t, "Observation", name, element, index); 12884 for (int i = 0; i < element.getIdentifier().size(); i++) 12885 composeIdentifier(t, "Observation", "identifier", element.getIdentifier().get(i), i); 12886 for (int i = 0; i < element.getBasedOn().size(); i++) 12887 composeReference(t, "Observation", "basedOn", element.getBasedOn().get(i), i); 12888 for (int i = 0; i < element.getPartOf().size(); i++) 12889 composeReference(t, "Observation", "partOf", element.getPartOf().get(i), i); 12890 if (element.hasStatusElement()) 12891 composeEnum(t, "Observation", "status", element.getStatusElement(), -1); 12892 for (int i = 0; i < element.getCategory().size(); i++) 12893 composeCodeableConcept(t, "Observation", "category", element.getCategory().get(i), i); 12894 if (element.hasCode()) 12895 composeCodeableConcept(t, "Observation", "code", element.getCode(), -1); 12896 if (element.hasSubject()) 12897 composeReference(t, "Observation", "subject", element.getSubject(), -1); 12898 for (int i = 0; i < element.getFocus().size(); i++) 12899 composeReference(t, "Observation", "focus", element.getFocus().get(i), i); 12900 if (element.hasEncounter()) 12901 composeReference(t, "Observation", "encounter", element.getEncounter(), -1); 12902 if (element.hasEffective()) 12903 composeType(t, "Observation", "effective", element.getEffective(), -1); 12904 if (element.hasIssuedElement()) 12905 composeInstant(t, "Observation", "issued", element.getIssuedElement(), -1); 12906 for (int i = 0; i < element.getPerformer().size(); i++) 12907 composeReference(t, "Observation", "performer", element.getPerformer().get(i), i); 12908 if (element.hasValue()) 12909 composeType(t, "Observation", "value", element.getValue(), -1); 12910 if (element.hasDataAbsentReason()) 12911 composeCodeableConcept(t, "Observation", "dataAbsentReason", element.getDataAbsentReason(), -1); 12912 for (int i = 0; i < element.getInterpretation().size(); i++) 12913 composeCodeableConcept(t, "Observation", "interpretation", element.getInterpretation().get(i), i); 12914 for (int i = 0; i < element.getNote().size(); i++) 12915 composeAnnotation(t, "Observation", "note", element.getNote().get(i), i); 12916 if (element.hasBodySite()) 12917 composeCodeableConcept(t, "Observation", "bodySite", element.getBodySite(), -1); 12918 if (element.hasMethod()) 12919 composeCodeableConcept(t, "Observation", "method", element.getMethod(), -1); 12920 if (element.hasSpecimen()) 12921 composeReference(t, "Observation", "specimen", element.getSpecimen(), -1); 12922 if (element.hasDevice()) 12923 composeReference(t, "Observation", "device", element.getDevice(), -1); 12924 for (int i = 0; i < element.getReferenceRange().size(); i++) 12925 composeObservationObservationReferenceRangeComponent(t, "Observation", "referenceRange", 12926 element.getReferenceRange().get(i), i); 12927 for (int i = 0; i < element.getHasMember().size(); i++) 12928 composeReference(t, "Observation", "hasMember", element.getHasMember().get(i), i); 12929 for (int i = 0; i < element.getDerivedFrom().size(); i++) 12930 composeReference(t, "Observation", "derivedFrom", element.getDerivedFrom().get(i), i); 12931 for (int i = 0; i < element.getComponent().size(); i++) 12932 composeObservationObservationComponentComponent(t, "Observation", "component", element.getComponent().get(i), i); 12933 } 12934 12935 protected void composeObservationObservationReferenceRangeComponent(Complex parent, String parentType, String name, 12936 Observation.ObservationReferenceRangeComponent element, int index) { 12937 if (element == null) 12938 return; 12939 Complex t; 12940 if (Utilities.noString(parentType)) 12941 t = parent; 12942 else { 12943 t = parent.predicate("fhir:" + parentType + '.' + name); 12944 } 12945 composeBackboneElement(t, "referenceRange", name, element, index); 12946 if (element.hasLow()) 12947 composeQuantity(t, "Observation", "low", element.getLow(), -1); 12948 if (element.hasHigh()) 12949 composeQuantity(t, "Observation", "high", element.getHigh(), -1); 12950 if (element.hasType()) 12951 composeCodeableConcept(t, "Observation", "type", element.getType(), -1); 12952 for (int i = 0; i < element.getAppliesTo().size(); i++) 12953 composeCodeableConcept(t, "Observation", "appliesTo", element.getAppliesTo().get(i), i); 12954 if (element.hasAge()) 12955 composeRange(t, "Observation", "age", element.getAge(), -1); 12956 if (element.hasTextElement()) 12957 composeString(t, "Observation", "text", element.getTextElement(), -1); 12958 } 12959 12960 protected void composeObservationObservationComponentComponent(Complex parent, String parentType, String name, 12961 Observation.ObservationComponentComponent element, int index) { 12962 if (element == null) 12963 return; 12964 Complex t; 12965 if (Utilities.noString(parentType)) 12966 t = parent; 12967 else { 12968 t = parent.predicate("fhir:" + parentType + '.' + name); 12969 } 12970 composeBackboneElement(t, "component", name, element, index); 12971 if (element.hasCode()) 12972 composeCodeableConcept(t, "Observation", "code", element.getCode(), -1); 12973 if (element.hasValue()) 12974 composeType(t, "Observation", "value", element.getValue(), -1); 12975 if (element.hasDataAbsentReason()) 12976 composeCodeableConcept(t, "Observation", "dataAbsentReason", element.getDataAbsentReason(), -1); 12977 for (int i = 0; i < element.getInterpretation().size(); i++) 12978 composeCodeableConcept(t, "Observation", "interpretation", element.getInterpretation().get(i), i); 12979 for (int i = 0; i < element.getReferenceRange().size(); i++) 12980 composeObservationObservationReferenceRangeComponent(t, "Observation", "referenceRange", 12981 element.getReferenceRange().get(i), i); 12982 } 12983 12984 protected void composeObservationDefinition(Complex parent, String parentType, String name, 12985 ObservationDefinition element, int index) { 12986 if (element == null) 12987 return; 12988 Complex t; 12989 if (Utilities.noString(parentType)) 12990 t = parent; 12991 else { 12992 t = parent.predicate("fhir:" + parentType + '.' + name); 12993 } 12994 composeDomainResource(t, "ObservationDefinition", name, element, index); 12995 for (int i = 0; i < element.getCategory().size(); i++) 12996 composeCodeableConcept(t, "ObservationDefinition", "category", element.getCategory().get(i), i); 12997 if (element.hasCode()) 12998 composeCodeableConcept(t, "ObservationDefinition", "code", element.getCode(), -1); 12999 for (int i = 0; i < element.getIdentifier().size(); i++) 13000 composeIdentifier(t, "ObservationDefinition", "identifier", element.getIdentifier().get(i), i); 13001 for (int i = 0; i < element.getPermittedDataType().size(); i++) 13002 composeEnum(t, "ObservationDefinition", "permittedDataType", element.getPermittedDataType().get(i), i); 13003 if (element.hasMultipleResultsAllowedElement()) 13004 composeBoolean(t, "ObservationDefinition", "multipleResultsAllowed", element.getMultipleResultsAllowedElement(), 13005 -1); 13006 if (element.hasMethod()) 13007 composeCodeableConcept(t, "ObservationDefinition", "method", element.getMethod(), -1); 13008 if (element.hasPreferredReportNameElement()) 13009 composeString(t, "ObservationDefinition", "preferredReportName", element.getPreferredReportNameElement(), -1); 13010 if (element.hasQuantitativeDetails()) 13011 composeObservationDefinitionObservationDefinitionQuantitativeDetailsComponent(t, "ObservationDefinition", 13012 "quantitativeDetails", element.getQuantitativeDetails(), -1); 13013 for (int i = 0; i < element.getQualifiedInterval().size(); i++) 13014 composeObservationDefinitionObservationDefinitionQualifiedIntervalComponent(t, "ObservationDefinition", 13015 "qualifiedInterval", element.getQualifiedInterval().get(i), i); 13016 if (element.hasValidCodedValueSet()) 13017 composeReference(t, "ObservationDefinition", "validCodedValueSet", element.getValidCodedValueSet(), -1); 13018 if (element.hasNormalCodedValueSet()) 13019 composeReference(t, "ObservationDefinition", "normalCodedValueSet", element.getNormalCodedValueSet(), -1); 13020 if (element.hasAbnormalCodedValueSet()) 13021 composeReference(t, "ObservationDefinition", "abnormalCodedValueSet", element.getAbnormalCodedValueSet(), -1); 13022 if (element.hasCriticalCodedValueSet()) 13023 composeReference(t, "ObservationDefinition", "criticalCodedValueSet", element.getCriticalCodedValueSet(), -1); 13024 } 13025 13026 protected void composeObservationDefinitionObservationDefinitionQuantitativeDetailsComponent(Complex parent, 13027 String parentType, String name, ObservationDefinition.ObservationDefinitionQuantitativeDetailsComponent element, 13028 int index) { 13029 if (element == null) 13030 return; 13031 Complex t; 13032 if (Utilities.noString(parentType)) 13033 t = parent; 13034 else { 13035 t = parent.predicate("fhir:" + parentType + '.' + name); 13036 } 13037 composeBackboneElement(t, "quantitativeDetails", name, element, index); 13038 if (element.hasCustomaryUnit()) 13039 composeCodeableConcept(t, "ObservationDefinition", "customaryUnit", element.getCustomaryUnit(), -1); 13040 if (element.hasUnit()) 13041 composeCodeableConcept(t, "ObservationDefinition", "unit", element.getUnit(), -1); 13042 if (element.hasConversionFactorElement()) 13043 composeDecimal(t, "ObservationDefinition", "conversionFactor", element.getConversionFactorElement(), -1); 13044 if (element.hasDecimalPrecisionElement()) 13045 composeInteger(t, "ObservationDefinition", "decimalPrecision", element.getDecimalPrecisionElement(), -1); 13046 } 13047 13048 protected void composeObservationDefinitionObservationDefinitionQualifiedIntervalComponent(Complex parent, 13049 String parentType, String name, ObservationDefinition.ObservationDefinitionQualifiedIntervalComponent element, 13050 int index) { 13051 if (element == null) 13052 return; 13053 Complex t; 13054 if (Utilities.noString(parentType)) 13055 t = parent; 13056 else { 13057 t = parent.predicate("fhir:" + parentType + '.' + name); 13058 } 13059 composeBackboneElement(t, "qualifiedInterval", name, element, index); 13060 if (element.hasCategoryElement()) 13061 composeEnum(t, "ObservationDefinition", "category", element.getCategoryElement(), -1); 13062 if (element.hasRange()) 13063 composeRange(t, "ObservationDefinition", "range", element.getRange(), -1); 13064 if (element.hasContext()) 13065 composeCodeableConcept(t, "ObservationDefinition", "context", element.getContext(), -1); 13066 for (int i = 0; i < element.getAppliesTo().size(); i++) 13067 composeCodeableConcept(t, "ObservationDefinition", "appliesTo", element.getAppliesTo().get(i), i); 13068 if (element.hasGenderElement()) 13069 composeEnum(t, "ObservationDefinition", "gender", element.getGenderElement(), -1); 13070 if (element.hasAge()) 13071 composeRange(t, "ObservationDefinition", "age", element.getAge(), -1); 13072 if (element.hasGestationalAge()) 13073 composeRange(t, "ObservationDefinition", "gestationalAge", element.getGestationalAge(), -1); 13074 if (element.hasConditionElement()) 13075 composeString(t, "ObservationDefinition", "condition", element.getConditionElement(), -1); 13076 } 13077 13078 protected void composeOperationDefinition(Complex parent, String parentType, String name, OperationDefinition element, 13079 int index) { 13080 if (element == null) 13081 return; 13082 Complex t; 13083 if (Utilities.noString(parentType)) 13084 t = parent; 13085 else { 13086 t = parent.predicate("fhir:" + parentType + '.' + name); 13087 } 13088 composeDomainResource(t, "OperationDefinition", name, element, index); 13089 if (element.hasUrlElement()) 13090 composeUri(t, "OperationDefinition", "url", element.getUrlElement(), -1); 13091 if (element.hasVersionElement()) 13092 composeString(t, "OperationDefinition", "version", element.getVersionElement(), -1); 13093 if (element.hasNameElement()) 13094 composeString(t, "OperationDefinition", "name", element.getNameElement(), -1); 13095 if (element.hasTitleElement()) 13096 composeString(t, "OperationDefinition", "title", element.getTitleElement(), -1); 13097 if (element.hasStatusElement()) 13098 composeEnum(t, "OperationDefinition", "status", element.getStatusElement(), -1); 13099 if (element.hasKindElement()) 13100 composeEnum(t, "OperationDefinition", "kind", element.getKindElement(), -1); 13101 if (element.hasExperimentalElement()) 13102 composeBoolean(t, "OperationDefinition", "experimental", element.getExperimentalElement(), -1); 13103 if (element.hasDateElement()) 13104 composeDateTime(t, "OperationDefinition", "date", element.getDateElement(), -1); 13105 if (element.hasPublisherElement()) 13106 composeString(t, "OperationDefinition", "publisher", element.getPublisherElement(), -1); 13107 for (int i = 0; i < element.getContact().size(); i++) 13108 composeContactDetail(t, "OperationDefinition", "contact", element.getContact().get(i), i); 13109 if (element.hasDescriptionElement()) 13110 composeMarkdown(t, "OperationDefinition", "description", element.getDescriptionElement(), -1); 13111 for (int i = 0; i < element.getUseContext().size(); i++) 13112 composeUsageContext(t, "OperationDefinition", "useContext", element.getUseContext().get(i), i); 13113 for (int i = 0; i < element.getJurisdiction().size(); i++) 13114 composeCodeableConcept(t, "OperationDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 13115 if (element.hasPurposeElement()) 13116 composeMarkdown(t, "OperationDefinition", "purpose", element.getPurposeElement(), -1); 13117 if (element.hasAffectsStateElement()) 13118 composeBoolean(t, "OperationDefinition", "affectsState", element.getAffectsStateElement(), -1); 13119 if (element.hasCodeElement()) 13120 composeCode(t, "OperationDefinition", "code", element.getCodeElement(), -1); 13121 if (element.hasCommentElement()) 13122 composeMarkdown(t, "OperationDefinition", "comment", element.getCommentElement(), -1); 13123 if (element.hasBaseElement()) 13124 composeCanonical(t, "OperationDefinition", "base", element.getBaseElement(), -1); 13125 for (int i = 0; i < element.getResource().size(); i++) 13126 composeCode(t, "OperationDefinition", "resource", element.getResource().get(i), i); 13127 if (element.hasSystemElement()) 13128 composeBoolean(t, "OperationDefinition", "system", element.getSystemElement(), -1); 13129 if (element.hasTypeElement()) 13130 composeBoolean(t, "OperationDefinition", "type", element.getTypeElement(), -1); 13131 if (element.hasInstanceElement()) 13132 composeBoolean(t, "OperationDefinition", "instance", element.getInstanceElement(), -1); 13133 if (element.hasInputProfileElement()) 13134 composeCanonical(t, "OperationDefinition", "inputProfile", element.getInputProfileElement(), -1); 13135 if (element.hasOutputProfileElement()) 13136 composeCanonical(t, "OperationDefinition", "outputProfile", element.getOutputProfileElement(), -1); 13137 for (int i = 0; i < element.getParameter().size(); i++) 13138 composeOperationDefinitionOperationDefinitionParameterComponent(t, "OperationDefinition", "parameter", 13139 element.getParameter().get(i), i); 13140 for (int i = 0; i < element.getOverload().size(); i++) 13141 composeOperationDefinitionOperationDefinitionOverloadComponent(t, "OperationDefinition", "overload", 13142 element.getOverload().get(i), i); 13143 } 13144 13145 protected void composeOperationDefinitionOperationDefinitionParameterComponent(Complex parent, String parentType, 13146 String name, OperationDefinition.OperationDefinitionParameterComponent element, int index) { 13147 if (element == null) 13148 return; 13149 Complex t; 13150 if (Utilities.noString(parentType)) 13151 t = parent; 13152 else { 13153 t = parent.predicate("fhir:" + parentType + '.' + name); 13154 } 13155 composeBackboneElement(t, "parameter", name, element, index); 13156 if (element.hasNameElement()) 13157 composeCode(t, "OperationDefinition", "name", element.getNameElement(), -1); 13158 if (element.hasUseElement()) 13159 composeEnum(t, "OperationDefinition", "use", element.getUseElement(), -1); 13160 if (element.hasMinElement()) 13161 composeInteger(t, "OperationDefinition", "min", element.getMinElement(), -1); 13162 if (element.hasMaxElement()) 13163 composeString(t, "OperationDefinition", "max", element.getMaxElement(), -1); 13164 if (element.hasDocumentationElement()) 13165 composeString(t, "OperationDefinition", "documentation", element.getDocumentationElement(), -1); 13166 if (element.hasTypeElement()) 13167 composeCode(t, "OperationDefinition", "type", element.getTypeElement(), -1); 13168 for (int i = 0; i < element.getTargetProfile().size(); i++) 13169 composeCanonical(t, "OperationDefinition", "targetProfile", element.getTargetProfile().get(i), i); 13170 if (element.hasSearchTypeElement()) 13171 composeEnum(t, "OperationDefinition", "searchType", element.getSearchTypeElement(), -1); 13172 if (element.hasBinding()) 13173 composeOperationDefinitionOperationDefinitionParameterBindingComponent(t, "OperationDefinition", "binding", 13174 element.getBinding(), -1); 13175 for (int i = 0; i < element.getReferencedFrom().size(); i++) 13176 composeOperationDefinitionOperationDefinitionParameterReferencedFromComponent(t, "OperationDefinition", 13177 "referencedFrom", element.getReferencedFrom().get(i), i); 13178 for (int i = 0; i < element.getPart().size(); i++) 13179 composeOperationDefinitionOperationDefinitionParameterComponent(t, "OperationDefinition", "part", 13180 element.getPart().get(i), i); 13181 } 13182 13183 protected void composeOperationDefinitionOperationDefinitionParameterBindingComponent(Complex parent, 13184 String parentType, String name, OperationDefinition.OperationDefinitionParameterBindingComponent element, 13185 int index) { 13186 if (element == null) 13187 return; 13188 Complex t; 13189 if (Utilities.noString(parentType)) 13190 t = parent; 13191 else { 13192 t = parent.predicate("fhir:" + parentType + '.' + name); 13193 } 13194 composeBackboneElement(t, "binding", name, element, index); 13195 if (element.hasStrengthElement()) 13196 composeEnum(t, "OperationDefinition", "strength", element.getStrengthElement(), -1); 13197 if (element.hasValueSetElement()) 13198 composeCanonical(t, "OperationDefinition", "valueSet", element.getValueSetElement(), -1); 13199 } 13200 13201 protected void composeOperationDefinitionOperationDefinitionParameterReferencedFromComponent(Complex parent, 13202 String parentType, String name, OperationDefinition.OperationDefinitionParameterReferencedFromComponent element, 13203 int index) { 13204 if (element == null) 13205 return; 13206 Complex t; 13207 if (Utilities.noString(parentType)) 13208 t = parent; 13209 else { 13210 t = parent.predicate("fhir:" + parentType + '.' + name); 13211 } 13212 composeBackboneElement(t, "referencedFrom", name, element, index); 13213 if (element.hasSourceElement()) 13214 composeString(t, "OperationDefinition", "source", element.getSourceElement(), -1); 13215 if (element.hasSourceIdElement()) 13216 composeString(t, "OperationDefinition", "sourceId", element.getSourceIdElement(), -1); 13217 } 13218 13219 protected void composeOperationDefinitionOperationDefinitionOverloadComponent(Complex parent, String parentType, 13220 String name, OperationDefinition.OperationDefinitionOverloadComponent element, int index) { 13221 if (element == null) 13222 return; 13223 Complex t; 13224 if (Utilities.noString(parentType)) 13225 t = parent; 13226 else { 13227 t = parent.predicate("fhir:" + parentType + '.' + name); 13228 } 13229 composeBackboneElement(t, "overload", name, element, index); 13230 for (int i = 0; i < element.getParameterName().size(); i++) 13231 composeString(t, "OperationDefinition", "parameterName", element.getParameterName().get(i), i); 13232 if (element.hasCommentElement()) 13233 composeString(t, "OperationDefinition", "comment", element.getCommentElement(), -1); 13234 } 13235 13236 protected void composeOperationOutcome(Complex parent, String parentType, String name, OperationOutcome element, 13237 int index) { 13238 if (element == null) 13239 return; 13240 Complex t; 13241 if (Utilities.noString(parentType)) 13242 t = parent; 13243 else { 13244 t = parent.predicate("fhir:" + parentType + '.' + name); 13245 } 13246 composeDomainResource(t, "OperationOutcome", name, element, index); 13247 for (int i = 0; i < element.getIssue().size(); i++) 13248 composeOperationOutcomeOperationOutcomeIssueComponent(t, "OperationOutcome", "issue", element.getIssue().get(i), 13249 i); 13250 } 13251 13252 protected void composeOperationOutcomeOperationOutcomeIssueComponent(Complex parent, String parentType, String name, 13253 OperationOutcome.OperationOutcomeIssueComponent element, int index) { 13254 if (element == null) 13255 return; 13256 Complex t; 13257 if (Utilities.noString(parentType)) 13258 t = parent; 13259 else { 13260 t = parent.predicate("fhir:" + parentType + '.' + name); 13261 } 13262 composeBackboneElement(t, "issue", name, element, index); 13263 if (element.hasSeverityElement()) 13264 composeEnum(t, "OperationOutcome", "severity", element.getSeverityElement(), -1); 13265 if (element.hasCodeElement()) 13266 composeEnum(t, "OperationOutcome", "code", element.getCodeElement(), -1); 13267 if (element.hasDetails()) 13268 composeCodeableConcept(t, "OperationOutcome", "details", element.getDetails(), -1); 13269 if (element.hasDiagnosticsElement()) 13270 composeString(t, "OperationOutcome", "diagnostics", element.getDiagnosticsElement(), -1); 13271 for (int i = 0; i < element.getLocation().size(); i++) 13272 composeString(t, "OperationOutcome", "location", element.getLocation().get(i), i); 13273 for (int i = 0; i < element.getExpression().size(); i++) 13274 composeString(t, "OperationOutcome", "expression", element.getExpression().get(i), i); 13275 } 13276 13277 protected void composeOrganization(Complex parent, String parentType, String name, Organization element, int index) { 13278 if (element == null) 13279 return; 13280 Complex t; 13281 if (Utilities.noString(parentType)) 13282 t = parent; 13283 else { 13284 t = parent.predicate("fhir:" + parentType + '.' + name); 13285 } 13286 composeDomainResource(t, "Organization", name, element, index); 13287 for (int i = 0; i < element.getIdentifier().size(); i++) 13288 composeIdentifier(t, "Organization", "identifier", element.getIdentifier().get(i), i); 13289 if (element.hasActiveElement()) 13290 composeBoolean(t, "Organization", "active", element.getActiveElement(), -1); 13291 for (int i = 0; i < element.getType().size(); i++) 13292 composeCodeableConcept(t, "Organization", "type", element.getType().get(i), i); 13293 if (element.hasNameElement()) 13294 composeString(t, "Organization", "name", element.getNameElement(), -1); 13295 for (int i = 0; i < element.getAlias().size(); i++) 13296 composeString(t, "Organization", "alias", element.getAlias().get(i), i); 13297 for (int i = 0; i < element.getTelecom().size(); i++) 13298 composeContactPoint(t, "Organization", "telecom", element.getTelecom().get(i), i); 13299 for (int i = 0; i < element.getAddress().size(); i++) 13300 composeAddress(t, "Organization", "address", element.getAddress().get(i), i); 13301 if (element.hasPartOf()) 13302 composeReference(t, "Organization", "partOf", element.getPartOf(), -1); 13303 for (int i = 0; i < element.getContact().size(); i++) 13304 composeOrganizationOrganizationContactComponent(t, "Organization", "contact", element.getContact().get(i), i); 13305 for (int i = 0; i < element.getEndpoint().size(); i++) 13306 composeReference(t, "Organization", "endpoint", element.getEndpoint().get(i), i); 13307 } 13308 13309 protected void composeOrganizationOrganizationContactComponent(Complex parent, String parentType, String name, 13310 Organization.OrganizationContactComponent element, int index) { 13311 if (element == null) 13312 return; 13313 Complex t; 13314 if (Utilities.noString(parentType)) 13315 t = parent; 13316 else { 13317 t = parent.predicate("fhir:" + parentType + '.' + name); 13318 } 13319 composeBackboneElement(t, "contact", name, element, index); 13320 if (element.hasPurpose()) 13321 composeCodeableConcept(t, "Organization", "purpose", element.getPurpose(), -1); 13322 if (element.hasName()) 13323 composeHumanName(t, "Organization", "name", element.getName(), -1); 13324 for (int i = 0; i < element.getTelecom().size(); i++) 13325 composeContactPoint(t, "Organization", "telecom", element.getTelecom().get(i), i); 13326 if (element.hasAddress()) 13327 composeAddress(t, "Organization", "address", element.getAddress(), -1); 13328 } 13329 13330 protected void composeOrganizationAffiliation(Complex parent, String parentType, String name, 13331 OrganizationAffiliation element, int index) { 13332 if (element == null) 13333 return; 13334 Complex t; 13335 if (Utilities.noString(parentType)) 13336 t = parent; 13337 else { 13338 t = parent.predicate("fhir:" + parentType + '.' + name); 13339 } 13340 composeDomainResource(t, "OrganizationAffiliation", name, element, index); 13341 for (int i = 0; i < element.getIdentifier().size(); i++) 13342 composeIdentifier(t, "OrganizationAffiliation", "identifier", element.getIdentifier().get(i), i); 13343 if (element.hasActiveElement()) 13344 composeBoolean(t, "OrganizationAffiliation", "active", element.getActiveElement(), -1); 13345 if (element.hasPeriod()) 13346 composePeriod(t, "OrganizationAffiliation", "period", element.getPeriod(), -1); 13347 if (element.hasOrganization()) 13348 composeReference(t, "OrganizationAffiliation", "organization", element.getOrganization(), -1); 13349 if (element.hasParticipatingOrganization()) 13350 composeReference(t, "OrganizationAffiliation", "participatingOrganization", 13351 element.getParticipatingOrganization(), -1); 13352 for (int i = 0; i < element.getNetwork().size(); i++) 13353 composeReference(t, "OrganizationAffiliation", "network", element.getNetwork().get(i), i); 13354 for (int i = 0; i < element.getCode().size(); i++) 13355 composeCodeableConcept(t, "OrganizationAffiliation", "code", element.getCode().get(i), i); 13356 for (int i = 0; i < element.getSpecialty().size(); i++) 13357 composeCodeableConcept(t, "OrganizationAffiliation", "specialty", element.getSpecialty().get(i), i); 13358 for (int i = 0; i < element.getLocation().size(); i++) 13359 composeReference(t, "OrganizationAffiliation", "location", element.getLocation().get(i), i); 13360 for (int i = 0; i < element.getHealthcareService().size(); i++) 13361 composeReference(t, "OrganizationAffiliation", "healthcareService", element.getHealthcareService().get(i), i); 13362 for (int i = 0; i < element.getTelecom().size(); i++) 13363 composeContactPoint(t, "OrganizationAffiliation", "telecom", element.getTelecom().get(i), i); 13364 for (int i = 0; i < element.getEndpoint().size(); i++) 13365 composeReference(t, "OrganizationAffiliation", "endpoint", element.getEndpoint().get(i), i); 13366 } 13367 13368 protected void composePatient(Complex parent, String parentType, String name, Patient element, int index) { 13369 if (element == null) 13370 return; 13371 Complex t; 13372 if (Utilities.noString(parentType)) 13373 t = parent; 13374 else { 13375 t = parent.predicate("fhir:" + parentType + '.' + name); 13376 } 13377 composeDomainResource(t, "Patient", name, element, index); 13378 for (int i = 0; i < element.getIdentifier().size(); i++) 13379 composeIdentifier(t, "Patient", "identifier", element.getIdentifier().get(i), i); 13380 if (element.hasActiveElement()) 13381 composeBoolean(t, "Patient", "active", element.getActiveElement(), -1); 13382 for (int i = 0; i < element.getName().size(); i++) 13383 composeHumanName(t, "Patient", "name", element.getName().get(i), i); 13384 for (int i = 0; i < element.getTelecom().size(); i++) 13385 composeContactPoint(t, "Patient", "telecom", element.getTelecom().get(i), i); 13386 if (element.hasGenderElement()) 13387 composeEnum(t, "Patient", "gender", element.getGenderElement(), -1); 13388 if (element.hasBirthDateElement()) 13389 composeDate(t, "Patient", "birthDate", element.getBirthDateElement(), -1); 13390 if (element.hasDeceased()) 13391 composeType(t, "Patient", "deceased", element.getDeceased(), -1); 13392 for (int i = 0; i < element.getAddress().size(); i++) 13393 composeAddress(t, "Patient", "address", element.getAddress().get(i), i); 13394 if (element.hasMaritalStatus()) 13395 composeCodeableConcept(t, "Patient", "maritalStatus", element.getMaritalStatus(), -1); 13396 if (element.hasMultipleBirth()) 13397 composeType(t, "Patient", "multipleBirth", element.getMultipleBirth(), -1); 13398 for (int i = 0; i < element.getPhoto().size(); i++) 13399 composeAttachment(t, "Patient", "photo", element.getPhoto().get(i), i); 13400 for (int i = 0; i < element.getContact().size(); i++) 13401 composePatientContactComponent(t, "Patient", "contact", element.getContact().get(i), i); 13402 for (int i = 0; i < element.getCommunication().size(); i++) 13403 composePatientPatientCommunicationComponent(t, "Patient", "communication", element.getCommunication().get(i), i); 13404 for (int i = 0; i < element.getGeneralPractitioner().size(); i++) 13405 composeReference(t, "Patient", "generalPractitioner", element.getGeneralPractitioner().get(i), i); 13406 if (element.hasManagingOrganization()) 13407 composeReference(t, "Patient", "managingOrganization", element.getManagingOrganization(), -1); 13408 for (int i = 0; i < element.getLink().size(); i++) 13409 composePatientPatientLinkComponent(t, "Patient", "link", element.getLink().get(i), i); 13410 } 13411 13412 protected void composePatientContactComponent(Complex parent, String parentType, String name, 13413 Patient.ContactComponent element, int index) { 13414 if (element == null) 13415 return; 13416 Complex t; 13417 if (Utilities.noString(parentType)) 13418 t = parent; 13419 else { 13420 t = parent.predicate("fhir:" + parentType + '.' + name); 13421 } 13422 composeBackboneElement(t, "contact", name, element, index); 13423 for (int i = 0; i < element.getRelationship().size(); i++) 13424 composeCodeableConcept(t, "Patient", "relationship", element.getRelationship().get(i), i); 13425 if (element.hasName()) 13426 composeHumanName(t, "Patient", "name", element.getName(), -1); 13427 for (int i = 0; i < element.getTelecom().size(); i++) 13428 composeContactPoint(t, "Patient", "telecom", element.getTelecom().get(i), i); 13429 if (element.hasAddress()) 13430 composeAddress(t, "Patient", "address", element.getAddress(), -1); 13431 if (element.hasGenderElement()) 13432 composeEnum(t, "Patient", "gender", element.getGenderElement(), -1); 13433 if (element.hasOrganization()) 13434 composeReference(t, "Patient", "organization", element.getOrganization(), -1); 13435 if (element.hasPeriod()) 13436 composePeriod(t, "Patient", "period", element.getPeriod(), -1); 13437 } 13438 13439 protected void composePatientPatientCommunicationComponent(Complex parent, String parentType, String name, 13440 Patient.PatientCommunicationComponent element, int index) { 13441 if (element == null) 13442 return; 13443 Complex t; 13444 if (Utilities.noString(parentType)) 13445 t = parent; 13446 else { 13447 t = parent.predicate("fhir:" + parentType + '.' + name); 13448 } 13449 composeBackboneElement(t, "communication", name, element, index); 13450 if (element.hasLanguage()) 13451 composeCodeableConcept(t, "Patient", "language", element.getLanguage(), -1); 13452 if (element.hasPreferredElement()) 13453 composeBoolean(t, "Patient", "preferred", element.getPreferredElement(), -1); 13454 } 13455 13456 protected void composePatientPatientLinkComponent(Complex parent, String parentType, String name, 13457 Patient.PatientLinkComponent element, int index) { 13458 if (element == null) 13459 return; 13460 Complex t; 13461 if (Utilities.noString(parentType)) 13462 t = parent; 13463 else { 13464 t = parent.predicate("fhir:" + parentType + '.' + name); 13465 } 13466 composeBackboneElement(t, "link", name, element, index); 13467 if (element.hasOther()) 13468 composeReference(t, "Patient", "other", element.getOther(), -1); 13469 if (element.hasTypeElement()) 13470 composeEnum(t, "Patient", "type", element.getTypeElement(), -1); 13471 } 13472 13473 protected void composePaymentNotice(Complex parent, String parentType, String name, PaymentNotice element, 13474 int index) { 13475 if (element == null) 13476 return; 13477 Complex t; 13478 if (Utilities.noString(parentType)) 13479 t = parent; 13480 else { 13481 t = parent.predicate("fhir:" + parentType + '.' + name); 13482 } 13483 composeDomainResource(t, "PaymentNotice", name, element, index); 13484 for (int i = 0; i < element.getIdentifier().size(); i++) 13485 composeIdentifier(t, "PaymentNotice", "identifier", element.getIdentifier().get(i), i); 13486 if (element.hasStatusElement()) 13487 composeEnum(t, "PaymentNotice", "status", element.getStatusElement(), -1); 13488 if (element.hasRequest()) 13489 composeReference(t, "PaymentNotice", "request", element.getRequest(), -1); 13490 if (element.hasResponse()) 13491 composeReference(t, "PaymentNotice", "response", element.getResponse(), -1); 13492 if (element.hasCreatedElement()) 13493 composeDateTime(t, "PaymentNotice", "created", element.getCreatedElement(), -1); 13494 if (element.hasProvider()) 13495 composeReference(t, "PaymentNotice", "provider", element.getProvider(), -1); 13496 if (element.hasPayment()) 13497 composeReference(t, "PaymentNotice", "payment", element.getPayment(), -1); 13498 if (element.hasPaymentDateElement()) 13499 composeDate(t, "PaymentNotice", "paymentDate", element.getPaymentDateElement(), -1); 13500 if (element.hasPayee()) 13501 composeReference(t, "PaymentNotice", "payee", element.getPayee(), -1); 13502 if (element.hasRecipient()) 13503 composeReference(t, "PaymentNotice", "recipient", element.getRecipient(), -1); 13504 if (element.hasAmount()) 13505 composeMoney(t, "PaymentNotice", "amount", element.getAmount(), -1); 13506 if (element.hasPaymentStatus()) 13507 composeCodeableConcept(t, "PaymentNotice", "paymentStatus", element.getPaymentStatus(), -1); 13508 } 13509 13510 protected void composePaymentReconciliation(Complex parent, String parentType, String name, 13511 PaymentReconciliation element, int index) { 13512 if (element == null) 13513 return; 13514 Complex t; 13515 if (Utilities.noString(parentType)) 13516 t = parent; 13517 else { 13518 t = parent.predicate("fhir:" + parentType + '.' + name); 13519 } 13520 composeDomainResource(t, "PaymentReconciliation", name, element, index); 13521 for (int i = 0; i < element.getIdentifier().size(); i++) 13522 composeIdentifier(t, "PaymentReconciliation", "identifier", element.getIdentifier().get(i), i); 13523 if (element.hasStatusElement()) 13524 composeEnum(t, "PaymentReconciliation", "status", element.getStatusElement(), -1); 13525 if (element.hasPeriod()) 13526 composePeriod(t, "PaymentReconciliation", "period", element.getPeriod(), -1); 13527 if (element.hasCreatedElement()) 13528 composeDateTime(t, "PaymentReconciliation", "created", element.getCreatedElement(), -1); 13529 if (element.hasPaymentIssuer()) 13530 composeReference(t, "PaymentReconciliation", "paymentIssuer", element.getPaymentIssuer(), -1); 13531 if (element.hasRequest()) 13532 composeReference(t, "PaymentReconciliation", "request", element.getRequest(), -1); 13533 if (element.hasRequestor()) 13534 composeReference(t, "PaymentReconciliation", "requestor", element.getRequestor(), -1); 13535 if (element.hasOutcomeElement()) 13536 composeEnum(t, "PaymentReconciliation", "outcome", element.getOutcomeElement(), -1); 13537 if (element.hasDispositionElement()) 13538 composeString(t, "PaymentReconciliation", "disposition", element.getDispositionElement(), -1); 13539 if (element.hasPaymentDateElement()) 13540 composeDate(t, "PaymentReconciliation", "paymentDate", element.getPaymentDateElement(), -1); 13541 if (element.hasPaymentAmount()) 13542 composeMoney(t, "PaymentReconciliation", "paymentAmount", element.getPaymentAmount(), -1); 13543 if (element.hasPaymentIdentifier()) 13544 composeIdentifier(t, "PaymentReconciliation", "paymentIdentifier", element.getPaymentIdentifier(), -1); 13545 for (int i = 0; i < element.getDetail().size(); i++) 13546 composePaymentReconciliationDetailsComponent(t, "PaymentReconciliation", "detail", element.getDetail().get(i), i); 13547 if (element.hasFormCode()) 13548 composeCodeableConcept(t, "PaymentReconciliation", "formCode", element.getFormCode(), -1); 13549 for (int i = 0; i < element.getProcessNote().size(); i++) 13550 composePaymentReconciliationNotesComponent(t, "PaymentReconciliation", "processNote", 13551 element.getProcessNote().get(i), i); 13552 } 13553 13554 protected void composePaymentReconciliationDetailsComponent(Complex parent, String parentType, String name, 13555 PaymentReconciliation.DetailsComponent element, int index) { 13556 if (element == null) 13557 return; 13558 Complex t; 13559 if (Utilities.noString(parentType)) 13560 t = parent; 13561 else { 13562 t = parent.predicate("fhir:" + parentType + '.' + name); 13563 } 13564 composeBackboneElement(t, "detail", name, element, index); 13565 if (element.hasIdentifier()) 13566 composeIdentifier(t, "PaymentReconciliation", "identifier", element.getIdentifier(), -1); 13567 if (element.hasPredecessor()) 13568 composeIdentifier(t, "PaymentReconciliation", "predecessor", element.getPredecessor(), -1); 13569 if (element.hasType()) 13570 composeCodeableConcept(t, "PaymentReconciliation", "type", element.getType(), -1); 13571 if (element.hasRequest()) 13572 composeReference(t, "PaymentReconciliation", "request", element.getRequest(), -1); 13573 if (element.hasSubmitter()) 13574 composeReference(t, "PaymentReconciliation", "submitter", element.getSubmitter(), -1); 13575 if (element.hasResponse()) 13576 composeReference(t, "PaymentReconciliation", "response", element.getResponse(), -1); 13577 if (element.hasDateElement()) 13578 composeDate(t, "PaymentReconciliation", "date", element.getDateElement(), -1); 13579 if (element.hasResponsible()) 13580 composeReference(t, "PaymentReconciliation", "responsible", element.getResponsible(), -1); 13581 if (element.hasPayee()) 13582 composeReference(t, "PaymentReconciliation", "payee", element.getPayee(), -1); 13583 if (element.hasAmount()) 13584 composeMoney(t, "PaymentReconciliation", "amount", element.getAmount(), -1); 13585 } 13586 13587 protected void composePaymentReconciliationNotesComponent(Complex parent, String parentType, String name, 13588 PaymentReconciliation.NotesComponent element, int index) { 13589 if (element == null) 13590 return; 13591 Complex t; 13592 if (Utilities.noString(parentType)) 13593 t = parent; 13594 else { 13595 t = parent.predicate("fhir:" + parentType + '.' + name); 13596 } 13597 composeBackboneElement(t, "processNote", name, element, index); 13598 if (element.hasTypeElement()) 13599 composeEnum(t, "PaymentReconciliation", "type", element.getTypeElement(), -1); 13600 if (element.hasTextElement()) 13601 composeString(t, "PaymentReconciliation", "text", element.getTextElement(), -1); 13602 } 13603 13604 protected void composePerson(Complex parent, String parentType, String name, Person element, int index) { 13605 if (element == null) 13606 return; 13607 Complex t; 13608 if (Utilities.noString(parentType)) 13609 t = parent; 13610 else { 13611 t = parent.predicate("fhir:" + parentType + '.' + name); 13612 } 13613 composeDomainResource(t, "Person", name, element, index); 13614 for (int i = 0; i < element.getIdentifier().size(); i++) 13615 composeIdentifier(t, "Person", "identifier", element.getIdentifier().get(i), i); 13616 for (int i = 0; i < element.getName().size(); i++) 13617 composeHumanName(t, "Person", "name", element.getName().get(i), i); 13618 for (int i = 0; i < element.getTelecom().size(); i++) 13619 composeContactPoint(t, "Person", "telecom", element.getTelecom().get(i), i); 13620 if (element.hasGenderElement()) 13621 composeEnum(t, "Person", "gender", element.getGenderElement(), -1); 13622 if (element.hasBirthDateElement()) 13623 composeDate(t, "Person", "birthDate", element.getBirthDateElement(), -1); 13624 for (int i = 0; i < element.getAddress().size(); i++) 13625 composeAddress(t, "Person", "address", element.getAddress().get(i), i); 13626 if (element.hasPhoto()) 13627 composeAttachment(t, "Person", "photo", element.getPhoto(), -1); 13628 if (element.hasManagingOrganization()) 13629 composeReference(t, "Person", "managingOrganization", element.getManagingOrganization(), -1); 13630 if (element.hasActiveElement()) 13631 composeBoolean(t, "Person", "active", element.getActiveElement(), -1); 13632 for (int i = 0; i < element.getLink().size(); i++) 13633 composePersonPersonLinkComponent(t, "Person", "link", element.getLink().get(i), i); 13634 } 13635 13636 protected void composePersonPersonLinkComponent(Complex parent, String parentType, String name, 13637 Person.PersonLinkComponent element, int index) { 13638 if (element == null) 13639 return; 13640 Complex t; 13641 if (Utilities.noString(parentType)) 13642 t = parent; 13643 else { 13644 t = parent.predicate("fhir:" + parentType + '.' + name); 13645 } 13646 composeBackboneElement(t, "link", name, element, index); 13647 if (element.hasTarget()) 13648 composeReference(t, "Person", "target", element.getTarget(), -1); 13649 if (element.hasAssuranceElement()) 13650 composeEnum(t, "Person", "assurance", element.getAssuranceElement(), -1); 13651 } 13652 13653 protected void composePlanDefinition(Complex parent, String parentType, String name, PlanDefinition element, 13654 int index) { 13655 if (element == null) 13656 return; 13657 Complex t; 13658 if (Utilities.noString(parentType)) 13659 t = parent; 13660 else { 13661 t = parent.predicate("fhir:" + parentType + '.' + name); 13662 } 13663 composeDomainResource(t, "PlanDefinition", name, element, index); 13664 if (element.hasUrlElement()) 13665 composeUri(t, "PlanDefinition", "url", element.getUrlElement(), -1); 13666 for (int i = 0; i < element.getIdentifier().size(); i++) 13667 composeIdentifier(t, "PlanDefinition", "identifier", element.getIdentifier().get(i), i); 13668 if (element.hasVersionElement()) 13669 composeString(t, "PlanDefinition", "version", element.getVersionElement(), -1); 13670 if (element.hasNameElement()) 13671 composeString(t, "PlanDefinition", "name", element.getNameElement(), -1); 13672 if (element.hasTitleElement()) 13673 composeString(t, "PlanDefinition", "title", element.getTitleElement(), -1); 13674 if (element.hasSubtitleElement()) 13675 composeString(t, "PlanDefinition", "subtitle", element.getSubtitleElement(), -1); 13676 if (element.hasType()) 13677 composeCodeableConcept(t, "PlanDefinition", "type", element.getType(), -1); 13678 if (element.hasStatusElement()) 13679 composeEnum(t, "PlanDefinition", "status", element.getStatusElement(), -1); 13680 if (element.hasExperimentalElement()) 13681 composeBoolean(t, "PlanDefinition", "experimental", element.getExperimentalElement(), -1); 13682 if (element.hasSubject()) 13683 composeType(t, "PlanDefinition", "subject", element.getSubject(), -1); 13684 if (element.hasDateElement()) 13685 composeDateTime(t, "PlanDefinition", "date", element.getDateElement(), -1); 13686 if (element.hasPublisherElement()) 13687 composeString(t, "PlanDefinition", "publisher", element.getPublisherElement(), -1); 13688 for (int i = 0; i < element.getContact().size(); i++) 13689 composeContactDetail(t, "PlanDefinition", "contact", element.getContact().get(i), i); 13690 if (element.hasDescriptionElement()) 13691 composeMarkdown(t, "PlanDefinition", "description", element.getDescriptionElement(), -1); 13692 for (int i = 0; i < element.getUseContext().size(); i++) 13693 composeUsageContext(t, "PlanDefinition", "useContext", element.getUseContext().get(i), i); 13694 for (int i = 0; i < element.getJurisdiction().size(); i++) 13695 composeCodeableConcept(t, "PlanDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 13696 if (element.hasPurposeElement()) 13697 composeMarkdown(t, "PlanDefinition", "purpose", element.getPurposeElement(), -1); 13698 if (element.hasUsageElement()) 13699 composeString(t, "PlanDefinition", "usage", element.getUsageElement(), -1); 13700 if (element.hasCopyrightElement()) 13701 composeMarkdown(t, "PlanDefinition", "copyright", element.getCopyrightElement(), -1); 13702 if (element.hasApprovalDateElement()) 13703 composeDate(t, "PlanDefinition", "approvalDate", element.getApprovalDateElement(), -1); 13704 if (element.hasLastReviewDateElement()) 13705 composeDate(t, "PlanDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 13706 if (element.hasEffectivePeriod()) 13707 composePeriod(t, "PlanDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 13708 for (int i = 0; i < element.getTopic().size(); i++) 13709 composeCodeableConcept(t, "PlanDefinition", "topic", element.getTopic().get(i), i); 13710 for (int i = 0; i < element.getAuthor().size(); i++) 13711 composeContactDetail(t, "PlanDefinition", "author", element.getAuthor().get(i), i); 13712 for (int i = 0; i < element.getEditor().size(); i++) 13713 composeContactDetail(t, "PlanDefinition", "editor", element.getEditor().get(i), i); 13714 for (int i = 0; i < element.getReviewer().size(); i++) 13715 composeContactDetail(t, "PlanDefinition", "reviewer", element.getReviewer().get(i), i); 13716 for (int i = 0; i < element.getEndorser().size(); i++) 13717 composeContactDetail(t, "PlanDefinition", "endorser", element.getEndorser().get(i), i); 13718 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 13719 composeRelatedArtifact(t, "PlanDefinition", "relatedArtifact", element.getRelatedArtifact().get(i), i); 13720 for (int i = 0; i < element.getLibrary().size(); i++) 13721 composeCanonical(t, "PlanDefinition", "library", element.getLibrary().get(i), i); 13722 for (int i = 0; i < element.getGoal().size(); i++) 13723 composePlanDefinitionPlanDefinitionGoalComponent(t, "PlanDefinition", "goal", element.getGoal().get(i), i); 13724 for (int i = 0; i < element.getAction().size(); i++) 13725 composePlanDefinitionPlanDefinitionActionComponent(t, "PlanDefinition", "action", element.getAction().get(i), i); 13726 } 13727 13728 protected void composePlanDefinitionPlanDefinitionGoalComponent(Complex parent, String parentType, String name, 13729 PlanDefinition.PlanDefinitionGoalComponent element, int index) { 13730 if (element == null) 13731 return; 13732 Complex t; 13733 if (Utilities.noString(parentType)) 13734 t = parent; 13735 else { 13736 t = parent.predicate("fhir:" + parentType + '.' + name); 13737 } 13738 composeBackboneElement(t, "goal", name, element, index); 13739 if (element.hasCategory()) 13740 composeCodeableConcept(t, "PlanDefinition", "category", element.getCategory(), -1); 13741 if (element.hasDescription()) 13742 composeCodeableConcept(t, "PlanDefinition", "description", element.getDescription(), -1); 13743 if (element.hasPriority()) 13744 composeCodeableConcept(t, "PlanDefinition", "priority", element.getPriority(), -1); 13745 if (element.hasStart()) 13746 composeCodeableConcept(t, "PlanDefinition", "start", element.getStart(), -1); 13747 for (int i = 0; i < element.getAddresses().size(); i++) 13748 composeCodeableConcept(t, "PlanDefinition", "addresses", element.getAddresses().get(i), i); 13749 for (int i = 0; i < element.getDocumentation().size(); i++) 13750 composeRelatedArtifact(t, "PlanDefinition", "documentation", element.getDocumentation().get(i), i); 13751 for (int i = 0; i < element.getTarget().size(); i++) 13752 composePlanDefinitionPlanDefinitionGoalTargetComponent(t, "PlanDefinition", "target", element.getTarget().get(i), 13753 i); 13754 } 13755 13756 protected void composePlanDefinitionPlanDefinitionGoalTargetComponent(Complex parent, String parentType, String name, 13757 PlanDefinition.PlanDefinitionGoalTargetComponent element, int index) { 13758 if (element == null) 13759 return; 13760 Complex t; 13761 if (Utilities.noString(parentType)) 13762 t = parent; 13763 else { 13764 t = parent.predicate("fhir:" + parentType + '.' + name); 13765 } 13766 composeBackboneElement(t, "target", name, element, index); 13767 if (element.hasMeasure()) 13768 composeCodeableConcept(t, "PlanDefinition", "measure", element.getMeasure(), -1); 13769 if (element.hasDetail()) 13770 composeType(t, "PlanDefinition", "detail", element.getDetail(), -1); 13771 if (element.hasDue()) 13772 composeDuration(t, "PlanDefinition", "due", element.getDue(), -1); 13773 } 13774 13775 protected void composePlanDefinitionPlanDefinitionActionComponent(Complex parent, String parentType, String name, 13776 PlanDefinition.PlanDefinitionActionComponent element, int index) { 13777 if (element == null) 13778 return; 13779 Complex t; 13780 if (Utilities.noString(parentType)) 13781 t = parent; 13782 else { 13783 t = parent.predicate("fhir:" + parentType + '.' + name); 13784 } 13785 composeBackboneElement(t, "action", name, element, index); 13786 if (element.hasPrefixElement()) 13787 composeString(t, "PlanDefinition", "prefix", element.getPrefixElement(), -1); 13788 if (element.hasTitleElement()) 13789 composeString(t, "PlanDefinition", "title", element.getTitleElement(), -1); 13790 if (element.hasDescriptionElement()) 13791 composeString(t, "PlanDefinition", "description", element.getDescriptionElement(), -1); 13792 if (element.hasTextEquivalentElement()) 13793 composeString(t, "PlanDefinition", "textEquivalent", element.getTextEquivalentElement(), -1); 13794 if (element.hasPriorityElement()) 13795 composeEnum(t, "PlanDefinition", "priority", element.getPriorityElement(), -1); 13796 for (int i = 0; i < element.getCode().size(); i++) 13797 composeCodeableConcept(t, "PlanDefinition", "code", element.getCode().get(i), i); 13798 for (int i = 0; i < element.getReason().size(); i++) 13799 composeCodeableConcept(t, "PlanDefinition", "reason", element.getReason().get(i), i); 13800 for (int i = 0; i < element.getDocumentation().size(); i++) 13801 composeRelatedArtifact(t, "PlanDefinition", "documentation", element.getDocumentation().get(i), i); 13802 for (int i = 0; i < element.getGoalId().size(); i++) 13803 composeId(t, "PlanDefinition", "goalId", element.getGoalId().get(i), i); 13804 if (element.hasSubject()) 13805 composeType(t, "PlanDefinition", "subject", element.getSubject(), -1); 13806 for (int i = 0; i < element.getTrigger().size(); i++) 13807 composeTriggerDefinition(t, "PlanDefinition", "trigger", element.getTrigger().get(i), i); 13808 for (int i = 0; i < element.getCondition().size(); i++) 13809 composePlanDefinitionPlanDefinitionActionConditionComponent(t, "PlanDefinition", "condition", 13810 element.getCondition().get(i), i); 13811 for (int i = 0; i < element.getInput().size(); i++) 13812 composeDataRequirement(t, "PlanDefinition", "input", element.getInput().get(i), i); 13813 for (int i = 0; i < element.getOutput().size(); i++) 13814 composeDataRequirement(t, "PlanDefinition", "output", element.getOutput().get(i), i); 13815 for (int i = 0; i < element.getRelatedAction().size(); i++) 13816 composePlanDefinitionPlanDefinitionActionRelatedActionComponent(t, "PlanDefinition", "relatedAction", 13817 element.getRelatedAction().get(i), i); 13818 if (element.hasTiming()) 13819 composeType(t, "PlanDefinition", "timing", element.getTiming(), -1); 13820 for (int i = 0; i < element.getParticipant().size(); i++) 13821 composePlanDefinitionPlanDefinitionActionParticipantComponent(t, "PlanDefinition", "participant", 13822 element.getParticipant().get(i), i); 13823 if (element.hasType()) 13824 composeCodeableConcept(t, "PlanDefinition", "type", element.getType(), -1); 13825 if (element.hasGroupingBehaviorElement()) 13826 composeEnum(t, "PlanDefinition", "groupingBehavior", element.getGroupingBehaviorElement(), -1); 13827 if (element.hasSelectionBehaviorElement()) 13828 composeEnum(t, "PlanDefinition", "selectionBehavior", element.getSelectionBehaviorElement(), -1); 13829 if (element.hasRequiredBehaviorElement()) 13830 composeEnum(t, "PlanDefinition", "requiredBehavior", element.getRequiredBehaviorElement(), -1); 13831 if (element.hasPrecheckBehaviorElement()) 13832 composeEnum(t, "PlanDefinition", "precheckBehavior", element.getPrecheckBehaviorElement(), -1); 13833 if (element.hasCardinalityBehaviorElement()) 13834 composeEnum(t, "PlanDefinition", "cardinalityBehavior", element.getCardinalityBehaviorElement(), -1); 13835 if (element.hasDefinition()) 13836 composeType(t, "PlanDefinition", "definition", element.getDefinition(), -1); 13837 if (element.hasTransformElement()) 13838 composeCanonical(t, "PlanDefinition", "transform", element.getTransformElement(), -1); 13839 for (int i = 0; i < element.getDynamicValue().size(); i++) 13840 composePlanDefinitionPlanDefinitionActionDynamicValueComponent(t, "PlanDefinition", "dynamicValue", 13841 element.getDynamicValue().get(i), i); 13842 for (int i = 0; i < element.getAction().size(); i++) 13843 composePlanDefinitionPlanDefinitionActionComponent(t, "PlanDefinition", "action", element.getAction().get(i), i); 13844 } 13845 13846 protected void composePlanDefinitionPlanDefinitionActionConditionComponent(Complex parent, String parentType, 13847 String name, PlanDefinition.PlanDefinitionActionConditionComponent element, int index) { 13848 if (element == null) 13849 return; 13850 Complex t; 13851 if (Utilities.noString(parentType)) 13852 t = parent; 13853 else { 13854 t = parent.predicate("fhir:" + parentType + '.' + name); 13855 } 13856 composeBackboneElement(t, "condition", name, element, index); 13857 if (element.hasKindElement()) 13858 composeEnum(t, "PlanDefinition", "kind", element.getKindElement(), -1); 13859 if (element.hasExpression()) 13860 composeExpression(t, "PlanDefinition", "expression", element.getExpression(), -1); 13861 } 13862 13863 protected void composePlanDefinitionPlanDefinitionActionRelatedActionComponent(Complex parent, String parentType, 13864 String name, PlanDefinition.PlanDefinitionActionRelatedActionComponent element, int index) { 13865 if (element == null) 13866 return; 13867 Complex t; 13868 if (Utilities.noString(parentType)) 13869 t = parent; 13870 else { 13871 t = parent.predicate("fhir:" + parentType + '.' + name); 13872 } 13873 composeBackboneElement(t, "relatedAction", name, element, index); 13874 if (element.hasActionIdElement()) 13875 composeId(t, "PlanDefinition", "actionId", element.getActionIdElement(), -1); 13876 if (element.hasRelationshipElement()) 13877 composeEnum(t, "PlanDefinition", "relationship", element.getRelationshipElement(), -1); 13878 if (element.hasOffset()) 13879 composeType(t, "PlanDefinition", "offset", element.getOffset(), -1); 13880 } 13881 13882 protected void composePlanDefinitionPlanDefinitionActionParticipantComponent(Complex parent, String parentType, 13883 String name, PlanDefinition.PlanDefinitionActionParticipantComponent element, int index) { 13884 if (element == null) 13885 return; 13886 Complex t; 13887 if (Utilities.noString(parentType)) 13888 t = parent; 13889 else { 13890 t = parent.predicate("fhir:" + parentType + '.' + name); 13891 } 13892 composeBackboneElement(t, "participant", name, element, index); 13893 if (element.hasTypeElement()) 13894 composeEnum(t, "PlanDefinition", "type", element.getTypeElement(), -1); 13895 if (element.hasRole()) 13896 composeCodeableConcept(t, "PlanDefinition", "role", element.getRole(), -1); 13897 } 13898 13899 protected void composePlanDefinitionPlanDefinitionActionDynamicValueComponent(Complex parent, String parentType, 13900 String name, PlanDefinition.PlanDefinitionActionDynamicValueComponent element, int index) { 13901 if (element == null) 13902 return; 13903 Complex t; 13904 if (Utilities.noString(parentType)) 13905 t = parent; 13906 else { 13907 t = parent.predicate("fhir:" + parentType + '.' + name); 13908 } 13909 composeBackboneElement(t, "dynamicValue", name, element, index); 13910 if (element.hasPathElement()) 13911 composeString(t, "PlanDefinition", "path", element.getPathElement(), -1); 13912 if (element.hasExpression()) 13913 composeExpression(t, "PlanDefinition", "expression", element.getExpression(), -1); 13914 } 13915 13916 protected void composePractitioner(Complex parent, String parentType, String name, Practitioner element, int index) { 13917 if (element == null) 13918 return; 13919 Complex t; 13920 if (Utilities.noString(parentType)) 13921 t = parent; 13922 else { 13923 t = parent.predicate("fhir:" + parentType + '.' + name); 13924 } 13925 composeDomainResource(t, "Practitioner", name, element, index); 13926 for (int i = 0; i < element.getIdentifier().size(); i++) 13927 composeIdentifier(t, "Practitioner", "identifier", element.getIdentifier().get(i), i); 13928 if (element.hasActiveElement()) 13929 composeBoolean(t, "Practitioner", "active", element.getActiveElement(), -1); 13930 for (int i = 0; i < element.getName().size(); i++) 13931 composeHumanName(t, "Practitioner", "name", element.getName().get(i), i); 13932 for (int i = 0; i < element.getTelecom().size(); i++) 13933 composeContactPoint(t, "Practitioner", "telecom", element.getTelecom().get(i), i); 13934 for (int i = 0; i < element.getAddress().size(); i++) 13935 composeAddress(t, "Practitioner", "address", element.getAddress().get(i), i); 13936 if (element.hasGenderElement()) 13937 composeEnum(t, "Practitioner", "gender", element.getGenderElement(), -1); 13938 if (element.hasBirthDateElement()) 13939 composeDate(t, "Practitioner", "birthDate", element.getBirthDateElement(), -1); 13940 for (int i = 0; i < element.getPhoto().size(); i++) 13941 composeAttachment(t, "Practitioner", "photo", element.getPhoto().get(i), i); 13942 for (int i = 0; i < element.getQualification().size(); i++) 13943 composePractitionerPractitionerQualificationComponent(t, "Practitioner", "qualification", 13944 element.getQualification().get(i), i); 13945 for (int i = 0; i < element.getCommunication().size(); i++) 13946 composeCodeableConcept(t, "Practitioner", "communication", element.getCommunication().get(i), i); 13947 } 13948 13949 protected void composePractitionerPractitionerQualificationComponent(Complex parent, String parentType, String name, 13950 Practitioner.PractitionerQualificationComponent element, int index) { 13951 if (element == null) 13952 return; 13953 Complex t; 13954 if (Utilities.noString(parentType)) 13955 t = parent; 13956 else { 13957 t = parent.predicate("fhir:" + parentType + '.' + name); 13958 } 13959 composeBackboneElement(t, "qualification", name, element, index); 13960 for (int i = 0; i < element.getIdentifier().size(); i++) 13961 composeIdentifier(t, "Practitioner", "identifier", element.getIdentifier().get(i), i); 13962 if (element.hasCode()) 13963 composeCodeableConcept(t, "Practitioner", "code", element.getCode(), -1); 13964 if (element.hasPeriod()) 13965 composePeriod(t, "Practitioner", "period", element.getPeriod(), -1); 13966 if (element.hasIssuer()) 13967 composeReference(t, "Practitioner", "issuer", element.getIssuer(), -1); 13968 } 13969 13970 protected void composePractitionerRole(Complex parent, String parentType, String name, PractitionerRole element, 13971 int index) { 13972 if (element == null) 13973 return; 13974 Complex t; 13975 if (Utilities.noString(parentType)) 13976 t = parent; 13977 else { 13978 t = parent.predicate("fhir:" + parentType + '.' + name); 13979 } 13980 composeDomainResource(t, "PractitionerRole", name, element, index); 13981 for (int i = 0; i < element.getIdentifier().size(); i++) 13982 composeIdentifier(t, "PractitionerRole", "identifier", element.getIdentifier().get(i), i); 13983 if (element.hasActiveElement()) 13984 composeBoolean(t, "PractitionerRole", "active", element.getActiveElement(), -1); 13985 if (element.hasPeriod()) 13986 composePeriod(t, "PractitionerRole", "period", element.getPeriod(), -1); 13987 if (element.hasPractitioner()) 13988 composeReference(t, "PractitionerRole", "practitioner", element.getPractitioner(), -1); 13989 if (element.hasOrganization()) 13990 composeReference(t, "PractitionerRole", "organization", element.getOrganization(), -1); 13991 for (int i = 0; i < element.getCode().size(); i++) 13992 composeCodeableConcept(t, "PractitionerRole", "code", element.getCode().get(i), i); 13993 for (int i = 0; i < element.getSpecialty().size(); i++) 13994 composeCodeableConcept(t, "PractitionerRole", "specialty", element.getSpecialty().get(i), i); 13995 for (int i = 0; i < element.getLocation().size(); i++) 13996 composeReference(t, "PractitionerRole", "location", element.getLocation().get(i), i); 13997 for (int i = 0; i < element.getHealthcareService().size(); i++) 13998 composeReference(t, "PractitionerRole", "healthcareService", element.getHealthcareService().get(i), i); 13999 for (int i = 0; i < element.getTelecom().size(); i++) 14000 composeContactPoint(t, "PractitionerRole", "telecom", element.getTelecom().get(i), i); 14001 for (int i = 0; i < element.getAvailableTime().size(); i++) 14002 composePractitionerRolePractitionerRoleAvailableTimeComponent(t, "PractitionerRole", "availableTime", 14003 element.getAvailableTime().get(i), i); 14004 for (int i = 0; i < element.getNotAvailable().size(); i++) 14005 composePractitionerRolePractitionerRoleNotAvailableComponent(t, "PractitionerRole", "notAvailable", 14006 element.getNotAvailable().get(i), i); 14007 if (element.hasAvailabilityExceptionsElement()) 14008 composeString(t, "PractitionerRole", "availabilityExceptions", element.getAvailabilityExceptionsElement(), -1); 14009 for (int i = 0; i < element.getEndpoint().size(); i++) 14010 composeReference(t, "PractitionerRole", "endpoint", element.getEndpoint().get(i), i); 14011 } 14012 14013 protected void composePractitionerRolePractitionerRoleAvailableTimeComponent(Complex parent, String parentType, 14014 String name, PractitionerRole.PractitionerRoleAvailableTimeComponent element, int index) { 14015 if (element == null) 14016 return; 14017 Complex t; 14018 if (Utilities.noString(parentType)) 14019 t = parent; 14020 else { 14021 t = parent.predicate("fhir:" + parentType + '.' + name); 14022 } 14023 composeBackboneElement(t, "availableTime", name, element, index); 14024 for (int i = 0; i < element.getDaysOfWeek().size(); i++) 14025 composeEnum(t, "PractitionerRole", "daysOfWeek", element.getDaysOfWeek().get(i), i); 14026 if (element.hasAllDayElement()) 14027 composeBoolean(t, "PractitionerRole", "allDay", element.getAllDayElement(), -1); 14028 if (element.hasAvailableStartTimeElement()) 14029 composeTime(t, "PractitionerRole", "availableStartTime", element.getAvailableStartTimeElement(), -1); 14030 if (element.hasAvailableEndTimeElement()) 14031 composeTime(t, "PractitionerRole", "availableEndTime", element.getAvailableEndTimeElement(), -1); 14032 } 14033 14034 protected void composePractitionerRolePractitionerRoleNotAvailableComponent(Complex parent, String parentType, 14035 String name, PractitionerRole.PractitionerRoleNotAvailableComponent element, int index) { 14036 if (element == null) 14037 return; 14038 Complex t; 14039 if (Utilities.noString(parentType)) 14040 t = parent; 14041 else { 14042 t = parent.predicate("fhir:" + parentType + '.' + name); 14043 } 14044 composeBackboneElement(t, "notAvailable", name, element, index); 14045 if (element.hasDescriptionElement()) 14046 composeString(t, "PractitionerRole", "description", element.getDescriptionElement(), -1); 14047 if (element.hasDuring()) 14048 composePeriod(t, "PractitionerRole", "during", element.getDuring(), -1); 14049 } 14050 14051 protected void composeProcedure(Complex parent, String parentType, String name, Procedure element, int index) { 14052 if (element == null) 14053 return; 14054 Complex t; 14055 if (Utilities.noString(parentType)) 14056 t = parent; 14057 else { 14058 t = parent.predicate("fhir:" + parentType + '.' + name); 14059 } 14060 composeDomainResource(t, "Procedure", name, element, index); 14061 for (int i = 0; i < element.getIdentifier().size(); i++) 14062 composeIdentifier(t, "Procedure", "identifier", element.getIdentifier().get(i), i); 14063 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 14064 composeCanonical(t, "Procedure", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 14065 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 14066 composeUri(t, "Procedure", "instantiatesUri", element.getInstantiatesUri().get(i), i); 14067 for (int i = 0; i < element.getBasedOn().size(); i++) 14068 composeReference(t, "Procedure", "basedOn", element.getBasedOn().get(i), i); 14069 for (int i = 0; i < element.getPartOf().size(); i++) 14070 composeReference(t, "Procedure", "partOf", element.getPartOf().get(i), i); 14071 if (element.hasStatusElement()) 14072 composeEnum(t, "Procedure", "status", element.getStatusElement(), -1); 14073 if (element.hasStatusReason()) 14074 composeCodeableConcept(t, "Procedure", "statusReason", element.getStatusReason(), -1); 14075 if (element.hasCategory()) 14076 composeCodeableConcept(t, "Procedure", "category", element.getCategory(), -1); 14077 if (element.hasCode()) 14078 composeCodeableConcept(t, "Procedure", "code", element.getCode(), -1); 14079 if (element.hasSubject()) 14080 composeReference(t, "Procedure", "subject", element.getSubject(), -1); 14081 if (element.hasEncounter()) 14082 composeReference(t, "Procedure", "encounter", element.getEncounter(), -1); 14083 if (element.hasPerformed()) 14084 composeType(t, "Procedure", "performed", element.getPerformed(), -1); 14085 if (element.hasRecorder()) 14086 composeReference(t, "Procedure", "recorder", element.getRecorder(), -1); 14087 if (element.hasAsserter()) 14088 composeReference(t, "Procedure", "asserter", element.getAsserter(), -1); 14089 for (int i = 0; i < element.getPerformer().size(); i++) 14090 composeProcedureProcedurePerformerComponent(t, "Procedure", "performer", element.getPerformer().get(i), i); 14091 if (element.hasLocation()) 14092 composeReference(t, "Procedure", "location", element.getLocation(), -1); 14093 for (int i = 0; i < element.getReasonCode().size(); i++) 14094 composeCodeableConcept(t, "Procedure", "reasonCode", element.getReasonCode().get(i), i); 14095 for (int i = 0; i < element.getReasonReference().size(); i++) 14096 composeReference(t, "Procedure", "reasonReference", element.getReasonReference().get(i), i); 14097 for (int i = 0; i < element.getBodySite().size(); i++) 14098 composeCodeableConcept(t, "Procedure", "bodySite", element.getBodySite().get(i), i); 14099 if (element.hasOutcome()) 14100 composeCodeableConcept(t, "Procedure", "outcome", element.getOutcome(), -1); 14101 for (int i = 0; i < element.getReport().size(); i++) 14102 composeReference(t, "Procedure", "report", element.getReport().get(i), i); 14103 for (int i = 0; i < element.getComplication().size(); i++) 14104 composeCodeableConcept(t, "Procedure", "complication", element.getComplication().get(i), i); 14105 for (int i = 0; i < element.getComplicationDetail().size(); i++) 14106 composeReference(t, "Procedure", "complicationDetail", element.getComplicationDetail().get(i), i); 14107 for (int i = 0; i < element.getFollowUp().size(); i++) 14108 composeCodeableConcept(t, "Procedure", "followUp", element.getFollowUp().get(i), i); 14109 for (int i = 0; i < element.getNote().size(); i++) 14110 composeAnnotation(t, "Procedure", "note", element.getNote().get(i), i); 14111 for (int i = 0; i < element.getFocalDevice().size(); i++) 14112 composeProcedureProcedureFocalDeviceComponent(t, "Procedure", "focalDevice", element.getFocalDevice().get(i), i); 14113 for (int i = 0; i < element.getUsedReference().size(); i++) 14114 composeReference(t, "Procedure", "usedReference", element.getUsedReference().get(i), i); 14115 for (int i = 0; i < element.getUsedCode().size(); i++) 14116 composeCodeableConcept(t, "Procedure", "usedCode", element.getUsedCode().get(i), i); 14117 } 14118 14119 protected void composeProcedureProcedurePerformerComponent(Complex parent, String parentType, String name, 14120 Procedure.ProcedurePerformerComponent element, int index) { 14121 if (element == null) 14122 return; 14123 Complex t; 14124 if (Utilities.noString(parentType)) 14125 t = parent; 14126 else { 14127 t = parent.predicate("fhir:" + parentType + '.' + name); 14128 } 14129 composeBackboneElement(t, "performer", name, element, index); 14130 if (element.hasFunction()) 14131 composeCodeableConcept(t, "Procedure", "function", element.getFunction(), -1); 14132 if (element.hasActor()) 14133 composeReference(t, "Procedure", "actor", element.getActor(), -1); 14134 if (element.hasOnBehalfOf()) 14135 composeReference(t, "Procedure", "onBehalfOf", element.getOnBehalfOf(), -1); 14136 } 14137 14138 protected void composeProcedureProcedureFocalDeviceComponent(Complex parent, String parentType, String name, 14139 Procedure.ProcedureFocalDeviceComponent element, int index) { 14140 if (element == null) 14141 return; 14142 Complex t; 14143 if (Utilities.noString(parentType)) 14144 t = parent; 14145 else { 14146 t = parent.predicate("fhir:" + parentType + '.' + name); 14147 } 14148 composeBackboneElement(t, "focalDevice", name, element, index); 14149 if (element.hasAction()) 14150 composeCodeableConcept(t, "Procedure", "action", element.getAction(), -1); 14151 if (element.hasManipulated()) 14152 composeReference(t, "Procedure", "manipulated", element.getManipulated(), -1); 14153 } 14154 14155 protected void composeProvenance(Complex parent, String parentType, String name, Provenance element, int index) { 14156 if (element == null) 14157 return; 14158 Complex t; 14159 if (Utilities.noString(parentType)) 14160 t = parent; 14161 else { 14162 t = parent.predicate("fhir:" + parentType + '.' + name); 14163 } 14164 composeDomainResource(t, "Provenance", name, element, index); 14165 for (int i = 0; i < element.getTarget().size(); i++) 14166 composeReference(t, "Provenance", "target", element.getTarget().get(i), i); 14167 if (element.hasOccurred()) 14168 composeType(t, "Provenance", "occurred", element.getOccurred(), -1); 14169 if (element.hasRecordedElement()) 14170 composeInstant(t, "Provenance", "recorded", element.getRecordedElement(), -1); 14171 for (int i = 0; i < element.getPolicy().size(); i++) 14172 composeUri(t, "Provenance", "policy", element.getPolicy().get(i), i); 14173 if (element.hasLocation()) 14174 composeReference(t, "Provenance", "location", element.getLocation(), -1); 14175 for (int i = 0; i < element.getReason().size(); i++) 14176 composeCodeableConcept(t, "Provenance", "reason", element.getReason().get(i), i); 14177 if (element.hasActivity()) 14178 composeCodeableConcept(t, "Provenance", "activity", element.getActivity(), -1); 14179 for (int i = 0; i < element.getAgent().size(); i++) 14180 composeProvenanceProvenanceAgentComponent(t, "Provenance", "agent", element.getAgent().get(i), i); 14181 for (int i = 0; i < element.getEntity().size(); i++) 14182 composeProvenanceProvenanceEntityComponent(t, "Provenance", "entity", element.getEntity().get(i), i); 14183 for (int i = 0; i < element.getSignature().size(); i++) 14184 composeSignature(t, "Provenance", "signature", element.getSignature().get(i), i); 14185 } 14186 14187 protected void composeProvenanceProvenanceAgentComponent(Complex parent, String parentType, String name, 14188 Provenance.ProvenanceAgentComponent 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:" + parentType + '.' + name); 14196 } 14197 composeBackboneElement(t, "agent", name, element, index); 14198 if (element.hasType()) 14199 composeCodeableConcept(t, "Provenance", "type", element.getType(), -1); 14200 for (int i = 0; i < element.getRole().size(); i++) 14201 composeCodeableConcept(t, "Provenance", "role", element.getRole().get(i), i); 14202 if (element.hasWho()) 14203 composeReference(t, "Provenance", "who", element.getWho(), -1); 14204 if (element.hasOnBehalfOf()) 14205 composeReference(t, "Provenance", "onBehalfOf", element.getOnBehalfOf(), -1); 14206 } 14207 14208 protected void composeProvenanceProvenanceEntityComponent(Complex parent, String parentType, String name, 14209 Provenance.ProvenanceEntityComponent 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:" + parentType + '.' + name); 14217 } 14218 composeBackboneElement(t, "entity", name, element, index); 14219 if (element.hasRoleElement()) 14220 composeEnum(t, "Provenance", "role", element.getRoleElement(), -1); 14221 if (element.hasWhat()) 14222 composeReference(t, "Provenance", "what", element.getWhat(), -1); 14223 for (int i = 0; i < element.getAgent().size(); i++) 14224 composeProvenanceProvenanceAgentComponent(t, "Provenance", "agent", element.getAgent().get(i), i); 14225 } 14226 14227 protected void composeQuestionnaire(Complex parent, String parentType, String name, Questionnaire element, 14228 int index) { 14229 if (element == null) 14230 return; 14231 Complex t; 14232 if (Utilities.noString(parentType)) 14233 t = parent; 14234 else { 14235 t = parent.predicate("fhir:" + parentType + '.' + name); 14236 } 14237 composeDomainResource(t, "Questionnaire", name, element, index); 14238 if (element.hasUrlElement()) 14239 composeUri(t, "Questionnaire", "url", element.getUrlElement(), -1); 14240 for (int i = 0; i < element.getIdentifier().size(); i++) 14241 composeIdentifier(t, "Questionnaire", "identifier", element.getIdentifier().get(i), i); 14242 if (element.hasVersionElement()) 14243 composeString(t, "Questionnaire", "version", element.getVersionElement(), -1); 14244 if (element.hasNameElement()) 14245 composeString(t, "Questionnaire", "name", element.getNameElement(), -1); 14246 if (element.hasTitleElement()) 14247 composeString(t, "Questionnaire", "title", element.getTitleElement(), -1); 14248 for (int i = 0; i < element.getDerivedFrom().size(); i++) 14249 composeCanonical(t, "Questionnaire", "derivedFrom", element.getDerivedFrom().get(i), i); 14250 if (element.hasStatusElement()) 14251 composeEnum(t, "Questionnaire", "status", element.getStatusElement(), -1); 14252 if (element.hasExperimentalElement()) 14253 composeBoolean(t, "Questionnaire", "experimental", element.getExperimentalElement(), -1); 14254 for (int i = 0; i < element.getSubjectType().size(); i++) 14255 composeCode(t, "Questionnaire", "subjectType", element.getSubjectType().get(i), i); 14256 if (element.hasDateElement()) 14257 composeDateTime(t, "Questionnaire", "date", element.getDateElement(), -1); 14258 if (element.hasPublisherElement()) 14259 composeString(t, "Questionnaire", "publisher", element.getPublisherElement(), -1); 14260 for (int i = 0; i < element.getContact().size(); i++) 14261 composeContactDetail(t, "Questionnaire", "contact", element.getContact().get(i), i); 14262 if (element.hasDescriptionElement()) 14263 composeMarkdown(t, "Questionnaire", "description", element.getDescriptionElement(), -1); 14264 for (int i = 0; i < element.getUseContext().size(); i++) 14265 composeUsageContext(t, "Questionnaire", "useContext", element.getUseContext().get(i), i); 14266 for (int i = 0; i < element.getJurisdiction().size(); i++) 14267 composeCodeableConcept(t, "Questionnaire", "jurisdiction", element.getJurisdiction().get(i), i); 14268 if (element.hasPurposeElement()) 14269 composeMarkdown(t, "Questionnaire", "purpose", element.getPurposeElement(), -1); 14270 if (element.hasCopyrightElement()) 14271 composeMarkdown(t, "Questionnaire", "copyright", element.getCopyrightElement(), -1); 14272 if (element.hasApprovalDateElement()) 14273 composeDate(t, "Questionnaire", "approvalDate", element.getApprovalDateElement(), -1); 14274 if (element.hasLastReviewDateElement()) 14275 composeDate(t, "Questionnaire", "lastReviewDate", element.getLastReviewDateElement(), -1); 14276 if (element.hasEffectivePeriod()) 14277 composePeriod(t, "Questionnaire", "effectivePeriod", element.getEffectivePeriod(), -1); 14278 for (int i = 0; i < element.getCode().size(); i++) 14279 composeCoding(t, "Questionnaire", "code", element.getCode().get(i), i); 14280 for (int i = 0; i < element.getItem().size(); i++) 14281 composeQuestionnaireQuestionnaireItemComponent(t, "Questionnaire", "item", element.getItem().get(i), i); 14282 } 14283 14284 protected void composeQuestionnaireQuestionnaireItemComponent(Complex parent, String parentType, String name, 14285 Questionnaire.QuestionnaireItemComponent element, int index) { 14286 if (element == null) 14287 return; 14288 Complex t; 14289 if (Utilities.noString(parentType)) 14290 t = parent; 14291 else { 14292 t = parent.predicate("fhir:" + parentType + '.' + name); 14293 } 14294 composeBackboneElement(t, "item", name, element, index); 14295 if (element.hasLinkIdElement()) 14296 composeString(t, "Questionnaire", "linkId", element.getLinkIdElement(), -1); 14297 if (element.hasDefinitionElement()) 14298 composeUri(t, "Questionnaire", "definition", element.getDefinitionElement(), -1); 14299 for (int i = 0; i < element.getCode().size(); i++) 14300 composeCoding(t, "Questionnaire", "code", element.getCode().get(i), i); 14301 if (element.hasPrefixElement()) 14302 composeString(t, "Questionnaire", "prefix", element.getPrefixElement(), -1); 14303 if (element.hasTextElement()) 14304 composeString(t, "Questionnaire", "text", element.getTextElement(), -1); 14305 if (element.hasTypeElement()) 14306 composeEnum(t, "Questionnaire", "type", element.getTypeElement(), -1); 14307 for (int i = 0; i < element.getEnableWhen().size(); i++) 14308 composeQuestionnaireQuestionnaireItemEnableWhenComponent(t, "Questionnaire", "enableWhen", 14309 element.getEnableWhen().get(i), i); 14310 if (element.hasEnableBehaviorElement()) 14311 composeEnum(t, "Questionnaire", "enableBehavior", element.getEnableBehaviorElement(), -1); 14312 if (element.hasRequiredElement()) 14313 composeBoolean(t, "Questionnaire", "required", element.getRequiredElement(), -1); 14314 if (element.hasRepeatsElement()) 14315 composeBoolean(t, "Questionnaire", "repeats", element.getRepeatsElement(), -1); 14316 if (element.hasReadOnlyElement()) 14317 composeBoolean(t, "Questionnaire", "readOnly", element.getReadOnlyElement(), -1); 14318 if (element.hasMaxLengthElement()) 14319 composeInteger(t, "Questionnaire", "maxLength", element.getMaxLengthElement(), -1); 14320 if (element.hasAnswerValueSetElement()) 14321 composeCanonical(t, "Questionnaire", "answerValueSet", element.getAnswerValueSetElement(), -1); 14322 for (int i = 0; i < element.getAnswerOption().size(); i++) 14323 composeQuestionnaireQuestionnaireItemAnswerOptionComponent(t, "Questionnaire", "answerOption", 14324 element.getAnswerOption().get(i), i); 14325 for (int i = 0; i < element.getInitial().size(); i++) 14326 composeQuestionnaireQuestionnaireItemInitialComponent(t, "Questionnaire", "initial", element.getInitial().get(i), 14327 i); 14328 for (int i = 0; i < element.getItem().size(); i++) 14329 composeQuestionnaireQuestionnaireItemComponent(t, "Questionnaire", "item", element.getItem().get(i), i); 14330 } 14331 14332 protected void composeQuestionnaireQuestionnaireItemEnableWhenComponent(Complex parent, String parentType, 14333 String name, Questionnaire.QuestionnaireItemEnableWhenComponent element, int index) { 14334 if (element == null) 14335 return; 14336 Complex t; 14337 if (Utilities.noString(parentType)) 14338 t = parent; 14339 else { 14340 t = parent.predicate("fhir:" + parentType + '.' + name); 14341 } 14342 composeBackboneElement(t, "enableWhen", name, element, index); 14343 if (element.hasQuestionElement()) 14344 composeString(t, "Questionnaire", "question", element.getQuestionElement(), -1); 14345 if (element.hasOperatorElement()) 14346 composeEnum(t, "Questionnaire", "operator", element.getOperatorElement(), -1); 14347 if (element.hasAnswer()) 14348 composeType(t, "Questionnaire", "answer", element.getAnswer(), -1); 14349 } 14350 14351 protected void composeQuestionnaireQuestionnaireItemAnswerOptionComponent(Complex parent, String parentType, 14352 String name, Questionnaire.QuestionnaireItemAnswerOptionComponent element, int index) { 14353 if (element == null) 14354 return; 14355 Complex t; 14356 if (Utilities.noString(parentType)) 14357 t = parent; 14358 else { 14359 t = parent.predicate("fhir:" + parentType + '.' + name); 14360 } 14361 composeBackboneElement(t, "answerOption", name, element, index); 14362 if (element.hasValue()) 14363 composeType(t, "Questionnaire", "value", element.getValue(), -1); 14364 if (element.hasInitialSelectedElement()) 14365 composeBoolean(t, "Questionnaire", "initialSelected", element.getInitialSelectedElement(), -1); 14366 } 14367 14368 protected void composeQuestionnaireQuestionnaireItemInitialComponent(Complex parent, String parentType, String name, 14369 Questionnaire.QuestionnaireItemInitialComponent element, int index) { 14370 if (element == null) 14371 return; 14372 Complex t; 14373 if (Utilities.noString(parentType)) 14374 t = parent; 14375 else { 14376 t = parent.predicate("fhir:" + parentType + '.' + name); 14377 } 14378 composeBackboneElement(t, "initial", name, element, index); 14379 if (element.hasValue()) 14380 composeType(t, "Questionnaire", "value", element.getValue(), -1); 14381 } 14382 14383 protected void composeQuestionnaireResponse(Complex parent, String parentType, String name, 14384 QuestionnaireResponse element, int index) { 14385 if (element == null) 14386 return; 14387 Complex t; 14388 if (Utilities.noString(parentType)) 14389 t = parent; 14390 else { 14391 t = parent.predicate("fhir:" + parentType + '.' + name); 14392 } 14393 composeDomainResource(t, "QuestionnaireResponse", name, element, index); 14394 if (element.hasIdentifier()) 14395 composeIdentifier(t, "QuestionnaireResponse", "identifier", element.getIdentifier(), -1); 14396 for (int i = 0; i < element.getBasedOn().size(); i++) 14397 composeReference(t, "QuestionnaireResponse", "basedOn", element.getBasedOn().get(i), i); 14398 for (int i = 0; i < element.getPartOf().size(); i++) 14399 composeReference(t, "QuestionnaireResponse", "partOf", element.getPartOf().get(i), i); 14400 if (element.hasQuestionnaireElement()) 14401 composeCanonical(t, "QuestionnaireResponse", "questionnaire", element.getQuestionnaireElement(), -1); 14402 if (element.hasStatusElement()) 14403 composeEnum(t, "QuestionnaireResponse", "status", element.getStatusElement(), -1); 14404 if (element.hasSubject()) 14405 composeReference(t, "QuestionnaireResponse", "subject", element.getSubject(), -1); 14406 if (element.hasEncounter()) 14407 composeReference(t, "QuestionnaireResponse", "encounter", element.getEncounter(), -1); 14408 if (element.hasAuthoredElement()) 14409 composeDateTime(t, "QuestionnaireResponse", "authored", element.getAuthoredElement(), -1); 14410 if (element.hasAuthor()) 14411 composeReference(t, "QuestionnaireResponse", "author", element.getAuthor(), -1); 14412 if (element.hasSource()) 14413 composeReference(t, "QuestionnaireResponse", "source", element.getSource(), -1); 14414 for (int i = 0; i < element.getItem().size(); i++) 14415 composeQuestionnaireResponseQuestionnaireResponseItemComponent(t, "QuestionnaireResponse", "item", 14416 element.getItem().get(i), i); 14417 } 14418 14419 protected void composeQuestionnaireResponseQuestionnaireResponseItemComponent(Complex parent, String parentType, 14420 String name, QuestionnaireResponse.QuestionnaireResponseItemComponent element, int index) { 14421 if (element == null) 14422 return; 14423 Complex t; 14424 if (Utilities.noString(parentType)) 14425 t = parent; 14426 else { 14427 t = parent.predicate("fhir:" + parentType + '.' + name); 14428 } 14429 composeBackboneElement(t, "item", name, element, index); 14430 if (element.hasLinkIdElement()) 14431 composeString(t, "QuestionnaireResponse", "linkId", element.getLinkIdElement(), -1); 14432 if (element.hasDefinitionElement()) 14433 composeUri(t, "QuestionnaireResponse", "definition", element.getDefinitionElement(), -1); 14434 if (element.hasTextElement()) 14435 composeString(t, "QuestionnaireResponse", "text", element.getTextElement(), -1); 14436 for (int i = 0; i < element.getAnswer().size(); i++) 14437 composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(t, "QuestionnaireResponse", "answer", 14438 element.getAnswer().get(i), i); 14439 for (int i = 0; i < element.getItem().size(); i++) 14440 composeQuestionnaireResponseQuestionnaireResponseItemComponent(t, "QuestionnaireResponse", "item", 14441 element.getItem().get(i), i); 14442 } 14443 14444 protected void composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(Complex parent, String parentType, 14445 String name, QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent element, int index) { 14446 if (element == null) 14447 return; 14448 Complex t; 14449 if (Utilities.noString(parentType)) 14450 t = parent; 14451 else { 14452 t = parent.predicate("fhir:" + parentType + '.' + name); 14453 } 14454 composeBackboneElement(t, "answer", name, element, index); 14455 if (element.hasValue()) 14456 composeType(t, "QuestionnaireResponse", "value", element.getValue(), -1); 14457 for (int i = 0; i < element.getItem().size(); i++) 14458 composeQuestionnaireResponseQuestionnaireResponseItemComponent(t, "QuestionnaireResponse", "item", 14459 element.getItem().get(i), i); 14460 } 14461 14462 protected void composeRelatedPerson(Complex parent, String parentType, String name, RelatedPerson element, 14463 int index) { 14464 if (element == null) 14465 return; 14466 Complex t; 14467 if (Utilities.noString(parentType)) 14468 t = parent; 14469 else { 14470 t = parent.predicate("fhir:" + parentType + '.' + name); 14471 } 14472 composeDomainResource(t, "RelatedPerson", name, element, index); 14473 for (int i = 0; i < element.getIdentifier().size(); i++) 14474 composeIdentifier(t, "RelatedPerson", "identifier", element.getIdentifier().get(i), i); 14475 if (element.hasActiveElement()) 14476 composeBoolean(t, "RelatedPerson", "active", element.getActiveElement(), -1); 14477 if (element.hasPatient()) 14478 composeReference(t, "RelatedPerson", "patient", element.getPatient(), -1); 14479 for (int i = 0; i < element.getRelationship().size(); i++) 14480 composeCodeableConcept(t, "RelatedPerson", "relationship", element.getRelationship().get(i), i); 14481 for (int i = 0; i < element.getName().size(); i++) 14482 composeHumanName(t, "RelatedPerson", "name", element.getName().get(i), i); 14483 for (int i = 0; i < element.getTelecom().size(); i++) 14484 composeContactPoint(t, "RelatedPerson", "telecom", element.getTelecom().get(i), i); 14485 if (element.hasGenderElement()) 14486 composeEnum(t, "RelatedPerson", "gender", element.getGenderElement(), -1); 14487 if (element.hasBirthDateElement()) 14488 composeDate(t, "RelatedPerson", "birthDate", element.getBirthDateElement(), -1); 14489 for (int i = 0; i < element.getAddress().size(); i++) 14490 composeAddress(t, "RelatedPerson", "address", element.getAddress().get(i), i); 14491 for (int i = 0; i < element.getPhoto().size(); i++) 14492 composeAttachment(t, "RelatedPerson", "photo", element.getPhoto().get(i), i); 14493 if (element.hasPeriod()) 14494 composePeriod(t, "RelatedPerson", "period", element.getPeriod(), -1); 14495 for (int i = 0; i < element.getCommunication().size(); i++) 14496 composeRelatedPersonRelatedPersonCommunicationComponent(t, "RelatedPerson", "communication", 14497 element.getCommunication().get(i), i); 14498 } 14499 14500 protected void composeRelatedPersonRelatedPersonCommunicationComponent(Complex parent, String parentType, String name, 14501 RelatedPerson.RelatedPersonCommunicationComponent element, int index) { 14502 if (element == null) 14503 return; 14504 Complex t; 14505 if (Utilities.noString(parentType)) 14506 t = parent; 14507 else { 14508 t = parent.predicate("fhir:" + parentType + '.' + name); 14509 } 14510 composeBackboneElement(t, "communication", name, element, index); 14511 if (element.hasLanguage()) 14512 composeCodeableConcept(t, "RelatedPerson", "language", element.getLanguage(), -1); 14513 if (element.hasPreferredElement()) 14514 composeBoolean(t, "RelatedPerson", "preferred", element.getPreferredElement(), -1); 14515 } 14516 14517 protected void composeRequestGroup(Complex parent, String parentType, String name, RequestGroup element, int index) { 14518 if (element == null) 14519 return; 14520 Complex t; 14521 if (Utilities.noString(parentType)) 14522 t = parent; 14523 else { 14524 t = parent.predicate("fhir:" + parentType + '.' + name); 14525 } 14526 composeDomainResource(t, "RequestGroup", name, element, index); 14527 for (int i = 0; i < element.getIdentifier().size(); i++) 14528 composeIdentifier(t, "RequestGroup", "identifier", element.getIdentifier().get(i), i); 14529 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 14530 composeCanonical(t, "RequestGroup", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 14531 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 14532 composeUri(t, "RequestGroup", "instantiatesUri", element.getInstantiatesUri().get(i), i); 14533 for (int i = 0; i < element.getBasedOn().size(); i++) 14534 composeReference(t, "RequestGroup", "basedOn", element.getBasedOn().get(i), i); 14535 for (int i = 0; i < element.getReplaces().size(); i++) 14536 composeReference(t, "RequestGroup", "replaces", element.getReplaces().get(i), i); 14537 if (element.hasGroupIdentifier()) 14538 composeIdentifier(t, "RequestGroup", "groupIdentifier", element.getGroupIdentifier(), -1); 14539 if (element.hasStatusElement()) 14540 composeEnum(t, "RequestGroup", "status", element.getStatusElement(), -1); 14541 if (element.hasIntentElement()) 14542 composeEnum(t, "RequestGroup", "intent", element.getIntentElement(), -1); 14543 if (element.hasPriorityElement()) 14544 composeEnum(t, "RequestGroup", "priority", element.getPriorityElement(), -1); 14545 if (element.hasCode()) 14546 composeCodeableConcept(t, "RequestGroup", "code", element.getCode(), -1); 14547 if (element.hasSubject()) 14548 composeReference(t, "RequestGroup", "subject", element.getSubject(), -1); 14549 if (element.hasEncounter()) 14550 composeReference(t, "RequestGroup", "encounter", element.getEncounter(), -1); 14551 if (element.hasAuthoredOnElement()) 14552 composeDateTime(t, "RequestGroup", "authoredOn", element.getAuthoredOnElement(), -1); 14553 if (element.hasAuthor()) 14554 composeReference(t, "RequestGroup", "author", element.getAuthor(), -1); 14555 for (int i = 0; i < element.getReasonCode().size(); i++) 14556 composeCodeableConcept(t, "RequestGroup", "reasonCode", element.getReasonCode().get(i), i); 14557 for (int i = 0; i < element.getReasonReference().size(); i++) 14558 composeReference(t, "RequestGroup", "reasonReference", element.getReasonReference().get(i), i); 14559 for (int i = 0; i < element.getNote().size(); i++) 14560 composeAnnotation(t, "RequestGroup", "note", element.getNote().get(i), i); 14561 for (int i = 0; i < element.getAction().size(); i++) 14562 composeRequestGroupRequestGroupActionComponent(t, "RequestGroup", "action", element.getAction().get(i), i); 14563 } 14564 14565 protected void composeRequestGroupRequestGroupActionComponent(Complex parent, String parentType, String name, 14566 RequestGroup.RequestGroupActionComponent element, int index) { 14567 if (element == null) 14568 return; 14569 Complex t; 14570 if (Utilities.noString(parentType)) 14571 t = parent; 14572 else { 14573 t = parent.predicate("fhir:" + parentType + '.' + name); 14574 } 14575 composeBackboneElement(t, "action", name, element, index); 14576 if (element.hasPrefixElement()) 14577 composeString(t, "RequestGroup", "prefix", element.getPrefixElement(), -1); 14578 if (element.hasTitleElement()) 14579 composeString(t, "RequestGroup", "title", element.getTitleElement(), -1); 14580 if (element.hasDescriptionElement()) 14581 composeString(t, "RequestGroup", "description", element.getDescriptionElement(), -1); 14582 if (element.hasTextEquivalentElement()) 14583 composeString(t, "RequestGroup", "textEquivalent", element.getTextEquivalentElement(), -1); 14584 if (element.hasPriorityElement()) 14585 composeEnum(t, "RequestGroup", "priority", element.getPriorityElement(), -1); 14586 for (int i = 0; i < element.getCode().size(); i++) 14587 composeCodeableConcept(t, "RequestGroup", "code", element.getCode().get(i), i); 14588 for (int i = 0; i < element.getDocumentation().size(); i++) 14589 composeRelatedArtifact(t, "RequestGroup", "documentation", element.getDocumentation().get(i), i); 14590 for (int i = 0; i < element.getCondition().size(); i++) 14591 composeRequestGroupRequestGroupActionConditionComponent(t, "RequestGroup", "condition", 14592 element.getCondition().get(i), i); 14593 for (int i = 0; i < element.getRelatedAction().size(); i++) 14594 composeRequestGroupRequestGroupActionRelatedActionComponent(t, "RequestGroup", "relatedAction", 14595 element.getRelatedAction().get(i), i); 14596 if (element.hasTiming()) 14597 composeType(t, "RequestGroup", "timing", element.getTiming(), -1); 14598 for (int i = 0; i < element.getParticipant().size(); i++) 14599 composeReference(t, "RequestGroup", "participant", element.getParticipant().get(i), i); 14600 if (element.hasType()) 14601 composeCodeableConcept(t, "RequestGroup", "type", element.getType(), -1); 14602 if (element.hasGroupingBehaviorElement()) 14603 composeEnum(t, "RequestGroup", "groupingBehavior", element.getGroupingBehaviorElement(), -1); 14604 if (element.hasSelectionBehaviorElement()) 14605 composeEnum(t, "RequestGroup", "selectionBehavior", element.getSelectionBehaviorElement(), -1); 14606 if (element.hasRequiredBehaviorElement()) 14607 composeEnum(t, "RequestGroup", "requiredBehavior", element.getRequiredBehaviorElement(), -1); 14608 if (element.hasPrecheckBehaviorElement()) 14609 composeEnum(t, "RequestGroup", "precheckBehavior", element.getPrecheckBehaviorElement(), -1); 14610 if (element.hasCardinalityBehaviorElement()) 14611 composeEnum(t, "RequestGroup", "cardinalityBehavior", element.getCardinalityBehaviorElement(), -1); 14612 if (element.hasResource()) 14613 composeReference(t, "RequestGroup", "resource", element.getResource(), -1); 14614 for (int i = 0; i < element.getAction().size(); i++) 14615 composeRequestGroupRequestGroupActionComponent(t, "RequestGroup", "action", element.getAction().get(i), i); 14616 } 14617 14618 protected void composeRequestGroupRequestGroupActionConditionComponent(Complex parent, String parentType, String name, 14619 RequestGroup.RequestGroupActionConditionComponent element, int index) { 14620 if (element == null) 14621 return; 14622 Complex t; 14623 if (Utilities.noString(parentType)) 14624 t = parent; 14625 else { 14626 t = parent.predicate("fhir:" + parentType + '.' + name); 14627 } 14628 composeBackboneElement(t, "condition", name, element, index); 14629 if (element.hasKindElement()) 14630 composeEnum(t, "RequestGroup", "kind", element.getKindElement(), -1); 14631 if (element.hasExpression()) 14632 composeExpression(t, "RequestGroup", "expression", element.getExpression(), -1); 14633 } 14634 14635 protected void composeRequestGroupRequestGroupActionRelatedActionComponent(Complex parent, String parentType, 14636 String name, RequestGroup.RequestGroupActionRelatedActionComponent element, int index) { 14637 if (element == null) 14638 return; 14639 Complex t; 14640 if (Utilities.noString(parentType)) 14641 t = parent; 14642 else { 14643 t = parent.predicate("fhir:" + parentType + '.' + name); 14644 } 14645 composeBackboneElement(t, "relatedAction", name, element, index); 14646 if (element.hasActionIdElement()) 14647 composeId(t, "RequestGroup", "actionId", element.getActionIdElement(), -1); 14648 if (element.hasRelationshipElement()) 14649 composeEnum(t, "RequestGroup", "relationship", element.getRelationshipElement(), -1); 14650 if (element.hasOffset()) 14651 composeType(t, "RequestGroup", "offset", element.getOffset(), -1); 14652 } 14653 14654 protected void composeResearchDefinition(Complex parent, String parentType, String name, ResearchDefinition element, 14655 int index) { 14656 if (element == null) 14657 return; 14658 Complex t; 14659 if (Utilities.noString(parentType)) 14660 t = parent; 14661 else { 14662 t = parent.predicate("fhir:" + parentType + '.' + name); 14663 } 14664 composeDomainResource(t, "ResearchDefinition", name, element, index); 14665 if (element.hasUrlElement()) 14666 composeUri(t, "ResearchDefinition", "url", element.getUrlElement(), -1); 14667 for (int i = 0; i < element.getIdentifier().size(); i++) 14668 composeIdentifier(t, "ResearchDefinition", "identifier", element.getIdentifier().get(i), i); 14669 if (element.hasVersionElement()) 14670 composeString(t, "ResearchDefinition", "version", element.getVersionElement(), -1); 14671 if (element.hasNameElement()) 14672 composeString(t, "ResearchDefinition", "name", element.getNameElement(), -1); 14673 if (element.hasTitleElement()) 14674 composeString(t, "ResearchDefinition", "title", element.getTitleElement(), -1); 14675 if (element.hasShortTitleElement()) 14676 composeString(t, "ResearchDefinition", "shortTitle", element.getShortTitleElement(), -1); 14677 if (element.hasSubtitleElement()) 14678 composeString(t, "ResearchDefinition", "subtitle", element.getSubtitleElement(), -1); 14679 if (element.hasStatusElement()) 14680 composeEnum(t, "ResearchDefinition", "status", element.getStatusElement(), -1); 14681 if (element.hasExperimentalElement()) 14682 composeBoolean(t, "ResearchDefinition", "experimental", element.getExperimentalElement(), -1); 14683 if (element.hasSubject()) 14684 composeType(t, "ResearchDefinition", "subject", element.getSubject(), -1); 14685 if (element.hasDateElement()) 14686 composeDateTime(t, "ResearchDefinition", "date", element.getDateElement(), -1); 14687 if (element.hasPublisherElement()) 14688 composeString(t, "ResearchDefinition", "publisher", element.getPublisherElement(), -1); 14689 for (int i = 0; i < element.getContact().size(); i++) 14690 composeContactDetail(t, "ResearchDefinition", "contact", element.getContact().get(i), i); 14691 if (element.hasDescriptionElement()) 14692 composeMarkdown(t, "ResearchDefinition", "description", element.getDescriptionElement(), -1); 14693 for (int i = 0; i < element.getComment().size(); i++) 14694 composeString(t, "ResearchDefinition", "comment", element.getComment().get(i), i); 14695 for (int i = 0; i < element.getUseContext().size(); i++) 14696 composeUsageContext(t, "ResearchDefinition", "useContext", element.getUseContext().get(i), i); 14697 for (int i = 0; i < element.getJurisdiction().size(); i++) 14698 composeCodeableConcept(t, "ResearchDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 14699 if (element.hasPurposeElement()) 14700 composeMarkdown(t, "ResearchDefinition", "purpose", element.getPurposeElement(), -1); 14701 if (element.hasUsageElement()) 14702 composeString(t, "ResearchDefinition", "usage", element.getUsageElement(), -1); 14703 if (element.hasCopyrightElement()) 14704 composeMarkdown(t, "ResearchDefinition", "copyright", element.getCopyrightElement(), -1); 14705 if (element.hasApprovalDateElement()) 14706 composeDate(t, "ResearchDefinition", "approvalDate", element.getApprovalDateElement(), -1); 14707 if (element.hasLastReviewDateElement()) 14708 composeDate(t, "ResearchDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 14709 if (element.hasEffectivePeriod()) 14710 composePeriod(t, "ResearchDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 14711 for (int i = 0; i < element.getTopic().size(); i++) 14712 composeCodeableConcept(t, "ResearchDefinition", "topic", element.getTopic().get(i), i); 14713 for (int i = 0; i < element.getAuthor().size(); i++) 14714 composeContactDetail(t, "ResearchDefinition", "author", element.getAuthor().get(i), i); 14715 for (int i = 0; i < element.getEditor().size(); i++) 14716 composeContactDetail(t, "ResearchDefinition", "editor", element.getEditor().get(i), i); 14717 for (int i = 0; i < element.getReviewer().size(); i++) 14718 composeContactDetail(t, "ResearchDefinition", "reviewer", element.getReviewer().get(i), i); 14719 for (int i = 0; i < element.getEndorser().size(); i++) 14720 composeContactDetail(t, "ResearchDefinition", "endorser", element.getEndorser().get(i), i); 14721 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 14722 composeRelatedArtifact(t, "ResearchDefinition", "relatedArtifact", element.getRelatedArtifact().get(i), i); 14723 for (int i = 0; i < element.getLibrary().size(); i++) 14724 composeCanonical(t, "ResearchDefinition", "library", element.getLibrary().get(i), i); 14725 if (element.hasPopulation()) 14726 composeReference(t, "ResearchDefinition", "population", element.getPopulation(), -1); 14727 if (element.hasExposure()) 14728 composeReference(t, "ResearchDefinition", "exposure", element.getExposure(), -1); 14729 if (element.hasExposureAlternative()) 14730 composeReference(t, "ResearchDefinition", "exposureAlternative", element.getExposureAlternative(), -1); 14731 if (element.hasOutcome()) 14732 composeReference(t, "ResearchDefinition", "outcome", element.getOutcome(), -1); 14733 } 14734 14735 protected void composeResearchElementDefinition(Complex parent, String parentType, String name, 14736 ResearchElementDefinition element, int index) { 14737 if (element == null) 14738 return; 14739 Complex t; 14740 if (Utilities.noString(parentType)) 14741 t = parent; 14742 else { 14743 t = parent.predicate("fhir:" + parentType + '.' + name); 14744 } 14745 composeDomainResource(t, "ResearchElementDefinition", name, element, index); 14746 if (element.hasUrlElement()) 14747 composeUri(t, "ResearchElementDefinition", "url", element.getUrlElement(), -1); 14748 for (int i = 0; i < element.getIdentifier().size(); i++) 14749 composeIdentifier(t, "ResearchElementDefinition", "identifier", element.getIdentifier().get(i), i); 14750 if (element.hasVersionElement()) 14751 composeString(t, "ResearchElementDefinition", "version", element.getVersionElement(), -1); 14752 if (element.hasNameElement()) 14753 composeString(t, "ResearchElementDefinition", "name", element.getNameElement(), -1); 14754 if (element.hasTitleElement()) 14755 composeString(t, "ResearchElementDefinition", "title", element.getTitleElement(), -1); 14756 if (element.hasShortTitleElement()) 14757 composeString(t, "ResearchElementDefinition", "shortTitle", element.getShortTitleElement(), -1); 14758 if (element.hasSubtitleElement()) 14759 composeString(t, "ResearchElementDefinition", "subtitle", element.getSubtitleElement(), -1); 14760 if (element.hasStatusElement()) 14761 composeEnum(t, "ResearchElementDefinition", "status", element.getStatusElement(), -1); 14762 if (element.hasExperimentalElement()) 14763 composeBoolean(t, "ResearchElementDefinition", "experimental", element.getExperimentalElement(), -1); 14764 if (element.hasSubject()) 14765 composeType(t, "ResearchElementDefinition", "subject", element.getSubject(), -1); 14766 if (element.hasDateElement()) 14767 composeDateTime(t, "ResearchElementDefinition", "date", element.getDateElement(), -1); 14768 if (element.hasPublisherElement()) 14769 composeString(t, "ResearchElementDefinition", "publisher", element.getPublisherElement(), -1); 14770 for (int i = 0; i < element.getContact().size(); i++) 14771 composeContactDetail(t, "ResearchElementDefinition", "contact", element.getContact().get(i), i); 14772 if (element.hasDescriptionElement()) 14773 composeMarkdown(t, "ResearchElementDefinition", "description", element.getDescriptionElement(), -1); 14774 for (int i = 0; i < element.getComment().size(); i++) 14775 composeString(t, "ResearchElementDefinition", "comment", element.getComment().get(i), i); 14776 for (int i = 0; i < element.getUseContext().size(); i++) 14777 composeUsageContext(t, "ResearchElementDefinition", "useContext", element.getUseContext().get(i), i); 14778 for (int i = 0; i < element.getJurisdiction().size(); i++) 14779 composeCodeableConcept(t, "ResearchElementDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 14780 if (element.hasPurposeElement()) 14781 composeMarkdown(t, "ResearchElementDefinition", "purpose", element.getPurposeElement(), -1); 14782 if (element.hasUsageElement()) 14783 composeString(t, "ResearchElementDefinition", "usage", element.getUsageElement(), -1); 14784 if (element.hasCopyrightElement()) 14785 composeMarkdown(t, "ResearchElementDefinition", "copyright", element.getCopyrightElement(), -1); 14786 if (element.hasApprovalDateElement()) 14787 composeDate(t, "ResearchElementDefinition", "approvalDate", element.getApprovalDateElement(), -1); 14788 if (element.hasLastReviewDateElement()) 14789 composeDate(t, "ResearchElementDefinition", "lastReviewDate", element.getLastReviewDateElement(), -1); 14790 if (element.hasEffectivePeriod()) 14791 composePeriod(t, "ResearchElementDefinition", "effectivePeriod", element.getEffectivePeriod(), -1); 14792 for (int i = 0; i < element.getTopic().size(); i++) 14793 composeCodeableConcept(t, "ResearchElementDefinition", "topic", element.getTopic().get(i), i); 14794 for (int i = 0; i < element.getAuthor().size(); i++) 14795 composeContactDetail(t, "ResearchElementDefinition", "author", element.getAuthor().get(i), i); 14796 for (int i = 0; i < element.getEditor().size(); i++) 14797 composeContactDetail(t, "ResearchElementDefinition", "editor", element.getEditor().get(i), i); 14798 for (int i = 0; i < element.getReviewer().size(); i++) 14799 composeContactDetail(t, "ResearchElementDefinition", "reviewer", element.getReviewer().get(i), i); 14800 for (int i = 0; i < element.getEndorser().size(); i++) 14801 composeContactDetail(t, "ResearchElementDefinition", "endorser", element.getEndorser().get(i), i); 14802 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 14803 composeRelatedArtifact(t, "ResearchElementDefinition", "relatedArtifact", element.getRelatedArtifact().get(i), i); 14804 for (int i = 0; i < element.getLibrary().size(); i++) 14805 composeCanonical(t, "ResearchElementDefinition", "library", element.getLibrary().get(i), i); 14806 if (element.hasTypeElement()) 14807 composeEnum(t, "ResearchElementDefinition", "type", element.getTypeElement(), -1); 14808 if (element.hasVariableTypeElement()) 14809 composeEnum(t, "ResearchElementDefinition", "variableType", element.getVariableTypeElement(), -1); 14810 for (int i = 0; i < element.getCharacteristic().size(); i++) 14811 composeResearchElementDefinitionResearchElementDefinitionCharacteristicComponent(t, "ResearchElementDefinition", 14812 "characteristic", element.getCharacteristic().get(i), i); 14813 } 14814 14815 protected void composeResearchElementDefinitionResearchElementDefinitionCharacteristicComponent(Complex parent, 14816 String parentType, String name, 14817 ResearchElementDefinition.ResearchElementDefinitionCharacteristicComponent element, int index) { 14818 if (element == null) 14819 return; 14820 Complex t; 14821 if (Utilities.noString(parentType)) 14822 t = parent; 14823 else { 14824 t = parent.predicate("fhir:" + parentType + '.' + name); 14825 } 14826 composeBackboneElement(t, "characteristic", name, element, index); 14827 if (element.hasDefinition()) 14828 composeType(t, "ResearchElementDefinition", "definition", element.getDefinition(), -1); 14829 for (int i = 0; i < element.getUsageContext().size(); i++) 14830 composeUsageContext(t, "ResearchElementDefinition", "usageContext", element.getUsageContext().get(i), i); 14831 if (element.hasExcludeElement()) 14832 composeBoolean(t, "ResearchElementDefinition", "exclude", element.getExcludeElement(), -1); 14833 if (element.hasUnitOfMeasure()) 14834 composeCodeableConcept(t, "ResearchElementDefinition", "unitOfMeasure", element.getUnitOfMeasure(), -1); 14835 if (element.hasStudyEffectiveDescriptionElement()) 14836 composeString(t, "ResearchElementDefinition", "studyEffectiveDescription", 14837 element.getStudyEffectiveDescriptionElement(), -1); 14838 if (element.hasStudyEffective()) 14839 composeType(t, "ResearchElementDefinition", "studyEffective", element.getStudyEffective(), -1); 14840 if (element.hasStudyEffectiveTimeFromStart()) 14841 composeDuration(t, "ResearchElementDefinition", "studyEffectiveTimeFromStart", 14842 element.getStudyEffectiveTimeFromStart(), -1); 14843 if (element.hasStudyEffectiveGroupMeasureElement()) 14844 composeEnum(t, "ResearchElementDefinition", "studyEffectiveGroupMeasure", 14845 element.getStudyEffectiveGroupMeasureElement(), -1); 14846 if (element.hasParticipantEffectiveDescriptionElement()) 14847 composeString(t, "ResearchElementDefinition", "participantEffectiveDescription", 14848 element.getParticipantEffectiveDescriptionElement(), -1); 14849 if (element.hasParticipantEffective()) 14850 composeType(t, "ResearchElementDefinition", "participantEffective", element.getParticipantEffective(), -1); 14851 if (element.hasParticipantEffectiveTimeFromStart()) 14852 composeDuration(t, "ResearchElementDefinition", "participantEffectiveTimeFromStart", 14853 element.getParticipantEffectiveTimeFromStart(), -1); 14854 if (element.hasParticipantEffectiveGroupMeasureElement()) 14855 composeEnum(t, "ResearchElementDefinition", "participantEffectiveGroupMeasure", 14856 element.getParticipantEffectiveGroupMeasureElement(), -1); 14857 } 14858 14859 protected void composeResearchStudy(Complex parent, String parentType, String name, ResearchStudy element, 14860 int index) { 14861 if (element == null) 14862 return; 14863 Complex t; 14864 if (Utilities.noString(parentType)) 14865 t = parent; 14866 else { 14867 t = parent.predicate("fhir:" + parentType + '.' + name); 14868 } 14869 composeDomainResource(t, "ResearchStudy", name, element, index); 14870 for (int i = 0; i < element.getIdentifier().size(); i++) 14871 composeIdentifier(t, "ResearchStudy", "identifier", element.getIdentifier().get(i), i); 14872 if (element.hasTitleElement()) 14873 composeString(t, "ResearchStudy", "title", element.getTitleElement(), -1); 14874 for (int i = 0; i < element.getProtocol().size(); i++) 14875 composeReference(t, "ResearchStudy", "protocol", element.getProtocol().get(i), i); 14876 for (int i = 0; i < element.getPartOf().size(); i++) 14877 composeReference(t, "ResearchStudy", "partOf", element.getPartOf().get(i), i); 14878 if (element.hasStatusElement()) 14879 composeEnum(t, "ResearchStudy", "status", element.getStatusElement(), -1); 14880 if (element.hasPrimaryPurposeType()) 14881 composeCodeableConcept(t, "ResearchStudy", "primaryPurposeType", element.getPrimaryPurposeType(), -1); 14882 if (element.hasPhase()) 14883 composeCodeableConcept(t, "ResearchStudy", "phase", element.getPhase(), -1); 14884 for (int i = 0; i < element.getCategory().size(); i++) 14885 composeCodeableConcept(t, "ResearchStudy", "category", element.getCategory().get(i), i); 14886 for (int i = 0; i < element.getFocus().size(); i++) 14887 composeCodeableConcept(t, "ResearchStudy", "focus", element.getFocus().get(i), i); 14888 for (int i = 0; i < element.getCondition().size(); i++) 14889 composeCodeableConcept(t, "ResearchStudy", "condition", element.getCondition().get(i), i); 14890 for (int i = 0; i < element.getContact().size(); i++) 14891 composeContactDetail(t, "ResearchStudy", "contact", element.getContact().get(i), i); 14892 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 14893 composeRelatedArtifact(t, "ResearchStudy", "relatedArtifact", element.getRelatedArtifact().get(i), i); 14894 for (int i = 0; i < element.getKeyword().size(); i++) 14895 composeCodeableConcept(t, "ResearchStudy", "keyword", element.getKeyword().get(i), i); 14896 for (int i = 0; i < element.getLocation().size(); i++) 14897 composeCodeableConcept(t, "ResearchStudy", "location", element.getLocation().get(i), i); 14898 if (element.hasDescriptionElement()) 14899 composeMarkdown(t, "ResearchStudy", "description", element.getDescriptionElement(), -1); 14900 for (int i = 0; i < element.getEnrollment().size(); i++) 14901 composeReference(t, "ResearchStudy", "enrollment", element.getEnrollment().get(i), i); 14902 if (element.hasPeriod()) 14903 composePeriod(t, "ResearchStudy", "period", element.getPeriod(), -1); 14904 if (element.hasSponsor()) 14905 composeReference(t, "ResearchStudy", "sponsor", element.getSponsor(), -1); 14906 if (element.hasPrincipalInvestigator()) 14907 composeReference(t, "ResearchStudy", "principalInvestigator", element.getPrincipalInvestigator(), -1); 14908 for (int i = 0; i < element.getSite().size(); i++) 14909 composeReference(t, "ResearchStudy", "site", element.getSite().get(i), i); 14910 if (element.hasReasonStopped()) 14911 composeCodeableConcept(t, "ResearchStudy", "reasonStopped", element.getReasonStopped(), -1); 14912 for (int i = 0; i < element.getNote().size(); i++) 14913 composeAnnotation(t, "ResearchStudy", "note", element.getNote().get(i), i); 14914 for (int i = 0; i < element.getArm().size(); i++) 14915 composeResearchStudyResearchStudyArmComponent(t, "ResearchStudy", "arm", element.getArm().get(i), i); 14916 for (int i = 0; i < element.getObjective().size(); i++) 14917 composeResearchStudyResearchStudyObjectiveComponent(t, "ResearchStudy", "objective", 14918 element.getObjective().get(i), i); 14919 } 14920 14921 protected void composeResearchStudyResearchStudyArmComponent(Complex parent, String parentType, String name, 14922 ResearchStudy.ResearchStudyArmComponent element, int index) { 14923 if (element == null) 14924 return; 14925 Complex t; 14926 if (Utilities.noString(parentType)) 14927 t = parent; 14928 else { 14929 t = parent.predicate("fhir:" + parentType + '.' + name); 14930 } 14931 composeBackboneElement(t, "arm", name, element, index); 14932 if (element.hasNameElement()) 14933 composeString(t, "ResearchStudy", "name", element.getNameElement(), -1); 14934 if (element.hasType()) 14935 composeCodeableConcept(t, "ResearchStudy", "type", element.getType(), -1); 14936 if (element.hasDescriptionElement()) 14937 composeString(t, "ResearchStudy", "description", element.getDescriptionElement(), -1); 14938 } 14939 14940 protected void composeResearchStudyResearchStudyObjectiveComponent(Complex parent, String parentType, String name, 14941 ResearchStudy.ResearchStudyObjectiveComponent element, int index) { 14942 if (element == null) 14943 return; 14944 Complex t; 14945 if (Utilities.noString(parentType)) 14946 t = parent; 14947 else { 14948 t = parent.predicate("fhir:" + parentType + '.' + name); 14949 } 14950 composeBackboneElement(t, "objective", name, element, index); 14951 if (element.hasNameElement()) 14952 composeString(t, "ResearchStudy", "name", element.getNameElement(), -1); 14953 if (element.hasType()) 14954 composeCodeableConcept(t, "ResearchStudy", "type", element.getType(), -1); 14955 } 14956 14957 protected void composeResearchSubject(Complex parent, String parentType, String name, ResearchSubject element, 14958 int index) { 14959 if (element == null) 14960 return; 14961 Complex t; 14962 if (Utilities.noString(parentType)) 14963 t = parent; 14964 else { 14965 t = parent.predicate("fhir:" + parentType + '.' + name); 14966 } 14967 composeDomainResource(t, "ResearchSubject", name, element, index); 14968 for (int i = 0; i < element.getIdentifier().size(); i++) 14969 composeIdentifier(t, "ResearchSubject", "identifier", element.getIdentifier().get(i), i); 14970 if (element.hasStatusElement()) 14971 composeEnum(t, "ResearchSubject", "status", element.getStatusElement(), -1); 14972 if (element.hasPeriod()) 14973 composePeriod(t, "ResearchSubject", "period", element.getPeriod(), -1); 14974 if (element.hasStudy()) 14975 composeReference(t, "ResearchSubject", "study", element.getStudy(), -1); 14976 if (element.hasIndividual()) 14977 composeReference(t, "ResearchSubject", "individual", element.getIndividual(), -1); 14978 if (element.hasAssignedArmElement()) 14979 composeString(t, "ResearchSubject", "assignedArm", element.getAssignedArmElement(), -1); 14980 if (element.hasActualArmElement()) 14981 composeString(t, "ResearchSubject", "actualArm", element.getActualArmElement(), -1); 14982 if (element.hasConsent()) 14983 composeReference(t, "ResearchSubject", "consent", element.getConsent(), -1); 14984 } 14985 14986 protected void composeRiskAssessment(Complex parent, String parentType, String name, RiskAssessment element, 14987 int index) { 14988 if (element == null) 14989 return; 14990 Complex t; 14991 if (Utilities.noString(parentType)) 14992 t = parent; 14993 else { 14994 t = parent.predicate("fhir:" + parentType + '.' + name); 14995 } 14996 composeDomainResource(t, "RiskAssessment", name, element, index); 14997 for (int i = 0; i < element.getIdentifier().size(); i++) 14998 composeIdentifier(t, "RiskAssessment", "identifier", element.getIdentifier().get(i), i); 14999 if (element.hasBasedOn()) 15000 composeReference(t, "RiskAssessment", "basedOn", element.getBasedOn(), -1); 15001 if (element.hasParent()) 15002 composeReference(t, "RiskAssessment", "parent", element.getParent(), -1); 15003 if (element.hasStatusElement()) 15004 composeEnum(t, "RiskAssessment", "status", element.getStatusElement(), -1); 15005 if (element.hasMethod()) 15006 composeCodeableConcept(t, "RiskAssessment", "method", element.getMethod(), -1); 15007 if (element.hasCode()) 15008 composeCodeableConcept(t, "RiskAssessment", "code", element.getCode(), -1); 15009 if (element.hasSubject()) 15010 composeReference(t, "RiskAssessment", "subject", element.getSubject(), -1); 15011 if (element.hasEncounter()) 15012 composeReference(t, "RiskAssessment", "encounter", element.getEncounter(), -1); 15013 if (element.hasOccurrence()) 15014 composeType(t, "RiskAssessment", "occurrence", element.getOccurrence(), -1); 15015 if (element.hasCondition()) 15016 composeReference(t, "RiskAssessment", "condition", element.getCondition(), -1); 15017 if (element.hasPerformer()) 15018 composeReference(t, "RiskAssessment", "performer", element.getPerformer(), -1); 15019 for (int i = 0; i < element.getReasonCode().size(); i++) 15020 composeCodeableConcept(t, "RiskAssessment", "reasonCode", element.getReasonCode().get(i), i); 15021 for (int i = 0; i < element.getReasonReference().size(); i++) 15022 composeReference(t, "RiskAssessment", "reasonReference", element.getReasonReference().get(i), i); 15023 for (int i = 0; i < element.getBasis().size(); i++) 15024 composeReference(t, "RiskAssessment", "basis", element.getBasis().get(i), i); 15025 for (int i = 0; i < element.getPrediction().size(); i++) 15026 composeRiskAssessmentRiskAssessmentPredictionComponent(t, "RiskAssessment", "prediction", 15027 element.getPrediction().get(i), i); 15028 if (element.hasMitigationElement()) 15029 composeString(t, "RiskAssessment", "mitigation", element.getMitigationElement(), -1); 15030 for (int i = 0; i < element.getNote().size(); i++) 15031 composeAnnotation(t, "RiskAssessment", "note", element.getNote().get(i), i); 15032 } 15033 15034 protected void composeRiskAssessmentRiskAssessmentPredictionComponent(Complex parent, String parentType, String name, 15035 RiskAssessment.RiskAssessmentPredictionComponent element, int index) { 15036 if (element == null) 15037 return; 15038 Complex t; 15039 if (Utilities.noString(parentType)) 15040 t = parent; 15041 else { 15042 t = parent.predicate("fhir:" + parentType + '.' + name); 15043 } 15044 composeBackboneElement(t, "prediction", name, element, index); 15045 if (element.hasOutcome()) 15046 composeCodeableConcept(t, "RiskAssessment", "outcome", element.getOutcome(), -1); 15047 if (element.hasProbability()) 15048 composeType(t, "RiskAssessment", "probability", element.getProbability(), -1); 15049 if (element.hasQualitativeRisk()) 15050 composeCodeableConcept(t, "RiskAssessment", "qualitativeRisk", element.getQualitativeRisk(), -1); 15051 if (element.hasRelativeRiskElement()) 15052 composeDecimal(t, "RiskAssessment", "relativeRisk", element.getRelativeRiskElement(), -1); 15053 if (element.hasWhen()) 15054 composeType(t, "RiskAssessment", "when", element.getWhen(), -1); 15055 if (element.hasRationaleElement()) 15056 composeString(t, "RiskAssessment", "rationale", element.getRationaleElement(), -1); 15057 } 15058 15059 protected void composeRiskEvidenceSynthesis(Complex parent, String parentType, String name, 15060 RiskEvidenceSynthesis element, int index) { 15061 if (element == null) 15062 return; 15063 Complex t; 15064 if (Utilities.noString(parentType)) 15065 t = parent; 15066 else { 15067 t = parent.predicate("fhir:" + parentType + '.' + name); 15068 } 15069 composeDomainResource(t, "RiskEvidenceSynthesis", name, element, index); 15070 if (element.hasUrlElement()) 15071 composeUri(t, "RiskEvidenceSynthesis", "url", element.getUrlElement(), -1); 15072 for (int i = 0; i < element.getIdentifier().size(); i++) 15073 composeIdentifier(t, "RiskEvidenceSynthesis", "identifier", element.getIdentifier().get(i), i); 15074 if (element.hasVersionElement()) 15075 composeString(t, "RiskEvidenceSynthesis", "version", element.getVersionElement(), -1); 15076 if (element.hasNameElement()) 15077 composeString(t, "RiskEvidenceSynthesis", "name", element.getNameElement(), -1); 15078 if (element.hasTitleElement()) 15079 composeString(t, "RiskEvidenceSynthesis", "title", element.getTitleElement(), -1); 15080 if (element.hasStatusElement()) 15081 composeEnum(t, "RiskEvidenceSynthesis", "status", element.getStatusElement(), -1); 15082 if (element.hasDateElement()) 15083 composeDateTime(t, "RiskEvidenceSynthesis", "date", element.getDateElement(), -1); 15084 if (element.hasPublisherElement()) 15085 composeString(t, "RiskEvidenceSynthesis", "publisher", element.getPublisherElement(), -1); 15086 for (int i = 0; i < element.getContact().size(); i++) 15087 composeContactDetail(t, "RiskEvidenceSynthesis", "contact", element.getContact().get(i), i); 15088 if (element.hasDescriptionElement()) 15089 composeMarkdown(t, "RiskEvidenceSynthesis", "description", element.getDescriptionElement(), -1); 15090 for (int i = 0; i < element.getNote().size(); i++) 15091 composeAnnotation(t, "RiskEvidenceSynthesis", "note", element.getNote().get(i), i); 15092 for (int i = 0; i < element.getUseContext().size(); i++) 15093 composeUsageContext(t, "RiskEvidenceSynthesis", "useContext", element.getUseContext().get(i), i); 15094 for (int i = 0; i < element.getJurisdiction().size(); i++) 15095 composeCodeableConcept(t, "RiskEvidenceSynthesis", "jurisdiction", element.getJurisdiction().get(i), i); 15096 if (element.hasCopyrightElement()) 15097 composeMarkdown(t, "RiskEvidenceSynthesis", "copyright", element.getCopyrightElement(), -1); 15098 if (element.hasApprovalDateElement()) 15099 composeDate(t, "RiskEvidenceSynthesis", "approvalDate", element.getApprovalDateElement(), -1); 15100 if (element.hasLastReviewDateElement()) 15101 composeDate(t, "RiskEvidenceSynthesis", "lastReviewDate", element.getLastReviewDateElement(), -1); 15102 if (element.hasEffectivePeriod()) 15103 composePeriod(t, "RiskEvidenceSynthesis", "effectivePeriod", element.getEffectivePeriod(), -1); 15104 for (int i = 0; i < element.getTopic().size(); i++) 15105 composeCodeableConcept(t, "RiskEvidenceSynthesis", "topic", element.getTopic().get(i), i); 15106 for (int i = 0; i < element.getAuthor().size(); i++) 15107 composeContactDetail(t, "RiskEvidenceSynthesis", "author", element.getAuthor().get(i), i); 15108 for (int i = 0; i < element.getEditor().size(); i++) 15109 composeContactDetail(t, "RiskEvidenceSynthesis", "editor", element.getEditor().get(i), i); 15110 for (int i = 0; i < element.getReviewer().size(); i++) 15111 composeContactDetail(t, "RiskEvidenceSynthesis", "reviewer", element.getReviewer().get(i), i); 15112 for (int i = 0; i < element.getEndorser().size(); i++) 15113 composeContactDetail(t, "RiskEvidenceSynthesis", "endorser", element.getEndorser().get(i), i); 15114 for (int i = 0; i < element.getRelatedArtifact().size(); i++) 15115 composeRelatedArtifact(t, "RiskEvidenceSynthesis", "relatedArtifact", element.getRelatedArtifact().get(i), i); 15116 if (element.hasSynthesisType()) 15117 composeCodeableConcept(t, "RiskEvidenceSynthesis", "synthesisType", element.getSynthesisType(), -1); 15118 if (element.hasStudyType()) 15119 composeCodeableConcept(t, "RiskEvidenceSynthesis", "studyType", element.getStudyType(), -1); 15120 if (element.hasPopulation()) 15121 composeReference(t, "RiskEvidenceSynthesis", "population", element.getPopulation(), -1); 15122 if (element.hasExposure()) 15123 composeReference(t, "RiskEvidenceSynthesis", "exposure", element.getExposure(), -1); 15124 if (element.hasOutcome()) 15125 composeReference(t, "RiskEvidenceSynthesis", "outcome", element.getOutcome(), -1); 15126 if (element.hasSampleSize()) 15127 composeRiskEvidenceSynthesisRiskEvidenceSynthesisSampleSizeComponent(t, "RiskEvidenceSynthesis", "sampleSize", 15128 element.getSampleSize(), -1); 15129 if (element.hasRiskEstimate()) 15130 composeRiskEvidenceSynthesisRiskEvidenceSynthesisRiskEstimateComponent(t, "RiskEvidenceSynthesis", "riskEstimate", 15131 element.getRiskEstimate(), -1); 15132 for (int i = 0; i < element.getCertainty().size(); i++) 15133 composeRiskEvidenceSynthesisRiskEvidenceSynthesisCertaintyComponent(t, "RiskEvidenceSynthesis", "certainty", 15134 element.getCertainty().get(i), i); 15135 } 15136 15137 protected void composeRiskEvidenceSynthesisRiskEvidenceSynthesisSampleSizeComponent(Complex parent, String parentType, 15138 String name, RiskEvidenceSynthesis.RiskEvidenceSynthesisSampleSizeComponent element, int index) { 15139 if (element == null) 15140 return; 15141 Complex t; 15142 if (Utilities.noString(parentType)) 15143 t = parent; 15144 else { 15145 t = parent.predicate("fhir:" + parentType + '.' + name); 15146 } 15147 composeBackboneElement(t, "sampleSize", name, element, index); 15148 if (element.hasDescriptionElement()) 15149 composeString(t, "RiskEvidenceSynthesis", "description", element.getDescriptionElement(), -1); 15150 if (element.hasNumberOfStudiesElement()) 15151 composeInteger(t, "RiskEvidenceSynthesis", "numberOfStudies", element.getNumberOfStudiesElement(), -1); 15152 if (element.hasNumberOfParticipantsElement()) 15153 composeInteger(t, "RiskEvidenceSynthesis", "numberOfParticipants", element.getNumberOfParticipantsElement(), -1); 15154 } 15155 15156 protected void composeRiskEvidenceSynthesisRiskEvidenceSynthesisRiskEstimateComponent(Complex parent, 15157 String parentType, String name, RiskEvidenceSynthesis.RiskEvidenceSynthesisRiskEstimateComponent element, 15158 int index) { 15159 if (element == null) 15160 return; 15161 Complex t; 15162 if (Utilities.noString(parentType)) 15163 t = parent; 15164 else { 15165 t = parent.predicate("fhir:" + parentType + '.' + name); 15166 } 15167 composeBackboneElement(t, "riskEstimate", name, element, index); 15168 if (element.hasDescriptionElement()) 15169 composeString(t, "RiskEvidenceSynthesis", "description", element.getDescriptionElement(), -1); 15170 if (element.hasType()) 15171 composeCodeableConcept(t, "RiskEvidenceSynthesis", "type", element.getType(), -1); 15172 if (element.hasValueElement()) 15173 composeDecimal(t, "RiskEvidenceSynthesis", "value", element.getValueElement(), -1); 15174 if (element.hasUnitOfMeasure()) 15175 composeCodeableConcept(t, "RiskEvidenceSynthesis", "unitOfMeasure", element.getUnitOfMeasure(), -1); 15176 if (element.hasDenominatorCountElement()) 15177 composeInteger(t, "RiskEvidenceSynthesis", "denominatorCount", element.getDenominatorCountElement(), -1); 15178 if (element.hasNumeratorCountElement()) 15179 composeInteger(t, "RiskEvidenceSynthesis", "numeratorCount", element.getNumeratorCountElement(), -1); 15180 for (int i = 0; i < element.getPrecisionEstimate().size(); i++) 15181 composeRiskEvidenceSynthesisRiskEvidenceSynthesisRiskEstimatePrecisionEstimateComponent(t, 15182 "RiskEvidenceSynthesis", "precisionEstimate", element.getPrecisionEstimate().get(i), i); 15183 } 15184 15185 protected void composeRiskEvidenceSynthesisRiskEvidenceSynthesisRiskEstimatePrecisionEstimateComponent(Complex parent, 15186 String parentType, String name, 15187 RiskEvidenceSynthesis.RiskEvidenceSynthesisRiskEstimatePrecisionEstimateComponent element, int index) { 15188 if (element == null) 15189 return; 15190 Complex t; 15191 if (Utilities.noString(parentType)) 15192 t = parent; 15193 else { 15194 t = parent.predicate("fhir:" + parentType + '.' + name); 15195 } 15196 composeBackboneElement(t, "precisionEstimate", name, element, index); 15197 if (element.hasType()) 15198 composeCodeableConcept(t, "RiskEvidenceSynthesis", "type", element.getType(), -1); 15199 if (element.hasLevelElement()) 15200 composeDecimal(t, "RiskEvidenceSynthesis", "level", element.getLevelElement(), -1); 15201 if (element.hasFromElement()) 15202 composeDecimal(t, "RiskEvidenceSynthesis", "from", element.getFromElement(), -1); 15203 if (element.hasToElement()) 15204 composeDecimal(t, "RiskEvidenceSynthesis", "to", element.getToElement(), -1); 15205 } 15206 15207 protected void composeRiskEvidenceSynthesisRiskEvidenceSynthesisCertaintyComponent(Complex parent, String parentType, 15208 String name, RiskEvidenceSynthesis.RiskEvidenceSynthesisCertaintyComponent element, int index) { 15209 if (element == null) 15210 return; 15211 Complex t; 15212 if (Utilities.noString(parentType)) 15213 t = parent; 15214 else { 15215 t = parent.predicate("fhir:" + parentType + '.' + name); 15216 } 15217 composeBackboneElement(t, "certainty", name, element, index); 15218 for (int i = 0; i < element.getRating().size(); i++) 15219 composeCodeableConcept(t, "RiskEvidenceSynthesis", "rating", element.getRating().get(i), i); 15220 for (int i = 0; i < element.getNote().size(); i++) 15221 composeAnnotation(t, "RiskEvidenceSynthesis", "note", element.getNote().get(i), i); 15222 for (int i = 0; i < element.getCertaintySubcomponent().size(); i++) 15223 composeRiskEvidenceSynthesisRiskEvidenceSynthesisCertaintyCertaintySubcomponentComponent(t, 15224 "RiskEvidenceSynthesis", "certaintySubcomponent", element.getCertaintySubcomponent().get(i), i); 15225 } 15226 15227 protected void composeRiskEvidenceSynthesisRiskEvidenceSynthesisCertaintyCertaintySubcomponentComponent( 15228 Complex parent, String parentType, String name, 15229 RiskEvidenceSynthesis.RiskEvidenceSynthesisCertaintyCertaintySubcomponentComponent element, int index) { 15230 if (element == null) 15231 return; 15232 Complex t; 15233 if (Utilities.noString(parentType)) 15234 t = parent; 15235 else { 15236 t = parent.predicate("fhir:" + parentType + '.' + name); 15237 } 15238 composeBackboneElement(t, "certaintySubcomponent", name, element, index); 15239 if (element.hasType()) 15240 composeCodeableConcept(t, "RiskEvidenceSynthesis", "type", element.getType(), -1); 15241 for (int i = 0; i < element.getRating().size(); i++) 15242 composeCodeableConcept(t, "RiskEvidenceSynthesis", "rating", element.getRating().get(i), i); 15243 for (int i = 0; i < element.getNote().size(); i++) 15244 composeAnnotation(t, "RiskEvidenceSynthesis", "note", element.getNote().get(i), i); 15245 } 15246 15247 protected void composeSchedule(Complex parent, String parentType, String name, Schedule element, int index) { 15248 if (element == null) 15249 return; 15250 Complex t; 15251 if (Utilities.noString(parentType)) 15252 t = parent; 15253 else { 15254 t = parent.predicate("fhir:" + parentType + '.' + name); 15255 } 15256 composeDomainResource(t, "Schedule", name, element, index); 15257 for (int i = 0; i < element.getIdentifier().size(); i++) 15258 composeIdentifier(t, "Schedule", "identifier", element.getIdentifier().get(i), i); 15259 if (element.hasActiveElement()) 15260 composeBoolean(t, "Schedule", "active", element.getActiveElement(), -1); 15261 for (int i = 0; i < element.getServiceCategory().size(); i++) 15262 composeCodeableConcept(t, "Schedule", "serviceCategory", element.getServiceCategory().get(i), i); 15263 for (int i = 0; i < element.getServiceType().size(); i++) 15264 composeCodeableConcept(t, "Schedule", "serviceType", element.getServiceType().get(i), i); 15265 for (int i = 0; i < element.getSpecialty().size(); i++) 15266 composeCodeableConcept(t, "Schedule", "specialty", element.getSpecialty().get(i), i); 15267 for (int i = 0; i < element.getActor().size(); i++) 15268 composeReference(t, "Schedule", "actor", element.getActor().get(i), i); 15269 if (element.hasPlanningHorizon()) 15270 composePeriod(t, "Schedule", "planningHorizon", element.getPlanningHorizon(), -1); 15271 if (element.hasCommentElement()) 15272 composeString(t, "Schedule", "comment", element.getCommentElement(), -1); 15273 } 15274 15275 protected void composeSearchParameter(Complex parent, String parentType, String name, SearchParameter element, 15276 int index) { 15277 if (element == null) 15278 return; 15279 Complex t; 15280 if (Utilities.noString(parentType)) 15281 t = parent; 15282 else { 15283 t = parent.predicate("fhir:" + parentType + '.' + name); 15284 } 15285 composeDomainResource(t, "SearchParameter", name, element, index); 15286 if (element.hasUrlElement()) 15287 composeUri(t, "SearchParameter", "url", element.getUrlElement(), -1); 15288 if (element.hasVersionElement()) 15289 composeString(t, "SearchParameter", "version", element.getVersionElement(), -1); 15290 if (element.hasNameElement()) 15291 composeString(t, "SearchParameter", "name", element.getNameElement(), -1); 15292 if (element.hasDerivedFromElement()) 15293 composeCanonical(t, "SearchParameter", "derivedFrom", element.getDerivedFromElement(), -1); 15294 if (element.hasStatusElement()) 15295 composeEnum(t, "SearchParameter", "status", element.getStatusElement(), -1); 15296 if (element.hasExperimentalElement()) 15297 composeBoolean(t, "SearchParameter", "experimental", element.getExperimentalElement(), -1); 15298 if (element.hasDateElement()) 15299 composeDateTime(t, "SearchParameter", "date", element.getDateElement(), -1); 15300 if (element.hasPublisherElement()) 15301 composeString(t, "SearchParameter", "publisher", element.getPublisherElement(), -1); 15302 for (int i = 0; i < element.getContact().size(); i++) 15303 composeContactDetail(t, "SearchParameter", "contact", element.getContact().get(i), i); 15304 if (element.hasDescriptionElement()) 15305 composeMarkdown(t, "SearchParameter", "description", element.getDescriptionElement(), -1); 15306 for (int i = 0; i < element.getUseContext().size(); i++) 15307 composeUsageContext(t, "SearchParameter", "useContext", element.getUseContext().get(i), i); 15308 for (int i = 0; i < element.getJurisdiction().size(); i++) 15309 composeCodeableConcept(t, "SearchParameter", "jurisdiction", element.getJurisdiction().get(i), i); 15310 if (element.hasPurposeElement()) 15311 composeMarkdown(t, "SearchParameter", "purpose", element.getPurposeElement(), -1); 15312 if (element.hasCodeElement()) 15313 composeCode(t, "SearchParameter", "code", element.getCodeElement(), -1); 15314 for (int i = 0; i < element.getBase().size(); i++) 15315 composeCode(t, "SearchParameter", "base", element.getBase().get(i), i); 15316 if (element.hasTypeElement()) 15317 composeEnum(t, "SearchParameter", "type", element.getTypeElement(), -1); 15318 if (element.hasExpressionElement()) 15319 composeString(t, "SearchParameter", "expression", element.getExpressionElement(), -1); 15320 if (element.hasXpathElement()) 15321 composeString(t, "SearchParameter", "xpath", element.getXpathElement(), -1); 15322 if (element.hasXpathUsageElement()) 15323 composeEnum(t, "SearchParameter", "xpathUsage", element.getXpathUsageElement(), -1); 15324 for (int i = 0; i < element.getTarget().size(); i++) 15325 composeCode(t, "SearchParameter", "target", element.getTarget().get(i), i); 15326 if (element.hasMultipleOrElement()) 15327 composeBoolean(t, "SearchParameter", "multipleOr", element.getMultipleOrElement(), -1); 15328 if (element.hasMultipleAndElement()) 15329 composeBoolean(t, "SearchParameter", "multipleAnd", element.getMultipleAndElement(), -1); 15330 for (int i = 0; i < element.getComparator().size(); i++) 15331 composeEnum(t, "SearchParameter", "comparator", element.getComparator().get(i), i); 15332 for (int i = 0; i < element.getModifier().size(); i++) 15333 composeEnum(t, "SearchParameter", "modifier", element.getModifier().get(i), i); 15334 for (int i = 0; i < element.getChain().size(); i++) 15335 composeString(t, "SearchParameter", "chain", element.getChain().get(i), i); 15336 for (int i = 0; i < element.getComponent().size(); i++) 15337 composeSearchParameterSearchParameterComponentComponent(t, "SearchParameter", "component", 15338 element.getComponent().get(i), i); 15339 } 15340 15341 protected void composeSearchParameterSearchParameterComponentComponent(Complex parent, String parentType, String name, 15342 SearchParameter.SearchParameterComponentComponent element, int index) { 15343 if (element == null) 15344 return; 15345 Complex t; 15346 if (Utilities.noString(parentType)) 15347 t = parent; 15348 else { 15349 t = parent.predicate("fhir:" + parentType + '.' + name); 15350 } 15351 composeBackboneElement(t, "component", name, element, index); 15352 if (element.hasDefinitionElement()) 15353 composeCanonical(t, "SearchParameter", "definition", element.getDefinitionElement(), -1); 15354 if (element.hasExpressionElement()) 15355 composeString(t, "SearchParameter", "expression", element.getExpressionElement(), -1); 15356 } 15357 15358 protected void composeServiceRequest(Complex parent, String parentType, String name, ServiceRequest element, 15359 int index) { 15360 if (element == null) 15361 return; 15362 Complex t; 15363 if (Utilities.noString(parentType)) 15364 t = parent; 15365 else { 15366 t = parent.predicate("fhir:" + parentType + '.' + name); 15367 } 15368 composeDomainResource(t, "ServiceRequest", name, element, index); 15369 for (int i = 0; i < element.getIdentifier().size(); i++) 15370 composeIdentifier(t, "ServiceRequest", "identifier", element.getIdentifier().get(i), i); 15371 for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) 15372 composeCanonical(t, "ServiceRequest", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); 15373 for (int i = 0; i < element.getInstantiatesUri().size(); i++) 15374 composeUri(t, "ServiceRequest", "instantiatesUri", element.getInstantiatesUri().get(i), i); 15375 for (int i = 0; i < element.getBasedOn().size(); i++) 15376 composeReference(t, "ServiceRequest", "basedOn", element.getBasedOn().get(i), i); 15377 for (int i = 0; i < element.getReplaces().size(); i++) 15378 composeReference(t, "ServiceRequest", "replaces", element.getReplaces().get(i), i); 15379 if (element.hasRequisition()) 15380 composeIdentifier(t, "ServiceRequest", "requisition", element.getRequisition(), -1); 15381 if (element.hasStatusElement()) 15382 composeEnum(t, "ServiceRequest", "status", element.getStatusElement(), -1); 15383 if (element.hasIntentElement()) 15384 composeEnum(t, "ServiceRequest", "intent", element.getIntentElement(), -1); 15385 for (int i = 0; i < element.getCategory().size(); i++) 15386 composeCodeableConcept(t, "ServiceRequest", "category", element.getCategory().get(i), i); 15387 if (element.hasPriorityElement()) 15388 composeEnum(t, "ServiceRequest", "priority", element.getPriorityElement(), -1); 15389 if (element.hasDoNotPerformElement()) 15390 composeBoolean(t, "ServiceRequest", "doNotPerform", element.getDoNotPerformElement(), -1); 15391 if (element.hasCode()) 15392 composeCodeableConcept(t, "ServiceRequest", "code", element.getCode(), -1); 15393 for (int i = 0; i < element.getOrderDetail().size(); i++) 15394 composeCodeableConcept(t, "ServiceRequest", "orderDetail", element.getOrderDetail().get(i), i); 15395 if (element.hasQuantity()) 15396 composeType(t, "ServiceRequest", "quantity", element.getQuantity(), -1); 15397 if (element.hasSubject()) 15398 composeReference(t, "ServiceRequest", "subject", element.getSubject(), -1); 15399 if (element.hasEncounter()) 15400 composeReference(t, "ServiceRequest", "encounter", element.getEncounter(), -1); 15401 if (element.hasOccurrence()) 15402 composeType(t, "ServiceRequest", "occurrence", element.getOccurrence(), -1); 15403 if (element.hasAsNeeded()) 15404 composeType(t, "ServiceRequest", "asNeeded", element.getAsNeeded(), -1); 15405 if (element.hasAuthoredOnElement()) 15406 composeDateTime(t, "ServiceRequest", "authoredOn", element.getAuthoredOnElement(), -1); 15407 if (element.hasRequester()) 15408 composeReference(t, "ServiceRequest", "requester", element.getRequester(), -1); 15409 if (element.hasPerformerType()) 15410 composeCodeableConcept(t, "ServiceRequest", "performerType", element.getPerformerType(), -1); 15411 for (int i = 0; i < element.getPerformer().size(); i++) 15412 composeReference(t, "ServiceRequest", "performer", element.getPerformer().get(i), i); 15413 for (int i = 0; i < element.getLocationCode().size(); i++) 15414 composeCodeableConcept(t, "ServiceRequest", "locationCode", element.getLocationCode().get(i), i); 15415 for (int i = 0; i < element.getLocationReference().size(); i++) 15416 composeReference(t, "ServiceRequest", "locationReference", element.getLocationReference().get(i), i); 15417 for (int i = 0; i < element.getReasonCode().size(); i++) 15418 composeCodeableConcept(t, "ServiceRequest", "reasonCode", element.getReasonCode().get(i), i); 15419 for (int i = 0; i < element.getReasonReference().size(); i++) 15420 composeReference(t, "ServiceRequest", "reasonReference", element.getReasonReference().get(i), i); 15421 for (int i = 0; i < element.getInsurance().size(); i++) 15422 composeReference(t, "ServiceRequest", "insurance", element.getInsurance().get(i), i); 15423 for (int i = 0; i < element.getSupportingInfo().size(); i++) 15424 composeReference(t, "ServiceRequest", "supportingInfo", element.getSupportingInfo().get(i), i); 15425 for (int i = 0; i < element.getSpecimen().size(); i++) 15426 composeReference(t, "ServiceRequest", "specimen", element.getSpecimen().get(i), i); 15427 for (int i = 0; i < element.getBodySite().size(); i++) 15428 composeCodeableConcept(t, "ServiceRequest", "bodySite", element.getBodySite().get(i), i); 15429 for (int i = 0; i < element.getNote().size(); i++) 15430 composeAnnotation(t, "ServiceRequest", "note", element.getNote().get(i), i); 15431 if (element.hasPatientInstructionElement()) 15432 composeString(t, "ServiceRequest", "patientInstruction", element.getPatientInstructionElement(), -1); 15433 for (int i = 0; i < element.getRelevantHistory().size(); i++) 15434 composeReference(t, "ServiceRequest", "relevantHistory", element.getRelevantHistory().get(i), i); 15435 } 15436 15437 protected void composeSlot(Complex parent, String parentType, String name, Slot element, int index) { 15438 if (element == null) 15439 return; 15440 Complex t; 15441 if (Utilities.noString(parentType)) 15442 t = parent; 15443 else { 15444 t = parent.predicate("fhir:" + parentType + '.' + name); 15445 } 15446 composeDomainResource(t, "Slot", name, element, index); 15447 for (int i = 0; i < element.getIdentifier().size(); i++) 15448 composeIdentifier(t, "Slot", "identifier", element.getIdentifier().get(i), i); 15449 for (int i = 0; i < element.getServiceCategory().size(); i++) 15450 composeCodeableConcept(t, "Slot", "serviceCategory", element.getServiceCategory().get(i), i); 15451 for (int i = 0; i < element.getServiceType().size(); i++) 15452 composeCodeableConcept(t, "Slot", "serviceType", element.getServiceType().get(i), i); 15453 for (int i = 0; i < element.getSpecialty().size(); i++) 15454 composeCodeableConcept(t, "Slot", "specialty", element.getSpecialty().get(i), i); 15455 if (element.hasAppointmentType()) 15456 composeCodeableConcept(t, "Slot", "appointmentType", element.getAppointmentType(), -1); 15457 if (element.hasSchedule()) 15458 composeReference(t, "Slot", "schedule", element.getSchedule(), -1); 15459 if (element.hasStatusElement()) 15460 composeEnum(t, "Slot", "status", element.getStatusElement(), -1); 15461 if (element.hasStartElement()) 15462 composeInstant(t, "Slot", "start", element.getStartElement(), -1); 15463 if (element.hasEndElement()) 15464 composeInstant(t, "Slot", "end", element.getEndElement(), -1); 15465 if (element.hasOverbookedElement()) 15466 composeBoolean(t, "Slot", "overbooked", element.getOverbookedElement(), -1); 15467 if (element.hasCommentElement()) 15468 composeString(t, "Slot", "comment", element.getCommentElement(), -1); 15469 } 15470 15471 protected void composeSpecimen(Complex parent, String parentType, String name, Specimen element, int index) { 15472 if (element == null) 15473 return; 15474 Complex t; 15475 if (Utilities.noString(parentType)) 15476 t = parent; 15477 else { 15478 t = parent.predicate("fhir:" + parentType + '.' + name); 15479 } 15480 composeDomainResource(t, "Specimen", name, element, index); 15481 for (int i = 0; i < element.getIdentifier().size(); i++) 15482 composeIdentifier(t, "Specimen", "identifier", element.getIdentifier().get(i), i); 15483 if (element.hasAccessionIdentifier()) 15484 composeIdentifier(t, "Specimen", "accessionIdentifier", element.getAccessionIdentifier(), -1); 15485 if (element.hasStatusElement()) 15486 composeEnum(t, "Specimen", "status", element.getStatusElement(), -1); 15487 if (element.hasType()) 15488 composeCodeableConcept(t, "Specimen", "type", element.getType(), -1); 15489 if (element.hasSubject()) 15490 composeReference(t, "Specimen", "subject", element.getSubject(), -1); 15491 if (element.hasReceivedTimeElement()) 15492 composeDateTime(t, "Specimen", "receivedTime", element.getReceivedTimeElement(), -1); 15493 for (int i = 0; i < element.getParent().size(); i++) 15494 composeReference(t, "Specimen", "parent", element.getParent().get(i), i); 15495 for (int i = 0; i < element.getRequest().size(); i++) 15496 composeReference(t, "Specimen", "request", element.getRequest().get(i), i); 15497 if (element.hasCollection()) 15498 composeSpecimenSpecimenCollectionComponent(t, "Specimen", "collection", element.getCollection(), -1); 15499 for (int i = 0; i < element.getProcessing().size(); i++) 15500 composeSpecimenSpecimenProcessingComponent(t, "Specimen", "processing", element.getProcessing().get(i), i); 15501 for (int i = 0; i < element.getContainer().size(); i++) 15502 composeSpecimenSpecimenContainerComponent(t, "Specimen", "container", element.getContainer().get(i), i); 15503 for (int i = 0; i < element.getCondition().size(); i++) 15504 composeCodeableConcept(t, "Specimen", "condition", element.getCondition().get(i), i); 15505 for (int i = 0; i < element.getNote().size(); i++) 15506 composeAnnotation(t, "Specimen", "note", element.getNote().get(i), i); 15507 } 15508 15509 protected void composeSpecimenSpecimenCollectionComponent(Complex parent, String parentType, String name, 15510 Specimen.SpecimenCollectionComponent element, int index) { 15511 if (element == null) 15512 return; 15513 Complex t; 15514 if (Utilities.noString(parentType)) 15515 t = parent; 15516 else { 15517 t = parent.predicate("fhir:" + parentType + '.' + name); 15518 } 15519 composeBackboneElement(t, "collection", name, element, index); 15520 if (element.hasCollector()) 15521 composeReference(t, "Specimen", "collector", element.getCollector(), -1); 15522 if (element.hasCollected()) 15523 composeType(t, "Specimen", "collected", element.getCollected(), -1); 15524 if (element.hasDuration()) 15525 composeDuration(t, "Specimen", "duration", element.getDuration(), -1); 15526 if (element.hasQuantity()) 15527 composeQuantity(t, "Specimen", "quantity", element.getQuantity(), -1); 15528 if (element.hasMethod()) 15529 composeCodeableConcept(t, "Specimen", "method", element.getMethod(), -1); 15530 if (element.hasBodySite()) 15531 composeCodeableConcept(t, "Specimen", "bodySite", element.getBodySite(), -1); 15532 if (element.hasFastingStatus()) 15533 composeType(t, "Specimen", "fastingStatus", element.getFastingStatus(), -1); 15534 } 15535 15536 protected void composeSpecimenSpecimenProcessingComponent(Complex parent, String parentType, String name, 15537 Specimen.SpecimenProcessingComponent element, int index) { 15538 if (element == null) 15539 return; 15540 Complex t; 15541 if (Utilities.noString(parentType)) 15542 t = parent; 15543 else { 15544 t = parent.predicate("fhir:" + parentType + '.' + name); 15545 } 15546 composeBackboneElement(t, "processing", name, element, index); 15547 if (element.hasDescriptionElement()) 15548 composeString(t, "Specimen", "description", element.getDescriptionElement(), -1); 15549 if (element.hasProcedure()) 15550 composeCodeableConcept(t, "Specimen", "procedure", element.getProcedure(), -1); 15551 for (int i = 0; i < element.getAdditive().size(); i++) 15552 composeReference(t, "Specimen", "additive", element.getAdditive().get(i), i); 15553 if (element.hasTime()) 15554 composeType(t, "Specimen", "time", element.getTime(), -1); 15555 } 15556 15557 protected void composeSpecimenSpecimenContainerComponent(Complex parent, String parentType, String name, 15558 Specimen.SpecimenContainerComponent element, int index) { 15559 if (element == null) 15560 return; 15561 Complex t; 15562 if (Utilities.noString(parentType)) 15563 t = parent; 15564 else { 15565 t = parent.predicate("fhir:" + parentType + '.' + name); 15566 } 15567 composeBackboneElement(t, "container", name, element, index); 15568 for (int i = 0; i < element.getIdentifier().size(); i++) 15569 composeIdentifier(t, "Specimen", "identifier", element.getIdentifier().get(i), i); 15570 if (element.hasDescriptionElement()) 15571 composeString(t, "Specimen", "description", element.getDescriptionElement(), -1); 15572 if (element.hasType()) 15573 composeCodeableConcept(t, "Specimen", "type", element.getType(), -1); 15574 if (element.hasCapacity()) 15575 composeQuantity(t, "Specimen", "capacity", element.getCapacity(), -1); 15576 if (element.hasSpecimenQuantity()) 15577 composeQuantity(t, "Specimen", "specimenQuantity", element.getSpecimenQuantity(), -1); 15578 if (element.hasAdditive()) 15579 composeType(t, "Specimen", "additive", element.getAdditive(), -1); 15580 } 15581 15582 protected void composeSpecimenDefinition(Complex parent, String parentType, String name, SpecimenDefinition element, 15583 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:" + parentType + '.' + name); 15591 } 15592 composeDomainResource(t, "SpecimenDefinition", name, element, index); 15593 if (element.hasIdentifier()) 15594 composeIdentifier(t, "SpecimenDefinition", "identifier", element.getIdentifier(), -1); 15595 if (element.hasTypeCollected()) 15596 composeCodeableConcept(t, "SpecimenDefinition", "typeCollected", element.getTypeCollected(), -1); 15597 for (int i = 0; i < element.getPatientPreparation().size(); i++) 15598 composeCodeableConcept(t, "SpecimenDefinition", "patientPreparation", element.getPatientPreparation().get(i), i); 15599 if (element.hasTimeAspectElement()) 15600 composeString(t, "SpecimenDefinition", "timeAspect", element.getTimeAspectElement(), -1); 15601 for (int i = 0; i < element.getCollection().size(); i++) 15602 composeCodeableConcept(t, "SpecimenDefinition", "collection", element.getCollection().get(i), i); 15603 for (int i = 0; i < element.getTypeTested().size(); i++) 15604 composeSpecimenDefinitionSpecimenDefinitionTypeTestedComponent(t, "SpecimenDefinition", "typeTested", 15605 element.getTypeTested().get(i), i); 15606 } 15607 15608 protected void composeSpecimenDefinitionSpecimenDefinitionTypeTestedComponent(Complex parent, String parentType, 15609 String name, SpecimenDefinition.SpecimenDefinitionTypeTestedComponent element, int index) { 15610 if (element == null) 15611 return; 15612 Complex t; 15613 if (Utilities.noString(parentType)) 15614 t = parent; 15615 else { 15616 t = parent.predicate("fhir:" + parentType + '.' + name); 15617 } 15618 composeBackboneElement(t, "typeTested", name, element, index); 15619 if (element.hasIsDerivedElement()) 15620 composeBoolean(t, "SpecimenDefinition", "isDerived", element.getIsDerivedElement(), -1); 15621 if (element.hasType()) 15622 composeCodeableConcept(t, "SpecimenDefinition", "type", element.getType(), -1); 15623 if (element.hasPreferenceElement()) 15624 composeEnum(t, "SpecimenDefinition", "preference", element.getPreferenceElement(), -1); 15625 if (element.hasContainer()) 15626 composeSpecimenDefinitionSpecimenDefinitionTypeTestedContainerComponent(t, "SpecimenDefinition", "container", 15627 element.getContainer(), -1); 15628 if (element.hasRequirementElement()) 15629 composeString(t, "SpecimenDefinition", "requirement", element.getRequirementElement(), -1); 15630 if (element.hasRetentionTime()) 15631 composeDuration(t, "SpecimenDefinition", "retentionTime", element.getRetentionTime(), -1); 15632 for (int i = 0; i < element.getRejectionCriterion().size(); i++) 15633 composeCodeableConcept(t, "SpecimenDefinition", "rejectionCriterion", element.getRejectionCriterion().get(i), i); 15634 for (int i = 0; i < element.getHandling().size(); i++) 15635 composeSpecimenDefinitionSpecimenDefinitionTypeTestedHandlingComponent(t, "SpecimenDefinition", "handling", 15636 element.getHandling().get(i), i); 15637 } 15638 15639 protected void composeSpecimenDefinitionSpecimenDefinitionTypeTestedContainerComponent(Complex parent, 15640 String parentType, String name, SpecimenDefinition.SpecimenDefinitionTypeTestedContainerComponent element, 15641 int index) { 15642 if (element == null) 15643 return; 15644 Complex t; 15645 if (Utilities.noString(parentType)) 15646 t = parent; 15647 else { 15648 t = parent.predicate("fhir:" + parentType + '.' + name); 15649 } 15650 composeBackboneElement(t, "container", name, element, index); 15651 if (element.hasMaterial()) 15652 composeCodeableConcept(t, "SpecimenDefinition", "material", element.getMaterial(), -1); 15653 if (element.hasType()) 15654 composeCodeableConcept(t, "SpecimenDefinition", "type", element.getType(), -1); 15655 if (element.hasCap()) 15656 composeCodeableConcept(t, "SpecimenDefinition", "cap", element.getCap(), -1); 15657 if (element.hasDescriptionElement()) 15658 composeString(t, "SpecimenDefinition", "description", element.getDescriptionElement(), -1); 15659 if (element.hasCapacity()) 15660 composeQuantity(t, "SpecimenDefinition", "capacity", element.getCapacity(), -1); 15661 if (element.hasMinimumVolume()) 15662 composeType(t, "SpecimenDefinition", "minimumVolume", element.getMinimumVolume(), -1); 15663 for (int i = 0; i < element.getAdditive().size(); i++) 15664 composeSpecimenDefinitionSpecimenDefinitionTypeTestedContainerAdditiveComponent(t, "SpecimenDefinition", 15665 "additive", element.getAdditive().get(i), i); 15666 if (element.hasPreparationElement()) 15667 composeString(t, "SpecimenDefinition", "preparation", element.getPreparationElement(), -1); 15668 } 15669 15670 protected void composeSpecimenDefinitionSpecimenDefinitionTypeTestedContainerAdditiveComponent(Complex parent, 15671 String parentType, String name, SpecimenDefinition.SpecimenDefinitionTypeTestedContainerAdditiveComponent element, 15672 int index) { 15673 if (element == null) 15674 return; 15675 Complex t; 15676 if (Utilities.noString(parentType)) 15677 t = parent; 15678 else { 15679 t = parent.predicate("fhir:" + parentType + '.' + name); 15680 } 15681 composeBackboneElement(t, "additive", name, element, index); 15682 if (element.hasAdditive()) 15683 composeType(t, "SpecimenDefinition", "additive", element.getAdditive(), -1); 15684 } 15685 15686 protected void composeSpecimenDefinitionSpecimenDefinitionTypeTestedHandlingComponent(Complex parent, 15687 String parentType, String name, SpecimenDefinition.SpecimenDefinitionTypeTestedHandlingComponent element, 15688 int index) { 15689 if (element == null) 15690 return; 15691 Complex t; 15692 if (Utilities.noString(parentType)) 15693 t = parent; 15694 else { 15695 t = parent.predicate("fhir:" + parentType + '.' + name); 15696 } 15697 composeBackboneElement(t, "handling", name, element, index); 15698 if (element.hasTemperatureQualifier()) 15699 composeCodeableConcept(t, "SpecimenDefinition", "temperatureQualifier", element.getTemperatureQualifier(), -1); 15700 if (element.hasTemperatureRange()) 15701 composeRange(t, "SpecimenDefinition", "temperatureRange", element.getTemperatureRange(), -1); 15702 if (element.hasMaxDuration()) 15703 composeDuration(t, "SpecimenDefinition", "maxDuration", element.getMaxDuration(), -1); 15704 if (element.hasInstructionElement()) 15705 composeString(t, "SpecimenDefinition", "instruction", element.getInstructionElement(), -1); 15706 } 15707 15708 protected void composeStructureDefinition(Complex parent, String parentType, String name, StructureDefinition element, 15709 int index) { 15710 if (element == null) 15711 return; 15712 Complex t; 15713 if (Utilities.noString(parentType)) 15714 t = parent; 15715 else { 15716 t = parent.predicate("fhir:" + parentType + '.' + name); 15717 } 15718 composeDomainResource(t, "StructureDefinition", name, element, index); 15719 if (element.hasUrlElement()) 15720 composeUri(t, "StructureDefinition", "url", element.getUrlElement(), -1); 15721 for (int i = 0; i < element.getIdentifier().size(); i++) 15722 composeIdentifier(t, "StructureDefinition", "identifier", element.getIdentifier().get(i), i); 15723 if (element.hasVersionElement()) 15724 composeString(t, "StructureDefinition", "version", element.getVersionElement(), -1); 15725 if (element.hasNameElement()) 15726 composeString(t, "StructureDefinition", "name", element.getNameElement(), -1); 15727 if (element.hasTitleElement()) 15728 composeString(t, "StructureDefinition", "title", element.getTitleElement(), -1); 15729 if (element.hasStatusElement()) 15730 composeEnum(t, "StructureDefinition", "status", element.getStatusElement(), -1); 15731 if (element.hasExperimentalElement()) 15732 composeBoolean(t, "StructureDefinition", "experimental", element.getExperimentalElement(), -1); 15733 if (element.hasDateElement()) 15734 composeDateTime(t, "StructureDefinition", "date", element.getDateElement(), -1); 15735 if (element.hasPublisherElement()) 15736 composeString(t, "StructureDefinition", "publisher", element.getPublisherElement(), -1); 15737 for (int i = 0; i < element.getContact().size(); i++) 15738 composeContactDetail(t, "StructureDefinition", "contact", element.getContact().get(i), i); 15739 if (element.hasDescriptionElement()) 15740 composeMarkdown(t, "StructureDefinition", "description", element.getDescriptionElement(), -1); 15741 for (int i = 0; i < element.getUseContext().size(); i++) 15742 composeUsageContext(t, "StructureDefinition", "useContext", element.getUseContext().get(i), i); 15743 for (int i = 0; i < element.getJurisdiction().size(); i++) 15744 composeCodeableConcept(t, "StructureDefinition", "jurisdiction", element.getJurisdiction().get(i), i); 15745 if (element.hasPurposeElement()) 15746 composeMarkdown(t, "StructureDefinition", "purpose", element.getPurposeElement(), -1); 15747 if (element.hasCopyrightElement()) 15748 composeMarkdown(t, "StructureDefinition", "copyright", element.getCopyrightElement(), -1); 15749 for (int i = 0; i < element.getKeyword().size(); i++) 15750 composeCoding(t, "StructureDefinition", "keyword", element.getKeyword().get(i), i); 15751 if (element.hasFhirVersionElement()) 15752 composeEnum(t, "StructureDefinition", "fhirVersion", element.getFhirVersionElement(), -1); 15753 for (int i = 0; i < element.getMapping().size(); i++) 15754 composeStructureDefinitionStructureDefinitionMappingComponent(t, "StructureDefinition", "mapping", 15755 element.getMapping().get(i), i); 15756 if (element.hasKindElement()) 15757 composeEnum(t, "StructureDefinition", "kind", element.getKindElement(), -1); 15758 if (element.hasAbstractElement()) 15759 composeBoolean(t, "StructureDefinition", "abstract", element.getAbstractElement(), -1); 15760 for (int i = 0; i < element.getContext().size(); i++) 15761 composeStructureDefinitionStructureDefinitionContextComponent(t, "StructureDefinition", "context", 15762 element.getContext().get(i), i); 15763 for (int i = 0; i < element.getContextInvariant().size(); i++) 15764 composeString(t, "StructureDefinition", "contextInvariant", element.getContextInvariant().get(i), i); 15765 if (element.hasTypeElement()) 15766 composeUri(t, "StructureDefinition", "type", element.getTypeElement(), -1); 15767 if (element.hasBaseDefinitionElement()) 15768 composeCanonical(t, "StructureDefinition", "baseDefinition", element.getBaseDefinitionElement(), -1); 15769 if (element.hasDerivationElement()) 15770 composeEnum(t, "StructureDefinition", "derivation", element.getDerivationElement(), -1); 15771 if (element.hasSnapshot()) 15772 composeStructureDefinitionStructureDefinitionSnapshotComponent(t, "StructureDefinition", "snapshot", 15773 element.getSnapshot(), -1); 15774 if (element.hasDifferential()) 15775 composeStructureDefinitionStructureDefinitionDifferentialComponent(t, "StructureDefinition", "differential", 15776 element.getDifferential(), -1); 15777 } 15778 15779 protected void composeStructureDefinitionStructureDefinitionMappingComponent(Complex parent, String parentType, 15780 String name, StructureDefinition.StructureDefinitionMappingComponent element, int index) { 15781 if (element == null) 15782 return; 15783 Complex t; 15784 if (Utilities.noString(parentType)) 15785 t = parent; 15786 else { 15787 t = parent.predicate("fhir:" + parentType + '.' + name); 15788 } 15789 composeBackboneElement(t, "mapping", name, element, index); 15790 if (element.hasIdentityElement()) 15791 composeId(t, "StructureDefinition", "identity", element.getIdentityElement(), -1); 15792 if (element.hasUriElement()) 15793 composeUri(t, "StructureDefinition", "uri", element.getUriElement(), -1); 15794 if (element.hasNameElement()) 15795 composeString(t, "StructureDefinition", "name", element.getNameElement(), -1); 15796 if (element.hasCommentElement()) 15797 composeString(t, "StructureDefinition", "comment", element.getCommentElement(), -1); 15798 } 15799 15800 protected void composeStructureDefinitionStructureDefinitionContextComponent(Complex parent, String parentType, 15801 String name, StructureDefinition.StructureDefinitionContextComponent element, int index) { 15802 if (element == null) 15803 return; 15804 Complex t; 15805 if (Utilities.noString(parentType)) 15806 t = parent; 15807 else { 15808 t = parent.predicate("fhir:" + parentType + '.' + name); 15809 } 15810 composeBackboneElement(t, "context", name, element, index); 15811 if (element.hasTypeElement()) 15812 composeEnum(t, "StructureDefinition", "type", element.getTypeElement(), -1); 15813 if (element.hasExpressionElement()) 15814 composeString(t, "StructureDefinition", "expression", element.getExpressionElement(), -1); 15815 } 15816 15817 protected void composeStructureDefinitionStructureDefinitionSnapshotComponent(Complex parent, String parentType, 15818 String name, StructureDefinition.StructureDefinitionSnapshotComponent element, int index) { 15819 if (element == null) 15820 return; 15821 Complex t; 15822 if (Utilities.noString(parentType)) 15823 t = parent; 15824 else { 15825 t = parent.predicate("fhir:" + parentType + '.' + name); 15826 } 15827 composeBackboneElement(t, "snapshot", name, element, index); 15828 for (int i = 0; i < element.getElement().size(); i++) 15829 composeElementDefinition(t, "StructureDefinition", "element", element.getElement().get(i), i); 15830 } 15831 15832 protected void composeStructureDefinitionStructureDefinitionDifferentialComponent(Complex parent, String parentType, 15833 String name, StructureDefinition.StructureDefinitionDifferentialComponent element, int index) { 15834 if (element == null) 15835 return; 15836 Complex t; 15837 if (Utilities.noString(parentType)) 15838 t = parent; 15839 else { 15840 t = parent.predicate("fhir:" + parentType + '.' + name); 15841 } 15842 composeBackboneElement(t, "differential", name, element, index); 15843 for (int i = 0; i < element.getElement().size(); i++) 15844 composeElementDefinition(t, "StructureDefinition", "element", element.getElement().get(i), i); 15845 } 15846 15847 protected void composeStructureMap(Complex parent, String parentType, String name, StructureMap 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:" + parentType + '.' + name); 15855 } 15856 composeDomainResource(t, "StructureMap", name, element, index); 15857 if (element.hasUrlElement()) 15858 composeUri(t, "StructureMap", "url", element.getUrlElement(), -1); 15859 for (int i = 0; i < element.getIdentifier().size(); i++) 15860 composeIdentifier(t, "StructureMap", "identifier", element.getIdentifier().get(i), i); 15861 if (element.hasVersionElement()) 15862 composeString(t, "StructureMap", "version", element.getVersionElement(), -1); 15863 if (element.hasNameElement()) 15864 composeString(t, "StructureMap", "name", element.getNameElement(), -1); 15865 if (element.hasTitleElement()) 15866 composeString(t, "StructureMap", "title", element.getTitleElement(), -1); 15867 if (element.hasStatusElement()) 15868 composeEnum(t, "StructureMap", "status", element.getStatusElement(), -1); 15869 if (element.hasExperimentalElement()) 15870 composeBoolean(t, "StructureMap", "experimental", element.getExperimentalElement(), -1); 15871 if (element.hasDateElement()) 15872 composeDateTime(t, "StructureMap", "date", element.getDateElement(), -1); 15873 if (element.hasPublisherElement()) 15874 composeString(t, "StructureMap", "publisher", element.getPublisherElement(), -1); 15875 for (int i = 0; i < element.getContact().size(); i++) 15876 composeContactDetail(t, "StructureMap", "contact", element.getContact().get(i), i); 15877 if (element.hasDescriptionElement()) 15878 composeMarkdown(t, "StructureMap", "description", element.getDescriptionElement(), -1); 15879 for (int i = 0; i < element.getUseContext().size(); i++) 15880 composeUsageContext(t, "StructureMap", "useContext", element.getUseContext().get(i), i); 15881 for (int i = 0; i < element.getJurisdiction().size(); i++) 15882 composeCodeableConcept(t, "StructureMap", "jurisdiction", element.getJurisdiction().get(i), i); 15883 if (element.hasPurposeElement()) 15884 composeMarkdown(t, "StructureMap", "purpose", element.getPurposeElement(), -1); 15885 if (element.hasCopyrightElement()) 15886 composeMarkdown(t, "StructureMap", "copyright", element.getCopyrightElement(), -1); 15887 for (int i = 0; i < element.getStructure().size(); i++) 15888 composeStructureMapStructureMapStructureComponent(t, "StructureMap", "structure", element.getStructure().get(i), 15889 i); 15890 for (int i = 0; i < element.getImport().size(); i++) 15891 composeCanonical(t, "StructureMap", "import", element.getImport().get(i), i); 15892 for (int i = 0; i < element.getGroup().size(); i++) 15893 composeStructureMapStructureMapGroupComponent(t, "StructureMap", "group", element.getGroup().get(i), i); 15894 } 15895 15896 protected void composeStructureMapStructureMapStructureComponent(Complex parent, String parentType, String name, 15897 StructureMap.StructureMapStructureComponent element, int index) { 15898 if (element == null) 15899 return; 15900 Complex t; 15901 if (Utilities.noString(parentType)) 15902 t = parent; 15903 else { 15904 t = parent.predicate("fhir:" + parentType + '.' + name); 15905 } 15906 composeBackboneElement(t, "structure", name, element, index); 15907 if (element.hasUrlElement()) 15908 composeCanonical(t, "StructureMap", "url", element.getUrlElement(), -1); 15909 if (element.hasModeElement()) 15910 composeEnum(t, "StructureMap", "mode", element.getModeElement(), -1); 15911 if (element.hasAliasElement()) 15912 composeString(t, "StructureMap", "alias", element.getAliasElement(), -1); 15913 if (element.hasDocumentationElement()) 15914 composeString(t, "StructureMap", "documentation", element.getDocumentationElement(), -1); 15915 } 15916 15917 protected void composeStructureMapStructureMapGroupComponent(Complex parent, String parentType, String name, 15918 StructureMap.StructureMapGroupComponent element, int index) { 15919 if (element == null) 15920 return; 15921 Complex t; 15922 if (Utilities.noString(parentType)) 15923 t = parent; 15924 else { 15925 t = parent.predicate("fhir:" + parentType + '.' + name); 15926 } 15927 composeBackboneElement(t, "group", name, element, index); 15928 if (element.hasNameElement()) 15929 composeId(t, "StructureMap", "name", element.getNameElement(), -1); 15930 if (element.hasExtendsElement()) 15931 composeId(t, "StructureMap", "extends", element.getExtendsElement(), -1); 15932 if (element.hasTypeModeElement()) 15933 composeEnum(t, "StructureMap", "typeMode", element.getTypeModeElement(), -1); 15934 if (element.hasDocumentationElement()) 15935 composeString(t, "StructureMap", "documentation", element.getDocumentationElement(), -1); 15936 for (int i = 0; i < element.getInput().size(); i++) 15937 composeStructureMapStructureMapGroupInputComponent(t, "StructureMap", "input", element.getInput().get(i), i); 15938 for (int i = 0; i < element.getRule().size(); i++) 15939 composeStructureMapStructureMapGroupRuleComponent(t, "StructureMap", "rule", element.getRule().get(i), i); 15940 } 15941 15942 protected void composeStructureMapStructureMapGroupInputComponent(Complex parent, String parentType, String name, 15943 StructureMap.StructureMapGroupInputComponent element, int index) { 15944 if (element == null) 15945 return; 15946 Complex t; 15947 if (Utilities.noString(parentType)) 15948 t = parent; 15949 else { 15950 t = parent.predicate("fhir:" + parentType + '.' + name); 15951 } 15952 composeBackboneElement(t, "input", name, element, index); 15953 if (element.hasNameElement()) 15954 composeId(t, "StructureMap", "name", element.getNameElement(), -1); 15955 if (element.hasTypeElement()) 15956 composeString(t, "StructureMap", "type", element.getTypeElement(), -1); 15957 if (element.hasModeElement()) 15958 composeEnum(t, "StructureMap", "mode", element.getModeElement(), -1); 15959 if (element.hasDocumentationElement()) 15960 composeString(t, "StructureMap", "documentation", element.getDocumentationElement(), -1); 15961 } 15962 15963 protected void composeStructureMapStructureMapGroupRuleComponent(Complex parent, String parentType, String name, 15964 StructureMap.StructureMapGroupRuleComponent element, int index) { 15965 if (element == null) 15966 return; 15967 Complex t; 15968 if (Utilities.noString(parentType)) 15969 t = parent; 15970 else { 15971 t = parent.predicate("fhir:" + parentType + '.' + name); 15972 } 15973 composeBackboneElement(t, "rule", name, element, index); 15974 if (element.hasNameElement()) 15975 composeId(t, "StructureMap", "name", element.getNameElement(), -1); 15976 for (int i = 0; i < element.getSource().size(); i++) 15977 composeStructureMapStructureMapGroupRuleSourceComponent(t, "StructureMap", "source", element.getSource().get(i), 15978 i); 15979 for (int i = 0; i < element.getTarget().size(); i++) 15980 composeStructureMapStructureMapGroupRuleTargetComponent(t, "StructureMap", "target", element.getTarget().get(i), 15981 i); 15982 for (int i = 0; i < element.getRule().size(); i++) 15983 composeStructureMapStructureMapGroupRuleComponent(t, "StructureMap", "rule", element.getRule().get(i), i); 15984 for (int i = 0; i < element.getDependent().size(); i++) 15985 composeStructureMapStructureMapGroupRuleDependentComponent(t, "StructureMap", "dependent", 15986 element.getDependent().get(i), i); 15987 if (element.hasDocumentationElement()) 15988 composeString(t, "StructureMap", "documentation", element.getDocumentationElement(), -1); 15989 } 15990 15991 protected void composeStructureMapStructureMapGroupRuleSourceComponent(Complex parent, String parentType, String name, 15992 StructureMap.StructureMapGroupRuleSourceComponent element, int index) { 15993 if (element == null) 15994 return; 15995 Complex t; 15996 if (Utilities.noString(parentType)) 15997 t = parent; 15998 else { 15999 t = parent.predicate("fhir:" + parentType + '.' + name); 16000 } 16001 composeBackboneElement(t, "source", name, element, index); 16002 if (element.hasContextElement()) 16003 composeId(t, "StructureMap", "context", element.getContextElement(), -1); 16004 if (element.hasMinElement()) 16005 composeInteger(t, "StructureMap", "min", element.getMinElement(), -1); 16006 if (element.hasMaxElement()) 16007 composeString(t, "StructureMap", "max", element.getMaxElement(), -1); 16008 if (element.hasTypeElement()) 16009 composeString(t, "StructureMap", "type", element.getTypeElement(), -1); 16010 if (element.hasDefaultValue()) 16011 composeType(t, "StructureMap", "defaultValue", element.getDefaultValue(), -1); 16012 if (element.hasElementElement()) 16013 composeString(t, "StructureMap", "element", element.getElementElement(), -1); 16014 if (element.hasListModeElement()) 16015 composeEnum(t, "StructureMap", "listMode", element.getListModeElement(), -1); 16016 if (element.hasVariableElement()) 16017 composeId(t, "StructureMap", "variable", element.getVariableElement(), -1); 16018 if (element.hasConditionElement()) 16019 composeString(t, "StructureMap", "condition", element.getConditionElement(), -1); 16020 if (element.hasCheckElement()) 16021 composeString(t, "StructureMap", "check", element.getCheckElement(), -1); 16022 if (element.hasLogMessageElement()) 16023 composeString(t, "StructureMap", "logMessage", element.getLogMessageElement(), -1); 16024 } 16025 16026 protected void composeStructureMapStructureMapGroupRuleTargetComponent(Complex parent, String parentType, String name, 16027 StructureMap.StructureMapGroupRuleTargetComponent 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:" + parentType + '.' + name); 16035 } 16036 composeBackboneElement(t, "target", name, element, index); 16037 if (element.hasContextElement()) 16038 composeId(t, "StructureMap", "context", element.getContextElement(), -1); 16039 if (element.hasContextTypeElement()) 16040 composeEnum(t, "StructureMap", "contextType", element.getContextTypeElement(), -1); 16041 if (element.hasElementElement()) 16042 composeString(t, "StructureMap", "element", element.getElementElement(), -1); 16043 if (element.hasVariableElement()) 16044 composeId(t, "StructureMap", "variable", element.getVariableElement(), -1); 16045 for (int i = 0; i < element.getListMode().size(); i++) 16046 composeEnum(t, "StructureMap", "listMode", element.getListMode().get(i), i); 16047 if (element.hasListRuleIdElement()) 16048 composeId(t, "StructureMap", "listRuleId", element.getListRuleIdElement(), -1); 16049 if (element.hasTransformElement()) 16050 composeEnum(t, "StructureMap", "transform", element.getTransformElement(), -1); 16051 for (int i = 0; i < element.getParameter().size(); i++) 16052 composeStructureMapStructureMapGroupRuleTargetParameterComponent(t, "StructureMap", "parameter", 16053 element.getParameter().get(i), i); 16054 } 16055 16056 protected void composeStructureMapStructureMapGroupRuleTargetParameterComponent(Complex parent, String parentType, 16057 String name, StructureMap.StructureMapGroupRuleTargetParameterComponent element, int index) { 16058 if (element == null) 16059 return; 16060 Complex t; 16061 if (Utilities.noString(parentType)) 16062 t = parent; 16063 else { 16064 t = parent.predicate("fhir:" + parentType + '.' + name); 16065 } 16066 composeBackboneElement(t, "parameter", name, element, index); 16067 if (element.hasValue()) 16068 composeType(t, "StructureMap", "value", element.getValue(), -1); 16069 } 16070 16071 protected void composeStructureMapStructureMapGroupRuleDependentComponent(Complex parent, String parentType, 16072 String name, StructureMap.StructureMapGroupRuleDependentComponent element, int index) { 16073 if (element == null) 16074 return; 16075 Complex t; 16076 if (Utilities.noString(parentType)) 16077 t = parent; 16078 else { 16079 t = parent.predicate("fhir:" + parentType + '.' + name); 16080 } 16081 composeBackboneElement(t, "dependent", name, element, index); 16082 if (element.hasNameElement()) 16083 composeId(t, "StructureMap", "name", element.getNameElement(), -1); 16084 for (int i = 0; i < element.getVariable().size(); i++) 16085 composeString(t, "StructureMap", "variable", element.getVariable().get(i), i); 16086 } 16087 16088 protected void composeSubscription(Complex parent, String parentType, String name, Subscription element, int index) { 16089 if (element == null) 16090 return; 16091 Complex t; 16092 if (Utilities.noString(parentType)) 16093 t = parent; 16094 else { 16095 t = parent.predicate("fhir:" + parentType + '.' + name); 16096 } 16097 composeDomainResource(t, "Subscription", name, element, index); 16098 if (element.hasStatusElement()) 16099 composeEnum(t, "Subscription", "status", element.getStatusElement(), -1); 16100 for (int i = 0; i < element.getContact().size(); i++) 16101 composeContactPoint(t, "Subscription", "contact", element.getContact().get(i), i); 16102 if (element.hasEndElement()) 16103 composeInstant(t, "Subscription", "end", element.getEndElement(), -1); 16104 if (element.hasReasonElement()) 16105 composeString(t, "Subscription", "reason", element.getReasonElement(), -1); 16106 if (element.hasCriteriaElement()) 16107 composeString(t, "Subscription", "criteria", element.getCriteriaElement(), -1); 16108 if (element.hasErrorElement()) 16109 composeString(t, "Subscription", "error", element.getErrorElement(), -1); 16110 if (element.hasChannel()) 16111 composeSubscriptionSubscriptionChannelComponent(t, "Subscription", "channel", element.getChannel(), -1); 16112 } 16113 16114 protected void composeSubscriptionSubscriptionChannelComponent(Complex parent, String parentType, String name, 16115 Subscription.SubscriptionChannelComponent element, int index) { 16116 if (element == null) 16117 return; 16118 Complex t; 16119 if (Utilities.noString(parentType)) 16120 t = parent; 16121 else { 16122 t = parent.predicate("fhir:" + parentType + '.' + name); 16123 } 16124 composeBackboneElement(t, "channel", name, element, index); 16125 if (element.hasTypeElement()) 16126 composeEnum(t, "Subscription", "type", element.getTypeElement(), -1); 16127 if (element.hasEndpointElement()) 16128 composeUrl(t, "Subscription", "endpoint", element.getEndpointElement(), -1); 16129 if (element.hasPayloadElement()) 16130 composeCode(t, "Subscription", "payload", element.getPayloadElement(), -1); 16131 for (int i = 0; i < element.getHeader().size(); i++) 16132 composeString(t, "Subscription", "header", element.getHeader().get(i), i); 16133 } 16134 16135 protected void composeSubstance(Complex parent, String parentType, String name, Substance element, int index) { 16136 if (element == null) 16137 return; 16138 Complex t; 16139 if (Utilities.noString(parentType)) 16140 t = parent; 16141 else { 16142 t = parent.predicate("fhir:" + parentType + '.' + name); 16143 } 16144 composeDomainResource(t, "Substance", name, element, index); 16145 for (int i = 0; i < element.getIdentifier().size(); i++) 16146 composeIdentifier(t, "Substance", "identifier", element.getIdentifier().get(i), i); 16147 if (element.hasStatusElement()) 16148 composeEnum(t, "Substance", "status", element.getStatusElement(), -1); 16149 for (int i = 0; i < element.getCategory().size(); i++) 16150 composeCodeableConcept(t, "Substance", "category", element.getCategory().get(i), i); 16151 if (element.hasCode()) 16152 composeCodeableConcept(t, "Substance", "code", element.getCode(), -1); 16153 if (element.hasDescriptionElement()) 16154 composeString(t, "Substance", "description", element.getDescriptionElement(), -1); 16155 for (int i = 0; i < element.getInstance().size(); i++) 16156 composeSubstanceSubstanceInstanceComponent(t, "Substance", "instance", element.getInstance().get(i), i); 16157 for (int i = 0; i < element.getIngredient().size(); i++) 16158 composeSubstanceSubstanceIngredientComponent(t, "Substance", "ingredient", element.getIngredient().get(i), i); 16159 } 16160 16161 protected void composeSubstanceSubstanceInstanceComponent(Complex parent, String parentType, String name, 16162 Substance.SubstanceInstanceComponent element, int index) { 16163 if (element == null) 16164 return; 16165 Complex t; 16166 if (Utilities.noString(parentType)) 16167 t = parent; 16168 else { 16169 t = parent.predicate("fhir:" + parentType + '.' + name); 16170 } 16171 composeBackboneElement(t, "instance", name, element, index); 16172 if (element.hasIdentifier()) 16173 composeIdentifier(t, "Substance", "identifier", element.getIdentifier(), -1); 16174 if (element.hasExpiryElement()) 16175 composeDateTime(t, "Substance", "expiry", element.getExpiryElement(), -1); 16176 if (element.hasQuantity()) 16177 composeQuantity(t, "Substance", "quantity", element.getQuantity(), -1); 16178 } 16179 16180 protected void composeSubstanceSubstanceIngredientComponent(Complex parent, String parentType, String name, 16181 Substance.SubstanceIngredientComponent element, int index) { 16182 if (element == null) 16183 return; 16184 Complex t; 16185 if (Utilities.noString(parentType)) 16186 t = parent; 16187 else { 16188 t = parent.predicate("fhir:" + parentType + '.' + name); 16189 } 16190 composeBackboneElement(t, "ingredient", name, element, index); 16191 if (element.hasQuantity()) 16192 composeRatio(t, "Substance", "quantity", element.getQuantity(), -1); 16193 if (element.hasSubstance()) 16194 composeType(t, "Substance", "substance", element.getSubstance(), -1); 16195 } 16196 16197 protected void composeSubstanceNucleicAcid(Complex parent, String parentType, String name, 16198 SubstanceNucleicAcid element, int index) { 16199 if (element == null) 16200 return; 16201 Complex t; 16202 if (Utilities.noString(parentType)) 16203 t = parent; 16204 else { 16205 t = parent.predicate("fhir:" + parentType + '.' + name); 16206 } 16207 composeDomainResource(t, "SubstanceNucleicAcid", name, element, index); 16208 if (element.hasSequenceType()) 16209 composeCodeableConcept(t, "SubstanceNucleicAcid", "sequenceType", element.getSequenceType(), -1); 16210 if (element.hasNumberOfSubunitsElement()) 16211 composeInteger(t, "SubstanceNucleicAcid", "numberOfSubunits", element.getNumberOfSubunitsElement(), -1); 16212 if (element.hasAreaOfHybridisationElement()) 16213 composeString(t, "SubstanceNucleicAcid", "areaOfHybridisation", element.getAreaOfHybridisationElement(), -1); 16214 if (element.hasOligoNucleotideType()) 16215 composeCodeableConcept(t, "SubstanceNucleicAcid", "oligoNucleotideType", element.getOligoNucleotideType(), -1); 16216 for (int i = 0; i < element.getSubunit().size(); i++) 16217 composeSubstanceNucleicAcidSubstanceNucleicAcidSubunitComponent(t, "SubstanceNucleicAcid", "subunit", 16218 element.getSubunit().get(i), i); 16219 } 16220 16221 protected void composeSubstanceNucleicAcidSubstanceNucleicAcidSubunitComponent(Complex parent, String parentType, 16222 String name, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitComponent element, int index) { 16223 if (element == null) 16224 return; 16225 Complex t; 16226 if (Utilities.noString(parentType)) 16227 t = parent; 16228 else { 16229 t = parent.predicate("fhir:" + parentType + '.' + name); 16230 } 16231 composeBackboneElement(t, "subunit", name, element, index); 16232 if (element.hasSubunitElement()) 16233 composeInteger(t, "SubstanceNucleicAcid", "subunit", element.getSubunitElement(), -1); 16234 if (element.hasSequenceElement()) 16235 composeString(t, "SubstanceNucleicAcid", "sequence", element.getSequenceElement(), -1); 16236 if (element.hasLengthElement()) 16237 composeInteger(t, "SubstanceNucleicAcid", "length", element.getLengthElement(), -1); 16238 if (element.hasSequenceAttachment()) 16239 composeAttachment(t, "SubstanceNucleicAcid", "sequenceAttachment", element.getSequenceAttachment(), -1); 16240 if (element.hasFivePrime()) 16241 composeCodeableConcept(t, "SubstanceNucleicAcid", "fivePrime", element.getFivePrime(), -1); 16242 if (element.hasThreePrime()) 16243 composeCodeableConcept(t, "SubstanceNucleicAcid", "threePrime", element.getThreePrime(), -1); 16244 for (int i = 0; i < element.getLinkage().size(); i++) 16245 composeSubstanceNucleicAcidSubstanceNucleicAcidSubunitLinkageComponent(t, "SubstanceNucleicAcid", "linkage", 16246 element.getLinkage().get(i), i); 16247 for (int i = 0; i < element.getSugar().size(); i++) 16248 composeSubstanceNucleicAcidSubstanceNucleicAcidSubunitSugarComponent(t, "SubstanceNucleicAcid", "sugar", 16249 element.getSugar().get(i), i); 16250 } 16251 16252 protected void composeSubstanceNucleicAcidSubstanceNucleicAcidSubunitLinkageComponent(Complex parent, 16253 String parentType, String name, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitLinkageComponent element, 16254 int index) { 16255 if (element == null) 16256 return; 16257 Complex t; 16258 if (Utilities.noString(parentType)) 16259 t = parent; 16260 else { 16261 t = parent.predicate("fhir:" + parentType + '.' + name); 16262 } 16263 composeBackboneElement(t, "linkage", name, element, index); 16264 if (element.hasConnectivityElement()) 16265 composeString(t, "SubstanceNucleicAcid", "connectivity", element.getConnectivityElement(), -1); 16266 if (element.hasIdentifier()) 16267 composeIdentifier(t, "SubstanceNucleicAcid", "identifier", element.getIdentifier(), -1); 16268 if (element.hasNameElement()) 16269 composeString(t, "SubstanceNucleicAcid", "name", element.getNameElement(), -1); 16270 if (element.hasResidueSiteElement()) 16271 composeString(t, "SubstanceNucleicAcid", "residueSite", element.getResidueSiteElement(), -1); 16272 } 16273 16274 protected void composeSubstanceNucleicAcidSubstanceNucleicAcidSubunitSugarComponent(Complex parent, String parentType, 16275 String name, SubstanceNucleicAcid.SubstanceNucleicAcidSubunitSugarComponent element, int index) { 16276 if (element == null) 16277 return; 16278 Complex t; 16279 if (Utilities.noString(parentType)) 16280 t = parent; 16281 else { 16282 t = parent.predicate("fhir:" + parentType + '.' + name); 16283 } 16284 composeBackboneElement(t, "sugar", name, element, index); 16285 if (element.hasIdentifier()) 16286 composeIdentifier(t, "SubstanceNucleicAcid", "identifier", element.getIdentifier(), -1); 16287 if (element.hasNameElement()) 16288 composeString(t, "SubstanceNucleicAcid", "name", element.getNameElement(), -1); 16289 if (element.hasResidueSiteElement()) 16290 composeString(t, "SubstanceNucleicAcid", "residueSite", element.getResidueSiteElement(), -1); 16291 } 16292 16293 protected void composeSubstancePolymer(Complex parent, String parentType, String name, SubstancePolymer element, 16294 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:" + parentType + '.' + name); 16302 } 16303 composeDomainResource(t, "SubstancePolymer", name, element, index); 16304 if (element.hasClass_()) 16305 composeCodeableConcept(t, "SubstancePolymer", "class", element.getClass_(), -1); 16306 if (element.hasGeometry()) 16307 composeCodeableConcept(t, "SubstancePolymer", "geometry", element.getGeometry(), -1); 16308 for (int i = 0; i < element.getCopolymerConnectivity().size(); i++) 16309 composeCodeableConcept(t, "SubstancePolymer", "copolymerConnectivity", element.getCopolymerConnectivity().get(i), 16310 i); 16311 for (int i = 0; i < element.getModification().size(); i++) 16312 composeString(t, "SubstancePolymer", "modification", element.getModification().get(i), i); 16313 for (int i = 0; i < element.getMonomerSet().size(); i++) 16314 composeSubstancePolymerSubstancePolymerMonomerSetComponent(t, "SubstancePolymer", "monomerSet", 16315 element.getMonomerSet().get(i), i); 16316 for (int i = 0; i < element.getRepeat().size(); i++) 16317 composeSubstancePolymerSubstancePolymerRepeatComponent(t, "SubstancePolymer", "repeat", 16318 element.getRepeat().get(i), i); 16319 } 16320 16321 protected void composeSubstancePolymerSubstancePolymerMonomerSetComponent(Complex parent, String parentType, 16322 String name, SubstancePolymer.SubstancePolymerMonomerSetComponent element, int index) { 16323 if (element == null) 16324 return; 16325 Complex t; 16326 if (Utilities.noString(parentType)) 16327 t = parent; 16328 else { 16329 t = parent.predicate("fhir:" + parentType + '.' + name); 16330 } 16331 composeBackboneElement(t, "monomerSet", name, element, index); 16332 if (element.hasRatioType()) 16333 composeCodeableConcept(t, "SubstancePolymer", "ratioType", element.getRatioType(), -1); 16334 for (int i = 0; i < element.getStartingMaterial().size(); i++) 16335 composeSubstancePolymerSubstancePolymerMonomerSetStartingMaterialComponent(t, "SubstancePolymer", 16336 "startingMaterial", element.getStartingMaterial().get(i), i); 16337 } 16338 16339 protected void composeSubstancePolymerSubstancePolymerMonomerSetStartingMaterialComponent(Complex parent, 16340 String parentType, String name, SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent element, 16341 int index) { 16342 if (element == null) 16343 return; 16344 Complex t; 16345 if (Utilities.noString(parentType)) 16346 t = parent; 16347 else { 16348 t = parent.predicate("fhir:" + parentType + '.' + name); 16349 } 16350 composeBackboneElement(t, "startingMaterial", name, element, index); 16351 if (element.hasMaterial()) 16352 composeCodeableConcept(t, "SubstancePolymer", "material", element.getMaterial(), -1); 16353 if (element.hasType()) 16354 composeCodeableConcept(t, "SubstancePolymer", "type", element.getType(), -1); 16355 if (element.hasIsDefiningElement()) 16356 composeBoolean(t, "SubstancePolymer", "isDefining", element.getIsDefiningElement(), -1); 16357 if (element.hasAmount()) 16358 composeSubstanceAmount(t, "SubstancePolymer", "amount", element.getAmount(), -1); 16359 } 16360 16361 protected void composeSubstancePolymerSubstancePolymerRepeatComponent(Complex parent, String parentType, String name, 16362 SubstancePolymer.SubstancePolymerRepeatComponent element, int index) { 16363 if (element == null) 16364 return; 16365 Complex t; 16366 if (Utilities.noString(parentType)) 16367 t = parent; 16368 else { 16369 t = parent.predicate("fhir:" + parentType + '.' + name); 16370 } 16371 composeBackboneElement(t, "repeat", name, element, index); 16372 if (element.hasNumberOfUnitsElement()) 16373 composeInteger(t, "SubstancePolymer", "numberOfUnits", element.getNumberOfUnitsElement(), -1); 16374 if (element.hasAverageMolecularFormulaElement()) 16375 composeString(t, "SubstancePolymer", "averageMolecularFormula", element.getAverageMolecularFormulaElement(), -1); 16376 if (element.hasRepeatUnitAmountType()) 16377 composeCodeableConcept(t, "SubstancePolymer", "repeatUnitAmountType", element.getRepeatUnitAmountType(), -1); 16378 for (int i = 0; i < element.getRepeatUnit().size(); i++) 16379 composeSubstancePolymerSubstancePolymerRepeatRepeatUnitComponent(t, "SubstancePolymer", "repeatUnit", 16380 element.getRepeatUnit().get(i), i); 16381 } 16382 16383 protected void composeSubstancePolymerSubstancePolymerRepeatRepeatUnitComponent(Complex parent, String parentType, 16384 String name, SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent element, int index) { 16385 if (element == null) 16386 return; 16387 Complex t; 16388 if (Utilities.noString(parentType)) 16389 t = parent; 16390 else { 16391 t = parent.predicate("fhir:" + parentType + '.' + name); 16392 } 16393 composeBackboneElement(t, "repeatUnit", name, element, index); 16394 if (element.hasOrientationOfPolymerisation()) 16395 composeCodeableConcept(t, "SubstancePolymer", "orientationOfPolymerisation", 16396 element.getOrientationOfPolymerisation(), -1); 16397 if (element.hasRepeatUnitElement()) 16398 composeString(t, "SubstancePolymer", "repeatUnit", element.getRepeatUnitElement(), -1); 16399 if (element.hasAmount()) 16400 composeSubstanceAmount(t, "SubstancePolymer", "amount", element.getAmount(), -1); 16401 for (int i = 0; i < element.getDegreeOfPolymerisation().size(); i++) 16402 composeSubstancePolymerSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(t, "SubstancePolymer", 16403 "degreeOfPolymerisation", element.getDegreeOfPolymerisation().get(i), i); 16404 for (int i = 0; i < element.getStructuralRepresentation().size(); i++) 16405 composeSubstancePolymerSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent(t, "SubstancePolymer", 16406 "structuralRepresentation", element.getStructuralRepresentation().get(i), i); 16407 } 16408 16409 protected void composeSubstancePolymerSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(Complex parent, 16410 String parentType, String name, 16411 SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent element, int index) { 16412 if (element == null) 16413 return; 16414 Complex t; 16415 if (Utilities.noString(parentType)) 16416 t = parent; 16417 else { 16418 t = parent.predicate("fhir:" + parentType + '.' + name); 16419 } 16420 composeBackboneElement(t, "degreeOfPolymerisation", name, element, index); 16421 if (element.hasDegree()) 16422 composeCodeableConcept(t, "SubstancePolymer", "degree", element.getDegree(), -1); 16423 if (element.hasAmount()) 16424 composeSubstanceAmount(t, "SubstancePolymer", "amount", element.getAmount(), -1); 16425 } 16426 16427 protected void composeSubstancePolymerSubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent( 16428 Complex parent, String parentType, String name, 16429 SubstancePolymer.SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent element, int index) { 16430 if (element == null) 16431 return; 16432 Complex t; 16433 if (Utilities.noString(parentType)) 16434 t = parent; 16435 else { 16436 t = parent.predicate("fhir:" + parentType + '.' + name); 16437 } 16438 composeBackboneElement(t, "structuralRepresentation", name, element, index); 16439 if (element.hasType()) 16440 composeCodeableConcept(t, "SubstancePolymer", "type", element.getType(), -1); 16441 if (element.hasRepresentationElement()) 16442 composeString(t, "SubstancePolymer", "representation", element.getRepresentationElement(), -1); 16443 if (element.hasAttachment()) 16444 composeAttachment(t, "SubstancePolymer", "attachment", element.getAttachment(), -1); 16445 } 16446 16447 protected void composeSubstanceProtein(Complex parent, String parentType, String name, SubstanceProtein element, 16448 int index) { 16449 if (element == null) 16450 return; 16451 Complex t; 16452 if (Utilities.noString(parentType)) 16453 t = parent; 16454 else { 16455 t = parent.predicate("fhir:" + parentType + '.' + name); 16456 } 16457 composeDomainResource(t, "SubstanceProtein", name, element, index); 16458 if (element.hasSequenceType()) 16459 composeCodeableConcept(t, "SubstanceProtein", "sequenceType", element.getSequenceType(), -1); 16460 if (element.hasNumberOfSubunitsElement()) 16461 composeInteger(t, "SubstanceProtein", "numberOfSubunits", element.getNumberOfSubunitsElement(), -1); 16462 for (int i = 0; i < element.getDisulfideLinkage().size(); i++) 16463 composeString(t, "SubstanceProtein", "disulfideLinkage", element.getDisulfideLinkage().get(i), i); 16464 for (int i = 0; i < element.getSubunit().size(); i++) 16465 composeSubstanceProteinSubstanceProteinSubunitComponent(t, "SubstanceProtein", "subunit", 16466 element.getSubunit().get(i), i); 16467 } 16468 16469 protected void composeSubstanceProteinSubstanceProteinSubunitComponent(Complex parent, String parentType, String name, 16470 SubstanceProtein.SubstanceProteinSubunitComponent element, int index) { 16471 if (element == null) 16472 return; 16473 Complex t; 16474 if (Utilities.noString(parentType)) 16475 t = parent; 16476 else { 16477 t = parent.predicate("fhir:" + parentType + '.' + name); 16478 } 16479 composeBackboneElement(t, "subunit", name, element, index); 16480 if (element.hasSubunitElement()) 16481 composeInteger(t, "SubstanceProtein", "subunit", element.getSubunitElement(), -1); 16482 if (element.hasSequenceElement()) 16483 composeString(t, "SubstanceProtein", "sequence", element.getSequenceElement(), -1); 16484 if (element.hasLengthElement()) 16485 composeInteger(t, "SubstanceProtein", "length", element.getLengthElement(), -1); 16486 if (element.hasSequenceAttachment()) 16487 composeAttachment(t, "SubstanceProtein", "sequenceAttachment", element.getSequenceAttachment(), -1); 16488 if (element.hasNTerminalModificationId()) 16489 composeIdentifier(t, "SubstanceProtein", "nTerminalModificationId", element.getNTerminalModificationId(), -1); 16490 if (element.hasNTerminalModificationElement()) 16491 composeString(t, "SubstanceProtein", "nTerminalModification", element.getNTerminalModificationElement(), -1); 16492 if (element.hasCTerminalModificationId()) 16493 composeIdentifier(t, "SubstanceProtein", "cTerminalModificationId", element.getCTerminalModificationId(), -1); 16494 if (element.hasCTerminalModificationElement()) 16495 composeString(t, "SubstanceProtein", "cTerminalModification", element.getCTerminalModificationElement(), -1); 16496 } 16497 16498 protected void composeSubstanceReferenceInformation(Complex parent, String parentType, String name, 16499 SubstanceReferenceInformation element, int index) { 16500 if (element == null) 16501 return; 16502 Complex t; 16503 if (Utilities.noString(parentType)) 16504 t = parent; 16505 else { 16506 t = parent.predicate("fhir:" + parentType + '.' + name); 16507 } 16508 composeDomainResource(t, "SubstanceReferenceInformation", name, element, index); 16509 if (element.hasCommentElement()) 16510 composeString(t, "SubstanceReferenceInformation", "comment", element.getCommentElement(), -1); 16511 for (int i = 0; i < element.getGene().size(); i++) 16512 composeSubstanceReferenceInformationSubstanceReferenceInformationGeneComponent(t, "SubstanceReferenceInformation", 16513 "gene", element.getGene().get(i), i); 16514 for (int i = 0; i < element.getClassification().size(); i++) 16515 composeSubstanceReferenceInformationSubstanceReferenceInformationClassificationComponent(t, 16516 "SubstanceReferenceInformation", "classification", element.getClassification().get(i), i); 16517 for (int i = 0; i < element.getTarget().size(); i++) 16518 composeSubstanceReferenceInformationSubstanceReferenceInformationTargetComponent(t, 16519 "SubstanceReferenceInformation", "target", element.getTarget().get(i), i); 16520 } 16521 16522 protected void composeSubstanceReferenceInformationSubstanceReferenceInformationGeneComponent(Complex parent, 16523 String parentType, String name, SubstanceReferenceInformation.SubstanceReferenceInformationGeneComponent element, 16524 int index) { 16525 if (element == null) 16526 return; 16527 Complex t; 16528 if (Utilities.noString(parentType)) 16529 t = parent; 16530 else { 16531 t = parent.predicate("fhir:" + parentType + '.' + name); 16532 } 16533 composeBackboneElement(t, "gene", name, element, index); 16534 if (element.hasGeneSequenceOrigin()) 16535 composeCodeableConcept(t, "SubstanceReferenceInformation", "geneSequenceOrigin", element.getGeneSequenceOrigin(), 16536 -1); 16537 if (element.hasGene()) 16538 composeCodeableConcept(t, "SubstanceReferenceInformation", "gene", element.getGene(), -1); 16539 for (int i = 0; i < element.getSource().size(); i++) 16540 composeReference(t, "SubstanceReferenceInformation", "source", element.getSource().get(i), i); 16541 } 16542 16543 protected void composeSubstanceReferenceInformationSubstanceReferenceInformationGeneElementComponent(Complex parent, 16544 String parentType, String name, 16545 SubstanceReferenceInformation.SubstanceReferenceInformationGeneElementComponent element, int index) { 16546 if (element == null) 16547 return; 16548 Complex t; 16549 if (Utilities.noString(parentType)) 16550 t = parent; 16551 else { 16552 t = parent.predicate("fhir:" + parentType + '.' + name); 16553 } 16554 composeBackboneElement(t, "geneElement", name, element, index); 16555 if (element.hasType()) 16556 composeCodeableConcept(t, "SubstanceReferenceInformation", "type", element.getType(), -1); 16557 if (element.hasElement()) 16558 composeIdentifier(t, "SubstanceReferenceInformation", "element", element.getElement(), -1); 16559 for (int i = 0; i < element.getSource().size(); i++) 16560 composeReference(t, "SubstanceReferenceInformation", "source", element.getSource().get(i), i); 16561 } 16562 16563 protected void composeSubstanceReferenceInformationSubstanceReferenceInformationClassificationComponent( 16564 Complex parent, String parentType, String name, 16565 SubstanceReferenceInformation.SubstanceReferenceInformationClassificationComponent element, int index) { 16566 if (element == null) 16567 return; 16568 Complex t; 16569 if (Utilities.noString(parentType)) 16570 t = parent; 16571 else { 16572 t = parent.predicate("fhir:" + parentType + '.' + name); 16573 } 16574 composeBackboneElement(t, "classification", name, element, index); 16575 if (element.hasDomain()) 16576 composeCodeableConcept(t, "SubstanceReferenceInformation", "domain", element.getDomain(), -1); 16577 if (element.hasClassification()) 16578 composeCodeableConcept(t, "SubstanceReferenceInformation", "classification", element.getClassification(), -1); 16579 for (int i = 0; i < element.getSubtype().size(); i++) 16580 composeCodeableConcept(t, "SubstanceReferenceInformation", "subtype", element.getSubtype().get(i), i); 16581 for (int i = 0; i < element.getSource().size(); i++) 16582 composeReference(t, "SubstanceReferenceInformation", "source", element.getSource().get(i), i); 16583 } 16584 16585 protected void composeSubstanceReferenceInformationSubstanceReferenceInformationTargetComponent(Complex parent, 16586 String parentType, String name, 16587 SubstanceReferenceInformation.SubstanceReferenceInformationTargetComponent element, int index) { 16588 if (element == null) 16589 return; 16590 Complex t; 16591 if (Utilities.noString(parentType)) 16592 t = parent; 16593 else { 16594 t = parent.predicate("fhir:" + parentType + '.' + name); 16595 } 16596 composeBackboneElement(t, "target", name, element, index); 16597 if (element.hasTarget()) 16598 composeIdentifier(t, "SubstanceReferenceInformation", "target", element.getTarget(), -1); 16599 if (element.hasType()) 16600 composeCodeableConcept(t, "SubstanceReferenceInformation", "type", element.getType(), -1); 16601 if (element.hasInteraction()) 16602 composeCodeableConcept(t, "SubstanceReferenceInformation", "interaction", element.getInteraction(), -1); 16603 if (element.hasOrganism()) 16604 composeCodeableConcept(t, "SubstanceReferenceInformation", "organism", element.getOrganism(), -1); 16605 if (element.hasOrganismType()) 16606 composeCodeableConcept(t, "SubstanceReferenceInformation", "organismType", element.getOrganismType(), -1); 16607 if (element.hasAmount()) 16608 composeType(t, "SubstanceReferenceInformation", "amount", element.getAmount(), -1); 16609 if (element.hasAmountType()) 16610 composeCodeableConcept(t, "SubstanceReferenceInformation", "amountType", element.getAmountType(), -1); 16611 for (int i = 0; i < element.getSource().size(); i++) 16612 composeReference(t, "SubstanceReferenceInformation", "source", element.getSource().get(i), i); 16613 } 16614 16615 protected void composeSubstanceSourceMaterial(Complex parent, String parentType, String name, 16616 SubstanceSourceMaterial element, int index) { 16617 if (element == null) 16618 return; 16619 Complex t; 16620 if (Utilities.noString(parentType)) 16621 t = parent; 16622 else { 16623 t = parent.predicate("fhir:" + parentType + '.' + name); 16624 } 16625 composeDomainResource(t, "SubstanceSourceMaterial", name, element, index); 16626 if (element.hasSourceMaterialClass()) 16627 composeCodeableConcept(t, "SubstanceSourceMaterial", "sourceMaterialClass", element.getSourceMaterialClass(), -1); 16628 if (element.hasSourceMaterialType()) 16629 composeCodeableConcept(t, "SubstanceSourceMaterial", "sourceMaterialType", element.getSourceMaterialType(), -1); 16630 if (element.hasSourceMaterialState()) 16631 composeCodeableConcept(t, "SubstanceSourceMaterial", "sourceMaterialState", element.getSourceMaterialState(), -1); 16632 if (element.hasOrganismId()) 16633 composeIdentifier(t, "SubstanceSourceMaterial", "organismId", element.getOrganismId(), -1); 16634 if (element.hasOrganismNameElement()) 16635 composeString(t, "SubstanceSourceMaterial", "organismName", element.getOrganismNameElement(), -1); 16636 for (int i = 0; i < element.getParentSubstanceId().size(); i++) 16637 composeIdentifier(t, "SubstanceSourceMaterial", "parentSubstanceId", element.getParentSubstanceId().get(i), i); 16638 for (int i = 0; i < element.getParentSubstanceName().size(); i++) 16639 composeString(t, "SubstanceSourceMaterial", "parentSubstanceName", element.getParentSubstanceName().get(i), i); 16640 for (int i = 0; i < element.getCountryOfOrigin().size(); i++) 16641 composeCodeableConcept(t, "SubstanceSourceMaterial", "countryOfOrigin", element.getCountryOfOrigin().get(i), i); 16642 for (int i = 0; i < element.getGeographicalLocation().size(); i++) 16643 composeString(t, "SubstanceSourceMaterial", "geographicalLocation", element.getGeographicalLocation().get(i), i); 16644 if (element.hasDevelopmentStage()) 16645 composeCodeableConcept(t, "SubstanceSourceMaterial", "developmentStage", element.getDevelopmentStage(), -1); 16646 for (int i = 0; i < element.getFractionDescription().size(); i++) 16647 composeSubstanceSourceMaterialSubstanceSourceMaterialFractionDescriptionComponent(t, "SubstanceSourceMaterial", 16648 "fractionDescription", element.getFractionDescription().get(i), i); 16649 if (element.hasOrganism()) 16650 composeSubstanceSourceMaterialSubstanceSourceMaterialOrganismComponent(t, "SubstanceSourceMaterial", "organism", 16651 element.getOrganism(), -1); 16652 for (int i = 0; i < element.getPartDescription().size(); i++) 16653 composeSubstanceSourceMaterialSubstanceSourceMaterialPartDescriptionComponent(t, "SubstanceSourceMaterial", 16654 "partDescription", element.getPartDescription().get(i), i); 16655 } 16656 16657 protected void composeSubstanceSourceMaterialSubstanceSourceMaterialFractionDescriptionComponent(Complex parent, 16658 String parentType, String name, 16659 SubstanceSourceMaterial.SubstanceSourceMaterialFractionDescriptionComponent element, int index) { 16660 if (element == null) 16661 return; 16662 Complex t; 16663 if (Utilities.noString(parentType)) 16664 t = parent; 16665 else { 16666 t = parent.predicate("fhir:" + parentType + '.' + name); 16667 } 16668 composeBackboneElement(t, "fractionDescription", name, element, index); 16669 if (element.hasFractionElement()) 16670 composeString(t, "SubstanceSourceMaterial", "fraction", element.getFractionElement(), -1); 16671 if (element.hasMaterialType()) 16672 composeCodeableConcept(t, "SubstanceSourceMaterial", "materialType", element.getMaterialType(), -1); 16673 } 16674 16675 protected void composeSubstanceSourceMaterialSubstanceSourceMaterialOrganismComponent(Complex parent, 16676 String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismComponent element, 16677 int index) { 16678 if (element == null) 16679 return; 16680 Complex t; 16681 if (Utilities.noString(parentType)) 16682 t = parent; 16683 else { 16684 t = parent.predicate("fhir:" + parentType + '.' + name); 16685 } 16686 composeBackboneElement(t, "organism", name, element, index); 16687 if (element.hasFamily()) 16688 composeCodeableConcept(t, "SubstanceSourceMaterial", "family", element.getFamily(), -1); 16689 if (element.hasGenus()) 16690 composeCodeableConcept(t, "SubstanceSourceMaterial", "genus", element.getGenus(), -1); 16691 if (element.hasSpecies()) 16692 composeCodeableConcept(t, "SubstanceSourceMaterial", "species", element.getSpecies(), -1); 16693 if (element.hasIntraspecificType()) 16694 composeCodeableConcept(t, "SubstanceSourceMaterial", "intraspecificType", element.getIntraspecificType(), -1); 16695 if (element.hasIntraspecificDescriptionElement()) 16696 composeString(t, "SubstanceSourceMaterial", "intraspecificDescription", 16697 element.getIntraspecificDescriptionElement(), -1); 16698 for (int i = 0; i < element.getAuthor().size(); i++) 16699 composeSubstanceSourceMaterialSubstanceSourceMaterialOrganismAuthorComponent(t, "SubstanceSourceMaterial", 16700 "author", element.getAuthor().get(i), i); 16701 if (element.hasHybrid()) 16702 composeSubstanceSourceMaterialSubstanceSourceMaterialOrganismHybridComponent(t, "SubstanceSourceMaterial", 16703 "hybrid", element.getHybrid(), -1); 16704 if (element.hasOrganismGeneral()) 16705 composeSubstanceSourceMaterialSubstanceSourceMaterialOrganismOrganismGeneralComponent(t, 16706 "SubstanceSourceMaterial", "organismGeneral", element.getOrganismGeneral(), -1); 16707 } 16708 16709 protected void composeSubstanceSourceMaterialSubstanceSourceMaterialOrganismAuthorComponent(Complex parent, 16710 String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismAuthorComponent element, 16711 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:" + parentType + '.' + name); 16719 } 16720 composeBackboneElement(t, "author", name, element, index); 16721 if (element.hasAuthorType()) 16722 composeCodeableConcept(t, "SubstanceSourceMaterial", "authorType", element.getAuthorType(), -1); 16723 if (element.hasAuthorDescriptionElement()) 16724 composeString(t, "SubstanceSourceMaterial", "authorDescription", element.getAuthorDescriptionElement(), -1); 16725 } 16726 16727 protected void composeSubstanceSourceMaterialSubstanceSourceMaterialOrganismHybridComponent(Complex parent, 16728 String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialOrganismHybridComponent element, 16729 int index) { 16730 if (element == null) 16731 return; 16732 Complex t; 16733 if (Utilities.noString(parentType)) 16734 t = parent; 16735 else { 16736 t = parent.predicate("fhir:" + parentType + '.' + name); 16737 } 16738 composeBackboneElement(t, "hybrid", name, element, index); 16739 if (element.hasMaternalOrganismIdElement()) 16740 composeString(t, "SubstanceSourceMaterial", "maternalOrganismId", element.getMaternalOrganismIdElement(), -1); 16741 if (element.hasMaternalOrganismNameElement()) 16742 composeString(t, "SubstanceSourceMaterial", "maternalOrganismName", element.getMaternalOrganismNameElement(), -1); 16743 if (element.hasPaternalOrganismIdElement()) 16744 composeString(t, "SubstanceSourceMaterial", "paternalOrganismId", element.getPaternalOrganismIdElement(), -1); 16745 if (element.hasPaternalOrganismNameElement()) 16746 composeString(t, "SubstanceSourceMaterial", "paternalOrganismName", element.getPaternalOrganismNameElement(), -1); 16747 if (element.hasHybridType()) 16748 composeCodeableConcept(t, "SubstanceSourceMaterial", "hybridType", element.getHybridType(), -1); 16749 } 16750 16751 protected void composeSubstanceSourceMaterialSubstanceSourceMaterialOrganismOrganismGeneralComponent(Complex parent, 16752 String parentType, String name, 16753 SubstanceSourceMaterial.SubstanceSourceMaterialOrganismOrganismGeneralComponent element, int index) { 16754 if (element == null) 16755 return; 16756 Complex t; 16757 if (Utilities.noString(parentType)) 16758 t = parent; 16759 else { 16760 t = parent.predicate("fhir:" + parentType + '.' + name); 16761 } 16762 composeBackboneElement(t, "organismGeneral", name, element, index); 16763 if (element.hasKingdom()) 16764 composeCodeableConcept(t, "SubstanceSourceMaterial", "kingdom", element.getKingdom(), -1); 16765 if (element.hasPhylum()) 16766 composeCodeableConcept(t, "SubstanceSourceMaterial", "phylum", element.getPhylum(), -1); 16767 if (element.hasClass_()) 16768 composeCodeableConcept(t, "SubstanceSourceMaterial", "class", element.getClass_(), -1); 16769 if (element.hasOrder()) 16770 composeCodeableConcept(t, "SubstanceSourceMaterial", "order", element.getOrder(), -1); 16771 } 16772 16773 protected void composeSubstanceSourceMaterialSubstanceSourceMaterialPartDescriptionComponent(Complex parent, 16774 String parentType, String name, SubstanceSourceMaterial.SubstanceSourceMaterialPartDescriptionComponent element, 16775 int index) { 16776 if (element == null) 16777 return; 16778 Complex t; 16779 if (Utilities.noString(parentType)) 16780 t = parent; 16781 else { 16782 t = parent.predicate("fhir:" + parentType + '.' + name); 16783 } 16784 composeBackboneElement(t, "partDescription", name, element, index); 16785 if (element.hasPart()) 16786 composeCodeableConcept(t, "SubstanceSourceMaterial", "part", element.getPart(), -1); 16787 if (element.hasPartLocation()) 16788 composeCodeableConcept(t, "SubstanceSourceMaterial", "partLocation", element.getPartLocation(), -1); 16789 } 16790 16791 protected void composeSubstanceSpecification(Complex parent, String parentType, String name, 16792 SubstanceSpecification element, int index) { 16793 if (element == null) 16794 return; 16795 Complex t; 16796 if (Utilities.noString(parentType)) 16797 t = parent; 16798 else { 16799 t = parent.predicate("fhir:" + parentType + '.' + name); 16800 } 16801 composeDomainResource(t, "SubstanceSpecification", name, element, index); 16802 if (element.hasIdentifier()) 16803 composeIdentifier(t, "SubstanceSpecification", "identifier", element.getIdentifier(), -1); 16804 if (element.hasType()) 16805 composeCodeableConcept(t, "SubstanceSpecification", "type", element.getType(), -1); 16806 if (element.hasStatus()) 16807 composeCodeableConcept(t, "SubstanceSpecification", "status", element.getStatus(), -1); 16808 if (element.hasDomain()) 16809 composeCodeableConcept(t, "SubstanceSpecification", "domain", element.getDomain(), -1); 16810 if (element.hasDescriptionElement()) 16811 composeString(t, "SubstanceSpecification", "description", element.getDescriptionElement(), -1); 16812 for (int i = 0; i < element.getSource().size(); i++) 16813 composeReference(t, "SubstanceSpecification", "source", element.getSource().get(i), i); 16814 if (element.hasCommentElement()) 16815 composeString(t, "SubstanceSpecification", "comment", element.getCommentElement(), -1); 16816 for (int i = 0; i < element.getMoiety().size(); i++) 16817 composeSubstanceSpecificationSubstanceSpecificationMoietyComponent(t, "SubstanceSpecification", "moiety", 16818 element.getMoiety().get(i), i); 16819 for (int i = 0; i < element.getProperty().size(); i++) 16820 composeSubstanceSpecificationSubstanceSpecificationPropertyComponent(t, "SubstanceSpecification", "property", 16821 element.getProperty().get(i), i); 16822 if (element.hasReferenceInformation()) 16823 composeReference(t, "SubstanceSpecification", "referenceInformation", element.getReferenceInformation(), -1); 16824 if (element.hasStructure()) 16825 composeSubstanceSpecificationSubstanceSpecificationStructureComponent(t, "SubstanceSpecification", "structure", 16826 element.getStructure(), -1); 16827 for (int i = 0; i < element.getCode().size(); i++) 16828 composeSubstanceSpecificationSubstanceSpecificationCodeComponent(t, "SubstanceSpecification", "code", 16829 element.getCode().get(i), i); 16830 for (int i = 0; i < element.getName().size(); i++) 16831 composeSubstanceSpecificationSubstanceSpecificationNameComponent(t, "SubstanceSpecification", "name", 16832 element.getName().get(i), i); 16833 for (int i = 0; i < element.getMolecularWeight().size(); i++) 16834 composeSubstanceSpecificationSubstanceSpecificationStructureIsotopeMolecularWeightComponent(t, 16835 "SubstanceSpecification", "molecularWeight", element.getMolecularWeight().get(i), i); 16836 for (int i = 0; i < element.getRelationship().size(); i++) 16837 composeSubstanceSpecificationSubstanceSpecificationRelationshipComponent(t, "SubstanceSpecification", 16838 "relationship", element.getRelationship().get(i), i); 16839 if (element.hasNucleicAcid()) 16840 composeReference(t, "SubstanceSpecification", "nucleicAcid", element.getNucleicAcid(), -1); 16841 if (element.hasPolymer()) 16842 composeReference(t, "SubstanceSpecification", "polymer", element.getPolymer(), -1); 16843 if (element.hasProtein()) 16844 composeReference(t, "SubstanceSpecification", "protein", element.getProtein(), -1); 16845 if (element.hasSourceMaterial()) 16846 composeReference(t, "SubstanceSpecification", "sourceMaterial", element.getSourceMaterial(), -1); 16847 } 16848 16849 protected void composeSubstanceSpecificationSubstanceSpecificationMoietyComponent(Complex parent, String parentType, 16850 String name, SubstanceSpecification.SubstanceSpecificationMoietyComponent element, int index) { 16851 if (element == null) 16852 return; 16853 Complex t; 16854 if (Utilities.noString(parentType)) 16855 t = parent; 16856 else { 16857 t = parent.predicate("fhir:" + parentType + '.' + name); 16858 } 16859 composeBackboneElement(t, "moiety", name, element, index); 16860 if (element.hasRole()) 16861 composeCodeableConcept(t, "SubstanceSpecification", "role", element.getRole(), -1); 16862 if (element.hasIdentifier()) 16863 composeIdentifier(t, "SubstanceSpecification", "identifier", element.getIdentifier(), -1); 16864 if (element.hasNameElement()) 16865 composeString(t, "SubstanceSpecification", "name", element.getNameElement(), -1); 16866 if (element.hasStereochemistry()) 16867 composeCodeableConcept(t, "SubstanceSpecification", "stereochemistry", element.getStereochemistry(), -1); 16868 if (element.hasOpticalActivity()) 16869 composeCodeableConcept(t, "SubstanceSpecification", "opticalActivity", element.getOpticalActivity(), -1); 16870 if (element.hasMolecularFormulaElement()) 16871 composeString(t, "SubstanceSpecification", "molecularFormula", element.getMolecularFormulaElement(), -1); 16872 if (element.hasAmount()) 16873 composeType(t, "SubstanceSpecification", "amount", element.getAmount(), -1); 16874 } 16875 16876 protected void composeSubstanceSpecificationSubstanceSpecificationPropertyComponent(Complex parent, String parentType, 16877 String name, SubstanceSpecification.SubstanceSpecificationPropertyComponent element, int index) { 16878 if (element == null) 16879 return; 16880 Complex t; 16881 if (Utilities.noString(parentType)) 16882 t = parent; 16883 else { 16884 t = parent.predicate("fhir:" + parentType + '.' + name); 16885 } 16886 composeBackboneElement(t, "property", name, element, index); 16887 if (element.hasCategory()) 16888 composeCodeableConcept(t, "SubstanceSpecification", "category", element.getCategory(), -1); 16889 if (element.hasCode()) 16890 composeCodeableConcept(t, "SubstanceSpecification", "code", element.getCode(), -1); 16891 if (element.hasParametersElement()) 16892 composeString(t, "SubstanceSpecification", "parameters", element.getParametersElement(), -1); 16893 if (element.hasDefiningSubstance()) 16894 composeType(t, "SubstanceSpecification", "definingSubstance", element.getDefiningSubstance(), -1); 16895 if (element.hasAmount()) 16896 composeType(t, "SubstanceSpecification", "amount", element.getAmount(), -1); 16897 } 16898 16899 protected void composeSubstanceSpecificationSubstanceSpecificationStructureComponent(Complex parent, 16900 String parentType, String name, SubstanceSpecification.SubstanceSpecificationStructureComponent element, 16901 int index) { 16902 if (element == null) 16903 return; 16904 Complex t; 16905 if (Utilities.noString(parentType)) 16906 t = parent; 16907 else { 16908 t = parent.predicate("fhir:" + parentType + '.' + name); 16909 } 16910 composeBackboneElement(t, "structure", name, element, index); 16911 if (element.hasStereochemistry()) 16912 composeCodeableConcept(t, "SubstanceSpecification", "stereochemistry", element.getStereochemistry(), -1); 16913 if (element.hasOpticalActivity()) 16914 composeCodeableConcept(t, "SubstanceSpecification", "opticalActivity", element.getOpticalActivity(), -1); 16915 if (element.hasMolecularFormulaElement()) 16916 composeString(t, "SubstanceSpecification", "molecularFormula", element.getMolecularFormulaElement(), -1); 16917 if (element.hasMolecularFormulaByMoietyElement()) 16918 composeString(t, "SubstanceSpecification", "molecularFormulaByMoiety", 16919 element.getMolecularFormulaByMoietyElement(), -1); 16920 for (int i = 0; i < element.getIsotope().size(); i++) 16921 composeSubstanceSpecificationSubstanceSpecificationStructureIsotopeComponent(t, "SubstanceSpecification", 16922 "isotope", element.getIsotope().get(i), i); 16923 if (element.hasMolecularWeight()) 16924 composeSubstanceSpecificationSubstanceSpecificationStructureIsotopeMolecularWeightComponent(t, 16925 "SubstanceSpecification", "molecularWeight", element.getMolecularWeight(), -1); 16926 for (int i = 0; i < element.getSource().size(); i++) 16927 composeReference(t, "SubstanceSpecification", "source", element.getSource().get(i), i); 16928 for (int i = 0; i < element.getRepresentation().size(); i++) 16929 composeSubstanceSpecificationSubstanceSpecificationStructureRepresentationComponent(t, "SubstanceSpecification", 16930 "representation", element.getRepresentation().get(i), i); 16931 } 16932 16933 protected void composeSubstanceSpecificationSubstanceSpecificationStructureIsotopeComponent(Complex parent, 16934 String parentType, String name, SubstanceSpecification.SubstanceSpecificationStructureIsotopeComponent element, 16935 int index) { 16936 if (element == null) 16937 return; 16938 Complex t; 16939 if (Utilities.noString(parentType)) 16940 t = parent; 16941 else { 16942 t = parent.predicate("fhir:" + parentType + '.' + name); 16943 } 16944 composeBackboneElement(t, "isotope", name, element, index); 16945 if (element.hasIdentifier()) 16946 composeIdentifier(t, "SubstanceSpecification", "identifier", element.getIdentifier(), -1); 16947 if (element.hasName()) 16948 composeCodeableConcept(t, "SubstanceSpecification", "name", element.getName(), -1); 16949 if (element.hasSubstitution()) 16950 composeCodeableConcept(t, "SubstanceSpecification", "substitution", element.getSubstitution(), -1); 16951 if (element.hasHalfLife()) 16952 composeQuantity(t, "SubstanceSpecification", "halfLife", element.getHalfLife(), -1); 16953 if (element.hasMolecularWeight()) 16954 composeSubstanceSpecificationSubstanceSpecificationStructureIsotopeMolecularWeightComponent(t, 16955 "SubstanceSpecification", "molecularWeight", element.getMolecularWeight(), -1); 16956 } 16957 16958 protected void composeSubstanceSpecificationSubstanceSpecificationStructureIsotopeMolecularWeightComponent( 16959 Complex parent, String parentType, String name, 16960 SubstanceSpecification.SubstanceSpecificationStructureIsotopeMolecularWeightComponent element, int index) { 16961 if (element == null) 16962 return; 16963 Complex t; 16964 if (Utilities.noString(parentType)) 16965 t = parent; 16966 else { 16967 t = parent.predicate("fhir:" + parentType + '.' + name); 16968 } 16969 composeBackboneElement(t, "molecularWeight", name, element, index); 16970 if (element.hasMethod()) 16971 composeCodeableConcept(t, "SubstanceSpecification", "method", element.getMethod(), -1); 16972 if (element.hasType()) 16973 composeCodeableConcept(t, "SubstanceSpecification", "type", element.getType(), -1); 16974 if (element.hasAmount()) 16975 composeQuantity(t, "SubstanceSpecification", "amount", element.getAmount(), -1); 16976 } 16977 16978 protected void composeSubstanceSpecificationSubstanceSpecificationStructureRepresentationComponent(Complex parent, 16979 String parentType, String name, 16980 SubstanceSpecification.SubstanceSpecificationStructureRepresentationComponent element, int index) { 16981 if (element == null) 16982 return; 16983 Complex t; 16984 if (Utilities.noString(parentType)) 16985 t = parent; 16986 else { 16987 t = parent.predicate("fhir:" + parentType + '.' + name); 16988 } 16989 composeBackboneElement(t, "representation", name, element, index); 16990 if (element.hasType()) 16991 composeCodeableConcept(t, "SubstanceSpecification", "type", element.getType(), -1); 16992 if (element.hasRepresentationElement()) 16993 composeString(t, "SubstanceSpecification", "representation", element.getRepresentationElement(), -1); 16994 if (element.hasAttachment()) 16995 composeAttachment(t, "SubstanceSpecification", "attachment", element.getAttachment(), -1); 16996 } 16997 16998 protected void composeSubstanceSpecificationSubstanceSpecificationCodeComponent(Complex parent, String parentType, 16999 String name, SubstanceSpecification.SubstanceSpecificationCodeComponent element, int index) { 17000 if (element == null) 17001 return; 17002 Complex t; 17003 if (Utilities.noString(parentType)) 17004 t = parent; 17005 else { 17006 t = parent.predicate("fhir:" + parentType + '.' + name); 17007 } 17008 composeBackboneElement(t, "code", name, element, index); 17009 if (element.hasCode()) 17010 composeCodeableConcept(t, "SubstanceSpecification", "code", element.getCode(), -1); 17011 if (element.hasStatus()) 17012 composeCodeableConcept(t, "SubstanceSpecification", "status", element.getStatus(), -1); 17013 if (element.hasStatusDateElement()) 17014 composeDateTime(t, "SubstanceSpecification", "statusDate", element.getStatusDateElement(), -1); 17015 if (element.hasCommentElement()) 17016 composeString(t, "SubstanceSpecification", "comment", element.getCommentElement(), -1); 17017 for (int i = 0; i < element.getSource().size(); i++) 17018 composeReference(t, "SubstanceSpecification", "source", element.getSource().get(i), i); 17019 } 17020 17021 protected void composeSubstanceSpecificationSubstanceSpecificationNameComponent(Complex parent, String parentType, 17022 String name, SubstanceSpecification.SubstanceSpecificationNameComponent element, int index) { 17023 if (element == null) 17024 return; 17025 Complex t; 17026 if (Utilities.noString(parentType)) 17027 t = parent; 17028 else { 17029 t = parent.predicate("fhir:" + parentType + '.' + name); 17030 } 17031 composeBackboneElement(t, "name", name, element, index); 17032 if (element.hasNameElement()) 17033 composeString(t, "SubstanceSpecification", "name", element.getNameElement(), -1); 17034 if (element.hasType()) 17035 composeCodeableConcept(t, "SubstanceSpecification", "type", element.getType(), -1); 17036 if (element.hasStatus()) 17037 composeCodeableConcept(t, "SubstanceSpecification", "status", element.getStatus(), -1); 17038 if (element.hasPreferredElement()) 17039 composeBoolean(t, "SubstanceSpecification", "preferred", element.getPreferredElement(), -1); 17040 for (int i = 0; i < element.getLanguage().size(); i++) 17041 composeCodeableConcept(t, "SubstanceSpecification", "language", element.getLanguage().get(i), i); 17042 for (int i = 0; i < element.getDomain().size(); i++) 17043 composeCodeableConcept(t, "SubstanceSpecification", "domain", element.getDomain().get(i), i); 17044 for (int i = 0; i < element.getJurisdiction().size(); i++) 17045 composeCodeableConcept(t, "SubstanceSpecification", "jurisdiction", element.getJurisdiction().get(i), i); 17046 for (int i = 0; i < element.getSynonym().size(); i++) 17047 composeSubstanceSpecificationSubstanceSpecificationNameComponent(t, "SubstanceSpecification", "synonym", 17048 element.getSynonym().get(i), i); 17049 for (int i = 0; i < element.getTranslation().size(); i++) 17050 composeSubstanceSpecificationSubstanceSpecificationNameComponent(t, "SubstanceSpecification", "translation", 17051 element.getTranslation().get(i), i); 17052 for (int i = 0; i < element.getOfficial().size(); i++) 17053 composeSubstanceSpecificationSubstanceSpecificationNameOfficialComponent(t, "SubstanceSpecification", "official", 17054 element.getOfficial().get(i), i); 17055 for (int i = 0; i < element.getSource().size(); i++) 17056 composeReference(t, "SubstanceSpecification", "source", element.getSource().get(i), i); 17057 } 17058 17059 protected void composeSubstanceSpecificationSubstanceSpecificationNameOfficialComponent(Complex parent, 17060 String parentType, String name, SubstanceSpecification.SubstanceSpecificationNameOfficialComponent element, 17061 int index) { 17062 if (element == null) 17063 return; 17064 Complex t; 17065 if (Utilities.noString(parentType)) 17066 t = parent; 17067 else { 17068 t = parent.predicate("fhir:" + parentType + '.' + name); 17069 } 17070 composeBackboneElement(t, "official", name, element, index); 17071 if (element.hasAuthority()) 17072 composeCodeableConcept(t, "SubstanceSpecification", "authority", element.getAuthority(), -1); 17073 if (element.hasStatus()) 17074 composeCodeableConcept(t, "SubstanceSpecification", "status", element.getStatus(), -1); 17075 if (element.hasDateElement()) 17076 composeDateTime(t, "SubstanceSpecification", "date", element.getDateElement(), -1); 17077 } 17078 17079 protected void composeSubstanceSpecificationSubstanceSpecificationRelationshipComponent(Complex parent, 17080 String parentType, String name, SubstanceSpecification.SubstanceSpecificationRelationshipComponent element, 17081 int index) { 17082 if (element == null) 17083 return; 17084 Complex t; 17085 if (Utilities.noString(parentType)) 17086 t = parent; 17087 else { 17088 t = parent.predicate("fhir:" + parentType + '.' + name); 17089 } 17090 composeBackboneElement(t, "relationship", name, element, index); 17091 if (element.hasSubstance()) 17092 composeType(t, "SubstanceSpecification", "substance", element.getSubstance(), -1); 17093 if (element.hasRelationship()) 17094 composeCodeableConcept(t, "SubstanceSpecification", "relationship", element.getRelationship(), -1); 17095 if (element.hasIsDefiningElement()) 17096 composeBoolean(t, "SubstanceSpecification", "isDefining", element.getIsDefiningElement(), -1); 17097 if (element.hasAmount()) 17098 composeType(t, "SubstanceSpecification", "amount", element.getAmount(), -1); 17099 if (element.hasAmountRatioLowLimit()) 17100 composeRatio(t, "SubstanceSpecification", "amountRatioLowLimit", element.getAmountRatioLowLimit(), -1); 17101 if (element.hasAmountType()) 17102 composeCodeableConcept(t, "SubstanceSpecification", "amountType", element.getAmountType(), -1); 17103 for (int i = 0; i < element.getSource().size(); i++) 17104 composeReference(t, "SubstanceSpecification", "source", element.getSource().get(i), i); 17105 } 17106 17107 protected void composeSupplyDelivery(Complex parent, String parentType, String name, SupplyDelivery element, 17108 int index) { 17109 if (element == null) 17110 return; 17111 Complex t; 17112 if (Utilities.noString(parentType)) 17113 t = parent; 17114 else { 17115 t = parent.predicate("fhir:" + parentType + '.' + name); 17116 } 17117 composeDomainResource(t, "SupplyDelivery", name, element, index); 17118 for (int i = 0; i < element.getIdentifier().size(); i++) 17119 composeIdentifier(t, "SupplyDelivery", "identifier", element.getIdentifier().get(i), i); 17120 for (int i = 0; i < element.getBasedOn().size(); i++) 17121 composeReference(t, "SupplyDelivery", "basedOn", element.getBasedOn().get(i), i); 17122 for (int i = 0; i < element.getPartOf().size(); i++) 17123 composeReference(t, "SupplyDelivery", "partOf", element.getPartOf().get(i), i); 17124 if (element.hasStatusElement()) 17125 composeEnum(t, "SupplyDelivery", "status", element.getStatusElement(), -1); 17126 if (element.hasPatient()) 17127 composeReference(t, "SupplyDelivery", "patient", element.getPatient(), -1); 17128 if (element.hasType()) 17129 composeCodeableConcept(t, "SupplyDelivery", "type", element.getType(), -1); 17130 if (element.hasSuppliedItem()) 17131 composeSupplyDeliverySupplyDeliverySuppliedItemComponent(t, "SupplyDelivery", "suppliedItem", 17132 element.getSuppliedItem(), -1); 17133 if (element.hasOccurrence()) 17134 composeType(t, "SupplyDelivery", "occurrence", element.getOccurrence(), -1); 17135 if (element.hasSupplier()) 17136 composeReference(t, "SupplyDelivery", "supplier", element.getSupplier(), -1); 17137 if (element.hasDestination()) 17138 composeReference(t, "SupplyDelivery", "destination", element.getDestination(), -1); 17139 for (int i = 0; i < element.getReceiver().size(); i++) 17140 composeReference(t, "SupplyDelivery", "receiver", element.getReceiver().get(i), i); 17141 } 17142 17143 protected void composeSupplyDeliverySupplyDeliverySuppliedItemComponent(Complex parent, String parentType, 17144 String name, SupplyDelivery.SupplyDeliverySuppliedItemComponent element, int index) { 17145 if (element == null) 17146 return; 17147 Complex t; 17148 if (Utilities.noString(parentType)) 17149 t = parent; 17150 else { 17151 t = parent.predicate("fhir:" + parentType + '.' + name); 17152 } 17153 composeBackboneElement(t, "suppliedItem", name, element, index); 17154 if (element.hasQuantity()) 17155 composeQuantity(t, "SupplyDelivery", "quantity", element.getQuantity(), -1); 17156 if (element.hasItem()) 17157 composeType(t, "SupplyDelivery", "item", element.getItem(), -1); 17158 } 17159 17160 protected void composeSupplyRequest(Complex parent, String parentType, String name, SupplyRequest element, 17161 int index) { 17162 if (element == null) 17163 return; 17164 Complex t; 17165 if (Utilities.noString(parentType)) 17166 t = parent; 17167 else { 17168 t = parent.predicate("fhir:" + parentType + '.' + name); 17169 } 17170 composeDomainResource(t, "SupplyRequest", name, element, index); 17171 for (int i = 0; i < element.getIdentifier().size(); i++) 17172 composeIdentifier(t, "SupplyRequest", "identifier", element.getIdentifier().get(i), i); 17173 if (element.hasStatusElement()) 17174 composeEnum(t, "SupplyRequest", "status", element.getStatusElement(), -1); 17175 if (element.hasCategory()) 17176 composeCodeableConcept(t, "SupplyRequest", "category", element.getCategory(), -1); 17177 if (element.hasPriorityElement()) 17178 composeEnum(t, "SupplyRequest", "priority", element.getPriorityElement(), -1); 17179 if (element.hasItem()) 17180 composeType(t, "SupplyRequest", "item", element.getItem(), -1); 17181 if (element.hasQuantity()) 17182 composeQuantity(t, "SupplyRequest", "quantity", element.getQuantity(), -1); 17183 for (int i = 0; i < element.getParameter().size(); i++) 17184 composeSupplyRequestSupplyRequestParameterComponent(t, "SupplyRequest", "parameter", 17185 element.getParameter().get(i), i); 17186 if (element.hasOccurrence()) 17187 composeType(t, "SupplyRequest", "occurrence", element.getOccurrence(), -1); 17188 if (element.hasAuthoredOnElement()) 17189 composeDateTime(t, "SupplyRequest", "authoredOn", element.getAuthoredOnElement(), -1); 17190 if (element.hasRequester()) 17191 composeReference(t, "SupplyRequest", "requester", element.getRequester(), -1); 17192 for (int i = 0; i < element.getSupplier().size(); i++) 17193 composeReference(t, "SupplyRequest", "supplier", element.getSupplier().get(i), i); 17194 for (int i = 0; i < element.getReasonCode().size(); i++) 17195 composeCodeableConcept(t, "SupplyRequest", "reasonCode", element.getReasonCode().get(i), i); 17196 for (int i = 0; i < element.getReasonReference().size(); i++) 17197 composeReference(t, "SupplyRequest", "reasonReference", element.getReasonReference().get(i), i); 17198 if (element.hasDeliverFrom()) 17199 composeReference(t, "SupplyRequest", "deliverFrom", element.getDeliverFrom(), -1); 17200 if (element.hasDeliverTo()) 17201 composeReference(t, "SupplyRequest", "deliverTo", element.getDeliverTo(), -1); 17202 } 17203 17204 protected void composeSupplyRequestSupplyRequestParameterComponent(Complex parent, String parentType, String name, 17205 SupplyRequest.SupplyRequestParameterComponent element, int index) { 17206 if (element == null) 17207 return; 17208 Complex t; 17209 if (Utilities.noString(parentType)) 17210 t = parent; 17211 else { 17212 t = parent.predicate("fhir:" + parentType + '.' + name); 17213 } 17214 composeBackboneElement(t, "parameter", name, element, index); 17215 if (element.hasCode()) 17216 composeCodeableConcept(t, "SupplyRequest", "code", element.getCode(), -1); 17217 if (element.hasValue()) 17218 composeType(t, "SupplyRequest", "value", element.getValue(), -1); 17219 } 17220 17221 protected void composeTask(Complex parent, String parentType, String name, Task element, int index) { 17222 if (element == null) 17223 return; 17224 Complex t; 17225 if (Utilities.noString(parentType)) 17226 t = parent; 17227 else { 17228 t = parent.predicate("fhir:" + parentType + '.' + name); 17229 } 17230 composeDomainResource(t, "Task", name, element, index); 17231 for (int i = 0; i < element.getIdentifier().size(); i++) 17232 composeIdentifier(t, "Task", "identifier", element.getIdentifier().get(i), i); 17233 if (element.hasInstantiatesCanonicalElement()) 17234 composeCanonical(t, "Task", "instantiatesCanonical", element.getInstantiatesCanonicalElement(), -1); 17235 if (element.hasInstantiatesUriElement()) 17236 composeUri(t, "Task", "instantiatesUri", element.getInstantiatesUriElement(), -1); 17237 for (int i = 0; i < element.getBasedOn().size(); i++) 17238 composeReference(t, "Task", "basedOn", element.getBasedOn().get(i), i); 17239 if (element.hasGroupIdentifier()) 17240 composeIdentifier(t, "Task", "groupIdentifier", element.getGroupIdentifier(), -1); 17241 for (int i = 0; i < element.getPartOf().size(); i++) 17242 composeReference(t, "Task", "partOf", element.getPartOf().get(i), i); 17243 if (element.hasStatusElement()) 17244 composeEnum(t, "Task", "status", element.getStatusElement(), -1); 17245 if (element.hasStatusReason()) 17246 composeCodeableConcept(t, "Task", "statusReason", element.getStatusReason(), -1); 17247 if (element.hasBusinessStatus()) 17248 composeCodeableConcept(t, "Task", "businessStatus", element.getBusinessStatus(), -1); 17249 if (element.hasIntentElement()) 17250 composeEnum(t, "Task", "intent", element.getIntentElement(), -1); 17251 if (element.hasPriorityElement()) 17252 composeEnum(t, "Task", "priority", element.getPriorityElement(), -1); 17253 if (element.hasCode()) 17254 composeCodeableConcept(t, "Task", "code", element.getCode(), -1); 17255 if (element.hasDescriptionElement()) 17256 composeString(t, "Task", "description", element.getDescriptionElement(), -1); 17257 if (element.hasFocus()) 17258 composeReference(t, "Task", "focus", element.getFocus(), -1); 17259 if (element.hasFor()) 17260 composeReference(t, "Task", "for", element.getFor(), -1); 17261 if (element.hasEncounter()) 17262 composeReference(t, "Task", "encounter", element.getEncounter(), -1); 17263 if (element.hasExecutionPeriod()) 17264 composePeriod(t, "Task", "executionPeriod", element.getExecutionPeriod(), -1); 17265 if (element.hasAuthoredOnElement()) 17266 composeDateTime(t, "Task", "authoredOn", element.getAuthoredOnElement(), -1); 17267 if (element.hasLastModifiedElement()) 17268 composeDateTime(t, "Task", "lastModified", element.getLastModifiedElement(), -1); 17269 if (element.hasRequester()) 17270 composeReference(t, "Task", "requester", element.getRequester(), -1); 17271 for (int i = 0; i < element.getPerformerType().size(); i++) 17272 composeCodeableConcept(t, "Task", "performerType", element.getPerformerType().get(i), i); 17273 if (element.hasOwner()) 17274 composeReference(t, "Task", "owner", element.getOwner(), -1); 17275 if (element.hasLocation()) 17276 composeReference(t, "Task", "location", element.getLocation(), -1); 17277 if (element.hasReasonCode()) 17278 composeCodeableConcept(t, "Task", "reasonCode", element.getReasonCode(), -1); 17279 if (element.hasReasonReference()) 17280 composeReference(t, "Task", "reasonReference", element.getReasonReference(), -1); 17281 for (int i = 0; i < element.getInsurance().size(); i++) 17282 composeReference(t, "Task", "insurance", element.getInsurance().get(i), i); 17283 for (int i = 0; i < element.getNote().size(); i++) 17284 composeAnnotation(t, "Task", "note", element.getNote().get(i), i); 17285 for (int i = 0; i < element.getRelevantHistory().size(); i++) 17286 composeReference(t, "Task", "relevantHistory", element.getRelevantHistory().get(i), i); 17287 if (element.hasRestriction()) 17288 composeTaskTaskRestrictionComponent(t, "Task", "restriction", element.getRestriction(), -1); 17289 for (int i = 0; i < element.getInput().size(); i++) 17290 composeTaskParameterComponent(t, "Task", "input", element.getInput().get(i), i); 17291 for (int i = 0; i < element.getOutput().size(); i++) 17292 composeTaskTaskOutputComponent(t, "Task", "output", element.getOutput().get(i), i); 17293 } 17294 17295 protected void composeTaskTaskRestrictionComponent(Complex parent, String parentType, String name, 17296 Task.TaskRestrictionComponent element, int index) { 17297 if (element == null) 17298 return; 17299 Complex t; 17300 if (Utilities.noString(parentType)) 17301 t = parent; 17302 else { 17303 t = parent.predicate("fhir:" + parentType + '.' + name); 17304 } 17305 composeBackboneElement(t, "restriction", name, element, index); 17306 if (element.hasRepetitionsElement()) 17307 composePositiveInt(t, "Task", "repetitions", element.getRepetitionsElement(), -1); 17308 if (element.hasPeriod()) 17309 composePeriod(t, "Task", "period", element.getPeriod(), -1); 17310 for (int i = 0; i < element.getRecipient().size(); i++) 17311 composeReference(t, "Task", "recipient", element.getRecipient().get(i), i); 17312 } 17313 17314 protected void composeTaskParameterComponent(Complex parent, String parentType, String name, 17315 Task.ParameterComponent element, int index) { 17316 if (element == null) 17317 return; 17318 Complex t; 17319 if (Utilities.noString(parentType)) 17320 t = parent; 17321 else { 17322 t = parent.predicate("fhir:" + parentType + '.' + name); 17323 } 17324 composeBackboneElement(t, "input", name, element, index); 17325 if (element.hasType()) 17326 composeCodeableConcept(t, "Task", "type", element.getType(), -1); 17327 if (element.hasValue()) 17328 composeType(t, "Task", "value", element.getValue(), -1); 17329 } 17330 17331 protected void composeTaskTaskOutputComponent(Complex parent, String parentType, String name, 17332 Task.TaskOutputComponent element, int index) { 17333 if (element == null) 17334 return; 17335 Complex t; 17336 if (Utilities.noString(parentType)) 17337 t = parent; 17338 else { 17339 t = parent.predicate("fhir:" + parentType + '.' + name); 17340 } 17341 composeBackboneElement(t, "output", name, element, index); 17342 if (element.hasType()) 17343 composeCodeableConcept(t, "Task", "type", element.getType(), -1); 17344 if (element.hasValue()) 17345 composeType(t, "Task", "value", element.getValue(), -1); 17346 } 17347 17348 protected void composeTerminologyCapabilities(Complex parent, String parentType, String name, 17349 TerminologyCapabilities element, int index) { 17350 if (element == null) 17351 return; 17352 Complex t; 17353 if (Utilities.noString(parentType)) 17354 t = parent; 17355 else { 17356 t = parent.predicate("fhir:" + parentType + '.' + name); 17357 } 17358 composeDomainResource(t, "TerminologyCapabilities", name, element, index); 17359 if (element.hasUrlElement()) 17360 composeUri(t, "TerminologyCapabilities", "url", element.getUrlElement(), -1); 17361 if (element.hasVersionElement()) 17362 composeString(t, "TerminologyCapabilities", "version", element.getVersionElement(), -1); 17363 if (element.hasNameElement()) 17364 composeString(t, "TerminologyCapabilities", "name", element.getNameElement(), -1); 17365 if (element.hasTitleElement()) 17366 composeString(t, "TerminologyCapabilities", "title", element.getTitleElement(), -1); 17367 if (element.hasStatusElement()) 17368 composeEnum(t, "TerminologyCapabilities", "status", element.getStatusElement(), -1); 17369 if (element.hasExperimentalElement()) 17370 composeBoolean(t, "TerminologyCapabilities", "experimental", element.getExperimentalElement(), -1); 17371 if (element.hasDateElement()) 17372 composeDateTime(t, "TerminologyCapabilities", "date", element.getDateElement(), -1); 17373 if (element.hasPublisherElement()) 17374 composeString(t, "TerminologyCapabilities", "publisher", element.getPublisherElement(), -1); 17375 for (int i = 0; i < element.getContact().size(); i++) 17376 composeContactDetail(t, "TerminologyCapabilities", "contact", element.getContact().get(i), i); 17377 if (element.hasDescriptionElement()) 17378 composeMarkdown(t, "TerminologyCapabilities", "description", element.getDescriptionElement(), -1); 17379 for (int i = 0; i < element.getUseContext().size(); i++) 17380 composeUsageContext(t, "TerminologyCapabilities", "useContext", element.getUseContext().get(i), i); 17381 for (int i = 0; i < element.getJurisdiction().size(); i++) 17382 composeCodeableConcept(t, "TerminologyCapabilities", "jurisdiction", element.getJurisdiction().get(i), i); 17383 if (element.hasPurposeElement()) 17384 composeMarkdown(t, "TerminologyCapabilities", "purpose", element.getPurposeElement(), -1); 17385 if (element.hasCopyrightElement()) 17386 composeMarkdown(t, "TerminologyCapabilities", "copyright", element.getCopyrightElement(), -1); 17387 if (element.hasKindElement()) 17388 composeEnum(t, "TerminologyCapabilities", "kind", element.getKindElement(), -1); 17389 if (element.hasSoftware()) 17390 composeTerminologyCapabilitiesTerminologyCapabilitiesSoftwareComponent(t, "TerminologyCapabilities", "software", 17391 element.getSoftware(), -1); 17392 if (element.hasImplementation()) 17393 composeTerminologyCapabilitiesTerminologyCapabilitiesImplementationComponent(t, "TerminologyCapabilities", 17394 "implementation", element.getImplementation(), -1); 17395 if (element.hasLockedDateElement()) 17396 composeBoolean(t, "TerminologyCapabilities", "lockedDate", element.getLockedDateElement(), -1); 17397 for (int i = 0; i < element.getCodeSystem().size(); i++) 17398 composeTerminologyCapabilitiesTerminologyCapabilitiesCodeSystemComponent(t, "TerminologyCapabilities", 17399 "codeSystem", element.getCodeSystem().get(i), i); 17400 if (element.hasExpansion()) 17401 composeTerminologyCapabilitiesTerminologyCapabilitiesExpansionComponent(t, "TerminologyCapabilities", "expansion", 17402 element.getExpansion(), -1); 17403 if (element.hasCodeSearchElement()) 17404 composeEnum(t, "TerminologyCapabilities", "codeSearch", element.getCodeSearchElement(), -1); 17405 if (element.hasValidateCode()) 17406 composeTerminologyCapabilitiesTerminologyCapabilitiesValidateCodeComponent(t, "TerminologyCapabilities", 17407 "validateCode", element.getValidateCode(), -1); 17408 if (element.hasTranslation()) 17409 composeTerminologyCapabilitiesTerminologyCapabilitiesTranslationComponent(t, "TerminologyCapabilities", 17410 "translation", element.getTranslation(), -1); 17411 if (element.hasClosure()) 17412 composeTerminologyCapabilitiesTerminologyCapabilitiesClosureComponent(t, "TerminologyCapabilities", "closure", 17413 element.getClosure(), -1); 17414 } 17415 17416 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesSoftwareComponent(Complex parent, 17417 String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesSoftwareComponent element, 17418 int index) { 17419 if (element == null) 17420 return; 17421 Complex t; 17422 if (Utilities.noString(parentType)) 17423 t = parent; 17424 else { 17425 t = parent.predicate("fhir:" + parentType + '.' + name); 17426 } 17427 composeBackboneElement(t, "software", name, element, index); 17428 if (element.hasNameElement()) 17429 composeString(t, "TerminologyCapabilities", "name", element.getNameElement(), -1); 17430 if (element.hasVersionElement()) 17431 composeString(t, "TerminologyCapabilities", "version", element.getVersionElement(), -1); 17432 } 17433 17434 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesImplementationComponent(Complex parent, 17435 String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesImplementationComponent element, 17436 int index) { 17437 if (element == null) 17438 return; 17439 Complex t; 17440 if (Utilities.noString(parentType)) 17441 t = parent; 17442 else { 17443 t = parent.predicate("fhir:" + parentType + '.' + name); 17444 } 17445 composeBackboneElement(t, "implementation", name, element, index); 17446 if (element.hasDescriptionElement()) 17447 composeString(t, "TerminologyCapabilities", "description", element.getDescriptionElement(), -1); 17448 if (element.hasUrlElement()) 17449 composeUrl(t, "TerminologyCapabilities", "url", element.getUrlElement(), -1); 17450 } 17451 17452 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesCodeSystemComponent(Complex parent, 17453 String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemComponent element, 17454 int index) { 17455 if (element == null) 17456 return; 17457 Complex t; 17458 if (Utilities.noString(parentType)) 17459 t = parent; 17460 else { 17461 t = parent.predicate("fhir:" + parentType + '.' + name); 17462 } 17463 composeBackboneElement(t, "codeSystem", name, element, index); 17464 if (element.hasUriElement()) 17465 composeCanonical(t, "TerminologyCapabilities", "uri", element.getUriElement(), -1); 17466 for (int i = 0; i < element.getVersion().size(); i++) 17467 composeTerminologyCapabilitiesTerminologyCapabilitiesCodeSystemVersionComponent(t, "TerminologyCapabilities", 17468 "version", element.getVersion().get(i), i); 17469 if (element.hasSubsumptionElement()) 17470 composeBoolean(t, "TerminologyCapabilities", "subsumption", element.getSubsumptionElement(), -1); 17471 } 17472 17473 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesCodeSystemVersionComponent(Complex parent, 17474 String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionComponent element, 17475 int index) { 17476 if (element == null) 17477 return; 17478 Complex t; 17479 if (Utilities.noString(parentType)) 17480 t = parent; 17481 else { 17482 t = parent.predicate("fhir:" + parentType + '.' + name); 17483 } 17484 composeBackboneElement(t, "version", name, element, index); 17485 if (element.hasCodeElement()) 17486 composeString(t, "TerminologyCapabilities", "code", element.getCodeElement(), -1); 17487 if (element.hasIsDefaultElement()) 17488 composeBoolean(t, "TerminologyCapabilities", "isDefault", element.getIsDefaultElement(), -1); 17489 if (element.hasCompositionalElement()) 17490 composeBoolean(t, "TerminologyCapabilities", "compositional", element.getCompositionalElement(), -1); 17491 for (int i = 0; i < element.getLanguage().size(); i++) 17492 composeCode(t, "TerminologyCapabilities", "language", element.getLanguage().get(i), i); 17493 for (int i = 0; i < element.getFilter().size(); i++) 17494 composeTerminologyCapabilitiesTerminologyCapabilitiesCodeSystemVersionFilterComponent(t, 17495 "TerminologyCapabilities", "filter", element.getFilter().get(i), i); 17496 for (int i = 0; i < element.getProperty().size(); i++) 17497 composeCode(t, "TerminologyCapabilities", "property", element.getProperty().get(i), i); 17498 } 17499 17500 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesCodeSystemVersionFilterComponent(Complex parent, 17501 String parentType, String name, 17502 TerminologyCapabilities.TerminologyCapabilitiesCodeSystemVersionFilterComponent element, int index) { 17503 if (element == null) 17504 return; 17505 Complex t; 17506 if (Utilities.noString(parentType)) 17507 t = parent; 17508 else { 17509 t = parent.predicate("fhir:" + parentType + '.' + name); 17510 } 17511 composeBackboneElement(t, "filter", name, element, index); 17512 if (element.hasCodeElement()) 17513 composeCode(t, "TerminologyCapabilities", "code", element.getCodeElement(), -1); 17514 for (int i = 0; i < element.getOp().size(); i++) 17515 composeCode(t, "TerminologyCapabilities", "op", element.getOp().get(i), i); 17516 } 17517 17518 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesExpansionComponent(Complex parent, 17519 String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesExpansionComponent element, 17520 int index) { 17521 if (element == null) 17522 return; 17523 Complex t; 17524 if (Utilities.noString(parentType)) 17525 t = parent; 17526 else { 17527 t = parent.predicate("fhir:" + parentType + '.' + name); 17528 } 17529 composeBackboneElement(t, "expansion", name, element, index); 17530 if (element.hasHierarchicalElement()) 17531 composeBoolean(t, "TerminologyCapabilities", "hierarchical", element.getHierarchicalElement(), -1); 17532 if (element.hasPagingElement()) 17533 composeBoolean(t, "TerminologyCapabilities", "paging", element.getPagingElement(), -1); 17534 if (element.hasIncompleteElement()) 17535 composeBoolean(t, "TerminologyCapabilities", "incomplete", element.getIncompleteElement(), -1); 17536 for (int i = 0; i < element.getParameter().size(); i++) 17537 composeTerminologyCapabilitiesTerminologyCapabilitiesExpansionParameterComponent(t, "TerminologyCapabilities", 17538 "parameter", element.getParameter().get(i), i); 17539 if (element.hasTextFilterElement()) 17540 composeMarkdown(t, "TerminologyCapabilities", "textFilter", element.getTextFilterElement(), -1); 17541 } 17542 17543 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesExpansionParameterComponent(Complex parent, 17544 String parentType, String name, 17545 TerminologyCapabilities.TerminologyCapabilitiesExpansionParameterComponent element, int index) { 17546 if (element == null) 17547 return; 17548 Complex t; 17549 if (Utilities.noString(parentType)) 17550 t = parent; 17551 else { 17552 t = parent.predicate("fhir:" + parentType + '.' + name); 17553 } 17554 composeBackboneElement(t, "parameter", name, element, index); 17555 if (element.hasNameElement()) 17556 composeCode(t, "TerminologyCapabilities", "name", element.getNameElement(), -1); 17557 if (element.hasDocumentationElement()) 17558 composeString(t, "TerminologyCapabilities", "documentation", element.getDocumentationElement(), -1); 17559 } 17560 17561 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesValidateCodeComponent(Complex parent, 17562 String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesValidateCodeComponent element, 17563 int index) { 17564 if (element == null) 17565 return; 17566 Complex t; 17567 if (Utilities.noString(parentType)) 17568 t = parent; 17569 else { 17570 t = parent.predicate("fhir:" + parentType + '.' + name); 17571 } 17572 composeBackboneElement(t, "validateCode", name, element, index); 17573 if (element.hasTranslationsElement()) 17574 composeBoolean(t, "TerminologyCapabilities", "translations", element.getTranslationsElement(), -1); 17575 } 17576 17577 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesTranslationComponent(Complex parent, 17578 String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesTranslationComponent element, 17579 int index) { 17580 if (element == null) 17581 return; 17582 Complex t; 17583 if (Utilities.noString(parentType)) 17584 t = parent; 17585 else { 17586 t = parent.predicate("fhir:" + parentType + '.' + name); 17587 } 17588 composeBackboneElement(t, "translation", name, element, index); 17589 if (element.hasNeedsMapElement()) 17590 composeBoolean(t, "TerminologyCapabilities", "needsMap", element.getNeedsMapElement(), -1); 17591 } 17592 17593 protected void composeTerminologyCapabilitiesTerminologyCapabilitiesClosureComponent(Complex parent, 17594 String parentType, String name, TerminologyCapabilities.TerminologyCapabilitiesClosureComponent element, 17595 int index) { 17596 if (element == null) 17597 return; 17598 Complex t; 17599 if (Utilities.noString(parentType)) 17600 t = parent; 17601 else { 17602 t = parent.predicate("fhir:" + parentType + '.' + name); 17603 } 17604 composeBackboneElement(t, "closure", name, element, index); 17605 if (element.hasTranslationElement()) 17606 composeBoolean(t, "TerminologyCapabilities", "translation", element.getTranslationElement(), -1); 17607 } 17608 17609 protected void composeTestReport(Complex parent, String parentType, String name, TestReport element, int index) { 17610 if (element == null) 17611 return; 17612 Complex t; 17613 if (Utilities.noString(parentType)) 17614 t = parent; 17615 else { 17616 t = parent.predicate("fhir:" + parentType + '.' + name); 17617 } 17618 composeDomainResource(t, "TestReport", name, element, index); 17619 if (element.hasIdentifier()) 17620 composeIdentifier(t, "TestReport", "identifier", element.getIdentifier(), -1); 17621 if (element.hasNameElement()) 17622 composeString(t, "TestReport", "name", element.getNameElement(), -1); 17623 if (element.hasStatusElement()) 17624 composeEnum(t, "TestReport", "status", element.getStatusElement(), -1); 17625 if (element.hasTestScript()) 17626 composeReference(t, "TestReport", "testScript", element.getTestScript(), -1); 17627 if (element.hasResultElement()) 17628 composeEnum(t, "TestReport", "result", element.getResultElement(), -1); 17629 if (element.hasScoreElement()) 17630 composeDecimal(t, "TestReport", "score", element.getScoreElement(), -1); 17631 if (element.hasTesterElement()) 17632 composeString(t, "TestReport", "tester", element.getTesterElement(), -1); 17633 if (element.hasIssuedElement()) 17634 composeDateTime(t, "TestReport", "issued", element.getIssuedElement(), -1); 17635 for (int i = 0; i < element.getParticipant().size(); i++) 17636 composeTestReportTestReportParticipantComponent(t, "TestReport", "participant", element.getParticipant().get(i), 17637 i); 17638 if (element.hasSetup()) 17639 composeTestReportTestReportSetupComponent(t, "TestReport", "setup", element.getSetup(), -1); 17640 for (int i = 0; i < element.getTest().size(); i++) 17641 composeTestReportTestReportTestComponent(t, "TestReport", "test", element.getTest().get(i), i); 17642 if (element.hasTeardown()) 17643 composeTestReportTestReportTeardownComponent(t, "TestReport", "teardown", element.getTeardown(), -1); 17644 } 17645 17646 protected void composeTestReportTestReportParticipantComponent(Complex parent, String parentType, String name, 17647 TestReport.TestReportParticipantComponent element, int index) { 17648 if (element == null) 17649 return; 17650 Complex t; 17651 if (Utilities.noString(parentType)) 17652 t = parent; 17653 else { 17654 t = parent.predicate("fhir:" + parentType + '.' + name); 17655 } 17656 composeBackboneElement(t, "participant", name, element, index); 17657 if (element.hasTypeElement()) 17658 composeEnum(t, "TestReport", "type", element.getTypeElement(), -1); 17659 if (element.hasUriElement()) 17660 composeUri(t, "TestReport", "uri", element.getUriElement(), -1); 17661 if (element.hasDisplayElement()) 17662 composeString(t, "TestReport", "display", element.getDisplayElement(), -1); 17663 } 17664 17665 protected void composeTestReportTestReportSetupComponent(Complex parent, String parentType, String name, 17666 TestReport.TestReportSetupComponent element, int index) { 17667 if (element == null) 17668 return; 17669 Complex t; 17670 if (Utilities.noString(parentType)) 17671 t = parent; 17672 else { 17673 t = parent.predicate("fhir:" + parentType + '.' + name); 17674 } 17675 composeBackboneElement(t, "setup", name, element, index); 17676 for (int i = 0; i < element.getAction().size(); i++) 17677 composeTestReportSetupActionComponent(t, "TestReport", "action", element.getAction().get(i), i); 17678 } 17679 17680 protected void composeTestReportSetupActionComponent(Complex parent, String parentType, String name, 17681 TestReport.SetupActionComponent element, int index) { 17682 if (element == null) 17683 return; 17684 Complex t; 17685 if (Utilities.noString(parentType)) 17686 t = parent; 17687 else { 17688 t = parent.predicate("fhir:" + parentType + '.' + name); 17689 } 17690 composeBackboneElement(t, "action", name, element, index); 17691 if (element.hasOperation()) 17692 composeTestReportSetupActionOperationComponent(t, "TestReport", "operation", element.getOperation(), -1); 17693 if (element.hasAssert()) 17694 composeTestReportSetupActionAssertComponent(t, "TestReport", "assert", element.getAssert(), -1); 17695 } 17696 17697 protected void composeTestReportSetupActionOperationComponent(Complex parent, String parentType, String name, 17698 TestReport.SetupActionOperationComponent element, int index) { 17699 if (element == null) 17700 return; 17701 Complex t; 17702 if (Utilities.noString(parentType)) 17703 t = parent; 17704 else { 17705 t = parent.predicate("fhir:" + parentType + '.' + name); 17706 } 17707 composeBackboneElement(t, "operation", name, element, index); 17708 if (element.hasResultElement()) 17709 composeEnum(t, "TestReport", "result", element.getResultElement(), -1); 17710 if (element.hasMessageElement()) 17711 composeMarkdown(t, "TestReport", "message", element.getMessageElement(), -1); 17712 if (element.hasDetailElement()) 17713 composeUri(t, "TestReport", "detail", element.getDetailElement(), -1); 17714 } 17715 17716 protected void composeTestReportSetupActionAssertComponent(Complex parent, String parentType, String name, 17717 TestReport.SetupActionAssertComponent element, int index) { 17718 if (element == null) 17719 return; 17720 Complex t; 17721 if (Utilities.noString(parentType)) 17722 t = parent; 17723 else { 17724 t = parent.predicate("fhir:" + parentType + '.' + name); 17725 } 17726 composeBackboneElement(t, "assert", name, element, index); 17727 if (element.hasResultElement()) 17728 composeEnum(t, "TestReport", "result", element.getResultElement(), -1); 17729 if (element.hasMessageElement()) 17730 composeMarkdown(t, "TestReport", "message", element.getMessageElement(), -1); 17731 if (element.hasDetailElement()) 17732 composeString(t, "TestReport", "detail", element.getDetailElement(), -1); 17733 } 17734 17735 protected void composeTestReportTestReportTestComponent(Complex parent, String parentType, String name, 17736 TestReport.TestReportTestComponent element, int index) { 17737 if (element == null) 17738 return; 17739 Complex t; 17740 if (Utilities.noString(parentType)) 17741 t = parent; 17742 else { 17743 t = parent.predicate("fhir:" + parentType + '.' + name); 17744 } 17745 composeBackboneElement(t, "test", name, element, index); 17746 if (element.hasNameElement()) 17747 composeString(t, "TestReport", "name", element.getNameElement(), -1); 17748 if (element.hasDescriptionElement()) 17749 composeString(t, "TestReport", "description", element.getDescriptionElement(), -1); 17750 for (int i = 0; i < element.getAction().size(); i++) 17751 composeTestReportTestActionComponent(t, "TestReport", "action", element.getAction().get(i), i); 17752 } 17753 17754 protected void composeTestReportTestActionComponent(Complex parent, String parentType, String name, 17755 TestReport.TestActionComponent element, int index) { 17756 if (element == null) 17757 return; 17758 Complex t; 17759 if (Utilities.noString(parentType)) 17760 t = parent; 17761 else { 17762 t = parent.predicate("fhir:" + parentType + '.' + name); 17763 } 17764 composeBackboneElement(t, "action", name, element, index); 17765 if (element.hasOperation()) 17766 composeTestReportSetupActionOperationComponent(t, "TestReport", "operation", element.getOperation(), -1); 17767 if (element.hasAssert()) 17768 composeTestReportSetupActionAssertComponent(t, "TestReport", "assert", element.getAssert(), -1); 17769 } 17770 17771 protected void composeTestReportTestReportTeardownComponent(Complex parent, String parentType, String name, 17772 TestReport.TestReportTeardownComponent element, int index) { 17773 if (element == null) 17774 return; 17775 Complex t; 17776 if (Utilities.noString(parentType)) 17777 t = parent; 17778 else { 17779 t = parent.predicate("fhir:" + parentType + '.' + name); 17780 } 17781 composeBackboneElement(t, "teardown", name, element, index); 17782 for (int i = 0; i < element.getAction().size(); i++) 17783 composeTestReportTeardownActionComponent(t, "TestReport", "action", element.getAction().get(i), i); 17784 } 17785 17786 protected void composeTestReportTeardownActionComponent(Complex parent, String parentType, String name, 17787 TestReport.TeardownActionComponent element, int index) { 17788 if (element == null) 17789 return; 17790 Complex t; 17791 if (Utilities.noString(parentType)) 17792 t = parent; 17793 else { 17794 t = parent.predicate("fhir:" + parentType + '.' + name); 17795 } 17796 composeBackboneElement(t, "action", name, element, index); 17797 if (element.hasOperation()) 17798 composeTestReportSetupActionOperationComponent(t, "TestReport", "operation", element.getOperation(), -1); 17799 } 17800 17801 protected void composeTestScript(Complex parent, String parentType, String name, TestScript element, int index) { 17802 if (element == null) 17803 return; 17804 Complex t; 17805 if (Utilities.noString(parentType)) 17806 t = parent; 17807 else { 17808 t = parent.predicate("fhir:" + parentType + '.' + name); 17809 } 17810 composeDomainResource(t, "TestScript", name, element, index); 17811 if (element.hasUrlElement()) 17812 composeUri(t, "TestScript", "url", element.getUrlElement(), -1); 17813 if (element.hasIdentifier()) 17814 composeIdentifier(t, "TestScript", "identifier", element.getIdentifier(), -1); 17815 if (element.hasVersionElement()) 17816 composeString(t, "TestScript", "version", element.getVersionElement(), -1); 17817 if (element.hasNameElement()) 17818 composeString(t, "TestScript", "name", element.getNameElement(), -1); 17819 if (element.hasTitleElement()) 17820 composeString(t, "TestScript", "title", element.getTitleElement(), -1); 17821 if (element.hasStatusElement()) 17822 composeEnum(t, "TestScript", "status", element.getStatusElement(), -1); 17823 if (element.hasExperimentalElement()) 17824 composeBoolean(t, "TestScript", "experimental", element.getExperimentalElement(), -1); 17825 if (element.hasDateElement()) 17826 composeDateTime(t, "TestScript", "date", element.getDateElement(), -1); 17827 if (element.hasPublisherElement()) 17828 composeString(t, "TestScript", "publisher", element.getPublisherElement(), -1); 17829 for (int i = 0; i < element.getContact().size(); i++) 17830 composeContactDetail(t, "TestScript", "contact", element.getContact().get(i), i); 17831 if (element.hasDescriptionElement()) 17832 composeMarkdown(t, "TestScript", "description", element.getDescriptionElement(), -1); 17833 for (int i = 0; i < element.getUseContext().size(); i++) 17834 composeUsageContext(t, "TestScript", "useContext", element.getUseContext().get(i), i); 17835 for (int i = 0; i < element.getJurisdiction().size(); i++) 17836 composeCodeableConcept(t, "TestScript", "jurisdiction", element.getJurisdiction().get(i), i); 17837 if (element.hasPurposeElement()) 17838 composeMarkdown(t, "TestScript", "purpose", element.getPurposeElement(), -1); 17839 if (element.hasCopyrightElement()) 17840 composeMarkdown(t, "TestScript", "copyright", element.getCopyrightElement(), -1); 17841 for (int i = 0; i < element.getOrigin().size(); i++) 17842 composeTestScriptTestScriptOriginComponent(t, "TestScript", "origin", element.getOrigin().get(i), i); 17843 for (int i = 0; i < element.getDestination().size(); i++) 17844 composeTestScriptTestScriptDestinationComponent(t, "TestScript", "destination", element.getDestination().get(i), 17845 i); 17846 if (element.hasMetadata()) 17847 composeTestScriptTestScriptMetadataComponent(t, "TestScript", "metadata", element.getMetadata(), -1); 17848 for (int i = 0; i < element.getFixture().size(); i++) 17849 composeTestScriptTestScriptFixtureComponent(t, "TestScript", "fixture", element.getFixture().get(i), i); 17850 for (int i = 0; i < element.getProfile().size(); i++) 17851 composeReference(t, "TestScript", "profile", element.getProfile().get(i), i); 17852 for (int i = 0; i < element.getVariable().size(); i++) 17853 composeTestScriptTestScriptVariableComponent(t, "TestScript", "variable", element.getVariable().get(i), i); 17854 if (element.hasSetup()) 17855 composeTestScriptTestScriptSetupComponent(t, "TestScript", "setup", element.getSetup(), -1); 17856 for (int i = 0; i < element.getTest().size(); i++) 17857 composeTestScriptTestScriptTestComponent(t, "TestScript", "test", element.getTest().get(i), i); 17858 if (element.hasTeardown()) 17859 composeTestScriptTestScriptTeardownComponent(t, "TestScript", "teardown", element.getTeardown(), -1); 17860 } 17861 17862 protected void composeTestScriptTestScriptOriginComponent(Complex parent, String parentType, String name, 17863 TestScript.TestScriptOriginComponent element, int index) { 17864 if (element == null) 17865 return; 17866 Complex t; 17867 if (Utilities.noString(parentType)) 17868 t = parent; 17869 else { 17870 t = parent.predicate("fhir:" + parentType + '.' + name); 17871 } 17872 composeBackboneElement(t, "origin", name, element, index); 17873 if (element.hasIndexElement()) 17874 composeInteger(t, "TestScript", "index", element.getIndexElement(), -1); 17875 if (element.hasProfile()) 17876 composeCoding(t, "TestScript", "profile", element.getProfile(), -1); 17877 } 17878 17879 protected void composeTestScriptTestScriptDestinationComponent(Complex parent, String parentType, String name, 17880 TestScript.TestScriptDestinationComponent element, int index) { 17881 if (element == null) 17882 return; 17883 Complex t; 17884 if (Utilities.noString(parentType)) 17885 t = parent; 17886 else { 17887 t = parent.predicate("fhir:" + parentType + '.' + name); 17888 } 17889 composeBackboneElement(t, "destination", name, element, index); 17890 if (element.hasIndexElement()) 17891 composeInteger(t, "TestScript", "index", element.getIndexElement(), -1); 17892 if (element.hasProfile()) 17893 composeCoding(t, "TestScript", "profile", element.getProfile(), -1); 17894 } 17895 17896 protected void composeTestScriptTestScriptMetadataComponent(Complex parent, String parentType, String name, 17897 TestScript.TestScriptMetadataComponent element, int index) { 17898 if (element == null) 17899 return; 17900 Complex t; 17901 if (Utilities.noString(parentType)) 17902 t = parent; 17903 else { 17904 t = parent.predicate("fhir:" + parentType + '.' + name); 17905 } 17906 composeBackboneElement(t, "metadata", name, element, index); 17907 for (int i = 0; i < element.getLink().size(); i++) 17908 composeTestScriptTestScriptMetadataLinkComponent(t, "TestScript", "link", element.getLink().get(i), i); 17909 for (int i = 0; i < element.getCapability().size(); i++) 17910 composeTestScriptTestScriptMetadataCapabilityComponent(t, "TestScript", "capability", 17911 element.getCapability().get(i), i); 17912 } 17913 17914 protected void composeTestScriptTestScriptMetadataLinkComponent(Complex parent, String parentType, String name, 17915 TestScript.TestScriptMetadataLinkComponent element, int index) { 17916 if (element == null) 17917 return; 17918 Complex t; 17919 if (Utilities.noString(parentType)) 17920 t = parent; 17921 else { 17922 t = parent.predicate("fhir:" + parentType + '.' + name); 17923 } 17924 composeBackboneElement(t, "link", name, element, index); 17925 if (element.hasUrlElement()) 17926 composeUri(t, "TestScript", "url", element.getUrlElement(), -1); 17927 if (element.hasDescriptionElement()) 17928 composeString(t, "TestScript", "description", element.getDescriptionElement(), -1); 17929 } 17930 17931 protected void composeTestScriptTestScriptMetadataCapabilityComponent(Complex parent, String parentType, String name, 17932 TestScript.TestScriptMetadataCapabilityComponent element, int index) { 17933 if (element == null) 17934 return; 17935 Complex t; 17936 if (Utilities.noString(parentType)) 17937 t = parent; 17938 else { 17939 t = parent.predicate("fhir:" + parentType + '.' + name); 17940 } 17941 composeBackboneElement(t, "capability", name, element, index); 17942 if (element.hasRequiredElement()) 17943 composeBoolean(t, "TestScript", "required", element.getRequiredElement(), -1); 17944 if (element.hasValidatedElement()) 17945 composeBoolean(t, "TestScript", "validated", element.getValidatedElement(), -1); 17946 if (element.hasDescriptionElement()) 17947 composeString(t, "TestScript", "description", element.getDescriptionElement(), -1); 17948 for (int i = 0; i < element.getOrigin().size(); i++) 17949 composeInteger(t, "TestScript", "origin", element.getOrigin().get(i), i); 17950 if (element.hasDestinationElement()) 17951 composeInteger(t, "TestScript", "destination", element.getDestinationElement(), -1); 17952 for (int i = 0; i < element.getLink().size(); i++) 17953 composeUri(t, "TestScript", "link", element.getLink().get(i), i); 17954 if (element.hasCapabilitiesElement()) 17955 composeCanonical(t, "TestScript", "capabilities", element.getCapabilitiesElement(), -1); 17956 } 17957 17958 protected void composeTestScriptTestScriptFixtureComponent(Complex parent, String parentType, String name, 17959 TestScript.TestScriptFixtureComponent element, int index) { 17960 if (element == null) 17961 return; 17962 Complex t; 17963 if (Utilities.noString(parentType)) 17964 t = parent; 17965 else { 17966 t = parent.predicate("fhir:" + parentType + '.' + name); 17967 } 17968 composeBackboneElement(t, "fixture", name, element, index); 17969 if (element.hasAutocreateElement()) 17970 composeBoolean(t, "TestScript", "autocreate", element.getAutocreateElement(), -1); 17971 if (element.hasAutodeleteElement()) 17972 composeBoolean(t, "TestScript", "autodelete", element.getAutodeleteElement(), -1); 17973 if (element.hasResource()) 17974 composeReference(t, "TestScript", "resource", element.getResource(), -1); 17975 } 17976 17977 protected void composeTestScriptTestScriptVariableComponent(Complex parent, String parentType, String name, 17978 TestScript.TestScriptVariableComponent element, int index) { 17979 if (element == null) 17980 return; 17981 Complex t; 17982 if (Utilities.noString(parentType)) 17983 t = parent; 17984 else { 17985 t = parent.predicate("fhir:" + parentType + '.' + name); 17986 } 17987 composeBackboneElement(t, "variable", name, element, index); 17988 if (element.hasNameElement()) 17989 composeString(t, "TestScript", "name", element.getNameElement(), -1); 17990 if (element.hasDefaultValueElement()) 17991 composeString(t, "TestScript", "defaultValue", element.getDefaultValueElement(), -1); 17992 if (element.hasDescriptionElement()) 17993 composeString(t, "TestScript", "description", element.getDescriptionElement(), -1); 17994 if (element.hasExpressionElement()) 17995 composeString(t, "TestScript", "expression", element.getExpressionElement(), -1); 17996 if (element.hasHeaderFieldElement()) 17997 composeString(t, "TestScript", "headerField", element.getHeaderFieldElement(), -1); 17998 if (element.hasHintElement()) 17999 composeString(t, "TestScript", "hint", element.getHintElement(), -1); 18000 if (element.hasPathElement()) 18001 composeString(t, "TestScript", "path", element.getPathElement(), -1); 18002 if (element.hasSourceIdElement()) 18003 composeId(t, "TestScript", "sourceId", element.getSourceIdElement(), -1); 18004 } 18005 18006 protected void composeTestScriptTestScriptSetupComponent(Complex parent, String parentType, String name, 18007 TestScript.TestScriptSetupComponent element, int index) { 18008 if (element == null) 18009 return; 18010 Complex t; 18011 if (Utilities.noString(parentType)) 18012 t = parent; 18013 else { 18014 t = parent.predicate("fhir:" + parentType + '.' + name); 18015 } 18016 composeBackboneElement(t, "setup", name, element, index); 18017 for (int i = 0; i < element.getAction().size(); i++) 18018 composeTestScriptSetupActionComponent(t, "TestScript", "action", element.getAction().get(i), i); 18019 } 18020 18021 protected void composeTestScriptSetupActionComponent(Complex parent, String parentType, String name, 18022 TestScript.SetupActionComponent element, int index) { 18023 if (element == null) 18024 return; 18025 Complex t; 18026 if (Utilities.noString(parentType)) 18027 t = parent; 18028 else { 18029 t = parent.predicate("fhir:" + parentType + '.' + name); 18030 } 18031 composeBackboneElement(t, "action", name, element, index); 18032 if (element.hasOperation()) 18033 composeTestScriptSetupActionOperationComponent(t, "TestScript", "operation", element.getOperation(), -1); 18034 if (element.hasAssert()) 18035 composeTestScriptSetupActionAssertComponent(t, "TestScript", "assert", element.getAssert(), -1); 18036 } 18037 18038 protected void composeTestScriptSetupActionOperationComponent(Complex parent, String parentType, String name, 18039 TestScript.SetupActionOperationComponent element, int index) { 18040 if (element == null) 18041 return; 18042 Complex t; 18043 if (Utilities.noString(parentType)) 18044 t = parent; 18045 else { 18046 t = parent.predicate("fhir:" + parentType + '.' + name); 18047 } 18048 composeBackboneElement(t, "operation", name, element, index); 18049 if (element.hasType()) 18050 composeCoding(t, "TestScript", "type", element.getType(), -1); 18051 if (element.hasResourceElement()) 18052 composeCode(t, "TestScript", "resource", element.getResourceElement(), -1); 18053 if (element.hasLabelElement()) 18054 composeString(t, "TestScript", "label", element.getLabelElement(), -1); 18055 if (element.hasDescriptionElement()) 18056 composeString(t, "TestScript", "description", element.getDescriptionElement(), -1); 18057 if (element.hasAcceptElement()) 18058 composeCode(t, "TestScript", "accept", element.getAcceptElement(), -1); 18059 if (element.hasContentTypeElement()) 18060 composeCode(t, "TestScript", "contentType", element.getContentTypeElement(), -1); 18061 if (element.hasDestinationElement()) 18062 composeInteger(t, "TestScript", "destination", element.getDestinationElement(), -1); 18063 if (element.hasEncodeRequestUrlElement()) 18064 composeBoolean(t, "TestScript", "encodeRequestUrl", element.getEncodeRequestUrlElement(), -1); 18065 if (element.hasMethodElement()) 18066 composeEnum(t, "TestScript", "method", element.getMethodElement(), -1); 18067 if (element.hasOriginElement()) 18068 composeInteger(t, "TestScript", "origin", element.getOriginElement(), -1); 18069 if (element.hasParamsElement()) 18070 composeString(t, "TestScript", "params", element.getParamsElement(), -1); 18071 for (int i = 0; i < element.getRequestHeader().size(); i++) 18072 composeTestScriptSetupActionOperationRequestHeaderComponent(t, "TestScript", "requestHeader", 18073 element.getRequestHeader().get(i), i); 18074 if (element.hasRequestIdElement()) 18075 composeId(t, "TestScript", "requestId", element.getRequestIdElement(), -1); 18076 if (element.hasResponseIdElement()) 18077 composeId(t, "TestScript", "responseId", element.getResponseIdElement(), -1); 18078 if (element.hasSourceIdElement()) 18079 composeId(t, "TestScript", "sourceId", element.getSourceIdElement(), -1); 18080 if (element.hasTargetIdElement()) 18081 composeId(t, "TestScript", "targetId", element.getTargetIdElement(), -1); 18082 if (element.hasUrlElement()) 18083 composeString(t, "TestScript", "url", element.getUrlElement(), -1); 18084 } 18085 18086 protected void composeTestScriptSetupActionOperationRequestHeaderComponent(Complex parent, String parentType, 18087 String name, TestScript.SetupActionOperationRequestHeaderComponent element, int index) { 18088 if (element == null) 18089 return; 18090 Complex t; 18091 if (Utilities.noString(parentType)) 18092 t = parent; 18093 else { 18094 t = parent.predicate("fhir:" + parentType + '.' + name); 18095 } 18096 composeBackboneElement(t, "requestHeader", name, element, index); 18097 if (element.hasFieldElement()) 18098 composeString(t, "TestScript", "field", element.getFieldElement(), -1); 18099 if (element.hasValueElement()) 18100 composeString(t, "TestScript", "value", element.getValueElement(), -1); 18101 } 18102 18103 protected void composeTestScriptSetupActionAssertComponent(Complex parent, String parentType, String name, 18104 TestScript.SetupActionAssertComponent element, int index) { 18105 if (element == null) 18106 return; 18107 Complex t; 18108 if (Utilities.noString(parentType)) 18109 t = parent; 18110 else { 18111 t = parent.predicate("fhir:" + parentType + '.' + name); 18112 } 18113 composeBackboneElement(t, "assert", name, element, index); 18114 if (element.hasLabelElement()) 18115 composeString(t, "TestScript", "label", element.getLabelElement(), -1); 18116 if (element.hasDescriptionElement()) 18117 composeString(t, "TestScript", "description", element.getDescriptionElement(), -1); 18118 if (element.hasDirectionElement()) 18119 composeEnum(t, "TestScript", "direction", element.getDirectionElement(), -1); 18120 if (element.hasCompareToSourceIdElement()) 18121 composeString(t, "TestScript", "compareToSourceId", element.getCompareToSourceIdElement(), -1); 18122 if (element.hasCompareToSourceExpressionElement()) 18123 composeString(t, "TestScript", "compareToSourceExpression", element.getCompareToSourceExpressionElement(), -1); 18124 if (element.hasCompareToSourcePathElement()) 18125 composeString(t, "TestScript", "compareToSourcePath", element.getCompareToSourcePathElement(), -1); 18126 if (element.hasContentTypeElement()) 18127 composeCode(t, "TestScript", "contentType", element.getContentTypeElement(), -1); 18128 if (element.hasExpressionElement()) 18129 composeString(t, "TestScript", "expression", element.getExpressionElement(), -1); 18130 if (element.hasHeaderFieldElement()) 18131 composeString(t, "TestScript", "headerField", element.getHeaderFieldElement(), -1); 18132 if (element.hasMinimumIdElement()) 18133 composeString(t, "TestScript", "minimumId", element.getMinimumIdElement(), -1); 18134 if (element.hasNavigationLinksElement()) 18135 composeBoolean(t, "TestScript", "navigationLinks", element.getNavigationLinksElement(), -1); 18136 if (element.hasOperatorElement()) 18137 composeEnum(t, "TestScript", "operator", element.getOperatorElement(), -1); 18138 if (element.hasPathElement()) 18139 composeString(t, "TestScript", "path", element.getPathElement(), -1); 18140 if (element.hasRequestMethodElement()) 18141 composeEnum(t, "TestScript", "requestMethod", element.getRequestMethodElement(), -1); 18142 if (element.hasRequestURLElement()) 18143 composeString(t, "TestScript", "requestURL", element.getRequestURLElement(), -1); 18144 if (element.hasResourceElement()) 18145 composeCode(t, "TestScript", "resource", element.getResourceElement(), -1); 18146 if (element.hasResponseElement()) 18147 composeEnum(t, "TestScript", "response", element.getResponseElement(), -1); 18148 if (element.hasResponseCodeElement()) 18149 composeString(t, "TestScript", "responseCode", element.getResponseCodeElement(), -1); 18150 if (element.hasSourceIdElement()) 18151 composeId(t, "TestScript", "sourceId", element.getSourceIdElement(), -1); 18152 if (element.hasValidateProfileIdElement()) 18153 composeId(t, "TestScript", "validateProfileId", element.getValidateProfileIdElement(), -1); 18154 if (element.hasValueElement()) 18155 composeString(t, "TestScript", "value", element.getValueElement(), -1); 18156 if (element.hasWarningOnlyElement()) 18157 composeBoolean(t, "TestScript", "warningOnly", element.getWarningOnlyElement(), -1); 18158 } 18159 18160 protected void composeTestScriptTestScriptTestComponent(Complex parent, String parentType, String name, 18161 TestScript.TestScriptTestComponent element, int index) { 18162 if (element == null) 18163 return; 18164 Complex t; 18165 if (Utilities.noString(parentType)) 18166 t = parent; 18167 else { 18168 t = parent.predicate("fhir:" + parentType + '.' + name); 18169 } 18170 composeBackboneElement(t, "test", name, element, index); 18171 if (element.hasNameElement()) 18172 composeString(t, "TestScript", "name", element.getNameElement(), -1); 18173 if (element.hasDescriptionElement()) 18174 composeString(t, "TestScript", "description", element.getDescriptionElement(), -1); 18175 for (int i = 0; i < element.getAction().size(); i++) 18176 composeTestScriptTestActionComponent(t, "TestScript", "action", element.getAction().get(i), i); 18177 } 18178 18179 protected void composeTestScriptTestActionComponent(Complex parent, String parentType, String name, 18180 TestScript.TestActionComponent element, int index) { 18181 if (element == null) 18182 return; 18183 Complex t; 18184 if (Utilities.noString(parentType)) 18185 t = parent; 18186 else { 18187 t = parent.predicate("fhir:" + parentType + '.' + name); 18188 } 18189 composeBackboneElement(t, "action", name, element, index); 18190 if (element.hasOperation()) 18191 composeTestScriptSetupActionOperationComponent(t, "TestScript", "operation", element.getOperation(), -1); 18192 if (element.hasAssert()) 18193 composeTestScriptSetupActionAssertComponent(t, "TestScript", "assert", element.getAssert(), -1); 18194 } 18195 18196 protected void composeTestScriptTestScriptTeardownComponent(Complex parent, String parentType, String name, 18197 TestScript.TestScriptTeardownComponent element, int index) { 18198 if (element == null) 18199 return; 18200 Complex t; 18201 if (Utilities.noString(parentType)) 18202 t = parent; 18203 else { 18204 t = parent.predicate("fhir:" + parentType + '.' + name); 18205 } 18206 composeBackboneElement(t, "teardown", name, element, index); 18207 for (int i = 0; i < element.getAction().size(); i++) 18208 composeTestScriptTeardownActionComponent(t, "TestScript", "action", element.getAction().get(i), i); 18209 } 18210 18211 protected void composeTestScriptTeardownActionComponent(Complex parent, String parentType, String name, 18212 TestScript.TeardownActionComponent element, int index) { 18213 if (element == null) 18214 return; 18215 Complex t; 18216 if (Utilities.noString(parentType)) 18217 t = parent; 18218 else { 18219 t = parent.predicate("fhir:" + parentType + '.' + name); 18220 } 18221 composeBackboneElement(t, "action", name, element, index); 18222 if (element.hasOperation()) 18223 composeTestScriptSetupActionOperationComponent(t, "TestScript", "operation", element.getOperation(), -1); 18224 } 18225 18226 protected void composeValueSet(Complex parent, String parentType, String name, ValueSet 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:" + parentType + '.' + name); 18234 } 18235 composeDomainResource(t, "ValueSet", name, element, index); 18236 if (element.hasUrlElement()) 18237 composeUri(t, "ValueSet", "url", element.getUrlElement(), -1); 18238 for (int i = 0; i < element.getIdentifier().size(); i++) 18239 composeIdentifier(t, "ValueSet", "identifier", element.getIdentifier().get(i), i); 18240 if (element.hasVersionElement()) 18241 composeString(t, "ValueSet", "version", element.getVersionElement(), -1); 18242 if (element.hasNameElement()) 18243 composeString(t, "ValueSet", "name", element.getNameElement(), -1); 18244 if (element.hasTitleElement()) 18245 composeString(t, "ValueSet", "title", element.getTitleElement(), -1); 18246 if (element.hasStatusElement()) 18247 composeEnum(t, "ValueSet", "status", element.getStatusElement(), -1); 18248 if (element.hasExperimentalElement()) 18249 composeBoolean(t, "ValueSet", "experimental", element.getExperimentalElement(), -1); 18250 if (element.hasDateElement()) 18251 composeDateTime(t, "ValueSet", "date", element.getDateElement(), -1); 18252 if (element.hasPublisherElement()) 18253 composeString(t, "ValueSet", "publisher", element.getPublisherElement(), -1); 18254 for (int i = 0; i < element.getContact().size(); i++) 18255 composeContactDetail(t, "ValueSet", "contact", element.getContact().get(i), i); 18256 if (element.hasDescriptionElement()) 18257 composeMarkdown(t, "ValueSet", "description", element.getDescriptionElement(), -1); 18258 for (int i = 0; i < element.getUseContext().size(); i++) 18259 composeUsageContext(t, "ValueSet", "useContext", element.getUseContext().get(i), i); 18260 for (int i = 0; i < element.getJurisdiction().size(); i++) 18261 composeCodeableConcept(t, "ValueSet", "jurisdiction", element.getJurisdiction().get(i), i); 18262 if (element.hasImmutableElement()) 18263 composeBoolean(t, "ValueSet", "immutable", element.getImmutableElement(), -1); 18264 if (element.hasPurposeElement()) 18265 composeMarkdown(t, "ValueSet", "purpose", element.getPurposeElement(), -1); 18266 if (element.hasCopyrightElement()) 18267 composeMarkdown(t, "ValueSet", "copyright", element.getCopyrightElement(), -1); 18268 if (element.hasCompose()) 18269 composeValueSetValueSetComposeComponent(t, "ValueSet", "compose", element.getCompose(), -1); 18270 if (element.hasExpansion()) 18271 composeValueSetValueSetExpansionComponent(t, "ValueSet", "expansion", element.getExpansion(), -1); 18272 } 18273 18274 protected void composeValueSetValueSetComposeComponent(Complex parent, String parentType, String name, 18275 ValueSet.ValueSetComposeComponent element, int index) { 18276 if (element == null) 18277 return; 18278 Complex t; 18279 if (Utilities.noString(parentType)) 18280 t = parent; 18281 else { 18282 t = parent.predicate("fhir:" + parentType + '.' + name); 18283 } 18284 composeBackboneElement(t, "compose", name, element, index); 18285 if (element.hasLockedDateElement()) 18286 composeDate(t, "ValueSet", "lockedDate", element.getLockedDateElement(), -1); 18287 if (element.hasInactiveElement()) 18288 composeBoolean(t, "ValueSet", "inactive", element.getInactiveElement(), -1); 18289 for (int i = 0; i < element.getInclude().size(); i++) 18290 composeValueSetConceptSetComponent(t, "ValueSet", "include", element.getInclude().get(i), i); 18291 for (int i = 0; i < element.getExclude().size(); i++) 18292 composeValueSetConceptSetComponent(t, "ValueSet", "exclude", element.getExclude().get(i), i); 18293 } 18294 18295 protected void composeValueSetConceptSetComponent(Complex parent, String parentType, String name, 18296 ValueSet.ConceptSetComponent element, int index) { 18297 if (element == null) 18298 return; 18299 Complex t; 18300 if (Utilities.noString(parentType)) 18301 t = parent; 18302 else { 18303 t = parent.predicate("fhir:" + parentType + '.' + name); 18304 } 18305 composeBackboneElement(t, "include", name, element, index); 18306 if (element.hasSystemElement()) 18307 composeUri(t, "ValueSet", "system", element.getSystemElement(), -1); 18308 if (element.hasVersionElement()) 18309 composeString(t, "ValueSet", "version", element.getVersionElement(), -1); 18310 for (int i = 0; i < element.getConcept().size(); i++) 18311 composeValueSetConceptReferenceComponent(t, "ValueSet", "concept", element.getConcept().get(i), i); 18312 for (int i = 0; i < element.getFilter().size(); i++) 18313 composeValueSetConceptSetFilterComponent(t, "ValueSet", "filter", element.getFilter().get(i), i); 18314 for (int i = 0; i < element.getValueSet().size(); i++) 18315 composeCanonical(t, "ValueSet", "valueSet", element.getValueSet().get(i), i); 18316 } 18317 18318 protected void composeValueSetConceptReferenceComponent(Complex parent, String parentType, String name, 18319 ValueSet.ConceptReferenceComponent element, int index) { 18320 if (element == null) 18321 return; 18322 Complex t; 18323 if (Utilities.noString(parentType)) 18324 t = parent; 18325 else { 18326 t = parent.predicate("fhir:" + parentType + '.' + name); 18327 } 18328 composeBackboneElement(t, "concept", name, element, index); 18329 if (element.hasCodeElement()) 18330 composeCode(t, "ValueSet", "code", element.getCodeElement(), -1); 18331 if (element.hasDisplayElement()) 18332 composeString(t, "ValueSet", "display", element.getDisplayElement(), -1); 18333 for (int i = 0; i < element.getDesignation().size(); i++) 18334 composeValueSetConceptReferenceDesignationComponent(t, "ValueSet", "designation", element.getDesignation().get(i), 18335 i); 18336 } 18337 18338 protected void composeValueSetConceptReferenceDesignationComponent(Complex parent, String parentType, String name, 18339 ValueSet.ConceptReferenceDesignationComponent element, int index) { 18340 if (element == null) 18341 return; 18342 Complex t; 18343 if (Utilities.noString(parentType)) 18344 t = parent; 18345 else { 18346 t = parent.predicate("fhir:" + parentType + '.' + name); 18347 } 18348 composeBackboneElement(t, "designation", name, element, index); 18349 if (element.hasLanguageElement()) 18350 composeCode(t, "ValueSet", "language", element.getLanguageElement(), -1); 18351 if (element.hasUse()) 18352 composeCoding(t, "ValueSet", "use", element.getUse(), -1); 18353 if (element.hasValueElement()) 18354 composeString(t, "ValueSet", "value", element.getValueElement(), -1); 18355 } 18356 18357 protected void composeValueSetConceptSetFilterComponent(Complex parent, String parentType, String name, 18358 ValueSet.ConceptSetFilterComponent element, int index) { 18359 if (element == null) 18360 return; 18361 Complex t; 18362 if (Utilities.noString(parentType)) 18363 t = parent; 18364 else { 18365 t = parent.predicate("fhir:" + parentType + '.' + name); 18366 } 18367 composeBackboneElement(t, "filter", name, element, index); 18368 if (element.hasPropertyElement()) 18369 composeCode(t, "ValueSet", "property", element.getPropertyElement(), -1); 18370 if (element.hasOpElement()) 18371 composeEnum(t, "ValueSet", "op", element.getOpElement(), -1); 18372 if (element.hasValueElement()) 18373 composeString(t, "ValueSet", "value", element.getValueElement(), -1); 18374 } 18375 18376 protected void composeValueSetValueSetExpansionComponent(Complex parent, String parentType, String name, 18377 ValueSet.ValueSetExpansionComponent element, int index) { 18378 if (element == null) 18379 return; 18380 Complex t; 18381 if (Utilities.noString(parentType)) 18382 t = parent; 18383 else { 18384 t = parent.predicate("fhir:" + parentType + '.' + name); 18385 } 18386 composeBackboneElement(t, "expansion", name, element, index); 18387 if (element.hasIdentifierElement()) 18388 composeUri(t, "ValueSet", "identifier", element.getIdentifierElement(), -1); 18389 if (element.hasTimestampElement()) 18390 composeDateTime(t, "ValueSet", "timestamp", element.getTimestampElement(), -1); 18391 if (element.hasTotalElement()) 18392 composeInteger(t, "ValueSet", "total", element.getTotalElement(), -1); 18393 if (element.hasOffsetElement()) 18394 composeInteger(t, "ValueSet", "offset", element.getOffsetElement(), -1); 18395 for (int i = 0; i < element.getParameter().size(); i++) 18396 composeValueSetValueSetExpansionParameterComponent(t, "ValueSet", "parameter", element.getParameter().get(i), i); 18397 for (int i = 0; i < element.getContains().size(); i++) 18398 composeValueSetValueSetExpansionContainsComponent(t, "ValueSet", "contains", element.getContains().get(i), i); 18399 } 18400 18401 protected void composeValueSetValueSetExpansionParameterComponent(Complex parent, String parentType, String name, 18402 ValueSet.ValueSetExpansionParameterComponent element, int index) { 18403 if (element == null) 18404 return; 18405 Complex t; 18406 if (Utilities.noString(parentType)) 18407 t = parent; 18408 else { 18409 t = parent.predicate("fhir:" + parentType + '.' + name); 18410 } 18411 composeBackboneElement(t, "parameter", name, element, index); 18412 if (element.hasNameElement()) 18413 composeString(t, "ValueSet", "name", element.getNameElement(), -1); 18414 if (element.hasValue()) 18415 composeType(t, "ValueSet", "value", element.getValue(), -1); 18416 } 18417 18418 protected void composeValueSetValueSetExpansionContainsComponent(Complex parent, String parentType, String name, 18419 ValueSet.ValueSetExpansionContainsComponent element, int index) { 18420 if (element == null) 18421 return; 18422 Complex t; 18423 if (Utilities.noString(parentType)) 18424 t = parent; 18425 else { 18426 t = parent.predicate("fhir:" + parentType + '.' + name); 18427 } 18428 composeBackboneElement(t, "contains", name, element, index); 18429 if (element.hasSystemElement()) 18430 composeUri(t, "ValueSet", "system", element.getSystemElement(), -1); 18431 if (element.hasAbstractElement()) 18432 composeBoolean(t, "ValueSet", "abstract", element.getAbstractElement(), -1); 18433 if (element.hasInactiveElement()) 18434 composeBoolean(t, "ValueSet", "inactive", element.getInactiveElement(), -1); 18435 if (element.hasVersionElement()) 18436 composeString(t, "ValueSet", "version", element.getVersionElement(), -1); 18437 if (element.hasCodeElement()) 18438 composeCode(t, "ValueSet", "code", element.getCodeElement(), -1); 18439 if (element.hasDisplayElement()) 18440 composeString(t, "ValueSet", "display", element.getDisplayElement(), -1); 18441 for (int i = 0; i < element.getDesignation().size(); i++) 18442 composeValueSetConceptReferenceDesignationComponent(t, "ValueSet", "designation", element.getDesignation().get(i), 18443 i); 18444 for (int i = 0; i < element.getContains().size(); i++) 18445 composeValueSetValueSetExpansionContainsComponent(t, "ValueSet", "contains", element.getContains().get(i), i); 18446 } 18447 18448 protected void composeVerificationResult(Complex parent, String parentType, String name, VerificationResult element, 18449 int index) { 18450 if (element == null) 18451 return; 18452 Complex t; 18453 if (Utilities.noString(parentType)) 18454 t = parent; 18455 else { 18456 t = parent.predicate("fhir:" + parentType + '.' + name); 18457 } 18458 composeDomainResource(t, "VerificationResult", name, element, index); 18459 for (int i = 0; i < element.getTarget().size(); i++) 18460 composeReference(t, "VerificationResult", "target", element.getTarget().get(i), i); 18461 for (int i = 0; i < element.getTargetLocation().size(); i++) 18462 composeString(t, "VerificationResult", "targetLocation", element.getTargetLocation().get(i), i); 18463 if (element.hasNeed()) 18464 composeCodeableConcept(t, "VerificationResult", "need", element.getNeed(), -1); 18465 if (element.hasStatusElement()) 18466 composeEnum(t, "VerificationResult", "status", element.getStatusElement(), -1); 18467 if (element.hasStatusDateElement()) 18468 composeDateTime(t, "VerificationResult", "statusDate", element.getStatusDateElement(), -1); 18469 if (element.hasValidationType()) 18470 composeCodeableConcept(t, "VerificationResult", "validationType", element.getValidationType(), -1); 18471 for (int i = 0; i < element.getValidationProcess().size(); i++) 18472 composeCodeableConcept(t, "VerificationResult", "validationProcess", element.getValidationProcess().get(i), i); 18473 if (element.hasFrequency()) 18474 composeTiming(t, "VerificationResult", "frequency", element.getFrequency(), -1); 18475 if (element.hasLastPerformedElement()) 18476 composeDateTime(t, "VerificationResult", "lastPerformed", element.getLastPerformedElement(), -1); 18477 if (element.hasNextScheduledElement()) 18478 composeDate(t, "VerificationResult", "nextScheduled", element.getNextScheduledElement(), -1); 18479 if (element.hasFailureAction()) 18480 composeCodeableConcept(t, "VerificationResult", "failureAction", element.getFailureAction(), -1); 18481 for (int i = 0; i < element.getPrimarySource().size(); i++) 18482 composeVerificationResultVerificationResultPrimarySourceComponent(t, "VerificationResult", "primarySource", 18483 element.getPrimarySource().get(i), i); 18484 if (element.hasAttestation()) 18485 composeVerificationResultVerificationResultAttestationComponent(t, "VerificationResult", "attestation", 18486 element.getAttestation(), -1); 18487 for (int i = 0; i < element.getValidator().size(); i++) 18488 composeVerificationResultVerificationResultValidatorComponent(t, "VerificationResult", "validator", 18489 element.getValidator().get(i), i); 18490 } 18491 18492 protected void composeVerificationResultVerificationResultPrimarySourceComponent(Complex parent, String parentType, 18493 String name, VerificationResult.VerificationResultPrimarySourceComponent element, int index) { 18494 if (element == null) 18495 return; 18496 Complex t; 18497 if (Utilities.noString(parentType)) 18498 t = parent; 18499 else { 18500 t = parent.predicate("fhir:" + parentType + '.' + name); 18501 } 18502 composeBackboneElement(t, "primarySource", name, element, index); 18503 if (element.hasWho()) 18504 composeReference(t, "VerificationResult", "who", element.getWho(), -1); 18505 for (int i = 0; i < element.getType().size(); i++) 18506 composeCodeableConcept(t, "VerificationResult", "type", element.getType().get(i), i); 18507 for (int i = 0; i < element.getCommunicationMethod().size(); i++) 18508 composeCodeableConcept(t, "VerificationResult", "communicationMethod", element.getCommunicationMethod().get(i), 18509 i); 18510 if (element.hasValidationStatus()) 18511 composeCodeableConcept(t, "VerificationResult", "validationStatus", element.getValidationStatus(), -1); 18512 if (element.hasValidationDateElement()) 18513 composeDateTime(t, "VerificationResult", "validationDate", element.getValidationDateElement(), -1); 18514 if (element.hasCanPushUpdates()) 18515 composeCodeableConcept(t, "VerificationResult", "canPushUpdates", element.getCanPushUpdates(), -1); 18516 for (int i = 0; i < element.getPushTypeAvailable().size(); i++) 18517 composeCodeableConcept(t, "VerificationResult", "pushTypeAvailable", element.getPushTypeAvailable().get(i), i); 18518 } 18519 18520 protected void composeVerificationResultVerificationResultAttestationComponent(Complex parent, String parentType, 18521 String name, VerificationResult.VerificationResultAttestationComponent element, int index) { 18522 if (element == null) 18523 return; 18524 Complex t; 18525 if (Utilities.noString(parentType)) 18526 t = parent; 18527 else { 18528 t = parent.predicate("fhir:" + parentType + '.' + name); 18529 } 18530 composeBackboneElement(t, "attestation", name, element, index); 18531 if (element.hasWho()) 18532 composeReference(t, "VerificationResult", "who", element.getWho(), -1); 18533 if (element.hasOnBehalfOf()) 18534 composeReference(t, "VerificationResult", "onBehalfOf", element.getOnBehalfOf(), -1); 18535 if (element.hasCommunicationMethod()) 18536 composeCodeableConcept(t, "VerificationResult", "communicationMethod", element.getCommunicationMethod(), -1); 18537 if (element.hasDateElement()) 18538 composeDate(t, "VerificationResult", "date", element.getDateElement(), -1); 18539 if (element.hasSourceIdentityCertificateElement()) 18540 composeString(t, "VerificationResult", "sourceIdentityCertificate", element.getSourceIdentityCertificateElement(), 18541 -1); 18542 if (element.hasProxyIdentityCertificateElement()) 18543 composeString(t, "VerificationResult", "proxyIdentityCertificate", element.getProxyIdentityCertificateElement(), 18544 -1); 18545 if (element.hasProxySignature()) 18546 composeSignature(t, "VerificationResult", "proxySignature", element.getProxySignature(), -1); 18547 if (element.hasSourceSignature()) 18548 composeSignature(t, "VerificationResult", "sourceSignature", element.getSourceSignature(), -1); 18549 } 18550 18551 protected void composeVerificationResultVerificationResultValidatorComponent(Complex parent, String parentType, 18552 String name, VerificationResult.VerificationResultValidatorComponent element, int index) { 18553 if (element == null) 18554 return; 18555 Complex t; 18556 if (Utilities.noString(parentType)) 18557 t = parent; 18558 else { 18559 t = parent.predicate("fhir:" + parentType + '.' + name); 18560 } 18561 composeBackboneElement(t, "validator", name, element, index); 18562 if (element.hasOrganization()) 18563 composeReference(t, "VerificationResult", "organization", element.getOrganization(), -1); 18564 if (element.hasIdentityCertificateElement()) 18565 composeString(t, "VerificationResult", "identityCertificate", element.getIdentityCertificateElement(), -1); 18566 if (element.hasAttestationSignature()) 18567 composeSignature(t, "VerificationResult", "attestationSignature", element.getAttestationSignature(), -1); 18568 } 18569 18570 protected void composeVisionPrescription(Complex parent, String parentType, String name, VisionPrescription element, 18571 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:" + parentType + '.' + name); 18579 } 18580 composeDomainResource(t, "VisionPrescription", name, element, index); 18581 for (int i = 0; i < element.getIdentifier().size(); i++) 18582 composeIdentifier(t, "VisionPrescription", "identifier", element.getIdentifier().get(i), i); 18583 if (element.hasStatusElement()) 18584 composeEnum(t, "VisionPrescription", "status", element.getStatusElement(), -1); 18585 if (element.hasCreatedElement()) 18586 composeDateTime(t, "VisionPrescription", "created", element.getCreatedElement(), -1); 18587 if (element.hasPatient()) 18588 composeReference(t, "VisionPrescription", "patient", element.getPatient(), -1); 18589 if (element.hasEncounter()) 18590 composeReference(t, "VisionPrescription", "encounter", element.getEncounter(), -1); 18591 if (element.hasDateWrittenElement()) 18592 composeDateTime(t, "VisionPrescription", "dateWritten", element.getDateWrittenElement(), -1); 18593 if (element.hasPrescriber()) 18594 composeReference(t, "VisionPrescription", "prescriber", element.getPrescriber(), -1); 18595 for (int i = 0; i < element.getLensSpecification().size(); i++) 18596 composeVisionPrescriptionVisionPrescriptionLensSpecificationComponent(t, "VisionPrescription", 18597 "lensSpecification", element.getLensSpecification().get(i), i); 18598 } 18599 18600 protected void composeVisionPrescriptionVisionPrescriptionLensSpecificationComponent(Complex parent, 18601 String parentType, String name, VisionPrescription.VisionPrescriptionLensSpecificationComponent element, 18602 int index) { 18603 if (element == null) 18604 return; 18605 Complex t; 18606 if (Utilities.noString(parentType)) 18607 t = parent; 18608 else { 18609 t = parent.predicate("fhir:" + parentType + '.' + name); 18610 } 18611 composeBackboneElement(t, "lensSpecification", name, element, index); 18612 if (element.hasProduct()) 18613 composeCodeableConcept(t, "VisionPrescription", "product", element.getProduct(), -1); 18614 if (element.hasEyeElement()) 18615 composeEnum(t, "VisionPrescription", "eye", element.getEyeElement(), -1); 18616 if (element.hasSphereElement()) 18617 composeDecimal(t, "VisionPrescription", "sphere", element.getSphereElement(), -1); 18618 if (element.hasCylinderElement()) 18619 composeDecimal(t, "VisionPrescription", "cylinder", element.getCylinderElement(), -1); 18620 if (element.hasAxisElement()) 18621 composeInteger(t, "VisionPrescription", "axis", element.getAxisElement(), -1); 18622 for (int i = 0; i < element.getPrism().size(); i++) 18623 composeVisionPrescriptionPrismComponent(t, "VisionPrescription", "prism", element.getPrism().get(i), i); 18624 if (element.hasAddElement()) 18625 composeDecimal(t, "VisionPrescription", "add", element.getAddElement(), -1); 18626 if (element.hasPowerElement()) 18627 composeDecimal(t, "VisionPrescription", "power", element.getPowerElement(), -1); 18628 if (element.hasBackCurveElement()) 18629 composeDecimal(t, "VisionPrescription", "backCurve", element.getBackCurveElement(), -1); 18630 if (element.hasDiameterElement()) 18631 composeDecimal(t, "VisionPrescription", "diameter", element.getDiameterElement(), -1); 18632 if (element.hasDuration()) 18633 composeQuantity(t, "VisionPrescription", "duration", element.getDuration(), -1); 18634 if (element.hasColorElement()) 18635 composeString(t, "VisionPrescription", "color", element.getColorElement(), -1); 18636 if (element.hasBrandElement()) 18637 composeString(t, "VisionPrescription", "brand", element.getBrandElement(), -1); 18638 for (int i = 0; i < element.getNote().size(); i++) 18639 composeAnnotation(t, "VisionPrescription", "note", element.getNote().get(i), i); 18640 } 18641 18642 protected void composeVisionPrescriptionPrismComponent(Complex parent, String parentType, String name, 18643 VisionPrescription.PrismComponent element, int index) { 18644 if (element == null) 18645 return; 18646 Complex t; 18647 if (Utilities.noString(parentType)) 18648 t = parent; 18649 else { 18650 t = parent.predicate("fhir:" + parentType + '.' + name); 18651 } 18652 composeBackboneElement(t, "prism", name, element, index); 18653 if (element.hasAmountElement()) 18654 composeDecimal(t, "VisionPrescription", "amount", element.getAmountElement(), -1); 18655 if (element.hasBaseElement()) 18656 composeEnum(t, "VisionPrescription", "base", element.getBaseElement(), -1); 18657 } 18658 18659 @Override 18660 protected void composeResource(Complex parent, Resource resource) { 18661 if (resource instanceof Parameters) 18662 composeParameters(parent, null, "Parameters", (Parameters) resource, -1); 18663 else if (resource instanceof Account) 18664 composeAccount(parent, null, "Account", (Account) resource, -1); 18665 else if (resource instanceof ActivityDefinition) 18666 composeActivityDefinition(parent, null, "ActivityDefinition", (ActivityDefinition) resource, -1); 18667 else if (resource instanceof AdverseEvent) 18668 composeAdverseEvent(parent, null, "AdverseEvent", (AdverseEvent) resource, -1); 18669 else if (resource instanceof AllergyIntolerance) 18670 composeAllergyIntolerance(parent, null, "AllergyIntolerance", (AllergyIntolerance) resource, -1); 18671 else if (resource instanceof Appointment) 18672 composeAppointment(parent, null, "Appointment", (Appointment) resource, -1); 18673 else if (resource instanceof AppointmentResponse) 18674 composeAppointmentResponse(parent, null, "AppointmentResponse", (AppointmentResponse) resource, -1); 18675 else if (resource instanceof AuditEvent) 18676 composeAuditEvent(parent, null, "AuditEvent", (AuditEvent) resource, -1); 18677 else if (resource instanceof Basic) 18678 composeBasic(parent, null, "Basic", (Basic) resource, -1); 18679 else if (resource instanceof Binary) 18680 composeBinary(parent, null, "Binary", (Binary) resource, -1); 18681 else if (resource instanceof BiologicallyDerivedProduct) 18682 composeBiologicallyDerivedProduct(parent, null, "BiologicallyDerivedProduct", 18683 (BiologicallyDerivedProduct) resource, -1); 18684 else if (resource instanceof BodyStructure) 18685 composeBodyStructure(parent, null, "BodyStructure", (BodyStructure) resource, -1); 18686 else if (resource instanceof Bundle) 18687 composeBundle(parent, null, "Bundle", (Bundle) resource, -1); 18688 else if (resource instanceof CapabilityStatement) 18689 composeCapabilityStatement(parent, null, "CapabilityStatement", (CapabilityStatement) resource, -1); 18690 else if (resource instanceof CarePlan) 18691 composeCarePlan(parent, null, "CarePlan", (CarePlan) resource, -1); 18692 else if (resource instanceof CareTeam) 18693 composeCareTeam(parent, null, "CareTeam", (CareTeam) resource, -1); 18694 else if (resource instanceof CatalogEntry) 18695 composeCatalogEntry(parent, null, "CatalogEntry", (CatalogEntry) resource, -1); 18696 else if (resource instanceof ChargeItem) 18697 composeChargeItem(parent, null, "ChargeItem", (ChargeItem) resource, -1); 18698 else if (resource instanceof ChargeItemDefinition) 18699 composeChargeItemDefinition(parent, null, "ChargeItemDefinition", (ChargeItemDefinition) resource, -1); 18700 else if (resource instanceof Claim) 18701 composeClaim(parent, null, "Claim", (Claim) resource, -1); 18702 else if (resource instanceof ClaimResponse) 18703 composeClaimResponse(parent, null, "ClaimResponse", (ClaimResponse) resource, -1); 18704 else if (resource instanceof ClinicalImpression) 18705 composeClinicalImpression(parent, null, "ClinicalImpression", (ClinicalImpression) resource, -1); 18706 else if (resource instanceof CodeSystem) 18707 composeCodeSystem(parent, null, "CodeSystem", (CodeSystem) resource, -1); 18708 else if (resource instanceof Communication) 18709 composeCommunication(parent, null, "Communication", (Communication) resource, -1); 18710 else if (resource instanceof CommunicationRequest) 18711 composeCommunicationRequest(parent, null, "CommunicationRequest", (CommunicationRequest) resource, -1); 18712 else if (resource instanceof CompartmentDefinition) 18713 composeCompartmentDefinition(parent, null, "CompartmentDefinition", (CompartmentDefinition) resource, -1); 18714 else if (resource instanceof Composition) 18715 composeComposition(parent, null, "Composition", (Composition) resource, -1); 18716 else if (resource instanceof ConceptMap) 18717 composeConceptMap(parent, null, "ConceptMap", (ConceptMap) resource, -1); 18718 else if (resource instanceof Condition) 18719 composeCondition(parent, null, "Condition", (Condition) resource, -1); 18720 else if (resource instanceof Consent) 18721 composeConsent(parent, null, "Consent", (Consent) resource, -1); 18722 else if (resource instanceof Contract) 18723 composeContract(parent, null, "Contract", (Contract) resource, -1); 18724 else if (resource instanceof Coverage) 18725 composeCoverage(parent, null, "Coverage", (Coverage) resource, -1); 18726 else if (resource instanceof CoverageEligibilityRequest) 18727 composeCoverageEligibilityRequest(parent, null, "CoverageEligibilityRequest", 18728 (CoverageEligibilityRequest) resource, -1); 18729 else if (resource instanceof CoverageEligibilityResponse) 18730 composeCoverageEligibilityResponse(parent, null, "CoverageEligibilityResponse", 18731 (CoverageEligibilityResponse) resource, -1); 18732 else if (resource instanceof DetectedIssue) 18733 composeDetectedIssue(parent, null, "DetectedIssue", (DetectedIssue) resource, -1); 18734 else if (resource instanceof Device) 18735 composeDevice(parent, null, "Device", (Device) resource, -1); 18736 else if (resource instanceof DeviceDefinition) 18737 composeDeviceDefinition(parent, null, "DeviceDefinition", (DeviceDefinition) resource, -1); 18738 else if (resource instanceof DeviceMetric) 18739 composeDeviceMetric(parent, null, "DeviceMetric", (DeviceMetric) resource, -1); 18740 else if (resource instanceof DeviceRequest) 18741 composeDeviceRequest(parent, null, "DeviceRequest", (DeviceRequest) resource, -1); 18742 else if (resource instanceof DeviceUseStatement) 18743 composeDeviceUseStatement(parent, null, "DeviceUseStatement", (DeviceUseStatement) resource, -1); 18744 else if (resource instanceof DiagnosticReport) 18745 composeDiagnosticReport(parent, null, "DiagnosticReport", (DiagnosticReport) resource, -1); 18746 else if (resource instanceof DocumentManifest) 18747 composeDocumentManifest(parent, null, "DocumentManifest", (DocumentManifest) resource, -1); 18748 else if (resource instanceof DocumentReference) 18749 composeDocumentReference(parent, null, "DocumentReference", (DocumentReference) resource, -1); 18750 else if (resource instanceof EffectEvidenceSynthesis) 18751 composeEffectEvidenceSynthesis(parent, null, "EffectEvidenceSynthesis", (EffectEvidenceSynthesis) resource, -1); 18752 else if (resource instanceof Encounter) 18753 composeEncounter(parent, null, "Encounter", (Encounter) resource, -1); 18754 else if (resource instanceof Endpoint) 18755 composeEndpoint(parent, null, "Endpoint", (Endpoint) resource, -1); 18756 else if (resource instanceof EnrollmentRequest) 18757 composeEnrollmentRequest(parent, null, "EnrollmentRequest", (EnrollmentRequest) resource, -1); 18758 else if (resource instanceof EnrollmentResponse) 18759 composeEnrollmentResponse(parent, null, "EnrollmentResponse", (EnrollmentResponse) resource, -1); 18760 else if (resource instanceof EpisodeOfCare) 18761 composeEpisodeOfCare(parent, null, "EpisodeOfCare", (EpisodeOfCare) resource, -1); 18762 else if (resource instanceof EventDefinition) 18763 composeEventDefinition(parent, null, "EventDefinition", (EventDefinition) resource, -1); 18764 else if (resource instanceof Evidence) 18765 composeEvidence(parent, null, "Evidence", (Evidence) resource, -1); 18766 else if (resource instanceof EvidenceVariable) 18767 composeEvidenceVariable(parent, null, "EvidenceVariable", (EvidenceVariable) resource, -1); 18768 else if (resource instanceof ExampleScenario) 18769 composeExampleScenario(parent, null, "ExampleScenario", (ExampleScenario) resource, -1); 18770 else if (resource instanceof ExplanationOfBenefit) 18771 composeExplanationOfBenefit(parent, null, "ExplanationOfBenefit", (ExplanationOfBenefit) resource, -1); 18772 else if (resource instanceof FamilyMemberHistory) 18773 composeFamilyMemberHistory(parent, null, "FamilyMemberHistory", (FamilyMemberHistory) resource, -1); 18774 else if (resource instanceof Flag) 18775 composeFlag(parent, null, "Flag", (Flag) resource, -1); 18776 else if (resource instanceof Goal) 18777 composeGoal(parent, null, "Goal", (Goal) resource, -1); 18778 else if (resource instanceof GraphDefinition) 18779 composeGraphDefinition(parent, null, "GraphDefinition", (GraphDefinition) resource, -1); 18780 else if (resource instanceof Group) 18781 composeGroup(parent, null, "Group", (Group) resource, -1); 18782 else if (resource instanceof GuidanceResponse) 18783 composeGuidanceResponse(parent, null, "GuidanceResponse", (GuidanceResponse) resource, -1); 18784 else if (resource instanceof HealthcareService) 18785 composeHealthcareService(parent, null, "HealthcareService", (HealthcareService) resource, -1); 18786 else if (resource instanceof ImagingStudy) 18787 composeImagingStudy(parent, null, "ImagingStudy", (ImagingStudy) resource, -1); 18788 else if (resource instanceof Immunization) 18789 composeImmunization(parent, null, "Immunization", (Immunization) resource, -1); 18790 else if (resource instanceof ImmunizationEvaluation) 18791 composeImmunizationEvaluation(parent, null, "ImmunizationEvaluation", (ImmunizationEvaluation) resource, -1); 18792 else if (resource instanceof ImmunizationRecommendation) 18793 composeImmunizationRecommendation(parent, null, "ImmunizationRecommendation", 18794 (ImmunizationRecommendation) resource, -1); 18795 else if (resource instanceof ImplementationGuide) 18796 composeImplementationGuide(parent, null, "ImplementationGuide", (ImplementationGuide) resource, -1); 18797 else if (resource instanceof InsurancePlan) 18798 composeInsurancePlan(parent, null, "InsurancePlan", (InsurancePlan) resource, -1); 18799 else if (resource instanceof Invoice) 18800 composeInvoice(parent, null, "Invoice", (Invoice) resource, -1); 18801 else if (resource instanceof Library) 18802 composeLibrary(parent, null, "Library", (Library) resource, -1); 18803 else if (resource instanceof Linkage) 18804 composeLinkage(parent, null, "Linkage", (Linkage) resource, -1); 18805 else if (resource instanceof ListResource) 18806 composeListResource(parent, null, "ListResource", (ListResource) resource, -1); 18807 else if (resource instanceof Location) 18808 composeLocation(parent, null, "Location", (Location) resource, -1); 18809 else if (resource instanceof Measure) 18810 composeMeasure(parent, null, "Measure", (Measure) resource, -1); 18811 else if (resource instanceof MeasureReport) 18812 composeMeasureReport(parent, null, "MeasureReport", (MeasureReport) resource, -1); 18813 else if (resource instanceof Media) 18814 composeMedia(parent, null, "Media", (Media) resource, -1); 18815 else if (resource instanceof Medication) 18816 composeMedication(parent, null, "Medication", (Medication) resource, -1); 18817 else if (resource instanceof MedicationAdministration) 18818 composeMedicationAdministration(parent, null, "MedicationAdministration", (MedicationAdministration) resource, 18819 -1); 18820 else if (resource instanceof MedicationDispense) 18821 composeMedicationDispense(parent, null, "MedicationDispense", (MedicationDispense) resource, -1); 18822 else if (resource instanceof MedicationKnowledge) 18823 composeMedicationKnowledge(parent, null, "MedicationKnowledge", (MedicationKnowledge) resource, -1); 18824 else if (resource instanceof MedicationRequest) 18825 composeMedicationRequest(parent, null, "MedicationRequest", (MedicationRequest) resource, -1); 18826 else if (resource instanceof MedicationStatement) 18827 composeMedicationStatement(parent, null, "MedicationStatement", (MedicationStatement) resource, -1); 18828 else if (resource instanceof MedicinalProduct) 18829 composeMedicinalProduct(parent, null, "MedicinalProduct", (MedicinalProduct) resource, -1); 18830 else if (resource instanceof MedicinalProductAuthorization) 18831 composeMedicinalProductAuthorization(parent, null, "MedicinalProductAuthorization", 18832 (MedicinalProductAuthorization) resource, -1); 18833 else if (resource instanceof MedicinalProductContraindication) 18834 composeMedicinalProductContraindication(parent, null, "MedicinalProductContraindication", 18835 (MedicinalProductContraindication) resource, -1); 18836 else if (resource instanceof MedicinalProductIndication) 18837 composeMedicinalProductIndication(parent, null, "MedicinalProductIndication", 18838 (MedicinalProductIndication) resource, -1); 18839 else if (resource instanceof MedicinalProductIngredient) 18840 composeMedicinalProductIngredient(parent, null, "MedicinalProductIngredient", 18841 (MedicinalProductIngredient) resource, -1); 18842 else if (resource instanceof MedicinalProductInteraction) 18843 composeMedicinalProductInteraction(parent, null, "MedicinalProductInteraction", 18844 (MedicinalProductInteraction) resource, -1); 18845 else if (resource instanceof MedicinalProductManufactured) 18846 composeMedicinalProductManufactured(parent, null, "MedicinalProductManufactured", 18847 (MedicinalProductManufactured) resource, -1); 18848 else if (resource instanceof MedicinalProductPackaged) 18849 composeMedicinalProductPackaged(parent, null, "MedicinalProductPackaged", (MedicinalProductPackaged) resource, 18850 -1); 18851 else if (resource instanceof MedicinalProductPharmaceutical) 18852 composeMedicinalProductPharmaceutical(parent, null, "MedicinalProductPharmaceutical", 18853 (MedicinalProductPharmaceutical) resource, -1); 18854 else if (resource instanceof MedicinalProductUndesirableEffect) 18855 composeMedicinalProductUndesirableEffect(parent, null, "MedicinalProductUndesirableEffect", 18856 (MedicinalProductUndesirableEffect) resource, -1); 18857 else if (resource instanceof MessageDefinition) 18858 composeMessageDefinition(parent, null, "MessageDefinition", (MessageDefinition) resource, -1); 18859 else if (resource instanceof MessageHeader) 18860 composeMessageHeader(parent, null, "MessageHeader", (MessageHeader) resource, -1); 18861 else if (resource instanceof MolecularSequence) 18862 composeMolecularSequence(parent, null, "MolecularSequence", (MolecularSequence) resource, -1); 18863 else if (resource instanceof NamingSystem) 18864 composeNamingSystem(parent, null, "NamingSystem", (NamingSystem) resource, -1); 18865 else if (resource instanceof NutritionOrder) 18866 composeNutritionOrder(parent, null, "NutritionOrder", (NutritionOrder) resource, -1); 18867 else if (resource instanceof Observation) 18868 composeObservation(parent, null, "Observation", (Observation) resource, -1); 18869 else if (resource instanceof ObservationDefinition) 18870 composeObservationDefinition(parent, null, "ObservationDefinition", (ObservationDefinition) resource, -1); 18871 else if (resource instanceof OperationDefinition) 18872 composeOperationDefinition(parent, null, "OperationDefinition", (OperationDefinition) resource, -1); 18873 else if (resource instanceof OperationOutcome) 18874 composeOperationOutcome(parent, null, "OperationOutcome", (OperationOutcome) resource, -1); 18875 else if (resource instanceof Organization) 18876 composeOrganization(parent, null, "Organization", (Organization) resource, -1); 18877 else if (resource instanceof OrganizationAffiliation) 18878 composeOrganizationAffiliation(parent, null, "OrganizationAffiliation", (OrganizationAffiliation) resource, -1); 18879 else if (resource instanceof Patient) 18880 composePatient(parent, null, "Patient", (Patient) resource, -1); 18881 else if (resource instanceof PaymentNotice) 18882 composePaymentNotice(parent, null, "PaymentNotice", (PaymentNotice) resource, -1); 18883 else if (resource instanceof PaymentReconciliation) 18884 composePaymentReconciliation(parent, null, "PaymentReconciliation", (PaymentReconciliation) resource, -1); 18885 else if (resource instanceof Person) 18886 composePerson(parent, null, "Person", (Person) resource, -1); 18887 else if (resource instanceof PlanDefinition) 18888 composePlanDefinition(parent, null, "PlanDefinition", (PlanDefinition) resource, -1); 18889 else if (resource instanceof Practitioner) 18890 composePractitioner(parent, null, "Practitioner", (Practitioner) resource, -1); 18891 else if (resource instanceof PractitionerRole) 18892 composePractitionerRole(parent, null, "PractitionerRole", (PractitionerRole) resource, -1); 18893 else if (resource instanceof Procedure) 18894 composeProcedure(parent, null, "Procedure", (Procedure) resource, -1); 18895 else if (resource instanceof Provenance) 18896 composeProvenance(parent, null, "Provenance", (Provenance) resource, -1); 18897 else if (resource instanceof Questionnaire) 18898 composeQuestionnaire(parent, null, "Questionnaire", (Questionnaire) resource, -1); 18899 else if (resource instanceof QuestionnaireResponse) 18900 composeQuestionnaireResponse(parent, null, "QuestionnaireResponse", (QuestionnaireResponse) resource, -1); 18901 else if (resource instanceof RelatedPerson) 18902 composeRelatedPerson(parent, null, "RelatedPerson", (RelatedPerson) resource, -1); 18903 else if (resource instanceof RequestGroup) 18904 composeRequestGroup(parent, null, "RequestGroup", (RequestGroup) resource, -1); 18905 else if (resource instanceof ResearchDefinition) 18906 composeResearchDefinition(parent, null, "ResearchDefinition", (ResearchDefinition) resource, -1); 18907 else if (resource instanceof ResearchElementDefinition) 18908 composeResearchElementDefinition(parent, null, "ResearchElementDefinition", (ResearchElementDefinition) resource, 18909 -1); 18910 else if (resource instanceof ResearchStudy) 18911 composeResearchStudy(parent, null, "ResearchStudy", (ResearchStudy) resource, -1); 18912 else if (resource instanceof ResearchSubject) 18913 composeResearchSubject(parent, null, "ResearchSubject", (ResearchSubject) resource, -1); 18914 else if (resource instanceof RiskAssessment) 18915 composeRiskAssessment(parent, null, "RiskAssessment", (RiskAssessment) resource, -1); 18916 else if (resource instanceof RiskEvidenceSynthesis) 18917 composeRiskEvidenceSynthesis(parent, null, "RiskEvidenceSynthesis", (RiskEvidenceSynthesis) resource, -1); 18918 else if (resource instanceof Schedule) 18919 composeSchedule(parent, null, "Schedule", (Schedule) resource, -1); 18920 else if (resource instanceof SearchParameter) 18921 composeSearchParameter(parent, null, "SearchParameter", (SearchParameter) resource, -1); 18922 else if (resource instanceof ServiceRequest) 18923 composeServiceRequest(parent, null, "ServiceRequest", (ServiceRequest) resource, -1); 18924 else if (resource instanceof Slot) 18925 composeSlot(parent, null, "Slot", (Slot) resource, -1); 18926 else if (resource instanceof Specimen) 18927 composeSpecimen(parent, null, "Specimen", (Specimen) resource, -1); 18928 else if (resource instanceof SpecimenDefinition) 18929 composeSpecimenDefinition(parent, null, "SpecimenDefinition", (SpecimenDefinition) resource, -1); 18930 else if (resource instanceof StructureDefinition) 18931 composeStructureDefinition(parent, null, "StructureDefinition", (StructureDefinition) resource, -1); 18932 else if (resource instanceof StructureMap) 18933 composeStructureMap(parent, null, "StructureMap", (StructureMap) resource, -1); 18934 else if (resource instanceof Subscription) 18935 composeSubscription(parent, null, "Subscription", (Subscription) resource, -1); 18936 else if (resource instanceof Substance) 18937 composeSubstance(parent, null, "Substance", (Substance) resource, -1); 18938 else if (resource instanceof SubstanceNucleicAcid) 18939 composeSubstanceNucleicAcid(parent, null, "SubstanceNucleicAcid", (SubstanceNucleicAcid) resource, -1); 18940 else if (resource instanceof SubstancePolymer) 18941 composeSubstancePolymer(parent, null, "SubstancePolymer", (SubstancePolymer) resource, -1); 18942 else if (resource instanceof SubstanceProtein) 18943 composeSubstanceProtein(parent, null, "SubstanceProtein", (SubstanceProtein) resource, -1); 18944 else if (resource instanceof SubstanceReferenceInformation) 18945 composeSubstanceReferenceInformation(parent, null, "SubstanceReferenceInformation", 18946 (SubstanceReferenceInformation) resource, -1); 18947 else if (resource instanceof SubstanceSourceMaterial) 18948 composeSubstanceSourceMaterial(parent, null, "SubstanceSourceMaterial", (SubstanceSourceMaterial) resource, -1); 18949 else if (resource instanceof SubstanceSpecification) 18950 composeSubstanceSpecification(parent, null, "SubstanceSpecification", (SubstanceSpecification) resource, -1); 18951 else if (resource instanceof SupplyDelivery) 18952 composeSupplyDelivery(parent, null, "SupplyDelivery", (SupplyDelivery) resource, -1); 18953 else if (resource instanceof SupplyRequest) 18954 composeSupplyRequest(parent, null, "SupplyRequest", (SupplyRequest) resource, -1); 18955 else if (resource instanceof Task) 18956 composeTask(parent, null, "Task", (Task) resource, -1); 18957 else if (resource instanceof TerminologyCapabilities) 18958 composeTerminologyCapabilities(parent, null, "TerminologyCapabilities", (TerminologyCapabilities) resource, -1); 18959 else if (resource instanceof TestReport) 18960 composeTestReport(parent, null, "TestReport", (TestReport) resource, -1); 18961 else if (resource instanceof TestScript) 18962 composeTestScript(parent, null, "TestScript", (TestScript) resource, -1); 18963 else if (resource instanceof ValueSet) 18964 composeValueSet(parent, null, "ValueSet", (ValueSet) resource, -1); 18965 else if (resource instanceof VerificationResult) 18966 composeVerificationResult(parent, null, "VerificationResult", (VerificationResult) resource, -1); 18967 else if (resource instanceof VisionPrescription) 18968 composeVisionPrescription(parent, null, "VisionPrescription", (VisionPrescription) resource, -1); 18969 else 18970 throw new Error("Unhandled resource type " + resource.getClass().getName()); 18971 } 18972 18973 protected void composeType(Complex parent, String parentType, String name, Type value, int index) { 18974 if (value == null) 18975 return; 18976 else if (value instanceof DateType) 18977 composeDate(parent, parentType, name, (DateType) value, index); 18978 else if (value instanceof DateTimeType) 18979 composeDateTime(parent, parentType, name, (DateTimeType) value, index); 18980 else if (value instanceof CodeType) 18981 composeCode(parent, parentType, name, (CodeType) value, index); 18982 else if (value instanceof StringType) 18983 composeString(parent, parentType, name, (StringType) value, index); 18984 else if (value instanceof IntegerType) 18985 composeInteger(parent, parentType, name, (IntegerType) value, index); 18986 else if (value instanceof OidType) 18987 composeOid(parent, parentType, name, (OidType) value, index); 18988 else if (value instanceof CanonicalType) 18989 composeCanonical(parent, parentType, name, (CanonicalType) value, index); 18990 else if (value instanceof UriType) 18991 composeUri(parent, parentType, name, (UriType) value, index); 18992 else if (value instanceof UuidType) 18993 composeUuid(parent, parentType, name, (UuidType) value, index); 18994 else if (value instanceof UrlType) 18995 composeUrl(parent, parentType, name, (UrlType) value, index); 18996 else if (value instanceof InstantType) 18997 composeInstant(parent, parentType, name, (InstantType) value, index); 18998 else if (value instanceof BooleanType) 18999 composeBoolean(parent, parentType, name, (BooleanType) value, index); 19000 else if (value instanceof Base64BinaryType) 19001 composeBase64Binary(parent, parentType, name, (Base64BinaryType) value, index); 19002 else if (value instanceof UnsignedIntType) 19003 composeUnsignedInt(parent, parentType, name, (UnsignedIntType) value, index); 19004 else if (value instanceof MarkdownType) 19005 composeMarkdown(parent, parentType, name, (MarkdownType) value, index); 19006 else if (value instanceof TimeType) 19007 composeTime(parent, parentType, name, (TimeType) value, index); 19008 else if (value instanceof IdType) 19009 composeId(parent, parentType, name, (IdType) value, index); 19010 else if (value instanceof PositiveIntType) 19011 composePositiveInt(parent, parentType, name, (PositiveIntType) value, index); 19012 else if (value instanceof DecimalType) 19013 composeDecimal(parent, parentType, name, (DecimalType) value, index); 19014 else if (value instanceof Extension) 19015 composeExtension(parent, parentType, name, (Extension) value, index); 19016 else if (value instanceof Narrative) 19017 composeNarrative(parent, parentType, name, (Narrative) value, index); 19018 else if (value instanceof Meta) 19019 composeMeta(parent, parentType, name, (Meta) value, index); 19020 else if (value instanceof Address) 19021 composeAddress(parent, parentType, name, (Address) value, index); 19022 else if (value instanceof Contributor) 19023 composeContributor(parent, parentType, name, (Contributor) value, index); 19024 else if (value instanceof Attachment) 19025 composeAttachment(parent, parentType, name, (Attachment) value, index); 19026 else if (value instanceof Count) 19027 composeCount(parent, parentType, name, (Count) value, index); 19028 else if (value instanceof DataRequirement) 19029 composeDataRequirement(parent, parentType, name, (DataRequirement) value, index); 19030 else if (value instanceof Dosage) 19031 composeDosage(parent, parentType, name, (Dosage) value, index); 19032 else if (value instanceof Money) 19033 composeMoney(parent, parentType, name, (Money) value, index); 19034 else if (value instanceof HumanName) 19035 composeHumanName(parent, parentType, name, (HumanName) value, index); 19036 else if (value instanceof ContactPoint) 19037 composeContactPoint(parent, parentType, name, (ContactPoint) value, index); 19038 else if (value instanceof MarketingStatus) 19039 composeMarketingStatus(parent, parentType, name, (MarketingStatus) value, index); 19040 else if (value instanceof Identifier) 19041 composeIdentifier(parent, parentType, name, (Identifier) value, index); 19042 else if (value instanceof SubstanceAmount) 19043 composeSubstanceAmount(parent, parentType, name, (SubstanceAmount) value, index); 19044 else if (value instanceof Coding) 19045 composeCoding(parent, parentType, name, (Coding) value, index); 19046 else if (value instanceof SampledData) 19047 composeSampledData(parent, parentType, name, (SampledData) value, index); 19048 else if (value instanceof Population) 19049 composePopulation(parent, parentType, name, (Population) value, index); 19050 else if (value instanceof Ratio) 19051 composeRatio(parent, parentType, name, (Ratio) value, index); 19052 else if (value instanceof Distance) 19053 composeDistance(parent, parentType, name, (Distance) value, index); 19054 else if (value instanceof Age) 19055 composeAge(parent, parentType, name, (Age) value, index); 19056 else if (value instanceof Reference) 19057 composeReference(parent, parentType, name, (Reference) value, index); 19058 else if (value instanceof TriggerDefinition) 19059 composeTriggerDefinition(parent, parentType, name, (TriggerDefinition) value, index); 19060 else if (value instanceof Quantity) 19061 composeQuantity(parent, parentType, name, (Quantity) value, index); 19062 else if (value instanceof Period) 19063 composePeriod(parent, parentType, name, (Period) value, index); 19064 else if (value instanceof Duration) 19065 composeDuration(parent, parentType, name, (Duration) value, index); 19066 else if (value instanceof Range) 19067 composeRange(parent, parentType, name, (Range) value, index); 19068 else if (value instanceof RelatedArtifact) 19069 composeRelatedArtifact(parent, parentType, name, (RelatedArtifact) value, index); 19070 else if (value instanceof Annotation) 19071 composeAnnotation(parent, parentType, name, (Annotation) value, index); 19072 else if (value instanceof ProductShelfLife) 19073 composeProductShelfLife(parent, parentType, name, (ProductShelfLife) value, index); 19074 else if (value instanceof ContactDetail) 19075 composeContactDetail(parent, parentType, name, (ContactDetail) value, index); 19076 else if (value instanceof UsageContext) 19077 composeUsageContext(parent, parentType, name, (UsageContext) value, index); 19078 else if (value instanceof Expression) 19079 composeExpression(parent, parentType, name, (Expression) value, index); 19080 else if (value instanceof Signature) 19081 composeSignature(parent, parentType, name, (Signature) value, index); 19082 else if (value instanceof Timing) 19083 composeTiming(parent, parentType, name, (Timing) value, index); 19084 else if (value instanceof ProdCharacteristic) 19085 composeProdCharacteristic(parent, parentType, name, (ProdCharacteristic) value, index); 19086 else if (value instanceof CodeableConcept) 19087 composeCodeableConcept(parent, parentType, name, (CodeableConcept) value, index); 19088 else if (value instanceof ParameterDefinition) 19089 composeParameterDefinition(parent, parentType, name, (ParameterDefinition) value, index); 19090 else 19091 throw new Error("Unhandled type"); 19092 } 19093 19094}