001package org.hl7.fhir.dstu3.formats; 002 003import java.io.IOException; 004 005 006 007/* 008 Copyright (c) 2011+, HL7, Inc. 009 All rights reserved. 010 011 Redistribution and use in source and binary forms, with or without modification, 012 are permitted provided that the following conditions are met: 013 014 * Redistributions of source code must retain the above copyright notice, this 015 list of conditions and the following disclaimer. 016 * Redistributions in binary form must reproduce the above copyright notice, 017 this list of conditions and the following disclaimer in the documentation 018 and/or other materials provided with the distribution. 019 * Neither the name of HL7 nor the names of its contributors may be used to 020 endorse or promote products derived from this software without specific 021 prior written permission. 022 023 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 024 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 025 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 026 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 027 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 028 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 029 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 030 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 031 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 032 POSSIBILITY OF SUCH DAMAGE. 033 034*/ 035 036// Generated on Mon, Apr 17, 2017 08:38+1000 for FHIR v3.0.x 037import org.hl7.fhir.dstu3.model.*; 038import org.hl7.fhir.exceptions.FHIRFormatError; 039import org.hl7.fhir.utilities.Utilities; 040import org.xmlpull.v1.XmlPullParser; 041import org.xmlpull.v1.XmlPullParserException; 042 043public class XmlParser extends XmlParserBase { 044 045 public XmlParser() { 046 super(); 047 } 048 049 public XmlParser(boolean allowUnknownContent) { 050 super(); 051 setAllowUnknownContent(allowUnknownContent); 052 } 053 054 055 protected boolean parseElementContent(int eventType, XmlPullParser xpp, Element res) throws XmlPullParserException, IOException, FHIRFormatError { 056 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extension")) 057 res.getExtension().add(parseExtension(xpp)); 058 else 059 return false; 060 061 return true; 062 } 063 064 protected boolean parseBackboneContent(int eventType, XmlPullParser xpp, BackboneElement res) throws XmlPullParserException, IOException, FHIRFormatError { 065 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) 066 res.getModifierExtension().add(parseExtension(xpp)); 067 else 068 return parseElementContent(eventType, xpp, res); 069 070 return true; 071 } 072 073 @SuppressWarnings("unchecked") 074 protected <E extends Enum<E>> Enumeration<E> parseEnumeration(XmlPullParser xpp, E item, EnumFactory e) throws XmlPullParserException, IOException, FHIRFormatError { 075 Enumeration<E> res = new Enumeration<E>(e); 076 parseElementAttributes(xpp, res); 077 res.setValue((E) e.fromCode(xpp.getAttributeValue(null, "value"))); 078 next(xpp); 079 int eventType = nextNoWhitespace(xpp); 080 while (eventType != XmlPullParser.END_TAG) { 081 if (!parseElementContent(eventType, xpp, res)) 082 unknownContent(xpp); 083 eventType = nextNoWhitespace(xpp); 084 } 085 next(xpp); 086 parseElementClose(res); 087 return res; 088 } 089 090 protected DateType parseDate(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 091 DateType res = new DateType(xpp.getAttributeValue(null, "value")); 092 parseElementAttributes(xpp, res); 093 next(xpp); 094 int eventType = nextNoWhitespace(xpp); 095 while (eventType != XmlPullParser.END_TAG) { 096 if (!parseElementContent(eventType, xpp, res)) 097 unknownContent(xpp); 098 eventType = nextNoWhitespace(xpp); 099 } 100 next(xpp); 101 parseElementClose(res); 102 return res; 103 } 104 105 protected DateTimeType parseDateTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 106 DateTimeType res = new DateTimeType(xpp.getAttributeValue(null, "value")); 107 parseElementAttributes(xpp, res); 108 next(xpp); 109 int eventType = nextNoWhitespace(xpp); 110 while (eventType != XmlPullParser.END_TAG) { 111 if (!parseElementContent(eventType, xpp, res)) 112 unknownContent(xpp); 113 eventType = nextNoWhitespace(xpp); 114 } 115 next(xpp); 116 parseElementClose(res); 117 return res; 118 } 119 120 protected CodeType parseCode(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 121 CodeType res = new CodeType(xpp.getAttributeValue(null, "value")); 122 parseElementAttributes(xpp, res); 123 next(xpp); 124 int eventType = nextNoWhitespace(xpp); 125 while (eventType != XmlPullParser.END_TAG) { 126 if (!parseElementContent(eventType, xpp, res)) 127 unknownContent(xpp); 128 eventType = nextNoWhitespace(xpp); 129 } 130 next(xpp); 131 parseElementClose(res); 132 return res; 133 } 134 135 protected StringType parseString(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 136 StringType res = new StringType(xpp.getAttributeValue(null, "value")); 137 parseElementAttributes(xpp, res); 138 next(xpp); 139 int eventType = nextNoWhitespace(xpp); 140 while (eventType != XmlPullParser.END_TAG) { 141 if (!parseElementContent(eventType, xpp, res)) 142 unknownContent(xpp); 143 eventType = nextNoWhitespace(xpp); 144 } 145 next(xpp); 146 parseElementClose(res); 147 return res; 148 } 149 150 protected IntegerType parseInteger(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 151 IntegerType res = new IntegerType(xpp.getAttributeValue(null, "value")); 152 parseElementAttributes(xpp, res); 153 next(xpp); 154 int eventType = nextNoWhitespace(xpp); 155 while (eventType != XmlPullParser.END_TAG) { 156 if (!parseElementContent(eventType, xpp, res)) 157 unknownContent(xpp); 158 eventType = nextNoWhitespace(xpp); 159 } 160 next(xpp); 161 parseElementClose(res); 162 return res; 163 } 164 165 protected OidType parseOid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 166 OidType res = new OidType(xpp.getAttributeValue(null, "value")); 167 parseElementAttributes(xpp, res); 168 next(xpp); 169 int eventType = nextNoWhitespace(xpp); 170 while (eventType != XmlPullParser.END_TAG) { 171 if (!parseElementContent(eventType, xpp, res)) 172 unknownContent(xpp); 173 eventType = nextNoWhitespace(xpp); 174 } 175 next(xpp); 176 parseElementClose(res); 177 return res; 178 } 179 180 protected UriType parseUri(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 181 UriType res = new UriType(xpp.getAttributeValue(null, "value")); 182 parseElementAttributes(xpp, res); 183 next(xpp); 184 int eventType = nextNoWhitespace(xpp); 185 while (eventType != XmlPullParser.END_TAG) { 186 if (!parseElementContent(eventType, xpp, res)) 187 unknownContent(xpp); 188 eventType = nextNoWhitespace(xpp); 189 } 190 next(xpp); 191 parseElementClose(res); 192 return res; 193 } 194 195 protected UuidType parseUuid(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 196 UuidType res = new UuidType(xpp.getAttributeValue(null, "value")); 197 parseElementAttributes(xpp, res); 198 next(xpp); 199 int eventType = nextNoWhitespace(xpp); 200 while (eventType != XmlPullParser.END_TAG) { 201 if (!parseElementContent(eventType, xpp, res)) 202 unknownContent(xpp); 203 eventType = nextNoWhitespace(xpp); 204 } 205 next(xpp); 206 parseElementClose(res); 207 return res; 208 } 209 210 protected InstantType parseInstant(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 211 InstantType res = new InstantType(xpp.getAttributeValue(null, "value")); 212 parseElementAttributes(xpp, res); 213 next(xpp); 214 int eventType = nextNoWhitespace(xpp); 215 while (eventType != XmlPullParser.END_TAG) { 216 if (!parseElementContent(eventType, xpp, res)) 217 unknownContent(xpp); 218 eventType = nextNoWhitespace(xpp); 219 } 220 next(xpp); 221 parseElementClose(res); 222 return res; 223 } 224 225 protected BooleanType parseBoolean(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 226 BooleanType res = new BooleanType(xpp.getAttributeValue(null, "value")); 227 parseElementAttributes(xpp, res); 228 next(xpp); 229 int eventType = nextNoWhitespace(xpp); 230 while (eventType != XmlPullParser.END_TAG) { 231 if (!parseElementContent(eventType, xpp, res)) 232 unknownContent(xpp); 233 eventType = nextNoWhitespace(xpp); 234 } 235 next(xpp); 236 parseElementClose(res); 237 return res; 238 } 239 240 protected Base64BinaryType parseBase64Binary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 241 Base64BinaryType res = new Base64BinaryType(xpp.getAttributeValue(null, "value")); 242 parseElementAttributes(xpp, res); 243 next(xpp); 244 int eventType = nextNoWhitespace(xpp); 245 while (eventType != XmlPullParser.END_TAG) { 246 if (!parseElementContent(eventType, xpp, res)) 247 unknownContent(xpp); 248 eventType = nextNoWhitespace(xpp); 249 } 250 next(xpp); 251 parseElementClose(res); 252 return res; 253 } 254 255 protected UnsignedIntType parseUnsignedInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 256 UnsignedIntType res = new UnsignedIntType(xpp.getAttributeValue(null, "value")); 257 parseElementAttributes(xpp, res); 258 next(xpp); 259 int eventType = nextNoWhitespace(xpp); 260 while (eventType != XmlPullParser.END_TAG) { 261 if (!parseElementContent(eventType, xpp, res)) 262 unknownContent(xpp); 263 eventType = nextNoWhitespace(xpp); 264 } 265 next(xpp); 266 parseElementClose(res); 267 return res; 268 } 269 270 protected MarkdownType parseMarkdown(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 271 MarkdownType res = new MarkdownType(xpp.getAttributeValue(null, "value")); 272 parseElementAttributes(xpp, res); 273 next(xpp); 274 int eventType = nextNoWhitespace(xpp); 275 while (eventType != XmlPullParser.END_TAG) { 276 if (!parseElementContent(eventType, xpp, res)) 277 unknownContent(xpp); 278 eventType = nextNoWhitespace(xpp); 279 } 280 next(xpp); 281 parseElementClose(res); 282 return res; 283 } 284 285 protected TimeType parseTime(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 286 TimeType res = new TimeType(xpp.getAttributeValue(null, "value")); 287 parseElementAttributes(xpp, res); 288 next(xpp); 289 int eventType = nextNoWhitespace(xpp); 290 while (eventType != XmlPullParser.END_TAG) { 291 if (!parseElementContent(eventType, xpp, res)) 292 unknownContent(xpp); 293 eventType = nextNoWhitespace(xpp); 294 } 295 next(xpp); 296 parseElementClose(res); 297 return res; 298 } 299 300 protected IdType parseId(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 301 IdType res = new IdType(xpp.getAttributeValue(null, "value")); 302 parseElementAttributes(xpp, res); 303 next(xpp); 304 int eventType = nextNoWhitespace(xpp); 305 while (eventType != XmlPullParser.END_TAG) { 306 if (!parseElementContent(eventType, xpp, res)) 307 unknownContent(xpp); 308 eventType = nextNoWhitespace(xpp); 309 } 310 next(xpp); 311 parseElementClose(res); 312 return res; 313 } 314 315 protected PositiveIntType parsePositiveInt(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 316 PositiveIntType res = new PositiveIntType(xpp.getAttributeValue(null, "value")); 317 parseElementAttributes(xpp, res); 318 next(xpp); 319 int eventType = nextNoWhitespace(xpp); 320 while (eventType != XmlPullParser.END_TAG) { 321 if (!parseElementContent(eventType, xpp, res)) 322 unknownContent(xpp); 323 eventType = nextNoWhitespace(xpp); 324 } 325 next(xpp); 326 parseElementClose(res); 327 return res; 328 } 329 330 protected DecimalType parseDecimal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 331 DecimalType res = new DecimalType(xpp.getAttributeValue(null, "value")); 332 parseElementAttributes(xpp, res); 333 next(xpp); 334 int eventType = nextNoWhitespace(xpp); 335 while (eventType != XmlPullParser.END_TAG) { 336 if (!parseElementContent(eventType, xpp, res)) 337 unknownContent(xpp); 338 eventType = nextNoWhitespace(xpp); 339 } 340 next(xpp); 341 parseElementClose(res); 342 return res; 343 } 344 345 protected Extension parseExtension(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 346 Extension res = new Extension(); 347 parseElementAttributes(xpp, res); 348 if (xpp.getAttributeValue(null, "url") != null) 349 res.setUrl(xpp.getAttributeValue(null, "url")); 350 next(xpp); 351 int eventType = nextNoWhitespace(xpp); 352 while (eventType != XmlPullParser.END_TAG) { 353 if (!parseExtensionContent(eventType, xpp, res)) 354 unknownContent(xpp); 355 eventType = nextNoWhitespace(xpp); 356 } 357 next(xpp); 358 parseElementClose(res); 359 return res; 360 } 361 362 protected boolean parseExtensionContent(int eventType, XmlPullParser xpp, Extension res) throws XmlPullParserException, IOException, FHIRFormatError { 363 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 364 res.setValue(parseType("value", xpp)); 365 } else if (!parseElementContent(eventType, xpp, res)) 366 return false; 367 return true; 368 } 369 370 protected Narrative parseNarrative(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 371 Narrative res = new Narrative(); 372 parseElementAttributes(xpp, res); 373 next(xpp); 374 int eventType = nextNoWhitespace(xpp); 375 while (eventType != XmlPullParser.END_TAG) { 376 if (!parseNarrativeContent(eventType, xpp, res)) 377 unknownContent(xpp); 378 eventType = nextNoWhitespace(xpp); 379 } 380 next(xpp); 381 parseElementClose(res); 382 return res; 383 } 384 385 protected boolean parseNarrativeContent(int eventType, XmlPullParser xpp, Narrative res) throws XmlPullParserException, IOException, FHIRFormatError { 386 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 387 res.setStatusElement(parseEnumeration(xpp, Narrative.NarrativeStatus.NULL, new Narrative.NarrativeStatusEnumFactory())); 388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("div")) { 389 res.setDiv(parseXhtml(xpp)); 390 } else if (!parseElementContent(eventType, xpp, res)) 391 return false; 392 return true; 393 } 394 395 protected Reference parseReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 396 Reference res = new Reference(); 397 parseTypeAttributes(xpp, res); 398 next(xpp); 399 int eventType = nextNoWhitespace(xpp); 400 while (eventType != XmlPullParser.END_TAG) { 401 if (!parseReferenceContent(eventType, xpp, res)) 402 unknownContent(xpp); 403 eventType = nextNoWhitespace(xpp); 404 } 405 next(xpp); 406 parseElementClose(res); 407 return res; 408 } 409 410 protected boolean parseReferenceContent(int eventType, XmlPullParser xpp, Reference res) throws XmlPullParserException, IOException, FHIRFormatError { 411 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 412 res.setReferenceElement(parseString(xpp)); 413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 414 res.setIdentifier(parseIdentifier(xpp)); 415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 416 res.setDisplayElement(parseString(xpp)); 417 } else if (!parseElementContent(eventType, xpp, res)) 418 return false; 419 return true; 420 } 421 422 protected Quantity parseQuantity(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 423 Quantity res = new Quantity(); 424 parseTypeAttributes(xpp, res); 425 next(xpp); 426 int eventType = nextNoWhitespace(xpp); 427 while (eventType != XmlPullParser.END_TAG) { 428 if (!parseQuantityContent(eventType, xpp, res)) 429 unknownContent(xpp); 430 eventType = nextNoWhitespace(xpp); 431 } 432 next(xpp); 433 parseElementClose(res); 434 return res; 435 } 436 437 protected boolean parseQuantityContent(int eventType, XmlPullParser xpp, Quantity res) throws XmlPullParserException, IOException, FHIRFormatError { 438 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 439 res.setValueElement(parseDecimal(xpp)); 440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 441 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 443 res.setUnitElement(parseString(xpp)); 444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 445 res.setSystemElement(parseUri(xpp)); 446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 447 res.setCodeElement(parseCode(xpp)); 448 } else if (!parseElementContent(eventType, xpp, res)) 449 return false; 450 return true; 451 } 452 453 protected Period parsePeriod(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 454 Period res = new Period(); 455 parseTypeAttributes(xpp, res); 456 next(xpp); 457 int eventType = nextNoWhitespace(xpp); 458 while (eventType != XmlPullParser.END_TAG) { 459 if (!parsePeriodContent(eventType, xpp, res)) 460 unknownContent(xpp); 461 eventType = nextNoWhitespace(xpp); 462 } 463 next(xpp); 464 parseElementClose(res); 465 return res; 466 } 467 468 protected boolean parsePeriodContent(int eventType, XmlPullParser xpp, Period res) throws XmlPullParserException, IOException, FHIRFormatError { 469 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 470 res.setStartElement(parseDateTime(xpp)); 471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 472 res.setEndElement(parseDateTime(xpp)); 473 } else if (!parseElementContent(eventType, xpp, res)) 474 return false; 475 return true; 476 } 477 478 protected Attachment parseAttachment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 479 Attachment res = new Attachment(); 480 parseTypeAttributes(xpp, res); 481 next(xpp); 482 int eventType = nextNoWhitespace(xpp); 483 while (eventType != XmlPullParser.END_TAG) { 484 if (!parseAttachmentContent(eventType, xpp, res)) 485 unknownContent(xpp); 486 eventType = nextNoWhitespace(xpp); 487 } 488 next(xpp); 489 parseElementClose(res); 490 return res; 491 } 492 493 protected boolean parseAttachmentContent(int eventType, XmlPullParser xpp, Attachment res) throws XmlPullParserException, IOException, FHIRFormatError { 494 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 495 res.setContentTypeElement(parseCode(xpp)); 496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 497 res.setLanguageElement(parseCode(xpp)); 498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 499 res.setDataElement(parseBase64Binary(xpp)); 500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 501 res.setUrlElement(parseUri(xpp)); 502 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("size")) { 503 res.setSizeElement(parseUnsignedInt(xpp)); 504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hash")) { 505 res.setHashElement(parseBase64Binary(xpp)); 506 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 507 res.setTitleElement(parseString(xpp)); 508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("creation")) { 509 res.setCreationElement(parseDateTime(xpp)); 510 } else if (!parseElementContent(eventType, xpp, res)) 511 return false; 512 return true; 513 } 514 515 protected Duration parseDuration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 516 Duration res = new Duration(); 517 parseTypeAttributes(xpp, res); 518 next(xpp); 519 int eventType = nextNoWhitespace(xpp); 520 while (eventType != XmlPullParser.END_TAG) { 521 if (!parseDurationContent(eventType, xpp, res)) 522 unknownContent(xpp); 523 eventType = nextNoWhitespace(xpp); 524 } 525 next(xpp); 526 parseElementClose(res); 527 return res; 528 } 529 530 protected boolean parseDurationContent(int eventType, XmlPullParser xpp, Duration res) throws XmlPullParserException, IOException, FHIRFormatError { 531 if (!parseQuantityContent(eventType, xpp, res)) 532 return false; 533 return true; 534 } 535 536 protected Count parseCount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 537 Count res = new Count(); 538 parseTypeAttributes(xpp, res); 539 next(xpp); 540 int eventType = nextNoWhitespace(xpp); 541 while (eventType != XmlPullParser.END_TAG) { 542 if (!parseCountContent(eventType, xpp, res)) 543 unknownContent(xpp); 544 eventType = nextNoWhitespace(xpp); 545 } 546 next(xpp); 547 parseElementClose(res); 548 return res; 549 } 550 551 protected boolean parseCountContent(int eventType, XmlPullParser xpp, Count res) throws XmlPullParserException, IOException, FHIRFormatError { 552 if (!parseQuantityContent(eventType, xpp, res)) 553 return false; 554 return true; 555 } 556 557 protected Range parseRange(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 558 Range res = new Range(); 559 parseTypeAttributes(xpp, res); 560 next(xpp); 561 int eventType = nextNoWhitespace(xpp); 562 while (eventType != XmlPullParser.END_TAG) { 563 if (!parseRangeContent(eventType, xpp, res)) 564 unknownContent(xpp); 565 eventType = nextNoWhitespace(xpp); 566 } 567 next(xpp); 568 parseElementClose(res); 569 return res; 570 } 571 572 protected boolean parseRangeContent(int eventType, XmlPullParser xpp, Range res) throws XmlPullParserException, IOException, FHIRFormatError { 573 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 574 res.setLow(parseSimpleQuantity(xpp)); 575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 576 res.setHigh(parseSimpleQuantity(xpp)); 577 } else if (!parseElementContent(eventType, xpp, res)) 578 return false; 579 return true; 580 } 581 582 protected Annotation parseAnnotation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 583 Annotation res = new Annotation(); 584 parseTypeAttributes(xpp, res); 585 next(xpp); 586 int eventType = nextNoWhitespace(xpp); 587 while (eventType != XmlPullParser.END_TAG) { 588 if (!parseAnnotationContent(eventType, xpp, res)) 589 unknownContent(xpp); 590 eventType = nextNoWhitespace(xpp); 591 } 592 next(xpp); 593 parseElementClose(res); 594 return res; 595 } 596 597 protected boolean parseAnnotationContent(int eventType, XmlPullParser xpp, Annotation res) throws XmlPullParserException, IOException, FHIRFormatError { 598 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "author")) { 599 res.setAuthor(parseType("author", xpp)); 600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 601 res.setTimeElement(parseDateTime(xpp)); 602 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 603 res.setTextElement(parseString(xpp)); 604 } else if (!parseElementContent(eventType, xpp, res)) 605 return false; 606 return true; 607 } 608 609 protected Money parseMoney(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 610 Money res = new Money(); 611 parseTypeAttributes(xpp, res); 612 next(xpp); 613 int eventType = nextNoWhitespace(xpp); 614 while (eventType != XmlPullParser.END_TAG) { 615 if (!parseMoneyContent(eventType, xpp, res)) 616 unknownContent(xpp); 617 eventType = nextNoWhitespace(xpp); 618 } 619 next(xpp); 620 parseElementClose(res); 621 return res; 622 } 623 624 protected boolean parseMoneyContent(int eventType, XmlPullParser xpp, Money res) throws XmlPullParserException, IOException, FHIRFormatError { 625 if (!parseQuantityContent(eventType, xpp, res)) 626 return false; 627 return true; 628 } 629 630 protected Identifier parseIdentifier(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 631 Identifier res = new Identifier(); 632 parseTypeAttributes(xpp, res); 633 next(xpp); 634 int eventType = nextNoWhitespace(xpp); 635 while (eventType != XmlPullParser.END_TAG) { 636 if (!parseIdentifierContent(eventType, xpp, res)) 637 unknownContent(xpp); 638 eventType = nextNoWhitespace(xpp); 639 } 640 next(xpp); 641 parseElementClose(res); 642 return res; 643 } 644 645 protected boolean parseIdentifierContent(int eventType, XmlPullParser xpp, Identifier res) throws XmlPullParserException, IOException, FHIRFormatError { 646 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 647 res.setUseElement(parseEnumeration(xpp, Identifier.IdentifierUse.NULL, new Identifier.IdentifierUseEnumFactory())); 648 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 649 res.setType(parseCodeableConcept(xpp)); 650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 651 res.setSystemElement(parseUri(xpp)); 652 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 653 res.setValueElement(parseString(xpp)); 654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 655 res.setPeriod(parsePeriod(xpp)); 656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assigner")) { 657 res.setAssigner(parseReference(xpp)); 658 } else if (!parseElementContent(eventType, xpp, res)) 659 return false; 660 return true; 661 } 662 663 protected Coding parseCoding(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 664 Coding res = new Coding(); 665 parseTypeAttributes(xpp, res); 666 next(xpp); 667 int eventType = nextNoWhitespace(xpp); 668 while (eventType != XmlPullParser.END_TAG) { 669 if (!parseCodingContent(eventType, xpp, res)) 670 unknownContent(xpp); 671 eventType = nextNoWhitespace(xpp); 672 } 673 next(xpp); 674 parseElementClose(res); 675 return res; 676 } 677 678 protected boolean parseCodingContent(int eventType, XmlPullParser xpp, Coding res) throws XmlPullParserException, IOException, FHIRFormatError { 679 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 680 res.setSystemElement(parseUri(xpp)); 681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 682 res.setVersionElement(parseString(xpp)); 683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 684 res.setCodeElement(parseCode(xpp)); 685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 686 res.setDisplayElement(parseString(xpp)); 687 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userSelected")) { 688 res.setUserSelectedElement(parseBoolean(xpp)); 689 } else if (!parseElementContent(eventType, xpp, res)) 690 return false; 691 return true; 692 } 693 694 protected Signature parseSignature(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 695 Signature res = new Signature(); 696 parseTypeAttributes(xpp, res); 697 next(xpp); 698 int eventType = nextNoWhitespace(xpp); 699 while (eventType != XmlPullParser.END_TAG) { 700 if (!parseSignatureContent(eventType, xpp, res)) 701 unknownContent(xpp); 702 eventType = nextNoWhitespace(xpp); 703 } 704 next(xpp); 705 parseElementClose(res); 706 return res; 707 } 708 709 protected boolean parseSignatureContent(int eventType, XmlPullParser xpp, Signature res) throws XmlPullParserException, IOException, FHIRFormatError { 710 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 711 res.getType().add(parseCoding(xpp)); 712 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 713 res.setWhenElement(parseInstant(xpp)); 714 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "who")) { 715 res.setWho(parseType("who", xpp)); 716 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onBehalfOf")) { 717 res.setOnBehalfOf(parseType("onBehalfOf", xpp)); 718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 719 res.setContentTypeElement(parseCode(xpp)); 720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("blob")) { 721 res.setBlobElement(parseBase64Binary(xpp)); 722 } else if (!parseElementContent(eventType, xpp, res)) 723 return false; 724 return true; 725 } 726 727 protected SampledData parseSampledData(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 728 SampledData res = new SampledData(); 729 parseTypeAttributes(xpp, res); 730 next(xpp); 731 int eventType = nextNoWhitespace(xpp); 732 while (eventType != XmlPullParser.END_TAG) { 733 if (!parseSampledDataContent(eventType, xpp, res)) 734 unknownContent(xpp); 735 eventType = nextNoWhitespace(xpp); 736 } 737 next(xpp); 738 parseElementClose(res); 739 return res; 740 } 741 742 protected boolean parseSampledDataContent(int eventType, XmlPullParser xpp, SampledData res) throws XmlPullParserException, IOException, FHIRFormatError { 743 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 744 res.setOrigin(parseSimpleQuantity(xpp)); 745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 746 res.setPeriodElement(parseDecimal(xpp)); 747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 748 res.setFactorElement(parseDecimal(xpp)); 749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lowerLimit")) { 750 res.setLowerLimitElement(parseDecimal(xpp)); 751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("upperLimit")) { 752 res.setUpperLimitElement(parseDecimal(xpp)); 753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dimensions")) { 754 res.setDimensionsElement(parsePositiveInt(xpp)); 755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 756 res.setDataElement(parseString(xpp)); 757 } else if (!parseElementContent(eventType, xpp, res)) 758 return false; 759 return true; 760 } 761 762 protected Ratio parseRatio(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 763 Ratio res = new Ratio(); 764 parseTypeAttributes(xpp, res); 765 next(xpp); 766 int eventType = nextNoWhitespace(xpp); 767 while (eventType != XmlPullParser.END_TAG) { 768 if (!parseRatioContent(eventType, xpp, res)) 769 unknownContent(xpp); 770 eventType = nextNoWhitespace(xpp); 771 } 772 next(xpp); 773 parseElementClose(res); 774 return res; 775 } 776 777 protected boolean parseRatioContent(int eventType, XmlPullParser xpp, Ratio res) throws XmlPullParserException, IOException, FHIRFormatError { 778 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numerator")) { 779 res.setNumerator(parseQuantity(xpp)); 780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("denominator")) { 781 res.setDenominator(parseQuantity(xpp)); 782 } else if (!parseElementContent(eventType, xpp, res)) 783 return false; 784 return true; 785 } 786 787 protected Distance parseDistance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 788 Distance res = new Distance(); 789 parseTypeAttributes(xpp, res); 790 next(xpp); 791 int eventType = nextNoWhitespace(xpp); 792 while (eventType != XmlPullParser.END_TAG) { 793 if (!parseDistanceContent(eventType, xpp, res)) 794 unknownContent(xpp); 795 eventType = nextNoWhitespace(xpp); 796 } 797 next(xpp); 798 parseElementClose(res); 799 return res; 800 } 801 802 protected boolean parseDistanceContent(int eventType, XmlPullParser xpp, Distance res) throws XmlPullParserException, IOException, FHIRFormatError { 803 if (!parseQuantityContent(eventType, xpp, res)) 804 return false; 805 return true; 806 } 807 808 protected Age parseAge(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 809 Age res = new Age(); 810 parseTypeAttributes(xpp, res); 811 next(xpp); 812 int eventType = nextNoWhitespace(xpp); 813 while (eventType != XmlPullParser.END_TAG) { 814 if (!parseAgeContent(eventType, xpp, res)) 815 unknownContent(xpp); 816 eventType = nextNoWhitespace(xpp); 817 } 818 next(xpp); 819 parseElementClose(res); 820 return res; 821 } 822 823 protected boolean parseAgeContent(int eventType, XmlPullParser xpp, Age res) throws XmlPullParserException, IOException, FHIRFormatError { 824 if (!parseQuantityContent(eventType, xpp, res)) 825 return false; 826 return true; 827 } 828 829 protected CodeableConcept parseCodeableConcept(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 830 CodeableConcept res = new CodeableConcept(); 831 parseTypeAttributes(xpp, res); 832 next(xpp); 833 int eventType = nextNoWhitespace(xpp); 834 while (eventType != XmlPullParser.END_TAG) { 835 if (!parseCodeableConceptContent(eventType, xpp, res)) 836 unknownContent(xpp); 837 eventType = nextNoWhitespace(xpp); 838 } 839 next(xpp); 840 parseElementClose(res); 841 return res; 842 } 843 844 protected boolean parseCodeableConceptContent(int eventType, XmlPullParser xpp, CodeableConcept res) throws XmlPullParserException, IOException, FHIRFormatError { 845 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coding")) { 846 res.getCoding().add(parseCoding(xpp)); 847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 848 res.setTextElement(parseString(xpp)); 849 } else if (!parseElementContent(eventType, xpp, res)) 850 return false; 851 return true; 852 } 853 854 protected SimpleQuantity parseSimpleQuantity(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 855 SimpleQuantity res = new SimpleQuantity(); 856 parseElementAttributes(xpp, res); 857 next(xpp); 858 int eventType = nextNoWhitespace(xpp); 859 while (eventType != XmlPullParser.END_TAG) { 860 if (!parseSimpleQuantityContent(eventType, xpp, res)) 861 unknownContent(xpp); 862 eventType = nextNoWhitespace(xpp); 863 } 864 next(xpp); 865 parseElementClose(res); 866 return res; 867 } 868 869 protected boolean parseSimpleQuantityContent(int eventType, XmlPullParser xpp, SimpleQuantity res) throws XmlPullParserException, IOException, FHIRFormatError { 870 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 871 res.setValueElement(parseDecimal(xpp)); 872 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 873 res.setComparatorElement(parseEnumeration(xpp, Quantity.QuantityComparator.NULL, new Quantity.QuantityComparatorEnumFactory())); 874 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 875 res.setUnitElement(parseString(xpp)); 876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 877 res.setSystemElement(parseUri(xpp)); 878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 879 res.setCodeElement(parseCode(xpp)); 880 } else if (!parseElementContent(eventType, xpp, res)) 881 return false; 882 return true; 883 } 884 885 protected Meta parseMeta(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 886 Meta res = new Meta(); 887 parseElementAttributes(xpp, res); 888 next(xpp); 889 int eventType = nextNoWhitespace(xpp); 890 while (eventType != XmlPullParser.END_TAG) { 891 if (!parseMetaContent(eventType, xpp, res)) 892 unknownContent(xpp); 893 eventType = nextNoWhitespace(xpp); 894 } 895 next(xpp); 896 parseElementClose(res); 897 return res; 898 } 899 900 protected boolean parseMetaContent(int eventType, XmlPullParser xpp, Meta res) throws XmlPullParserException, IOException, FHIRFormatError { 901 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionId")) { 902 res.setVersionIdElement(parseId(xpp)); 903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastUpdated")) { 904 res.setLastUpdatedElement(parseInstant(xpp)); 905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 906 res.getProfile().add(parseUri(xpp)); 907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 908 res.getSecurity().add(parseCoding(xpp)); 909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tag")) { 910 res.getTag().add(parseCoding(xpp)); 911 } else if (!parseElementContent(eventType, xpp, res)) 912 return false; 913 return true; 914 } 915 916 protected Address parseAddress(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 917 Address res = new Address(); 918 parseElementAttributes(xpp, res); 919 next(xpp); 920 int eventType = nextNoWhitespace(xpp); 921 while (eventType != XmlPullParser.END_TAG) { 922 if (!parseAddressContent(eventType, xpp, res)) 923 unknownContent(xpp); 924 eventType = nextNoWhitespace(xpp); 925 } 926 next(xpp); 927 parseElementClose(res); 928 return res; 929 } 930 931 protected boolean parseAddressContent(int eventType, XmlPullParser xpp, Address res) throws XmlPullParserException, IOException, FHIRFormatError { 932 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 933 res.setUseElement(parseEnumeration(xpp, Address.AddressUse.NULL, new Address.AddressUseEnumFactory())); 934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 935 res.setTypeElement(parseEnumeration(xpp, Address.AddressType.NULL, new Address.AddressTypeEnumFactory())); 936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 937 res.setTextElement(parseString(xpp)); 938 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("line")) { 939 res.getLine().add(parseString(xpp)); 940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("city")) { 941 res.setCityElement(parseString(xpp)); 942 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("district")) { 943 res.setDistrictElement(parseString(xpp)); 944 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 945 res.setStateElement(parseString(xpp)); 946 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("postalCode")) { 947 res.setPostalCodeElement(parseString(xpp)); 948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { 949 res.setCountryElement(parseString(xpp)); 950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 951 res.setPeriod(parsePeriod(xpp)); 952 } else if (!parseElementContent(eventType, xpp, res)) 953 return false; 954 return true; 955 } 956 957 protected TriggerDefinition parseTriggerDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 958 TriggerDefinition res = new TriggerDefinition(); 959 parseElementAttributes(xpp, res); 960 next(xpp); 961 int eventType = nextNoWhitespace(xpp); 962 while (eventType != XmlPullParser.END_TAG) { 963 if (!parseTriggerDefinitionContent(eventType, xpp, res)) 964 unknownContent(xpp); 965 eventType = nextNoWhitespace(xpp); 966 } 967 next(xpp); 968 parseElementClose(res); 969 return res; 970 } 971 972 protected boolean parseTriggerDefinitionContent(int eventType, XmlPullParser xpp, TriggerDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 973 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 974 res.setTypeElement(parseEnumeration(xpp, TriggerDefinition.TriggerType.NULL, new TriggerDefinition.TriggerTypeEnumFactory())); 975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventName")) { 976 res.setEventNameElement(parseString(xpp)); 977 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "eventTiming")) { 978 res.setEventTiming(parseType("eventTiming", xpp)); 979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventData")) { 980 res.setEventData(parseDataRequirement(xpp)); 981 } else if (!parseElementContent(eventType, xpp, res)) 982 return false; 983 return true; 984 } 985 986 protected Contributor parseContributor(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 987 Contributor res = new Contributor(); 988 parseElementAttributes(xpp, res); 989 next(xpp); 990 int eventType = nextNoWhitespace(xpp); 991 while (eventType != XmlPullParser.END_TAG) { 992 if (!parseContributorContent(eventType, xpp, res)) 993 unknownContent(xpp); 994 eventType = nextNoWhitespace(xpp); 995 } 996 next(xpp); 997 parseElementClose(res); 998 return res; 999 } 1000 1001 protected boolean parseContributorContent(int eventType, XmlPullParser xpp, Contributor res) throws XmlPullParserException, IOException, FHIRFormatError { 1002 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1003 res.setTypeElement(parseEnumeration(xpp, Contributor.ContributorType.NULL, new Contributor.ContributorTypeEnumFactory())); 1004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1005 res.setNameElement(parseString(xpp)); 1006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 1007 res.getContact().add(parseContactDetail(xpp)); 1008 } else if (!parseElementContent(eventType, xpp, res)) 1009 return false; 1010 return true; 1011 } 1012 1013 protected DataRequirement parseDataRequirement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1014 DataRequirement res = new DataRequirement(); 1015 parseElementAttributes(xpp, res); 1016 next(xpp); 1017 int eventType = nextNoWhitespace(xpp); 1018 while (eventType != XmlPullParser.END_TAG) { 1019 if (!parseDataRequirementContent(eventType, xpp, res)) 1020 unknownContent(xpp); 1021 eventType = nextNoWhitespace(xpp); 1022 } 1023 next(xpp); 1024 parseElementClose(res); 1025 return res; 1026 } 1027 1028 protected boolean parseDataRequirementContent(int eventType, XmlPullParser xpp, DataRequirement res) throws XmlPullParserException, IOException, FHIRFormatError { 1029 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1030 res.setTypeElement(parseCode(xpp)); 1031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1032 res.getProfile().add(parseUri(xpp)); 1033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 1034 res.getMustSupport().add(parseString(xpp)); 1035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codeFilter")) { 1036 res.getCodeFilter().add(parseDataRequirementDataRequirementCodeFilterComponent(xpp, res)); 1037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateFilter")) { 1038 res.getDateFilter().add(parseDataRequirementDataRequirementDateFilterComponent(xpp, res)); 1039 } else if (!parseElementContent(eventType, xpp, res)) 1040 return false; 1041 return true; 1042 } 1043 1044 protected DataRequirement.DataRequirementCodeFilterComponent parseDataRequirementDataRequirementCodeFilterComponent(XmlPullParser xpp, DataRequirement owner) throws XmlPullParserException, IOException, FHIRFormatError { 1045 DataRequirement.DataRequirementCodeFilterComponent res = new DataRequirement.DataRequirementCodeFilterComponent(); 1046 parseElementAttributes(xpp, res); 1047 next(xpp); 1048 int eventType = nextNoWhitespace(xpp); 1049 while (eventType != XmlPullParser.END_TAG) { 1050 if (!parseDataRequirementDataRequirementCodeFilterComponentContent(eventType, xpp, owner, res)) 1051 unknownContent(xpp); 1052 eventType = nextNoWhitespace(xpp); 1053 } 1054 next(xpp); 1055 parseElementClose(res); 1056 return res; 1057 } 1058 1059 protected boolean parseDataRequirementDataRequirementCodeFilterComponentContent(int eventType, XmlPullParser xpp, DataRequirement owner, DataRequirement.DataRequirementCodeFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1060 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1061 res.setPathElement(parseString(xpp)); 1062 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 1063 res.setValueSet(parseType("valueSet", xpp)); 1064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCode")) { 1065 res.getValueCode().add(parseCode(xpp)); 1066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCoding")) { 1067 res.getValueCoding().add(parseCoding(xpp)); 1068 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueCodeableConcept")) { 1069 res.getValueCodeableConcept().add(parseCodeableConcept(xpp)); 1070 } else if (!parseElementContent(eventType, xpp, res)) 1071 return false; 1072 return true; 1073 } 1074 1075 protected DataRequirement.DataRequirementDateFilterComponent parseDataRequirementDataRequirementDateFilterComponent(XmlPullParser xpp, DataRequirement owner) throws XmlPullParserException, IOException, FHIRFormatError { 1076 DataRequirement.DataRequirementDateFilterComponent res = new DataRequirement.DataRequirementDateFilterComponent(); 1077 parseElementAttributes(xpp, res); 1078 next(xpp); 1079 int eventType = nextNoWhitespace(xpp); 1080 while (eventType != XmlPullParser.END_TAG) { 1081 if (!parseDataRequirementDataRequirementDateFilterComponentContent(eventType, xpp, owner, res)) 1082 unknownContent(xpp); 1083 eventType = nextNoWhitespace(xpp); 1084 } 1085 next(xpp); 1086 parseElementClose(res); 1087 return res; 1088 } 1089 1090 protected boolean parseDataRequirementDataRequirementDateFilterComponentContent(int eventType, XmlPullParser xpp, DataRequirement owner, DataRequirement.DataRequirementDateFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1091 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1092 res.setPathElement(parseString(xpp)); 1093 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1094 res.setValue(parseType("value", xpp)); 1095 } else if (!parseElementContent(eventType, xpp, res)) 1096 return false; 1097 return true; 1098 } 1099 1100 protected Dosage parseDosage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1101 Dosage res = new Dosage(); 1102 parseElementAttributes(xpp, res); 1103 next(xpp); 1104 int eventType = nextNoWhitespace(xpp); 1105 while (eventType != XmlPullParser.END_TAG) { 1106 if (!parseDosageContent(eventType, xpp, res)) 1107 unknownContent(xpp); 1108 eventType = nextNoWhitespace(xpp); 1109 } 1110 next(xpp); 1111 parseElementClose(res); 1112 return res; 1113 } 1114 1115 protected boolean parseDosageContent(int eventType, XmlPullParser xpp, Dosage res) throws XmlPullParserException, IOException, FHIRFormatError { 1116 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 1117 res.setSequenceElement(parseInteger(xpp)); 1118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1119 res.setTextElement(parseString(xpp)); 1120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additionalInstruction")) { 1121 res.getAdditionalInstruction().add(parseCodeableConcept(xpp)); 1122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientInstruction")) { 1123 res.setPatientInstructionElement(parseString(xpp)); 1124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timing")) { 1125 res.setTiming(parseTiming(xpp)); 1126 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 1127 res.setAsNeeded(parseType("asNeeded", xpp)); 1128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 1129 res.setSite(parseCodeableConcept(xpp)); 1130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 1131 res.setRoute(parseCodeableConcept(xpp)); 1132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 1133 res.setMethod(parseCodeableConcept(xpp)); 1134 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "dose")) { 1135 res.setDose(parseType("dose", xpp)); 1136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerPeriod")) { 1137 res.setMaxDosePerPeriod(parseRatio(xpp)); 1138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerAdministration")) { 1139 res.setMaxDosePerAdministration(parseSimpleQuantity(xpp)); 1140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxDosePerLifetime")) { 1141 res.setMaxDosePerLifetime(parseSimpleQuantity(xpp)); 1142 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 1143 res.setRate(parseType("rate", xpp)); 1144 } else if (!parseElementContent(eventType, xpp, res)) 1145 return false; 1146 return true; 1147 } 1148 1149 protected RelatedArtifact parseRelatedArtifact(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1150 RelatedArtifact res = new RelatedArtifact(); 1151 parseElementAttributes(xpp, res); 1152 next(xpp); 1153 int eventType = nextNoWhitespace(xpp); 1154 while (eventType != XmlPullParser.END_TAG) { 1155 if (!parseRelatedArtifactContent(eventType, xpp, res)) 1156 unknownContent(xpp); 1157 eventType = nextNoWhitespace(xpp); 1158 } 1159 next(xpp); 1160 parseElementClose(res); 1161 return res; 1162 } 1163 1164 protected boolean parseRelatedArtifactContent(int eventType, XmlPullParser xpp, RelatedArtifact res) throws XmlPullParserException, IOException, FHIRFormatError { 1165 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1166 res.setTypeElement(parseEnumeration(xpp, RelatedArtifact.RelatedArtifactType.NULL, new RelatedArtifact.RelatedArtifactTypeEnumFactory())); 1167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 1168 res.setDisplayElement(parseString(xpp)); 1169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citation")) { 1170 res.setCitationElement(parseString(xpp)); 1171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 1172 res.setUrlElement(parseUri(xpp)); 1173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 1174 res.setDocument(parseAttachment(xpp)); 1175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 1176 res.setResource(parseReference(xpp)); 1177 } else if (!parseElementContent(eventType, xpp, res)) 1178 return false; 1179 return true; 1180 } 1181 1182 protected ContactDetail parseContactDetail(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1183 ContactDetail res = new ContactDetail(); 1184 parseElementAttributes(xpp, res); 1185 next(xpp); 1186 int eventType = nextNoWhitespace(xpp); 1187 while (eventType != XmlPullParser.END_TAG) { 1188 if (!parseContactDetailContent(eventType, xpp, res)) 1189 unknownContent(xpp); 1190 eventType = nextNoWhitespace(xpp); 1191 } 1192 next(xpp); 1193 parseElementClose(res); 1194 return res; 1195 } 1196 1197 protected boolean parseContactDetailContent(int eventType, XmlPullParser xpp, ContactDetail res) throws XmlPullParserException, IOException, FHIRFormatError { 1198 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1199 res.setNameElement(parseString(xpp)); 1200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 1201 res.getTelecom().add(parseContactPoint(xpp)); 1202 } else if (!parseElementContent(eventType, xpp, res)) 1203 return false; 1204 return true; 1205 } 1206 1207 protected HumanName parseHumanName(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1208 HumanName res = new HumanName(); 1209 parseElementAttributes(xpp, res); 1210 next(xpp); 1211 int eventType = nextNoWhitespace(xpp); 1212 while (eventType != XmlPullParser.END_TAG) { 1213 if (!parseHumanNameContent(eventType, xpp, res)) 1214 unknownContent(xpp); 1215 eventType = nextNoWhitespace(xpp); 1216 } 1217 next(xpp); 1218 parseElementClose(res); 1219 return res; 1220 } 1221 1222 protected boolean parseHumanNameContent(int eventType, XmlPullParser xpp, HumanName res) throws XmlPullParserException, IOException, FHIRFormatError { 1223 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1224 res.setUseElement(parseEnumeration(xpp, HumanName.NameUse.NULL, new HumanName.NameUseEnumFactory())); 1225 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1226 res.setTextElement(parseString(xpp)); 1227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("family")) { 1228 res.setFamilyElement(parseString(xpp)); 1229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("given")) { 1230 res.getGiven().add(parseString(xpp)); 1231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 1232 res.getPrefix().add(parseString(xpp)); 1233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suffix")) { 1234 res.getSuffix().add(parseString(xpp)); 1235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1236 res.setPeriod(parsePeriod(xpp)); 1237 } else if (!parseElementContent(eventType, xpp, res)) 1238 return false; 1239 return true; 1240 } 1241 1242 protected ContactPoint parseContactPoint(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1243 ContactPoint res = new ContactPoint(); 1244 parseElementAttributes(xpp, res); 1245 next(xpp); 1246 int eventType = nextNoWhitespace(xpp); 1247 while (eventType != XmlPullParser.END_TAG) { 1248 if (!parseContactPointContent(eventType, xpp, res)) 1249 unknownContent(xpp); 1250 eventType = nextNoWhitespace(xpp); 1251 } 1252 next(xpp); 1253 parseElementClose(res); 1254 return res; 1255 } 1256 1257 protected boolean parseContactPointContent(int eventType, XmlPullParser xpp, ContactPoint res) throws XmlPullParserException, IOException, FHIRFormatError { 1258 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 1259 res.setSystemElement(parseEnumeration(xpp, ContactPoint.ContactPointSystem.NULL, new ContactPoint.ContactPointSystemEnumFactory())); 1260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 1261 res.setValueElement(parseString(xpp)); 1262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1263 res.setUseElement(parseEnumeration(xpp, ContactPoint.ContactPointUse.NULL, new ContactPoint.ContactPointUseEnumFactory())); 1264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rank")) { 1265 res.setRankElement(parsePositiveInt(xpp)); 1266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1267 res.setPeriod(parsePeriod(xpp)); 1268 } else if (!parseElementContent(eventType, xpp, res)) 1269 return false; 1270 return true; 1271 } 1272 1273 protected UsageContext parseUsageContext(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1274 UsageContext res = new UsageContext(); 1275 parseElementAttributes(xpp, res); 1276 next(xpp); 1277 int eventType = nextNoWhitespace(xpp); 1278 while (eventType != XmlPullParser.END_TAG) { 1279 if (!parseUsageContextContent(eventType, xpp, res)) 1280 unknownContent(xpp); 1281 eventType = nextNoWhitespace(xpp); 1282 } 1283 next(xpp); 1284 parseElementClose(res); 1285 return res; 1286 } 1287 1288 protected boolean parseUsageContextContent(int eventType, XmlPullParser xpp, UsageContext res) throws XmlPullParserException, IOException, FHIRFormatError { 1289 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1290 res.setCode(parseCoding(xpp)); 1291 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1292 res.setValue(parseType("value", xpp)); 1293 } else if (!parseElementContent(eventType, xpp, res)) 1294 return false; 1295 return true; 1296 } 1297 1298 protected Timing parseTiming(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1299 Timing res = new Timing(); 1300 parseElementAttributes(xpp, res); 1301 next(xpp); 1302 int eventType = nextNoWhitespace(xpp); 1303 while (eventType != XmlPullParser.END_TAG) { 1304 if (!parseTimingContent(eventType, xpp, res)) 1305 unknownContent(xpp); 1306 eventType = nextNoWhitespace(xpp); 1307 } 1308 next(xpp); 1309 parseElementClose(res); 1310 return res; 1311 } 1312 1313 protected boolean parseTimingContent(int eventType, XmlPullParser xpp, Timing res) throws XmlPullParserException, IOException, FHIRFormatError { 1314 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 1315 res.getEvent().add(parseDateTime(xpp)); 1316 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeat")) { 1317 res.setRepeat(parseTimingTimingRepeatComponent(xpp, res)); 1318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1319 res.setCode(parseCodeableConcept(xpp)); 1320 } else if (!parseElementContent(eventType, xpp, res)) 1321 return false; 1322 return true; 1323 } 1324 1325 protected Timing.TimingRepeatComponent parseTimingTimingRepeatComponent(XmlPullParser xpp, Timing owner) throws XmlPullParserException, IOException, FHIRFormatError { 1326 Timing.TimingRepeatComponent res = new Timing.TimingRepeatComponent(); 1327 parseElementAttributes(xpp, res); 1328 next(xpp); 1329 int eventType = nextNoWhitespace(xpp); 1330 while (eventType != XmlPullParser.END_TAG) { 1331 if (!parseTimingTimingRepeatComponentContent(eventType, xpp, owner, res)) 1332 unknownContent(xpp); 1333 eventType = nextNoWhitespace(xpp); 1334 } 1335 next(xpp); 1336 parseElementClose(res); 1337 return res; 1338 } 1339 1340 protected boolean parseTimingTimingRepeatComponentContent(int eventType, XmlPullParser xpp, Timing owner, Timing.TimingRepeatComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1341 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "bounds")) { 1342 res.setBounds(parseType("bounds", xpp)); 1343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 1344 res.setCountElement(parseInteger(xpp)); 1345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("countMax")) { 1346 res.setCountMaxElement(parseInteger(xpp)); 1347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 1348 res.setDurationElement(parseDecimal(xpp)); 1349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationMax")) { 1350 res.setDurationMaxElement(parseDecimal(xpp)); 1351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("durationUnit")) { 1352 res.setDurationUnitElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 1353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequency")) { 1354 res.setFrequencyElement(parseInteger(xpp)); 1355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frequencyMax")) { 1356 res.setFrequencyMaxElement(parseInteger(xpp)); 1357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1358 res.setPeriodElement(parseDecimal(xpp)); 1359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodMax")) { 1360 res.setPeriodMaxElement(parseDecimal(xpp)); 1361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("periodUnit")) { 1362 res.setPeriodUnitElement(parseEnumeration(xpp, Timing.UnitsOfTime.NULL, new Timing.UnitsOfTimeEnumFactory())); 1363 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dayOfWeek")) { 1364 res.getDayOfWeek().add(parseEnumeration(xpp, Timing.DayOfWeek.NULL, new Timing.DayOfWeekEnumFactory())); 1365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timeOfDay")) { 1366 res.getTimeOfDay().add(parseTime(xpp)); 1367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("when")) { 1368 res.getWhen().add(parseEnumeration(xpp, Timing.EventTiming.NULL, new Timing.EventTimingEnumFactory())); 1369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 1370 res.setOffsetElement(parseUnsignedInt(xpp)); 1371 } else if (!parseElementContent(eventType, xpp, res)) 1372 return false; 1373 return true; 1374 } 1375 1376 protected ElementDefinition parseElementDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1377 ElementDefinition res = new ElementDefinition(); 1378 parseElementAttributes(xpp, res); 1379 next(xpp); 1380 int eventType = nextNoWhitespace(xpp); 1381 while (eventType != XmlPullParser.END_TAG) { 1382 if (!parseElementDefinitionContent(eventType, xpp, res)) 1383 unknownContent(xpp); 1384 eventType = nextNoWhitespace(xpp); 1385 } 1386 next(xpp); 1387 parseElementClose(res); 1388 return res; 1389 } 1390 1391 protected boolean parseElementDefinitionContent(int eventType, XmlPullParser xpp, ElementDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 1392 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1393 res.setPathElement(parseString(xpp)); 1394 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { 1395 res.getRepresentation().add(parseEnumeration(xpp, ElementDefinition.PropertyRepresentation.NULL, new ElementDefinition.PropertyRepresentationEnumFactory())); 1396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sliceName")) { 1397 res.setSliceNameElement(parseString(xpp)); 1398 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 1399 res.setLabelElement(parseString(xpp)); 1400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1401 res.getCode().add(parseCoding(xpp)); 1402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slicing")) { 1403 res.setSlicing(parseElementDefinitionElementDefinitionSlicingComponent(xpp, res)); 1404 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("short")) { 1405 res.setShortElement(parseString(xpp)); 1406 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 1407 res.setDefinitionElement(parseMarkdown(xpp)); 1408 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1409 res.setCommentElement(parseMarkdown(xpp)); 1410 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 1411 res.setRequirementsElement(parseMarkdown(xpp)); 1412 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 1413 res.getAlias().add(parseString(xpp)); 1414 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1415 res.setMinElement(parseUnsignedInt(xpp)); 1416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1417 res.setMaxElement(parseString(xpp)); 1418 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 1419 res.setBase(parseElementDefinitionElementDefinitionBaseComponent(xpp, res)); 1420 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentReference")) { 1421 res.setContentReferenceElement(parseUri(xpp)); 1422 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1423 res.getType().add(parseElementDefinitionTypeRefComponent(xpp, res)); 1424 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "defaultValue")) { 1425 res.setDefaultValue(parseType("defaultValue", xpp)); 1426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaningWhenMissing")) { 1427 res.setMeaningWhenMissingElement(parseMarkdown(xpp)); 1428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderMeaning")) { 1429 res.setOrderMeaningElement(parseString(xpp)); 1430 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "fixed")) { 1431 res.setFixed(parseType("fixed", xpp)); 1432 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "pattern")) { 1433 res.setPattern(parseType("pattern", xpp)); 1434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("example")) { 1435 res.getExample().add(parseElementDefinitionElementDefinitionExampleComponent(xpp, res)); 1436 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "minValue")) { 1437 res.setMinValue(parseType("minValue", xpp)); 1438 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "maxValue")) { 1439 res.setMaxValue(parseType("maxValue", xpp)); 1440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxLength")) { 1441 res.setMaxLengthElement(parseInteger(xpp)); 1442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 1443 res.getCondition().add(parseId(xpp)); 1444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("constraint")) { 1445 res.getConstraint().add(parseElementDefinitionElementDefinitionConstraintComponent(xpp, res)); 1446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mustSupport")) { 1447 res.setMustSupportElement(parseBoolean(xpp)); 1448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isModifier")) { 1449 res.setIsModifierElement(parseBoolean(xpp)); 1450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isSummary")) { 1451 res.setIsSummaryElement(parseBoolean(xpp)); 1452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 1453 res.setBinding(parseElementDefinitionElementDefinitionBindingComponent(xpp, res)); 1454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 1455 res.getMapping().add(parseElementDefinitionElementDefinitionMappingComponent(xpp, res)); 1456 } else if (!parseElementContent(eventType, xpp, res)) 1457 return false; 1458 return true; 1459 } 1460 1461 protected ElementDefinition.ElementDefinitionSlicingComponent parseElementDefinitionElementDefinitionSlicingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1462 ElementDefinition.ElementDefinitionSlicingComponent res = new ElementDefinition.ElementDefinitionSlicingComponent(); 1463 parseElementAttributes(xpp, res); 1464 next(xpp); 1465 int eventType = nextNoWhitespace(xpp); 1466 while (eventType != XmlPullParser.END_TAG) { 1467 if (!parseElementDefinitionElementDefinitionSlicingComponentContent(eventType, xpp, owner, res)) 1468 unknownContent(xpp); 1469 eventType = nextNoWhitespace(xpp); 1470 } 1471 next(xpp); 1472 parseElementClose(res); 1473 return res; 1474 } 1475 1476 protected boolean parseElementDefinitionElementDefinitionSlicingComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionSlicingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1477 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("discriminator")) { 1478 res.getDiscriminator().add(parseElementDefinitionElementDefinitionSlicingDiscriminatorComponent(xpp, owner)); 1479 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1480 res.setDescriptionElement(parseString(xpp)); 1481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ordered")) { 1482 res.setOrderedElement(parseBoolean(xpp)); 1483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rules")) { 1484 res.setRulesElement(parseEnumeration(xpp, ElementDefinition.SlicingRules.NULL, new ElementDefinition.SlicingRulesEnumFactory())); 1485 } else if (!parseElementContent(eventType, xpp, res)) 1486 return false; 1487 return true; 1488 } 1489 1490 protected ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent parseElementDefinitionElementDefinitionSlicingDiscriminatorComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1491 ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent res = new ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent(); 1492 parseElementAttributes(xpp, res); 1493 next(xpp); 1494 int eventType = nextNoWhitespace(xpp); 1495 while (eventType != XmlPullParser.END_TAG) { 1496 if (!parseElementDefinitionElementDefinitionSlicingDiscriminatorComponentContent(eventType, xpp, owner, res)) 1497 unknownContent(xpp); 1498 eventType = nextNoWhitespace(xpp); 1499 } 1500 next(xpp); 1501 parseElementClose(res); 1502 return res; 1503 } 1504 1505 protected boolean parseElementDefinitionElementDefinitionSlicingDiscriminatorComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1506 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1507 res.setTypeElement(parseEnumeration(xpp, ElementDefinition.DiscriminatorType.NULL, new ElementDefinition.DiscriminatorTypeEnumFactory())); 1508 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1509 res.setPathElement(parseString(xpp)); 1510 } else if (!parseElementContent(eventType, xpp, res)) 1511 return false; 1512 return true; 1513 } 1514 1515 protected ElementDefinition.ElementDefinitionBaseComponent parseElementDefinitionElementDefinitionBaseComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1516 ElementDefinition.ElementDefinitionBaseComponent res = new ElementDefinition.ElementDefinitionBaseComponent(); 1517 parseElementAttributes(xpp, res); 1518 next(xpp); 1519 int eventType = nextNoWhitespace(xpp); 1520 while (eventType != XmlPullParser.END_TAG) { 1521 if (!parseElementDefinitionElementDefinitionBaseComponentContent(eventType, xpp, owner, res)) 1522 unknownContent(xpp); 1523 eventType = nextNoWhitespace(xpp); 1524 } 1525 next(xpp); 1526 parseElementClose(res); 1527 return res; 1528 } 1529 1530 protected boolean parseElementDefinitionElementDefinitionBaseComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionBaseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1531 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 1532 res.setPathElement(parseString(xpp)); 1533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1534 res.setMinElement(parseUnsignedInt(xpp)); 1535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1536 res.setMaxElement(parseString(xpp)); 1537 } else if (!parseElementContent(eventType, xpp, res)) 1538 return false; 1539 return true; 1540 } 1541 1542 protected ElementDefinition.TypeRefComponent parseElementDefinitionTypeRefComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1543 ElementDefinition.TypeRefComponent res = new ElementDefinition.TypeRefComponent(); 1544 parseElementAttributes(xpp, res); 1545 next(xpp); 1546 int eventType = nextNoWhitespace(xpp); 1547 while (eventType != XmlPullParser.END_TAG) { 1548 if (!parseElementDefinitionTypeRefComponentContent(eventType, xpp, owner, res)) 1549 unknownContent(xpp); 1550 eventType = nextNoWhitespace(xpp); 1551 } 1552 next(xpp); 1553 parseElementClose(res); 1554 return res; 1555 } 1556 1557 protected boolean parseElementDefinitionTypeRefComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.TypeRefComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1558 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1559 res.setCodeElement(parseUri(xpp)); 1560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1561 res.setProfileElement(parseUri(xpp)); 1562 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetProfile")) { 1563 res.setTargetProfileElement(parseUri(xpp)); 1564 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("aggregation")) { 1565 res.getAggregation().add(parseEnumeration(xpp, ElementDefinition.AggregationMode.NULL, new ElementDefinition.AggregationModeEnumFactory())); 1566 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versioning")) { 1567 res.setVersioningElement(parseEnumeration(xpp, ElementDefinition.ReferenceVersionRules.NULL, new ElementDefinition.ReferenceVersionRulesEnumFactory())); 1568 } else if (!parseElementContent(eventType, xpp, res)) 1569 return false; 1570 return true; 1571 } 1572 1573 protected ElementDefinition.ElementDefinitionExampleComponent parseElementDefinitionElementDefinitionExampleComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1574 ElementDefinition.ElementDefinitionExampleComponent res = new ElementDefinition.ElementDefinitionExampleComponent(); 1575 parseElementAttributes(xpp, res); 1576 next(xpp); 1577 int eventType = nextNoWhitespace(xpp); 1578 while (eventType != XmlPullParser.END_TAG) { 1579 if (!parseElementDefinitionElementDefinitionExampleComponentContent(eventType, xpp, owner, res)) 1580 unknownContent(xpp); 1581 eventType = nextNoWhitespace(xpp); 1582 } 1583 next(xpp); 1584 parseElementClose(res); 1585 return res; 1586 } 1587 1588 protected boolean parseElementDefinitionElementDefinitionExampleComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionExampleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1589 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 1590 res.setLabelElement(parseString(xpp)); 1591 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1592 res.setValue(parseType("value", xpp)); 1593 } else if (!parseElementContent(eventType, xpp, res)) 1594 return false; 1595 return true; 1596 } 1597 1598 protected ElementDefinition.ElementDefinitionConstraintComponent parseElementDefinitionElementDefinitionConstraintComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1599 ElementDefinition.ElementDefinitionConstraintComponent res = new ElementDefinition.ElementDefinitionConstraintComponent(); 1600 parseElementAttributes(xpp, res); 1601 next(xpp); 1602 int eventType = nextNoWhitespace(xpp); 1603 while (eventType != XmlPullParser.END_TAG) { 1604 if (!parseElementDefinitionElementDefinitionConstraintComponentContent(eventType, xpp, owner, res)) 1605 unknownContent(xpp); 1606 eventType = nextNoWhitespace(xpp); 1607 } 1608 next(xpp); 1609 parseElementClose(res); 1610 return res; 1611 } 1612 1613 protected boolean parseElementDefinitionElementDefinitionConstraintComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionConstraintComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1614 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("key")) { 1615 res.setKeyElement(parseId(xpp)); 1616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requirements")) { 1617 res.setRequirementsElement(parseString(xpp)); 1618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 1619 res.setSeverityElement(parseEnumeration(xpp, ElementDefinition.ConstraintSeverity.NULL, new ElementDefinition.ConstraintSeverityEnumFactory())); 1620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("human")) { 1621 res.setHumanElement(parseString(xpp)); 1622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 1623 res.setExpressionElement(parseString(xpp)); 1624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpath")) { 1625 res.setXpathElement(parseString(xpp)); 1626 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 1627 res.setSourceElement(parseUri(xpp)); 1628 } else if (!parseElementContent(eventType, xpp, res)) 1629 return false; 1630 return true; 1631 } 1632 1633 protected ElementDefinition.ElementDefinitionBindingComponent parseElementDefinitionElementDefinitionBindingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1634 ElementDefinition.ElementDefinitionBindingComponent res = new ElementDefinition.ElementDefinitionBindingComponent(); 1635 parseElementAttributes(xpp, res); 1636 next(xpp); 1637 int eventType = nextNoWhitespace(xpp); 1638 while (eventType != XmlPullParser.END_TAG) { 1639 if (!parseElementDefinitionElementDefinitionBindingComponentContent(eventType, xpp, owner, res)) 1640 unknownContent(xpp); 1641 eventType = nextNoWhitespace(xpp); 1642 } 1643 next(xpp); 1644 parseElementClose(res); 1645 return res; 1646 } 1647 1648 protected boolean parseElementDefinitionElementDefinitionBindingComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionBindingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1649 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 1650 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 1651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1652 res.setDescriptionElement(parseString(xpp)); 1653 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 1654 res.setValueSet(parseType("valueSet", xpp)); 1655 } else if (!parseElementContent(eventType, xpp, res)) 1656 return false; 1657 return true; 1658 } 1659 1660 protected ElementDefinition.ElementDefinitionMappingComponent parseElementDefinitionElementDefinitionMappingComponent(XmlPullParser xpp, ElementDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 1661 ElementDefinition.ElementDefinitionMappingComponent res = new ElementDefinition.ElementDefinitionMappingComponent(); 1662 parseElementAttributes(xpp, res); 1663 next(xpp); 1664 int eventType = nextNoWhitespace(xpp); 1665 while (eventType != XmlPullParser.END_TAG) { 1666 if (!parseElementDefinitionElementDefinitionMappingComponentContent(eventType, xpp, owner, res)) 1667 unknownContent(xpp); 1668 eventType = nextNoWhitespace(xpp); 1669 } 1670 next(xpp); 1671 parseElementClose(res); 1672 return res; 1673 } 1674 1675 protected boolean parseElementDefinitionElementDefinitionMappingComponentContent(int eventType, XmlPullParser xpp, ElementDefinition owner, ElementDefinition.ElementDefinitionMappingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1676 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 1677 res.setIdentityElement(parseId(xpp)); 1678 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1679 res.setLanguageElement(parseCode(xpp)); 1680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("map")) { 1681 res.setMapElement(parseString(xpp)); 1682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 1683 res.setCommentElement(parseString(xpp)); 1684 } else if (!parseElementContent(eventType, xpp, res)) 1685 return false; 1686 return true; 1687 } 1688 1689 protected ParameterDefinition parseParameterDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1690 ParameterDefinition res = new ParameterDefinition(); 1691 parseElementAttributes(xpp, res); 1692 next(xpp); 1693 int eventType = nextNoWhitespace(xpp); 1694 while (eventType != XmlPullParser.END_TAG) { 1695 if (!parseParameterDefinitionContent(eventType, xpp, res)) 1696 unknownContent(xpp); 1697 eventType = nextNoWhitespace(xpp); 1698 } 1699 next(xpp); 1700 parseElementClose(res); 1701 return res; 1702 } 1703 1704 protected boolean parseParameterDefinitionContent(int eventType, XmlPullParser xpp, ParameterDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 1705 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1706 res.setNameElement(parseCode(xpp)); 1707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 1708 res.setUseElement(parseEnumeration(xpp, ParameterDefinition.ParameterUse.NULL, new ParameterDefinition.ParameterUseEnumFactory())); 1709 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 1710 res.setMinElement(parseInteger(xpp)); 1711 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 1712 res.setMaxElement(parseString(xpp)); 1713 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 1714 res.setDocumentationElement(parseString(xpp)); 1715 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1716 res.setTypeElement(parseCode(xpp)); 1717 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 1718 res.setProfile(parseReference(xpp)); 1719 } else if (!parseElementContent(eventType, xpp, res)) 1720 return false; 1721 return true; 1722 } 1723 1724 protected void parseDomainResourceAttributes(XmlPullParser xpp, DomainResource res) throws XmlPullParserException, IOException, FHIRFormatError { 1725 parseResourceAttributes(xpp, res); 1726 } 1727 1728 protected boolean parseDomainResourceContent(int eventType, XmlPullParser xpp, DomainResource res) throws XmlPullParserException, IOException, FHIRFormatError { 1729 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 1730 res.setText(parseNarrative(xpp)); 1731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contained")) { 1732 res.getContained().add(parseResourceContained(xpp)); 1733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extension")) { 1734 res.getExtension().add(parseExtension(xpp)); 1735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifierExtension")) { 1736 res.getModifierExtension().add(parseExtension(xpp)); 1737 } else 1738 return parseResourceContent(eventType, xpp, res); 1739 return true; 1740 } 1741 1742 protected Parameters parseParameters(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1743 Parameters res = new Parameters(); 1744 parseResourceAttributes(xpp, res); 1745 next(xpp); 1746 int eventType = nextNoWhitespace(xpp); 1747 while (eventType != XmlPullParser.END_TAG) { 1748 if (!parseParametersContent(eventType, xpp, res)) 1749 unknownContent(xpp); 1750 eventType = nextNoWhitespace(xpp); 1751 } 1752 next(xpp); 1753 parseElementClose(res); 1754 return res; 1755 } 1756 1757 protected boolean parseParametersContent(int eventType, XmlPullParser xpp, Parameters res) throws XmlPullParserException, IOException, FHIRFormatError { 1758 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 1759 res.getParameter().add(parseParametersParametersParameterComponent(xpp, res)); 1760 } else if (!parseResourceContent(eventType, xpp, res)) 1761 return false; 1762 return true; 1763 } 1764 1765 protected Parameters.ParametersParameterComponent parseParametersParametersParameterComponent(XmlPullParser xpp, Parameters owner) throws XmlPullParserException, IOException, FHIRFormatError { 1766 Parameters.ParametersParameterComponent res = new Parameters.ParametersParameterComponent(); 1767 parseBackboneAttributes(xpp, res); 1768 next(xpp); 1769 int eventType = nextNoWhitespace(xpp); 1770 while (eventType != XmlPullParser.END_TAG) { 1771 if (!parseParametersParametersParameterComponentContent(eventType, xpp, owner, res)) 1772 unknownContent(xpp); 1773 eventType = nextNoWhitespace(xpp); 1774 } 1775 next(xpp); 1776 parseElementClose(res); 1777 return res; 1778 } 1779 1780 protected boolean parseParametersParametersParameterComponentContent(int eventType, XmlPullParser xpp, Parameters owner, Parameters.ParametersParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1781 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1782 res.setNameElement(parseString(xpp)); 1783 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 1784 res.setValue(parseType("value", xpp)); 1785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 1786 res.setResource(parseResourceContained(xpp)); 1787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 1788 res.getPart().add(parseParametersParametersParameterComponent(xpp, owner)); 1789 } else if (!parseBackboneContent(eventType, xpp, res)) 1790 return false; 1791 return true; 1792 } 1793 1794 protected void parseResourceAttributes(XmlPullParser xpp, Resource res) throws XmlPullParserException, IOException, FHIRFormatError { 1795 if (!comments.isEmpty()) { 1796 res.getFormatCommentsPre().addAll(comments); 1797 comments.clear(); 1798 } 1799 } 1800 1801 protected boolean parseResourceContent(int eventType, XmlPullParser xpp, Resource res) throws XmlPullParserException, IOException, FHIRFormatError { 1802 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("id")) { 1803 res.setIdElement(parseId(xpp)); 1804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meta")) { 1805 res.setMeta(parseMeta(xpp)); 1806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicitRules")) { 1807 res.setImplicitRulesElement(parseUri(xpp)); 1808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 1809 res.setLanguageElement(parseCode(xpp)); 1810 } else 1811 return false; 1812 return true; 1813 } 1814 1815 protected Account parseAccount(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1816 Account res = new Account(); 1817 parseDomainResourceAttributes(xpp, res); 1818 next(xpp); 1819 int eventType = nextNoWhitespace(xpp); 1820 while (eventType != XmlPullParser.END_TAG) { 1821 if (!parseAccountContent(eventType, xpp, res)) 1822 unknownContent(xpp); 1823 eventType = nextNoWhitespace(xpp); 1824 } 1825 next(xpp); 1826 parseElementClose(res); 1827 return res; 1828 } 1829 1830 protected boolean parseAccountContent(int eventType, XmlPullParser xpp, Account res) throws XmlPullParserException, IOException, FHIRFormatError { 1831 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1832 res.getIdentifier().add(parseIdentifier(xpp)); 1833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1834 res.setStatusElement(parseEnumeration(xpp, Account.AccountStatus.NULL, new Account.AccountStatusEnumFactory())); 1835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 1836 res.setType(parseCodeableConcept(xpp)); 1837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1838 res.setNameElement(parseString(xpp)); 1839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 1840 res.setSubject(parseReference(xpp)); 1841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1842 res.setPeriod(parsePeriod(xpp)); 1843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 1844 res.setActive(parsePeriod(xpp)); 1845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("balance")) { 1846 res.setBalance(parseMoney(xpp)); 1847 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 1848 res.getCoverage().add(parseAccountCoverageComponent(xpp, res)); 1849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 1850 res.setOwner(parseReference(xpp)); 1851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1852 res.setDescriptionElement(parseString(xpp)); 1853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("guarantor")) { 1854 res.getGuarantor().add(parseAccountGuarantorComponent(xpp, res)); 1855 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1856 return false; 1857 return true; 1858 } 1859 1860 protected Account.CoverageComponent parseAccountCoverageComponent(XmlPullParser xpp, Account owner) throws XmlPullParserException, IOException, FHIRFormatError { 1861 Account.CoverageComponent res = new Account.CoverageComponent(); 1862 parseBackboneAttributes(xpp, res); 1863 next(xpp); 1864 int eventType = nextNoWhitespace(xpp); 1865 while (eventType != XmlPullParser.END_TAG) { 1866 if (!parseAccountCoverageComponentContent(eventType, xpp, owner, res)) 1867 unknownContent(xpp); 1868 eventType = nextNoWhitespace(xpp); 1869 } 1870 next(xpp); 1871 parseElementClose(res); 1872 return res; 1873 } 1874 1875 protected boolean parseAccountCoverageComponentContent(int eventType, XmlPullParser xpp, Account owner, Account.CoverageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1876 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 1877 res.setCoverage(parseReference(xpp)); 1878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 1879 res.setPriorityElement(parsePositiveInt(xpp)); 1880 } else if (!parseBackboneContent(eventType, xpp, res)) 1881 return false; 1882 return true; 1883 } 1884 1885 protected Account.GuarantorComponent parseAccountGuarantorComponent(XmlPullParser xpp, Account owner) throws XmlPullParserException, IOException, FHIRFormatError { 1886 Account.GuarantorComponent res = new Account.GuarantorComponent(); 1887 parseBackboneAttributes(xpp, res); 1888 next(xpp); 1889 int eventType = nextNoWhitespace(xpp); 1890 while (eventType != XmlPullParser.END_TAG) { 1891 if (!parseAccountGuarantorComponentContent(eventType, xpp, owner, res)) 1892 unknownContent(xpp); 1893 eventType = nextNoWhitespace(xpp); 1894 } 1895 next(xpp); 1896 parseElementClose(res); 1897 return res; 1898 } 1899 1900 protected boolean parseAccountGuarantorComponentContent(int eventType, XmlPullParser xpp, Account owner, Account.GuarantorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 1901 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 1902 res.setParty(parseReference(xpp)); 1903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onHold")) { 1904 res.setOnHoldElement(parseBoolean(xpp)); 1905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 1906 res.setPeriod(parsePeriod(xpp)); 1907 } else if (!parseBackboneContent(eventType, xpp, res)) 1908 return false; 1909 return true; 1910 } 1911 1912 protected ActivityDefinition parseActivityDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 1913 ActivityDefinition res = new ActivityDefinition(); 1914 parseDomainResourceAttributes(xpp, res); 1915 next(xpp); 1916 int eventType = nextNoWhitespace(xpp); 1917 while (eventType != XmlPullParser.END_TAG) { 1918 if (!parseActivityDefinitionContent(eventType, xpp, res)) 1919 unknownContent(xpp); 1920 eventType = nextNoWhitespace(xpp); 1921 } 1922 next(xpp); 1923 parseElementClose(res); 1924 return res; 1925 } 1926 1927 protected boolean parseActivityDefinitionContent(int eventType, XmlPullParser xpp, ActivityDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 1928 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 1929 res.setUrlElement(parseUri(xpp)); 1930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 1931 res.getIdentifier().add(parseIdentifier(xpp)); 1932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 1933 res.setVersionElement(parseString(xpp)); 1934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 1935 res.setNameElement(parseString(xpp)); 1936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 1937 res.setTitleElement(parseString(xpp)); 1938 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 1939 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 1940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 1941 res.setExperimentalElement(parseBoolean(xpp)); 1942 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 1943 res.setDateElement(parseDateTime(xpp)); 1944 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 1945 res.setPublisherElement(parseString(xpp)); 1946 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 1947 res.setDescriptionElement(parseMarkdown(xpp)); 1948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 1949 res.setPurposeElement(parseMarkdown(xpp)); 1950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 1951 res.setUsageElement(parseString(xpp)); 1952 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 1953 res.setApprovalDateElement(parseDate(xpp)); 1954 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 1955 res.setLastReviewDateElement(parseDate(xpp)); 1956 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 1957 res.setEffectivePeriod(parsePeriod(xpp)); 1958 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 1959 res.getUseContext().add(parseUsageContext(xpp)); 1960 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 1961 res.getJurisdiction().add(parseCodeableConcept(xpp)); 1962 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 1963 res.getTopic().add(parseCodeableConcept(xpp)); 1964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 1965 res.getContributor().add(parseContributor(xpp)); 1966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 1967 res.getContact().add(parseContactDetail(xpp)); 1968 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 1969 res.setCopyrightElement(parseMarkdown(xpp)); 1970 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 1971 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 1972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 1973 res.getLibrary().add(parseReference(xpp)); 1974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 1975 res.setKindElement(parseEnumeration(xpp, ActivityDefinition.ActivityDefinitionKind.NULL, new ActivityDefinition.ActivityDefinitionKindEnumFactory())); 1976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 1977 res.setCode(parseCodeableConcept(xpp)); 1978 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 1979 res.setTiming(parseType("timing", xpp)); 1980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 1981 res.setLocation(parseReference(xpp)); 1982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 1983 res.getParticipant().add(parseActivityDefinitionActivityDefinitionParticipantComponent(xpp, res)); 1984 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "product")) { 1985 res.setProduct(parseType("product", xpp)); 1986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 1987 res.setQuantity(parseSimpleQuantity(xpp)); 1988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 1989 res.getDosage().add(parseDosage(xpp)); 1990 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 1991 res.getBodySite().add(parseCodeableConcept(xpp)); 1992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 1993 res.setTransform(parseReference(xpp)); 1994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dynamicValue")) { 1995 res.getDynamicValue().add(parseActivityDefinitionActivityDefinitionDynamicValueComponent(xpp, res)); 1996 } else if (!parseDomainResourceContent(eventType, xpp, res)) 1997 return false; 1998 return true; 1999 } 2000 2001 protected ActivityDefinition.ActivityDefinitionParticipantComponent parseActivityDefinitionActivityDefinitionParticipantComponent(XmlPullParser xpp, ActivityDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 2002 ActivityDefinition.ActivityDefinitionParticipantComponent res = new ActivityDefinition.ActivityDefinitionParticipantComponent(); 2003 parseBackboneAttributes(xpp, res); 2004 next(xpp); 2005 int eventType = nextNoWhitespace(xpp); 2006 while (eventType != XmlPullParser.END_TAG) { 2007 if (!parseActivityDefinitionActivityDefinitionParticipantComponentContent(eventType, xpp, owner, res)) 2008 unknownContent(xpp); 2009 eventType = nextNoWhitespace(xpp); 2010 } 2011 next(xpp); 2012 parseElementClose(res); 2013 return res; 2014 } 2015 2016 protected boolean parseActivityDefinitionActivityDefinitionParticipantComponentContent(int eventType, XmlPullParser xpp, ActivityDefinition owner, ActivityDefinition.ActivityDefinitionParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2017 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2018 res.setTypeElement(parseEnumeration(xpp, ActivityDefinition.ActivityParticipantType.NULL, new ActivityDefinition.ActivityParticipantTypeEnumFactory())); 2019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2020 res.setRole(parseCodeableConcept(xpp)); 2021 } else if (!parseBackboneContent(eventType, xpp, res)) 2022 return false; 2023 return true; 2024 } 2025 2026 protected ActivityDefinition.ActivityDefinitionDynamicValueComponent parseActivityDefinitionActivityDefinitionDynamicValueComponent(XmlPullParser xpp, ActivityDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 2027 ActivityDefinition.ActivityDefinitionDynamicValueComponent res = new ActivityDefinition.ActivityDefinitionDynamicValueComponent(); 2028 parseBackboneAttributes(xpp, res); 2029 next(xpp); 2030 int eventType = nextNoWhitespace(xpp); 2031 while (eventType != XmlPullParser.END_TAG) { 2032 if (!parseActivityDefinitionActivityDefinitionDynamicValueComponentContent(eventType, xpp, owner, res)) 2033 unknownContent(xpp); 2034 eventType = nextNoWhitespace(xpp); 2035 } 2036 next(xpp); 2037 parseElementClose(res); 2038 return res; 2039 } 2040 2041 protected boolean parseActivityDefinitionActivityDefinitionDynamicValueComponentContent(int eventType, XmlPullParser xpp, ActivityDefinition owner, ActivityDefinition.ActivityDefinitionDynamicValueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2042 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2043 res.setDescriptionElement(parseString(xpp)); 2044 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 2045 res.setPathElement(parseString(xpp)); 2046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 2047 res.setLanguageElement(parseString(xpp)); 2048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 2049 res.setExpressionElement(parseString(xpp)); 2050 } else if (!parseBackboneContent(eventType, xpp, res)) 2051 return false; 2052 return true; 2053 } 2054 2055 protected AdverseEvent parseAdverseEvent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2056 AdverseEvent res = new AdverseEvent(); 2057 parseDomainResourceAttributes(xpp, res); 2058 next(xpp); 2059 int eventType = nextNoWhitespace(xpp); 2060 while (eventType != XmlPullParser.END_TAG) { 2061 if (!parseAdverseEventContent(eventType, xpp, res)) 2062 unknownContent(xpp); 2063 eventType = nextNoWhitespace(xpp); 2064 } 2065 next(xpp); 2066 parseElementClose(res); 2067 return res; 2068 } 2069 2070 protected boolean parseAdverseEventContent(int eventType, XmlPullParser xpp, AdverseEvent res) throws XmlPullParserException, IOException, FHIRFormatError { 2071 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2072 res.setIdentifier(parseIdentifier(xpp)); 2073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2074 res.setCategoryElement(parseEnumeration(xpp, AdverseEvent.AdverseEventCategory.NULL, new AdverseEvent.AdverseEventCategoryEnumFactory())); 2075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2076 res.setType(parseCodeableConcept(xpp)); 2077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2078 res.setSubject(parseReference(xpp)); 2079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 2080 res.setDateElement(parseDateTime(xpp)); 2081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 2082 res.getReaction().add(parseReference(xpp)); 2083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2084 res.setLocation(parseReference(xpp)); 2085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriousness")) { 2086 res.setSeriousness(parseCodeableConcept(xpp)); 2087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 2088 res.setOutcome(parseCodeableConcept(xpp)); 2089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 2090 res.setRecorder(parseReference(xpp)); 2091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventParticipant")) { 2092 res.setEventParticipant(parseReference(xpp)); 2093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2094 res.setDescriptionElement(parseString(xpp)); 2095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suspectEntity")) { 2096 res.getSuspectEntity().add(parseAdverseEventAdverseEventSuspectEntityComponent(xpp, res)); 2097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectMedicalHistory")) { 2098 res.getSubjectMedicalHistory().add(parseReference(xpp)); 2099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceDocument")) { 2100 res.getReferenceDocument().add(parseReference(xpp)); 2101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 2102 res.getStudy().add(parseReference(xpp)); 2103 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2104 return false; 2105 return true; 2106 } 2107 2108 protected AdverseEvent.AdverseEventSuspectEntityComponent parseAdverseEventAdverseEventSuspectEntityComponent(XmlPullParser xpp, AdverseEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2109 AdverseEvent.AdverseEventSuspectEntityComponent res = new AdverseEvent.AdverseEventSuspectEntityComponent(); 2110 parseBackboneAttributes(xpp, res); 2111 next(xpp); 2112 int eventType = nextNoWhitespace(xpp); 2113 while (eventType != XmlPullParser.END_TAG) { 2114 if (!parseAdverseEventAdverseEventSuspectEntityComponentContent(eventType, xpp, owner, res)) 2115 unknownContent(xpp); 2116 eventType = nextNoWhitespace(xpp); 2117 } 2118 next(xpp); 2119 parseElementClose(res); 2120 return res; 2121 } 2122 2123 protected boolean parseAdverseEventAdverseEventSuspectEntityComponentContent(int eventType, XmlPullParser xpp, AdverseEvent owner, AdverseEvent.AdverseEventSuspectEntityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2124 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 2125 res.setInstance(parseReference(xpp)); 2126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causality")) { 2127 res.setCausalityElement(parseEnumeration(xpp, AdverseEvent.AdverseEventCausality.NULL, new AdverseEvent.AdverseEventCausalityEnumFactory())); 2128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityAssessment")) { 2129 res.setCausalityAssessment(parseCodeableConcept(xpp)); 2130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityProductRelatedness")) { 2131 res.setCausalityProductRelatednessElement(parseString(xpp)); 2132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityMethod")) { 2133 res.setCausalityMethod(parseCodeableConcept(xpp)); 2134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityAuthor")) { 2135 res.setCausalityAuthor(parseReference(xpp)); 2136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("causalityResult")) { 2137 res.setCausalityResult(parseCodeableConcept(xpp)); 2138 } else if (!parseBackboneContent(eventType, xpp, res)) 2139 return false; 2140 return true; 2141 } 2142 2143 protected AllergyIntolerance parseAllergyIntolerance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2144 AllergyIntolerance res = new AllergyIntolerance(); 2145 parseDomainResourceAttributes(xpp, res); 2146 next(xpp); 2147 int eventType = nextNoWhitespace(xpp); 2148 while (eventType != XmlPullParser.END_TAG) { 2149 if (!parseAllergyIntoleranceContent(eventType, xpp, res)) 2150 unknownContent(xpp); 2151 eventType = nextNoWhitespace(xpp); 2152 } 2153 next(xpp); 2154 parseElementClose(res); 2155 return res; 2156 } 2157 2158 protected boolean parseAllergyIntoleranceContent(int eventType, XmlPullParser xpp, AllergyIntolerance res) throws XmlPullParserException, IOException, FHIRFormatError { 2159 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2160 res.getIdentifier().add(parseIdentifier(xpp)); 2161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalStatus")) { 2162 res.setClinicalStatusElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceClinicalStatus.NULL, new AllergyIntolerance.AllergyIntoleranceClinicalStatusEnumFactory())); 2163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationStatus")) { 2164 res.setVerificationStatusElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceVerificationStatus.NULL, new AllergyIntolerance.AllergyIntoleranceVerificationStatusEnumFactory())); 2165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2166 res.setTypeElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceType.NULL, new AllergyIntolerance.AllergyIntoleranceTypeEnumFactory())); 2167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 2168 res.getCategory().add(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCategory.NULL, new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory())); 2169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criticality")) { 2170 res.setCriticalityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceCriticality.NULL, new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory())); 2171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2172 res.setCode(parseCodeableConcept(xpp)); 2173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 2174 res.setPatient(parseReference(xpp)); 2175 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 2176 res.setOnset(parseType("onset", xpp)); 2177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assertedDate")) { 2178 res.setAssertedDateElement(parseDateTime(xpp)); 2179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 2180 res.setRecorder(parseReference(xpp)); 2181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asserter")) { 2182 res.setAsserter(parseReference(xpp)); 2183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastOccurrence")) { 2184 res.setLastOccurrenceElement(parseDateTime(xpp)); 2185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 2186 res.getNote().add(parseAnnotation(xpp)); 2187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 2188 res.getReaction().add(parseAllergyIntoleranceAllergyIntoleranceReactionComponent(xpp, res)); 2189 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2190 return false; 2191 return true; 2192 } 2193 2194 protected AllergyIntolerance.AllergyIntoleranceReactionComponent parseAllergyIntoleranceAllergyIntoleranceReactionComponent(XmlPullParser xpp, AllergyIntolerance owner) throws XmlPullParserException, IOException, FHIRFormatError { 2195 AllergyIntolerance.AllergyIntoleranceReactionComponent res = new AllergyIntolerance.AllergyIntoleranceReactionComponent(); 2196 parseBackboneAttributes(xpp, res); 2197 next(xpp); 2198 int eventType = nextNoWhitespace(xpp); 2199 while (eventType != XmlPullParser.END_TAG) { 2200 if (!parseAllergyIntoleranceAllergyIntoleranceReactionComponentContent(eventType, xpp, owner, res)) 2201 unknownContent(xpp); 2202 eventType = nextNoWhitespace(xpp); 2203 } 2204 next(xpp); 2205 parseElementClose(res); 2206 return res; 2207 } 2208 2209 protected boolean parseAllergyIntoleranceAllergyIntoleranceReactionComponentContent(int eventType, XmlPullParser xpp, AllergyIntolerance owner, AllergyIntolerance.AllergyIntoleranceReactionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2210 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substance")) { 2211 res.setSubstance(parseCodeableConcept(xpp)); 2212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manifestation")) { 2213 res.getManifestation().add(parseCodeableConcept(xpp)); 2214 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2215 res.setDescriptionElement(parseString(xpp)); 2216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onset")) { 2217 res.setOnsetElement(parseDateTime(xpp)); 2218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 2219 res.setSeverityElement(parseEnumeration(xpp, AllergyIntolerance.AllergyIntoleranceSeverity.NULL, new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory())); 2220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exposureRoute")) { 2221 res.setExposureRoute(parseCodeableConcept(xpp)); 2222 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 2223 res.getNote().add(parseAnnotation(xpp)); 2224 } else if (!parseBackboneContent(eventType, xpp, res)) 2225 return false; 2226 return true; 2227 } 2228 2229 protected Appointment parseAppointment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2230 Appointment res = new Appointment(); 2231 parseDomainResourceAttributes(xpp, res); 2232 next(xpp); 2233 int eventType = nextNoWhitespace(xpp); 2234 while (eventType != XmlPullParser.END_TAG) { 2235 if (!parseAppointmentContent(eventType, xpp, res)) 2236 unknownContent(xpp); 2237 eventType = nextNoWhitespace(xpp); 2238 } 2239 next(xpp); 2240 parseElementClose(res); 2241 return res; 2242 } 2243 2244 protected boolean parseAppointmentContent(int eventType, XmlPullParser xpp, Appointment res) throws XmlPullParserException, IOException, FHIRFormatError { 2245 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2246 res.getIdentifier().add(parseIdentifier(xpp)); 2247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2248 res.setStatusElement(parseEnumeration(xpp, Appointment.AppointmentStatus.NULL, new Appointment.AppointmentStatusEnumFactory())); 2249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 2250 res.setServiceCategory(parseCodeableConcept(xpp)); 2251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 2252 res.getServiceType().add(parseCodeableConcept(xpp)); 2253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 2254 res.getSpecialty().add(parseCodeableConcept(xpp)); 2255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentType")) { 2256 res.setAppointmentType(parseCodeableConcept(xpp)); 2257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 2258 res.getReason().add(parseCodeableConcept(xpp)); 2259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 2260 res.getIndication().add(parseReference(xpp)); 2261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 2262 res.setPriorityElement(parseUnsignedInt(xpp)); 2263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2264 res.setDescriptionElement(parseString(xpp)); 2265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 2266 res.getSupportingInformation().add(parseReference(xpp)); 2267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 2268 res.setStartElement(parseInstant(xpp)); 2269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 2270 res.setEndElement(parseInstant(xpp)); 2271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minutesDuration")) { 2272 res.setMinutesDurationElement(parsePositiveInt(xpp)); 2273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("slot")) { 2274 res.getSlot().add(parseReference(xpp)); 2275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 2276 res.setCreatedElement(parseDateTime(xpp)); 2277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 2278 res.setCommentElement(parseString(xpp)); 2279 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("incomingReferral")) { 2280 res.getIncomingReferral().add(parseReference(xpp)); 2281 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 2282 res.getParticipant().add(parseAppointmentAppointmentParticipantComponent(xpp, res)); 2283 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestedPeriod")) { 2284 res.getRequestedPeriod().add(parsePeriod(xpp)); 2285 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2286 return false; 2287 return true; 2288 } 2289 2290 protected Appointment.AppointmentParticipantComponent parseAppointmentAppointmentParticipantComponent(XmlPullParser xpp, Appointment owner) throws XmlPullParserException, IOException, FHIRFormatError { 2291 Appointment.AppointmentParticipantComponent res = new Appointment.AppointmentParticipantComponent(); 2292 parseBackboneAttributes(xpp, res); 2293 next(xpp); 2294 int eventType = nextNoWhitespace(xpp); 2295 while (eventType != XmlPullParser.END_TAG) { 2296 if (!parseAppointmentAppointmentParticipantComponentContent(eventType, xpp, owner, res)) 2297 unknownContent(xpp); 2298 eventType = nextNoWhitespace(xpp); 2299 } 2300 next(xpp); 2301 parseElementClose(res); 2302 return res; 2303 } 2304 2305 protected boolean parseAppointmentAppointmentParticipantComponentContent(int eventType, XmlPullParser xpp, Appointment owner, Appointment.AppointmentParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2306 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2307 res.getType().add(parseCodeableConcept(xpp)); 2308 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 2309 res.setActor(parseReference(xpp)); 2310 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 2311 res.setRequiredElement(parseEnumeration(xpp, Appointment.ParticipantRequired.NULL, new Appointment.ParticipantRequiredEnumFactory())); 2312 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2313 res.setStatusElement(parseEnumeration(xpp, Appointment.ParticipationStatus.NULL, new Appointment.ParticipationStatusEnumFactory())); 2314 } else if (!parseBackboneContent(eventType, xpp, res)) 2315 return false; 2316 return true; 2317 } 2318 2319 protected AppointmentResponse parseAppointmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2320 AppointmentResponse res = new AppointmentResponse(); 2321 parseDomainResourceAttributes(xpp, res); 2322 next(xpp); 2323 int eventType = nextNoWhitespace(xpp); 2324 while (eventType != XmlPullParser.END_TAG) { 2325 if (!parseAppointmentResponseContent(eventType, xpp, res)) 2326 unknownContent(xpp); 2327 eventType = nextNoWhitespace(xpp); 2328 } 2329 next(xpp); 2330 parseElementClose(res); 2331 return res; 2332 } 2333 2334 protected boolean parseAppointmentResponseContent(int eventType, XmlPullParser xpp, AppointmentResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 2335 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2336 res.getIdentifier().add(parseIdentifier(xpp)); 2337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 2338 res.setAppointment(parseReference(xpp)); 2339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 2340 res.setStartElement(parseInstant(xpp)); 2341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 2342 res.setEndElement(parseInstant(xpp)); 2343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantType")) { 2344 res.getParticipantType().add(parseCodeableConcept(xpp)); 2345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 2346 res.setActor(parseReference(xpp)); 2347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participantStatus")) { 2348 res.setParticipantStatusElement(parseEnumeration(xpp, AppointmentResponse.ParticipantStatus.NULL, new AppointmentResponse.ParticipantStatusEnumFactory())); 2349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 2350 res.setCommentElement(parseString(xpp)); 2351 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2352 return false; 2353 return true; 2354 } 2355 2356 protected AuditEvent parseAuditEvent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2357 AuditEvent res = new AuditEvent(); 2358 parseDomainResourceAttributes(xpp, res); 2359 next(xpp); 2360 int eventType = nextNoWhitespace(xpp); 2361 while (eventType != XmlPullParser.END_TAG) { 2362 if (!parseAuditEventContent(eventType, xpp, res)) 2363 unknownContent(xpp); 2364 eventType = nextNoWhitespace(xpp); 2365 } 2366 next(xpp); 2367 parseElementClose(res); 2368 return res; 2369 } 2370 2371 protected boolean parseAuditEventContent(int eventType, XmlPullParser xpp, AuditEvent res) throws XmlPullParserException, IOException, FHIRFormatError { 2372 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2373 res.setType(parseCoding(xpp)); 2374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtype")) { 2375 res.getSubtype().add(parseCoding(xpp)); 2376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 2377 res.setActionElement(parseEnumeration(xpp, AuditEvent.AuditEventAction.NULL, new AuditEvent.AuditEventActionEnumFactory())); 2378 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 2379 res.setRecordedElement(parseInstant(xpp)); 2380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 2381 res.setOutcomeElement(parseEnumeration(xpp, AuditEvent.AuditEventOutcome.NULL, new AuditEvent.AuditEventOutcomeEnumFactory())); 2382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeDesc")) { 2383 res.setOutcomeDescElement(parseString(xpp)); 2384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purposeOfEvent")) { 2385 res.getPurposeOfEvent().add(parseCodeableConcept(xpp)); 2386 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 2387 res.getAgent().add(parseAuditEventAuditEventAgentComponent(xpp, res)); 2388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 2389 res.setSource(parseAuditEventAuditEventSourceComponent(xpp, res)); 2390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 2391 res.getEntity().add(parseAuditEventAuditEventEntityComponent(xpp, res)); 2392 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2393 return false; 2394 return true; 2395 } 2396 2397 protected AuditEvent.AuditEventAgentComponent parseAuditEventAuditEventAgentComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2398 AuditEvent.AuditEventAgentComponent res = new AuditEvent.AuditEventAgentComponent(); 2399 parseBackboneAttributes(xpp, res); 2400 next(xpp); 2401 int eventType = nextNoWhitespace(xpp); 2402 while (eventType != XmlPullParser.END_TAG) { 2403 if (!parseAuditEventAuditEventAgentComponentContent(eventType, xpp, owner, res)) 2404 unknownContent(xpp); 2405 eventType = nextNoWhitespace(xpp); 2406 } 2407 next(xpp); 2408 parseElementClose(res); 2409 return res; 2410 } 2411 2412 protected boolean parseAuditEventAuditEventAgentComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventAgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2413 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2414 res.getRole().add(parseCodeableConcept(xpp)); 2415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 2416 res.setReference(parseReference(xpp)); 2417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("userId")) { 2418 res.setUserId(parseIdentifier(xpp)); 2419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("altId")) { 2420 res.setAltIdElement(parseString(xpp)); 2421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2422 res.setNameElement(parseString(xpp)); 2423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestor")) { 2424 res.setRequestorElement(parseBoolean(xpp)); 2425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2426 res.setLocation(parseReference(xpp)); 2427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 2428 res.getPolicy().add(parseUri(xpp)); 2429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("media")) { 2430 res.setMedia(parseCoding(xpp)); 2431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 2432 res.setNetwork(parseAuditEventAuditEventAgentNetworkComponent(xpp, owner)); 2433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purposeOfUse")) { 2434 res.getPurposeOfUse().add(parseCodeableConcept(xpp)); 2435 } else if (!parseBackboneContent(eventType, xpp, res)) 2436 return false; 2437 return true; 2438 } 2439 2440 protected AuditEvent.AuditEventAgentNetworkComponent parseAuditEventAuditEventAgentNetworkComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2441 AuditEvent.AuditEventAgentNetworkComponent res = new AuditEvent.AuditEventAgentNetworkComponent(); 2442 parseBackboneAttributes(xpp, res); 2443 next(xpp); 2444 int eventType = nextNoWhitespace(xpp); 2445 while (eventType != XmlPullParser.END_TAG) { 2446 if (!parseAuditEventAuditEventAgentNetworkComponentContent(eventType, xpp, owner, res)) 2447 unknownContent(xpp); 2448 eventType = nextNoWhitespace(xpp); 2449 } 2450 next(xpp); 2451 parseElementClose(res); 2452 return res; 2453 } 2454 2455 protected boolean parseAuditEventAuditEventAgentNetworkComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventAgentNetworkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2456 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 2457 res.setAddressElement(parseString(xpp)); 2458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2459 res.setTypeElement(parseEnumeration(xpp, AuditEvent.AuditEventAgentNetworkType.NULL, new AuditEvent.AuditEventAgentNetworkTypeEnumFactory())); 2460 } else if (!parseBackboneContent(eventType, xpp, res)) 2461 return false; 2462 return true; 2463 } 2464 2465 protected AuditEvent.AuditEventSourceComponent parseAuditEventAuditEventSourceComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2466 AuditEvent.AuditEventSourceComponent res = new AuditEvent.AuditEventSourceComponent(); 2467 parseBackboneAttributes(xpp, res); 2468 next(xpp); 2469 int eventType = nextNoWhitespace(xpp); 2470 while (eventType != XmlPullParser.END_TAG) { 2471 if (!parseAuditEventAuditEventSourceComponentContent(eventType, xpp, owner, res)) 2472 unknownContent(xpp); 2473 eventType = nextNoWhitespace(xpp); 2474 } 2475 next(xpp); 2476 parseElementClose(res); 2477 return res; 2478 } 2479 2480 protected boolean parseAuditEventAuditEventSourceComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventSourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2481 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 2482 res.setSiteElement(parseString(xpp)); 2483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2484 res.setIdentifier(parseIdentifier(xpp)); 2485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2486 res.getType().add(parseCoding(xpp)); 2487 } else if (!parseBackboneContent(eventType, xpp, res)) 2488 return false; 2489 return true; 2490 } 2491 2492 protected AuditEvent.AuditEventEntityComponent parseAuditEventAuditEventEntityComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2493 AuditEvent.AuditEventEntityComponent res = new AuditEvent.AuditEventEntityComponent(); 2494 parseBackboneAttributes(xpp, res); 2495 next(xpp); 2496 int eventType = nextNoWhitespace(xpp); 2497 while (eventType != XmlPullParser.END_TAG) { 2498 if (!parseAuditEventAuditEventEntityComponentContent(eventType, xpp, owner, res)) 2499 unknownContent(xpp); 2500 eventType = nextNoWhitespace(xpp); 2501 } 2502 next(xpp); 2503 parseElementClose(res); 2504 return res; 2505 } 2506 2507 protected boolean parseAuditEventAuditEventEntityComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventEntityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2508 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2509 res.setIdentifier(parseIdentifier(xpp)); 2510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 2511 res.setReference(parseReference(xpp)); 2512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2513 res.setType(parseCoding(xpp)); 2514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 2515 res.setRole(parseCoding(xpp)); 2516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lifecycle")) { 2517 res.setLifecycle(parseCoding(xpp)); 2518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 2519 res.getSecurityLabel().add(parseCoding(xpp)); 2520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2521 res.setNameElement(parseString(xpp)); 2522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2523 res.setDescriptionElement(parseString(xpp)); 2524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("query")) { 2525 res.setQueryElement(parseBase64Binary(xpp)); 2526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 2527 res.getDetail().add(parseAuditEventAuditEventEntityDetailComponent(xpp, owner)); 2528 } else if (!parseBackboneContent(eventType, xpp, res)) 2529 return false; 2530 return true; 2531 } 2532 2533 protected AuditEvent.AuditEventEntityDetailComponent parseAuditEventAuditEventEntityDetailComponent(XmlPullParser xpp, AuditEvent owner) throws XmlPullParserException, IOException, FHIRFormatError { 2534 AuditEvent.AuditEventEntityDetailComponent res = new AuditEvent.AuditEventEntityDetailComponent(); 2535 parseBackboneAttributes(xpp, res); 2536 next(xpp); 2537 int eventType = nextNoWhitespace(xpp); 2538 while (eventType != XmlPullParser.END_TAG) { 2539 if (!parseAuditEventAuditEventEntityDetailComponentContent(eventType, xpp, owner, res)) 2540 unknownContent(xpp); 2541 eventType = nextNoWhitespace(xpp); 2542 } 2543 next(xpp); 2544 parseElementClose(res); 2545 return res; 2546 } 2547 2548 protected boolean parseAuditEventAuditEventEntityDetailComponentContent(int eventType, XmlPullParser xpp, AuditEvent owner, AuditEvent.AuditEventEntityDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2549 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2550 res.setTypeElement(parseString(xpp)); 2551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 2552 res.setValueElement(parseBase64Binary(xpp)); 2553 } else if (!parseBackboneContent(eventType, xpp, res)) 2554 return false; 2555 return true; 2556 } 2557 2558 protected Basic parseBasic(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2559 Basic res = new Basic(); 2560 parseDomainResourceAttributes(xpp, res); 2561 next(xpp); 2562 int eventType = nextNoWhitespace(xpp); 2563 while (eventType != XmlPullParser.END_TAG) { 2564 if (!parseBasicContent(eventType, xpp, res)) 2565 unknownContent(xpp); 2566 eventType = nextNoWhitespace(xpp); 2567 } 2568 next(xpp); 2569 parseElementClose(res); 2570 return res; 2571 } 2572 2573 protected boolean parseBasicContent(int eventType, XmlPullParser xpp, Basic res) throws XmlPullParserException, IOException, FHIRFormatError { 2574 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2575 res.getIdentifier().add(parseIdentifier(xpp)); 2576 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2577 res.setCode(parseCodeableConcept(xpp)); 2578 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 2579 res.setSubject(parseReference(xpp)); 2580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 2581 res.setCreatedElement(parseDate(xpp)); 2582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 2583 res.setAuthor(parseReference(xpp)); 2584 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2585 return false; 2586 return true; 2587 } 2588 2589 protected Binary parseBinary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2590 Binary res = new Binary(); 2591 parseResourceAttributes(xpp, res); 2592 next(xpp); 2593 int eventType = nextNoWhitespace(xpp); 2594 while (eventType != XmlPullParser.END_TAG) { 2595 if (!parseBinaryContent(eventType, xpp, res)) 2596 unknownContent(xpp); 2597 eventType = nextNoWhitespace(xpp); 2598 } 2599 next(xpp); 2600 parseElementClose(res); 2601 return res; 2602 } 2603 2604 protected boolean parseBinaryContent(int eventType, XmlPullParser xpp, Binary res) throws XmlPullParserException, IOException, FHIRFormatError { 2605 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 2606 res.setContentTypeElement(parseCode(xpp)); 2607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityContext")) { 2608 res.setSecurityContext(parseReference(xpp)); 2609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 2610 res.setContentElement(parseBase64Binary(xpp)); 2611 } else if (!parseResourceContent(eventType, xpp, res)) 2612 return false; 2613 return true; 2614 } 2615 2616 protected BodySite parseBodySite(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2617 BodySite res = new BodySite(); 2618 parseDomainResourceAttributes(xpp, res); 2619 next(xpp); 2620 int eventType = nextNoWhitespace(xpp); 2621 while (eventType != XmlPullParser.END_TAG) { 2622 if (!parseBodySiteContent(eventType, xpp, res)) 2623 unknownContent(xpp); 2624 eventType = nextNoWhitespace(xpp); 2625 } 2626 next(xpp); 2627 parseElementClose(res); 2628 return res; 2629 } 2630 2631 protected boolean parseBodySiteContent(int eventType, XmlPullParser xpp, BodySite res) throws XmlPullParserException, IOException, FHIRFormatError { 2632 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2633 res.getIdentifier().add(parseIdentifier(xpp)); 2634 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 2635 res.setActiveElement(parseBoolean(xpp)); 2636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 2637 res.setCode(parseCodeableConcept(xpp)); 2638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualifier")) { 2639 res.getQualifier().add(parseCodeableConcept(xpp)); 2640 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2641 res.setDescriptionElement(parseString(xpp)); 2642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 2643 res.getImage().add(parseAttachment(xpp)); 2644 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 2645 res.setPatient(parseReference(xpp)); 2646 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2647 return false; 2648 return true; 2649 } 2650 2651 protected Bundle parseBundle(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2652 Bundle res = new Bundle(); 2653 parseResourceAttributes(xpp, res); 2654 next(xpp); 2655 int eventType = nextNoWhitespace(xpp); 2656 while (eventType != XmlPullParser.END_TAG) { 2657 if (!parseBundleContent(eventType, xpp, res)) 2658 unknownContent(xpp); 2659 eventType = nextNoWhitespace(xpp); 2660 } 2661 next(xpp); 2662 parseElementClose(res); 2663 return res; 2664 } 2665 2666 protected boolean parseBundleContent(int eventType, XmlPullParser xpp, Bundle res) throws XmlPullParserException, IOException, FHIRFormatError { 2667 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 2668 res.setIdentifier(parseIdentifier(xpp)); 2669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 2670 res.setTypeElement(parseEnumeration(xpp, Bundle.BundleType.NULL, new Bundle.BundleTypeEnumFactory())); 2671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 2672 res.setTotalElement(parseUnsignedInt(xpp)); 2673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 2674 res.getLink().add(parseBundleBundleLinkComponent(xpp, res)); 2675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 2676 res.getEntry().add(parseBundleBundleEntryComponent(xpp, res)); 2677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 2678 res.setSignature(parseSignature(xpp)); 2679 } else if (!parseResourceContent(eventType, xpp, res)) 2680 return false; 2681 return true; 2682 } 2683 2684 protected Bundle.BundleLinkComponent parseBundleBundleLinkComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2685 Bundle.BundleLinkComponent res = new Bundle.BundleLinkComponent(); 2686 parseBackboneAttributes(xpp, res); 2687 next(xpp); 2688 int eventType = nextNoWhitespace(xpp); 2689 while (eventType != XmlPullParser.END_TAG) { 2690 if (!parseBundleBundleLinkComponentContent(eventType, xpp, owner, res)) 2691 unknownContent(xpp); 2692 eventType = nextNoWhitespace(xpp); 2693 } 2694 next(xpp); 2695 parseElementClose(res); 2696 return res; 2697 } 2698 2699 protected boolean parseBundleBundleLinkComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2700 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relation")) { 2701 res.setRelationElement(parseString(xpp)); 2702 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2703 res.setUrlElement(parseUri(xpp)); 2704 } else if (!parseBackboneContent(eventType, xpp, res)) 2705 return false; 2706 return true; 2707 } 2708 2709 protected Bundle.BundleEntryComponent parseBundleBundleEntryComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2710 Bundle.BundleEntryComponent res = new Bundle.BundleEntryComponent(); 2711 parseBackboneAttributes(xpp, res); 2712 next(xpp); 2713 int eventType = nextNoWhitespace(xpp); 2714 while (eventType != XmlPullParser.END_TAG) { 2715 if (!parseBundleBundleEntryComponentContent(eventType, xpp, owner, res)) 2716 unknownContent(xpp); 2717 eventType = nextNoWhitespace(xpp); 2718 } 2719 next(xpp); 2720 parseElementClose(res); 2721 return res; 2722 } 2723 2724 protected boolean parseBundleBundleEntryComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleEntryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2725 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 2726 res.getLink().add(parseBundleBundleLinkComponent(xpp, owner)); 2727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fullUrl")) { 2728 res.setFullUrlElement(parseUri(xpp)); 2729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 2730 res.setResource(parseResourceContained(xpp)); 2731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("search")) { 2732 res.setSearch(parseBundleBundleEntrySearchComponent(xpp, owner)); 2733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 2734 res.setRequest(parseBundleBundleEntryRequestComponent(xpp, owner)); 2735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 2736 res.setResponse(parseBundleBundleEntryResponseComponent(xpp, owner)); 2737 } else if (!parseBackboneContent(eventType, xpp, res)) 2738 return false; 2739 return true; 2740 } 2741 2742 protected Bundle.BundleEntrySearchComponent parseBundleBundleEntrySearchComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2743 Bundle.BundleEntrySearchComponent res = new Bundle.BundleEntrySearchComponent(); 2744 parseBackboneAttributes(xpp, res); 2745 next(xpp); 2746 int eventType = nextNoWhitespace(xpp); 2747 while (eventType != XmlPullParser.END_TAG) { 2748 if (!parseBundleBundleEntrySearchComponentContent(eventType, xpp, owner, res)) 2749 unknownContent(xpp); 2750 eventType = nextNoWhitespace(xpp); 2751 } 2752 next(xpp); 2753 parseElementClose(res); 2754 return res; 2755 } 2756 2757 protected boolean parseBundleBundleEntrySearchComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleEntrySearchComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2758 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 2759 res.setModeElement(parseEnumeration(xpp, Bundle.SearchEntryMode.NULL, new Bundle.SearchEntryModeEnumFactory())); 2760 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 2761 res.setScoreElement(parseDecimal(xpp)); 2762 } else if (!parseBackboneContent(eventType, xpp, res)) 2763 return false; 2764 return true; 2765 } 2766 2767 protected Bundle.BundleEntryRequestComponent parseBundleBundleEntryRequestComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2768 Bundle.BundleEntryRequestComponent res = new Bundle.BundleEntryRequestComponent(); 2769 parseBackboneAttributes(xpp, res); 2770 next(xpp); 2771 int eventType = nextNoWhitespace(xpp); 2772 while (eventType != XmlPullParser.END_TAG) { 2773 if (!parseBundleBundleEntryRequestComponentContent(eventType, xpp, owner, res)) 2774 unknownContent(xpp); 2775 eventType = nextNoWhitespace(xpp); 2776 } 2777 next(xpp); 2778 parseElementClose(res); 2779 return res; 2780 } 2781 2782 protected boolean parseBundleBundleEntryRequestComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleEntryRequestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2783 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 2784 res.setMethodElement(parseEnumeration(xpp, Bundle.HTTPVerb.NULL, new Bundle.HTTPVerbEnumFactory())); 2785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2786 res.setUrlElement(parseUri(xpp)); 2787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneMatch")) { 2788 res.setIfNoneMatchElement(parseString(xpp)); 2789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifModifiedSince")) { 2790 res.setIfModifiedSinceElement(parseInstant(xpp)); 2791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifMatch")) { 2792 res.setIfMatchElement(parseString(xpp)); 2793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ifNoneExist")) { 2794 res.setIfNoneExistElement(parseString(xpp)); 2795 } else if (!parseBackboneContent(eventType, xpp, res)) 2796 return false; 2797 return true; 2798 } 2799 2800 protected Bundle.BundleEntryResponseComponent parseBundleBundleEntryResponseComponent(XmlPullParser xpp, Bundle owner) throws XmlPullParserException, IOException, FHIRFormatError { 2801 Bundle.BundleEntryResponseComponent res = new Bundle.BundleEntryResponseComponent(); 2802 parseBackboneAttributes(xpp, res); 2803 next(xpp); 2804 int eventType = nextNoWhitespace(xpp); 2805 while (eventType != XmlPullParser.END_TAG) { 2806 if (!parseBundleBundleEntryResponseComponentContent(eventType, xpp, owner, res)) 2807 unknownContent(xpp); 2808 eventType = nextNoWhitespace(xpp); 2809 } 2810 next(xpp); 2811 parseElementClose(res); 2812 return res; 2813 } 2814 2815 protected boolean parseBundleBundleEntryResponseComponentContent(int eventType, XmlPullParser xpp, Bundle owner, Bundle.BundleEntryResponseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2816 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2817 res.setStatusElement(parseString(xpp)); 2818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 2819 res.setLocationElement(parseUri(xpp)); 2820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("etag")) { 2821 res.setEtagElement(parseString(xpp)); 2822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 2823 res.setLastModifiedElement(parseInstant(xpp)); 2824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 2825 res.setOutcome(parseResourceContained(xpp)); 2826 } else if (!parseBackboneContent(eventType, xpp, res)) 2827 return false; 2828 return true; 2829 } 2830 2831 protected CapabilityStatement parseCapabilityStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 2832 CapabilityStatement res = new CapabilityStatement(); 2833 parseDomainResourceAttributes(xpp, res); 2834 next(xpp); 2835 int eventType = nextNoWhitespace(xpp); 2836 while (eventType != XmlPullParser.END_TAG) { 2837 if (!parseCapabilityStatementContent(eventType, xpp, res)) 2838 unknownContent(xpp); 2839 eventType = nextNoWhitespace(xpp); 2840 } 2841 next(xpp); 2842 parseElementClose(res); 2843 return res; 2844 } 2845 2846 protected boolean parseCapabilityStatementContent(int eventType, XmlPullParser xpp, CapabilityStatement res) throws XmlPullParserException, IOException, FHIRFormatError { 2847 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2848 res.setUrlElement(parseUri(xpp)); 2849 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 2850 res.setVersionElement(parseString(xpp)); 2851 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2852 res.setNameElement(parseString(xpp)); 2853 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 2854 res.setTitleElement(parseString(xpp)); 2855 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 2856 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 2857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 2858 res.setExperimentalElement(parseBoolean(xpp)); 2859 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 2860 res.setDateElement(parseDateTime(xpp)); 2861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 2862 res.setPublisherElement(parseString(xpp)); 2863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 2864 res.getContact().add(parseContactDetail(xpp)); 2865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2866 res.setDescriptionElement(parseMarkdown(xpp)); 2867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 2868 res.getUseContext().add(parseUsageContext(xpp)); 2869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 2870 res.getJurisdiction().add(parseCodeableConcept(xpp)); 2871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 2872 res.setPurposeElement(parseMarkdown(xpp)); 2873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 2874 res.setCopyrightElement(parseMarkdown(xpp)); 2875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 2876 res.setKindElement(parseEnumeration(xpp, CapabilityStatement.CapabilityStatementKind.NULL, new CapabilityStatement.CapabilityStatementKindEnumFactory())); 2877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiates")) { 2878 res.getInstantiates().add(parseUri(xpp)); 2879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 2880 res.setSoftware(parseCapabilityStatementCapabilityStatementSoftwareComponent(xpp, res)); 2881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implementation")) { 2882 res.setImplementation(parseCapabilityStatementCapabilityStatementImplementationComponent(xpp, res)); 2883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 2884 res.setFhirVersionElement(parseId(xpp)); 2885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("acceptUnknown")) { 2886 res.setAcceptUnknownElement(parseEnumeration(xpp, CapabilityStatement.UnknownContentCode.NULL, new CapabilityStatement.UnknownContentCodeEnumFactory())); 2887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 2888 res.getFormat().add(parseCode(xpp)); 2889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patchFormat")) { 2890 res.getPatchFormat().add(parseCode(xpp)); 2891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implementationGuide")) { 2892 res.getImplementationGuide().add(parseUri(xpp)); 2893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 2894 res.getProfile().add(parseReference(xpp)); 2895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rest")) { 2896 res.getRest().add(parseCapabilityStatementCapabilityStatementRestComponent(xpp, res)); 2897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("messaging")) { 2898 res.getMessaging().add(parseCapabilityStatementCapabilityStatementMessagingComponent(xpp, res)); 2899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("document")) { 2900 res.getDocument().add(parseCapabilityStatementCapabilityStatementDocumentComponent(xpp, res)); 2901 } else if (!parseDomainResourceContent(eventType, xpp, res)) 2902 return false; 2903 return true; 2904 } 2905 2906 protected CapabilityStatement.CapabilityStatementSoftwareComponent parseCapabilityStatementCapabilityStatementSoftwareComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 2907 CapabilityStatement.CapabilityStatementSoftwareComponent res = new CapabilityStatement.CapabilityStatementSoftwareComponent(); 2908 parseBackboneAttributes(xpp, res); 2909 next(xpp); 2910 int eventType = nextNoWhitespace(xpp); 2911 while (eventType != XmlPullParser.END_TAG) { 2912 if (!parseCapabilityStatementCapabilityStatementSoftwareComponentContent(eventType, xpp, owner, res)) 2913 unknownContent(xpp); 2914 eventType = nextNoWhitespace(xpp); 2915 } 2916 next(xpp); 2917 parseElementClose(res); 2918 return res; 2919 } 2920 2921 protected boolean parseCapabilityStatementCapabilityStatementSoftwareComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementSoftwareComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2922 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 2923 res.setNameElement(parseString(xpp)); 2924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 2925 res.setVersionElement(parseString(xpp)); 2926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("releaseDate")) { 2927 res.setReleaseDateElement(parseDateTime(xpp)); 2928 } else if (!parseBackboneContent(eventType, xpp, res)) 2929 return false; 2930 return true; 2931 } 2932 2933 protected CapabilityStatement.CapabilityStatementImplementationComponent parseCapabilityStatementCapabilityStatementImplementationComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 2934 CapabilityStatement.CapabilityStatementImplementationComponent res = new CapabilityStatement.CapabilityStatementImplementationComponent(); 2935 parseBackboneAttributes(xpp, res); 2936 next(xpp); 2937 int eventType = nextNoWhitespace(xpp); 2938 while (eventType != XmlPullParser.END_TAG) { 2939 if (!parseCapabilityStatementCapabilityStatementImplementationComponentContent(eventType, xpp, owner, res)) 2940 unknownContent(xpp); 2941 eventType = nextNoWhitespace(xpp); 2942 } 2943 next(xpp); 2944 parseElementClose(res); 2945 return res; 2946 } 2947 2948 protected boolean parseCapabilityStatementCapabilityStatementImplementationComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementImplementationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2949 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 2950 res.setDescriptionElement(parseString(xpp)); 2951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 2952 res.setUrlElement(parseUri(xpp)); 2953 } else if (!parseBackboneContent(eventType, xpp, res)) 2954 return false; 2955 return true; 2956 } 2957 2958 protected CapabilityStatement.CapabilityStatementRestComponent parseCapabilityStatementCapabilityStatementRestComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 2959 CapabilityStatement.CapabilityStatementRestComponent res = new CapabilityStatement.CapabilityStatementRestComponent(); 2960 parseBackboneAttributes(xpp, res); 2961 next(xpp); 2962 int eventType = nextNoWhitespace(xpp); 2963 while (eventType != XmlPullParser.END_TAG) { 2964 if (!parseCapabilityStatementCapabilityStatementRestComponentContent(eventType, xpp, owner, res)) 2965 unknownContent(xpp); 2966 eventType = nextNoWhitespace(xpp); 2967 } 2968 next(xpp); 2969 parseElementClose(res); 2970 return res; 2971 } 2972 2973 protected boolean parseCapabilityStatementCapabilityStatementRestComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 2974 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 2975 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.RestfulCapabilityMode.NULL, new CapabilityStatement.RestfulCapabilityModeEnumFactory())); 2976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 2977 res.setDocumentationElement(parseString(xpp)); 2978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("security")) { 2979 res.setSecurity(parseCapabilityStatementCapabilityStatementRestSecurityComponent(xpp, owner)); 2980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 2981 res.getResource().add(parseCapabilityStatementCapabilityStatementRestResourceComponent(xpp, owner)); 2982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 2983 res.getInteraction().add(parseCapabilityStatementSystemInteractionComponent(xpp, owner)); 2984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 2985 res.getSearchParam().add(parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(xpp, owner)); 2986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 2987 res.getOperation().add(parseCapabilityStatementCapabilityStatementRestOperationComponent(xpp, owner)); 2988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compartment")) { 2989 res.getCompartment().add(parseUri(xpp)); 2990 } else if (!parseBackboneContent(eventType, xpp, res)) 2991 return false; 2992 return true; 2993 } 2994 2995 protected CapabilityStatement.CapabilityStatementRestSecurityComponent parseCapabilityStatementCapabilityStatementRestSecurityComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 2996 CapabilityStatement.CapabilityStatementRestSecurityComponent res = new CapabilityStatement.CapabilityStatementRestSecurityComponent(); 2997 parseBackboneAttributes(xpp, res); 2998 next(xpp); 2999 int eventType = nextNoWhitespace(xpp); 3000 while (eventType != XmlPullParser.END_TAG) { 3001 if (!parseCapabilityStatementCapabilityStatementRestSecurityComponentContent(eventType, xpp, owner, res)) 3002 unknownContent(xpp); 3003 eventType = nextNoWhitespace(xpp); 3004 } 3005 next(xpp); 3006 parseElementClose(res); 3007 return res; 3008 } 3009 3010 protected boolean parseCapabilityStatementCapabilityStatementRestSecurityComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestSecurityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3011 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cors")) { 3012 res.setCorsElement(parseBoolean(xpp)); 3013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 3014 res.getService().add(parseCodeableConcept(xpp)); 3015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3016 res.setDescriptionElement(parseString(xpp)); 3017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("certificate")) { 3018 res.getCertificate().add(parseCapabilityStatementCapabilityStatementRestSecurityCertificateComponent(xpp, owner)); 3019 } else if (!parseBackboneContent(eventType, xpp, res)) 3020 return false; 3021 return true; 3022 } 3023 3024 protected CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent parseCapabilityStatementCapabilityStatementRestSecurityCertificateComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3025 CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent res = new CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); 3026 parseBackboneAttributes(xpp, res); 3027 next(xpp); 3028 int eventType = nextNoWhitespace(xpp); 3029 while (eventType != XmlPullParser.END_TAG) { 3030 if (!parseCapabilityStatementCapabilityStatementRestSecurityCertificateComponentContent(eventType, xpp, owner, res)) 3031 unknownContent(xpp); 3032 eventType = nextNoWhitespace(xpp); 3033 } 3034 next(xpp); 3035 parseElementClose(res); 3036 return res; 3037 } 3038 3039 protected boolean parseCapabilityStatementCapabilityStatementRestSecurityCertificateComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3040 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3041 res.setTypeElement(parseCode(xpp)); 3042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("blob")) { 3043 res.setBlobElement(parseBase64Binary(xpp)); 3044 } else if (!parseBackboneContent(eventType, xpp, res)) 3045 return false; 3046 return true; 3047 } 3048 3049 protected CapabilityStatement.CapabilityStatementRestResourceComponent parseCapabilityStatementCapabilityStatementRestResourceComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3050 CapabilityStatement.CapabilityStatementRestResourceComponent res = new CapabilityStatement.CapabilityStatementRestResourceComponent(); 3051 parseBackboneAttributes(xpp, res); 3052 next(xpp); 3053 int eventType = nextNoWhitespace(xpp); 3054 while (eventType != XmlPullParser.END_TAG) { 3055 if (!parseCapabilityStatementCapabilityStatementRestResourceComponentContent(eventType, xpp, owner, res)) 3056 unknownContent(xpp); 3057 eventType = nextNoWhitespace(xpp); 3058 } 3059 next(xpp); 3060 parseElementClose(res); 3061 return res; 3062 } 3063 3064 protected boolean parseCapabilityStatementCapabilityStatementRestResourceComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3065 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3066 res.setTypeElement(parseCode(xpp)); 3067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 3068 res.setProfile(parseReference(xpp)); 3069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3070 res.setDocumentationElement(parseMarkdown(xpp)); 3071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interaction")) { 3072 res.getInteraction().add(parseCapabilityStatementResourceInteractionComponent(xpp, owner)); 3073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versioning")) { 3074 res.setVersioningElement(parseEnumeration(xpp, CapabilityStatement.ResourceVersionPolicy.NULL, new CapabilityStatement.ResourceVersionPolicyEnumFactory())); 3075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readHistory")) { 3076 res.setReadHistoryElement(parseBoolean(xpp)); 3077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("updateCreate")) { 3078 res.setUpdateCreateElement(parseBoolean(xpp)); 3079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalCreate")) { 3080 res.setConditionalCreateElement(parseBoolean(xpp)); 3081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalRead")) { 3082 res.setConditionalReadElement(parseEnumeration(xpp, CapabilityStatement.ConditionalReadStatus.NULL, new CapabilityStatement.ConditionalReadStatusEnumFactory())); 3083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalUpdate")) { 3084 res.setConditionalUpdateElement(parseBoolean(xpp)); 3085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conditionalDelete")) { 3086 res.setConditionalDeleteElement(parseEnumeration(xpp, CapabilityStatement.ConditionalDeleteStatus.NULL, new CapabilityStatement.ConditionalDeleteStatusEnumFactory())); 3087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referencePolicy")) { 3088 res.getReferencePolicy().add(parseEnumeration(xpp, CapabilityStatement.ReferenceHandlingPolicy.NULL, new CapabilityStatement.ReferenceHandlingPolicyEnumFactory())); 3089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchInclude")) { 3090 res.getSearchInclude().add(parseString(xpp)); 3091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchRevInclude")) { 3092 res.getSearchRevInclude().add(parseString(xpp)); 3093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParam")) { 3094 res.getSearchParam().add(parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(xpp, owner)); 3095 } else if (!parseBackboneContent(eventType, xpp, res)) 3096 return false; 3097 return true; 3098 } 3099 3100 protected CapabilityStatement.ResourceInteractionComponent parseCapabilityStatementResourceInteractionComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3101 CapabilityStatement.ResourceInteractionComponent res = new CapabilityStatement.ResourceInteractionComponent(); 3102 parseBackboneAttributes(xpp, res); 3103 next(xpp); 3104 int eventType = nextNoWhitespace(xpp); 3105 while (eventType != XmlPullParser.END_TAG) { 3106 if (!parseCapabilityStatementResourceInteractionComponentContent(eventType, xpp, owner, res)) 3107 unknownContent(xpp); 3108 eventType = nextNoWhitespace(xpp); 3109 } 3110 next(xpp); 3111 parseElementClose(res); 3112 return res; 3113 } 3114 3115 protected boolean parseCapabilityStatementResourceInteractionComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.ResourceInteractionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3116 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3117 res.setCodeElement(parseEnumeration(xpp, CapabilityStatement.TypeRestfulInteraction.NULL, new CapabilityStatement.TypeRestfulInteractionEnumFactory())); 3118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3119 res.setDocumentationElement(parseString(xpp)); 3120 } else if (!parseBackboneContent(eventType, xpp, res)) 3121 return false; 3122 return true; 3123 } 3124 3125 protected CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3126 CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent res = new CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); 3127 parseBackboneAttributes(xpp, res); 3128 next(xpp); 3129 int eventType = nextNoWhitespace(xpp); 3130 while (eventType != XmlPullParser.END_TAG) { 3131 if (!parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponentContent(eventType, xpp, owner, res)) 3132 unknownContent(xpp); 3133 eventType = nextNoWhitespace(xpp); 3134 } 3135 next(xpp); 3136 parseElementClose(res); 3137 return res; 3138 } 3139 3140 protected boolean parseCapabilityStatementCapabilityStatementRestResourceSearchParamComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3141 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3142 res.setNameElement(parseString(xpp)); 3143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3144 res.setDefinitionElement(parseUri(xpp)); 3145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3146 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 3147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3148 res.setDocumentationElement(parseString(xpp)); 3149 } else if (!parseBackboneContent(eventType, xpp, res)) 3150 return false; 3151 return true; 3152 } 3153 3154 protected CapabilityStatement.SystemInteractionComponent parseCapabilityStatementSystemInteractionComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3155 CapabilityStatement.SystemInteractionComponent res = new CapabilityStatement.SystemInteractionComponent(); 3156 parseBackboneAttributes(xpp, res); 3157 next(xpp); 3158 int eventType = nextNoWhitespace(xpp); 3159 while (eventType != XmlPullParser.END_TAG) { 3160 if (!parseCapabilityStatementSystemInteractionComponentContent(eventType, xpp, owner, res)) 3161 unknownContent(xpp); 3162 eventType = nextNoWhitespace(xpp); 3163 } 3164 next(xpp); 3165 parseElementClose(res); 3166 return res; 3167 } 3168 3169 protected boolean parseCapabilityStatementSystemInteractionComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.SystemInteractionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3170 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3171 res.setCodeElement(parseEnumeration(xpp, CapabilityStatement.SystemRestfulInteraction.NULL, new CapabilityStatement.SystemRestfulInteractionEnumFactory())); 3172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3173 res.setDocumentationElement(parseString(xpp)); 3174 } else if (!parseBackboneContent(eventType, xpp, res)) 3175 return false; 3176 return true; 3177 } 3178 3179 protected CapabilityStatement.CapabilityStatementRestOperationComponent parseCapabilityStatementCapabilityStatementRestOperationComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3180 CapabilityStatement.CapabilityStatementRestOperationComponent res = new CapabilityStatement.CapabilityStatementRestOperationComponent(); 3181 parseBackboneAttributes(xpp, res); 3182 next(xpp); 3183 int eventType = nextNoWhitespace(xpp); 3184 while (eventType != XmlPullParser.END_TAG) { 3185 if (!parseCapabilityStatementCapabilityStatementRestOperationComponentContent(eventType, xpp, owner, res)) 3186 unknownContent(xpp); 3187 eventType = nextNoWhitespace(xpp); 3188 } 3189 next(xpp); 3190 parseElementClose(res); 3191 return res; 3192 } 3193 3194 protected boolean parseCapabilityStatementCapabilityStatementRestOperationComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementRestOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3195 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3196 res.setNameElement(parseString(xpp)); 3197 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3198 res.setDefinition(parseReference(xpp)); 3199 } else if (!parseBackboneContent(eventType, xpp, res)) 3200 return false; 3201 return true; 3202 } 3203 3204 protected CapabilityStatement.CapabilityStatementMessagingComponent parseCapabilityStatementCapabilityStatementMessagingComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3205 CapabilityStatement.CapabilityStatementMessagingComponent res = new CapabilityStatement.CapabilityStatementMessagingComponent(); 3206 parseBackboneAttributes(xpp, res); 3207 next(xpp); 3208 int eventType = nextNoWhitespace(xpp); 3209 while (eventType != XmlPullParser.END_TAG) { 3210 if (!parseCapabilityStatementCapabilityStatementMessagingComponentContent(eventType, xpp, owner, res)) 3211 unknownContent(xpp); 3212 eventType = nextNoWhitespace(xpp); 3213 } 3214 next(xpp); 3215 parseElementClose(res); 3216 return res; 3217 } 3218 3219 protected boolean parseCapabilityStatementCapabilityStatementMessagingComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementMessagingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3220 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 3221 res.getEndpoint().add(parseCapabilityStatementCapabilityStatementMessagingEndpointComponent(xpp, owner)); 3222 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reliableCache")) { 3223 res.setReliableCacheElement(parseUnsignedInt(xpp)); 3224 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3225 res.setDocumentationElement(parseString(xpp)); 3226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportedMessage")) { 3227 res.getSupportedMessage().add(parseCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent(xpp, owner)); 3228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 3229 res.getEvent().add(parseCapabilityStatementCapabilityStatementMessagingEventComponent(xpp, owner)); 3230 } else if (!parseBackboneContent(eventType, xpp, res)) 3231 return false; 3232 return true; 3233 } 3234 3235 protected CapabilityStatement.CapabilityStatementMessagingEndpointComponent parseCapabilityStatementCapabilityStatementMessagingEndpointComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3236 CapabilityStatement.CapabilityStatementMessagingEndpointComponent res = new CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); 3237 parseBackboneAttributes(xpp, res); 3238 next(xpp); 3239 int eventType = nextNoWhitespace(xpp); 3240 while (eventType != XmlPullParser.END_TAG) { 3241 if (!parseCapabilityStatementCapabilityStatementMessagingEndpointComponentContent(eventType, xpp, owner, res)) 3242 unknownContent(xpp); 3243 eventType = nextNoWhitespace(xpp); 3244 } 3245 next(xpp); 3246 parseElementClose(res); 3247 return res; 3248 } 3249 3250 protected boolean parseCapabilityStatementCapabilityStatementMessagingEndpointComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementMessagingEndpointComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3251 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 3252 res.setProtocol(parseCoding(xpp)); 3253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 3254 res.setAddressElement(parseUri(xpp)); 3255 } else if (!parseBackboneContent(eventType, xpp, res)) 3256 return false; 3257 return true; 3258 } 3259 3260 protected CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent parseCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3261 CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent res = new CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent(); 3262 parseBackboneAttributes(xpp, res); 3263 next(xpp); 3264 int eventType = nextNoWhitespace(xpp); 3265 while (eventType != XmlPullParser.END_TAG) { 3266 if (!parseCapabilityStatementCapabilityStatementMessagingSupportedMessageComponentContent(eventType, xpp, owner, res)) 3267 unknownContent(xpp); 3268 eventType = nextNoWhitespace(xpp); 3269 } 3270 next(xpp); 3271 parseElementClose(res); 3272 return res; 3273 } 3274 3275 protected boolean parseCapabilityStatementCapabilityStatementMessagingSupportedMessageComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3276 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3277 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.EventCapabilityMode.NULL, new CapabilityStatement.EventCapabilityModeEnumFactory())); 3278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3279 res.setDefinition(parseReference(xpp)); 3280 } else if (!parseBackboneContent(eventType, xpp, res)) 3281 return false; 3282 return true; 3283 } 3284 3285 protected CapabilityStatement.CapabilityStatementMessagingEventComponent parseCapabilityStatementCapabilityStatementMessagingEventComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3286 CapabilityStatement.CapabilityStatementMessagingEventComponent res = new CapabilityStatement.CapabilityStatementMessagingEventComponent(); 3287 parseBackboneAttributes(xpp, res); 3288 next(xpp); 3289 int eventType = nextNoWhitespace(xpp); 3290 while (eventType != XmlPullParser.END_TAG) { 3291 if (!parseCapabilityStatementCapabilityStatementMessagingEventComponentContent(eventType, xpp, owner, res)) 3292 unknownContent(xpp); 3293 eventType = nextNoWhitespace(xpp); 3294 } 3295 next(xpp); 3296 parseElementClose(res); 3297 return res; 3298 } 3299 3300 protected boolean parseCapabilityStatementCapabilityStatementMessagingEventComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementMessagingEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3301 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3302 res.setCode(parseCoding(xpp)); 3303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3304 res.setCategoryElement(parseEnumeration(xpp, CapabilityStatement.MessageSignificanceCategory.NULL, new CapabilityStatement.MessageSignificanceCategoryEnumFactory())); 3305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3306 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.EventCapabilityMode.NULL, new CapabilityStatement.EventCapabilityModeEnumFactory())); 3307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 3308 res.setFocusElement(parseCode(xpp)); 3309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 3310 res.setRequest(parseReference(xpp)); 3311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 3312 res.setResponse(parseReference(xpp)); 3313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3314 res.setDocumentationElement(parseString(xpp)); 3315 } else if (!parseBackboneContent(eventType, xpp, res)) 3316 return false; 3317 return true; 3318 } 3319 3320 protected CapabilityStatement.CapabilityStatementDocumentComponent parseCapabilityStatementCapabilityStatementDocumentComponent(XmlPullParser xpp, CapabilityStatement owner) throws XmlPullParserException, IOException, FHIRFormatError { 3321 CapabilityStatement.CapabilityStatementDocumentComponent res = new CapabilityStatement.CapabilityStatementDocumentComponent(); 3322 parseBackboneAttributes(xpp, res); 3323 next(xpp); 3324 int eventType = nextNoWhitespace(xpp); 3325 while (eventType != XmlPullParser.END_TAG) { 3326 if (!parseCapabilityStatementCapabilityStatementDocumentComponentContent(eventType, xpp, owner, res)) 3327 unknownContent(xpp); 3328 eventType = nextNoWhitespace(xpp); 3329 } 3330 next(xpp); 3331 parseElementClose(res); 3332 return res; 3333 } 3334 3335 protected boolean parseCapabilityStatementCapabilityStatementDocumentComponentContent(int eventType, XmlPullParser xpp, CapabilityStatement owner, CapabilityStatement.CapabilityStatementDocumentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3336 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 3337 res.setModeElement(parseEnumeration(xpp, CapabilityStatement.DocumentMode.NULL, new CapabilityStatement.DocumentModeEnumFactory())); 3338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 3339 res.setDocumentationElement(parseString(xpp)); 3340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 3341 res.setProfile(parseReference(xpp)); 3342 } else if (!parseBackboneContent(eventType, xpp, res)) 3343 return false; 3344 return true; 3345 } 3346 3347 protected CarePlan parseCarePlan(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3348 CarePlan res = new CarePlan(); 3349 parseDomainResourceAttributes(xpp, res); 3350 next(xpp); 3351 int eventType = nextNoWhitespace(xpp); 3352 while (eventType != XmlPullParser.END_TAG) { 3353 if (!parseCarePlanContent(eventType, xpp, res)) 3354 unknownContent(xpp); 3355 eventType = nextNoWhitespace(xpp); 3356 } 3357 next(xpp); 3358 parseElementClose(res); 3359 return res; 3360 } 3361 3362 protected boolean parseCarePlanContent(int eventType, XmlPullParser xpp, CarePlan res) throws XmlPullParserException, IOException, FHIRFormatError { 3363 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3364 res.getIdentifier().add(parseIdentifier(xpp)); 3365 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3366 res.getDefinition().add(parseReference(xpp)); 3367 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 3368 res.getBasedOn().add(parseReference(xpp)); 3369 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 3370 res.getReplaces().add(parseReference(xpp)); 3371 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 3372 res.getPartOf().add(parseReference(xpp)); 3373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3374 res.setStatusElement(parseEnumeration(xpp, CarePlan.CarePlanStatus.NULL, new CarePlan.CarePlanStatusEnumFactory())); 3375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 3376 res.setIntentElement(parseEnumeration(xpp, CarePlan.CarePlanIntent.NULL, new CarePlan.CarePlanIntentEnumFactory())); 3377 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3378 res.getCategory().add(parseCodeableConcept(xpp)); 3379 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 3380 res.setTitleElement(parseString(xpp)); 3381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3382 res.setDescriptionElement(parseString(xpp)); 3383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3384 res.setSubject(parseReference(xpp)); 3385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 3386 res.setContext(parseReference(xpp)); 3387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 3388 res.setPeriod(parsePeriod(xpp)); 3389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 3390 res.getAuthor().add(parseReference(xpp)); 3391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 3392 res.getCareTeam().add(parseReference(xpp)); 3393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 3394 res.getAddresses().add(parseReference(xpp)); 3395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 3396 res.getSupportingInfo().add(parseReference(xpp)); 3397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 3398 res.getGoal().add(parseReference(xpp)); 3399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 3400 res.getActivity().add(parseCarePlanCarePlanActivityComponent(xpp, res)); 3401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3402 res.getNote().add(parseAnnotation(xpp)); 3403 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3404 return false; 3405 return true; 3406 } 3407 3408 protected CarePlan.CarePlanActivityComponent parseCarePlanCarePlanActivityComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 3409 CarePlan.CarePlanActivityComponent res = new CarePlan.CarePlanActivityComponent(); 3410 parseBackboneAttributes(xpp, res); 3411 next(xpp); 3412 int eventType = nextNoWhitespace(xpp); 3413 while (eventType != XmlPullParser.END_TAG) { 3414 if (!parseCarePlanCarePlanActivityComponentContent(eventType, xpp, owner, res)) 3415 unknownContent(xpp); 3416 eventType = nextNoWhitespace(xpp); 3417 } 3418 next(xpp); 3419 parseElementClose(res); 3420 return res; 3421 } 3422 3423 protected boolean parseCarePlanCarePlanActivityComponentContent(int eventType, XmlPullParser xpp, CarePlan owner, CarePlan.CarePlanActivityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3424 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeCodeableConcept")) { 3425 res.getOutcomeCodeableConcept().add(parseCodeableConcept(xpp)); 3426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeReference")) { 3427 res.getOutcomeReference().add(parseReference(xpp)); 3428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("progress")) { 3429 res.getProgress().add(parseAnnotation(xpp)); 3430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 3431 res.setReference(parseReference(xpp)); 3432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 3433 res.setDetail(parseCarePlanCarePlanActivityDetailComponent(xpp, owner)); 3434 } else if (!parseBackboneContent(eventType, xpp, res)) 3435 return false; 3436 return true; 3437 } 3438 3439 protected CarePlan.CarePlanActivityDetailComponent parseCarePlanCarePlanActivityDetailComponent(XmlPullParser xpp, CarePlan owner) throws XmlPullParserException, IOException, FHIRFormatError { 3440 CarePlan.CarePlanActivityDetailComponent res = new CarePlan.CarePlanActivityDetailComponent(); 3441 parseBackboneAttributes(xpp, res); 3442 next(xpp); 3443 int eventType = nextNoWhitespace(xpp); 3444 while (eventType != XmlPullParser.END_TAG) { 3445 if (!parseCarePlanCarePlanActivityDetailComponentContent(eventType, xpp, owner, res)) 3446 unknownContent(xpp); 3447 eventType = nextNoWhitespace(xpp); 3448 } 3449 next(xpp); 3450 parseElementClose(res); 3451 return res; 3452 } 3453 3454 protected boolean parseCarePlanCarePlanActivityDetailComponentContent(int eventType, XmlPullParser xpp, CarePlan owner, CarePlan.CarePlanActivityDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3455 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3456 res.setCategory(parseCodeableConcept(xpp)); 3457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3458 res.setDefinition(parseReference(xpp)); 3459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3460 res.setCode(parseCodeableConcept(xpp)); 3461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 3462 res.getReasonCode().add(parseCodeableConcept(xpp)); 3463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 3464 res.getReasonReference().add(parseReference(xpp)); 3465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 3466 res.getGoal().add(parseReference(xpp)); 3467 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3468 res.setStatusElement(parseEnumeration(xpp, CarePlan.CarePlanActivityStatus.NULL, new CarePlan.CarePlanActivityStatusEnumFactory())); 3469 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 3470 res.setStatusReasonElement(parseString(xpp)); 3471 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prohibited")) { 3472 res.setProhibitedElement(parseBoolean(xpp)); 3473 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "scheduled")) { 3474 res.setScheduled(parseType("scheduled", xpp)); 3475 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 3476 res.setLocation(parseReference(xpp)); 3477 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 3478 res.getPerformer().add(parseReference(xpp)); 3479 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "product")) { 3480 res.setProduct(parseType("product", xpp)); 3481 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dailyAmount")) { 3482 res.setDailyAmount(parseSimpleQuantity(xpp)); 3483 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 3484 res.setQuantity(parseSimpleQuantity(xpp)); 3485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 3486 res.setDescriptionElement(parseString(xpp)); 3487 } else if (!parseBackboneContent(eventType, xpp, res)) 3488 return false; 3489 return true; 3490 } 3491 3492 protected CareTeam parseCareTeam(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3493 CareTeam res = new CareTeam(); 3494 parseDomainResourceAttributes(xpp, res); 3495 next(xpp); 3496 int eventType = nextNoWhitespace(xpp); 3497 while (eventType != XmlPullParser.END_TAG) { 3498 if (!parseCareTeamContent(eventType, xpp, res)) 3499 unknownContent(xpp); 3500 eventType = nextNoWhitespace(xpp); 3501 } 3502 next(xpp); 3503 parseElementClose(res); 3504 return res; 3505 } 3506 3507 protected boolean parseCareTeamContent(int eventType, XmlPullParser xpp, CareTeam res) throws XmlPullParserException, IOException, FHIRFormatError { 3508 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3509 res.getIdentifier().add(parseIdentifier(xpp)); 3510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3511 res.setStatusElement(parseEnumeration(xpp, CareTeam.CareTeamStatus.NULL, new CareTeam.CareTeamStatusEnumFactory())); 3512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3513 res.getCategory().add(parseCodeableConcept(xpp)); 3514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 3515 res.setNameElement(parseString(xpp)); 3516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3517 res.setSubject(parseReference(xpp)); 3518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 3519 res.setContext(parseReference(xpp)); 3520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 3521 res.setPeriod(parsePeriod(xpp)); 3522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 3523 res.getParticipant().add(parseCareTeamCareTeamParticipantComponent(xpp, res)); 3524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 3525 res.getReasonCode().add(parseCodeableConcept(xpp)); 3526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 3527 res.getReasonReference().add(parseReference(xpp)); 3528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 3529 res.getManagingOrganization().add(parseReference(xpp)); 3530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3531 res.getNote().add(parseAnnotation(xpp)); 3532 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3533 return false; 3534 return true; 3535 } 3536 3537 protected CareTeam.CareTeamParticipantComponent parseCareTeamCareTeamParticipantComponent(XmlPullParser xpp, CareTeam owner) throws XmlPullParserException, IOException, FHIRFormatError { 3538 CareTeam.CareTeamParticipantComponent res = new CareTeam.CareTeamParticipantComponent(); 3539 parseBackboneAttributes(xpp, res); 3540 next(xpp); 3541 int eventType = nextNoWhitespace(xpp); 3542 while (eventType != XmlPullParser.END_TAG) { 3543 if (!parseCareTeamCareTeamParticipantComponentContent(eventType, xpp, owner, res)) 3544 unknownContent(xpp); 3545 eventType = nextNoWhitespace(xpp); 3546 } 3547 next(xpp); 3548 parseElementClose(res); 3549 return res; 3550 } 3551 3552 protected boolean parseCareTeamCareTeamParticipantComponentContent(int eventType, XmlPullParser xpp, CareTeam owner, CareTeam.CareTeamParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3553 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3554 res.setRole(parseCodeableConcept(xpp)); 3555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 3556 res.setMember(parseReference(xpp)); 3557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 3558 res.setOnBehalfOf(parseReference(xpp)); 3559 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 3560 res.setPeriod(parsePeriod(xpp)); 3561 } else if (!parseBackboneContent(eventType, xpp, res)) 3562 return false; 3563 return true; 3564 } 3565 3566 protected ChargeItem parseChargeItem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3567 ChargeItem res = new ChargeItem(); 3568 parseDomainResourceAttributes(xpp, res); 3569 next(xpp); 3570 int eventType = nextNoWhitespace(xpp); 3571 while (eventType != XmlPullParser.END_TAG) { 3572 if (!parseChargeItemContent(eventType, xpp, res)) 3573 unknownContent(xpp); 3574 eventType = nextNoWhitespace(xpp); 3575 } 3576 next(xpp); 3577 parseElementClose(res); 3578 return res; 3579 } 3580 3581 protected boolean parseChargeItemContent(int eventType, XmlPullParser xpp, ChargeItem res) throws XmlPullParserException, IOException, FHIRFormatError { 3582 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3583 res.setIdentifier(parseIdentifier(xpp)); 3584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 3585 res.getDefinition().add(parseUri(xpp)); 3586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3587 res.setStatusElement(parseEnumeration(xpp, ChargeItem.ChargeItemStatus.NULL, new ChargeItem.ChargeItemStatusEnumFactory())); 3588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 3589 res.getPartOf().add(parseReference(xpp)); 3590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3591 res.setCode(parseCodeableConcept(xpp)); 3592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 3593 res.setSubject(parseReference(xpp)); 3594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 3595 res.setContext(parseReference(xpp)); 3596 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 3597 res.setOccurrence(parseType("occurrence", xpp)); 3598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 3599 res.getParticipant().add(parseChargeItemChargeItemParticipantComponent(xpp, res)); 3600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performingOrganization")) { 3601 res.setPerformingOrganization(parseReference(xpp)); 3602 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestingOrganization")) { 3603 res.setRequestingOrganization(parseReference(xpp)); 3604 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 3605 res.setQuantity(parseQuantity(xpp)); 3606 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodysite")) { 3607 res.getBodysite().add(parseCodeableConcept(xpp)); 3608 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factorOverride")) { 3609 res.setFactorOverrideElement(parseDecimal(xpp)); 3610 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priceOverride")) { 3611 res.setPriceOverride(parseMoney(xpp)); 3612 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overrideReason")) { 3613 res.setOverrideReasonElement(parseString(xpp)); 3614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 3615 res.setEnterer(parseReference(xpp)); 3616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enteredDate")) { 3617 res.setEnteredDateElement(parseDateTime(xpp)); 3618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3619 res.getReason().add(parseCodeableConcept(xpp)); 3620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 3621 res.getService().add(parseReference(xpp)); 3622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 3623 res.getAccount().add(parseReference(xpp)); 3624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 3625 res.getNote().add(parseAnnotation(xpp)); 3626 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 3627 res.getSupportingInformation().add(parseReference(xpp)); 3628 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3629 return false; 3630 return true; 3631 } 3632 3633 protected ChargeItem.ChargeItemParticipantComponent parseChargeItemChargeItemParticipantComponent(XmlPullParser xpp, ChargeItem owner) throws XmlPullParserException, IOException, FHIRFormatError { 3634 ChargeItem.ChargeItemParticipantComponent res = new ChargeItem.ChargeItemParticipantComponent(); 3635 parseBackboneAttributes(xpp, res); 3636 next(xpp); 3637 int eventType = nextNoWhitespace(xpp); 3638 while (eventType != XmlPullParser.END_TAG) { 3639 if (!parseChargeItemChargeItemParticipantComponentContent(eventType, xpp, owner, res)) 3640 unknownContent(xpp); 3641 eventType = nextNoWhitespace(xpp); 3642 } 3643 next(xpp); 3644 parseElementClose(res); 3645 return res; 3646 } 3647 3648 protected boolean parseChargeItemChargeItemParticipantComponentContent(int eventType, XmlPullParser xpp, ChargeItem owner, ChargeItem.ChargeItemParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3649 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3650 res.setRole(parseCodeableConcept(xpp)); 3651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 3652 res.setActor(parseReference(xpp)); 3653 } else if (!parseBackboneContent(eventType, xpp, res)) 3654 return false; 3655 return true; 3656 } 3657 3658 protected Claim parseClaim(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 3659 Claim res = new Claim(); 3660 parseDomainResourceAttributes(xpp, res); 3661 next(xpp); 3662 int eventType = nextNoWhitespace(xpp); 3663 while (eventType != XmlPullParser.END_TAG) { 3664 if (!parseClaimContent(eventType, xpp, res)) 3665 unknownContent(xpp); 3666 eventType = nextNoWhitespace(xpp); 3667 } 3668 next(xpp); 3669 parseElementClose(res); 3670 return res; 3671 } 3672 3673 protected boolean parseClaimContent(int eventType, XmlPullParser xpp, Claim res) throws XmlPullParserException, IOException, FHIRFormatError { 3674 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 3675 res.getIdentifier().add(parseIdentifier(xpp)); 3676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 3677 res.setStatusElement(parseEnumeration(xpp, Claim.ClaimStatus.NULL, new Claim.ClaimStatusEnumFactory())); 3678 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3679 res.setType(parseCodeableConcept(xpp)); 3680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 3681 res.getSubType().add(parseCodeableConcept(xpp)); 3682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 3683 res.setUseElement(parseEnumeration(xpp, Claim.Use.NULL, new Claim.UseEnumFactory())); 3684 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 3685 res.setPatient(parseReference(xpp)); 3686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("billablePeriod")) { 3687 res.setBillablePeriod(parsePeriod(xpp)); 3688 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 3689 res.setCreatedElement(parseDateTime(xpp)); 3690 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 3691 res.setEnterer(parseReference(xpp)); 3692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 3693 res.setInsurer(parseReference(xpp)); 3694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 3695 res.setProvider(parseReference(xpp)); 3696 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 3697 res.setOrganization(parseReference(xpp)); 3698 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 3699 res.setPriority(parseCodeableConcept(xpp)); 3700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fundsReserve")) { 3701 res.setFundsReserve(parseCodeableConcept(xpp)); 3702 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 3703 res.getRelated().add(parseClaimRelatedClaimComponent(xpp, res)); 3704 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 3705 res.setPrescription(parseReference(xpp)); 3706 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalPrescription")) { 3707 res.setOriginalPrescription(parseReference(xpp)); 3708 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 3709 res.setPayee(parseClaimPayeeComponent(xpp, res)); 3710 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referral")) { 3711 res.setReferral(parseReference(xpp)); 3712 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 3713 res.setFacility(parseReference(xpp)); 3714 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 3715 res.getCareTeam().add(parseClaimCareTeamComponent(xpp, res)); 3716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("information")) { 3717 res.getInformation().add(parseClaimSpecialConditionComponent(xpp, res)); 3718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 3719 res.getDiagnosis().add(parseClaimDiagnosisComponent(xpp, res)); 3720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 3721 res.getProcedure().add(parseClaimProcedureComponent(xpp, res)); 3722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 3723 res.getInsurance().add(parseClaimInsuranceComponent(xpp, res)); 3724 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accident")) { 3725 res.setAccident(parseClaimAccidentComponent(xpp, res)); 3726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("employmentImpacted")) { 3727 res.setEmploymentImpacted(parsePeriod(xpp)); 3728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 3729 res.setHospitalization(parsePeriod(xpp)); 3730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 3731 res.getItem().add(parseClaimItemComponent(xpp, res)); 3732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 3733 res.setTotal(parseMoney(xpp)); 3734 } else if (!parseDomainResourceContent(eventType, xpp, res)) 3735 return false; 3736 return true; 3737 } 3738 3739 protected Claim.RelatedClaimComponent parseClaimRelatedClaimComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3740 Claim.RelatedClaimComponent res = new Claim.RelatedClaimComponent(); 3741 parseBackboneAttributes(xpp, res); 3742 next(xpp); 3743 int eventType = nextNoWhitespace(xpp); 3744 while (eventType != XmlPullParser.END_TAG) { 3745 if (!parseClaimRelatedClaimComponentContent(eventType, xpp, owner, res)) 3746 unknownContent(xpp); 3747 eventType = nextNoWhitespace(xpp); 3748 } 3749 next(xpp); 3750 parseElementClose(res); 3751 return res; 3752 } 3753 3754 protected boolean parseClaimRelatedClaimComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.RelatedClaimComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3755 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claim")) { 3756 res.setClaim(parseReference(xpp)); 3757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 3758 res.setRelationship(parseCodeableConcept(xpp)); 3759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 3760 res.setReference(parseIdentifier(xpp)); 3761 } else if (!parseBackboneContent(eventType, xpp, res)) 3762 return false; 3763 return true; 3764 } 3765 3766 protected Claim.PayeeComponent parseClaimPayeeComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3767 Claim.PayeeComponent res = new Claim.PayeeComponent(); 3768 parseBackboneAttributes(xpp, res); 3769 next(xpp); 3770 int eventType = nextNoWhitespace(xpp); 3771 while (eventType != XmlPullParser.END_TAG) { 3772 if (!parseClaimPayeeComponentContent(eventType, xpp, owner, res)) 3773 unknownContent(xpp); 3774 eventType = nextNoWhitespace(xpp); 3775 } 3776 next(xpp); 3777 parseElementClose(res); 3778 return res; 3779 } 3780 3781 protected boolean parseClaimPayeeComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.PayeeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3782 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3783 res.setType(parseCodeableConcept(xpp)); 3784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceType")) { 3785 res.setResourceType(parseCoding(xpp)); 3786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 3787 res.setParty(parseReference(xpp)); 3788 } else if (!parseBackboneContent(eventType, xpp, res)) 3789 return false; 3790 return true; 3791 } 3792 3793 protected Claim.CareTeamComponent parseClaimCareTeamComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3794 Claim.CareTeamComponent res = new Claim.CareTeamComponent(); 3795 parseBackboneAttributes(xpp, res); 3796 next(xpp); 3797 int eventType = nextNoWhitespace(xpp); 3798 while (eventType != XmlPullParser.END_TAG) { 3799 if (!parseClaimCareTeamComponentContent(eventType, xpp, owner, res)) 3800 unknownContent(xpp); 3801 eventType = nextNoWhitespace(xpp); 3802 } 3803 next(xpp); 3804 parseElementClose(res); 3805 return res; 3806 } 3807 3808 protected boolean parseClaimCareTeamComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.CareTeamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3809 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3810 res.setSequenceElement(parsePositiveInt(xpp)); 3811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 3812 res.setProvider(parseReference(xpp)); 3813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 3814 res.setResponsibleElement(parseBoolean(xpp)); 3815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 3816 res.setRole(parseCodeableConcept(xpp)); 3817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 3818 res.setQualification(parseCodeableConcept(xpp)); 3819 } else if (!parseBackboneContent(eventType, xpp, res)) 3820 return false; 3821 return true; 3822 } 3823 3824 protected Claim.SpecialConditionComponent parseClaimSpecialConditionComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3825 Claim.SpecialConditionComponent res = new Claim.SpecialConditionComponent(); 3826 parseBackboneAttributes(xpp, res); 3827 next(xpp); 3828 int eventType = nextNoWhitespace(xpp); 3829 while (eventType != XmlPullParser.END_TAG) { 3830 if (!parseClaimSpecialConditionComponentContent(eventType, xpp, owner, res)) 3831 unknownContent(xpp); 3832 eventType = nextNoWhitespace(xpp); 3833 } 3834 next(xpp); 3835 parseElementClose(res); 3836 return res; 3837 } 3838 3839 protected boolean parseClaimSpecialConditionComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.SpecialConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3840 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3841 res.setSequenceElement(parsePositiveInt(xpp)); 3842 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 3843 res.setCategory(parseCodeableConcept(xpp)); 3844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 3845 res.setCode(parseCodeableConcept(xpp)); 3846 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 3847 res.setTiming(parseType("timing", xpp)); 3848 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 3849 res.setValue(parseType("value", xpp)); 3850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 3851 res.setReason(parseCodeableConcept(xpp)); 3852 } else if (!parseBackboneContent(eventType, xpp, res)) 3853 return false; 3854 return true; 3855 } 3856 3857 protected Claim.DiagnosisComponent parseClaimDiagnosisComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3858 Claim.DiagnosisComponent res = new Claim.DiagnosisComponent(); 3859 parseBackboneAttributes(xpp, res); 3860 next(xpp); 3861 int eventType = nextNoWhitespace(xpp); 3862 while (eventType != XmlPullParser.END_TAG) { 3863 if (!parseClaimDiagnosisComponentContent(eventType, xpp, owner, res)) 3864 unknownContent(xpp); 3865 eventType = nextNoWhitespace(xpp); 3866 } 3867 next(xpp); 3868 parseElementClose(res); 3869 return res; 3870 } 3871 3872 protected boolean parseClaimDiagnosisComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3873 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3874 res.setSequenceElement(parsePositiveInt(xpp)); 3875 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "diagnosis")) { 3876 res.setDiagnosis(parseType("diagnosis", xpp)); 3877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3878 res.getType().add(parseCodeableConcept(xpp)); 3879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packageCode")) { 3880 res.setPackageCode(parseCodeableConcept(xpp)); 3881 } else if (!parseBackboneContent(eventType, xpp, res)) 3882 return false; 3883 return true; 3884 } 3885 3886 protected Claim.ProcedureComponent parseClaimProcedureComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3887 Claim.ProcedureComponent res = new Claim.ProcedureComponent(); 3888 parseBackboneAttributes(xpp, res); 3889 next(xpp); 3890 int eventType = nextNoWhitespace(xpp); 3891 while (eventType != XmlPullParser.END_TAG) { 3892 if (!parseClaimProcedureComponentContent(eventType, xpp, owner, res)) 3893 unknownContent(xpp); 3894 eventType = nextNoWhitespace(xpp); 3895 } 3896 next(xpp); 3897 parseElementClose(res); 3898 return res; 3899 } 3900 3901 protected boolean parseClaimProcedureComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.ProcedureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3902 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3903 res.setSequenceElement(parsePositiveInt(xpp)); 3904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3905 res.setDateElement(parseDateTime(xpp)); 3906 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "procedure")) { 3907 res.setProcedure(parseType("procedure", xpp)); 3908 } else if (!parseBackboneContent(eventType, xpp, res)) 3909 return false; 3910 return true; 3911 } 3912 3913 protected Claim.InsuranceComponent parseClaimInsuranceComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3914 Claim.InsuranceComponent res = new Claim.InsuranceComponent(); 3915 parseBackboneAttributes(xpp, res); 3916 next(xpp); 3917 int eventType = nextNoWhitespace(xpp); 3918 while (eventType != XmlPullParser.END_TAG) { 3919 if (!parseClaimInsuranceComponentContent(eventType, xpp, owner, res)) 3920 unknownContent(xpp); 3921 eventType = nextNoWhitespace(xpp); 3922 } 3923 next(xpp); 3924 parseElementClose(res); 3925 return res; 3926 } 3927 3928 protected boolean parseClaimInsuranceComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3929 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3930 res.setSequenceElement(parsePositiveInt(xpp)); 3931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 3932 res.setFocalElement(parseBoolean(xpp)); 3933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 3934 res.setCoverage(parseReference(xpp)); 3935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 3936 res.setBusinessArrangementElement(parseString(xpp)); 3937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 3938 res.getPreAuthRef().add(parseString(xpp)); 3939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 3940 res.setClaimResponse(parseReference(xpp)); 3941 } else if (!parseBackboneContent(eventType, xpp, res)) 3942 return false; 3943 return true; 3944 } 3945 3946 protected Claim.AccidentComponent parseClaimAccidentComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3947 Claim.AccidentComponent res = new Claim.AccidentComponent(); 3948 parseBackboneAttributes(xpp, res); 3949 next(xpp); 3950 int eventType = nextNoWhitespace(xpp); 3951 while (eventType != XmlPullParser.END_TAG) { 3952 if (!parseClaimAccidentComponentContent(eventType, xpp, owner, res)) 3953 unknownContent(xpp); 3954 eventType = nextNoWhitespace(xpp); 3955 } 3956 next(xpp); 3957 parseElementClose(res); 3958 return res; 3959 } 3960 3961 protected boolean parseClaimAccidentComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.AccidentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3962 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 3963 res.setDateElement(parseDate(xpp)); 3964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 3965 res.setType(parseCodeableConcept(xpp)); 3966 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 3967 res.setLocation(parseType("location", xpp)); 3968 } else if (!parseBackboneContent(eventType, xpp, res)) 3969 return false; 3970 return true; 3971 } 3972 3973 protected Claim.ItemComponent parseClaimItemComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 3974 Claim.ItemComponent res = new Claim.ItemComponent(); 3975 parseBackboneAttributes(xpp, res); 3976 next(xpp); 3977 int eventType = nextNoWhitespace(xpp); 3978 while (eventType != XmlPullParser.END_TAG) { 3979 if (!parseClaimItemComponentContent(eventType, xpp, owner, res)) 3980 unknownContent(xpp); 3981 eventType = nextNoWhitespace(xpp); 3982 } 3983 next(xpp); 3984 parseElementClose(res); 3985 return res; 3986 } 3987 3988 protected boolean parseClaimItemComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.ItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 3989 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 3990 res.setSequenceElement(parsePositiveInt(xpp)); 3991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeamLinkId")) { 3992 res.getCareTeamLinkId().add(parsePositiveInt(xpp)); 3993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisLinkId")) { 3994 res.getDiagnosisLinkId().add(parsePositiveInt(xpp)); 3995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureLinkId")) { 3996 res.getProcedureLinkId().add(parsePositiveInt(xpp)); 3997 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationLinkId")) { 3998 res.getInformationLinkId().add(parsePositiveInt(xpp)); 3999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4000 res.setRevenue(parseCodeableConcept(xpp)); 4001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4002 res.setCategory(parseCodeableConcept(xpp)); 4003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4004 res.setService(parseCodeableConcept(xpp)); 4005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4006 res.getModifier().add(parseCodeableConcept(xpp)); 4007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 4008 res.getProgramCode().add(parseCodeableConcept(xpp)); 4009 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 4010 res.setServiced(parseType("serviced", xpp)); 4011 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 4012 res.setLocation(parseType("location", xpp)); 4013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 4014 res.setQuantity(parseSimpleQuantity(xpp)); 4015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 4016 res.setUnitPrice(parseMoney(xpp)); 4017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 4018 res.setFactorElement(parseDecimal(xpp)); 4019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 4020 res.setNet(parseMoney(xpp)); 4021 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 4022 res.getUdi().add(parseReference(xpp)); 4023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 4024 res.setBodySite(parseCodeableConcept(xpp)); 4025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 4026 res.getSubSite().add(parseCodeableConcept(xpp)); 4027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 4028 res.getEncounter().add(parseReference(xpp)); 4029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 4030 res.getDetail().add(parseClaimDetailComponent(xpp, owner)); 4031 } else if (!parseBackboneContent(eventType, xpp, res)) 4032 return false; 4033 return true; 4034 } 4035 4036 protected Claim.DetailComponent parseClaimDetailComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 4037 Claim.DetailComponent res = new Claim.DetailComponent(); 4038 parseBackboneAttributes(xpp, res); 4039 next(xpp); 4040 int eventType = nextNoWhitespace(xpp); 4041 while (eventType != XmlPullParser.END_TAG) { 4042 if (!parseClaimDetailComponentContent(eventType, xpp, owner, res)) 4043 unknownContent(xpp); 4044 eventType = nextNoWhitespace(xpp); 4045 } 4046 next(xpp); 4047 parseElementClose(res); 4048 return res; 4049 } 4050 4051 protected boolean parseClaimDetailComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.DetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4052 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 4053 res.setSequenceElement(parsePositiveInt(xpp)); 4054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4055 res.setRevenue(parseCodeableConcept(xpp)); 4056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4057 res.setCategory(parseCodeableConcept(xpp)); 4058 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4059 res.setService(parseCodeableConcept(xpp)); 4060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4061 res.getModifier().add(parseCodeableConcept(xpp)); 4062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 4063 res.getProgramCode().add(parseCodeableConcept(xpp)); 4064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 4065 res.setQuantity(parseSimpleQuantity(xpp)); 4066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 4067 res.setUnitPrice(parseMoney(xpp)); 4068 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 4069 res.setFactorElement(parseDecimal(xpp)); 4070 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 4071 res.setNet(parseMoney(xpp)); 4072 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 4073 res.getUdi().add(parseReference(xpp)); 4074 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 4075 res.getSubDetail().add(parseClaimSubDetailComponent(xpp, owner)); 4076 } else if (!parseBackboneContent(eventType, xpp, res)) 4077 return false; 4078 return true; 4079 } 4080 4081 protected Claim.SubDetailComponent parseClaimSubDetailComponent(XmlPullParser xpp, Claim owner) throws XmlPullParserException, IOException, FHIRFormatError { 4082 Claim.SubDetailComponent res = new Claim.SubDetailComponent(); 4083 parseBackboneAttributes(xpp, res); 4084 next(xpp); 4085 int eventType = nextNoWhitespace(xpp); 4086 while (eventType != XmlPullParser.END_TAG) { 4087 if (!parseClaimSubDetailComponentContent(eventType, xpp, owner, res)) 4088 unknownContent(xpp); 4089 eventType = nextNoWhitespace(xpp); 4090 } 4091 next(xpp); 4092 parseElementClose(res); 4093 return res; 4094 } 4095 4096 protected boolean parseClaimSubDetailComponentContent(int eventType, XmlPullParser xpp, Claim owner, Claim.SubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4097 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 4098 res.setSequenceElement(parsePositiveInt(xpp)); 4099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4100 res.setRevenue(parseCodeableConcept(xpp)); 4101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4102 res.setCategory(parseCodeableConcept(xpp)); 4103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4104 res.setService(parseCodeableConcept(xpp)); 4105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4106 res.getModifier().add(parseCodeableConcept(xpp)); 4107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 4108 res.getProgramCode().add(parseCodeableConcept(xpp)); 4109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 4110 res.setQuantity(parseSimpleQuantity(xpp)); 4111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 4112 res.setUnitPrice(parseMoney(xpp)); 4113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 4114 res.setFactorElement(parseDecimal(xpp)); 4115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 4116 res.setNet(parseMoney(xpp)); 4117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 4118 res.getUdi().add(parseReference(xpp)); 4119 } else if (!parseBackboneContent(eventType, xpp, res)) 4120 return false; 4121 return true; 4122 } 4123 4124 protected ClaimResponse parseClaimResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4125 ClaimResponse res = new ClaimResponse(); 4126 parseDomainResourceAttributes(xpp, res); 4127 next(xpp); 4128 int eventType = nextNoWhitespace(xpp); 4129 while (eventType != XmlPullParser.END_TAG) { 4130 if (!parseClaimResponseContent(eventType, xpp, res)) 4131 unknownContent(xpp); 4132 eventType = nextNoWhitespace(xpp); 4133 } 4134 next(xpp); 4135 parseElementClose(res); 4136 return res; 4137 } 4138 4139 protected boolean parseClaimResponseContent(int eventType, XmlPullParser xpp, ClaimResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 4140 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4141 res.getIdentifier().add(parseIdentifier(xpp)); 4142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4143 res.setStatusElement(parseEnumeration(xpp, ClaimResponse.ClaimResponseStatus.NULL, new ClaimResponse.ClaimResponseStatusEnumFactory())); 4144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 4145 res.setPatient(parseReference(xpp)); 4146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 4147 res.setCreatedElement(parseDateTime(xpp)); 4148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 4149 res.setInsurer(parseReference(xpp)); 4150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 4151 res.setRequestProvider(parseReference(xpp)); 4152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 4153 res.setRequestOrganization(parseReference(xpp)); 4154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 4155 res.setRequest(parseReference(xpp)); 4156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 4157 res.setOutcome(parseCodeableConcept(xpp)); 4158 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 4159 res.setDispositionElement(parseString(xpp)); 4160 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payeeType")) { 4161 res.setPayeeType(parseCodeableConcept(xpp)); 4162 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 4163 res.getItem().add(parseClaimResponseItemComponent(xpp, res)); 4164 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addItem")) { 4165 res.getAddItem().add(parseClaimResponseAddedItemComponent(xpp, res)); 4166 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 4167 res.getError().add(parseClaimResponseErrorComponent(xpp, res)); 4168 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalCost")) { 4169 res.setTotalCost(parseMoney(xpp)); 4170 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unallocDeductable")) { 4171 res.setUnallocDeductable(parseMoney(xpp)); 4172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalBenefit")) { 4173 res.setTotalBenefit(parseMoney(xpp)); 4174 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payment")) { 4175 res.setPayment(parseClaimResponsePaymentComponent(xpp, res)); 4176 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reserved")) { 4177 res.setReserved(parseCoding(xpp)); 4178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 4179 res.setForm(parseCodeableConcept(xpp)); 4180 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 4181 res.getProcessNote().add(parseClaimResponseNoteComponent(xpp, res)); 4182 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communicationRequest")) { 4183 res.getCommunicationRequest().add(parseReference(xpp)); 4184 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 4185 res.getInsurance().add(parseClaimResponseInsuranceComponent(xpp, res)); 4186 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4187 return false; 4188 return true; 4189 } 4190 4191 protected ClaimResponse.ItemComponent parseClaimResponseItemComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4192 ClaimResponse.ItemComponent res = new ClaimResponse.ItemComponent(); 4193 parseBackboneAttributes(xpp, res); 4194 next(xpp); 4195 int eventType = nextNoWhitespace(xpp); 4196 while (eventType != XmlPullParser.END_TAG) { 4197 if (!parseClaimResponseItemComponentContent(eventType, xpp, owner, res)) 4198 unknownContent(xpp); 4199 eventType = nextNoWhitespace(xpp); 4200 } 4201 next(xpp); 4202 parseElementClose(res); 4203 return res; 4204 } 4205 4206 protected boolean parseClaimResponseItemComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.ItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4207 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4208 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 4209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4210 res.getNoteNumber().add(parsePositiveInt(xpp)); 4211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4212 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 4214 res.getDetail().add(parseClaimResponseItemDetailComponent(xpp, owner)); 4215 } else if (!parseBackboneContent(eventType, xpp, res)) 4216 return false; 4217 return true; 4218 } 4219 4220 protected ClaimResponse.AdjudicationComponent parseClaimResponseAdjudicationComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4221 ClaimResponse.AdjudicationComponent res = new ClaimResponse.AdjudicationComponent(); 4222 parseBackboneAttributes(xpp, res); 4223 next(xpp); 4224 int eventType = nextNoWhitespace(xpp); 4225 while (eventType != XmlPullParser.END_TAG) { 4226 if (!parseClaimResponseAdjudicationComponentContent(eventType, xpp, owner, res)) 4227 unknownContent(xpp); 4228 eventType = nextNoWhitespace(xpp); 4229 } 4230 next(xpp); 4231 parseElementClose(res); 4232 return res; 4233 } 4234 4235 protected boolean parseClaimResponseAdjudicationComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.AdjudicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4236 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4237 res.setCategory(parseCodeableConcept(xpp)); 4238 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 4239 res.setReason(parseCodeableConcept(xpp)); 4240 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 4241 res.setAmount(parseMoney(xpp)); 4242 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 4243 res.setValueElement(parseDecimal(xpp)); 4244 } else if (!parseBackboneContent(eventType, xpp, res)) 4245 return false; 4246 return true; 4247 } 4248 4249 protected ClaimResponse.ItemDetailComponent parseClaimResponseItemDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4250 ClaimResponse.ItemDetailComponent res = new ClaimResponse.ItemDetailComponent(); 4251 parseBackboneAttributes(xpp, res); 4252 next(xpp); 4253 int eventType = nextNoWhitespace(xpp); 4254 while (eventType != XmlPullParser.END_TAG) { 4255 if (!parseClaimResponseItemDetailComponentContent(eventType, xpp, owner, res)) 4256 unknownContent(xpp); 4257 eventType = nextNoWhitespace(xpp); 4258 } 4259 next(xpp); 4260 parseElementClose(res); 4261 return res; 4262 } 4263 4264 protected boolean parseClaimResponseItemDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.ItemDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4265 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4266 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 4267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4268 res.getNoteNumber().add(parsePositiveInt(xpp)); 4269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4270 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 4272 res.getSubDetail().add(parseClaimResponseSubDetailComponent(xpp, owner)); 4273 } else if (!parseBackboneContent(eventType, xpp, res)) 4274 return false; 4275 return true; 4276 } 4277 4278 protected ClaimResponse.SubDetailComponent parseClaimResponseSubDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4279 ClaimResponse.SubDetailComponent res = new ClaimResponse.SubDetailComponent(); 4280 parseBackboneAttributes(xpp, res); 4281 next(xpp); 4282 int eventType = nextNoWhitespace(xpp); 4283 while (eventType != XmlPullParser.END_TAG) { 4284 if (!parseClaimResponseSubDetailComponentContent(eventType, xpp, owner, res)) 4285 unknownContent(xpp); 4286 eventType = nextNoWhitespace(xpp); 4287 } 4288 next(xpp); 4289 parseElementClose(res); 4290 return res; 4291 } 4292 4293 protected boolean parseClaimResponseSubDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.SubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4294 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4295 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 4296 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4297 res.getNoteNumber().add(parsePositiveInt(xpp)); 4298 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4299 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4300 } else if (!parseBackboneContent(eventType, xpp, res)) 4301 return false; 4302 return true; 4303 } 4304 4305 protected ClaimResponse.AddedItemComponent parseClaimResponseAddedItemComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4306 ClaimResponse.AddedItemComponent res = new ClaimResponse.AddedItemComponent(); 4307 parseBackboneAttributes(xpp, res); 4308 next(xpp); 4309 int eventType = nextNoWhitespace(xpp); 4310 while (eventType != XmlPullParser.END_TAG) { 4311 if (!parseClaimResponseAddedItemComponentContent(eventType, xpp, owner, res)) 4312 unknownContent(xpp); 4313 eventType = nextNoWhitespace(xpp); 4314 } 4315 next(xpp); 4316 parseElementClose(res); 4317 return res; 4318 } 4319 4320 protected boolean parseClaimResponseAddedItemComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.AddedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4321 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4322 res.getSequenceLinkId().add(parsePositiveInt(xpp)); 4323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4324 res.setRevenue(parseCodeableConcept(xpp)); 4325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4326 res.setCategory(parseCodeableConcept(xpp)); 4327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4328 res.setService(parseCodeableConcept(xpp)); 4329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4330 res.getModifier().add(parseCodeableConcept(xpp)); 4331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 4332 res.setFee(parseMoney(xpp)); 4333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4334 res.getNoteNumber().add(parsePositiveInt(xpp)); 4335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4336 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 4338 res.getDetail().add(parseClaimResponseAddedItemsDetailComponent(xpp, owner)); 4339 } else if (!parseBackboneContent(eventType, xpp, res)) 4340 return false; 4341 return true; 4342 } 4343 4344 protected ClaimResponse.AddedItemsDetailComponent parseClaimResponseAddedItemsDetailComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4345 ClaimResponse.AddedItemsDetailComponent res = new ClaimResponse.AddedItemsDetailComponent(); 4346 parseBackboneAttributes(xpp, res); 4347 next(xpp); 4348 int eventType = nextNoWhitespace(xpp); 4349 while (eventType != XmlPullParser.END_TAG) { 4350 if (!parseClaimResponseAddedItemsDetailComponentContent(eventType, xpp, owner, res)) 4351 unknownContent(xpp); 4352 eventType = nextNoWhitespace(xpp); 4353 } 4354 next(xpp); 4355 parseElementClose(res); 4356 return res; 4357 } 4358 4359 protected boolean parseClaimResponseAddedItemsDetailComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.AddedItemsDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4360 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 4361 res.setRevenue(parseCodeableConcept(xpp)); 4362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4363 res.setCategory(parseCodeableConcept(xpp)); 4364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 4365 res.setService(parseCodeableConcept(xpp)); 4366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 4367 res.getModifier().add(parseCodeableConcept(xpp)); 4368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 4369 res.setFee(parseMoney(xpp)); 4370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 4371 res.getNoteNumber().add(parsePositiveInt(xpp)); 4372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 4373 res.getAdjudication().add(parseClaimResponseAdjudicationComponent(xpp, owner)); 4374 } else if (!parseBackboneContent(eventType, xpp, res)) 4375 return false; 4376 return true; 4377 } 4378 4379 protected ClaimResponse.ErrorComponent parseClaimResponseErrorComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4380 ClaimResponse.ErrorComponent res = new ClaimResponse.ErrorComponent(); 4381 parseBackboneAttributes(xpp, res); 4382 next(xpp); 4383 int eventType = nextNoWhitespace(xpp); 4384 while (eventType != XmlPullParser.END_TAG) { 4385 if (!parseClaimResponseErrorComponentContent(eventType, xpp, owner, res)) 4386 unknownContent(xpp); 4387 eventType = nextNoWhitespace(xpp); 4388 } 4389 next(xpp); 4390 parseElementClose(res); 4391 return res; 4392 } 4393 4394 protected boolean parseClaimResponseErrorComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.ErrorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4395 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 4396 res.setSequenceLinkIdElement(parsePositiveInt(xpp)); 4397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detailSequenceLinkId")) { 4398 res.setDetailSequenceLinkIdElement(parsePositiveInt(xpp)); 4399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subdetailSequenceLinkId")) { 4400 res.setSubdetailSequenceLinkIdElement(parsePositiveInt(xpp)); 4401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4402 res.setCode(parseCodeableConcept(xpp)); 4403 } else if (!parseBackboneContent(eventType, xpp, res)) 4404 return false; 4405 return true; 4406 } 4407 4408 protected ClaimResponse.PaymentComponent parseClaimResponsePaymentComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4409 ClaimResponse.PaymentComponent res = new ClaimResponse.PaymentComponent(); 4410 parseBackboneAttributes(xpp, res); 4411 next(xpp); 4412 int eventType = nextNoWhitespace(xpp); 4413 while (eventType != XmlPullParser.END_TAG) { 4414 if (!parseClaimResponsePaymentComponentContent(eventType, xpp, owner, res)) 4415 unknownContent(xpp); 4416 eventType = nextNoWhitespace(xpp); 4417 } 4418 next(xpp); 4419 parseElementClose(res); 4420 return res; 4421 } 4422 4423 protected boolean parseClaimResponsePaymentComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.PaymentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4424 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4425 res.setType(parseCodeableConcept(xpp)); 4426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustment")) { 4427 res.setAdjustment(parseMoney(xpp)); 4428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustmentReason")) { 4429 res.setAdjustmentReason(parseCodeableConcept(xpp)); 4430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4431 res.setDateElement(parseDate(xpp)); 4432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 4433 res.setAmount(parseMoney(xpp)); 4434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4435 res.setIdentifier(parseIdentifier(xpp)); 4436 } else if (!parseBackboneContent(eventType, xpp, res)) 4437 return false; 4438 return true; 4439 } 4440 4441 protected ClaimResponse.NoteComponent parseClaimResponseNoteComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4442 ClaimResponse.NoteComponent res = new ClaimResponse.NoteComponent(); 4443 parseBackboneAttributes(xpp, res); 4444 next(xpp); 4445 int eventType = nextNoWhitespace(xpp); 4446 while (eventType != XmlPullParser.END_TAG) { 4447 if (!parseClaimResponseNoteComponentContent(eventType, xpp, owner, res)) 4448 unknownContent(xpp); 4449 eventType = nextNoWhitespace(xpp); 4450 } 4451 next(xpp); 4452 parseElementClose(res); 4453 return res; 4454 } 4455 4456 protected boolean parseClaimResponseNoteComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.NoteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4457 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 4458 res.setNumberElement(parsePositiveInt(xpp)); 4459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4460 res.setType(parseCodeableConcept(xpp)); 4461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 4462 res.setTextElement(parseString(xpp)); 4463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 4464 res.setLanguage(parseCodeableConcept(xpp)); 4465 } else if (!parseBackboneContent(eventType, xpp, res)) 4466 return false; 4467 return true; 4468 } 4469 4470 protected ClaimResponse.InsuranceComponent parseClaimResponseInsuranceComponent(XmlPullParser xpp, ClaimResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 4471 ClaimResponse.InsuranceComponent res = new ClaimResponse.InsuranceComponent(); 4472 parseBackboneAttributes(xpp, res); 4473 next(xpp); 4474 int eventType = nextNoWhitespace(xpp); 4475 while (eventType != XmlPullParser.END_TAG) { 4476 if (!parseClaimResponseInsuranceComponentContent(eventType, xpp, owner, res)) 4477 unknownContent(xpp); 4478 eventType = nextNoWhitespace(xpp); 4479 } 4480 next(xpp); 4481 parseElementClose(res); 4482 return res; 4483 } 4484 4485 protected boolean parseClaimResponseInsuranceComponentContent(int eventType, XmlPullParser xpp, ClaimResponse owner, ClaimResponse.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4486 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 4487 res.setSequenceElement(parsePositiveInt(xpp)); 4488 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focal")) { 4489 res.setFocalElement(parseBoolean(xpp)); 4490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 4491 res.setCoverage(parseReference(xpp)); 4492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 4493 res.setBusinessArrangementElement(parseString(xpp)); 4494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 4495 res.getPreAuthRef().add(parseString(xpp)); 4496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 4497 res.setClaimResponse(parseReference(xpp)); 4498 } else if (!parseBackboneContent(eventType, xpp, res)) 4499 return false; 4500 return true; 4501 } 4502 4503 protected ClinicalImpression parseClinicalImpression(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4504 ClinicalImpression res = new ClinicalImpression(); 4505 parseDomainResourceAttributes(xpp, res); 4506 next(xpp); 4507 int eventType = nextNoWhitespace(xpp); 4508 while (eventType != XmlPullParser.END_TAG) { 4509 if (!parseClinicalImpressionContent(eventType, xpp, res)) 4510 unknownContent(xpp); 4511 eventType = nextNoWhitespace(xpp); 4512 } 4513 next(xpp); 4514 parseElementClose(res); 4515 return res; 4516 } 4517 4518 protected boolean parseClinicalImpressionContent(int eventType, XmlPullParser xpp, ClinicalImpression res) throws XmlPullParserException, IOException, FHIRFormatError { 4519 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4520 res.getIdentifier().add(parseIdentifier(xpp)); 4521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4522 res.setStatusElement(parseEnumeration(xpp, ClinicalImpression.ClinicalImpressionStatus.NULL, new ClinicalImpression.ClinicalImpressionStatusEnumFactory())); 4523 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4524 res.setCode(parseCodeableConcept(xpp)); 4525 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4526 res.setDescriptionElement(parseString(xpp)); 4527 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4528 res.setSubject(parseReference(xpp)); 4529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 4530 res.setContext(parseReference(xpp)); 4531 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 4532 res.setEffective(parseType("effective", xpp)); 4533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4534 res.setDateElement(parseDateTime(xpp)); 4535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessor")) { 4536 res.setAssessor(parseReference(xpp)); 4537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("previous")) { 4538 res.setPrevious(parseReference(xpp)); 4539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("problem")) { 4540 res.getProblem().add(parseReference(xpp)); 4541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("investigation")) { 4542 res.getInvestigation().add(parseClinicalImpressionClinicalImpressionInvestigationComponent(xpp, res)); 4543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 4544 res.getProtocol().add(parseUri(xpp)); 4545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 4546 res.setSummaryElement(parseString(xpp)); 4547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("finding")) { 4548 res.getFinding().add(parseClinicalImpressionClinicalImpressionFindingComponent(xpp, res)); 4549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prognosisCodeableConcept")) { 4550 res.getPrognosisCodeableConcept().add(parseCodeableConcept(xpp)); 4551 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prognosisReference")) { 4552 res.getPrognosisReference().add(parseReference(xpp)); 4553 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 4554 res.getAction().add(parseReference(xpp)); 4555 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4556 res.getNote().add(parseAnnotation(xpp)); 4557 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4558 return false; 4559 return true; 4560 } 4561 4562 protected ClinicalImpression.ClinicalImpressionInvestigationComponent parseClinicalImpressionClinicalImpressionInvestigationComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 4563 ClinicalImpression.ClinicalImpressionInvestigationComponent res = new ClinicalImpression.ClinicalImpressionInvestigationComponent(); 4564 parseBackboneAttributes(xpp, res); 4565 next(xpp); 4566 int eventType = nextNoWhitespace(xpp); 4567 while (eventType != XmlPullParser.END_TAG) { 4568 if (!parseClinicalImpressionClinicalImpressionInvestigationComponentContent(eventType, xpp, owner, res)) 4569 unknownContent(xpp); 4570 eventType = nextNoWhitespace(xpp); 4571 } 4572 next(xpp); 4573 parseElementClose(res); 4574 return res; 4575 } 4576 4577 protected boolean parseClinicalImpressionClinicalImpressionInvestigationComponentContent(int eventType, XmlPullParser xpp, ClinicalImpression owner, ClinicalImpression.ClinicalImpressionInvestigationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4578 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4579 res.setCode(parseCodeableConcept(xpp)); 4580 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 4581 res.getItem().add(parseReference(xpp)); 4582 } else if (!parseBackboneContent(eventType, xpp, res)) 4583 return false; 4584 return true; 4585 } 4586 4587 protected ClinicalImpression.ClinicalImpressionFindingComponent parseClinicalImpressionClinicalImpressionFindingComponent(XmlPullParser xpp, ClinicalImpression owner) throws XmlPullParserException, IOException, FHIRFormatError { 4588 ClinicalImpression.ClinicalImpressionFindingComponent res = new ClinicalImpression.ClinicalImpressionFindingComponent(); 4589 parseBackboneAttributes(xpp, res); 4590 next(xpp); 4591 int eventType = nextNoWhitespace(xpp); 4592 while (eventType != XmlPullParser.END_TAG) { 4593 if (!parseClinicalImpressionClinicalImpressionFindingComponentContent(eventType, xpp, owner, res)) 4594 unknownContent(xpp); 4595 eventType = nextNoWhitespace(xpp); 4596 } 4597 next(xpp); 4598 parseElementClose(res); 4599 return res; 4600 } 4601 4602 protected boolean parseClinicalImpressionClinicalImpressionFindingComponentContent(int eventType, XmlPullParser xpp, ClinicalImpression owner, ClinicalImpression.ClinicalImpressionFindingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4603 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 4604 res.setItem(parseType("item", xpp)); 4605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 4606 res.setBasisElement(parseString(xpp)); 4607 } else if (!parseBackboneContent(eventType, xpp, res)) 4608 return false; 4609 return true; 4610 } 4611 4612 protected CodeSystem parseCodeSystem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4613 CodeSystem res = new CodeSystem(); 4614 parseDomainResourceAttributes(xpp, res); 4615 next(xpp); 4616 int eventType = nextNoWhitespace(xpp); 4617 while (eventType != XmlPullParser.END_TAG) { 4618 if (!parseCodeSystemContent(eventType, xpp, res)) 4619 unknownContent(xpp); 4620 eventType = nextNoWhitespace(xpp); 4621 } 4622 next(xpp); 4623 parseElementClose(res); 4624 return res; 4625 } 4626 4627 protected boolean parseCodeSystemContent(int eventType, XmlPullParser xpp, CodeSystem res) throws XmlPullParserException, IOException, FHIRFormatError { 4628 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 4629 res.setUrlElement(parseUri(xpp)); 4630 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4631 res.setIdentifier(parseIdentifier(xpp)); 4632 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 4633 res.setVersionElement(parseString(xpp)); 4634 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 4635 res.setNameElement(parseString(xpp)); 4636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 4637 res.setTitleElement(parseString(xpp)); 4638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4639 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 4640 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 4641 res.setExperimentalElement(parseBoolean(xpp)); 4642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 4643 res.setDateElement(parseDateTime(xpp)); 4644 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 4645 res.setPublisherElement(parseString(xpp)); 4646 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 4647 res.getContact().add(parseContactDetail(xpp)); 4648 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4649 res.setDescriptionElement(parseMarkdown(xpp)); 4650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 4651 res.getUseContext().add(parseUsageContext(xpp)); 4652 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 4653 res.getJurisdiction().add(parseCodeableConcept(xpp)); 4654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 4655 res.setPurposeElement(parseMarkdown(xpp)); 4656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 4657 res.setCopyrightElement(parseMarkdown(xpp)); 4658 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caseSensitive")) { 4659 res.setCaseSensitiveElement(parseBoolean(xpp)); 4660 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 4661 res.setValueSetElement(parseUri(xpp)); 4662 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hierarchyMeaning")) { 4663 res.setHierarchyMeaningElement(parseEnumeration(xpp, CodeSystem.CodeSystemHierarchyMeaning.NULL, new CodeSystem.CodeSystemHierarchyMeaningEnumFactory())); 4664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compositional")) { 4665 res.setCompositionalElement(parseBoolean(xpp)); 4666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("versionNeeded")) { 4667 res.setVersionNeededElement(parseBoolean(xpp)); 4668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 4669 res.setContentElement(parseEnumeration(xpp, CodeSystem.CodeSystemContentMode.NULL, new CodeSystem.CodeSystemContentModeEnumFactory())); 4670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 4671 res.setCountElement(parseUnsignedInt(xpp)); 4672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 4673 res.getFilter().add(parseCodeSystemCodeSystemFilterComponent(xpp, res)); 4674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 4675 res.getProperty().add(parseCodeSystemPropertyComponent(xpp, res)); 4676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 4677 res.getConcept().add(parseCodeSystemConceptDefinitionComponent(xpp, res)); 4678 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4679 return false; 4680 return true; 4681 } 4682 4683 protected CodeSystem.CodeSystemFilterComponent parseCodeSystemCodeSystemFilterComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4684 CodeSystem.CodeSystemFilterComponent res = new CodeSystem.CodeSystemFilterComponent(); 4685 parseBackboneAttributes(xpp, res); 4686 next(xpp); 4687 int eventType = nextNoWhitespace(xpp); 4688 while (eventType != XmlPullParser.END_TAG) { 4689 if (!parseCodeSystemCodeSystemFilterComponentContent(eventType, xpp, owner, res)) 4690 unknownContent(xpp); 4691 eventType = nextNoWhitespace(xpp); 4692 } 4693 next(xpp); 4694 parseElementClose(res); 4695 return res; 4696 } 4697 4698 protected boolean parseCodeSystemCodeSystemFilterComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.CodeSystemFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4699 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4700 res.setCodeElement(parseCode(xpp)); 4701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4702 res.setDescriptionElement(parseString(xpp)); 4703 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 4704 res.getOperator().add(parseEnumeration(xpp, CodeSystem.FilterOperator.NULL, new CodeSystem.FilterOperatorEnumFactory())); 4705 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 4706 res.setValueElement(parseString(xpp)); 4707 } else if (!parseBackboneContent(eventType, xpp, res)) 4708 return false; 4709 return true; 4710 } 4711 4712 protected CodeSystem.PropertyComponent parseCodeSystemPropertyComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4713 CodeSystem.PropertyComponent res = new CodeSystem.PropertyComponent(); 4714 parseBackboneAttributes(xpp, res); 4715 next(xpp); 4716 int eventType = nextNoWhitespace(xpp); 4717 while (eventType != XmlPullParser.END_TAG) { 4718 if (!parseCodeSystemPropertyComponentContent(eventType, xpp, owner, res)) 4719 unknownContent(xpp); 4720 eventType = nextNoWhitespace(xpp); 4721 } 4722 next(xpp); 4723 parseElementClose(res); 4724 return res; 4725 } 4726 4727 protected boolean parseCodeSystemPropertyComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.PropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4728 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4729 res.setCodeElement(parseCode(xpp)); 4730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 4731 res.setUriElement(parseUri(xpp)); 4732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 4733 res.setDescriptionElement(parseString(xpp)); 4734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 4735 res.setTypeElement(parseEnumeration(xpp, CodeSystem.PropertyType.NULL, new CodeSystem.PropertyTypeEnumFactory())); 4736 } else if (!parseBackboneContent(eventType, xpp, res)) 4737 return false; 4738 return true; 4739 } 4740 4741 protected CodeSystem.ConceptDefinitionComponent parseCodeSystemConceptDefinitionComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4742 CodeSystem.ConceptDefinitionComponent res = new CodeSystem.ConceptDefinitionComponent(); 4743 parseBackboneAttributes(xpp, res); 4744 next(xpp); 4745 int eventType = nextNoWhitespace(xpp); 4746 while (eventType != XmlPullParser.END_TAG) { 4747 if (!parseCodeSystemConceptDefinitionComponentContent(eventType, xpp, owner, res)) 4748 unknownContent(xpp); 4749 eventType = nextNoWhitespace(xpp); 4750 } 4751 next(xpp); 4752 parseElementClose(res); 4753 return res; 4754 } 4755 4756 protected boolean parseCodeSystemConceptDefinitionComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.ConceptDefinitionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4757 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4758 res.setCodeElement(parseCode(xpp)); 4759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 4760 res.setDisplayElement(parseString(xpp)); 4761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 4762 res.setDefinitionElement(parseString(xpp)); 4763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 4764 res.getDesignation().add(parseCodeSystemConceptDefinitionDesignationComponent(xpp, owner)); 4765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 4766 res.getProperty().add(parseCodeSystemConceptPropertyComponent(xpp, owner)); 4767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 4768 res.getConcept().add(parseCodeSystemConceptDefinitionComponent(xpp, owner)); 4769 } else if (!parseBackboneContent(eventType, xpp, res)) 4770 return false; 4771 return true; 4772 } 4773 4774 protected CodeSystem.ConceptDefinitionDesignationComponent parseCodeSystemConceptDefinitionDesignationComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4775 CodeSystem.ConceptDefinitionDesignationComponent res = new CodeSystem.ConceptDefinitionDesignationComponent(); 4776 parseBackboneAttributes(xpp, res); 4777 next(xpp); 4778 int eventType = nextNoWhitespace(xpp); 4779 while (eventType != XmlPullParser.END_TAG) { 4780 if (!parseCodeSystemConceptDefinitionDesignationComponentContent(eventType, xpp, owner, res)) 4781 unknownContent(xpp); 4782 eventType = nextNoWhitespace(xpp); 4783 } 4784 next(xpp); 4785 parseElementClose(res); 4786 return res; 4787 } 4788 4789 protected boolean parseCodeSystemConceptDefinitionDesignationComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.ConceptDefinitionDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4790 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 4791 res.setLanguageElement(parseCode(xpp)); 4792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 4793 res.setUse(parseCoding(xpp)); 4794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 4795 res.setValueElement(parseString(xpp)); 4796 } else if (!parseBackboneContent(eventType, xpp, res)) 4797 return false; 4798 return true; 4799 } 4800 4801 protected CodeSystem.ConceptPropertyComponent parseCodeSystemConceptPropertyComponent(XmlPullParser xpp, CodeSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 4802 CodeSystem.ConceptPropertyComponent res = new CodeSystem.ConceptPropertyComponent(); 4803 parseBackboneAttributes(xpp, res); 4804 next(xpp); 4805 int eventType = nextNoWhitespace(xpp); 4806 while (eventType != XmlPullParser.END_TAG) { 4807 if (!parseCodeSystemConceptPropertyComponentContent(eventType, xpp, owner, res)) 4808 unknownContent(xpp); 4809 eventType = nextNoWhitespace(xpp); 4810 } 4811 next(xpp); 4812 parseElementClose(res); 4813 return res; 4814 } 4815 4816 protected boolean parseCodeSystemConceptPropertyComponentContent(int eventType, XmlPullParser xpp, CodeSystem owner, CodeSystem.ConceptPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4817 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 4818 res.setCodeElement(parseCode(xpp)); 4819 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 4820 res.setValue(parseType("value", xpp)); 4821 } else if (!parseBackboneContent(eventType, xpp, res)) 4822 return false; 4823 return true; 4824 } 4825 4826 protected Communication parseCommunication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4827 Communication res = new Communication(); 4828 parseDomainResourceAttributes(xpp, res); 4829 next(xpp); 4830 int eventType = nextNoWhitespace(xpp); 4831 while (eventType != XmlPullParser.END_TAG) { 4832 if (!parseCommunicationContent(eventType, xpp, res)) 4833 unknownContent(xpp); 4834 eventType = nextNoWhitespace(xpp); 4835 } 4836 next(xpp); 4837 parseElementClose(res); 4838 return res; 4839 } 4840 4841 protected boolean parseCommunicationContent(int eventType, XmlPullParser xpp, Communication res) throws XmlPullParserException, IOException, FHIRFormatError { 4842 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4843 res.getIdentifier().add(parseIdentifier(xpp)); 4844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 4845 res.getDefinition().add(parseReference(xpp)); 4846 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 4847 res.getBasedOn().add(parseReference(xpp)); 4848 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 4849 res.getPartOf().add(parseReference(xpp)); 4850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4851 res.setStatusElement(parseEnumeration(xpp, Communication.CommunicationStatus.NULL, new Communication.CommunicationStatusEnumFactory())); 4852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDone")) { 4853 res.setNotDoneElement(parseBoolean(xpp)); 4854 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDoneReason")) { 4855 res.setNotDoneReason(parseCodeableConcept(xpp)); 4856 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4857 res.getCategory().add(parseCodeableConcept(xpp)); 4858 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 4859 res.getMedium().add(parseCodeableConcept(xpp)); 4860 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4861 res.setSubject(parseReference(xpp)); 4862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 4863 res.getRecipient().add(parseReference(xpp)); 4864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 4865 res.getTopic().add(parseReference(xpp)); 4866 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 4867 res.setContext(parseReference(xpp)); 4868 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sent")) { 4869 res.setSentElement(parseDateTime(xpp)); 4870 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("received")) { 4871 res.setReceivedElement(parseDateTime(xpp)); 4872 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 4873 res.setSender(parseReference(xpp)); 4874 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 4875 res.getReasonCode().add(parseCodeableConcept(xpp)); 4876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 4877 res.getReasonReference().add(parseReference(xpp)); 4878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 4879 res.getPayload().add(parseCommunicationCommunicationPayloadComponent(xpp, res)); 4880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4881 res.getNote().add(parseAnnotation(xpp)); 4882 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4883 return false; 4884 return true; 4885 } 4886 4887 protected Communication.CommunicationPayloadComponent parseCommunicationCommunicationPayloadComponent(XmlPullParser xpp, Communication owner) throws XmlPullParserException, IOException, FHIRFormatError { 4888 Communication.CommunicationPayloadComponent res = new Communication.CommunicationPayloadComponent(); 4889 parseBackboneAttributes(xpp, res); 4890 next(xpp); 4891 int eventType = nextNoWhitespace(xpp); 4892 while (eventType != XmlPullParser.END_TAG) { 4893 if (!parseCommunicationCommunicationPayloadComponentContent(eventType, xpp, owner, res)) 4894 unknownContent(xpp); 4895 eventType = nextNoWhitespace(xpp); 4896 } 4897 next(xpp); 4898 parseElementClose(res); 4899 return res; 4900 } 4901 4902 protected boolean parseCommunicationCommunicationPayloadComponentContent(int eventType, XmlPullParser xpp, Communication owner, Communication.CommunicationPayloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4903 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 4904 res.setContent(parseType("content", xpp)); 4905 } else if (!parseBackboneContent(eventType, xpp, res)) 4906 return false; 4907 return true; 4908 } 4909 4910 protected CommunicationRequest parseCommunicationRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 4911 CommunicationRequest res = new CommunicationRequest(); 4912 parseDomainResourceAttributes(xpp, res); 4913 next(xpp); 4914 int eventType = nextNoWhitespace(xpp); 4915 while (eventType != XmlPullParser.END_TAG) { 4916 if (!parseCommunicationRequestContent(eventType, xpp, res)) 4917 unknownContent(xpp); 4918 eventType = nextNoWhitespace(xpp); 4919 } 4920 next(xpp); 4921 parseElementClose(res); 4922 return res; 4923 } 4924 4925 protected boolean parseCommunicationRequestContent(int eventType, XmlPullParser xpp, CommunicationRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 4926 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 4927 res.getIdentifier().add(parseIdentifier(xpp)); 4928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 4929 res.getBasedOn().add(parseReference(xpp)); 4930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 4931 res.getReplaces().add(parseReference(xpp)); 4932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 4933 res.setGroupIdentifier(parseIdentifier(xpp)); 4934 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 4935 res.setStatusElement(parseEnumeration(xpp, CommunicationRequest.CommunicationRequestStatus.NULL, new CommunicationRequest.CommunicationRequestStatusEnumFactory())); 4936 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 4937 res.getCategory().add(parseCodeableConcept(xpp)); 4938 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 4939 res.setPriorityElement(parseEnumeration(xpp, CommunicationRequest.CommunicationPriority.NULL, new CommunicationRequest.CommunicationPriorityEnumFactory())); 4940 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medium")) { 4941 res.getMedium().add(parseCodeableConcept(xpp)); 4942 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 4943 res.setSubject(parseReference(xpp)); 4944 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 4945 res.getRecipient().add(parseReference(xpp)); 4946 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 4947 res.getTopic().add(parseReference(xpp)); 4948 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 4949 res.setContext(parseReference(xpp)); 4950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 4951 res.getPayload().add(parseCommunicationRequestCommunicationRequestPayloadComponent(xpp, res)); 4952 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 4953 res.setOccurrence(parseType("occurrence", xpp)); 4954 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 4955 res.setAuthoredOnElement(parseDateTime(xpp)); 4956 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 4957 res.setSender(parseReference(xpp)); 4958 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 4959 res.setRequester(parseCommunicationRequestCommunicationRequestRequesterComponent(xpp, res)); 4960 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 4961 res.getReasonCode().add(parseCodeableConcept(xpp)); 4962 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 4963 res.getReasonReference().add(parseReference(xpp)); 4964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 4965 res.getNote().add(parseAnnotation(xpp)); 4966 } else if (!parseDomainResourceContent(eventType, xpp, res)) 4967 return false; 4968 return true; 4969 } 4970 4971 protected CommunicationRequest.CommunicationRequestPayloadComponent parseCommunicationRequestCommunicationRequestPayloadComponent(XmlPullParser xpp, CommunicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 4972 CommunicationRequest.CommunicationRequestPayloadComponent res = new CommunicationRequest.CommunicationRequestPayloadComponent(); 4973 parseBackboneAttributes(xpp, res); 4974 next(xpp); 4975 int eventType = nextNoWhitespace(xpp); 4976 while (eventType != XmlPullParser.END_TAG) { 4977 if (!parseCommunicationRequestCommunicationRequestPayloadComponentContent(eventType, xpp, owner, res)) 4978 unknownContent(xpp); 4979 eventType = nextNoWhitespace(xpp); 4980 } 4981 next(xpp); 4982 parseElementClose(res); 4983 return res; 4984 } 4985 4986 protected boolean parseCommunicationRequestCommunicationRequestPayloadComponentContent(int eventType, XmlPullParser xpp, CommunicationRequest owner, CommunicationRequest.CommunicationRequestPayloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 4987 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 4988 res.setContent(parseType("content", xpp)); 4989 } else if (!parseBackboneContent(eventType, xpp, res)) 4990 return false; 4991 return true; 4992 } 4993 4994 protected CommunicationRequest.CommunicationRequestRequesterComponent parseCommunicationRequestCommunicationRequestRequesterComponent(XmlPullParser xpp, CommunicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 4995 CommunicationRequest.CommunicationRequestRequesterComponent res = new CommunicationRequest.CommunicationRequestRequesterComponent(); 4996 parseBackboneAttributes(xpp, res); 4997 next(xpp); 4998 int eventType = nextNoWhitespace(xpp); 4999 while (eventType != XmlPullParser.END_TAG) { 5000 if (!parseCommunicationRequestCommunicationRequestRequesterComponentContent(eventType, xpp, owner, res)) 5001 unknownContent(xpp); 5002 eventType = nextNoWhitespace(xpp); 5003 } 5004 next(xpp); 5005 parseElementClose(res); 5006 return res; 5007 } 5008 5009 protected boolean parseCommunicationRequestCommunicationRequestRequesterComponentContent(int eventType, XmlPullParser xpp, CommunicationRequest owner, CommunicationRequest.CommunicationRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5010 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 5011 res.setAgent(parseReference(xpp)); 5012 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 5013 res.setOnBehalfOf(parseReference(xpp)); 5014 } else if (!parseBackboneContent(eventType, xpp, res)) 5015 return false; 5016 return true; 5017 } 5018 5019 protected CompartmentDefinition parseCompartmentDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5020 CompartmentDefinition res = new CompartmentDefinition(); 5021 parseDomainResourceAttributes(xpp, res); 5022 next(xpp); 5023 int eventType = nextNoWhitespace(xpp); 5024 while (eventType != XmlPullParser.END_TAG) { 5025 if (!parseCompartmentDefinitionContent(eventType, xpp, res)) 5026 unknownContent(xpp); 5027 eventType = nextNoWhitespace(xpp); 5028 } 5029 next(xpp); 5030 parseElementClose(res); 5031 return res; 5032 } 5033 5034 protected boolean parseCompartmentDefinitionContent(int eventType, XmlPullParser xpp, CompartmentDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 5035 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5036 res.setUrlElement(parseUri(xpp)); 5037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5038 res.setNameElement(parseString(xpp)); 5039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5040 res.setTitleElement(parseString(xpp)); 5041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5042 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 5043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 5044 res.setExperimentalElement(parseBoolean(xpp)); 5045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5046 res.setDateElement(parseDateTime(xpp)); 5047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 5048 res.setPublisherElement(parseString(xpp)); 5049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 5050 res.getContact().add(parseContactDetail(xpp)); 5051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5052 res.setDescriptionElement(parseMarkdown(xpp)); 5053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5054 res.setPurposeElement(parseMarkdown(xpp)); 5055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 5056 res.getUseContext().add(parseUsageContext(xpp)); 5057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 5058 res.getJurisdiction().add(parseCodeableConcept(xpp)); 5059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5060 res.setCodeElement(parseEnumeration(xpp, CompartmentDefinition.CompartmentType.NULL, new CompartmentDefinition.CompartmentTypeEnumFactory())); 5061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("search")) { 5062 res.setSearchElement(parseBoolean(xpp)); 5063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 5064 res.getResource().add(parseCompartmentDefinitionCompartmentDefinitionResourceComponent(xpp, res)); 5065 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5066 return false; 5067 return true; 5068 } 5069 5070 protected CompartmentDefinition.CompartmentDefinitionResourceComponent parseCompartmentDefinitionCompartmentDefinitionResourceComponent(XmlPullParser xpp, CompartmentDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5071 CompartmentDefinition.CompartmentDefinitionResourceComponent res = new CompartmentDefinition.CompartmentDefinitionResourceComponent(); 5072 parseBackboneAttributes(xpp, res); 5073 next(xpp); 5074 int eventType = nextNoWhitespace(xpp); 5075 while (eventType != XmlPullParser.END_TAG) { 5076 if (!parseCompartmentDefinitionCompartmentDefinitionResourceComponentContent(eventType, xpp, owner, res)) 5077 unknownContent(xpp); 5078 eventType = nextNoWhitespace(xpp); 5079 } 5080 next(xpp); 5081 parseElementClose(res); 5082 return res; 5083 } 5084 5085 protected boolean parseCompartmentDefinitionCompartmentDefinitionResourceComponentContent(int eventType, XmlPullParser xpp, CompartmentDefinition owner, CompartmentDefinition.CompartmentDefinitionResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5086 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5087 res.setCodeElement(parseCode(xpp)); 5088 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 5089 res.getParam().add(parseString(xpp)); 5090 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 5091 res.setDocumentationElement(parseString(xpp)); 5092 } else if (!parseBackboneContent(eventType, xpp, res)) 5093 return false; 5094 return true; 5095 } 5096 5097 protected Composition parseComposition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5098 Composition res = new Composition(); 5099 parseDomainResourceAttributes(xpp, res); 5100 next(xpp); 5101 int eventType = nextNoWhitespace(xpp); 5102 while (eventType != XmlPullParser.END_TAG) { 5103 if (!parseCompositionContent(eventType, xpp, res)) 5104 unknownContent(xpp); 5105 eventType = nextNoWhitespace(xpp); 5106 } 5107 next(xpp); 5108 parseElementClose(res); 5109 return res; 5110 } 5111 5112 protected boolean parseCompositionContent(int eventType, XmlPullParser xpp, Composition res) throws XmlPullParserException, IOException, FHIRFormatError { 5113 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5114 res.setIdentifier(parseIdentifier(xpp)); 5115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5116 res.setStatusElement(parseEnumeration(xpp, Composition.CompositionStatus.NULL, new Composition.CompositionStatusEnumFactory())); 5117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5118 res.setType(parseCodeableConcept(xpp)); 5119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 5120 res.setClass_(parseCodeableConcept(xpp)); 5121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5122 res.setSubject(parseReference(xpp)); 5123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 5124 res.setEncounter(parseReference(xpp)); 5125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5126 res.setDateElement(parseDateTime(xpp)); 5127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 5128 res.getAuthor().add(parseReference(xpp)); 5129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5130 res.setTitleElement(parseString(xpp)); 5131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("confidentiality")) { 5132 res.setConfidentialityElement(parseEnumeration(xpp, Composition.DocumentConfidentiality.NULL, new Composition.DocumentConfidentialityEnumFactory())); 5133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attester")) { 5134 res.getAttester().add(parseCompositionCompositionAttesterComponent(xpp, res)); 5135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 5136 res.setCustodian(parseReference(xpp)); 5137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 5138 res.getRelatesTo().add(parseCompositionCompositionRelatesToComponent(xpp, res)); 5139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 5140 res.getEvent().add(parseCompositionCompositionEventComponent(xpp, res)); 5141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 5142 res.getSection().add(parseCompositionSectionComponent(xpp, res)); 5143 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5144 return false; 5145 return true; 5146 } 5147 5148 protected Composition.CompositionAttesterComponent parseCompositionCompositionAttesterComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5149 Composition.CompositionAttesterComponent res = new Composition.CompositionAttesterComponent(); 5150 parseBackboneAttributes(xpp, res); 5151 next(xpp); 5152 int eventType = nextNoWhitespace(xpp); 5153 while (eventType != XmlPullParser.END_TAG) { 5154 if (!parseCompositionCompositionAttesterComponentContent(eventType, xpp, owner, res)) 5155 unknownContent(xpp); 5156 eventType = nextNoWhitespace(xpp); 5157 } 5158 next(xpp); 5159 parseElementClose(res); 5160 return res; 5161 } 5162 5163 protected boolean parseCompositionCompositionAttesterComponentContent(int eventType, XmlPullParser xpp, Composition owner, Composition.CompositionAttesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5164 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 5165 res.getMode().add(parseEnumeration(xpp, Composition.CompositionAttestationMode.NULL, new Composition.CompositionAttestationModeEnumFactory())); 5166 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 5167 res.setTimeElement(parseDateTime(xpp)); 5168 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 5169 res.setParty(parseReference(xpp)); 5170 } else if (!parseBackboneContent(eventType, xpp, res)) 5171 return false; 5172 return true; 5173 } 5174 5175 protected Composition.CompositionRelatesToComponent parseCompositionCompositionRelatesToComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5176 Composition.CompositionRelatesToComponent res = new Composition.CompositionRelatesToComponent(); 5177 parseBackboneAttributes(xpp, res); 5178 next(xpp); 5179 int eventType = nextNoWhitespace(xpp); 5180 while (eventType != XmlPullParser.END_TAG) { 5181 if (!parseCompositionCompositionRelatesToComponentContent(eventType, xpp, owner, res)) 5182 unknownContent(xpp); 5183 eventType = nextNoWhitespace(xpp); 5184 } 5185 next(xpp); 5186 parseElementClose(res); 5187 return res; 5188 } 5189 5190 protected boolean parseCompositionCompositionRelatesToComponentContent(int eventType, XmlPullParser xpp, Composition owner, Composition.CompositionRelatesToComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5191 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5192 res.setCodeElement(parseEnumeration(xpp, Composition.DocumentRelationshipType.NULL, new Composition.DocumentRelationshipTypeEnumFactory())); 5193 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 5194 res.setTarget(parseType("target", xpp)); 5195 } else if (!parseBackboneContent(eventType, xpp, res)) 5196 return false; 5197 return true; 5198 } 5199 5200 protected Composition.CompositionEventComponent parseCompositionCompositionEventComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5201 Composition.CompositionEventComponent res = new Composition.CompositionEventComponent(); 5202 parseBackboneAttributes(xpp, res); 5203 next(xpp); 5204 int eventType = nextNoWhitespace(xpp); 5205 while (eventType != XmlPullParser.END_TAG) { 5206 if (!parseCompositionCompositionEventComponentContent(eventType, xpp, owner, res)) 5207 unknownContent(xpp); 5208 eventType = nextNoWhitespace(xpp); 5209 } 5210 next(xpp); 5211 parseElementClose(res); 5212 return res; 5213 } 5214 5215 protected boolean parseCompositionCompositionEventComponentContent(int eventType, XmlPullParser xpp, Composition owner, Composition.CompositionEventComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5216 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5217 res.getCode().add(parseCodeableConcept(xpp)); 5218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5219 res.setPeriod(parsePeriod(xpp)); 5220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 5221 res.getDetail().add(parseReference(xpp)); 5222 } else if (!parseBackboneContent(eventType, xpp, res)) 5223 return false; 5224 return true; 5225 } 5226 5227 protected Composition.SectionComponent parseCompositionSectionComponent(XmlPullParser xpp, Composition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5228 Composition.SectionComponent res = new Composition.SectionComponent(); 5229 parseBackboneAttributes(xpp, res); 5230 next(xpp); 5231 int eventType = nextNoWhitespace(xpp); 5232 while (eventType != XmlPullParser.END_TAG) { 5233 if (!parseCompositionSectionComponentContent(eventType, xpp, owner, res)) 5234 unknownContent(xpp); 5235 eventType = nextNoWhitespace(xpp); 5236 } 5237 next(xpp); 5238 parseElementClose(res); 5239 return res; 5240 } 5241 5242 protected boolean parseCompositionSectionComponentContent(int eventType, XmlPullParser xpp, Composition owner, Composition.SectionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5243 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5244 res.setTitleElement(parseString(xpp)); 5245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5246 res.setCode(parseCodeableConcept(xpp)); 5247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 5248 res.setText(parseNarrative(xpp)); 5249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 5250 res.setModeElement(parseEnumeration(xpp, Composition.SectionMode.NULL, new Composition.SectionModeEnumFactory())); 5251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 5252 res.setOrderedBy(parseCodeableConcept(xpp)); 5253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 5254 res.getEntry().add(parseReference(xpp)); 5255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 5256 res.setEmptyReason(parseCodeableConcept(xpp)); 5257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("section")) { 5258 res.getSection().add(parseCompositionSectionComponent(xpp, owner)); 5259 } else if (!parseBackboneContent(eventType, xpp, res)) 5260 return false; 5261 return true; 5262 } 5263 5264 protected ConceptMap parseConceptMap(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5265 ConceptMap res = new ConceptMap(); 5266 parseDomainResourceAttributes(xpp, res); 5267 next(xpp); 5268 int eventType = nextNoWhitespace(xpp); 5269 while (eventType != XmlPullParser.END_TAG) { 5270 if (!parseConceptMapContent(eventType, xpp, res)) 5271 unknownContent(xpp); 5272 eventType = nextNoWhitespace(xpp); 5273 } 5274 next(xpp); 5275 parseElementClose(res); 5276 return res; 5277 } 5278 5279 protected boolean parseConceptMapContent(int eventType, XmlPullParser xpp, ConceptMap res) throws XmlPullParserException, IOException, FHIRFormatError { 5280 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5281 res.setUrlElement(parseUri(xpp)); 5282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5283 res.setIdentifier(parseIdentifier(xpp)); 5284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 5285 res.setVersionElement(parseString(xpp)); 5286 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 5287 res.setNameElement(parseString(xpp)); 5288 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 5289 res.setTitleElement(parseString(xpp)); 5290 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5291 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 5292 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 5293 res.setExperimentalElement(parseBoolean(xpp)); 5294 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 5295 res.setDateElement(parseDateTime(xpp)); 5296 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 5297 res.setPublisherElement(parseString(xpp)); 5298 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 5299 res.getContact().add(parseContactDetail(xpp)); 5300 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 5301 res.setDescriptionElement(parseMarkdown(xpp)); 5302 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 5303 res.getUseContext().add(parseUsageContext(xpp)); 5304 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 5305 res.getJurisdiction().add(parseCodeableConcept(xpp)); 5306 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5307 res.setPurposeElement(parseMarkdown(xpp)); 5308 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 5309 res.setCopyrightElement(parseMarkdown(xpp)); 5310 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 5311 res.setSource(parseType("source", xpp)); 5312 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "target")) { 5313 res.setTarget(parseType("target", xpp)); 5314 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 5315 res.getGroup().add(parseConceptMapConceptMapGroupComponent(xpp, res)); 5316 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5317 return false; 5318 return true; 5319 } 5320 5321 protected ConceptMap.ConceptMapGroupComponent parseConceptMapConceptMapGroupComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5322 ConceptMap.ConceptMapGroupComponent res = new ConceptMap.ConceptMapGroupComponent(); 5323 parseBackboneAttributes(xpp, res); 5324 next(xpp); 5325 int eventType = nextNoWhitespace(xpp); 5326 while (eventType != XmlPullParser.END_TAG) { 5327 if (!parseConceptMapConceptMapGroupComponentContent(eventType, xpp, owner, res)) 5328 unknownContent(xpp); 5329 eventType = nextNoWhitespace(xpp); 5330 } 5331 next(xpp); 5332 parseElementClose(res); 5333 return res; 5334 } 5335 5336 protected boolean parseConceptMapConceptMapGroupComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.ConceptMapGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5337 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 5338 res.setSourceElement(parseUri(xpp)); 5339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceVersion")) { 5340 res.setSourceVersionElement(parseString(xpp)); 5341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 5342 res.setTargetElement(parseUri(xpp)); 5343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetVersion")) { 5344 res.setTargetVersionElement(parseString(xpp)); 5345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 5346 res.getElement().add(parseConceptMapSourceElementComponent(xpp, owner)); 5347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unmapped")) { 5348 res.setUnmapped(parseConceptMapConceptMapGroupUnmappedComponent(xpp, owner)); 5349 } else if (!parseBackboneContent(eventType, xpp, res)) 5350 return false; 5351 return true; 5352 } 5353 5354 protected ConceptMap.SourceElementComponent parseConceptMapSourceElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5355 ConceptMap.SourceElementComponent res = new ConceptMap.SourceElementComponent(); 5356 parseBackboneAttributes(xpp, res); 5357 next(xpp); 5358 int eventType = nextNoWhitespace(xpp); 5359 while (eventType != XmlPullParser.END_TAG) { 5360 if (!parseConceptMapSourceElementComponentContent(eventType, xpp, owner, res)) 5361 unknownContent(xpp); 5362 eventType = nextNoWhitespace(xpp); 5363 } 5364 next(xpp); 5365 parseElementClose(res); 5366 return res; 5367 } 5368 5369 protected boolean parseConceptMapSourceElementComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.SourceElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5370 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5371 res.setCodeElement(parseCode(xpp)); 5372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 5373 res.setDisplayElement(parseString(xpp)); 5374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 5375 res.getTarget().add(parseConceptMapTargetElementComponent(xpp, owner)); 5376 } else if (!parseBackboneContent(eventType, xpp, res)) 5377 return false; 5378 return true; 5379 } 5380 5381 protected ConceptMap.TargetElementComponent parseConceptMapTargetElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5382 ConceptMap.TargetElementComponent res = new ConceptMap.TargetElementComponent(); 5383 parseBackboneAttributes(xpp, res); 5384 next(xpp); 5385 int eventType = nextNoWhitespace(xpp); 5386 while (eventType != XmlPullParser.END_TAG) { 5387 if (!parseConceptMapTargetElementComponentContent(eventType, xpp, owner, res)) 5388 unknownContent(xpp); 5389 eventType = nextNoWhitespace(xpp); 5390 } 5391 next(xpp); 5392 parseElementClose(res); 5393 return res; 5394 } 5395 5396 protected boolean parseConceptMapTargetElementComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.TargetElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5397 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5398 res.setCodeElement(parseCode(xpp)); 5399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 5400 res.setDisplayElement(parseString(xpp)); 5401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("equivalence")) { 5402 res.setEquivalenceElement(parseEnumeration(xpp, Enumerations.ConceptMapEquivalence.NULL, new Enumerations.ConceptMapEquivalenceEnumFactory())); 5403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 5404 res.setCommentElement(parseString(xpp)); 5405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependsOn")) { 5406 res.getDependsOn().add(parseConceptMapOtherElementComponent(xpp, owner)); 5407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 5408 res.getProduct().add(parseConceptMapOtherElementComponent(xpp, owner)); 5409 } else if (!parseBackboneContent(eventType, xpp, res)) 5410 return false; 5411 return true; 5412 } 5413 5414 protected ConceptMap.OtherElementComponent parseConceptMapOtherElementComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5415 ConceptMap.OtherElementComponent res = new ConceptMap.OtherElementComponent(); 5416 parseBackboneAttributes(xpp, res); 5417 next(xpp); 5418 int eventType = nextNoWhitespace(xpp); 5419 while (eventType != XmlPullParser.END_TAG) { 5420 if (!parseConceptMapOtherElementComponentContent(eventType, xpp, owner, res)) 5421 unknownContent(xpp); 5422 eventType = nextNoWhitespace(xpp); 5423 } 5424 next(xpp); 5425 parseElementClose(res); 5426 return res; 5427 } 5428 5429 protected boolean parseConceptMapOtherElementComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.OtherElementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5430 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 5431 res.setPropertyElement(parseUri(xpp)); 5432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 5433 res.setSystemElement(parseUri(xpp)); 5434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5435 res.setCodeElement(parseString(xpp)); 5436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 5437 res.setDisplayElement(parseString(xpp)); 5438 } else if (!parseBackboneContent(eventType, xpp, res)) 5439 return false; 5440 return true; 5441 } 5442 5443 protected ConceptMap.ConceptMapGroupUnmappedComponent parseConceptMapConceptMapGroupUnmappedComponent(XmlPullParser xpp, ConceptMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 5444 ConceptMap.ConceptMapGroupUnmappedComponent res = new ConceptMap.ConceptMapGroupUnmappedComponent(); 5445 parseBackboneAttributes(xpp, res); 5446 next(xpp); 5447 int eventType = nextNoWhitespace(xpp); 5448 while (eventType != XmlPullParser.END_TAG) { 5449 if (!parseConceptMapConceptMapGroupUnmappedComponentContent(eventType, xpp, owner, res)) 5450 unknownContent(xpp); 5451 eventType = nextNoWhitespace(xpp); 5452 } 5453 next(xpp); 5454 parseElementClose(res); 5455 return res; 5456 } 5457 5458 protected boolean parseConceptMapConceptMapGroupUnmappedComponentContent(int eventType, XmlPullParser xpp, ConceptMap owner, ConceptMap.ConceptMapGroupUnmappedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5459 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 5460 res.setModeElement(parseEnumeration(xpp, ConceptMap.ConceptMapGroupUnmappedMode.NULL, new ConceptMap.ConceptMapGroupUnmappedModeEnumFactory())); 5461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5462 res.setCodeElement(parseCode(xpp)); 5463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 5464 res.setDisplayElement(parseString(xpp)); 5465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 5466 res.setUrlElement(parseUri(xpp)); 5467 } else if (!parseBackboneContent(eventType, xpp, res)) 5468 return false; 5469 return true; 5470 } 5471 5472 protected Condition parseCondition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5473 Condition res = new Condition(); 5474 parseDomainResourceAttributes(xpp, res); 5475 next(xpp); 5476 int eventType = nextNoWhitespace(xpp); 5477 while (eventType != XmlPullParser.END_TAG) { 5478 if (!parseConditionContent(eventType, xpp, res)) 5479 unknownContent(xpp); 5480 eventType = nextNoWhitespace(xpp); 5481 } 5482 next(xpp); 5483 parseElementClose(res); 5484 return res; 5485 } 5486 5487 protected boolean parseConditionContent(int eventType, XmlPullParser xpp, Condition res) throws XmlPullParserException, IOException, FHIRFormatError { 5488 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5489 res.getIdentifier().add(parseIdentifier(xpp)); 5490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalStatus")) { 5491 res.setClinicalStatusElement(parseEnumeration(xpp, Condition.ConditionClinicalStatus.NULL, new Condition.ConditionClinicalStatusEnumFactory())); 5492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("verificationStatus")) { 5493 res.setVerificationStatusElement(parseEnumeration(xpp, Condition.ConditionVerificationStatus.NULL, new Condition.ConditionVerificationStatusEnumFactory())); 5494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5495 res.getCategory().add(parseCodeableConcept(xpp)); 5496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 5497 res.setSeverity(parseCodeableConcept(xpp)); 5498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5499 res.setCode(parseCodeableConcept(xpp)); 5500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 5501 res.getBodySite().add(parseCodeableConcept(xpp)); 5502 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5503 res.setSubject(parseReference(xpp)); 5504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 5505 res.setContext(parseReference(xpp)); 5506 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 5507 res.setOnset(parseType("onset", xpp)); 5508 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "abatement")) { 5509 res.setAbatement(parseType("abatement", xpp)); 5510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assertedDate")) { 5511 res.setAssertedDateElement(parseDateTime(xpp)); 5512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asserter")) { 5513 res.setAsserter(parseReference(xpp)); 5514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stage")) { 5515 res.setStage(parseConditionConditionStageComponent(xpp, res)); 5516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evidence")) { 5517 res.getEvidence().add(parseConditionConditionEvidenceComponent(xpp, res)); 5518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 5519 res.getNote().add(parseAnnotation(xpp)); 5520 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5521 return false; 5522 return true; 5523 } 5524 5525 protected Condition.ConditionStageComponent parseConditionConditionStageComponent(XmlPullParser xpp, Condition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5526 Condition.ConditionStageComponent res = new Condition.ConditionStageComponent(); 5527 parseBackboneAttributes(xpp, res); 5528 next(xpp); 5529 int eventType = nextNoWhitespace(xpp); 5530 while (eventType != XmlPullParser.END_TAG) { 5531 if (!parseConditionConditionStageComponentContent(eventType, xpp, owner, res)) 5532 unknownContent(xpp); 5533 eventType = nextNoWhitespace(xpp); 5534 } 5535 next(xpp); 5536 parseElementClose(res); 5537 return res; 5538 } 5539 5540 protected boolean parseConditionConditionStageComponentContent(int eventType, XmlPullParser xpp, Condition owner, Condition.ConditionStageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5541 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("summary")) { 5542 res.setSummary(parseCodeableConcept(xpp)); 5543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assessment")) { 5544 res.getAssessment().add(parseReference(xpp)); 5545 } else if (!parseBackboneContent(eventType, xpp, res)) 5546 return false; 5547 return true; 5548 } 5549 5550 protected Condition.ConditionEvidenceComponent parseConditionConditionEvidenceComponent(XmlPullParser xpp, Condition owner) throws XmlPullParserException, IOException, FHIRFormatError { 5551 Condition.ConditionEvidenceComponent res = new Condition.ConditionEvidenceComponent(); 5552 parseBackboneAttributes(xpp, res); 5553 next(xpp); 5554 int eventType = nextNoWhitespace(xpp); 5555 while (eventType != XmlPullParser.END_TAG) { 5556 if (!parseConditionConditionEvidenceComponentContent(eventType, xpp, owner, res)) 5557 unknownContent(xpp); 5558 eventType = nextNoWhitespace(xpp); 5559 } 5560 next(xpp); 5561 parseElementClose(res); 5562 return res; 5563 } 5564 5565 protected boolean parseConditionConditionEvidenceComponentContent(int eventType, XmlPullParser xpp, Condition owner, Condition.ConditionEvidenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5566 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5567 res.getCode().add(parseCodeableConcept(xpp)); 5568 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 5569 res.getDetail().add(parseReference(xpp)); 5570 } else if (!parseBackboneContent(eventType, xpp, res)) 5571 return false; 5572 return true; 5573 } 5574 5575 protected Consent parseConsent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5576 Consent res = new Consent(); 5577 parseDomainResourceAttributes(xpp, res); 5578 next(xpp); 5579 int eventType = nextNoWhitespace(xpp); 5580 while (eventType != XmlPullParser.END_TAG) { 5581 if (!parseConsentContent(eventType, xpp, res)) 5582 unknownContent(xpp); 5583 eventType = nextNoWhitespace(xpp); 5584 } 5585 next(xpp); 5586 parseElementClose(res); 5587 return res; 5588 } 5589 5590 protected boolean parseConsentContent(int eventType, XmlPullParser xpp, Consent res) throws XmlPullParserException, IOException, FHIRFormatError { 5591 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5592 res.setIdentifier(parseIdentifier(xpp)); 5593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5594 res.setStatusElement(parseEnumeration(xpp, Consent.ConsentState.NULL, new Consent.ConsentStateEnumFactory())); 5595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 5596 res.getCategory().add(parseCodeableConcept(xpp)); 5597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 5598 res.setPatient(parseReference(xpp)); 5599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5600 res.setPeriod(parsePeriod(xpp)); 5601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 5602 res.setDateTimeElement(parseDateTime(xpp)); 5603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("consentingParty")) { 5604 res.getConsentingParty().add(parseReference(xpp)); 5605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 5606 res.getActor().add(parseConsentConsentActorComponent(xpp, res)); 5607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 5608 res.getAction().add(parseCodeableConcept(xpp)); 5609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 5610 res.getOrganization().add(parseReference(xpp)); 5611 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 5612 res.setSource(parseType("source", xpp)); 5613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 5614 res.getPolicy().add(parseConsentConsentPolicyComponent(xpp, res)); 5615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policyRule")) { 5616 res.setPolicyRuleElement(parseUri(xpp)); 5617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 5618 res.getSecurityLabel().add(parseCoding(xpp)); 5619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5620 res.getPurpose().add(parseCoding(xpp)); 5621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataPeriod")) { 5622 res.setDataPeriod(parsePeriod(xpp)); 5623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 5624 res.getData().add(parseConsentConsentDataComponent(xpp, res)); 5625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("except")) { 5626 res.getExcept().add(parseConsentExceptComponent(xpp, res)); 5627 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5628 return false; 5629 return true; 5630 } 5631 5632 protected Consent.ConsentActorComponent parseConsentConsentActorComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5633 Consent.ConsentActorComponent res = new Consent.ConsentActorComponent(); 5634 parseBackboneAttributes(xpp, res); 5635 next(xpp); 5636 int eventType = nextNoWhitespace(xpp); 5637 while (eventType != XmlPullParser.END_TAG) { 5638 if (!parseConsentConsentActorComponentContent(eventType, xpp, owner, res)) 5639 unknownContent(xpp); 5640 eventType = nextNoWhitespace(xpp); 5641 } 5642 next(xpp); 5643 parseElementClose(res); 5644 return res; 5645 } 5646 5647 protected boolean parseConsentConsentActorComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ConsentActorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5648 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 5649 res.setRole(parseCodeableConcept(xpp)); 5650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 5651 res.setReference(parseReference(xpp)); 5652 } else if (!parseBackboneContent(eventType, xpp, res)) 5653 return false; 5654 return true; 5655 } 5656 5657 protected Consent.ConsentPolicyComponent parseConsentConsentPolicyComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5658 Consent.ConsentPolicyComponent res = new Consent.ConsentPolicyComponent(); 5659 parseBackboneAttributes(xpp, res); 5660 next(xpp); 5661 int eventType = nextNoWhitespace(xpp); 5662 while (eventType != XmlPullParser.END_TAG) { 5663 if (!parseConsentConsentPolicyComponentContent(eventType, xpp, owner, res)) 5664 unknownContent(xpp); 5665 eventType = nextNoWhitespace(xpp); 5666 } 5667 next(xpp); 5668 parseElementClose(res); 5669 return res; 5670 } 5671 5672 protected boolean parseConsentConsentPolicyComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ConsentPolicyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5673 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 5674 res.setAuthorityElement(parseUri(xpp)); 5675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 5676 res.setUriElement(parseUri(xpp)); 5677 } else if (!parseBackboneContent(eventType, xpp, res)) 5678 return false; 5679 return true; 5680 } 5681 5682 protected Consent.ConsentDataComponent parseConsentConsentDataComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5683 Consent.ConsentDataComponent res = new Consent.ConsentDataComponent(); 5684 parseBackboneAttributes(xpp, res); 5685 next(xpp); 5686 int eventType = nextNoWhitespace(xpp); 5687 while (eventType != XmlPullParser.END_TAG) { 5688 if (!parseConsentConsentDataComponentContent(eventType, xpp, owner, res)) 5689 unknownContent(xpp); 5690 eventType = nextNoWhitespace(xpp); 5691 } 5692 next(xpp); 5693 parseElementClose(res); 5694 return res; 5695 } 5696 5697 protected boolean parseConsentConsentDataComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ConsentDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5698 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaning")) { 5699 res.setMeaningElement(parseEnumeration(xpp, Consent.ConsentDataMeaning.NULL, new Consent.ConsentDataMeaningEnumFactory())); 5700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 5701 res.setReference(parseReference(xpp)); 5702 } else if (!parseBackboneContent(eventType, xpp, res)) 5703 return false; 5704 return true; 5705 } 5706 5707 protected Consent.ExceptComponent parseConsentExceptComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5708 Consent.ExceptComponent res = new Consent.ExceptComponent(); 5709 parseBackboneAttributes(xpp, res); 5710 next(xpp); 5711 int eventType = nextNoWhitespace(xpp); 5712 while (eventType != XmlPullParser.END_TAG) { 5713 if (!parseConsentExceptComponentContent(eventType, xpp, owner, res)) 5714 unknownContent(xpp); 5715 eventType = nextNoWhitespace(xpp); 5716 } 5717 next(xpp); 5718 parseElementClose(res); 5719 return res; 5720 } 5721 5722 protected boolean parseConsentExceptComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ExceptComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5723 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5724 res.setTypeElement(parseEnumeration(xpp, Consent.ConsentExceptType.NULL, new Consent.ConsentExceptTypeEnumFactory())); 5725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 5726 res.setPeriod(parsePeriod(xpp)); 5727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 5728 res.getActor().add(parseConsentExceptActorComponent(xpp, owner)); 5729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 5730 res.getAction().add(parseCodeableConcept(xpp)); 5731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 5732 res.getSecurityLabel().add(parseCoding(xpp)); 5733 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 5734 res.getPurpose().add(parseCoding(xpp)); 5735 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 5736 res.getClass_().add(parseCoding(xpp)); 5737 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 5738 res.getCode().add(parseCoding(xpp)); 5739 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataPeriod")) { 5740 res.setDataPeriod(parsePeriod(xpp)); 5741 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("data")) { 5742 res.getData().add(parseConsentExceptDataComponent(xpp, owner)); 5743 } else if (!parseBackboneContent(eventType, xpp, res)) 5744 return false; 5745 return true; 5746 } 5747 5748 protected Consent.ExceptActorComponent parseConsentExceptActorComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5749 Consent.ExceptActorComponent res = new Consent.ExceptActorComponent(); 5750 parseBackboneAttributes(xpp, res); 5751 next(xpp); 5752 int eventType = nextNoWhitespace(xpp); 5753 while (eventType != XmlPullParser.END_TAG) { 5754 if (!parseConsentExceptActorComponentContent(eventType, xpp, owner, res)) 5755 unknownContent(xpp); 5756 eventType = nextNoWhitespace(xpp); 5757 } 5758 next(xpp); 5759 parseElementClose(res); 5760 return res; 5761 } 5762 5763 protected boolean parseConsentExceptActorComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ExceptActorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5764 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 5765 res.setRole(parseCodeableConcept(xpp)); 5766 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 5767 res.setReference(parseReference(xpp)); 5768 } else if (!parseBackboneContent(eventType, xpp, res)) 5769 return false; 5770 return true; 5771 } 5772 5773 protected Consent.ExceptDataComponent parseConsentExceptDataComponent(XmlPullParser xpp, Consent owner) throws XmlPullParserException, IOException, FHIRFormatError { 5774 Consent.ExceptDataComponent res = new Consent.ExceptDataComponent(); 5775 parseBackboneAttributes(xpp, res); 5776 next(xpp); 5777 int eventType = nextNoWhitespace(xpp); 5778 while (eventType != XmlPullParser.END_TAG) { 5779 if (!parseConsentExceptDataComponentContent(eventType, xpp, owner, res)) 5780 unknownContent(xpp); 5781 eventType = nextNoWhitespace(xpp); 5782 } 5783 next(xpp); 5784 parseElementClose(res); 5785 return res; 5786 } 5787 5788 protected boolean parseConsentExceptDataComponentContent(int eventType, XmlPullParser xpp, Consent owner, Consent.ExceptDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5789 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("meaning")) { 5790 res.setMeaningElement(parseEnumeration(xpp, Consent.ConsentDataMeaning.NULL, new Consent.ConsentDataMeaningEnumFactory())); 5791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 5792 res.setReference(parseReference(xpp)); 5793 } else if (!parseBackboneContent(eventType, xpp, res)) 5794 return false; 5795 return true; 5796 } 5797 5798 protected Contract parseContract(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 5799 Contract res = new Contract(); 5800 parseDomainResourceAttributes(xpp, res); 5801 next(xpp); 5802 int eventType = nextNoWhitespace(xpp); 5803 while (eventType != XmlPullParser.END_TAG) { 5804 if (!parseContractContent(eventType, xpp, res)) 5805 unknownContent(xpp); 5806 eventType = nextNoWhitespace(xpp); 5807 } 5808 next(xpp); 5809 parseElementClose(res); 5810 return res; 5811 } 5812 5813 protected boolean parseContractContent(int eventType, XmlPullParser xpp, Contract res) throws XmlPullParserException, IOException, FHIRFormatError { 5814 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5815 res.setIdentifier(parseIdentifier(xpp)); 5816 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 5817 res.setStatusElement(parseEnumeration(xpp, Contract.ContractStatus.NULL, new Contract.ContractStatusEnumFactory())); 5818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 5819 res.setIssuedElement(parseDateTime(xpp)); 5820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 5821 res.setApplies(parsePeriod(xpp)); 5822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 5823 res.getSubject().add(parseReference(xpp)); 5824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 5825 res.getTopic().add(parseReference(xpp)); 5826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 5827 res.getAuthority().add(parseReference(xpp)); 5828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("domain")) { 5829 res.getDomain().add(parseReference(xpp)); 5830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5831 res.setType(parseCodeableConcept(xpp)); 5832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 5833 res.getSubType().add(parseCodeableConcept(xpp)); 5834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 5835 res.getAction().add(parseCodeableConcept(xpp)); 5836 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionReason")) { 5837 res.getActionReason().add(parseCodeableConcept(xpp)); 5838 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("decisionType")) { 5839 res.setDecisionType(parseCodeableConcept(xpp)); 5840 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentDerivative")) { 5841 res.setContentDerivative(parseCodeableConcept(xpp)); 5842 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 5843 res.getSecurityLabel().add(parseCoding(xpp)); 5844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 5845 res.getAgent().add(parseContractAgentComponent(xpp, res)); 5846 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signer")) { 5847 res.getSigner().add(parseContractSignatoryComponent(xpp, res)); 5848 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valuedItem")) { 5849 res.getValuedItem().add(parseContractValuedItemComponent(xpp, res)); 5850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 5851 res.getTerm().add(parseContractTermComponent(xpp, res)); 5852 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "binding")) { 5853 res.setBinding(parseType("binding", xpp)); 5854 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("friendly")) { 5855 res.getFriendly().add(parseContractFriendlyLanguageComponent(xpp, res)); 5856 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("legal")) { 5857 res.getLegal().add(parseContractLegalLanguageComponent(xpp, res)); 5858 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 5859 res.getRule().add(parseContractComputableLanguageComponent(xpp, res)); 5860 } else if (!parseDomainResourceContent(eventType, xpp, res)) 5861 return false; 5862 return true; 5863 } 5864 5865 protected Contract.AgentComponent parseContractAgentComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 5866 Contract.AgentComponent res = new Contract.AgentComponent(); 5867 parseBackboneAttributes(xpp, res); 5868 next(xpp); 5869 int eventType = nextNoWhitespace(xpp); 5870 while (eventType != XmlPullParser.END_TAG) { 5871 if (!parseContractAgentComponentContent(eventType, xpp, owner, res)) 5872 unknownContent(xpp); 5873 eventType = nextNoWhitespace(xpp); 5874 } 5875 next(xpp); 5876 parseElementClose(res); 5877 return res; 5878 } 5879 5880 protected boolean parseContractAgentComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.AgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5881 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 5882 res.setActor(parseReference(xpp)); 5883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 5884 res.getRole().add(parseCodeableConcept(xpp)); 5885 } else if (!parseBackboneContent(eventType, xpp, res)) 5886 return false; 5887 return true; 5888 } 5889 5890 protected Contract.SignatoryComponent parseContractSignatoryComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 5891 Contract.SignatoryComponent res = new Contract.SignatoryComponent(); 5892 parseBackboneAttributes(xpp, res); 5893 next(xpp); 5894 int eventType = nextNoWhitespace(xpp); 5895 while (eventType != XmlPullParser.END_TAG) { 5896 if (!parseContractSignatoryComponentContent(eventType, xpp, owner, res)) 5897 unknownContent(xpp); 5898 eventType = nextNoWhitespace(xpp); 5899 } 5900 next(xpp); 5901 parseElementClose(res); 5902 return res; 5903 } 5904 5905 protected boolean parseContractSignatoryComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.SignatoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5906 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5907 res.setType(parseCoding(xpp)); 5908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 5909 res.setParty(parseReference(xpp)); 5910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 5911 res.getSignature().add(parseSignature(xpp)); 5912 } else if (!parseBackboneContent(eventType, xpp, res)) 5913 return false; 5914 return true; 5915 } 5916 5917 protected Contract.ValuedItemComponent parseContractValuedItemComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 5918 Contract.ValuedItemComponent res = new Contract.ValuedItemComponent(); 5919 parseBackboneAttributes(xpp, res); 5920 next(xpp); 5921 int eventType = nextNoWhitespace(xpp); 5922 while (eventType != XmlPullParser.END_TAG) { 5923 if (!parseContractValuedItemComponentContent(eventType, xpp, owner, res)) 5924 unknownContent(xpp); 5925 eventType = nextNoWhitespace(xpp); 5926 } 5927 next(xpp); 5928 parseElementClose(res); 5929 return res; 5930 } 5931 5932 protected boolean parseContractValuedItemComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.ValuedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5933 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "entity")) { 5934 res.setEntity(parseType("entity", xpp)); 5935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5936 res.setIdentifier(parseIdentifier(xpp)); 5937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveTime")) { 5938 res.setEffectiveTimeElement(parseDateTime(xpp)); 5939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 5940 res.setQuantity(parseSimpleQuantity(xpp)); 5941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 5942 res.setUnitPrice(parseMoney(xpp)); 5943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 5944 res.setFactorElement(parseDecimal(xpp)); 5945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 5946 res.setPointsElement(parseDecimal(xpp)); 5947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 5948 res.setNet(parseMoney(xpp)); 5949 } else if (!parseBackboneContent(eventType, xpp, res)) 5950 return false; 5951 return true; 5952 } 5953 5954 protected Contract.TermComponent parseContractTermComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 5955 Contract.TermComponent res = new Contract.TermComponent(); 5956 parseBackboneAttributes(xpp, res); 5957 next(xpp); 5958 int eventType = nextNoWhitespace(xpp); 5959 while (eventType != XmlPullParser.END_TAG) { 5960 if (!parseContractTermComponentContent(eventType, xpp, owner, res)) 5961 unknownContent(xpp); 5962 eventType = nextNoWhitespace(xpp); 5963 } 5964 next(xpp); 5965 parseElementClose(res); 5966 return res; 5967 } 5968 5969 protected boolean parseContractTermComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.TermComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 5970 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 5971 res.setIdentifier(parseIdentifier(xpp)); 5972 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 5973 res.setIssuedElement(parseDateTime(xpp)); 5974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("applies")) { 5975 res.setApplies(parsePeriod(xpp)); 5976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 5977 res.setType(parseCodeableConcept(xpp)); 5978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 5979 res.setSubType(parseCodeableConcept(xpp)); 5980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 5981 res.getTopic().add(parseReference(xpp)); 5982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 5983 res.getAction().add(parseCodeableConcept(xpp)); 5984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionReason")) { 5985 res.getActionReason().add(parseCodeableConcept(xpp)); 5986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 5987 res.getSecurityLabel().add(parseCoding(xpp)); 5988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 5989 res.getAgent().add(parseContractTermAgentComponent(xpp, owner)); 5990 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 5991 res.setTextElement(parseString(xpp)); 5992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valuedItem")) { 5993 res.getValuedItem().add(parseContractTermValuedItemComponent(xpp, owner)); 5994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 5995 res.getGroup().add(parseContractTermComponent(xpp, owner)); 5996 } else if (!parseBackboneContent(eventType, xpp, res)) 5997 return false; 5998 return true; 5999 } 6000 6001 protected Contract.TermAgentComponent parseContractTermAgentComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6002 Contract.TermAgentComponent res = new Contract.TermAgentComponent(); 6003 parseBackboneAttributes(xpp, res); 6004 next(xpp); 6005 int eventType = nextNoWhitespace(xpp); 6006 while (eventType != XmlPullParser.END_TAG) { 6007 if (!parseContractTermAgentComponentContent(eventType, xpp, owner, res)) 6008 unknownContent(xpp); 6009 eventType = nextNoWhitespace(xpp); 6010 } 6011 next(xpp); 6012 parseElementClose(res); 6013 return res; 6014 } 6015 6016 protected boolean parseContractTermAgentComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.TermAgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6017 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 6018 res.setActor(parseReference(xpp)); 6019 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 6020 res.getRole().add(parseCodeableConcept(xpp)); 6021 } else if (!parseBackboneContent(eventType, xpp, res)) 6022 return false; 6023 return true; 6024 } 6025 6026 protected Contract.TermValuedItemComponent parseContractTermValuedItemComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6027 Contract.TermValuedItemComponent res = new Contract.TermValuedItemComponent(); 6028 parseBackboneAttributes(xpp, res); 6029 next(xpp); 6030 int eventType = nextNoWhitespace(xpp); 6031 while (eventType != XmlPullParser.END_TAG) { 6032 if (!parseContractTermValuedItemComponentContent(eventType, xpp, owner, res)) 6033 unknownContent(xpp); 6034 eventType = nextNoWhitespace(xpp); 6035 } 6036 next(xpp); 6037 parseElementClose(res); 6038 return res; 6039 } 6040 6041 protected boolean parseContractTermValuedItemComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.TermValuedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6042 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "entity")) { 6043 res.setEntity(parseType("entity", xpp)); 6044 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6045 res.setIdentifier(parseIdentifier(xpp)); 6046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveTime")) { 6047 res.setEffectiveTimeElement(parseDateTime(xpp)); 6048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 6049 res.setQuantity(parseSimpleQuantity(xpp)); 6050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 6051 res.setUnitPrice(parseMoney(xpp)); 6052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 6053 res.setFactorElement(parseDecimal(xpp)); 6054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("points")) { 6055 res.setPointsElement(parseDecimal(xpp)); 6056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 6057 res.setNet(parseMoney(xpp)); 6058 } else if (!parseBackboneContent(eventType, xpp, res)) 6059 return false; 6060 return true; 6061 } 6062 6063 protected Contract.FriendlyLanguageComponent parseContractFriendlyLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6064 Contract.FriendlyLanguageComponent res = new Contract.FriendlyLanguageComponent(); 6065 parseBackboneAttributes(xpp, res); 6066 next(xpp); 6067 int eventType = nextNoWhitespace(xpp); 6068 while (eventType != XmlPullParser.END_TAG) { 6069 if (!parseContractFriendlyLanguageComponentContent(eventType, xpp, owner, res)) 6070 unknownContent(xpp); 6071 eventType = nextNoWhitespace(xpp); 6072 } 6073 next(xpp); 6074 parseElementClose(res); 6075 return res; 6076 } 6077 6078 protected boolean parseContractFriendlyLanguageComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.FriendlyLanguageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6079 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 6080 res.setContent(parseType("content", xpp)); 6081 } else if (!parseBackboneContent(eventType, xpp, res)) 6082 return false; 6083 return true; 6084 } 6085 6086 protected Contract.LegalLanguageComponent parseContractLegalLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6087 Contract.LegalLanguageComponent res = new Contract.LegalLanguageComponent(); 6088 parseBackboneAttributes(xpp, res); 6089 next(xpp); 6090 int eventType = nextNoWhitespace(xpp); 6091 while (eventType != XmlPullParser.END_TAG) { 6092 if (!parseContractLegalLanguageComponentContent(eventType, xpp, owner, res)) 6093 unknownContent(xpp); 6094 eventType = nextNoWhitespace(xpp); 6095 } 6096 next(xpp); 6097 parseElementClose(res); 6098 return res; 6099 } 6100 6101 protected boolean parseContractLegalLanguageComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.LegalLanguageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6102 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 6103 res.setContent(parseType("content", xpp)); 6104 } else if (!parseBackboneContent(eventType, xpp, res)) 6105 return false; 6106 return true; 6107 } 6108 6109 protected Contract.ComputableLanguageComponent parseContractComputableLanguageComponent(XmlPullParser xpp, Contract owner) throws XmlPullParserException, IOException, FHIRFormatError { 6110 Contract.ComputableLanguageComponent res = new Contract.ComputableLanguageComponent(); 6111 parseBackboneAttributes(xpp, res); 6112 next(xpp); 6113 int eventType = nextNoWhitespace(xpp); 6114 while (eventType != XmlPullParser.END_TAG) { 6115 if (!parseContractComputableLanguageComponentContent(eventType, xpp, owner, res)) 6116 unknownContent(xpp); 6117 eventType = nextNoWhitespace(xpp); 6118 } 6119 next(xpp); 6120 parseElementClose(res); 6121 return res; 6122 } 6123 6124 protected boolean parseContractComputableLanguageComponentContent(int eventType, XmlPullParser xpp, Contract owner, Contract.ComputableLanguageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6125 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "content")) { 6126 res.setContent(parseType("content", xpp)); 6127 } else if (!parseBackboneContent(eventType, xpp, res)) 6128 return false; 6129 return true; 6130 } 6131 6132 protected Coverage parseCoverage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6133 Coverage res = new Coverage(); 6134 parseDomainResourceAttributes(xpp, res); 6135 next(xpp); 6136 int eventType = nextNoWhitespace(xpp); 6137 while (eventType != XmlPullParser.END_TAG) { 6138 if (!parseCoverageContent(eventType, xpp, res)) 6139 unknownContent(xpp); 6140 eventType = nextNoWhitespace(xpp); 6141 } 6142 next(xpp); 6143 parseElementClose(res); 6144 return res; 6145 } 6146 6147 protected boolean parseCoverageContent(int eventType, XmlPullParser xpp, Coverage res) throws XmlPullParserException, IOException, FHIRFormatError { 6148 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6149 res.getIdentifier().add(parseIdentifier(xpp)); 6150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6151 res.setStatusElement(parseEnumeration(xpp, Coverage.CoverageStatus.NULL, new Coverage.CoverageStatusEnumFactory())); 6152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6153 res.setType(parseCodeableConcept(xpp)); 6154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policyHolder")) { 6155 res.setPolicyHolder(parseReference(xpp)); 6156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscriber")) { 6157 res.setSubscriber(parseReference(xpp)); 6158 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscriberId")) { 6159 res.setSubscriberIdElement(parseString(xpp)); 6160 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("beneficiary")) { 6161 res.setBeneficiary(parseReference(xpp)); 6162 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 6163 res.setRelationship(parseCodeableConcept(xpp)); 6164 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 6165 res.setPeriod(parsePeriod(xpp)); 6166 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payor")) { 6167 res.getPayor().add(parseReference(xpp)); 6168 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("grouping")) { 6169 res.setGrouping(parseCoverageGroupComponent(xpp, res)); 6170 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependent")) { 6171 res.setDependentElement(parseString(xpp)); 6172 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 6173 res.setSequenceElement(parseString(xpp)); 6174 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("order")) { 6175 res.setOrderElement(parsePositiveInt(xpp)); 6176 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 6177 res.setNetworkElement(parseString(xpp)); 6178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contract")) { 6179 res.getContract().add(parseReference(xpp)); 6180 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6181 return false; 6182 return true; 6183 } 6184 6185 protected Coverage.GroupComponent parseCoverageGroupComponent(XmlPullParser xpp, Coverage owner) throws XmlPullParserException, IOException, FHIRFormatError { 6186 Coverage.GroupComponent res = new Coverage.GroupComponent(); 6187 parseBackboneAttributes(xpp, res); 6188 next(xpp); 6189 int eventType = nextNoWhitespace(xpp); 6190 while (eventType != XmlPullParser.END_TAG) { 6191 if (!parseCoverageGroupComponentContent(eventType, xpp, owner, res)) 6192 unknownContent(xpp); 6193 eventType = nextNoWhitespace(xpp); 6194 } 6195 next(xpp); 6196 parseElementClose(res); 6197 return res; 6198 } 6199 6200 protected boolean parseCoverageGroupComponentContent(int eventType, XmlPullParser xpp, Coverage owner, Coverage.GroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6201 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 6202 res.setGroupElement(parseString(xpp)); 6203 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupDisplay")) { 6204 res.setGroupDisplayElement(parseString(xpp)); 6205 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subGroup")) { 6206 res.setSubGroupElement(parseString(xpp)); 6207 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subGroupDisplay")) { 6208 res.setSubGroupDisplayElement(parseString(xpp)); 6209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("plan")) { 6210 res.setPlanElement(parseString(xpp)); 6211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("planDisplay")) { 6212 res.setPlanDisplayElement(parseString(xpp)); 6213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subPlan")) { 6214 res.setSubPlanElement(parseString(xpp)); 6215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subPlanDisplay")) { 6216 res.setSubPlanDisplayElement(parseString(xpp)); 6217 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 6218 res.setClass_Element(parseString(xpp)); 6219 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classDisplay")) { 6220 res.setClassDisplayElement(parseString(xpp)); 6221 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subClass")) { 6222 res.setSubClassElement(parseString(xpp)); 6223 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subClassDisplay")) { 6224 res.setSubClassDisplayElement(parseString(xpp)); 6225 } else if (!parseBackboneContent(eventType, xpp, res)) 6226 return false; 6227 return true; 6228 } 6229 6230 protected DataElement parseDataElement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6231 DataElement res = new DataElement(); 6232 parseDomainResourceAttributes(xpp, res); 6233 next(xpp); 6234 int eventType = nextNoWhitespace(xpp); 6235 while (eventType != XmlPullParser.END_TAG) { 6236 if (!parseDataElementContent(eventType, xpp, res)) 6237 unknownContent(xpp); 6238 eventType = nextNoWhitespace(xpp); 6239 } 6240 next(xpp); 6241 parseElementClose(res); 6242 return res; 6243 } 6244 6245 protected boolean parseDataElementContent(int eventType, XmlPullParser xpp, DataElement res) throws XmlPullParserException, IOException, FHIRFormatError { 6246 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 6247 res.setUrlElement(parseUri(xpp)); 6248 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6249 res.getIdentifier().add(parseIdentifier(xpp)); 6250 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 6251 res.setVersionElement(parseString(xpp)); 6252 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6253 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 6254 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 6255 res.setExperimentalElement(parseBoolean(xpp)); 6256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6257 res.setDateElement(parseDateTime(xpp)); 6258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 6259 res.setPublisherElement(parseString(xpp)); 6260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6261 res.setNameElement(parseString(xpp)); 6262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 6263 res.setTitleElement(parseString(xpp)); 6264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 6265 res.getContact().add(parseContactDetail(xpp)); 6266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 6267 res.getUseContext().add(parseUsageContext(xpp)); 6268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 6269 res.getJurisdiction().add(parseCodeableConcept(xpp)); 6270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 6271 res.setCopyrightElement(parseMarkdown(xpp)); 6272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stringency")) { 6273 res.setStringencyElement(parseEnumeration(xpp, DataElement.DataElementStringency.NULL, new DataElement.DataElementStringencyEnumFactory())); 6274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 6275 res.getMapping().add(parseDataElementDataElementMappingComponent(xpp, res)); 6276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 6277 res.getElement().add(parseElementDefinition(xpp)); 6278 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6279 return false; 6280 return true; 6281 } 6282 6283 protected DataElement.DataElementMappingComponent parseDataElementDataElementMappingComponent(XmlPullParser xpp, DataElement owner) throws XmlPullParserException, IOException, FHIRFormatError { 6284 DataElement.DataElementMappingComponent res = new DataElement.DataElementMappingComponent(); 6285 parseBackboneAttributes(xpp, res); 6286 next(xpp); 6287 int eventType = nextNoWhitespace(xpp); 6288 while (eventType != XmlPullParser.END_TAG) { 6289 if (!parseDataElementDataElementMappingComponentContent(eventType, xpp, owner, res)) 6290 unknownContent(xpp); 6291 eventType = nextNoWhitespace(xpp); 6292 } 6293 next(xpp); 6294 parseElementClose(res); 6295 return res; 6296 } 6297 6298 protected boolean parseDataElementDataElementMappingComponentContent(int eventType, XmlPullParser xpp, DataElement owner, DataElement.DataElementMappingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6299 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 6300 res.setIdentityElement(parseId(xpp)); 6301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 6302 res.setUriElement(parseUri(xpp)); 6303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6304 res.setNameElement(parseString(xpp)); 6305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 6306 res.setCommentElement(parseString(xpp)); 6307 } else if (!parseBackboneContent(eventType, xpp, res)) 6308 return false; 6309 return true; 6310 } 6311 6312 protected DetectedIssue parseDetectedIssue(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6313 DetectedIssue res = new DetectedIssue(); 6314 parseDomainResourceAttributes(xpp, res); 6315 next(xpp); 6316 int eventType = nextNoWhitespace(xpp); 6317 while (eventType != XmlPullParser.END_TAG) { 6318 if (!parseDetectedIssueContent(eventType, xpp, res)) 6319 unknownContent(xpp); 6320 eventType = nextNoWhitespace(xpp); 6321 } 6322 next(xpp); 6323 parseElementClose(res); 6324 return res; 6325 } 6326 6327 protected boolean parseDetectedIssueContent(int eventType, XmlPullParser xpp, DetectedIssue res) throws XmlPullParserException, IOException, FHIRFormatError { 6328 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6329 res.setIdentifier(parseIdentifier(xpp)); 6330 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6331 res.setStatusElement(parseEnumeration(xpp, DetectedIssue.DetectedIssueStatus.NULL, new DetectedIssue.DetectedIssueStatusEnumFactory())); 6332 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6333 res.setCategory(parseCodeableConcept(xpp)); 6334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 6335 res.setSeverityElement(parseEnumeration(xpp, DetectedIssue.DetectedIssueSeverity.NULL, new DetectedIssue.DetectedIssueSeverityEnumFactory())); 6336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6337 res.setPatient(parseReference(xpp)); 6338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6339 res.setDateElement(parseDateTime(xpp)); 6340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6341 res.setAuthor(parseReference(xpp)); 6342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("implicated")) { 6343 res.getImplicated().add(parseReference(xpp)); 6344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 6345 res.setDetailElement(parseString(xpp)); 6346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 6347 res.setReferenceElement(parseUri(xpp)); 6348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 6349 res.getMitigation().add(parseDetectedIssueDetectedIssueMitigationComponent(xpp, res)); 6350 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6351 return false; 6352 return true; 6353 } 6354 6355 protected DetectedIssue.DetectedIssueMitigationComponent parseDetectedIssueDetectedIssueMitigationComponent(XmlPullParser xpp, DetectedIssue owner) throws XmlPullParserException, IOException, FHIRFormatError { 6356 DetectedIssue.DetectedIssueMitigationComponent res = new DetectedIssue.DetectedIssueMitigationComponent(); 6357 parseBackboneAttributes(xpp, res); 6358 next(xpp); 6359 int eventType = nextNoWhitespace(xpp); 6360 while (eventType != XmlPullParser.END_TAG) { 6361 if (!parseDetectedIssueDetectedIssueMitigationComponentContent(eventType, xpp, owner, res)) 6362 unknownContent(xpp); 6363 eventType = nextNoWhitespace(xpp); 6364 } 6365 next(xpp); 6366 parseElementClose(res); 6367 return res; 6368 } 6369 6370 protected boolean parseDetectedIssueDetectedIssueMitigationComponentContent(int eventType, XmlPullParser xpp, DetectedIssue owner, DetectedIssue.DetectedIssueMitigationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6371 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 6372 res.setAction(parseCodeableConcept(xpp)); 6373 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 6374 res.setDateElement(parseDateTime(xpp)); 6375 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6376 res.setAuthor(parseReference(xpp)); 6377 } else if (!parseBackboneContent(eventType, xpp, res)) 6378 return false; 6379 return true; 6380 } 6381 6382 protected Device parseDevice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6383 Device res = new Device(); 6384 parseDomainResourceAttributes(xpp, res); 6385 next(xpp); 6386 int eventType = nextNoWhitespace(xpp); 6387 while (eventType != XmlPullParser.END_TAG) { 6388 if (!parseDeviceContent(eventType, xpp, res)) 6389 unknownContent(xpp); 6390 eventType = nextNoWhitespace(xpp); 6391 } 6392 next(xpp); 6393 parseElementClose(res); 6394 return res; 6395 } 6396 6397 protected boolean parseDeviceContent(int eventType, XmlPullParser xpp, Device res) throws XmlPullParserException, IOException, FHIRFormatError { 6398 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6399 res.getIdentifier().add(parseIdentifier(xpp)); 6400 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 6401 res.setUdi(parseDeviceDeviceUdiComponent(xpp, res)); 6402 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6403 res.setStatusElement(parseEnumeration(xpp, Device.FHIRDeviceStatus.NULL, new Device.FHIRDeviceStatusEnumFactory())); 6404 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6405 res.setType(parseCodeableConcept(xpp)); 6406 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 6407 res.setLotNumberElement(parseString(xpp)); 6408 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 6409 res.setManufacturerElement(parseString(xpp)); 6410 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufactureDate")) { 6411 res.setManufactureDateElement(parseDateTime(xpp)); 6412 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 6413 res.setExpirationDateElement(parseDateTime(xpp)); 6414 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("model")) { 6415 res.setModelElement(parseString(xpp)); 6416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 6417 res.setVersionElement(parseString(xpp)); 6418 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 6419 res.setPatient(parseReference(xpp)); 6420 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 6421 res.setOwner(parseReference(xpp)); 6422 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 6423 res.getContact().add(parseContactPoint(xpp)); 6424 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 6425 res.setLocation(parseReference(xpp)); 6426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 6427 res.setUrlElement(parseUri(xpp)); 6428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6429 res.getNote().add(parseAnnotation(xpp)); 6430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("safety")) { 6431 res.getSafety().add(parseCodeableConcept(xpp)); 6432 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6433 return false; 6434 return true; 6435 } 6436 6437 protected Device.DeviceUdiComponent parseDeviceDeviceUdiComponent(XmlPullParser xpp, Device owner) throws XmlPullParserException, IOException, FHIRFormatError { 6438 Device.DeviceUdiComponent res = new Device.DeviceUdiComponent(); 6439 parseBackboneAttributes(xpp, res); 6440 next(xpp); 6441 int eventType = nextNoWhitespace(xpp); 6442 while (eventType != XmlPullParser.END_TAG) { 6443 if (!parseDeviceDeviceUdiComponentContent(eventType, xpp, owner, res)) 6444 unknownContent(xpp); 6445 eventType = nextNoWhitespace(xpp); 6446 } 6447 next(xpp); 6448 parseElementClose(res); 6449 return res; 6450 } 6451 6452 protected boolean parseDeviceDeviceUdiComponentContent(int eventType, XmlPullParser xpp, Device owner, Device.DeviceUdiComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6453 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deviceIdentifier")) { 6454 res.setDeviceIdentifierElement(parseString(xpp)); 6455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 6456 res.setNameElement(parseString(xpp)); 6457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 6458 res.setJurisdictionElement(parseUri(xpp)); 6459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("carrierHRF")) { 6460 res.setCarrierHRFElement(parseString(xpp)); 6461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("carrierAIDC")) { 6462 res.setCarrierAIDCElement(parseBase64Binary(xpp)); 6463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 6464 res.setIssuerElement(parseUri(xpp)); 6465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entryType")) { 6466 res.setEntryTypeElement(parseEnumeration(xpp, Device.UDIEntryType.NULL, new Device.UDIEntryTypeEnumFactory())); 6467 } else if (!parseBackboneContent(eventType, xpp, res)) 6468 return false; 6469 return true; 6470 } 6471 6472 protected DeviceComponent parseDeviceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6473 DeviceComponent res = new DeviceComponent(); 6474 parseDomainResourceAttributes(xpp, res); 6475 next(xpp); 6476 int eventType = nextNoWhitespace(xpp); 6477 while (eventType != XmlPullParser.END_TAG) { 6478 if (!parseDeviceComponentContent(eventType, xpp, res)) 6479 unknownContent(xpp); 6480 eventType = nextNoWhitespace(xpp); 6481 } 6482 next(xpp); 6483 parseElementClose(res); 6484 return res; 6485 } 6486 6487 protected boolean parseDeviceComponentContent(int eventType, XmlPullParser xpp, DeviceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6488 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6489 res.setIdentifier(parseIdentifier(xpp)); 6490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6491 res.setType(parseCodeableConcept(xpp)); 6492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastSystemChange")) { 6493 res.setLastSystemChangeElement(parseInstant(xpp)); 6494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6495 res.setSource(parseReference(xpp)); 6496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 6497 res.setParent(parseReference(xpp)); 6498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 6499 res.getOperationalStatus().add(parseCodeableConcept(xpp)); 6500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameterGroup")) { 6501 res.setParameterGroup(parseCodeableConcept(xpp)); 6502 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPrinciple")) { 6503 res.setMeasurementPrincipleElement(parseEnumeration(xpp, DeviceComponent.MeasmntPrinciple.NULL, new DeviceComponent.MeasmntPrincipleEnumFactory())); 6504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productionSpecification")) { 6505 res.getProductionSpecification().add(parseDeviceComponentDeviceComponentProductionSpecificationComponent(xpp, res)); 6506 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("languageCode")) { 6507 res.setLanguageCode(parseCodeableConcept(xpp)); 6508 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6509 return false; 6510 return true; 6511 } 6512 6513 protected DeviceComponent.DeviceComponentProductionSpecificationComponent parseDeviceComponentDeviceComponentProductionSpecificationComponent(XmlPullParser xpp, DeviceComponent owner) throws XmlPullParserException, IOException, FHIRFormatError { 6514 DeviceComponent.DeviceComponentProductionSpecificationComponent res = new DeviceComponent.DeviceComponentProductionSpecificationComponent(); 6515 parseBackboneAttributes(xpp, res); 6516 next(xpp); 6517 int eventType = nextNoWhitespace(xpp); 6518 while (eventType != XmlPullParser.END_TAG) { 6519 if (!parseDeviceComponentDeviceComponentProductionSpecificationComponentContent(eventType, xpp, owner, res)) 6520 unknownContent(xpp); 6521 eventType = nextNoWhitespace(xpp); 6522 } 6523 next(xpp); 6524 parseElementClose(res); 6525 return res; 6526 } 6527 6528 protected boolean parseDeviceComponentDeviceComponentProductionSpecificationComponentContent(int eventType, XmlPullParser xpp, DeviceComponent owner, DeviceComponent.DeviceComponentProductionSpecificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6529 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specType")) { 6530 res.setSpecType(parseCodeableConcept(xpp)); 6531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("componentId")) { 6532 res.setComponentId(parseIdentifier(xpp)); 6533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productionSpec")) { 6534 res.setProductionSpecElement(parseString(xpp)); 6535 } else if (!parseBackboneContent(eventType, xpp, res)) 6536 return false; 6537 return true; 6538 } 6539 6540 protected DeviceMetric parseDeviceMetric(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6541 DeviceMetric res = new DeviceMetric(); 6542 parseDomainResourceAttributes(xpp, res); 6543 next(xpp); 6544 int eventType = nextNoWhitespace(xpp); 6545 while (eventType != XmlPullParser.END_TAG) { 6546 if (!parseDeviceMetricContent(eventType, xpp, res)) 6547 unknownContent(xpp); 6548 eventType = nextNoWhitespace(xpp); 6549 } 6550 next(xpp); 6551 parseElementClose(res); 6552 return res; 6553 } 6554 6555 protected boolean parseDeviceMetricContent(int eventType, XmlPullParser xpp, DeviceMetric res) throws XmlPullParserException, IOException, FHIRFormatError { 6556 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6557 res.setIdentifier(parseIdentifier(xpp)); 6558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6559 res.setType(parseCodeableConcept(xpp)); 6560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 6561 res.setUnit(parseCodeableConcept(xpp)); 6562 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6563 res.setSource(parseReference(xpp)); 6564 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 6565 res.setParent(parseReference(xpp)); 6566 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 6567 res.setOperationalStatusElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricOperationalStatus.NULL, new DeviceMetric.DeviceMetricOperationalStatusEnumFactory())); 6568 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 6569 res.setColorElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricColor.NULL, new DeviceMetric.DeviceMetricColorEnumFactory())); 6570 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6571 res.setCategoryElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCategory.NULL, new DeviceMetric.DeviceMetricCategoryEnumFactory())); 6572 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPeriod")) { 6573 res.setMeasurementPeriod(parseTiming(xpp)); 6574 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("calibration")) { 6575 res.getCalibration().add(parseDeviceMetricDeviceMetricCalibrationComponent(xpp, res)); 6576 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6577 return false; 6578 return true; 6579 } 6580 6581 protected DeviceMetric.DeviceMetricCalibrationComponent parseDeviceMetricDeviceMetricCalibrationComponent(XmlPullParser xpp, DeviceMetric owner) throws XmlPullParserException, IOException, FHIRFormatError { 6582 DeviceMetric.DeviceMetricCalibrationComponent res = new DeviceMetric.DeviceMetricCalibrationComponent(); 6583 parseBackboneAttributes(xpp, res); 6584 next(xpp); 6585 int eventType = nextNoWhitespace(xpp); 6586 while (eventType != XmlPullParser.END_TAG) { 6587 if (!parseDeviceMetricDeviceMetricCalibrationComponentContent(eventType, xpp, owner, res)) 6588 unknownContent(xpp); 6589 eventType = nextNoWhitespace(xpp); 6590 } 6591 next(xpp); 6592 parseElementClose(res); 6593 return res; 6594 } 6595 6596 protected boolean parseDeviceMetricDeviceMetricCalibrationComponentContent(int eventType, XmlPullParser xpp, DeviceMetric owner, DeviceMetric.DeviceMetricCalibrationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6597 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6598 res.setTypeElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationType.NULL, new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory())); 6599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("state")) { 6600 res.setStateElement(parseEnumeration(xpp, DeviceMetric.DeviceMetricCalibrationState.NULL, new DeviceMetric.DeviceMetricCalibrationStateEnumFactory())); 6601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("time")) { 6602 res.setTimeElement(parseInstant(xpp)); 6603 } else if (!parseBackboneContent(eventType, xpp, res)) 6604 return false; 6605 return true; 6606 } 6607 6608 protected DeviceRequest parseDeviceRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6609 DeviceRequest res = new DeviceRequest(); 6610 parseDomainResourceAttributes(xpp, res); 6611 next(xpp); 6612 int eventType = nextNoWhitespace(xpp); 6613 while (eventType != XmlPullParser.END_TAG) { 6614 if (!parseDeviceRequestContent(eventType, xpp, res)) 6615 unknownContent(xpp); 6616 eventType = nextNoWhitespace(xpp); 6617 } 6618 next(xpp); 6619 parseElementClose(res); 6620 return res; 6621 } 6622 6623 protected boolean parseDeviceRequestContent(int eventType, XmlPullParser xpp, DeviceRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 6624 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6625 res.getIdentifier().add(parseIdentifier(xpp)); 6626 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 6627 res.getDefinition().add(parseReference(xpp)); 6628 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 6629 res.getBasedOn().add(parseReference(xpp)); 6630 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorRequest")) { 6631 res.getPriorRequest().add(parseReference(xpp)); 6632 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 6633 res.setGroupIdentifier(parseIdentifier(xpp)); 6634 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6635 res.setStatusElement(parseEnumeration(xpp, DeviceRequest.DeviceRequestStatus.NULL, new DeviceRequest.DeviceRequestStatusEnumFactory())); 6636 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 6637 res.setIntent(parseCodeableConcept(xpp)); 6638 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 6639 res.setPriorityElement(parseEnumeration(xpp, DeviceRequest.RequestPriority.NULL, new DeviceRequest.RequestPriorityEnumFactory())); 6640 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "code")) { 6641 res.setCode(parseType("code", xpp)); 6642 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6643 res.setSubject(parseReference(xpp)); 6644 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 6645 res.setContext(parseReference(xpp)); 6646 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 6647 res.setOccurrence(parseType("occurrence", xpp)); 6648 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 6649 res.setAuthoredOnElement(parseDateTime(xpp)); 6650 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 6651 res.setRequester(parseDeviceRequestDeviceRequestRequesterComponent(xpp, res)); 6652 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 6653 res.setPerformerType(parseCodeableConcept(xpp)); 6654 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 6655 res.setPerformer(parseReference(xpp)); 6656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 6657 res.getReasonCode().add(parseCodeableConcept(xpp)); 6658 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 6659 res.getReasonReference().add(parseReference(xpp)); 6660 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 6661 res.getSupportingInfo().add(parseReference(xpp)); 6662 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6663 res.getNote().add(parseAnnotation(xpp)); 6664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 6665 res.getRelevantHistory().add(parseReference(xpp)); 6666 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6667 return false; 6668 return true; 6669 } 6670 6671 protected DeviceRequest.DeviceRequestRequesterComponent parseDeviceRequestDeviceRequestRequesterComponent(XmlPullParser xpp, DeviceRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 6672 DeviceRequest.DeviceRequestRequesterComponent res = new DeviceRequest.DeviceRequestRequesterComponent(); 6673 parseBackboneAttributes(xpp, res); 6674 next(xpp); 6675 int eventType = nextNoWhitespace(xpp); 6676 while (eventType != XmlPullParser.END_TAG) { 6677 if (!parseDeviceRequestDeviceRequestRequesterComponentContent(eventType, xpp, owner, res)) 6678 unknownContent(xpp); 6679 eventType = nextNoWhitespace(xpp); 6680 } 6681 next(xpp); 6682 parseElementClose(res); 6683 return res; 6684 } 6685 6686 protected boolean parseDeviceRequestDeviceRequestRequesterComponentContent(int eventType, XmlPullParser xpp, DeviceRequest owner, DeviceRequest.DeviceRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6687 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 6688 res.setAgent(parseReference(xpp)); 6689 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 6690 res.setOnBehalfOf(parseReference(xpp)); 6691 } else if (!parseBackboneContent(eventType, xpp, res)) 6692 return false; 6693 return true; 6694 } 6695 6696 protected DeviceUseStatement parseDeviceUseStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6697 DeviceUseStatement res = new DeviceUseStatement(); 6698 parseDomainResourceAttributes(xpp, res); 6699 next(xpp); 6700 int eventType = nextNoWhitespace(xpp); 6701 while (eventType != XmlPullParser.END_TAG) { 6702 if (!parseDeviceUseStatementContent(eventType, xpp, res)) 6703 unknownContent(xpp); 6704 eventType = nextNoWhitespace(xpp); 6705 } 6706 next(xpp); 6707 parseElementClose(res); 6708 return res; 6709 } 6710 6711 protected boolean parseDeviceUseStatementContent(int eventType, XmlPullParser xpp, DeviceUseStatement res) throws XmlPullParserException, IOException, FHIRFormatError { 6712 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6713 res.getIdentifier().add(parseIdentifier(xpp)); 6714 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6715 res.setStatusElement(parseEnumeration(xpp, DeviceUseStatement.DeviceUseStatementStatus.NULL, new DeviceUseStatement.DeviceUseStatementStatusEnumFactory())); 6716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6717 res.setSubject(parseReference(xpp)); 6718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenUsed")) { 6719 res.setWhenUsed(parsePeriod(xpp)); 6720 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 6721 res.setTiming(parseType("timing", xpp)); 6722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedOn")) { 6723 res.setRecordedOnElement(parseDateTime(xpp)); 6724 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6725 res.setSource(parseReference(xpp)); 6726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 6727 res.setDevice(parseReference(xpp)); 6728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { 6729 res.getIndication().add(parseCodeableConcept(xpp)); 6730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 6731 res.setBodySite(parseCodeableConcept(xpp)); 6732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 6733 res.getNote().add(parseAnnotation(xpp)); 6734 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6735 return false; 6736 return true; 6737 } 6738 6739 protected DiagnosticReport parseDiagnosticReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6740 DiagnosticReport res = new DiagnosticReport(); 6741 parseDomainResourceAttributes(xpp, res); 6742 next(xpp); 6743 int eventType = nextNoWhitespace(xpp); 6744 while (eventType != XmlPullParser.END_TAG) { 6745 if (!parseDiagnosticReportContent(eventType, xpp, res)) 6746 unknownContent(xpp); 6747 eventType = nextNoWhitespace(xpp); 6748 } 6749 next(xpp); 6750 parseElementClose(res); 6751 return res; 6752 } 6753 6754 protected boolean parseDiagnosticReportContent(int eventType, XmlPullParser xpp, DiagnosticReport res) throws XmlPullParserException, IOException, FHIRFormatError { 6755 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6756 res.getIdentifier().add(parseIdentifier(xpp)); 6757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 6758 res.getBasedOn().add(parseReference(xpp)); 6759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6760 res.setStatusElement(parseEnumeration(xpp, DiagnosticReport.DiagnosticReportStatus.NULL, new DiagnosticReport.DiagnosticReportStatusEnumFactory())); 6761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 6762 res.setCategory(parseCodeableConcept(xpp)); 6763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 6764 res.setCode(parseCodeableConcept(xpp)); 6765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6766 res.setSubject(parseReference(xpp)); 6767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 6768 res.setContext(parseReference(xpp)); 6769 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 6770 res.setEffective(parseType("effective", xpp)); 6771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 6772 res.setIssuedElement(parseInstant(xpp)); 6773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 6774 res.getPerformer().add(parseDiagnosticReportDiagnosticReportPerformerComponent(xpp, res)); 6775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 6776 res.getSpecimen().add(parseReference(xpp)); 6777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 6778 res.getResult().add(parseReference(xpp)); 6779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imagingStudy")) { 6780 res.getImagingStudy().add(parseReference(xpp)); 6781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 6782 res.getImage().add(parseDiagnosticReportDiagnosticReportImageComponent(xpp, res)); 6783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("conclusion")) { 6784 res.setConclusionElement(parseString(xpp)); 6785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("codedDiagnosis")) { 6786 res.getCodedDiagnosis().add(parseCodeableConcept(xpp)); 6787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("presentedForm")) { 6788 res.getPresentedForm().add(parseAttachment(xpp)); 6789 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6790 return false; 6791 return true; 6792 } 6793 6794 protected DiagnosticReport.DiagnosticReportPerformerComponent parseDiagnosticReportDiagnosticReportPerformerComponent(XmlPullParser xpp, DiagnosticReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 6795 DiagnosticReport.DiagnosticReportPerformerComponent res = new DiagnosticReport.DiagnosticReportPerformerComponent(); 6796 parseBackboneAttributes(xpp, res); 6797 next(xpp); 6798 int eventType = nextNoWhitespace(xpp); 6799 while (eventType != XmlPullParser.END_TAG) { 6800 if (!parseDiagnosticReportDiagnosticReportPerformerComponentContent(eventType, xpp, owner, res)) 6801 unknownContent(xpp); 6802 eventType = nextNoWhitespace(xpp); 6803 } 6804 next(xpp); 6805 parseElementClose(res); 6806 return res; 6807 } 6808 6809 protected boolean parseDiagnosticReportDiagnosticReportPerformerComponentContent(int eventType, XmlPullParser xpp, DiagnosticReport owner, DiagnosticReport.DiagnosticReportPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6810 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 6811 res.setRole(parseCodeableConcept(xpp)); 6812 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 6813 res.setActor(parseReference(xpp)); 6814 } else if (!parseBackboneContent(eventType, xpp, res)) 6815 return false; 6816 return true; 6817 } 6818 6819 protected DiagnosticReport.DiagnosticReportImageComponent parseDiagnosticReportDiagnosticReportImageComponent(XmlPullParser xpp, DiagnosticReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 6820 DiagnosticReport.DiagnosticReportImageComponent res = new DiagnosticReport.DiagnosticReportImageComponent(); 6821 parseBackboneAttributes(xpp, res); 6822 next(xpp); 6823 int eventType = nextNoWhitespace(xpp); 6824 while (eventType != XmlPullParser.END_TAG) { 6825 if (!parseDiagnosticReportDiagnosticReportImageComponentContent(eventType, xpp, owner, res)) 6826 unknownContent(xpp); 6827 eventType = nextNoWhitespace(xpp); 6828 } 6829 next(xpp); 6830 parseElementClose(res); 6831 return res; 6832 } 6833 6834 protected boolean parseDiagnosticReportDiagnosticReportImageComponentContent(int eventType, XmlPullParser xpp, DiagnosticReport owner, DiagnosticReport.DiagnosticReportImageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6835 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 6836 res.setCommentElement(parseString(xpp)); 6837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 6838 res.setLink(parseReference(xpp)); 6839 } else if (!parseBackboneContent(eventType, xpp, res)) 6840 return false; 6841 return true; 6842 } 6843 6844 protected DocumentManifest parseDocumentManifest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6845 DocumentManifest res = new DocumentManifest(); 6846 parseDomainResourceAttributes(xpp, res); 6847 next(xpp); 6848 int eventType = nextNoWhitespace(xpp); 6849 while (eventType != XmlPullParser.END_TAG) { 6850 if (!parseDocumentManifestContent(eventType, xpp, res)) 6851 unknownContent(xpp); 6852 eventType = nextNoWhitespace(xpp); 6853 } 6854 next(xpp); 6855 parseElementClose(res); 6856 return res; 6857 } 6858 6859 protected boolean parseDocumentManifestContent(int eventType, XmlPullParser xpp, DocumentManifest res) throws XmlPullParserException, IOException, FHIRFormatError { 6860 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("masterIdentifier")) { 6861 res.setMasterIdentifier(parseIdentifier(xpp)); 6862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6863 res.getIdentifier().add(parseIdentifier(xpp)); 6864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6865 res.setStatusElement(parseEnumeration(xpp, Enumerations.DocumentReferenceStatus.NULL, new Enumerations.DocumentReferenceStatusEnumFactory())); 6866 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6867 res.setType(parseCodeableConcept(xpp)); 6868 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6869 res.setSubject(parseReference(xpp)); 6870 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 6871 res.setCreatedElement(parseDateTime(xpp)); 6872 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6873 res.getAuthor().add(parseReference(xpp)); 6874 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 6875 res.getRecipient().add(parseReference(xpp)); 6876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 6877 res.setSourceElement(parseUri(xpp)); 6878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 6879 res.setDescriptionElement(parseString(xpp)); 6880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 6881 res.getContent().add(parseDocumentManifestDocumentManifestContentComponent(xpp, res)); 6882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 6883 res.getRelated().add(parseDocumentManifestDocumentManifestRelatedComponent(xpp, res)); 6884 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6885 return false; 6886 return true; 6887 } 6888 6889 protected DocumentManifest.DocumentManifestContentComponent parseDocumentManifestDocumentManifestContentComponent(XmlPullParser xpp, DocumentManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 6890 DocumentManifest.DocumentManifestContentComponent res = new DocumentManifest.DocumentManifestContentComponent(); 6891 parseBackboneAttributes(xpp, res); 6892 next(xpp); 6893 int eventType = nextNoWhitespace(xpp); 6894 while (eventType != XmlPullParser.END_TAG) { 6895 if (!parseDocumentManifestDocumentManifestContentComponentContent(eventType, xpp, owner, res)) 6896 unknownContent(xpp); 6897 eventType = nextNoWhitespace(xpp); 6898 } 6899 next(xpp); 6900 parseElementClose(res); 6901 return res; 6902 } 6903 6904 protected boolean parseDocumentManifestDocumentManifestContentComponentContent(int eventType, XmlPullParser xpp, DocumentManifest owner, DocumentManifest.DocumentManifestContentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6905 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "p")) { 6906 res.setP(parseType("p", xpp)); 6907 } else if (!parseBackboneContent(eventType, xpp, res)) 6908 return false; 6909 return true; 6910 } 6911 6912 protected DocumentManifest.DocumentManifestRelatedComponent parseDocumentManifestDocumentManifestRelatedComponent(XmlPullParser xpp, DocumentManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 6913 DocumentManifest.DocumentManifestRelatedComponent res = new DocumentManifest.DocumentManifestRelatedComponent(); 6914 parseBackboneAttributes(xpp, res); 6915 next(xpp); 6916 int eventType = nextNoWhitespace(xpp); 6917 while (eventType != XmlPullParser.END_TAG) { 6918 if (!parseDocumentManifestDocumentManifestRelatedComponentContent(eventType, xpp, owner, res)) 6919 unknownContent(xpp); 6920 eventType = nextNoWhitespace(xpp); 6921 } 6922 next(xpp); 6923 parseElementClose(res); 6924 return res; 6925 } 6926 6927 protected boolean parseDocumentManifestDocumentManifestRelatedComponentContent(int eventType, XmlPullParser xpp, DocumentManifest owner, DocumentManifest.DocumentManifestRelatedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 6928 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6929 res.setIdentifier(parseIdentifier(xpp)); 6930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ref")) { 6931 res.setRef(parseReference(xpp)); 6932 } else if (!parseBackboneContent(eventType, xpp, res)) 6933 return false; 6934 return true; 6935 } 6936 6937 protected DocumentReference parseDocumentReference(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 6938 DocumentReference res = new DocumentReference(); 6939 parseDomainResourceAttributes(xpp, res); 6940 next(xpp); 6941 int eventType = nextNoWhitespace(xpp); 6942 while (eventType != XmlPullParser.END_TAG) { 6943 if (!parseDocumentReferenceContent(eventType, xpp, res)) 6944 unknownContent(xpp); 6945 eventType = nextNoWhitespace(xpp); 6946 } 6947 next(xpp); 6948 parseElementClose(res); 6949 return res; 6950 } 6951 6952 protected boolean parseDocumentReferenceContent(int eventType, XmlPullParser xpp, DocumentReference res) throws XmlPullParserException, IOException, FHIRFormatError { 6953 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("masterIdentifier")) { 6954 res.setMasterIdentifier(parseIdentifier(xpp)); 6955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 6956 res.getIdentifier().add(parseIdentifier(xpp)); 6957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 6958 res.setStatusElement(parseEnumeration(xpp, Enumerations.DocumentReferenceStatus.NULL, new Enumerations.DocumentReferenceStatusEnumFactory())); 6959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("docStatus")) { 6960 res.setDocStatusElement(parseEnumeration(xpp, DocumentReference.ReferredDocumentStatus.NULL, new DocumentReference.ReferredDocumentStatusEnumFactory())); 6961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 6962 res.setType(parseCodeableConcept(xpp)); 6963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 6964 res.setClass_(parseCodeableConcept(xpp)); 6965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 6966 res.setSubject(parseReference(xpp)); 6967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 6968 res.setCreatedElement(parseDateTime(xpp)); 6969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indexed")) { 6970 res.setIndexedElement(parseInstant(xpp)); 6971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 6972 res.getAuthor().add(parseReference(xpp)); 6973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authenticator")) { 6974 res.setAuthenticator(parseReference(xpp)); 6975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("custodian")) { 6976 res.setCustodian(parseReference(xpp)); 6977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatesTo")) { 6978 res.getRelatesTo().add(parseDocumentReferenceDocumentReferenceRelatesToComponent(xpp, res)); 6979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 6980 res.setDescriptionElement(parseString(xpp)); 6981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("securityLabel")) { 6982 res.getSecurityLabel().add(parseCodeableConcept(xpp)); 6983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 6984 res.getContent().add(parseDocumentReferenceDocumentReferenceContentComponent(xpp, res)); 6985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 6986 res.setContext(parseDocumentReferenceDocumentReferenceContextComponent(xpp, res)); 6987 } else if (!parseDomainResourceContent(eventType, xpp, res)) 6988 return false; 6989 return true; 6990 } 6991 6992 protected DocumentReference.DocumentReferenceRelatesToComponent parseDocumentReferenceDocumentReferenceRelatesToComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 6993 DocumentReference.DocumentReferenceRelatesToComponent res = new DocumentReference.DocumentReferenceRelatesToComponent(); 6994 parseBackboneAttributes(xpp, res); 6995 next(xpp); 6996 int eventType = nextNoWhitespace(xpp); 6997 while (eventType != XmlPullParser.END_TAG) { 6998 if (!parseDocumentReferenceDocumentReferenceRelatesToComponentContent(eventType, xpp, owner, res)) 6999 unknownContent(xpp); 7000 eventType = nextNoWhitespace(xpp); 7001 } 7002 next(xpp); 7003 parseElementClose(res); 7004 return res; 7005 } 7006 7007 protected boolean parseDocumentReferenceDocumentReferenceRelatesToComponentContent(int eventType, XmlPullParser xpp, DocumentReference owner, DocumentReference.DocumentReferenceRelatesToComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7008 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7009 res.setCodeElement(parseEnumeration(xpp, DocumentReference.DocumentRelationshipType.NULL, new DocumentReference.DocumentRelationshipTypeEnumFactory())); 7010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 7011 res.setTarget(parseReference(xpp)); 7012 } else if (!parseBackboneContent(eventType, xpp, res)) 7013 return false; 7014 return true; 7015 } 7016 7017 protected DocumentReference.DocumentReferenceContentComponent parseDocumentReferenceDocumentReferenceContentComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 7018 DocumentReference.DocumentReferenceContentComponent res = new DocumentReference.DocumentReferenceContentComponent(); 7019 parseBackboneAttributes(xpp, res); 7020 next(xpp); 7021 int eventType = nextNoWhitespace(xpp); 7022 while (eventType != XmlPullParser.END_TAG) { 7023 if (!parseDocumentReferenceDocumentReferenceContentComponentContent(eventType, xpp, owner, res)) 7024 unknownContent(xpp); 7025 eventType = nextNoWhitespace(xpp); 7026 } 7027 next(xpp); 7028 parseElementClose(res); 7029 return res; 7030 } 7031 7032 protected boolean parseDocumentReferenceDocumentReferenceContentComponentContent(int eventType, XmlPullParser xpp, DocumentReference owner, DocumentReference.DocumentReferenceContentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7033 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachment")) { 7034 res.setAttachment(parseAttachment(xpp)); 7035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 7036 res.setFormat(parseCoding(xpp)); 7037 } else if (!parseBackboneContent(eventType, xpp, res)) 7038 return false; 7039 return true; 7040 } 7041 7042 protected DocumentReference.DocumentReferenceContextComponent parseDocumentReferenceDocumentReferenceContextComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 7043 DocumentReference.DocumentReferenceContextComponent res = new DocumentReference.DocumentReferenceContextComponent(); 7044 parseBackboneAttributes(xpp, res); 7045 next(xpp); 7046 int eventType = nextNoWhitespace(xpp); 7047 while (eventType != XmlPullParser.END_TAG) { 7048 if (!parseDocumentReferenceDocumentReferenceContextComponentContent(eventType, xpp, owner, res)) 7049 unknownContent(xpp); 7050 eventType = nextNoWhitespace(xpp); 7051 } 7052 next(xpp); 7053 parseElementClose(res); 7054 return res; 7055 } 7056 7057 protected boolean parseDocumentReferenceDocumentReferenceContextComponentContent(int eventType, XmlPullParser xpp, DocumentReference owner, DocumentReference.DocumentReferenceContextComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7058 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 7059 res.setEncounter(parseReference(xpp)); 7060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 7061 res.getEvent().add(parseCodeableConcept(xpp)); 7062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7063 res.setPeriod(parsePeriod(xpp)); 7064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facilityType")) { 7065 res.setFacilityType(parseCodeableConcept(xpp)); 7066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practiceSetting")) { 7067 res.setPracticeSetting(parseCodeableConcept(xpp)); 7068 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourcePatientInfo")) { 7069 res.setSourcePatientInfo(parseReference(xpp)); 7070 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 7071 res.getRelated().add(parseDocumentReferenceDocumentReferenceContextRelatedComponent(xpp, owner)); 7072 } else if (!parseBackboneContent(eventType, xpp, res)) 7073 return false; 7074 return true; 7075 } 7076 7077 protected DocumentReference.DocumentReferenceContextRelatedComponent parseDocumentReferenceDocumentReferenceContextRelatedComponent(XmlPullParser xpp, DocumentReference owner) throws XmlPullParserException, IOException, FHIRFormatError { 7078 DocumentReference.DocumentReferenceContextRelatedComponent res = new DocumentReference.DocumentReferenceContextRelatedComponent(); 7079 parseBackboneAttributes(xpp, res); 7080 next(xpp); 7081 int eventType = nextNoWhitespace(xpp); 7082 while (eventType != XmlPullParser.END_TAG) { 7083 if (!parseDocumentReferenceDocumentReferenceContextRelatedComponentContent(eventType, xpp, owner, res)) 7084 unknownContent(xpp); 7085 eventType = nextNoWhitespace(xpp); 7086 } 7087 next(xpp); 7088 parseElementClose(res); 7089 return res; 7090 } 7091 7092 protected boolean parseDocumentReferenceDocumentReferenceContextRelatedComponentContent(int eventType, XmlPullParser xpp, DocumentReference owner, DocumentReference.DocumentReferenceContextRelatedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7093 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7094 res.setIdentifier(parseIdentifier(xpp)); 7095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ref")) { 7096 res.setRef(parseReference(xpp)); 7097 } else if (!parseBackboneContent(eventType, xpp, res)) 7098 return false; 7099 return true; 7100 } 7101 7102 protected EligibilityRequest parseEligibilityRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7103 EligibilityRequest res = new EligibilityRequest(); 7104 parseDomainResourceAttributes(xpp, res); 7105 next(xpp); 7106 int eventType = nextNoWhitespace(xpp); 7107 while (eventType != XmlPullParser.END_TAG) { 7108 if (!parseEligibilityRequestContent(eventType, xpp, res)) 7109 unknownContent(xpp); 7110 eventType = nextNoWhitespace(xpp); 7111 } 7112 next(xpp); 7113 parseElementClose(res); 7114 return res; 7115 } 7116 7117 protected boolean parseEligibilityRequestContent(int eventType, XmlPullParser xpp, EligibilityRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 7118 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7119 res.getIdentifier().add(parseIdentifier(xpp)); 7120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7121 res.setStatusElement(parseEnumeration(xpp, EligibilityRequest.EligibilityRequestStatus.NULL, new EligibilityRequest.EligibilityRequestStatusEnumFactory())); 7122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 7123 res.setPriority(parseCodeableConcept(xpp)); 7124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 7125 res.setPatient(parseReference(xpp)); 7126 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 7127 res.setServiced(parseType("serviced", xpp)); 7128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7129 res.setCreatedElement(parseDateTime(xpp)); 7130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 7131 res.setEnterer(parseReference(xpp)); 7132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 7133 res.setProvider(parseReference(xpp)); 7134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 7135 res.setOrganization(parseReference(xpp)); 7136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 7137 res.setInsurer(parseReference(xpp)); 7138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 7139 res.setFacility(parseReference(xpp)); 7140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 7141 res.setCoverage(parseReference(xpp)); 7142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessArrangement")) { 7143 res.setBusinessArrangementElement(parseString(xpp)); 7144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitCategory")) { 7145 res.setBenefitCategory(parseCodeableConcept(xpp)); 7146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitSubCategory")) { 7147 res.setBenefitSubCategory(parseCodeableConcept(xpp)); 7148 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7149 return false; 7150 return true; 7151 } 7152 7153 protected EligibilityResponse parseEligibilityResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7154 EligibilityResponse res = new EligibilityResponse(); 7155 parseDomainResourceAttributes(xpp, res); 7156 next(xpp); 7157 int eventType = nextNoWhitespace(xpp); 7158 while (eventType != XmlPullParser.END_TAG) { 7159 if (!parseEligibilityResponseContent(eventType, xpp, res)) 7160 unknownContent(xpp); 7161 eventType = nextNoWhitespace(xpp); 7162 } 7163 next(xpp); 7164 parseElementClose(res); 7165 return res; 7166 } 7167 7168 protected boolean parseEligibilityResponseContent(int eventType, XmlPullParser xpp, EligibilityResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 7169 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7170 res.getIdentifier().add(parseIdentifier(xpp)); 7171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7172 res.setStatusElement(parseEnumeration(xpp, EligibilityResponse.EligibilityResponseStatus.NULL, new EligibilityResponse.EligibilityResponseStatusEnumFactory())); 7173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7174 res.setCreatedElement(parseDateTime(xpp)); 7175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 7176 res.setRequestProvider(parseReference(xpp)); 7177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 7178 res.setRequestOrganization(parseReference(xpp)); 7179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 7180 res.setRequest(parseReference(xpp)); 7181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 7182 res.setOutcome(parseCodeableConcept(xpp)); 7183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 7184 res.setDispositionElement(parseString(xpp)); 7185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 7186 res.setInsurer(parseReference(xpp)); 7187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inforce")) { 7188 res.setInforceElement(parseBoolean(xpp)); 7189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 7190 res.getInsurance().add(parseEligibilityResponseInsuranceComponent(xpp, res)); 7191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 7192 res.setForm(parseCodeableConcept(xpp)); 7193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 7194 res.getError().add(parseEligibilityResponseErrorsComponent(xpp, res)); 7195 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7196 return false; 7197 return true; 7198 } 7199 7200 protected EligibilityResponse.InsuranceComponent parseEligibilityResponseInsuranceComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7201 EligibilityResponse.InsuranceComponent res = new EligibilityResponse.InsuranceComponent(); 7202 parseBackboneAttributes(xpp, res); 7203 next(xpp); 7204 int eventType = nextNoWhitespace(xpp); 7205 while (eventType != XmlPullParser.END_TAG) { 7206 if (!parseEligibilityResponseInsuranceComponentContent(eventType, xpp, owner, res)) 7207 unknownContent(xpp); 7208 eventType = nextNoWhitespace(xpp); 7209 } 7210 next(xpp); 7211 parseElementClose(res); 7212 return res; 7213 } 7214 7215 protected boolean parseEligibilityResponseInsuranceComponentContent(int eventType, XmlPullParser xpp, EligibilityResponse owner, EligibilityResponse.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7216 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 7217 res.setCoverage(parseReference(xpp)); 7218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contract")) { 7219 res.setContract(parseReference(xpp)); 7220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitBalance")) { 7221 res.getBenefitBalance().add(parseEligibilityResponseBenefitsComponent(xpp, owner)); 7222 } else if (!parseBackboneContent(eventType, xpp, res)) 7223 return false; 7224 return true; 7225 } 7226 7227 protected EligibilityResponse.BenefitsComponent parseEligibilityResponseBenefitsComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7228 EligibilityResponse.BenefitsComponent res = new EligibilityResponse.BenefitsComponent(); 7229 parseBackboneAttributes(xpp, res); 7230 next(xpp); 7231 int eventType = nextNoWhitespace(xpp); 7232 while (eventType != XmlPullParser.END_TAG) { 7233 if (!parseEligibilityResponseBenefitsComponentContent(eventType, xpp, owner, res)) 7234 unknownContent(xpp); 7235 eventType = nextNoWhitespace(xpp); 7236 } 7237 next(xpp); 7238 parseElementClose(res); 7239 return res; 7240 } 7241 7242 protected boolean parseEligibilityResponseBenefitsComponentContent(int eventType, XmlPullParser xpp, EligibilityResponse owner, EligibilityResponse.BenefitsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7243 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 7244 res.setCategory(parseCodeableConcept(xpp)); 7245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subCategory")) { 7246 res.setSubCategory(parseCodeableConcept(xpp)); 7247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excluded")) { 7248 res.setExcludedElement(parseBoolean(xpp)); 7249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7250 res.setNameElement(parseString(xpp)); 7251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7252 res.setDescriptionElement(parseString(xpp)); 7253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 7254 res.setNetwork(parseCodeableConcept(xpp)); 7255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 7256 res.setUnit(parseCodeableConcept(xpp)); 7257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 7258 res.setTerm(parseCodeableConcept(xpp)); 7259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("financial")) { 7260 res.getFinancial().add(parseEligibilityResponseBenefitComponent(xpp, owner)); 7261 } else if (!parseBackboneContent(eventType, xpp, res)) 7262 return false; 7263 return true; 7264 } 7265 7266 protected EligibilityResponse.BenefitComponent parseEligibilityResponseBenefitComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7267 EligibilityResponse.BenefitComponent res = new EligibilityResponse.BenefitComponent(); 7268 parseBackboneAttributes(xpp, res); 7269 next(xpp); 7270 int eventType = nextNoWhitespace(xpp); 7271 while (eventType != XmlPullParser.END_TAG) { 7272 if (!parseEligibilityResponseBenefitComponentContent(eventType, xpp, owner, res)) 7273 unknownContent(xpp); 7274 eventType = nextNoWhitespace(xpp); 7275 } 7276 next(xpp); 7277 parseElementClose(res); 7278 return res; 7279 } 7280 7281 protected boolean parseEligibilityResponseBenefitComponentContent(int eventType, XmlPullParser xpp, EligibilityResponse owner, EligibilityResponse.BenefitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7282 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7283 res.setType(parseCodeableConcept(xpp)); 7284 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "allowed")) { 7285 res.setAllowed(parseType("allowed", xpp)); 7286 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "used")) { 7287 res.setUsed(parseType("used", xpp)); 7288 } else if (!parseBackboneContent(eventType, xpp, res)) 7289 return false; 7290 return true; 7291 } 7292 7293 protected EligibilityResponse.ErrorsComponent parseEligibilityResponseErrorsComponent(XmlPullParser xpp, EligibilityResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 7294 EligibilityResponse.ErrorsComponent res = new EligibilityResponse.ErrorsComponent(); 7295 parseBackboneAttributes(xpp, res); 7296 next(xpp); 7297 int eventType = nextNoWhitespace(xpp); 7298 while (eventType != XmlPullParser.END_TAG) { 7299 if (!parseEligibilityResponseErrorsComponentContent(eventType, xpp, owner, res)) 7300 unknownContent(xpp); 7301 eventType = nextNoWhitespace(xpp); 7302 } 7303 next(xpp); 7304 parseElementClose(res); 7305 return res; 7306 } 7307 7308 protected boolean parseEligibilityResponseErrorsComponentContent(int eventType, XmlPullParser xpp, EligibilityResponse owner, EligibilityResponse.ErrorsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7309 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 7310 res.setCode(parseCodeableConcept(xpp)); 7311 } else if (!parseBackboneContent(eventType, xpp, res)) 7312 return false; 7313 return true; 7314 } 7315 7316 protected Encounter parseEncounter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7317 Encounter res = new Encounter(); 7318 parseDomainResourceAttributes(xpp, res); 7319 next(xpp); 7320 int eventType = nextNoWhitespace(xpp); 7321 while (eventType != XmlPullParser.END_TAG) { 7322 if (!parseEncounterContent(eventType, xpp, res)) 7323 unknownContent(xpp); 7324 eventType = nextNoWhitespace(xpp); 7325 } 7326 next(xpp); 7327 parseElementClose(res); 7328 return res; 7329 } 7330 7331 protected boolean parseEncounterContent(int eventType, XmlPullParser xpp, Encounter res) throws XmlPullParserException, IOException, FHIRFormatError { 7332 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7333 res.getIdentifier().add(parseIdentifier(xpp)); 7334 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7335 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterStatus.NULL, new Encounter.EncounterStatusEnumFactory())); 7336 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusHistory")) { 7337 res.getStatusHistory().add(parseEncounterStatusHistoryComponent(xpp, res)); 7338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 7339 res.setClass_(parseCoding(xpp)); 7340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classHistory")) { 7341 res.getClassHistory().add(parseEncounterClassHistoryComponent(xpp, res)); 7342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7343 res.getType().add(parseCodeableConcept(xpp)); 7344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 7345 res.setPriority(parseCodeableConcept(xpp)); 7346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7347 res.setSubject(parseReference(xpp)); 7348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("episodeOfCare")) { 7349 res.getEpisodeOfCare().add(parseReference(xpp)); 7350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("incomingReferral")) { 7351 res.getIncomingReferral().add(parseReference(xpp)); 7352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 7353 res.getParticipant().add(parseEncounterEncounterParticipantComponent(xpp, res)); 7354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointment")) { 7355 res.setAppointment(parseReference(xpp)); 7356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7357 res.setPeriod(parsePeriod(xpp)); 7358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("length")) { 7359 res.setLength(parseDuration(xpp)); 7360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 7361 res.getReason().add(parseCodeableConcept(xpp)); 7362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 7363 res.getDiagnosis().add(parseEncounterDiagnosisComponent(xpp, res)); 7364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 7365 res.getAccount().add(parseReference(xpp)); 7366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 7367 res.setHospitalization(parseEncounterEncounterHospitalizationComponent(xpp, res)); 7368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 7369 res.getLocation().add(parseEncounterEncounterLocationComponent(xpp, res)); 7370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvider")) { 7371 res.setServiceProvider(parseReference(xpp)); 7372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 7373 res.setPartOf(parseReference(xpp)); 7374 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7375 return false; 7376 return true; 7377 } 7378 7379 protected Encounter.StatusHistoryComponent parseEncounterStatusHistoryComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7380 Encounter.StatusHistoryComponent res = new Encounter.StatusHistoryComponent(); 7381 parseBackboneAttributes(xpp, res); 7382 next(xpp); 7383 int eventType = nextNoWhitespace(xpp); 7384 while (eventType != XmlPullParser.END_TAG) { 7385 if (!parseEncounterStatusHistoryComponentContent(eventType, xpp, owner, res)) 7386 unknownContent(xpp); 7387 eventType = nextNoWhitespace(xpp); 7388 } 7389 next(xpp); 7390 parseElementClose(res); 7391 return res; 7392 } 7393 7394 protected boolean parseEncounterStatusHistoryComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.StatusHistoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7395 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7396 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterStatus.NULL, new Encounter.EncounterStatusEnumFactory())); 7397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7398 res.setPeriod(parsePeriod(xpp)); 7399 } else if (!parseBackboneContent(eventType, xpp, res)) 7400 return false; 7401 return true; 7402 } 7403 7404 protected Encounter.ClassHistoryComponent parseEncounterClassHistoryComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7405 Encounter.ClassHistoryComponent res = new Encounter.ClassHistoryComponent(); 7406 parseBackboneAttributes(xpp, res); 7407 next(xpp); 7408 int eventType = nextNoWhitespace(xpp); 7409 while (eventType != XmlPullParser.END_TAG) { 7410 if (!parseEncounterClassHistoryComponentContent(eventType, xpp, owner, res)) 7411 unknownContent(xpp); 7412 eventType = nextNoWhitespace(xpp); 7413 } 7414 next(xpp); 7415 parseElementClose(res); 7416 return res; 7417 } 7418 7419 protected boolean parseEncounterClassHistoryComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.ClassHistoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7420 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { 7421 res.setClass_(parseCoding(xpp)); 7422 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7423 res.setPeriod(parsePeriod(xpp)); 7424 } else if (!parseBackboneContent(eventType, xpp, res)) 7425 return false; 7426 return true; 7427 } 7428 7429 protected Encounter.EncounterParticipantComponent parseEncounterEncounterParticipantComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7430 Encounter.EncounterParticipantComponent res = new Encounter.EncounterParticipantComponent(); 7431 parseBackboneAttributes(xpp, res); 7432 next(xpp); 7433 int eventType = nextNoWhitespace(xpp); 7434 while (eventType != XmlPullParser.END_TAG) { 7435 if (!parseEncounterEncounterParticipantComponentContent(eventType, xpp, owner, res)) 7436 unknownContent(xpp); 7437 eventType = nextNoWhitespace(xpp); 7438 } 7439 next(xpp); 7440 parseElementClose(res); 7441 return res; 7442 } 7443 7444 protected boolean parseEncounterEncounterParticipantComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.EncounterParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7445 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7446 res.getType().add(parseCodeableConcept(xpp)); 7447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7448 res.setPeriod(parsePeriod(xpp)); 7449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("individual")) { 7450 res.setIndividual(parseReference(xpp)); 7451 } else if (!parseBackboneContent(eventType, xpp, res)) 7452 return false; 7453 return true; 7454 } 7455 7456 protected Encounter.DiagnosisComponent parseEncounterDiagnosisComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7457 Encounter.DiagnosisComponent res = new Encounter.DiagnosisComponent(); 7458 parseBackboneAttributes(xpp, res); 7459 next(xpp); 7460 int eventType = nextNoWhitespace(xpp); 7461 while (eventType != XmlPullParser.END_TAG) { 7462 if (!parseEncounterDiagnosisComponentContent(eventType, xpp, owner, res)) 7463 unknownContent(xpp); 7464 eventType = nextNoWhitespace(xpp); 7465 } 7466 next(xpp); 7467 parseElementClose(res); 7468 return res; 7469 } 7470 7471 protected boolean parseEncounterDiagnosisComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7472 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 7473 res.setCondition(parseReference(xpp)); 7474 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 7475 res.setRole(parseCodeableConcept(xpp)); 7476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rank")) { 7477 res.setRankElement(parsePositiveInt(xpp)); 7478 } else if (!parseBackboneContent(eventType, xpp, res)) 7479 return false; 7480 return true; 7481 } 7482 7483 protected Encounter.EncounterHospitalizationComponent parseEncounterEncounterHospitalizationComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7484 Encounter.EncounterHospitalizationComponent res = new Encounter.EncounterHospitalizationComponent(); 7485 parseBackboneAttributes(xpp, res); 7486 next(xpp); 7487 int eventType = nextNoWhitespace(xpp); 7488 while (eventType != XmlPullParser.END_TAG) { 7489 if (!parseEncounterEncounterHospitalizationComponentContent(eventType, xpp, owner, res)) 7490 unknownContent(xpp); 7491 eventType = nextNoWhitespace(xpp); 7492 } 7493 next(xpp); 7494 parseElementClose(res); 7495 return res; 7496 } 7497 7498 protected boolean parseEncounterEncounterHospitalizationComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.EncounterHospitalizationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7499 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAdmissionIdentifier")) { 7500 res.setPreAdmissionIdentifier(parseIdentifier(xpp)); 7501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 7502 res.setOrigin(parseReference(xpp)); 7503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("admitSource")) { 7504 res.setAdmitSource(parseCodeableConcept(xpp)); 7505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reAdmission")) { 7506 res.setReAdmission(parseCodeableConcept(xpp)); 7507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dietPreference")) { 7508 res.getDietPreference().add(parseCodeableConcept(xpp)); 7509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialCourtesy")) { 7510 res.getSpecialCourtesy().add(parseCodeableConcept(xpp)); 7511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialArrangement")) { 7512 res.getSpecialArrangement().add(parseCodeableConcept(xpp)); 7513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 7514 res.setDestination(parseReference(xpp)); 7515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dischargeDisposition")) { 7516 res.setDischargeDisposition(parseCodeableConcept(xpp)); 7517 } else if (!parseBackboneContent(eventType, xpp, res)) 7518 return false; 7519 return true; 7520 } 7521 7522 protected Encounter.EncounterLocationComponent parseEncounterEncounterLocationComponent(XmlPullParser xpp, Encounter owner) throws XmlPullParserException, IOException, FHIRFormatError { 7523 Encounter.EncounterLocationComponent res = new Encounter.EncounterLocationComponent(); 7524 parseBackboneAttributes(xpp, res); 7525 next(xpp); 7526 int eventType = nextNoWhitespace(xpp); 7527 while (eventType != XmlPullParser.END_TAG) { 7528 if (!parseEncounterEncounterLocationComponentContent(eventType, xpp, owner, res)) 7529 unknownContent(xpp); 7530 eventType = nextNoWhitespace(xpp); 7531 } 7532 next(xpp); 7533 parseElementClose(res); 7534 return res; 7535 } 7536 7537 protected boolean parseEncounterEncounterLocationComponentContent(int eventType, XmlPullParser xpp, Encounter owner, Encounter.EncounterLocationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7538 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 7539 res.setLocation(parseReference(xpp)); 7540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7541 res.setStatusElement(parseEnumeration(xpp, Encounter.EncounterLocationStatus.NULL, new Encounter.EncounterLocationStatusEnumFactory())); 7542 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7543 res.setPeriod(parsePeriod(xpp)); 7544 } else if (!parseBackboneContent(eventType, xpp, res)) 7545 return false; 7546 return true; 7547 } 7548 7549 protected Endpoint parseEndpoint(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7550 Endpoint res = new Endpoint(); 7551 parseDomainResourceAttributes(xpp, res); 7552 next(xpp); 7553 int eventType = nextNoWhitespace(xpp); 7554 while (eventType != XmlPullParser.END_TAG) { 7555 if (!parseEndpointContent(eventType, xpp, res)) 7556 unknownContent(xpp); 7557 eventType = nextNoWhitespace(xpp); 7558 } 7559 next(xpp); 7560 parseElementClose(res); 7561 return res; 7562 } 7563 7564 protected boolean parseEndpointContent(int eventType, XmlPullParser xpp, Endpoint res) throws XmlPullParserException, IOException, FHIRFormatError { 7565 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7566 res.getIdentifier().add(parseIdentifier(xpp)); 7567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7568 res.setStatusElement(parseEnumeration(xpp, Endpoint.EndpointStatus.NULL, new Endpoint.EndpointStatusEnumFactory())); 7569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("connectionType")) { 7570 res.setConnectionType(parseCoding(xpp)); 7571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7572 res.setNameElement(parseString(xpp)); 7573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 7574 res.setManagingOrganization(parseReference(xpp)); 7575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 7576 res.getContact().add(parseContactPoint(xpp)); 7577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7578 res.setPeriod(parsePeriod(xpp)); 7579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payloadType")) { 7580 res.getPayloadType().add(parseCodeableConcept(xpp)); 7581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payloadMimeType")) { 7582 res.getPayloadMimeType().add(parseCode(xpp)); 7583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 7584 res.setAddressElement(parseUri(xpp)); 7585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("header")) { 7586 res.getHeader().add(parseString(xpp)); 7587 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7588 return false; 7589 return true; 7590 } 7591 7592 protected EnrollmentRequest parseEnrollmentRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7593 EnrollmentRequest res = new EnrollmentRequest(); 7594 parseDomainResourceAttributes(xpp, res); 7595 next(xpp); 7596 int eventType = nextNoWhitespace(xpp); 7597 while (eventType != XmlPullParser.END_TAG) { 7598 if (!parseEnrollmentRequestContent(eventType, xpp, res)) 7599 unknownContent(xpp); 7600 eventType = nextNoWhitespace(xpp); 7601 } 7602 next(xpp); 7603 parseElementClose(res); 7604 return res; 7605 } 7606 7607 protected boolean parseEnrollmentRequestContent(int eventType, XmlPullParser xpp, EnrollmentRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 7608 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7609 res.getIdentifier().add(parseIdentifier(xpp)); 7610 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7611 res.setStatusElement(parseEnumeration(xpp, EnrollmentRequest.EnrollmentRequestStatus.NULL, new EnrollmentRequest.EnrollmentRequestStatusEnumFactory())); 7612 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7613 res.setCreatedElement(parseDateTime(xpp)); 7614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 7615 res.setInsurer(parseReference(xpp)); 7616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 7617 res.setProvider(parseReference(xpp)); 7618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 7619 res.setOrganization(parseReference(xpp)); 7620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 7621 res.setSubject(parseReference(xpp)); 7622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 7623 res.setCoverage(parseReference(xpp)); 7624 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7625 return false; 7626 return true; 7627 } 7628 7629 protected EnrollmentResponse parseEnrollmentResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7630 EnrollmentResponse res = new EnrollmentResponse(); 7631 parseDomainResourceAttributes(xpp, res); 7632 next(xpp); 7633 int eventType = nextNoWhitespace(xpp); 7634 while (eventType != XmlPullParser.END_TAG) { 7635 if (!parseEnrollmentResponseContent(eventType, xpp, res)) 7636 unknownContent(xpp); 7637 eventType = nextNoWhitespace(xpp); 7638 } 7639 next(xpp); 7640 parseElementClose(res); 7641 return res; 7642 } 7643 7644 protected boolean parseEnrollmentResponseContent(int eventType, XmlPullParser xpp, EnrollmentResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 7645 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7646 res.getIdentifier().add(parseIdentifier(xpp)); 7647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7648 res.setStatusElement(parseEnumeration(xpp, EnrollmentResponse.EnrollmentResponseStatus.NULL, new EnrollmentResponse.EnrollmentResponseStatusEnumFactory())); 7649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 7650 res.setRequest(parseReference(xpp)); 7651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 7652 res.setOutcome(parseCodeableConcept(xpp)); 7653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 7654 res.setDispositionElement(parseString(xpp)); 7655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 7656 res.setCreatedElement(parseDateTime(xpp)); 7657 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 7658 res.setOrganization(parseReference(xpp)); 7659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 7660 res.setRequestProvider(parseReference(xpp)); 7661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 7662 res.setRequestOrganization(parseReference(xpp)); 7663 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7664 return false; 7665 return true; 7666 } 7667 7668 protected EpisodeOfCare parseEpisodeOfCare(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7669 EpisodeOfCare res = new EpisodeOfCare(); 7670 parseDomainResourceAttributes(xpp, res); 7671 next(xpp); 7672 int eventType = nextNoWhitespace(xpp); 7673 while (eventType != XmlPullParser.END_TAG) { 7674 if (!parseEpisodeOfCareContent(eventType, xpp, res)) 7675 unknownContent(xpp); 7676 eventType = nextNoWhitespace(xpp); 7677 } 7678 next(xpp); 7679 parseElementClose(res); 7680 return res; 7681 } 7682 7683 protected boolean parseEpisodeOfCareContent(int eventType, XmlPullParser xpp, EpisodeOfCare res) throws XmlPullParserException, IOException, FHIRFormatError { 7684 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7685 res.getIdentifier().add(parseIdentifier(xpp)); 7686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7687 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 7688 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusHistory")) { 7689 res.getStatusHistory().add(parseEpisodeOfCareEpisodeOfCareStatusHistoryComponent(xpp, res)); 7690 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 7691 res.getType().add(parseCodeableConcept(xpp)); 7692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 7693 res.getDiagnosis().add(parseEpisodeOfCareDiagnosisComponent(xpp, res)); 7694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 7695 res.setPatient(parseReference(xpp)); 7696 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 7697 res.setManagingOrganization(parseReference(xpp)); 7698 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7699 res.setPeriod(parsePeriod(xpp)); 7700 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralRequest")) { 7701 res.getReferralRequest().add(parseReference(xpp)); 7702 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careManager")) { 7703 res.setCareManager(parseReference(xpp)); 7704 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("team")) { 7705 res.getTeam().add(parseReference(xpp)); 7706 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("account")) { 7707 res.getAccount().add(parseReference(xpp)); 7708 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7709 return false; 7710 return true; 7711 } 7712 7713 protected EpisodeOfCare.EpisodeOfCareStatusHistoryComponent parseEpisodeOfCareEpisodeOfCareStatusHistoryComponent(XmlPullParser xpp, EpisodeOfCare owner) throws XmlPullParserException, IOException, FHIRFormatError { 7714 EpisodeOfCare.EpisodeOfCareStatusHistoryComponent res = new EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); 7715 parseBackboneAttributes(xpp, res); 7716 next(xpp); 7717 int eventType = nextNoWhitespace(xpp); 7718 while (eventType != XmlPullParser.END_TAG) { 7719 if (!parseEpisodeOfCareEpisodeOfCareStatusHistoryComponentContent(eventType, xpp, owner, res)) 7720 unknownContent(xpp); 7721 eventType = nextNoWhitespace(xpp); 7722 } 7723 next(xpp); 7724 parseElementClose(res); 7725 return res; 7726 } 7727 7728 protected boolean parseEpisodeOfCareEpisodeOfCareStatusHistoryComponentContent(int eventType, XmlPullParser xpp, EpisodeOfCare owner, EpisodeOfCare.EpisodeOfCareStatusHistoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7729 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7730 res.setStatusElement(parseEnumeration(xpp, EpisodeOfCare.EpisodeOfCareStatus.NULL, new EpisodeOfCare.EpisodeOfCareStatusEnumFactory())); 7731 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 7732 res.setPeriod(parsePeriod(xpp)); 7733 } else if (!parseBackboneContent(eventType, xpp, res)) 7734 return false; 7735 return true; 7736 } 7737 7738 protected EpisodeOfCare.DiagnosisComponent parseEpisodeOfCareDiagnosisComponent(XmlPullParser xpp, EpisodeOfCare owner) throws XmlPullParserException, IOException, FHIRFormatError { 7739 EpisodeOfCare.DiagnosisComponent res = new EpisodeOfCare.DiagnosisComponent(); 7740 parseBackboneAttributes(xpp, res); 7741 next(xpp); 7742 int eventType = nextNoWhitespace(xpp); 7743 while (eventType != XmlPullParser.END_TAG) { 7744 if (!parseEpisodeOfCareDiagnosisComponentContent(eventType, xpp, owner, res)) 7745 unknownContent(xpp); 7746 eventType = nextNoWhitespace(xpp); 7747 } 7748 next(xpp); 7749 parseElementClose(res); 7750 return res; 7751 } 7752 7753 protected boolean parseEpisodeOfCareDiagnosisComponentContent(int eventType, XmlPullParser xpp, EpisodeOfCare owner, EpisodeOfCare.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7754 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 7755 res.setCondition(parseReference(xpp)); 7756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 7757 res.setRole(parseCodeableConcept(xpp)); 7758 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rank")) { 7759 res.setRankElement(parsePositiveInt(xpp)); 7760 } else if (!parseBackboneContent(eventType, xpp, res)) 7761 return false; 7762 return true; 7763 } 7764 7765 protected ExpansionProfile parseExpansionProfile(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 7766 ExpansionProfile res = new ExpansionProfile(); 7767 parseDomainResourceAttributes(xpp, res); 7768 next(xpp); 7769 int eventType = nextNoWhitespace(xpp); 7770 while (eventType != XmlPullParser.END_TAG) { 7771 if (!parseExpansionProfileContent(eventType, xpp, res)) 7772 unknownContent(xpp); 7773 eventType = nextNoWhitespace(xpp); 7774 } 7775 next(xpp); 7776 parseElementClose(res); 7777 return res; 7778 } 7779 7780 protected boolean parseExpansionProfileContent(int eventType, XmlPullParser xpp, ExpansionProfile res) throws XmlPullParserException, IOException, FHIRFormatError { 7781 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 7782 res.setUrlElement(parseUri(xpp)); 7783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 7784 res.setIdentifier(parseIdentifier(xpp)); 7785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7786 res.setVersionElement(parseString(xpp)); 7787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 7788 res.setNameElement(parseString(xpp)); 7789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 7790 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 7791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 7792 res.setExperimentalElement(parseBoolean(xpp)); 7793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 7794 res.setDateElement(parseDateTime(xpp)); 7795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 7796 res.setPublisherElement(parseString(xpp)); 7797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 7798 res.getContact().add(parseContactDetail(xpp)); 7799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 7800 res.setDescriptionElement(parseMarkdown(xpp)); 7801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 7802 res.getUseContext().add(parseUsageContext(xpp)); 7803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 7804 res.getJurisdiction().add(parseCodeableConcept(xpp)); 7805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fixedVersion")) { 7806 res.getFixedVersion().add(parseExpansionProfileExpansionProfileFixedVersionComponent(xpp, res)); 7807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludedSystem")) { 7808 res.setExcludedSystem(parseExpansionProfileExpansionProfileExcludedSystemComponent(xpp, res)); 7809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("includeDesignations")) { 7810 res.setIncludeDesignationsElement(parseBoolean(xpp)); 7811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 7812 res.setDesignation(parseExpansionProfileExpansionProfileDesignationComponent(xpp, res)); 7813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("includeDefinition")) { 7814 res.setIncludeDefinitionElement(parseBoolean(xpp)); 7815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activeOnly")) { 7816 res.setActiveOnlyElement(parseBoolean(xpp)); 7817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeNested")) { 7818 res.setExcludeNestedElement(parseBoolean(xpp)); 7819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeNotForUI")) { 7820 res.setExcludeNotForUIElement(parseBoolean(xpp)); 7821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludePostCoordinated")) { 7822 res.setExcludePostCoordinatedElement(parseBoolean(xpp)); 7823 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("displayLanguage")) { 7824 res.setDisplayLanguageElement(parseCode(xpp)); 7825 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("limitedExpansion")) { 7826 res.setLimitedExpansionElement(parseBoolean(xpp)); 7827 } else if (!parseDomainResourceContent(eventType, xpp, res)) 7828 return false; 7829 return true; 7830 } 7831 7832 protected ExpansionProfile.ExpansionProfileFixedVersionComponent parseExpansionProfileExpansionProfileFixedVersionComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7833 ExpansionProfile.ExpansionProfileFixedVersionComponent res = new ExpansionProfile.ExpansionProfileFixedVersionComponent(); 7834 parseBackboneAttributes(xpp, res); 7835 next(xpp); 7836 int eventType = nextNoWhitespace(xpp); 7837 while (eventType != XmlPullParser.END_TAG) { 7838 if (!parseExpansionProfileExpansionProfileFixedVersionComponentContent(eventType, xpp, owner, res)) 7839 unknownContent(xpp); 7840 eventType = nextNoWhitespace(xpp); 7841 } 7842 next(xpp); 7843 parseElementClose(res); 7844 return res; 7845 } 7846 7847 protected boolean parseExpansionProfileExpansionProfileFixedVersionComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.ExpansionProfileFixedVersionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7848 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 7849 res.setSystemElement(parseUri(xpp)); 7850 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7851 res.setVersionElement(parseString(xpp)); 7852 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 7853 res.setModeElement(parseEnumeration(xpp, ExpansionProfile.SystemVersionProcessingMode.NULL, new ExpansionProfile.SystemVersionProcessingModeEnumFactory())); 7854 } else if (!parseBackboneContent(eventType, xpp, res)) 7855 return false; 7856 return true; 7857 } 7858 7859 protected ExpansionProfile.ExpansionProfileExcludedSystemComponent parseExpansionProfileExpansionProfileExcludedSystemComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7860 ExpansionProfile.ExpansionProfileExcludedSystemComponent res = new ExpansionProfile.ExpansionProfileExcludedSystemComponent(); 7861 parseBackboneAttributes(xpp, res); 7862 next(xpp); 7863 int eventType = nextNoWhitespace(xpp); 7864 while (eventType != XmlPullParser.END_TAG) { 7865 if (!parseExpansionProfileExpansionProfileExcludedSystemComponentContent(eventType, xpp, owner, res)) 7866 unknownContent(xpp); 7867 eventType = nextNoWhitespace(xpp); 7868 } 7869 next(xpp); 7870 parseElementClose(res); 7871 return res; 7872 } 7873 7874 protected boolean parseExpansionProfileExpansionProfileExcludedSystemComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.ExpansionProfileExcludedSystemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7875 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 7876 res.setSystemElement(parseUri(xpp)); 7877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 7878 res.setVersionElement(parseString(xpp)); 7879 } else if (!parseBackboneContent(eventType, xpp, res)) 7880 return false; 7881 return true; 7882 } 7883 7884 protected ExpansionProfile.ExpansionProfileDesignationComponent parseExpansionProfileExpansionProfileDesignationComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7885 ExpansionProfile.ExpansionProfileDesignationComponent res = new ExpansionProfile.ExpansionProfileDesignationComponent(); 7886 parseBackboneAttributes(xpp, res); 7887 next(xpp); 7888 int eventType = nextNoWhitespace(xpp); 7889 while (eventType != XmlPullParser.END_TAG) { 7890 if (!parseExpansionProfileExpansionProfileDesignationComponentContent(eventType, xpp, owner, res)) 7891 unknownContent(xpp); 7892 eventType = nextNoWhitespace(xpp); 7893 } 7894 next(xpp); 7895 parseElementClose(res); 7896 return res; 7897 } 7898 7899 protected boolean parseExpansionProfileExpansionProfileDesignationComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.ExpansionProfileDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7900 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 7901 res.setInclude(parseExpansionProfileDesignationIncludeComponent(xpp, owner)); 7902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 7903 res.setExclude(parseExpansionProfileDesignationExcludeComponent(xpp, owner)); 7904 } else if (!parseBackboneContent(eventType, xpp, res)) 7905 return false; 7906 return true; 7907 } 7908 7909 protected ExpansionProfile.DesignationIncludeComponent parseExpansionProfileDesignationIncludeComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7910 ExpansionProfile.DesignationIncludeComponent res = new ExpansionProfile.DesignationIncludeComponent(); 7911 parseBackboneAttributes(xpp, res); 7912 next(xpp); 7913 int eventType = nextNoWhitespace(xpp); 7914 while (eventType != XmlPullParser.END_TAG) { 7915 if (!parseExpansionProfileDesignationIncludeComponentContent(eventType, xpp, owner, res)) 7916 unknownContent(xpp); 7917 eventType = nextNoWhitespace(xpp); 7918 } 7919 next(xpp); 7920 parseElementClose(res); 7921 return res; 7922 } 7923 7924 protected boolean parseExpansionProfileDesignationIncludeComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.DesignationIncludeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7925 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 7926 res.getDesignation().add(parseExpansionProfileDesignationIncludeDesignationComponent(xpp, owner)); 7927 } else if (!parseBackboneContent(eventType, xpp, res)) 7928 return false; 7929 return true; 7930 } 7931 7932 protected ExpansionProfile.DesignationIncludeDesignationComponent parseExpansionProfileDesignationIncludeDesignationComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7933 ExpansionProfile.DesignationIncludeDesignationComponent res = new ExpansionProfile.DesignationIncludeDesignationComponent(); 7934 parseBackboneAttributes(xpp, res); 7935 next(xpp); 7936 int eventType = nextNoWhitespace(xpp); 7937 while (eventType != XmlPullParser.END_TAG) { 7938 if (!parseExpansionProfileDesignationIncludeDesignationComponentContent(eventType, xpp, owner, res)) 7939 unknownContent(xpp); 7940 eventType = nextNoWhitespace(xpp); 7941 } 7942 next(xpp); 7943 parseElementClose(res); 7944 return res; 7945 } 7946 7947 protected boolean parseExpansionProfileDesignationIncludeDesignationComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.DesignationIncludeDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7948 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 7949 res.setLanguageElement(parseCode(xpp)); 7950 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 7951 res.setUse(parseCoding(xpp)); 7952 } else if (!parseBackboneContent(eventType, xpp, res)) 7953 return false; 7954 return true; 7955 } 7956 7957 protected ExpansionProfile.DesignationExcludeComponent parseExpansionProfileDesignationExcludeComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7958 ExpansionProfile.DesignationExcludeComponent res = new ExpansionProfile.DesignationExcludeComponent(); 7959 parseBackboneAttributes(xpp, res); 7960 next(xpp); 7961 int eventType = nextNoWhitespace(xpp); 7962 while (eventType != XmlPullParser.END_TAG) { 7963 if (!parseExpansionProfileDesignationExcludeComponentContent(eventType, xpp, owner, res)) 7964 unknownContent(xpp); 7965 eventType = nextNoWhitespace(xpp); 7966 } 7967 next(xpp); 7968 parseElementClose(res); 7969 return res; 7970 } 7971 7972 protected boolean parseExpansionProfileDesignationExcludeComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.DesignationExcludeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7973 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 7974 res.getDesignation().add(parseExpansionProfileDesignationExcludeDesignationComponent(xpp, owner)); 7975 } else if (!parseBackboneContent(eventType, xpp, res)) 7976 return false; 7977 return true; 7978 } 7979 7980 protected ExpansionProfile.DesignationExcludeDesignationComponent parseExpansionProfileDesignationExcludeDesignationComponent(XmlPullParser xpp, ExpansionProfile owner) throws XmlPullParserException, IOException, FHIRFormatError { 7981 ExpansionProfile.DesignationExcludeDesignationComponent res = new ExpansionProfile.DesignationExcludeDesignationComponent(); 7982 parseBackboneAttributes(xpp, res); 7983 next(xpp); 7984 int eventType = nextNoWhitespace(xpp); 7985 while (eventType != XmlPullParser.END_TAG) { 7986 if (!parseExpansionProfileDesignationExcludeDesignationComponentContent(eventType, xpp, owner, res)) 7987 unknownContent(xpp); 7988 eventType = nextNoWhitespace(xpp); 7989 } 7990 next(xpp); 7991 parseElementClose(res); 7992 return res; 7993 } 7994 7995 protected boolean parseExpansionProfileDesignationExcludeDesignationComponentContent(int eventType, XmlPullParser xpp, ExpansionProfile owner, ExpansionProfile.DesignationExcludeDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 7996 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 7997 res.setLanguageElement(parseCode(xpp)); 7998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 7999 res.setUse(parseCoding(xpp)); 8000 } else if (!parseBackboneContent(eventType, xpp, res)) 8001 return false; 8002 return true; 8003 } 8004 8005 protected ExplanationOfBenefit parseExplanationOfBenefit(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8006 ExplanationOfBenefit res = new ExplanationOfBenefit(); 8007 parseDomainResourceAttributes(xpp, res); 8008 next(xpp); 8009 int eventType = nextNoWhitespace(xpp); 8010 while (eventType != XmlPullParser.END_TAG) { 8011 if (!parseExplanationOfBenefitContent(eventType, xpp, res)) 8012 unknownContent(xpp); 8013 eventType = nextNoWhitespace(xpp); 8014 } 8015 next(xpp); 8016 parseElementClose(res); 8017 return res; 8018 } 8019 8020 protected boolean parseExplanationOfBenefitContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit res) throws XmlPullParserException, IOException, FHIRFormatError { 8021 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8022 res.getIdentifier().add(parseIdentifier(xpp)); 8023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8024 res.setStatusElement(parseEnumeration(xpp, ExplanationOfBenefit.ExplanationOfBenefitStatus.NULL, new ExplanationOfBenefit.ExplanationOfBenefitStatusEnumFactory())); 8025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8026 res.setType(parseCodeableConcept(xpp)); 8027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subType")) { 8028 res.getSubType().add(parseCodeableConcept(xpp)); 8029 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 8030 res.setPatient(parseReference(xpp)); 8031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("billablePeriod")) { 8032 res.setBillablePeriod(parsePeriod(xpp)); 8033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 8034 res.setCreatedElement(parseDateTime(xpp)); 8035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 8036 res.setEnterer(parseReference(xpp)); 8037 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurer")) { 8038 res.setInsurer(parseReference(xpp)); 8039 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 8040 res.setProvider(parseReference(xpp)); 8041 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 8042 res.setOrganization(parseReference(xpp)); 8043 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referral")) { 8044 res.setReferral(parseReference(xpp)); 8045 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("facility")) { 8046 res.setFacility(parseReference(xpp)); 8047 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claim")) { 8048 res.setClaim(parseReference(xpp)); 8049 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claimResponse")) { 8050 res.setClaimResponse(parseReference(xpp)); 8051 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 8052 res.setOutcome(parseCodeableConcept(xpp)); 8053 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 8054 res.setDispositionElement(parseString(xpp)); 8055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 8056 res.getRelated().add(parseExplanationOfBenefitRelatedClaimComponent(xpp, res)); 8057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 8058 res.setPrescription(parseReference(xpp)); 8059 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("originalPrescription")) { 8060 res.setOriginalPrescription(parseReference(xpp)); 8061 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 8062 res.setPayee(parseExplanationOfBenefitPayeeComponent(xpp, res)); 8063 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("information")) { 8064 res.getInformation().add(parseExplanationOfBenefitSupportingInformationComponent(xpp, res)); 8065 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeam")) { 8066 res.getCareTeam().add(parseExplanationOfBenefitCareTeamComponent(xpp, res)); 8067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosis")) { 8068 res.getDiagnosis().add(parseExplanationOfBenefitDiagnosisComponent(xpp, res)); 8069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 8070 res.getProcedure().add(parseExplanationOfBenefitProcedureComponent(xpp, res)); 8071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precedence")) { 8072 res.setPrecedenceElement(parsePositiveInt(xpp)); 8073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("insurance")) { 8074 res.setInsurance(parseExplanationOfBenefitInsuranceComponent(xpp, res)); 8075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accident")) { 8076 res.setAccident(parseExplanationOfBenefitAccidentComponent(xpp, res)); 8077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("employmentImpacted")) { 8078 res.setEmploymentImpacted(parsePeriod(xpp)); 8079 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hospitalization")) { 8080 res.setHospitalization(parsePeriod(xpp)); 8081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 8082 res.getItem().add(parseExplanationOfBenefitItemComponent(xpp, res)); 8083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addItem")) { 8084 res.getAddItem().add(parseExplanationOfBenefitAddedItemComponent(xpp, res)); 8085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalCost")) { 8086 res.setTotalCost(parseMoney(xpp)); 8087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unallocDeductable")) { 8088 res.setUnallocDeductable(parseMoney(xpp)); 8089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("totalBenefit")) { 8090 res.setTotalBenefit(parseMoney(xpp)); 8091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payment")) { 8092 res.setPayment(parseExplanationOfBenefitPaymentComponent(xpp, res)); 8093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 8094 res.setForm(parseCodeableConcept(xpp)); 8095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 8096 res.getProcessNote().add(parseExplanationOfBenefitNoteComponent(xpp, res)); 8097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("benefitBalance")) { 8098 res.getBenefitBalance().add(parseExplanationOfBenefitBenefitBalanceComponent(xpp, res)); 8099 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8100 return false; 8101 return true; 8102 } 8103 8104 protected ExplanationOfBenefit.RelatedClaimComponent parseExplanationOfBenefitRelatedClaimComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8105 ExplanationOfBenefit.RelatedClaimComponent res = new ExplanationOfBenefit.RelatedClaimComponent(); 8106 parseBackboneAttributes(xpp, res); 8107 next(xpp); 8108 int eventType = nextNoWhitespace(xpp); 8109 while (eventType != XmlPullParser.END_TAG) { 8110 if (!parseExplanationOfBenefitRelatedClaimComponentContent(eventType, xpp, owner, res)) 8111 unknownContent(xpp); 8112 eventType = nextNoWhitespace(xpp); 8113 } 8114 next(xpp); 8115 parseElementClose(res); 8116 return res; 8117 } 8118 8119 protected boolean parseExplanationOfBenefitRelatedClaimComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.RelatedClaimComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8120 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("claim")) { 8121 res.setClaim(parseReference(xpp)); 8122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 8123 res.setRelationship(parseCodeableConcept(xpp)); 8124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 8125 res.setReference(parseIdentifier(xpp)); 8126 } else if (!parseBackboneContent(eventType, xpp, res)) 8127 return false; 8128 return true; 8129 } 8130 8131 protected ExplanationOfBenefit.PayeeComponent parseExplanationOfBenefitPayeeComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8132 ExplanationOfBenefit.PayeeComponent res = new ExplanationOfBenefit.PayeeComponent(); 8133 parseBackboneAttributes(xpp, res); 8134 next(xpp); 8135 int eventType = nextNoWhitespace(xpp); 8136 while (eventType != XmlPullParser.END_TAG) { 8137 if (!parseExplanationOfBenefitPayeeComponentContent(eventType, xpp, owner, res)) 8138 unknownContent(xpp); 8139 eventType = nextNoWhitespace(xpp); 8140 } 8141 next(xpp); 8142 parseElementClose(res); 8143 return res; 8144 } 8145 8146 protected boolean parseExplanationOfBenefitPayeeComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.PayeeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8147 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8148 res.setType(parseCodeableConcept(xpp)); 8149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceType")) { 8150 res.setResourceType(parseCodeableConcept(xpp)); 8151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("party")) { 8152 res.setParty(parseReference(xpp)); 8153 } else if (!parseBackboneContent(eventType, xpp, res)) 8154 return false; 8155 return true; 8156 } 8157 8158 protected ExplanationOfBenefit.SupportingInformationComponent parseExplanationOfBenefitSupportingInformationComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8159 ExplanationOfBenefit.SupportingInformationComponent res = new ExplanationOfBenefit.SupportingInformationComponent(); 8160 parseBackboneAttributes(xpp, res); 8161 next(xpp); 8162 int eventType = nextNoWhitespace(xpp); 8163 while (eventType != XmlPullParser.END_TAG) { 8164 if (!parseExplanationOfBenefitSupportingInformationComponentContent(eventType, xpp, owner, res)) 8165 unknownContent(xpp); 8166 eventType = nextNoWhitespace(xpp); 8167 } 8168 next(xpp); 8169 parseElementClose(res); 8170 return res; 8171 } 8172 8173 protected boolean parseExplanationOfBenefitSupportingInformationComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.SupportingInformationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8174 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8175 res.setSequenceElement(parsePositiveInt(xpp)); 8176 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8177 res.setCategory(parseCodeableConcept(xpp)); 8178 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8179 res.setCode(parseCodeableConcept(xpp)); 8180 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 8181 res.setTiming(parseType("timing", xpp)); 8182 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 8183 res.setValue(parseType("value", xpp)); 8184 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 8185 res.setReason(parseCoding(xpp)); 8186 } else if (!parseBackboneContent(eventType, xpp, res)) 8187 return false; 8188 return true; 8189 } 8190 8191 protected ExplanationOfBenefit.CareTeamComponent parseExplanationOfBenefitCareTeamComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8192 ExplanationOfBenefit.CareTeamComponent res = new ExplanationOfBenefit.CareTeamComponent(); 8193 parseBackboneAttributes(xpp, res); 8194 next(xpp); 8195 int eventType = nextNoWhitespace(xpp); 8196 while (eventType != XmlPullParser.END_TAG) { 8197 if (!parseExplanationOfBenefitCareTeamComponentContent(eventType, xpp, owner, res)) 8198 unknownContent(xpp); 8199 eventType = nextNoWhitespace(xpp); 8200 } 8201 next(xpp); 8202 parseElementClose(res); 8203 return res; 8204 } 8205 8206 protected boolean parseExplanationOfBenefitCareTeamComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.CareTeamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8207 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8208 res.setSequenceElement(parsePositiveInt(xpp)); 8209 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 8210 res.setProvider(parseReference(xpp)); 8211 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 8212 res.setResponsibleElement(parseBoolean(xpp)); 8213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 8214 res.setRole(parseCodeableConcept(xpp)); 8215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 8216 res.setQualification(parseCodeableConcept(xpp)); 8217 } else if (!parseBackboneContent(eventType, xpp, res)) 8218 return false; 8219 return true; 8220 } 8221 8222 protected ExplanationOfBenefit.DiagnosisComponent parseExplanationOfBenefitDiagnosisComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8223 ExplanationOfBenefit.DiagnosisComponent res = new ExplanationOfBenefit.DiagnosisComponent(); 8224 parseBackboneAttributes(xpp, res); 8225 next(xpp); 8226 int eventType = nextNoWhitespace(xpp); 8227 while (eventType != XmlPullParser.END_TAG) { 8228 if (!parseExplanationOfBenefitDiagnosisComponentContent(eventType, xpp, owner, res)) 8229 unknownContent(xpp); 8230 eventType = nextNoWhitespace(xpp); 8231 } 8232 next(xpp); 8233 parseElementClose(res); 8234 return res; 8235 } 8236 8237 protected boolean parseExplanationOfBenefitDiagnosisComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.DiagnosisComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8238 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8239 res.setSequenceElement(parsePositiveInt(xpp)); 8240 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "diagnosis")) { 8241 res.setDiagnosis(parseType("diagnosis", xpp)); 8242 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8243 res.getType().add(parseCodeableConcept(xpp)); 8244 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("packageCode")) { 8245 res.setPackageCode(parseCodeableConcept(xpp)); 8246 } else if (!parseBackboneContent(eventType, xpp, res)) 8247 return false; 8248 return true; 8249 } 8250 8251 protected ExplanationOfBenefit.ProcedureComponent parseExplanationOfBenefitProcedureComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8252 ExplanationOfBenefit.ProcedureComponent res = new ExplanationOfBenefit.ProcedureComponent(); 8253 parseBackboneAttributes(xpp, res); 8254 next(xpp); 8255 int eventType = nextNoWhitespace(xpp); 8256 while (eventType != XmlPullParser.END_TAG) { 8257 if (!parseExplanationOfBenefitProcedureComponentContent(eventType, xpp, owner, res)) 8258 unknownContent(xpp); 8259 eventType = nextNoWhitespace(xpp); 8260 } 8261 next(xpp); 8262 parseElementClose(res); 8263 return res; 8264 } 8265 8266 protected boolean parseExplanationOfBenefitProcedureComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.ProcedureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8267 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8268 res.setSequenceElement(parsePositiveInt(xpp)); 8269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8270 res.setDateElement(parseDateTime(xpp)); 8271 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "procedure")) { 8272 res.setProcedure(parseType("procedure", xpp)); 8273 } else if (!parseBackboneContent(eventType, xpp, res)) 8274 return false; 8275 return true; 8276 } 8277 8278 protected ExplanationOfBenefit.InsuranceComponent parseExplanationOfBenefitInsuranceComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8279 ExplanationOfBenefit.InsuranceComponent res = new ExplanationOfBenefit.InsuranceComponent(); 8280 parseBackboneAttributes(xpp, res); 8281 next(xpp); 8282 int eventType = nextNoWhitespace(xpp); 8283 while (eventType != XmlPullParser.END_TAG) { 8284 if (!parseExplanationOfBenefitInsuranceComponentContent(eventType, xpp, owner, res)) 8285 unknownContent(xpp); 8286 eventType = nextNoWhitespace(xpp); 8287 } 8288 next(xpp); 8289 parseElementClose(res); 8290 return res; 8291 } 8292 8293 protected boolean parseExplanationOfBenefitInsuranceComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.InsuranceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8294 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverage")) { 8295 res.setCoverage(parseReference(xpp)); 8296 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preAuthRef")) { 8297 res.getPreAuthRef().add(parseString(xpp)); 8298 } else if (!parseBackboneContent(eventType, xpp, res)) 8299 return false; 8300 return true; 8301 } 8302 8303 protected ExplanationOfBenefit.AccidentComponent parseExplanationOfBenefitAccidentComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8304 ExplanationOfBenefit.AccidentComponent res = new ExplanationOfBenefit.AccidentComponent(); 8305 parseBackboneAttributes(xpp, res); 8306 next(xpp); 8307 int eventType = nextNoWhitespace(xpp); 8308 while (eventType != XmlPullParser.END_TAG) { 8309 if (!parseExplanationOfBenefitAccidentComponentContent(eventType, xpp, owner, res)) 8310 unknownContent(xpp); 8311 eventType = nextNoWhitespace(xpp); 8312 } 8313 next(xpp); 8314 parseElementClose(res); 8315 return res; 8316 } 8317 8318 protected boolean parseExplanationOfBenefitAccidentComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.AccidentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8319 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8320 res.setDateElement(parseDate(xpp)); 8321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8322 res.setType(parseCodeableConcept(xpp)); 8323 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 8324 res.setLocation(parseType("location", xpp)); 8325 } else if (!parseBackboneContent(eventType, xpp, res)) 8326 return false; 8327 return true; 8328 } 8329 8330 protected ExplanationOfBenefit.ItemComponent parseExplanationOfBenefitItemComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8331 ExplanationOfBenefit.ItemComponent res = new ExplanationOfBenefit.ItemComponent(); 8332 parseBackboneAttributes(xpp, res); 8333 next(xpp); 8334 int eventType = nextNoWhitespace(xpp); 8335 while (eventType != XmlPullParser.END_TAG) { 8336 if (!parseExplanationOfBenefitItemComponentContent(eventType, xpp, owner, res)) 8337 unknownContent(xpp); 8338 eventType = nextNoWhitespace(xpp); 8339 } 8340 next(xpp); 8341 parseElementClose(res); 8342 return res; 8343 } 8344 8345 protected boolean parseExplanationOfBenefitItemComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.ItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8346 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8347 res.setSequenceElement(parsePositiveInt(xpp)); 8348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("careTeamLinkId")) { 8349 res.getCareTeamLinkId().add(parsePositiveInt(xpp)); 8350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnosisLinkId")) { 8351 res.getDiagnosisLinkId().add(parsePositiveInt(xpp)); 8352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureLinkId")) { 8353 res.getProcedureLinkId().add(parsePositiveInt(xpp)); 8354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationLinkId")) { 8355 res.getInformationLinkId().add(parsePositiveInt(xpp)); 8356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8357 res.setRevenue(parseCodeableConcept(xpp)); 8358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8359 res.setCategory(parseCodeableConcept(xpp)); 8360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8361 res.setService(parseCodeableConcept(xpp)); 8362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8363 res.getModifier().add(parseCodeableConcept(xpp)); 8364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 8365 res.getProgramCode().add(parseCodeableConcept(xpp)); 8366 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "serviced")) { 8367 res.setServiced(parseType("serviced", xpp)); 8368 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "location")) { 8369 res.setLocation(parseType("location", xpp)); 8370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 8371 res.setQuantity(parseSimpleQuantity(xpp)); 8372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 8373 res.setUnitPrice(parseMoney(xpp)); 8374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 8375 res.setFactorElement(parseDecimal(xpp)); 8376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 8377 res.setNet(parseMoney(xpp)); 8378 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 8379 res.getUdi().add(parseReference(xpp)); 8380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 8381 res.setBodySite(parseCodeableConcept(xpp)); 8382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subSite")) { 8383 res.getSubSite().add(parseCodeableConcept(xpp)); 8384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8385 res.getEncounter().add(parseReference(xpp)); 8386 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8387 res.getNoteNumber().add(parsePositiveInt(xpp)); 8388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8389 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 8391 res.getDetail().add(parseExplanationOfBenefitDetailComponent(xpp, owner)); 8392 } else if (!parseBackboneContent(eventType, xpp, res)) 8393 return false; 8394 return true; 8395 } 8396 8397 protected ExplanationOfBenefit.AdjudicationComponent parseExplanationOfBenefitAdjudicationComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8398 ExplanationOfBenefit.AdjudicationComponent res = new ExplanationOfBenefit.AdjudicationComponent(); 8399 parseBackboneAttributes(xpp, res); 8400 next(xpp); 8401 int eventType = nextNoWhitespace(xpp); 8402 while (eventType != XmlPullParser.END_TAG) { 8403 if (!parseExplanationOfBenefitAdjudicationComponentContent(eventType, xpp, owner, res)) 8404 unknownContent(xpp); 8405 eventType = nextNoWhitespace(xpp); 8406 } 8407 next(xpp); 8408 parseElementClose(res); 8409 return res; 8410 } 8411 8412 protected boolean parseExplanationOfBenefitAdjudicationComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.AdjudicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8413 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8414 res.setCategory(parseCodeableConcept(xpp)); 8415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 8416 res.setReason(parseCodeableConcept(xpp)); 8417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 8418 res.setAmount(parseMoney(xpp)); 8419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 8420 res.setValueElement(parseDecimal(xpp)); 8421 } else if (!parseBackboneContent(eventType, xpp, res)) 8422 return false; 8423 return true; 8424 } 8425 8426 protected ExplanationOfBenefit.DetailComponent parseExplanationOfBenefitDetailComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8427 ExplanationOfBenefit.DetailComponent res = new ExplanationOfBenefit.DetailComponent(); 8428 parseBackboneAttributes(xpp, res); 8429 next(xpp); 8430 int eventType = nextNoWhitespace(xpp); 8431 while (eventType != XmlPullParser.END_TAG) { 8432 if (!parseExplanationOfBenefitDetailComponentContent(eventType, xpp, owner, res)) 8433 unknownContent(xpp); 8434 eventType = nextNoWhitespace(xpp); 8435 } 8436 next(xpp); 8437 parseElementClose(res); 8438 return res; 8439 } 8440 8441 protected boolean parseExplanationOfBenefitDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.DetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8442 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8443 res.setSequenceElement(parsePositiveInt(xpp)); 8444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8445 res.setType(parseCodeableConcept(xpp)); 8446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8447 res.setRevenue(parseCodeableConcept(xpp)); 8448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8449 res.setCategory(parseCodeableConcept(xpp)); 8450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8451 res.setService(parseCodeableConcept(xpp)); 8452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8453 res.getModifier().add(parseCodeableConcept(xpp)); 8454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 8455 res.getProgramCode().add(parseCodeableConcept(xpp)); 8456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 8457 res.setQuantity(parseSimpleQuantity(xpp)); 8458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 8459 res.setUnitPrice(parseMoney(xpp)); 8460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 8461 res.setFactorElement(parseDecimal(xpp)); 8462 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 8463 res.setNet(parseMoney(xpp)); 8464 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 8465 res.getUdi().add(parseReference(xpp)); 8466 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8467 res.getNoteNumber().add(parsePositiveInt(xpp)); 8468 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8469 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subDetail")) { 8471 res.getSubDetail().add(parseExplanationOfBenefitSubDetailComponent(xpp, owner)); 8472 } else if (!parseBackboneContent(eventType, xpp, res)) 8473 return false; 8474 return true; 8475 } 8476 8477 protected ExplanationOfBenefit.SubDetailComponent parseExplanationOfBenefitSubDetailComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8478 ExplanationOfBenefit.SubDetailComponent res = new ExplanationOfBenefit.SubDetailComponent(); 8479 parseBackboneAttributes(xpp, res); 8480 next(xpp); 8481 int eventType = nextNoWhitespace(xpp); 8482 while (eventType != XmlPullParser.END_TAG) { 8483 if (!parseExplanationOfBenefitSubDetailComponentContent(eventType, xpp, owner, res)) 8484 unknownContent(xpp); 8485 eventType = nextNoWhitespace(xpp); 8486 } 8487 next(xpp); 8488 parseElementClose(res); 8489 return res; 8490 } 8491 8492 protected boolean parseExplanationOfBenefitSubDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.SubDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8493 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequence")) { 8494 res.setSequenceElement(parsePositiveInt(xpp)); 8495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8496 res.setType(parseCodeableConcept(xpp)); 8497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8498 res.setRevenue(parseCodeableConcept(xpp)); 8499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8500 res.setCategory(parseCodeableConcept(xpp)); 8501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8502 res.setService(parseCodeableConcept(xpp)); 8503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8504 res.getModifier().add(parseCodeableConcept(xpp)); 8505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programCode")) { 8506 res.getProgramCode().add(parseCodeableConcept(xpp)); 8507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 8508 res.setQuantity(parseSimpleQuantity(xpp)); 8509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unitPrice")) { 8510 res.setUnitPrice(parseMoney(xpp)); 8511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("factor")) { 8512 res.setFactorElement(parseDecimal(xpp)); 8513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("net")) { 8514 res.setNet(parseMoney(xpp)); 8515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udi")) { 8516 res.getUdi().add(parseReference(xpp)); 8517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8518 res.getNoteNumber().add(parsePositiveInt(xpp)); 8519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8520 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8521 } else if (!parseBackboneContent(eventType, xpp, res)) 8522 return false; 8523 return true; 8524 } 8525 8526 protected ExplanationOfBenefit.AddedItemComponent parseExplanationOfBenefitAddedItemComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8527 ExplanationOfBenefit.AddedItemComponent res = new ExplanationOfBenefit.AddedItemComponent(); 8528 parseBackboneAttributes(xpp, res); 8529 next(xpp); 8530 int eventType = nextNoWhitespace(xpp); 8531 while (eventType != XmlPullParser.END_TAG) { 8532 if (!parseExplanationOfBenefitAddedItemComponentContent(eventType, xpp, owner, res)) 8533 unknownContent(xpp); 8534 eventType = nextNoWhitespace(xpp); 8535 } 8536 next(xpp); 8537 parseElementClose(res); 8538 return res; 8539 } 8540 8541 protected boolean parseExplanationOfBenefitAddedItemComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.AddedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8542 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 8543 res.getSequenceLinkId().add(parsePositiveInt(xpp)); 8544 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8545 res.setRevenue(parseCodeableConcept(xpp)); 8546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8547 res.setCategory(parseCodeableConcept(xpp)); 8548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8549 res.setService(parseCodeableConcept(xpp)); 8550 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8551 res.getModifier().add(parseCodeableConcept(xpp)); 8552 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 8553 res.setFee(parseMoney(xpp)); 8554 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8555 res.getNoteNumber().add(parsePositiveInt(xpp)); 8556 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8557 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 8559 res.getDetail().add(parseExplanationOfBenefitAddedItemsDetailComponent(xpp, owner)); 8560 } else if (!parseBackboneContent(eventType, xpp, res)) 8561 return false; 8562 return true; 8563 } 8564 8565 protected ExplanationOfBenefit.AddedItemsDetailComponent parseExplanationOfBenefitAddedItemsDetailComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8566 ExplanationOfBenefit.AddedItemsDetailComponent res = new ExplanationOfBenefit.AddedItemsDetailComponent(); 8567 parseBackboneAttributes(xpp, res); 8568 next(xpp); 8569 int eventType = nextNoWhitespace(xpp); 8570 while (eventType != XmlPullParser.END_TAG) { 8571 if (!parseExplanationOfBenefitAddedItemsDetailComponentContent(eventType, xpp, owner, res)) 8572 unknownContent(xpp); 8573 eventType = nextNoWhitespace(xpp); 8574 } 8575 next(xpp); 8576 parseElementClose(res); 8577 return res; 8578 } 8579 8580 protected boolean parseExplanationOfBenefitAddedItemsDetailComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.AddedItemsDetailComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8581 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("revenue")) { 8582 res.setRevenue(parseCodeableConcept(xpp)); 8583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8584 res.setCategory(parseCodeableConcept(xpp)); 8585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("service")) { 8586 res.setService(parseCodeableConcept(xpp)); 8587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 8588 res.getModifier().add(parseCodeableConcept(xpp)); 8589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fee")) { 8590 res.setFee(parseMoney(xpp)); 8591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("noteNumber")) { 8592 res.getNoteNumber().add(parsePositiveInt(xpp)); 8593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjudication")) { 8594 res.getAdjudication().add(parseExplanationOfBenefitAdjudicationComponent(xpp, owner)); 8595 } else if (!parseBackboneContent(eventType, xpp, res)) 8596 return false; 8597 return true; 8598 } 8599 8600 protected ExplanationOfBenefit.PaymentComponent parseExplanationOfBenefitPaymentComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8601 ExplanationOfBenefit.PaymentComponent res = new ExplanationOfBenefit.PaymentComponent(); 8602 parseBackboneAttributes(xpp, res); 8603 next(xpp); 8604 int eventType = nextNoWhitespace(xpp); 8605 while (eventType != XmlPullParser.END_TAG) { 8606 if (!parseExplanationOfBenefitPaymentComponentContent(eventType, xpp, owner, res)) 8607 unknownContent(xpp); 8608 eventType = nextNoWhitespace(xpp); 8609 } 8610 next(xpp); 8611 parseElementClose(res); 8612 return res; 8613 } 8614 8615 protected boolean parseExplanationOfBenefitPaymentComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.PaymentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8616 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8617 res.setType(parseCodeableConcept(xpp)); 8618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustment")) { 8619 res.setAdjustment(parseMoney(xpp)); 8620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("adjustmentReason")) { 8621 res.setAdjustmentReason(parseCodeableConcept(xpp)); 8622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8623 res.setDateElement(parseDate(xpp)); 8624 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 8625 res.setAmount(parseMoney(xpp)); 8626 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8627 res.setIdentifier(parseIdentifier(xpp)); 8628 } else if (!parseBackboneContent(eventType, xpp, res)) 8629 return false; 8630 return true; 8631 } 8632 8633 protected ExplanationOfBenefit.NoteComponent parseExplanationOfBenefitNoteComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8634 ExplanationOfBenefit.NoteComponent res = new ExplanationOfBenefit.NoteComponent(); 8635 parseBackboneAttributes(xpp, res); 8636 next(xpp); 8637 int eventType = nextNoWhitespace(xpp); 8638 while (eventType != XmlPullParser.END_TAG) { 8639 if (!parseExplanationOfBenefitNoteComponentContent(eventType, xpp, owner, res)) 8640 unknownContent(xpp); 8641 eventType = nextNoWhitespace(xpp); 8642 } 8643 next(xpp); 8644 parseElementClose(res); 8645 return res; 8646 } 8647 8648 protected boolean parseExplanationOfBenefitNoteComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.NoteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8649 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 8650 res.setNumberElement(parsePositiveInt(xpp)); 8651 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8652 res.setType(parseCodeableConcept(xpp)); 8653 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 8654 res.setTextElement(parseString(xpp)); 8655 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 8656 res.setLanguage(parseCodeableConcept(xpp)); 8657 } else if (!parseBackboneContent(eventType, xpp, res)) 8658 return false; 8659 return true; 8660 } 8661 8662 protected ExplanationOfBenefit.BenefitBalanceComponent parseExplanationOfBenefitBenefitBalanceComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8663 ExplanationOfBenefit.BenefitBalanceComponent res = new ExplanationOfBenefit.BenefitBalanceComponent(); 8664 parseBackboneAttributes(xpp, res); 8665 next(xpp); 8666 int eventType = nextNoWhitespace(xpp); 8667 while (eventType != XmlPullParser.END_TAG) { 8668 if (!parseExplanationOfBenefitBenefitBalanceComponentContent(eventType, xpp, owner, res)) 8669 unknownContent(xpp); 8670 eventType = nextNoWhitespace(xpp); 8671 } 8672 next(xpp); 8673 parseElementClose(res); 8674 return res; 8675 } 8676 8677 protected boolean parseExplanationOfBenefitBenefitBalanceComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.BenefitBalanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8678 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8679 res.setCategory(parseCodeableConcept(xpp)); 8680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subCategory")) { 8681 res.setSubCategory(parseCodeableConcept(xpp)); 8682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excluded")) { 8683 res.setExcludedElement(parseBoolean(xpp)); 8684 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8685 res.setNameElement(parseString(xpp)); 8686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8687 res.setDescriptionElement(parseString(xpp)); 8688 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("network")) { 8689 res.setNetwork(parseCodeableConcept(xpp)); 8690 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { 8691 res.setUnit(parseCodeableConcept(xpp)); 8692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("term")) { 8693 res.setTerm(parseCodeableConcept(xpp)); 8694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("financial")) { 8695 res.getFinancial().add(parseExplanationOfBenefitBenefitComponent(xpp, owner)); 8696 } else if (!parseBackboneContent(eventType, xpp, res)) 8697 return false; 8698 return true; 8699 } 8700 8701 protected ExplanationOfBenefit.BenefitComponent parseExplanationOfBenefitBenefitComponent(XmlPullParser xpp, ExplanationOfBenefit owner) throws XmlPullParserException, IOException, FHIRFormatError { 8702 ExplanationOfBenefit.BenefitComponent res = new ExplanationOfBenefit.BenefitComponent(); 8703 parseBackboneAttributes(xpp, res); 8704 next(xpp); 8705 int eventType = nextNoWhitespace(xpp); 8706 while (eventType != XmlPullParser.END_TAG) { 8707 if (!parseExplanationOfBenefitBenefitComponentContent(eventType, xpp, owner, res)) 8708 unknownContent(xpp); 8709 eventType = nextNoWhitespace(xpp); 8710 } 8711 next(xpp); 8712 parseElementClose(res); 8713 return res; 8714 } 8715 8716 protected boolean parseExplanationOfBenefitBenefitComponentContent(int eventType, XmlPullParser xpp, ExplanationOfBenefit owner, ExplanationOfBenefit.BenefitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8717 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 8718 res.setType(parseCodeableConcept(xpp)); 8719 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "allowed")) { 8720 res.setAllowed(parseType("allowed", xpp)); 8721 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "used")) { 8722 res.setUsed(parseType("used", xpp)); 8723 } else if (!parseBackboneContent(eventType, xpp, res)) 8724 return false; 8725 return true; 8726 } 8727 8728 protected FamilyMemberHistory parseFamilyMemberHistory(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8729 FamilyMemberHistory res = new FamilyMemberHistory(); 8730 parseDomainResourceAttributes(xpp, res); 8731 next(xpp); 8732 int eventType = nextNoWhitespace(xpp); 8733 while (eventType != XmlPullParser.END_TAG) { 8734 if (!parseFamilyMemberHistoryContent(eventType, xpp, res)) 8735 unknownContent(xpp); 8736 eventType = nextNoWhitespace(xpp); 8737 } 8738 next(xpp); 8739 parseElementClose(res); 8740 return res; 8741 } 8742 8743 protected boolean parseFamilyMemberHistoryContent(int eventType, XmlPullParser xpp, FamilyMemberHistory res) throws XmlPullParserException, IOException, FHIRFormatError { 8744 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8745 res.getIdentifier().add(parseIdentifier(xpp)); 8746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 8747 res.getDefinition().add(parseReference(xpp)); 8748 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8749 res.setStatusElement(parseEnumeration(xpp, FamilyMemberHistory.FamilyHistoryStatus.NULL, new FamilyMemberHistory.FamilyHistoryStatusEnumFactory())); 8750 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDone")) { 8751 res.setNotDoneElement(parseBoolean(xpp)); 8752 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDoneReason")) { 8753 res.setNotDoneReason(parseCodeableConcept(xpp)); 8754 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 8755 res.setPatient(parseReference(xpp)); 8756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8757 res.setDateElement(parseDateTime(xpp)); 8758 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8759 res.setNameElement(parseString(xpp)); 8760 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 8761 res.setRelationship(parseCodeableConcept(xpp)); 8762 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 8763 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 8764 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "born")) { 8765 res.setBorn(parseType("born", xpp)); 8766 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "age")) { 8767 res.setAge(parseType("age", xpp)); 8768 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("estimatedAge")) { 8769 res.setEstimatedAgeElement(parseBoolean(xpp)); 8770 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 8771 res.setDeceased(parseType("deceased", xpp)); 8772 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 8773 res.getReasonCode().add(parseCodeableConcept(xpp)); 8774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 8775 res.getReasonReference().add(parseReference(xpp)); 8776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8777 res.getNote().add(parseAnnotation(xpp)); 8778 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 8779 res.getCondition().add(parseFamilyMemberHistoryFamilyMemberHistoryConditionComponent(xpp, res)); 8780 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8781 return false; 8782 return true; 8783 } 8784 8785 protected FamilyMemberHistory.FamilyMemberHistoryConditionComponent parseFamilyMemberHistoryFamilyMemberHistoryConditionComponent(XmlPullParser xpp, FamilyMemberHistory owner) throws XmlPullParserException, IOException, FHIRFormatError { 8786 FamilyMemberHistory.FamilyMemberHistoryConditionComponent res = new FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); 8787 parseBackboneAttributes(xpp, res); 8788 next(xpp); 8789 int eventType = nextNoWhitespace(xpp); 8790 while (eventType != XmlPullParser.END_TAG) { 8791 if (!parseFamilyMemberHistoryFamilyMemberHistoryConditionComponentContent(eventType, xpp, owner, res)) 8792 unknownContent(xpp); 8793 eventType = nextNoWhitespace(xpp); 8794 } 8795 next(xpp); 8796 parseElementClose(res); 8797 return res; 8798 } 8799 8800 protected boolean parseFamilyMemberHistoryFamilyMemberHistoryConditionComponentContent(int eventType, XmlPullParser xpp, FamilyMemberHistory owner, FamilyMemberHistory.FamilyMemberHistoryConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8801 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8802 res.setCode(parseCodeableConcept(xpp)); 8803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 8804 res.setOutcome(parseCodeableConcept(xpp)); 8805 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onset")) { 8806 res.setOnset(parseType("onset", xpp)); 8807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8808 res.getNote().add(parseAnnotation(xpp)); 8809 } else if (!parseBackboneContent(eventType, xpp, res)) 8810 return false; 8811 return true; 8812 } 8813 8814 protected Flag parseFlag(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8815 Flag res = new Flag(); 8816 parseDomainResourceAttributes(xpp, res); 8817 next(xpp); 8818 int eventType = nextNoWhitespace(xpp); 8819 while (eventType != XmlPullParser.END_TAG) { 8820 if (!parseFlagContent(eventType, xpp, res)) 8821 unknownContent(xpp); 8822 eventType = nextNoWhitespace(xpp); 8823 } 8824 next(xpp); 8825 parseElementClose(res); 8826 return res; 8827 } 8828 8829 protected boolean parseFlagContent(int eventType, XmlPullParser xpp, Flag res) throws XmlPullParserException, IOException, FHIRFormatError { 8830 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8831 res.getIdentifier().add(parseIdentifier(xpp)); 8832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8833 res.setStatusElement(parseEnumeration(xpp, Flag.FlagStatus.NULL, new Flag.FlagStatusEnumFactory())); 8834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8835 res.setCategory(parseCodeableConcept(xpp)); 8836 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 8837 res.setCode(parseCodeableConcept(xpp)); 8838 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8839 res.setSubject(parseReference(xpp)); 8840 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 8841 res.setPeriod(parsePeriod(xpp)); 8842 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 8843 res.setEncounter(parseReference(xpp)); 8844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 8845 res.setAuthor(parseReference(xpp)); 8846 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8847 return false; 8848 return true; 8849 } 8850 8851 protected Goal parseGoal(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8852 Goal res = new Goal(); 8853 parseDomainResourceAttributes(xpp, res); 8854 next(xpp); 8855 int eventType = nextNoWhitespace(xpp); 8856 while (eventType != XmlPullParser.END_TAG) { 8857 if (!parseGoalContent(eventType, xpp, res)) 8858 unknownContent(xpp); 8859 eventType = nextNoWhitespace(xpp); 8860 } 8861 next(xpp); 8862 parseElementClose(res); 8863 return res; 8864 } 8865 8866 protected boolean parseGoalContent(int eventType, XmlPullParser xpp, Goal res) throws XmlPullParserException, IOException, FHIRFormatError { 8867 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 8868 res.getIdentifier().add(parseIdentifier(xpp)); 8869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8870 res.setStatusElement(parseEnumeration(xpp, Goal.GoalStatus.NULL, new Goal.GoalStatusEnumFactory())); 8871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 8872 res.getCategory().add(parseCodeableConcept(xpp)); 8873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 8874 res.setPriority(parseCodeableConcept(xpp)); 8875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8876 res.setDescription(parseCodeableConcept(xpp)); 8877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 8878 res.setSubject(parseReference(xpp)); 8879 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "start")) { 8880 res.setStart(parseType("start", xpp)); 8881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 8882 res.setTarget(parseGoalGoalTargetComponent(xpp, res)); 8883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 8884 res.setStatusDateElement(parseDate(xpp)); 8885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 8886 res.setStatusReasonElement(parseString(xpp)); 8887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expressedBy")) { 8888 res.setExpressedBy(parseReference(xpp)); 8889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 8890 res.getAddresses().add(parseReference(xpp)); 8891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 8892 res.getNote().add(parseAnnotation(xpp)); 8893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeCode")) { 8894 res.getOutcomeCode().add(parseCodeableConcept(xpp)); 8895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeReference")) { 8896 res.getOutcomeReference().add(parseReference(xpp)); 8897 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8898 return false; 8899 return true; 8900 } 8901 8902 protected Goal.GoalTargetComponent parseGoalGoalTargetComponent(XmlPullParser xpp, Goal owner) throws XmlPullParserException, IOException, FHIRFormatError { 8903 Goal.GoalTargetComponent res = new Goal.GoalTargetComponent(); 8904 parseBackboneAttributes(xpp, res); 8905 next(xpp); 8906 int eventType = nextNoWhitespace(xpp); 8907 while (eventType != XmlPullParser.END_TAG) { 8908 if (!parseGoalGoalTargetComponentContent(eventType, xpp, owner, res)) 8909 unknownContent(xpp); 8910 eventType = nextNoWhitespace(xpp); 8911 } 8912 next(xpp); 8913 parseElementClose(res); 8914 return res; 8915 } 8916 8917 protected boolean parseGoalGoalTargetComponentContent(int eventType, XmlPullParser xpp, Goal owner, Goal.GoalTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8918 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 8919 res.setMeasure(parseCodeableConcept(xpp)); 8920 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "detail")) { 8921 res.setDetail(parseType("detail", xpp)); 8922 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "due")) { 8923 res.setDue(parseType("due", xpp)); 8924 } else if (!parseBackboneContent(eventType, xpp, res)) 8925 return false; 8926 return true; 8927 } 8928 8929 protected GraphDefinition parseGraphDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 8930 GraphDefinition res = new GraphDefinition(); 8931 parseDomainResourceAttributes(xpp, res); 8932 next(xpp); 8933 int eventType = nextNoWhitespace(xpp); 8934 while (eventType != XmlPullParser.END_TAG) { 8935 if (!parseGraphDefinitionContent(eventType, xpp, res)) 8936 unknownContent(xpp); 8937 eventType = nextNoWhitespace(xpp); 8938 } 8939 next(xpp); 8940 parseElementClose(res); 8941 return res; 8942 } 8943 8944 protected boolean parseGraphDefinitionContent(int eventType, XmlPullParser xpp, GraphDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 8945 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 8946 res.setUrlElement(parseUri(xpp)); 8947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 8948 res.setVersionElement(parseString(xpp)); 8949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 8950 res.setNameElement(parseString(xpp)); 8951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 8952 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 8953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 8954 res.setExperimentalElement(parseBoolean(xpp)); 8955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 8956 res.setDateElement(parseDateTime(xpp)); 8957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 8958 res.setPublisherElement(parseString(xpp)); 8959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 8960 res.getContact().add(parseContactDetail(xpp)); 8961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 8962 res.setDescriptionElement(parseMarkdown(xpp)); 8963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 8964 res.getUseContext().add(parseUsageContext(xpp)); 8965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 8966 res.getJurisdiction().add(parseCodeableConcept(xpp)); 8967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 8968 res.setPurposeElement(parseMarkdown(xpp)); 8969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 8970 res.setStartElement(parseCode(xpp)); 8971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 8972 res.setProfileElement(parseUri(xpp)); 8973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 8974 res.getLink().add(parseGraphDefinitionGraphDefinitionLinkComponent(xpp, res)); 8975 } else if (!parseDomainResourceContent(eventType, xpp, res)) 8976 return false; 8977 return true; 8978 } 8979 8980 protected GraphDefinition.GraphDefinitionLinkComponent parseGraphDefinitionGraphDefinitionLinkComponent(XmlPullParser xpp, GraphDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 8981 GraphDefinition.GraphDefinitionLinkComponent res = new GraphDefinition.GraphDefinitionLinkComponent(); 8982 parseBackboneAttributes(xpp, res); 8983 next(xpp); 8984 int eventType = nextNoWhitespace(xpp); 8985 while (eventType != XmlPullParser.END_TAG) { 8986 if (!parseGraphDefinitionGraphDefinitionLinkComponentContent(eventType, xpp, owner, res)) 8987 unknownContent(xpp); 8988 eventType = nextNoWhitespace(xpp); 8989 } 8990 next(xpp); 8991 parseElementClose(res); 8992 return res; 8993 } 8994 8995 protected boolean parseGraphDefinitionGraphDefinitionLinkComponentContent(int eventType, XmlPullParser xpp, GraphDefinition owner, GraphDefinition.GraphDefinitionLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 8996 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 8997 res.setPathElement(parseString(xpp)); 8998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sliceName")) { 8999 res.setSliceNameElement(parseString(xpp)); 9000 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 9001 res.setMinElement(parseInteger(xpp)); 9002 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 9003 res.setMaxElement(parseString(xpp)); 9004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9005 res.setDescriptionElement(parseString(xpp)); 9006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 9007 res.getTarget().add(parseGraphDefinitionGraphDefinitionLinkTargetComponent(xpp, owner)); 9008 } else if (!parseBackboneContent(eventType, xpp, res)) 9009 return false; 9010 return true; 9011 } 9012 9013 protected GraphDefinition.GraphDefinitionLinkTargetComponent parseGraphDefinitionGraphDefinitionLinkTargetComponent(XmlPullParser xpp, GraphDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9014 GraphDefinition.GraphDefinitionLinkTargetComponent res = new GraphDefinition.GraphDefinitionLinkTargetComponent(); 9015 parseBackboneAttributes(xpp, res); 9016 next(xpp); 9017 int eventType = nextNoWhitespace(xpp); 9018 while (eventType != XmlPullParser.END_TAG) { 9019 if (!parseGraphDefinitionGraphDefinitionLinkTargetComponentContent(eventType, xpp, owner, res)) 9020 unknownContent(xpp); 9021 eventType = nextNoWhitespace(xpp); 9022 } 9023 next(xpp); 9024 parseElementClose(res); 9025 return res; 9026 } 9027 9028 protected boolean parseGraphDefinitionGraphDefinitionLinkTargetComponentContent(int eventType, XmlPullParser xpp, GraphDefinition owner, GraphDefinition.GraphDefinitionLinkTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9029 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9030 res.setTypeElement(parseCode(xpp)); 9031 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 9032 res.setProfileElement(parseUri(xpp)); 9033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compartment")) { 9034 res.getCompartment().add(parseGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent(xpp, owner)); 9035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 9036 res.getLink().add(parseGraphDefinitionGraphDefinitionLinkComponent(xpp, owner)); 9037 } else if (!parseBackboneContent(eventType, xpp, res)) 9038 return false; 9039 return true; 9040 } 9041 9042 protected GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent parseGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent(XmlPullParser xpp, GraphDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 9043 GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent res = new GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent(); 9044 parseBackboneAttributes(xpp, res); 9045 next(xpp); 9046 int eventType = nextNoWhitespace(xpp); 9047 while (eventType != XmlPullParser.END_TAG) { 9048 if (!parseGraphDefinitionGraphDefinitionLinkTargetCompartmentComponentContent(eventType, xpp, owner, res)) 9049 unknownContent(xpp); 9050 eventType = nextNoWhitespace(xpp); 9051 } 9052 next(xpp); 9053 parseElementClose(res); 9054 return res; 9055 } 9056 9057 protected boolean parseGraphDefinitionGraphDefinitionLinkTargetCompartmentComponentContent(int eventType, XmlPullParser xpp, GraphDefinition owner, GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9058 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9059 res.setCodeElement(parseEnumeration(xpp, GraphDefinition.CompartmentCode.NULL, new GraphDefinition.CompartmentCodeEnumFactory())); 9060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 9061 res.setRuleElement(parseEnumeration(xpp, GraphDefinition.GraphCompartmentRule.NULL, new GraphDefinition.GraphCompartmentRuleEnumFactory())); 9062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 9063 res.setExpressionElement(parseString(xpp)); 9064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9065 res.setDescriptionElement(parseString(xpp)); 9066 } else if (!parseBackboneContent(eventType, xpp, res)) 9067 return false; 9068 return true; 9069 } 9070 9071 protected Group parseGroup(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9072 Group res = new Group(); 9073 parseDomainResourceAttributes(xpp, res); 9074 next(xpp); 9075 int eventType = nextNoWhitespace(xpp); 9076 while (eventType != XmlPullParser.END_TAG) { 9077 if (!parseGroupContent(eventType, xpp, res)) 9078 unknownContent(xpp); 9079 eventType = nextNoWhitespace(xpp); 9080 } 9081 next(xpp); 9082 parseElementClose(res); 9083 return res; 9084 } 9085 9086 protected boolean parseGroupContent(int eventType, XmlPullParser xpp, Group res) throws XmlPullParserException, IOException, FHIRFormatError { 9087 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9088 res.getIdentifier().add(parseIdentifier(xpp)); 9089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 9090 res.setActiveElement(parseBoolean(xpp)); 9091 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9092 res.setTypeElement(parseEnumeration(xpp, Group.GroupType.NULL, new Group.GroupTypeEnumFactory())); 9093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actual")) { 9094 res.setActualElement(parseBoolean(xpp)); 9095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9096 res.setCode(parseCodeableConcept(xpp)); 9097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9098 res.setNameElement(parseString(xpp)); 9099 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 9100 res.setQuantityElement(parseUnsignedInt(xpp)); 9101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 9102 res.getCharacteristic().add(parseGroupGroupCharacteristicComponent(xpp, res)); 9103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("member")) { 9104 res.getMember().add(parseGroupGroupMemberComponent(xpp, res)); 9105 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9106 return false; 9107 return true; 9108 } 9109 9110 protected Group.GroupCharacteristicComponent parseGroupGroupCharacteristicComponent(XmlPullParser xpp, Group owner) throws XmlPullParserException, IOException, FHIRFormatError { 9111 Group.GroupCharacteristicComponent res = new Group.GroupCharacteristicComponent(); 9112 parseBackboneAttributes(xpp, res); 9113 next(xpp); 9114 int eventType = nextNoWhitespace(xpp); 9115 while (eventType != XmlPullParser.END_TAG) { 9116 if (!parseGroupGroupCharacteristicComponentContent(eventType, xpp, owner, res)) 9117 unknownContent(xpp); 9118 eventType = nextNoWhitespace(xpp); 9119 } 9120 next(xpp); 9121 parseElementClose(res); 9122 return res; 9123 } 9124 9125 protected boolean parseGroupGroupCharacteristicComponentContent(int eventType, XmlPullParser xpp, Group owner, Group.GroupCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9126 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9127 res.setCode(parseCodeableConcept(xpp)); 9128 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 9129 res.setValue(parseType("value", xpp)); 9130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 9131 res.setExcludeElement(parseBoolean(xpp)); 9132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 9133 res.setPeriod(parsePeriod(xpp)); 9134 } else if (!parseBackboneContent(eventType, xpp, res)) 9135 return false; 9136 return true; 9137 } 9138 9139 protected Group.GroupMemberComponent parseGroupGroupMemberComponent(XmlPullParser xpp, Group owner) throws XmlPullParserException, IOException, FHIRFormatError { 9140 Group.GroupMemberComponent res = new Group.GroupMemberComponent(); 9141 parseBackboneAttributes(xpp, res); 9142 next(xpp); 9143 int eventType = nextNoWhitespace(xpp); 9144 while (eventType != XmlPullParser.END_TAG) { 9145 if (!parseGroupGroupMemberComponentContent(eventType, xpp, owner, res)) 9146 unknownContent(xpp); 9147 eventType = nextNoWhitespace(xpp); 9148 } 9149 next(xpp); 9150 parseElementClose(res); 9151 return res; 9152 } 9153 9154 protected boolean parseGroupGroupMemberComponentContent(int eventType, XmlPullParser xpp, Group owner, Group.GroupMemberComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9155 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 9156 res.setEntity(parseReference(xpp)); 9157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 9158 res.setPeriod(parsePeriod(xpp)); 9159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 9160 res.setInactiveElement(parseBoolean(xpp)); 9161 } else if (!parseBackboneContent(eventType, xpp, res)) 9162 return false; 9163 return true; 9164 } 9165 9166 protected GuidanceResponse parseGuidanceResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9167 GuidanceResponse res = new GuidanceResponse(); 9168 parseDomainResourceAttributes(xpp, res); 9169 next(xpp); 9170 int eventType = nextNoWhitespace(xpp); 9171 while (eventType != XmlPullParser.END_TAG) { 9172 if (!parseGuidanceResponseContent(eventType, xpp, res)) 9173 unknownContent(xpp); 9174 eventType = nextNoWhitespace(xpp); 9175 } 9176 next(xpp); 9177 parseElementClose(res); 9178 return res; 9179 } 9180 9181 protected boolean parseGuidanceResponseContent(int eventType, XmlPullParser xpp, GuidanceResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 9182 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestId")) { 9183 res.setRequestIdElement(parseId(xpp)); 9184 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9185 res.setIdentifier(parseIdentifier(xpp)); 9186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("module")) { 9187 res.setModule(parseReference(xpp)); 9188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9189 res.setStatusElement(parseEnumeration(xpp, GuidanceResponse.GuidanceResponseStatus.NULL, new GuidanceResponse.GuidanceResponseStatusEnumFactory())); 9190 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 9191 res.setSubject(parseReference(xpp)); 9192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 9193 res.setContext(parseReference(xpp)); 9194 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("occurrenceDateTime")) { 9195 res.setOccurrenceDateTimeElement(parseDateTime(xpp)); 9196 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 9197 res.setPerformer(parseReference(xpp)); 9198 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 9199 res.setReason(parseType("reason", xpp)); 9200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 9201 res.getNote().add(parseAnnotation(xpp)); 9202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evaluationMessage")) { 9203 res.getEvaluationMessage().add(parseReference(xpp)); 9204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outputParameters")) { 9205 res.setOutputParameters(parseReference(xpp)); 9206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 9207 res.setResult(parseReference(xpp)); 9208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 9209 res.getDataRequirement().add(parseDataRequirement(xpp)); 9210 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9211 return false; 9212 return true; 9213 } 9214 9215 protected HealthcareService parseHealthcareService(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9216 HealthcareService res = new HealthcareService(); 9217 parseDomainResourceAttributes(xpp, res); 9218 next(xpp); 9219 int eventType = nextNoWhitespace(xpp); 9220 while (eventType != XmlPullParser.END_TAG) { 9221 if (!parseHealthcareServiceContent(eventType, xpp, res)) 9222 unknownContent(xpp); 9223 eventType = nextNoWhitespace(xpp); 9224 } 9225 next(xpp); 9226 parseElementClose(res); 9227 return res; 9228 } 9229 9230 protected boolean parseHealthcareServiceContent(int eventType, XmlPullParser xpp, HealthcareService res) throws XmlPullParserException, IOException, FHIRFormatError { 9231 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9232 res.getIdentifier().add(parseIdentifier(xpp)); 9233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 9234 res.setActiveElement(parseBoolean(xpp)); 9235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("providedBy")) { 9236 res.setProvidedBy(parseReference(xpp)); 9237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 9238 res.setCategory(parseCodeableConcept(xpp)); 9239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9240 res.getType().add(parseCodeableConcept(xpp)); 9241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 9242 res.getSpecialty().add(parseCodeableConcept(xpp)); 9243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 9244 res.getLocation().add(parseReference(xpp)); 9245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9246 res.setNameElement(parseString(xpp)); 9247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 9248 res.setCommentElement(parseString(xpp)); 9249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extraDetails")) { 9250 res.setExtraDetailsElement(parseString(xpp)); 9251 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 9252 res.setPhoto(parseAttachment(xpp)); 9253 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 9254 res.getTelecom().add(parseContactPoint(xpp)); 9255 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coverageArea")) { 9256 res.getCoverageArea().add(parseReference(xpp)); 9257 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceProvisionCode")) { 9258 res.getServiceProvisionCode().add(parseCodeableConcept(xpp)); 9259 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibility")) { 9260 res.setEligibility(parseCodeableConcept(xpp)); 9261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eligibilityNote")) { 9262 res.setEligibilityNoteElement(parseString(xpp)); 9263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("programName")) { 9264 res.getProgramName().add(parseString(xpp)); 9265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { 9266 res.getCharacteristic().add(parseCodeableConcept(xpp)); 9267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referralMethod")) { 9268 res.getReferralMethod().add(parseCodeableConcept(xpp)); 9269 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentRequired")) { 9270 res.setAppointmentRequiredElement(parseBoolean(xpp)); 9271 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableTime")) { 9272 res.getAvailableTime().add(parseHealthcareServiceHealthcareServiceAvailableTimeComponent(xpp, res)); 9273 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notAvailable")) { 9274 res.getNotAvailable().add(parseHealthcareServiceHealthcareServiceNotAvailableComponent(xpp, res)); 9275 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availabilityExceptions")) { 9276 res.setAvailabilityExceptionsElement(parseString(xpp)); 9277 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9278 res.getEndpoint().add(parseReference(xpp)); 9279 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9280 return false; 9281 return true; 9282 } 9283 9284 protected HealthcareService.HealthcareServiceAvailableTimeComponent parseHealthcareServiceHealthcareServiceAvailableTimeComponent(XmlPullParser xpp, HealthcareService owner) throws XmlPullParserException, IOException, FHIRFormatError { 9285 HealthcareService.HealthcareServiceAvailableTimeComponent res = new HealthcareService.HealthcareServiceAvailableTimeComponent(); 9286 parseBackboneAttributes(xpp, res); 9287 next(xpp); 9288 int eventType = nextNoWhitespace(xpp); 9289 while (eventType != XmlPullParser.END_TAG) { 9290 if (!parseHealthcareServiceHealthcareServiceAvailableTimeComponentContent(eventType, xpp, owner, res)) 9291 unknownContent(xpp); 9292 eventType = nextNoWhitespace(xpp); 9293 } 9294 next(xpp); 9295 parseElementClose(res); 9296 return res; 9297 } 9298 9299 protected boolean parseHealthcareServiceHealthcareServiceAvailableTimeComponentContent(int eventType, XmlPullParser xpp, HealthcareService owner, HealthcareService.HealthcareServiceAvailableTimeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9300 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysOfWeek")) { 9301 res.getDaysOfWeek().add(parseEnumeration(xpp, HealthcareService.DaysOfWeek.NULL, new HealthcareService.DaysOfWeekEnumFactory())); 9302 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allDay")) { 9303 res.setAllDayElement(parseBoolean(xpp)); 9304 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableStartTime")) { 9305 res.setAvailableStartTimeElement(parseTime(xpp)); 9306 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableEndTime")) { 9307 res.setAvailableEndTimeElement(parseTime(xpp)); 9308 } else if (!parseBackboneContent(eventType, xpp, res)) 9309 return false; 9310 return true; 9311 } 9312 9313 protected HealthcareService.HealthcareServiceNotAvailableComponent parseHealthcareServiceHealthcareServiceNotAvailableComponent(XmlPullParser xpp, HealthcareService owner) throws XmlPullParserException, IOException, FHIRFormatError { 9314 HealthcareService.HealthcareServiceNotAvailableComponent res = new HealthcareService.HealthcareServiceNotAvailableComponent(); 9315 parseBackboneAttributes(xpp, res); 9316 next(xpp); 9317 int eventType = nextNoWhitespace(xpp); 9318 while (eventType != XmlPullParser.END_TAG) { 9319 if (!parseHealthcareServiceHealthcareServiceNotAvailableComponentContent(eventType, xpp, owner, res)) 9320 unknownContent(xpp); 9321 eventType = nextNoWhitespace(xpp); 9322 } 9323 next(xpp); 9324 parseElementClose(res); 9325 return res; 9326 } 9327 9328 protected boolean parseHealthcareServiceHealthcareServiceNotAvailableComponentContent(int eventType, XmlPullParser xpp, HealthcareService owner, HealthcareService.HealthcareServiceNotAvailableComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9329 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9330 res.setDescriptionElement(parseString(xpp)); 9331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("during")) { 9332 res.setDuring(parsePeriod(xpp)); 9333 } else if (!parseBackboneContent(eventType, xpp, res)) 9334 return false; 9335 return true; 9336 } 9337 9338 protected ImagingManifest parseImagingManifest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9339 ImagingManifest res = new ImagingManifest(); 9340 parseDomainResourceAttributes(xpp, res); 9341 next(xpp); 9342 int eventType = nextNoWhitespace(xpp); 9343 while (eventType != XmlPullParser.END_TAG) { 9344 if (!parseImagingManifestContent(eventType, xpp, res)) 9345 unknownContent(xpp); 9346 eventType = nextNoWhitespace(xpp); 9347 } 9348 next(xpp); 9349 parseElementClose(res); 9350 return res; 9351 } 9352 9353 protected boolean parseImagingManifestContent(int eventType, XmlPullParser xpp, ImagingManifest res) throws XmlPullParserException, IOException, FHIRFormatError { 9354 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9355 res.setIdentifier(parseIdentifier(xpp)); 9356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9357 res.setPatient(parseReference(xpp)); 9358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoringTime")) { 9359 res.setAuthoringTimeElement(parseDateTime(xpp)); 9360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 9361 res.setAuthor(parseReference(xpp)); 9362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9363 res.setDescriptionElement(parseString(xpp)); 9364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 9365 res.getStudy().add(parseImagingManifestStudyComponent(xpp, res)); 9366 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9367 return false; 9368 return true; 9369 } 9370 9371 protected ImagingManifest.StudyComponent parseImagingManifestStudyComponent(XmlPullParser xpp, ImagingManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 9372 ImagingManifest.StudyComponent res = new ImagingManifest.StudyComponent(); 9373 parseBackboneAttributes(xpp, res); 9374 next(xpp); 9375 int eventType = nextNoWhitespace(xpp); 9376 while (eventType != XmlPullParser.END_TAG) { 9377 if (!parseImagingManifestStudyComponentContent(eventType, xpp, owner, res)) 9378 unknownContent(xpp); 9379 eventType = nextNoWhitespace(xpp); 9380 } 9381 next(xpp); 9382 parseElementClose(res); 9383 return res; 9384 } 9385 9386 protected boolean parseImagingManifestStudyComponentContent(int eventType, XmlPullParser xpp, ImagingManifest owner, ImagingManifest.StudyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9387 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9388 res.setUidElement(parseOid(xpp)); 9389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("imagingStudy")) { 9390 res.setImagingStudy(parseReference(xpp)); 9391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9392 res.getEndpoint().add(parseReference(xpp)); 9393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 9394 res.getSeries().add(parseImagingManifestSeriesComponent(xpp, owner)); 9395 } else if (!parseBackboneContent(eventType, xpp, res)) 9396 return false; 9397 return true; 9398 } 9399 9400 protected ImagingManifest.SeriesComponent parseImagingManifestSeriesComponent(XmlPullParser xpp, ImagingManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 9401 ImagingManifest.SeriesComponent res = new ImagingManifest.SeriesComponent(); 9402 parseBackboneAttributes(xpp, res); 9403 next(xpp); 9404 int eventType = nextNoWhitespace(xpp); 9405 while (eventType != XmlPullParser.END_TAG) { 9406 if (!parseImagingManifestSeriesComponentContent(eventType, xpp, owner, res)) 9407 unknownContent(xpp); 9408 eventType = nextNoWhitespace(xpp); 9409 } 9410 next(xpp); 9411 parseElementClose(res); 9412 return res; 9413 } 9414 9415 protected boolean parseImagingManifestSeriesComponentContent(int eventType, XmlPullParser xpp, ImagingManifest owner, ImagingManifest.SeriesComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9416 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9417 res.setUidElement(parseOid(xpp)); 9418 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9419 res.getEndpoint().add(parseReference(xpp)); 9420 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 9421 res.getInstance().add(parseImagingManifestInstanceComponent(xpp, owner)); 9422 } else if (!parseBackboneContent(eventType, xpp, res)) 9423 return false; 9424 return true; 9425 } 9426 9427 protected ImagingManifest.InstanceComponent parseImagingManifestInstanceComponent(XmlPullParser xpp, ImagingManifest owner) throws XmlPullParserException, IOException, FHIRFormatError { 9428 ImagingManifest.InstanceComponent res = new ImagingManifest.InstanceComponent(); 9429 parseBackboneAttributes(xpp, res); 9430 next(xpp); 9431 int eventType = nextNoWhitespace(xpp); 9432 while (eventType != XmlPullParser.END_TAG) { 9433 if (!parseImagingManifestInstanceComponentContent(eventType, xpp, owner, res)) 9434 unknownContent(xpp); 9435 eventType = nextNoWhitespace(xpp); 9436 } 9437 next(xpp); 9438 parseElementClose(res); 9439 return res; 9440 } 9441 9442 protected boolean parseImagingManifestInstanceComponentContent(int eventType, XmlPullParser xpp, ImagingManifest owner, ImagingManifest.InstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9443 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 9444 res.setSopClassElement(parseOid(xpp)); 9445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9446 res.setUidElement(parseOid(xpp)); 9447 } else if (!parseBackboneContent(eventType, xpp, res)) 9448 return false; 9449 return true; 9450 } 9451 9452 protected ImagingStudy parseImagingStudy(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9453 ImagingStudy res = new ImagingStudy(); 9454 parseDomainResourceAttributes(xpp, res); 9455 next(xpp); 9456 int eventType = nextNoWhitespace(xpp); 9457 while (eventType != XmlPullParser.END_TAG) { 9458 if (!parseImagingStudyContent(eventType, xpp, res)) 9459 unknownContent(xpp); 9460 eventType = nextNoWhitespace(xpp); 9461 } 9462 next(xpp); 9463 parseElementClose(res); 9464 return res; 9465 } 9466 9467 protected boolean parseImagingStudyContent(int eventType, XmlPullParser xpp, ImagingStudy res) throws XmlPullParserException, IOException, FHIRFormatError { 9468 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9469 res.setUidElement(parseOid(xpp)); 9470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accession")) { 9471 res.setAccession(parseIdentifier(xpp)); 9472 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9473 res.getIdentifier().add(parseIdentifier(xpp)); 9474 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 9475 res.setAvailabilityElement(parseEnumeration(xpp, ImagingStudy.InstanceAvailability.NULL, new ImagingStudy.InstanceAvailabilityEnumFactory())); 9476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modalityList")) { 9477 res.getModalityList().add(parseCoding(xpp)); 9478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9479 res.setPatient(parseReference(xpp)); 9480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 9481 res.setContext(parseReference(xpp)); 9482 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 9483 res.setStartedElement(parseDateTime(xpp)); 9484 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 9485 res.getBasedOn().add(parseReference(xpp)); 9486 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referrer")) { 9487 res.setReferrer(parseReference(xpp)); 9488 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpreter")) { 9489 res.getInterpreter().add(parseReference(xpp)); 9490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9491 res.getEndpoint().add(parseReference(xpp)); 9492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfSeries")) { 9493 res.setNumberOfSeriesElement(parseUnsignedInt(xpp)); 9494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 9495 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 9496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureReference")) { 9497 res.getProcedureReference().add(parseReference(xpp)); 9498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedureCode")) { 9499 res.getProcedureCode().add(parseCodeableConcept(xpp)); 9500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 9501 res.setReason(parseCodeableConcept(xpp)); 9502 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9503 res.setDescriptionElement(parseString(xpp)); 9504 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 9505 res.getSeries().add(parseImagingStudyImagingStudySeriesComponent(xpp, res)); 9506 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9507 return false; 9508 return true; 9509 } 9510 9511 protected ImagingStudy.ImagingStudySeriesComponent parseImagingStudyImagingStudySeriesComponent(XmlPullParser xpp, ImagingStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 9512 ImagingStudy.ImagingStudySeriesComponent res = new ImagingStudy.ImagingStudySeriesComponent(); 9513 parseBackboneAttributes(xpp, res); 9514 next(xpp); 9515 int eventType = nextNoWhitespace(xpp); 9516 while (eventType != XmlPullParser.END_TAG) { 9517 if (!parseImagingStudyImagingStudySeriesComponentContent(eventType, xpp, owner, res)) 9518 unknownContent(xpp); 9519 eventType = nextNoWhitespace(xpp); 9520 } 9521 next(xpp); 9522 parseElementClose(res); 9523 return res; 9524 } 9525 9526 protected boolean parseImagingStudyImagingStudySeriesComponentContent(int eventType, XmlPullParser xpp, ImagingStudy owner, ImagingStudy.ImagingStudySeriesComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9527 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9528 res.setUidElement(parseOid(xpp)); 9529 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 9530 res.setNumberElement(parseUnsignedInt(xpp)); 9531 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modality")) { 9532 res.setModality(parseCoding(xpp)); 9533 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9534 res.setDescriptionElement(parseString(xpp)); 9535 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfInstances")) { 9536 res.setNumberOfInstancesElement(parseUnsignedInt(xpp)); 9537 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availability")) { 9538 res.setAvailabilityElement(parseEnumeration(xpp, ImagingStudy.InstanceAvailability.NULL, new ImagingStudy.InstanceAvailabilityEnumFactory())); 9539 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 9540 res.getEndpoint().add(parseReference(xpp)); 9541 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 9542 res.setBodySite(parseCoding(xpp)); 9543 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("laterality")) { 9544 res.setLaterality(parseCoding(xpp)); 9545 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("started")) { 9546 res.setStartedElement(parseDateTime(xpp)); 9547 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 9548 res.getPerformer().add(parseReference(xpp)); 9549 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 9550 res.getInstance().add(parseImagingStudyImagingStudySeriesInstanceComponent(xpp, owner)); 9551 } else if (!parseBackboneContent(eventType, xpp, res)) 9552 return false; 9553 return true; 9554 } 9555 9556 protected ImagingStudy.ImagingStudySeriesInstanceComponent parseImagingStudyImagingStudySeriesInstanceComponent(XmlPullParser xpp, ImagingStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 9557 ImagingStudy.ImagingStudySeriesInstanceComponent res = new ImagingStudy.ImagingStudySeriesInstanceComponent(); 9558 parseBackboneAttributes(xpp, res); 9559 next(xpp); 9560 int eventType = nextNoWhitespace(xpp); 9561 while (eventType != XmlPullParser.END_TAG) { 9562 if (!parseImagingStudyImagingStudySeriesInstanceComponentContent(eventType, xpp, owner, res)) 9563 unknownContent(xpp); 9564 eventType = nextNoWhitespace(xpp); 9565 } 9566 next(xpp); 9567 parseElementClose(res); 9568 return res; 9569 } 9570 9571 protected boolean parseImagingStudyImagingStudySeriesInstanceComponentContent(int eventType, XmlPullParser xpp, ImagingStudy owner, ImagingStudy.ImagingStudySeriesInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9572 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uid")) { 9573 res.setUidElement(parseOid(xpp)); 9574 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("number")) { 9575 res.setNumberElement(parseUnsignedInt(xpp)); 9576 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sopClass")) { 9577 res.setSopClassElement(parseOid(xpp)); 9578 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 9579 res.setTitleElement(parseString(xpp)); 9580 } else if (!parseBackboneContent(eventType, xpp, res)) 9581 return false; 9582 return true; 9583 } 9584 9585 protected Immunization parseImmunization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9586 Immunization res = new Immunization(); 9587 parseDomainResourceAttributes(xpp, res); 9588 next(xpp); 9589 int eventType = nextNoWhitespace(xpp); 9590 while (eventType != XmlPullParser.END_TAG) { 9591 if (!parseImmunizationContent(eventType, xpp, res)) 9592 unknownContent(xpp); 9593 eventType = nextNoWhitespace(xpp); 9594 } 9595 next(xpp); 9596 parseElementClose(res); 9597 return res; 9598 } 9599 9600 protected boolean parseImmunizationContent(int eventType, XmlPullParser xpp, Immunization res) throws XmlPullParserException, IOException, FHIRFormatError { 9601 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9602 res.getIdentifier().add(parseIdentifier(xpp)); 9603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9604 res.setStatusElement(parseEnumeration(xpp, Immunization.ImmunizationStatus.NULL, new Immunization.ImmunizationStatusEnumFactory())); 9605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notGiven")) { 9606 res.setNotGivenElement(parseBoolean(xpp)); 9607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 9608 res.setVaccineCode(parseCodeableConcept(xpp)); 9609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9610 res.setPatient(parseReference(xpp)); 9611 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 9612 res.setEncounter(parseReference(xpp)); 9613 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9614 res.setDateElement(parseDateTime(xpp)); 9615 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("primarySource")) { 9616 res.setPrimarySourceElement(parseBoolean(xpp)); 9617 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reportOrigin")) { 9618 res.setReportOrigin(parseCodeableConcept(xpp)); 9619 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 9620 res.setLocation(parseReference(xpp)); 9621 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 9622 res.setManufacturer(parseReference(xpp)); 9623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 9624 res.setLotNumberElement(parseString(xpp)); 9625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 9626 res.setExpirationDateElement(parseDate(xpp)); 9627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 9628 res.setSite(parseCodeableConcept(xpp)); 9629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 9630 res.setRoute(parseCodeableConcept(xpp)); 9631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseQuantity")) { 9632 res.setDoseQuantity(parseSimpleQuantity(xpp)); 9633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitioner")) { 9634 res.getPractitioner().add(parseImmunizationImmunizationPractitionerComponent(xpp, res)); 9635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 9636 res.getNote().add(parseAnnotation(xpp)); 9637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("explanation")) { 9638 res.setExplanation(parseImmunizationImmunizationExplanationComponent(xpp, res)); 9639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reaction")) { 9640 res.getReaction().add(parseImmunizationImmunizationReactionComponent(xpp, res)); 9641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccinationProtocol")) { 9642 res.getVaccinationProtocol().add(parseImmunizationImmunizationVaccinationProtocolComponent(xpp, res)); 9643 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9644 return false; 9645 return true; 9646 } 9647 9648 protected Immunization.ImmunizationPractitionerComponent parseImmunizationImmunizationPractitionerComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 9649 Immunization.ImmunizationPractitionerComponent res = new Immunization.ImmunizationPractitionerComponent(); 9650 parseBackboneAttributes(xpp, res); 9651 next(xpp); 9652 int eventType = nextNoWhitespace(xpp); 9653 while (eventType != XmlPullParser.END_TAG) { 9654 if (!parseImmunizationImmunizationPractitionerComponentContent(eventType, xpp, owner, res)) 9655 unknownContent(xpp); 9656 eventType = nextNoWhitespace(xpp); 9657 } 9658 next(xpp); 9659 parseElementClose(res); 9660 return res; 9661 } 9662 9663 protected boolean parseImmunizationImmunizationPractitionerComponentContent(int eventType, XmlPullParser xpp, Immunization owner, Immunization.ImmunizationPractitionerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9664 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 9665 res.setRole(parseCodeableConcept(xpp)); 9666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 9667 res.setActor(parseReference(xpp)); 9668 } else if (!parseBackboneContent(eventType, xpp, res)) 9669 return false; 9670 return true; 9671 } 9672 9673 protected Immunization.ImmunizationExplanationComponent parseImmunizationImmunizationExplanationComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 9674 Immunization.ImmunizationExplanationComponent res = new Immunization.ImmunizationExplanationComponent(); 9675 parseBackboneAttributes(xpp, res); 9676 next(xpp); 9677 int eventType = nextNoWhitespace(xpp); 9678 while (eventType != XmlPullParser.END_TAG) { 9679 if (!parseImmunizationImmunizationExplanationComponentContent(eventType, xpp, owner, res)) 9680 unknownContent(xpp); 9681 eventType = nextNoWhitespace(xpp); 9682 } 9683 next(xpp); 9684 parseElementClose(res); 9685 return res; 9686 } 9687 9688 protected boolean parseImmunizationImmunizationExplanationComponentContent(int eventType, XmlPullParser xpp, Immunization owner, Immunization.ImmunizationExplanationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9689 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 9690 res.getReason().add(parseCodeableConcept(xpp)); 9691 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotGiven")) { 9692 res.getReasonNotGiven().add(parseCodeableConcept(xpp)); 9693 } else if (!parseBackboneContent(eventType, xpp, res)) 9694 return false; 9695 return true; 9696 } 9697 9698 protected Immunization.ImmunizationReactionComponent parseImmunizationImmunizationReactionComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 9699 Immunization.ImmunizationReactionComponent res = new Immunization.ImmunizationReactionComponent(); 9700 parseBackboneAttributes(xpp, res); 9701 next(xpp); 9702 int eventType = nextNoWhitespace(xpp); 9703 while (eventType != XmlPullParser.END_TAG) { 9704 if (!parseImmunizationImmunizationReactionComponentContent(eventType, xpp, owner, res)) 9705 unknownContent(xpp); 9706 eventType = nextNoWhitespace(xpp); 9707 } 9708 next(xpp); 9709 parseElementClose(res); 9710 return res; 9711 } 9712 9713 protected boolean parseImmunizationImmunizationReactionComponentContent(int eventType, XmlPullParser xpp, Immunization owner, Immunization.ImmunizationReactionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9714 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9715 res.setDateElement(parseDateTime(xpp)); 9716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 9717 res.setDetail(parseReference(xpp)); 9718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reported")) { 9719 res.setReportedElement(parseBoolean(xpp)); 9720 } else if (!parseBackboneContent(eventType, xpp, res)) 9721 return false; 9722 return true; 9723 } 9724 9725 protected Immunization.ImmunizationVaccinationProtocolComponent parseImmunizationImmunizationVaccinationProtocolComponent(XmlPullParser xpp, Immunization owner) throws XmlPullParserException, IOException, FHIRFormatError { 9726 Immunization.ImmunizationVaccinationProtocolComponent res = new Immunization.ImmunizationVaccinationProtocolComponent(); 9727 parseBackboneAttributes(xpp, res); 9728 next(xpp); 9729 int eventType = nextNoWhitespace(xpp); 9730 while (eventType != XmlPullParser.END_TAG) { 9731 if (!parseImmunizationImmunizationVaccinationProtocolComponentContent(eventType, xpp, owner, res)) 9732 unknownContent(xpp); 9733 eventType = nextNoWhitespace(xpp); 9734 } 9735 next(xpp); 9736 parseElementClose(res); 9737 return res; 9738 } 9739 9740 protected boolean parseImmunizationImmunizationVaccinationProtocolComponentContent(int eventType, XmlPullParser xpp, Immunization owner, Immunization.ImmunizationVaccinationProtocolComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9741 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseSequence")) { 9742 res.setDoseSequenceElement(parsePositiveInt(xpp)); 9743 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9744 res.setDescriptionElement(parseString(xpp)); 9745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 9746 res.setAuthority(parseReference(xpp)); 9747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 9748 res.setSeriesElement(parseString(xpp)); 9749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { 9750 res.setSeriesDosesElement(parsePositiveInt(xpp)); 9751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { 9752 res.getTargetDisease().add(parseCodeableConcept(xpp)); 9753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatus")) { 9754 res.setDoseStatus(parseCodeableConcept(xpp)); 9755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseStatusReason")) { 9756 res.setDoseStatusReason(parseCodeableConcept(xpp)); 9757 } else if (!parseBackboneContent(eventType, xpp, res)) 9758 return false; 9759 return true; 9760 } 9761 9762 protected ImmunizationRecommendation parseImmunizationRecommendation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9763 ImmunizationRecommendation res = new ImmunizationRecommendation(); 9764 parseDomainResourceAttributes(xpp, res); 9765 next(xpp); 9766 int eventType = nextNoWhitespace(xpp); 9767 while (eventType != XmlPullParser.END_TAG) { 9768 if (!parseImmunizationRecommendationContent(eventType, xpp, res)) 9769 unknownContent(xpp); 9770 eventType = nextNoWhitespace(xpp); 9771 } 9772 next(xpp); 9773 parseElementClose(res); 9774 return res; 9775 } 9776 9777 protected boolean parseImmunizationRecommendationContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation res) throws XmlPullParserException, IOException, FHIRFormatError { 9778 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 9779 res.getIdentifier().add(parseIdentifier(xpp)); 9780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 9781 res.setPatient(parseReference(xpp)); 9782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recommendation")) { 9783 res.getRecommendation().add(parseImmunizationRecommendationImmunizationRecommendationRecommendationComponent(xpp, res)); 9784 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9785 return false; 9786 return true; 9787 } 9788 9789 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 9790 ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); 9791 parseBackboneAttributes(xpp, res); 9792 next(xpp); 9793 int eventType = nextNoWhitespace(xpp); 9794 while (eventType != XmlPullParser.END_TAG) { 9795 if (!parseImmunizationRecommendationImmunizationRecommendationRecommendationComponentContent(eventType, xpp, owner, res)) 9796 unknownContent(xpp); 9797 eventType = nextNoWhitespace(xpp); 9798 } 9799 next(xpp); 9800 parseElementClose(res); 9801 return res; 9802 } 9803 9804 protected boolean parseImmunizationRecommendationImmunizationRecommendationRecommendationComponentContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation owner, ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9805 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9806 res.setDateElement(parseDateTime(xpp)); 9807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("vaccineCode")) { 9808 res.setVaccineCode(parseCodeableConcept(xpp)); 9809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { 9810 res.setTargetDisease(parseCodeableConcept(xpp)); 9811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { 9812 res.setDoseNumberElement(parsePositiveInt(xpp)); 9813 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("forecastStatus")) { 9814 res.setForecastStatus(parseCodeableConcept(xpp)); 9815 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateCriterion")) { 9816 res.getDateCriterion().add(parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(xpp, owner)); 9817 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 9818 res.setProtocol(parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(xpp, owner)); 9819 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingImmunization")) { 9820 res.getSupportingImmunization().add(parseReference(xpp)); 9821 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingPatientInformation")) { 9822 res.getSupportingPatientInformation().add(parseReference(xpp)); 9823 } else if (!parseBackboneContent(eventType, xpp, res)) 9824 return false; 9825 return true; 9826 } 9827 9828 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 9829 ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); 9830 parseBackboneAttributes(xpp, res); 9831 next(xpp); 9832 int eventType = nextNoWhitespace(xpp); 9833 while (eventType != XmlPullParser.END_TAG) { 9834 if (!parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponentContent(eventType, xpp, owner, res)) 9835 unknownContent(xpp); 9836 eventType = nextNoWhitespace(xpp); 9837 } 9838 next(xpp); 9839 parseElementClose(res); 9840 return res; 9841 } 9842 9843 protected boolean parseImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponentContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation owner, ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9844 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 9845 res.setCode(parseCodeableConcept(xpp)); 9846 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 9847 res.setValueElement(parseDateTime(xpp)); 9848 } else if (!parseBackboneContent(eventType, xpp, res)) 9849 return false; 9850 return true; 9851 } 9852 9853 protected ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(XmlPullParser xpp, ImmunizationRecommendation owner) throws XmlPullParserException, IOException, FHIRFormatError { 9854 ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent res = new ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); 9855 parseBackboneAttributes(xpp, res); 9856 next(xpp); 9857 int eventType = nextNoWhitespace(xpp); 9858 while (eventType != XmlPullParser.END_TAG) { 9859 if (!parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponentContent(eventType, xpp, owner, res)) 9860 unknownContent(xpp); 9861 eventType = nextNoWhitespace(xpp); 9862 } 9863 next(xpp); 9864 parseElementClose(res); 9865 return res; 9866 } 9867 9868 protected boolean parseImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponentContent(int eventType, XmlPullParser xpp, ImmunizationRecommendation owner, ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9869 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseSequence")) { 9870 res.setDoseSequenceElement(parsePositiveInt(xpp)); 9871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9872 res.setDescriptionElement(parseString(xpp)); 9873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authority")) { 9874 res.setAuthority(parseReference(xpp)); 9875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { 9876 res.setSeriesElement(parseString(xpp)); 9877 } else if (!parseBackboneContent(eventType, xpp, res)) 9878 return false; 9879 return true; 9880 } 9881 9882 protected ImplementationGuide parseImplementationGuide(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 9883 ImplementationGuide res = new ImplementationGuide(); 9884 parseDomainResourceAttributes(xpp, res); 9885 next(xpp); 9886 int eventType = nextNoWhitespace(xpp); 9887 while (eventType != XmlPullParser.END_TAG) { 9888 if (!parseImplementationGuideContent(eventType, xpp, res)) 9889 unknownContent(xpp); 9890 eventType = nextNoWhitespace(xpp); 9891 } 9892 next(xpp); 9893 parseElementClose(res); 9894 return res; 9895 } 9896 9897 protected boolean parseImplementationGuideContent(int eventType, XmlPullParser xpp, ImplementationGuide res) throws XmlPullParserException, IOException, FHIRFormatError { 9898 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 9899 res.setUrlElement(parseUri(xpp)); 9900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 9901 res.setVersionElement(parseString(xpp)); 9902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9903 res.setNameElement(parseString(xpp)); 9904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 9905 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 9906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 9907 res.setExperimentalElement(parseBoolean(xpp)); 9908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 9909 res.setDateElement(parseDateTime(xpp)); 9910 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 9911 res.setPublisherElement(parseString(xpp)); 9912 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 9913 res.getContact().add(parseContactDetail(xpp)); 9914 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9915 res.setDescriptionElement(parseMarkdown(xpp)); 9916 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 9917 res.getUseContext().add(parseUsageContext(xpp)); 9918 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 9919 res.getJurisdiction().add(parseCodeableConcept(xpp)); 9920 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 9921 res.setCopyrightElement(parseMarkdown(xpp)); 9922 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 9923 res.setFhirVersionElement(parseId(xpp)); 9924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependency")) { 9925 res.getDependency().add(parseImplementationGuideImplementationGuideDependencyComponent(xpp, res)); 9926 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 9927 res.getPackage().add(parseImplementationGuideImplementationGuidePackageComponent(xpp, res)); 9928 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("global")) { 9929 res.getGlobal().add(parseImplementationGuideImplementationGuideGlobalComponent(xpp, res)); 9930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binary")) { 9931 res.getBinary().add(parseUri(xpp)); 9932 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 9933 res.setPage(parseImplementationGuideImplementationGuidePageComponent(xpp, res)); 9934 } else if (!parseDomainResourceContent(eventType, xpp, res)) 9935 return false; 9936 return true; 9937 } 9938 9939 protected ImplementationGuide.ImplementationGuideDependencyComponent parseImplementationGuideImplementationGuideDependencyComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 9940 ImplementationGuide.ImplementationGuideDependencyComponent res = new ImplementationGuide.ImplementationGuideDependencyComponent(); 9941 parseBackboneAttributes(xpp, res); 9942 next(xpp); 9943 int eventType = nextNoWhitespace(xpp); 9944 while (eventType != XmlPullParser.END_TAG) { 9945 if (!parseImplementationGuideImplementationGuideDependencyComponentContent(eventType, xpp, owner, res)) 9946 unknownContent(xpp); 9947 eventType = nextNoWhitespace(xpp); 9948 } 9949 next(xpp); 9950 parseElementClose(res); 9951 return res; 9952 } 9953 9954 protected boolean parseImplementationGuideImplementationGuideDependencyComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuideDependencyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9955 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 9956 res.setTypeElement(parseEnumeration(xpp, ImplementationGuide.GuideDependencyType.NULL, new ImplementationGuide.GuideDependencyTypeEnumFactory())); 9957 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 9958 res.setUriElement(parseUri(xpp)); 9959 } else if (!parseBackboneContent(eventType, xpp, res)) 9960 return false; 9961 return true; 9962 } 9963 9964 protected ImplementationGuide.ImplementationGuidePackageComponent parseImplementationGuideImplementationGuidePackageComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 9965 ImplementationGuide.ImplementationGuidePackageComponent res = new ImplementationGuide.ImplementationGuidePackageComponent(); 9966 parseBackboneAttributes(xpp, res); 9967 next(xpp); 9968 int eventType = nextNoWhitespace(xpp); 9969 while (eventType != XmlPullParser.END_TAG) { 9970 if (!parseImplementationGuideImplementationGuidePackageComponentContent(eventType, xpp, owner, res)) 9971 unknownContent(xpp); 9972 eventType = nextNoWhitespace(xpp); 9973 } 9974 next(xpp); 9975 parseElementClose(res); 9976 return res; 9977 } 9978 9979 protected boolean parseImplementationGuideImplementationGuidePackageComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuidePackageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 9980 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 9981 res.setNameElement(parseString(xpp)); 9982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 9983 res.setDescriptionElement(parseString(xpp)); 9984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 9985 res.getResource().add(parseImplementationGuideImplementationGuidePackageResourceComponent(xpp, owner)); 9986 } else if (!parseBackboneContent(eventType, xpp, res)) 9987 return false; 9988 return true; 9989 } 9990 9991 protected ImplementationGuide.ImplementationGuidePackageResourceComponent parseImplementationGuideImplementationGuidePackageResourceComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 9992 ImplementationGuide.ImplementationGuidePackageResourceComponent res = new ImplementationGuide.ImplementationGuidePackageResourceComponent(); 9993 parseBackboneAttributes(xpp, res); 9994 next(xpp); 9995 int eventType = nextNoWhitespace(xpp); 9996 while (eventType != XmlPullParser.END_TAG) { 9997 if (!parseImplementationGuideImplementationGuidePackageResourceComponentContent(eventType, xpp, owner, res)) 9998 unknownContent(xpp); 9999 eventType = nextNoWhitespace(xpp); 10000 } 10001 next(xpp); 10002 parseElementClose(res); 10003 return res; 10004 } 10005 10006 protected boolean parseImplementationGuideImplementationGuidePackageResourceComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuidePackageResourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10007 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("example")) { 10008 res.setExampleElement(parseBoolean(xpp)); 10009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10010 res.setNameElement(parseString(xpp)); 10011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10012 res.setDescriptionElement(parseString(xpp)); 10013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("acronym")) { 10014 res.setAcronymElement(parseString(xpp)); 10015 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "source")) { 10016 res.setSource(parseType("source", xpp)); 10017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exampleFor")) { 10018 res.setExampleFor(parseReference(xpp)); 10019 } else if (!parseBackboneContent(eventType, xpp, res)) 10020 return false; 10021 return true; 10022 } 10023 10024 protected ImplementationGuide.ImplementationGuideGlobalComponent parseImplementationGuideImplementationGuideGlobalComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 10025 ImplementationGuide.ImplementationGuideGlobalComponent res = new ImplementationGuide.ImplementationGuideGlobalComponent(); 10026 parseBackboneAttributes(xpp, res); 10027 next(xpp); 10028 int eventType = nextNoWhitespace(xpp); 10029 while (eventType != XmlPullParser.END_TAG) { 10030 if (!parseImplementationGuideImplementationGuideGlobalComponentContent(eventType, xpp, owner, res)) 10031 unknownContent(xpp); 10032 eventType = nextNoWhitespace(xpp); 10033 } 10034 next(xpp); 10035 parseElementClose(res); 10036 return res; 10037 } 10038 10039 protected boolean parseImplementationGuideImplementationGuideGlobalComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuideGlobalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10040 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10041 res.setTypeElement(parseCode(xpp)); 10042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 10043 res.setProfile(parseReference(xpp)); 10044 } else if (!parseBackboneContent(eventType, xpp, res)) 10045 return false; 10046 return true; 10047 } 10048 10049 protected ImplementationGuide.ImplementationGuidePageComponent parseImplementationGuideImplementationGuidePageComponent(XmlPullParser xpp, ImplementationGuide owner) throws XmlPullParserException, IOException, FHIRFormatError { 10050 ImplementationGuide.ImplementationGuidePageComponent res = new ImplementationGuide.ImplementationGuidePageComponent(); 10051 parseBackboneAttributes(xpp, res); 10052 next(xpp); 10053 int eventType = nextNoWhitespace(xpp); 10054 while (eventType != XmlPullParser.END_TAG) { 10055 if (!parseImplementationGuideImplementationGuidePageComponentContent(eventType, xpp, owner, res)) 10056 unknownContent(xpp); 10057 eventType = nextNoWhitespace(xpp); 10058 } 10059 next(xpp); 10060 parseElementClose(res); 10061 return res; 10062 } 10063 10064 protected boolean parseImplementationGuideImplementationGuidePageComponentContent(int eventType, XmlPullParser xpp, ImplementationGuide owner, ImplementationGuide.ImplementationGuidePageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10065 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 10066 res.setSourceElement(parseUri(xpp)); 10067 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 10068 res.setTitleElement(parseString(xpp)); 10069 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 10070 res.setKindElement(parseEnumeration(xpp, ImplementationGuide.GuidePageKind.NULL, new ImplementationGuide.GuidePageKindEnumFactory())); 10071 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10072 res.getType().add(parseCode(xpp)); 10073 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 10074 res.getPackage().add(parseString(xpp)); 10075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { 10076 res.setFormatElement(parseCode(xpp)); 10077 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("page")) { 10078 res.getPage().add(parseImplementationGuideImplementationGuidePageComponent(xpp, owner)); 10079 } else if (!parseBackboneContent(eventType, xpp, res)) 10080 return false; 10081 return true; 10082 } 10083 10084 protected Library parseLibrary(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10085 Library res = new Library(); 10086 parseDomainResourceAttributes(xpp, res); 10087 next(xpp); 10088 int eventType = nextNoWhitespace(xpp); 10089 while (eventType != XmlPullParser.END_TAG) { 10090 if (!parseLibraryContent(eventType, xpp, res)) 10091 unknownContent(xpp); 10092 eventType = nextNoWhitespace(xpp); 10093 } 10094 next(xpp); 10095 parseElementClose(res); 10096 return res; 10097 } 10098 10099 protected boolean parseLibraryContent(int eventType, XmlPullParser xpp, Library res) throws XmlPullParserException, IOException, FHIRFormatError { 10100 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 10101 res.setUrlElement(parseUri(xpp)); 10102 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10103 res.getIdentifier().add(parseIdentifier(xpp)); 10104 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 10105 res.setVersionElement(parseString(xpp)); 10106 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10107 res.setNameElement(parseString(xpp)); 10108 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 10109 res.setTitleElement(parseString(xpp)); 10110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10111 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 10112 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 10113 res.setExperimentalElement(parseBoolean(xpp)); 10114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10115 res.setType(parseCodeableConcept(xpp)); 10116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10117 res.setDateElement(parseDateTime(xpp)); 10118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 10119 res.setPublisherElement(parseString(xpp)); 10120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10121 res.setDescriptionElement(parseMarkdown(xpp)); 10122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 10123 res.setPurposeElement(parseMarkdown(xpp)); 10124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 10125 res.setUsageElement(parseString(xpp)); 10126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 10127 res.setApprovalDateElement(parseDate(xpp)); 10128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 10129 res.setLastReviewDateElement(parseDate(xpp)); 10130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 10131 res.setEffectivePeriod(parsePeriod(xpp)); 10132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 10133 res.getUseContext().add(parseUsageContext(xpp)); 10134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 10135 res.getJurisdiction().add(parseCodeableConcept(xpp)); 10136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 10137 res.getTopic().add(parseCodeableConcept(xpp)); 10138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 10139 res.getContributor().add(parseContributor(xpp)); 10140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 10141 res.getContact().add(parseContactDetail(xpp)); 10142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 10143 res.setCopyrightElement(parseMarkdown(xpp)); 10144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 10145 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 10146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 10147 res.getParameter().add(parseParameterDefinition(xpp)); 10148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 10149 res.getDataRequirement().add(parseDataRequirement(xpp)); 10150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 10151 res.getContent().add(parseAttachment(xpp)); 10152 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10153 return false; 10154 return true; 10155 } 10156 10157 protected Linkage parseLinkage(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10158 Linkage res = new Linkage(); 10159 parseDomainResourceAttributes(xpp, res); 10160 next(xpp); 10161 int eventType = nextNoWhitespace(xpp); 10162 while (eventType != XmlPullParser.END_TAG) { 10163 if (!parseLinkageContent(eventType, xpp, res)) 10164 unknownContent(xpp); 10165 eventType = nextNoWhitespace(xpp); 10166 } 10167 next(xpp); 10168 parseElementClose(res); 10169 return res; 10170 } 10171 10172 protected boolean parseLinkageContent(int eventType, XmlPullParser xpp, Linkage res) throws XmlPullParserException, IOException, FHIRFormatError { 10173 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 10174 res.setActiveElement(parseBoolean(xpp)); 10175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 10176 res.setAuthor(parseReference(xpp)); 10177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 10178 res.getItem().add(parseLinkageLinkageItemComponent(xpp, res)); 10179 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10180 return false; 10181 return true; 10182 } 10183 10184 protected Linkage.LinkageItemComponent parseLinkageLinkageItemComponent(XmlPullParser xpp, Linkage owner) throws XmlPullParserException, IOException, FHIRFormatError { 10185 Linkage.LinkageItemComponent res = new Linkage.LinkageItemComponent(); 10186 parseBackboneAttributes(xpp, res); 10187 next(xpp); 10188 int eventType = nextNoWhitespace(xpp); 10189 while (eventType != XmlPullParser.END_TAG) { 10190 if (!parseLinkageLinkageItemComponentContent(eventType, xpp, owner, res)) 10191 unknownContent(xpp); 10192 eventType = nextNoWhitespace(xpp); 10193 } 10194 next(xpp); 10195 parseElementClose(res); 10196 return res; 10197 } 10198 10199 protected boolean parseLinkageLinkageItemComponentContent(int eventType, XmlPullParser xpp, Linkage owner, Linkage.LinkageItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10200 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10201 res.setTypeElement(parseEnumeration(xpp, Linkage.LinkageType.NULL, new Linkage.LinkageTypeEnumFactory())); 10202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 10203 res.setResource(parseReference(xpp)); 10204 } else if (!parseBackboneContent(eventType, xpp, res)) 10205 return false; 10206 return true; 10207 } 10208 10209 protected ListResource parseListResource(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10210 ListResource res = new ListResource(); 10211 parseDomainResourceAttributes(xpp, res); 10212 next(xpp); 10213 int eventType = nextNoWhitespace(xpp); 10214 while (eventType != XmlPullParser.END_TAG) { 10215 if (!parseListResourceContent(eventType, xpp, res)) 10216 unknownContent(xpp); 10217 eventType = nextNoWhitespace(xpp); 10218 } 10219 next(xpp); 10220 parseElementClose(res); 10221 return res; 10222 } 10223 10224 protected boolean parseListResourceContent(int eventType, XmlPullParser xpp, ListResource res) throws XmlPullParserException, IOException, FHIRFormatError { 10225 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10226 res.getIdentifier().add(parseIdentifier(xpp)); 10227 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10228 res.setStatusElement(parseEnumeration(xpp, ListResource.ListStatus.NULL, new ListResource.ListStatusEnumFactory())); 10229 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 10230 res.setModeElement(parseEnumeration(xpp, ListResource.ListMode.NULL, new ListResource.ListModeEnumFactory())); 10231 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 10232 res.setTitleElement(parseString(xpp)); 10233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10234 res.setCode(parseCodeableConcept(xpp)); 10235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10236 res.setSubject(parseReference(xpp)); 10237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 10238 res.setEncounter(parseReference(xpp)); 10239 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10240 res.setDateElement(parseDateTime(xpp)); 10241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 10242 res.setSource(parseReference(xpp)); 10243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedBy")) { 10244 res.setOrderedBy(parseCodeableConcept(xpp)); 10245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 10246 res.getNote().add(parseAnnotation(xpp)); 10247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entry")) { 10248 res.getEntry().add(parseListResourceListEntryComponent(xpp, res)); 10249 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("emptyReason")) { 10250 res.setEmptyReason(parseCodeableConcept(xpp)); 10251 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10252 return false; 10253 return true; 10254 } 10255 10256 protected ListResource.ListEntryComponent parseListResourceListEntryComponent(XmlPullParser xpp, ListResource owner) throws XmlPullParserException, IOException, FHIRFormatError { 10257 ListResource.ListEntryComponent res = new ListResource.ListEntryComponent(); 10258 parseBackboneAttributes(xpp, res); 10259 next(xpp); 10260 int eventType = nextNoWhitespace(xpp); 10261 while (eventType != XmlPullParser.END_TAG) { 10262 if (!parseListResourceListEntryComponentContent(eventType, xpp, owner, res)) 10263 unknownContent(xpp); 10264 eventType = nextNoWhitespace(xpp); 10265 } 10266 next(xpp); 10267 parseElementClose(res); 10268 return res; 10269 } 10270 10271 protected boolean parseListResourceListEntryComponentContent(int eventType, XmlPullParser xpp, ListResource owner, ListResource.ListEntryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10272 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("flag")) { 10273 res.setFlag(parseCodeableConcept(xpp)); 10274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deleted")) { 10275 res.setDeletedElement(parseBoolean(xpp)); 10276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10277 res.setDateElement(parseDateTime(xpp)); 10278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 10279 res.setItem(parseReference(xpp)); 10280 } else if (!parseBackboneContent(eventType, xpp, res)) 10281 return false; 10282 return true; 10283 } 10284 10285 protected Location parseLocation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10286 Location res = new Location(); 10287 parseDomainResourceAttributes(xpp, res); 10288 next(xpp); 10289 int eventType = nextNoWhitespace(xpp); 10290 while (eventType != XmlPullParser.END_TAG) { 10291 if (!parseLocationContent(eventType, xpp, res)) 10292 unknownContent(xpp); 10293 eventType = nextNoWhitespace(xpp); 10294 } 10295 next(xpp); 10296 parseElementClose(res); 10297 return res; 10298 } 10299 10300 protected boolean parseLocationContent(int eventType, XmlPullParser xpp, Location res) throws XmlPullParserException, IOException, FHIRFormatError { 10301 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10302 res.getIdentifier().add(parseIdentifier(xpp)); 10303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10304 res.setStatusElement(parseEnumeration(xpp, Location.LocationStatus.NULL, new Location.LocationStatusEnumFactory())); 10305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { 10306 res.setOperationalStatus(parseCoding(xpp)); 10307 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10308 res.setNameElement(parseString(xpp)); 10309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 10310 res.getAlias().add(parseString(xpp)); 10311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10312 res.setDescriptionElement(parseString(xpp)); 10313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 10314 res.setModeElement(parseEnumeration(xpp, Location.LocationMode.NULL, new Location.LocationModeEnumFactory())); 10315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10316 res.setType(parseCodeableConcept(xpp)); 10317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 10318 res.getTelecom().add(parseContactPoint(xpp)); 10319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 10320 res.setAddress(parseAddress(xpp)); 10321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("physicalType")) { 10322 res.setPhysicalType(parseCodeableConcept(xpp)); 10323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("position")) { 10324 res.setPosition(parseLocationLocationPositionComponent(xpp, res)); 10325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 10326 res.setManagingOrganization(parseReference(xpp)); 10327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 10328 res.setPartOf(parseReference(xpp)); 10329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 10330 res.getEndpoint().add(parseReference(xpp)); 10331 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10332 return false; 10333 return true; 10334 } 10335 10336 protected Location.LocationPositionComponent parseLocationLocationPositionComponent(XmlPullParser xpp, Location owner) throws XmlPullParserException, IOException, FHIRFormatError { 10337 Location.LocationPositionComponent res = new Location.LocationPositionComponent(); 10338 parseBackboneAttributes(xpp, res); 10339 next(xpp); 10340 int eventType = nextNoWhitespace(xpp); 10341 while (eventType != XmlPullParser.END_TAG) { 10342 if (!parseLocationLocationPositionComponentContent(eventType, xpp, owner, res)) 10343 unknownContent(xpp); 10344 eventType = nextNoWhitespace(xpp); 10345 } 10346 next(xpp); 10347 parseElementClose(res); 10348 return res; 10349 } 10350 10351 protected boolean parseLocationLocationPositionComponentContent(int eventType, XmlPullParser xpp, Location owner, Location.LocationPositionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10352 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("longitude")) { 10353 res.setLongitudeElement(parseDecimal(xpp)); 10354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("latitude")) { 10355 res.setLatitudeElement(parseDecimal(xpp)); 10356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("altitude")) { 10357 res.setAltitudeElement(parseDecimal(xpp)); 10358 } else if (!parseBackboneContent(eventType, xpp, res)) 10359 return false; 10360 return true; 10361 } 10362 10363 protected Measure parseMeasure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10364 Measure res = new Measure(); 10365 parseDomainResourceAttributes(xpp, res); 10366 next(xpp); 10367 int eventType = nextNoWhitespace(xpp); 10368 while (eventType != XmlPullParser.END_TAG) { 10369 if (!parseMeasureContent(eventType, xpp, res)) 10370 unknownContent(xpp); 10371 eventType = nextNoWhitespace(xpp); 10372 } 10373 next(xpp); 10374 parseElementClose(res); 10375 return res; 10376 } 10377 10378 protected boolean parseMeasureContent(int eventType, XmlPullParser xpp, Measure res) throws XmlPullParserException, IOException, FHIRFormatError { 10379 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 10380 res.setUrlElement(parseUri(xpp)); 10381 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10382 res.getIdentifier().add(parseIdentifier(xpp)); 10383 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 10384 res.setVersionElement(parseString(xpp)); 10385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10386 res.setNameElement(parseString(xpp)); 10387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 10388 res.setTitleElement(parseString(xpp)); 10389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10390 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 10391 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 10392 res.setExperimentalElement(parseBoolean(xpp)); 10393 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10394 res.setDateElement(parseDateTime(xpp)); 10395 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 10396 res.setPublisherElement(parseString(xpp)); 10397 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10398 res.setDescriptionElement(parseMarkdown(xpp)); 10399 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 10400 res.setPurposeElement(parseMarkdown(xpp)); 10401 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 10402 res.setUsageElement(parseString(xpp)); 10403 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 10404 res.setApprovalDateElement(parseDate(xpp)); 10405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 10406 res.setLastReviewDateElement(parseDate(xpp)); 10407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 10408 res.setEffectivePeriod(parsePeriod(xpp)); 10409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 10410 res.getUseContext().add(parseUsageContext(xpp)); 10411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 10412 res.getJurisdiction().add(parseCodeableConcept(xpp)); 10413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 10414 res.getTopic().add(parseCodeableConcept(xpp)); 10415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 10416 res.getContributor().add(parseContributor(xpp)); 10417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 10418 res.getContact().add(parseContactDetail(xpp)); 10419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 10420 res.setCopyrightElement(parseMarkdown(xpp)); 10421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 10422 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 10423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 10424 res.getLibrary().add(parseReference(xpp)); 10425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disclaimer")) { 10426 res.setDisclaimerElement(parseMarkdown(xpp)); 10427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("scoring")) { 10428 res.setScoring(parseCodeableConcept(xpp)); 10429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compositeScoring")) { 10430 res.setCompositeScoring(parseCodeableConcept(xpp)); 10431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10432 res.getType().add(parseCodeableConcept(xpp)); 10433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("riskAdjustment")) { 10434 res.setRiskAdjustmentElement(parseString(xpp)); 10435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rateAggregation")) { 10436 res.setRateAggregationElement(parseString(xpp)); 10437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rationale")) { 10438 res.setRationaleElement(parseMarkdown(xpp)); 10439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("clinicalRecommendationStatement")) { 10440 res.setClinicalRecommendationStatementElement(parseMarkdown(xpp)); 10441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("improvementNotation")) { 10442 res.setImprovementNotationElement(parseString(xpp)); 10443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 10444 res.getDefinition().add(parseMarkdown(xpp)); 10445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("guidance")) { 10446 res.setGuidanceElement(parseMarkdown(xpp)); 10447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("set")) { 10448 res.setSetElement(parseString(xpp)); 10449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 10450 res.getGroup().add(parseMeasureMeasureGroupComponent(xpp, res)); 10451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplementalData")) { 10452 res.getSupplementalData().add(parseMeasureMeasureSupplementalDataComponent(xpp, res)); 10453 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10454 return false; 10455 return true; 10456 } 10457 10458 protected Measure.MeasureGroupComponent parseMeasureMeasureGroupComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10459 Measure.MeasureGroupComponent res = new Measure.MeasureGroupComponent(); 10460 parseBackboneAttributes(xpp, res); 10461 next(xpp); 10462 int eventType = nextNoWhitespace(xpp); 10463 while (eventType != XmlPullParser.END_TAG) { 10464 if (!parseMeasureMeasureGroupComponentContent(eventType, xpp, owner, res)) 10465 unknownContent(xpp); 10466 eventType = nextNoWhitespace(xpp); 10467 } 10468 next(xpp); 10469 parseElementClose(res); 10470 return res; 10471 } 10472 10473 protected boolean parseMeasureMeasureGroupComponentContent(int eventType, XmlPullParser xpp, Measure owner, Measure.MeasureGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10474 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10475 res.setIdentifier(parseIdentifier(xpp)); 10476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10477 res.setNameElement(parseString(xpp)); 10478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10479 res.setDescriptionElement(parseString(xpp)); 10480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 10481 res.getPopulation().add(parseMeasureMeasureGroupPopulationComponent(xpp, owner)); 10482 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratifier")) { 10483 res.getStratifier().add(parseMeasureMeasureGroupStratifierComponent(xpp, owner)); 10484 } else if (!parseBackboneContent(eventType, xpp, res)) 10485 return false; 10486 return true; 10487 } 10488 10489 protected Measure.MeasureGroupPopulationComponent parseMeasureMeasureGroupPopulationComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10490 Measure.MeasureGroupPopulationComponent res = new Measure.MeasureGroupPopulationComponent(); 10491 parseBackboneAttributes(xpp, res); 10492 next(xpp); 10493 int eventType = nextNoWhitespace(xpp); 10494 while (eventType != XmlPullParser.END_TAG) { 10495 if (!parseMeasureMeasureGroupPopulationComponentContent(eventType, xpp, owner, res)) 10496 unknownContent(xpp); 10497 eventType = nextNoWhitespace(xpp); 10498 } 10499 next(xpp); 10500 parseElementClose(res); 10501 return res; 10502 } 10503 10504 protected boolean parseMeasureMeasureGroupPopulationComponentContent(int eventType, XmlPullParser xpp, Measure owner, Measure.MeasureGroupPopulationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10505 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10506 res.setIdentifier(parseIdentifier(xpp)); 10507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10508 res.setCode(parseCodeableConcept(xpp)); 10509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 10510 res.setNameElement(parseString(xpp)); 10511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 10512 res.setDescriptionElement(parseString(xpp)); 10513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 10514 res.setCriteriaElement(parseString(xpp)); 10515 } else if (!parseBackboneContent(eventType, xpp, res)) 10516 return false; 10517 return true; 10518 } 10519 10520 protected Measure.MeasureGroupStratifierComponent parseMeasureMeasureGroupStratifierComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10521 Measure.MeasureGroupStratifierComponent res = new Measure.MeasureGroupStratifierComponent(); 10522 parseBackboneAttributes(xpp, res); 10523 next(xpp); 10524 int eventType = nextNoWhitespace(xpp); 10525 while (eventType != XmlPullParser.END_TAG) { 10526 if (!parseMeasureMeasureGroupStratifierComponentContent(eventType, xpp, owner, res)) 10527 unknownContent(xpp); 10528 eventType = nextNoWhitespace(xpp); 10529 } 10530 next(xpp); 10531 parseElementClose(res); 10532 return res; 10533 } 10534 10535 protected boolean parseMeasureMeasureGroupStratifierComponentContent(int eventType, XmlPullParser xpp, Measure owner, Measure.MeasureGroupStratifierComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10536 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10537 res.setIdentifier(parseIdentifier(xpp)); 10538 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 10539 res.setCriteriaElement(parseString(xpp)); 10540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 10541 res.setPathElement(parseString(xpp)); 10542 } else if (!parseBackboneContent(eventType, xpp, res)) 10543 return false; 10544 return true; 10545 } 10546 10547 protected Measure.MeasureSupplementalDataComponent parseMeasureMeasureSupplementalDataComponent(XmlPullParser xpp, Measure owner) throws XmlPullParserException, IOException, FHIRFormatError { 10548 Measure.MeasureSupplementalDataComponent res = new Measure.MeasureSupplementalDataComponent(); 10549 parseBackboneAttributes(xpp, res); 10550 next(xpp); 10551 int eventType = nextNoWhitespace(xpp); 10552 while (eventType != XmlPullParser.END_TAG) { 10553 if (!parseMeasureMeasureSupplementalDataComponentContent(eventType, xpp, owner, res)) 10554 unknownContent(xpp); 10555 eventType = nextNoWhitespace(xpp); 10556 } 10557 next(xpp); 10558 parseElementClose(res); 10559 return res; 10560 } 10561 10562 protected boolean parseMeasureMeasureSupplementalDataComponentContent(int eventType, XmlPullParser xpp, Measure owner, Measure.MeasureSupplementalDataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10563 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10564 res.setIdentifier(parseIdentifier(xpp)); 10565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 10566 res.getUsage().add(parseCodeableConcept(xpp)); 10567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 10568 res.setCriteriaElement(parseString(xpp)); 10569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 10570 res.setPathElement(parseString(xpp)); 10571 } else if (!parseBackboneContent(eventType, xpp, res)) 10572 return false; 10573 return true; 10574 } 10575 10576 protected MeasureReport parseMeasureReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10577 MeasureReport res = new MeasureReport(); 10578 parseDomainResourceAttributes(xpp, res); 10579 next(xpp); 10580 int eventType = nextNoWhitespace(xpp); 10581 while (eventType != XmlPullParser.END_TAG) { 10582 if (!parseMeasureReportContent(eventType, xpp, res)) 10583 unknownContent(xpp); 10584 eventType = nextNoWhitespace(xpp); 10585 } 10586 next(xpp); 10587 parseElementClose(res); 10588 return res; 10589 } 10590 10591 protected boolean parseMeasureReportContent(int eventType, XmlPullParser xpp, MeasureReport res) throws XmlPullParserException, IOException, FHIRFormatError { 10592 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10593 res.setIdentifier(parseIdentifier(xpp)); 10594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10595 res.setStatusElement(parseEnumeration(xpp, MeasureReport.MeasureReportStatus.NULL, new MeasureReport.MeasureReportStatusEnumFactory())); 10596 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10597 res.setTypeElement(parseEnumeration(xpp, MeasureReport.MeasureReportType.NULL, new MeasureReport.MeasureReportTypeEnumFactory())); 10598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 10599 res.setMeasure(parseReference(xpp)); 10600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 10601 res.setPatient(parseReference(xpp)); 10602 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 10603 res.setDateElement(parseDateTime(xpp)); 10604 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reportingOrganization")) { 10605 res.setReportingOrganization(parseReference(xpp)); 10606 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 10607 res.setPeriod(parsePeriod(xpp)); 10608 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 10609 res.getGroup().add(parseMeasureReportMeasureReportGroupComponent(xpp, res)); 10610 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evaluatedResources")) { 10611 res.setEvaluatedResources(parseReference(xpp)); 10612 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10613 return false; 10614 return true; 10615 } 10616 10617 protected MeasureReport.MeasureReportGroupComponent parseMeasureReportMeasureReportGroupComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10618 MeasureReport.MeasureReportGroupComponent res = new MeasureReport.MeasureReportGroupComponent(); 10619 parseBackboneAttributes(xpp, res); 10620 next(xpp); 10621 int eventType = nextNoWhitespace(xpp); 10622 while (eventType != XmlPullParser.END_TAG) { 10623 if (!parseMeasureReportMeasureReportGroupComponentContent(eventType, xpp, owner, res)) 10624 unknownContent(xpp); 10625 eventType = nextNoWhitespace(xpp); 10626 } 10627 next(xpp); 10628 parseElementClose(res); 10629 return res; 10630 } 10631 10632 protected boolean parseMeasureReportMeasureReportGroupComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.MeasureReportGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10633 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10634 res.setIdentifier(parseIdentifier(xpp)); 10635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 10636 res.getPopulation().add(parseMeasureReportMeasureReportGroupPopulationComponent(xpp, owner)); 10637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measureScore")) { 10638 res.setMeasureScoreElement(parseDecimal(xpp)); 10639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratifier")) { 10640 res.getStratifier().add(parseMeasureReportMeasureReportGroupStratifierComponent(xpp, owner)); 10641 } else if (!parseBackboneContent(eventType, xpp, res)) 10642 return false; 10643 return true; 10644 } 10645 10646 protected MeasureReport.MeasureReportGroupPopulationComponent parseMeasureReportMeasureReportGroupPopulationComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10647 MeasureReport.MeasureReportGroupPopulationComponent res = new MeasureReport.MeasureReportGroupPopulationComponent(); 10648 parseBackboneAttributes(xpp, res); 10649 next(xpp); 10650 int eventType = nextNoWhitespace(xpp); 10651 while (eventType != XmlPullParser.END_TAG) { 10652 if (!parseMeasureReportMeasureReportGroupPopulationComponentContent(eventType, xpp, owner, res)) 10653 unknownContent(xpp); 10654 eventType = nextNoWhitespace(xpp); 10655 } 10656 next(xpp); 10657 parseElementClose(res); 10658 return res; 10659 } 10660 10661 protected boolean parseMeasureReportMeasureReportGroupPopulationComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.MeasureReportGroupPopulationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10662 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10663 res.setIdentifier(parseIdentifier(xpp)); 10664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10665 res.setCode(parseCodeableConcept(xpp)); 10666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 10667 res.setCountElement(parseInteger(xpp)); 10668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patients")) { 10669 res.setPatients(parseReference(xpp)); 10670 } else if (!parseBackboneContent(eventType, xpp, res)) 10671 return false; 10672 return true; 10673 } 10674 10675 protected MeasureReport.MeasureReportGroupStratifierComponent parseMeasureReportMeasureReportGroupStratifierComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10676 MeasureReport.MeasureReportGroupStratifierComponent res = new MeasureReport.MeasureReportGroupStratifierComponent(); 10677 parseBackboneAttributes(xpp, res); 10678 next(xpp); 10679 int eventType = nextNoWhitespace(xpp); 10680 while (eventType != XmlPullParser.END_TAG) { 10681 if (!parseMeasureReportMeasureReportGroupStratifierComponentContent(eventType, xpp, owner, res)) 10682 unknownContent(xpp); 10683 eventType = nextNoWhitespace(xpp); 10684 } 10685 next(xpp); 10686 parseElementClose(res); 10687 return res; 10688 } 10689 10690 protected boolean parseMeasureReportMeasureReportGroupStratifierComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.MeasureReportGroupStratifierComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10691 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10692 res.setIdentifier(parseIdentifier(xpp)); 10693 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("stratum")) { 10694 res.getStratum().add(parseMeasureReportStratifierGroupComponent(xpp, owner)); 10695 } else if (!parseBackboneContent(eventType, xpp, res)) 10696 return false; 10697 return true; 10698 } 10699 10700 protected MeasureReport.StratifierGroupComponent parseMeasureReportStratifierGroupComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10701 MeasureReport.StratifierGroupComponent res = new MeasureReport.StratifierGroupComponent(); 10702 parseBackboneAttributes(xpp, res); 10703 next(xpp); 10704 int eventType = nextNoWhitespace(xpp); 10705 while (eventType != XmlPullParser.END_TAG) { 10706 if (!parseMeasureReportStratifierGroupComponentContent(eventType, xpp, owner, res)) 10707 unknownContent(xpp); 10708 eventType = nextNoWhitespace(xpp); 10709 } 10710 next(xpp); 10711 parseElementClose(res); 10712 return res; 10713 } 10714 10715 protected boolean parseMeasureReportStratifierGroupComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.StratifierGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10716 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 10717 res.setValueElement(parseString(xpp)); 10718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("population")) { 10719 res.getPopulation().add(parseMeasureReportStratifierGroupPopulationComponent(xpp, owner)); 10720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measureScore")) { 10721 res.setMeasureScoreElement(parseDecimal(xpp)); 10722 } else if (!parseBackboneContent(eventType, xpp, res)) 10723 return false; 10724 return true; 10725 } 10726 10727 protected MeasureReport.StratifierGroupPopulationComponent parseMeasureReportStratifierGroupPopulationComponent(XmlPullParser xpp, MeasureReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 10728 MeasureReport.StratifierGroupPopulationComponent res = new MeasureReport.StratifierGroupPopulationComponent(); 10729 parseBackboneAttributes(xpp, res); 10730 next(xpp); 10731 int eventType = nextNoWhitespace(xpp); 10732 while (eventType != XmlPullParser.END_TAG) { 10733 if (!parseMeasureReportStratifierGroupPopulationComponentContent(eventType, xpp, owner, res)) 10734 unknownContent(xpp); 10735 eventType = nextNoWhitespace(xpp); 10736 } 10737 next(xpp); 10738 parseElementClose(res); 10739 return res; 10740 } 10741 10742 protected boolean parseMeasureReportStratifierGroupPopulationComponentContent(int eventType, XmlPullParser xpp, MeasureReport owner, MeasureReport.StratifierGroupPopulationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10743 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10744 res.setIdentifier(parseIdentifier(xpp)); 10745 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10746 res.setCode(parseCodeableConcept(xpp)); 10747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("count")) { 10748 res.setCountElement(parseInteger(xpp)); 10749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patients")) { 10750 res.setPatients(parseReference(xpp)); 10751 } else if (!parseBackboneContent(eventType, xpp, res)) 10752 return false; 10753 return true; 10754 } 10755 10756 protected Media parseMedia(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10757 Media res = new Media(); 10758 parseDomainResourceAttributes(xpp, res); 10759 next(xpp); 10760 int eventType = nextNoWhitespace(xpp); 10761 while (eventType != XmlPullParser.END_TAG) { 10762 if (!parseMediaContent(eventType, xpp, res)) 10763 unknownContent(xpp); 10764 eventType = nextNoWhitespace(xpp); 10765 } 10766 next(xpp); 10767 parseElementClose(res); 10768 return res; 10769 } 10770 10771 protected boolean parseMediaContent(int eventType, XmlPullParser xpp, Media res) throws XmlPullParserException, IOException, FHIRFormatError { 10772 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10773 res.getIdentifier().add(parseIdentifier(xpp)); 10774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 10775 res.getBasedOn().add(parseReference(xpp)); 10776 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 10777 res.setTypeElement(parseEnumeration(xpp, Media.DigitalMediaType.NULL, new Media.DigitalMediaTypeEnumFactory())); 10778 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subtype")) { 10779 res.setSubtype(parseCodeableConcept(xpp)); 10780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("view")) { 10781 res.setView(parseCodeableConcept(xpp)); 10782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10783 res.setSubject(parseReference(xpp)); 10784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 10785 res.setContext(parseReference(xpp)); 10786 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 10787 res.setOccurrence(parseType("occurrence", xpp)); 10788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 10789 res.setOperator(parseReference(xpp)); 10790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 10791 res.getReasonCode().add(parseCodeableConcept(xpp)); 10792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 10793 res.setBodySite(parseCodeableConcept(xpp)); 10794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 10795 res.setDevice(parseReference(xpp)); 10796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("height")) { 10797 res.setHeightElement(parsePositiveInt(xpp)); 10798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("width")) { 10799 res.setWidthElement(parsePositiveInt(xpp)); 10800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("frames")) { 10801 res.setFramesElement(parsePositiveInt(xpp)); 10802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 10803 res.setDurationElement(parseUnsignedInt(xpp)); 10804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 10805 res.setContent(parseAttachment(xpp)); 10806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 10807 res.getNote().add(parseAnnotation(xpp)); 10808 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10809 return false; 10810 return true; 10811 } 10812 10813 protected Medication parseMedication(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10814 Medication res = new Medication(); 10815 parseDomainResourceAttributes(xpp, res); 10816 next(xpp); 10817 int eventType = nextNoWhitespace(xpp); 10818 while (eventType != XmlPullParser.END_TAG) { 10819 if (!parseMedicationContent(eventType, xpp, res)) 10820 unknownContent(xpp); 10821 eventType = nextNoWhitespace(xpp); 10822 } 10823 next(xpp); 10824 parseElementClose(res); 10825 return res; 10826 } 10827 10828 protected boolean parseMedicationContent(int eventType, XmlPullParser xpp, Medication res) throws XmlPullParserException, IOException, FHIRFormatError { 10829 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 10830 res.setCode(parseCodeableConcept(xpp)); 10831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10832 res.setStatusElement(parseEnumeration(xpp, Medication.MedicationStatus.NULL, new Medication.MedicationStatusEnumFactory())); 10833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isBrand")) { 10834 res.setIsBrandElement(parseBoolean(xpp)); 10835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isOverTheCounter")) { 10836 res.setIsOverTheCounterElement(parseBoolean(xpp)); 10837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { 10838 res.setManufacturer(parseReference(xpp)); 10839 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 10840 res.setForm(parseCodeableConcept(xpp)); 10841 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 10842 res.getIngredient().add(parseMedicationMedicationIngredientComponent(xpp, res)); 10843 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { 10844 res.setPackage(parseMedicationMedicationPackageComponent(xpp, res)); 10845 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("image")) { 10846 res.getImage().add(parseAttachment(xpp)); 10847 } else if (!parseDomainResourceContent(eventType, xpp, res)) 10848 return false; 10849 return true; 10850 } 10851 10852 protected Medication.MedicationIngredientComponent parseMedicationMedicationIngredientComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 10853 Medication.MedicationIngredientComponent res = new Medication.MedicationIngredientComponent(); 10854 parseBackboneAttributes(xpp, res); 10855 next(xpp); 10856 int eventType = nextNoWhitespace(xpp); 10857 while (eventType != XmlPullParser.END_TAG) { 10858 if (!parseMedicationMedicationIngredientComponentContent(eventType, xpp, owner, res)) 10859 unknownContent(xpp); 10860 eventType = nextNoWhitespace(xpp); 10861 } 10862 next(xpp); 10863 parseElementClose(res); 10864 return res; 10865 } 10866 10867 protected boolean parseMedicationMedicationIngredientComponentContent(int eventType, XmlPullParser xpp, Medication owner, Medication.MedicationIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10868 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 10869 res.setItem(parseType("item", xpp)); 10870 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isActive")) { 10871 res.setIsActiveElement(parseBoolean(xpp)); 10872 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 10873 res.setAmount(parseRatio(xpp)); 10874 } else if (!parseBackboneContent(eventType, xpp, res)) 10875 return false; 10876 return true; 10877 } 10878 10879 protected Medication.MedicationPackageComponent parseMedicationMedicationPackageComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 10880 Medication.MedicationPackageComponent res = new Medication.MedicationPackageComponent(); 10881 parseBackboneAttributes(xpp, res); 10882 next(xpp); 10883 int eventType = nextNoWhitespace(xpp); 10884 while (eventType != XmlPullParser.END_TAG) { 10885 if (!parseMedicationMedicationPackageComponentContent(eventType, xpp, owner, res)) 10886 unknownContent(xpp); 10887 eventType = nextNoWhitespace(xpp); 10888 } 10889 next(xpp); 10890 parseElementClose(res); 10891 return res; 10892 } 10893 10894 protected boolean parseMedicationMedicationPackageComponentContent(int eventType, XmlPullParser xpp, Medication owner, Medication.MedicationPackageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10895 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 10896 res.setContainer(parseCodeableConcept(xpp)); 10897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { 10898 res.getContent().add(parseMedicationMedicationPackageContentComponent(xpp, owner)); 10899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("batch")) { 10900 res.getBatch().add(parseMedicationMedicationPackageBatchComponent(xpp, owner)); 10901 } else if (!parseBackboneContent(eventType, xpp, res)) 10902 return false; 10903 return true; 10904 } 10905 10906 protected Medication.MedicationPackageContentComponent parseMedicationMedicationPackageContentComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 10907 Medication.MedicationPackageContentComponent res = new Medication.MedicationPackageContentComponent(); 10908 parseBackboneAttributes(xpp, res); 10909 next(xpp); 10910 int eventType = nextNoWhitespace(xpp); 10911 while (eventType != XmlPullParser.END_TAG) { 10912 if (!parseMedicationMedicationPackageContentComponentContent(eventType, xpp, owner, res)) 10913 unknownContent(xpp); 10914 eventType = nextNoWhitespace(xpp); 10915 } 10916 next(xpp); 10917 parseElementClose(res); 10918 return res; 10919 } 10920 10921 protected boolean parseMedicationMedicationPackageContentComponentContent(int eventType, XmlPullParser xpp, Medication owner, Medication.MedicationPackageContentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10922 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 10923 res.setItem(parseType("item", xpp)); 10924 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 10925 res.setAmount(parseSimpleQuantity(xpp)); 10926 } else if (!parseBackboneContent(eventType, xpp, res)) 10927 return false; 10928 return true; 10929 } 10930 10931 protected Medication.MedicationPackageBatchComponent parseMedicationMedicationPackageBatchComponent(XmlPullParser xpp, Medication owner) throws XmlPullParserException, IOException, FHIRFormatError { 10932 Medication.MedicationPackageBatchComponent res = new Medication.MedicationPackageBatchComponent(); 10933 parseBackboneAttributes(xpp, res); 10934 next(xpp); 10935 int eventType = nextNoWhitespace(xpp); 10936 while (eventType != XmlPullParser.END_TAG) { 10937 if (!parseMedicationMedicationPackageBatchComponentContent(eventType, xpp, owner, res)) 10938 unknownContent(xpp); 10939 eventType = nextNoWhitespace(xpp); 10940 } 10941 next(xpp); 10942 parseElementClose(res); 10943 return res; 10944 } 10945 10946 protected boolean parseMedicationMedicationPackageBatchComponentContent(int eventType, XmlPullParser xpp, Medication owner, Medication.MedicationPackageBatchComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 10947 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { 10948 res.setLotNumberElement(parseString(xpp)); 10949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expirationDate")) { 10950 res.setExpirationDateElement(parseDateTime(xpp)); 10951 } else if (!parseBackboneContent(eventType, xpp, res)) 10952 return false; 10953 return true; 10954 } 10955 10956 protected MedicationAdministration parseMedicationAdministration(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 10957 MedicationAdministration res = new MedicationAdministration(); 10958 parseDomainResourceAttributes(xpp, res); 10959 next(xpp); 10960 int eventType = nextNoWhitespace(xpp); 10961 while (eventType != XmlPullParser.END_TAG) { 10962 if (!parseMedicationAdministrationContent(eventType, xpp, res)) 10963 unknownContent(xpp); 10964 eventType = nextNoWhitespace(xpp); 10965 } 10966 next(xpp); 10967 parseElementClose(res); 10968 return res; 10969 } 10970 10971 protected boolean parseMedicationAdministrationContent(int eventType, XmlPullParser xpp, MedicationAdministration res) throws XmlPullParserException, IOException, FHIRFormatError { 10972 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 10973 res.getIdentifier().add(parseIdentifier(xpp)); 10974 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 10975 res.getDefinition().add(parseReference(xpp)); 10976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 10977 res.getPartOf().add(parseReference(xpp)); 10978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 10979 res.setStatusElement(parseEnumeration(xpp, MedicationAdministration.MedicationAdministrationStatus.NULL, new MedicationAdministration.MedicationAdministrationStatusEnumFactory())); 10980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 10981 res.setCategory(parseCodeableConcept(xpp)); 10982 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 10983 res.setMedication(parseType("medication", xpp)); 10984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 10985 res.setSubject(parseReference(xpp)); 10986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 10987 res.setContext(parseReference(xpp)); 10988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 10989 res.getSupportingInformation().add(parseReference(xpp)); 10990 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 10991 res.setEffective(parseType("effective", xpp)); 10992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 10993 res.getPerformer().add(parseMedicationAdministrationMedicationAdministrationPerformerComponent(xpp, res)); 10994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notGiven")) { 10995 res.setNotGivenElement(parseBoolean(xpp)); 10996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotGiven")) { 10997 res.getReasonNotGiven().add(parseCodeableConcept(xpp)); 10998 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 10999 res.getReasonCode().add(parseCodeableConcept(xpp)); 11000 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 11001 res.getReasonReference().add(parseReference(xpp)); 11002 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescription")) { 11003 res.setPrescription(parseReference(xpp)); 11004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 11005 res.getDevice().add(parseReference(xpp)); 11006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11007 res.getNote().add(parseAnnotation(xpp)); 11008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 11009 res.setDosage(parseMedicationAdministrationMedicationAdministrationDosageComponent(xpp, res)); 11010 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 11011 res.getEventHistory().add(parseReference(xpp)); 11012 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11013 return false; 11014 return true; 11015 } 11016 11017 protected MedicationAdministration.MedicationAdministrationPerformerComponent parseMedicationAdministrationMedicationAdministrationPerformerComponent(XmlPullParser xpp, MedicationAdministration owner) throws XmlPullParserException, IOException, FHIRFormatError { 11018 MedicationAdministration.MedicationAdministrationPerformerComponent res = new MedicationAdministration.MedicationAdministrationPerformerComponent(); 11019 parseBackboneAttributes(xpp, res); 11020 next(xpp); 11021 int eventType = nextNoWhitespace(xpp); 11022 while (eventType != XmlPullParser.END_TAG) { 11023 if (!parseMedicationAdministrationMedicationAdministrationPerformerComponentContent(eventType, xpp, owner, res)) 11024 unknownContent(xpp); 11025 eventType = nextNoWhitespace(xpp); 11026 } 11027 next(xpp); 11028 parseElementClose(res); 11029 return res; 11030 } 11031 11032 protected boolean parseMedicationAdministrationMedicationAdministrationPerformerComponentContent(int eventType, XmlPullParser xpp, MedicationAdministration owner, MedicationAdministration.MedicationAdministrationPerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11033 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 11034 res.setActor(parseReference(xpp)); 11035 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 11036 res.setOnBehalfOf(parseReference(xpp)); 11037 } else if (!parseBackboneContent(eventType, xpp, res)) 11038 return false; 11039 return true; 11040 } 11041 11042 protected MedicationAdministration.MedicationAdministrationDosageComponent parseMedicationAdministrationMedicationAdministrationDosageComponent(XmlPullParser xpp, MedicationAdministration owner) throws XmlPullParserException, IOException, FHIRFormatError { 11043 MedicationAdministration.MedicationAdministrationDosageComponent res = new MedicationAdministration.MedicationAdministrationDosageComponent(); 11044 parseBackboneAttributes(xpp, res); 11045 next(xpp); 11046 int eventType = nextNoWhitespace(xpp); 11047 while (eventType != XmlPullParser.END_TAG) { 11048 if (!parseMedicationAdministrationMedicationAdministrationDosageComponentContent(eventType, xpp, owner, res)) 11049 unknownContent(xpp); 11050 eventType = nextNoWhitespace(xpp); 11051 } 11052 next(xpp); 11053 parseElementClose(res); 11054 return res; 11055 } 11056 11057 protected boolean parseMedicationAdministrationMedicationAdministrationDosageComponentContent(int eventType, XmlPullParser xpp, MedicationAdministration owner, MedicationAdministration.MedicationAdministrationDosageComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11058 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 11059 res.setTextElement(parseString(xpp)); 11060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 11061 res.setSite(parseCodeableConcept(xpp)); 11062 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("route")) { 11063 res.setRoute(parseCodeableConcept(xpp)); 11064 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 11065 res.setMethod(parseCodeableConcept(xpp)); 11066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dose")) { 11067 res.setDose(parseSimpleQuantity(xpp)); 11068 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 11069 res.setRate(parseType("rate", xpp)); 11070 } else if (!parseBackboneContent(eventType, xpp, res)) 11071 return false; 11072 return true; 11073 } 11074 11075 protected MedicationDispense parseMedicationDispense(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11076 MedicationDispense res = new MedicationDispense(); 11077 parseDomainResourceAttributes(xpp, res); 11078 next(xpp); 11079 int eventType = nextNoWhitespace(xpp); 11080 while (eventType != XmlPullParser.END_TAG) { 11081 if (!parseMedicationDispenseContent(eventType, xpp, res)) 11082 unknownContent(xpp); 11083 eventType = nextNoWhitespace(xpp); 11084 } 11085 next(xpp); 11086 parseElementClose(res); 11087 return res; 11088 } 11089 11090 protected boolean parseMedicationDispenseContent(int eventType, XmlPullParser xpp, MedicationDispense res) throws XmlPullParserException, IOException, FHIRFormatError { 11091 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11092 res.getIdentifier().add(parseIdentifier(xpp)); 11093 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 11094 res.getPartOf().add(parseReference(xpp)); 11095 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11096 res.setStatusElement(parseEnumeration(xpp, MedicationDispense.MedicationDispenseStatus.NULL, new MedicationDispense.MedicationDispenseStatusEnumFactory())); 11097 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11098 res.setCategory(parseCodeableConcept(xpp)); 11099 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 11100 res.setMedication(parseType("medication", xpp)); 11101 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11102 res.setSubject(parseReference(xpp)); 11103 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11104 res.setContext(parseReference(xpp)); 11105 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 11106 res.getSupportingInformation().add(parseReference(xpp)); 11107 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11108 res.getPerformer().add(parseMedicationDispenseMedicationDispensePerformerComponent(xpp, res)); 11109 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorizingPrescription")) { 11110 res.getAuthorizingPrescription().add(parseReference(xpp)); 11111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11112 res.setType(parseCodeableConcept(xpp)); 11113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11114 res.setQuantity(parseSimpleQuantity(xpp)); 11115 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysSupply")) { 11116 res.setDaysSupply(parseSimpleQuantity(xpp)); 11117 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenPrepared")) { 11118 res.setWhenPreparedElement(parseDateTime(xpp)); 11119 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("whenHandedOver")) { 11120 res.setWhenHandedOverElement(parseDateTime(xpp)); 11121 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 11122 res.setDestination(parseReference(xpp)); 11123 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 11124 res.getReceiver().add(parseReference(xpp)); 11125 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11126 res.getNote().add(parseAnnotation(xpp)); 11127 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 11128 res.getDosageInstruction().add(parseDosage(xpp)); 11129 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 11130 res.setSubstitution(parseMedicationDispenseMedicationDispenseSubstitutionComponent(xpp, res)); 11131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detectedIssue")) { 11132 res.getDetectedIssue().add(parseReference(xpp)); 11133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDone")) { 11134 res.setNotDoneElement(parseBoolean(xpp)); 11135 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "notDoneReason")) { 11136 res.setNotDoneReason(parseType("notDoneReason", xpp)); 11137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 11138 res.getEventHistory().add(parseReference(xpp)); 11139 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11140 return false; 11141 return true; 11142 } 11143 11144 protected MedicationDispense.MedicationDispensePerformerComponent parseMedicationDispenseMedicationDispensePerformerComponent(XmlPullParser xpp, MedicationDispense owner) throws XmlPullParserException, IOException, FHIRFormatError { 11145 MedicationDispense.MedicationDispensePerformerComponent res = new MedicationDispense.MedicationDispensePerformerComponent(); 11146 parseBackboneAttributes(xpp, res); 11147 next(xpp); 11148 int eventType = nextNoWhitespace(xpp); 11149 while (eventType != XmlPullParser.END_TAG) { 11150 if (!parseMedicationDispenseMedicationDispensePerformerComponentContent(eventType, xpp, owner, res)) 11151 unknownContent(xpp); 11152 eventType = nextNoWhitespace(xpp); 11153 } 11154 next(xpp); 11155 parseElementClose(res); 11156 return res; 11157 } 11158 11159 protected boolean parseMedicationDispenseMedicationDispensePerformerComponentContent(int eventType, XmlPullParser xpp, MedicationDispense owner, MedicationDispense.MedicationDispensePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11160 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 11161 res.setActor(parseReference(xpp)); 11162 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 11163 res.setOnBehalfOf(parseReference(xpp)); 11164 } else if (!parseBackboneContent(eventType, xpp, res)) 11165 return false; 11166 return true; 11167 } 11168 11169 protected MedicationDispense.MedicationDispenseSubstitutionComponent parseMedicationDispenseMedicationDispenseSubstitutionComponent(XmlPullParser xpp, MedicationDispense owner) throws XmlPullParserException, IOException, FHIRFormatError { 11170 MedicationDispense.MedicationDispenseSubstitutionComponent res = new MedicationDispense.MedicationDispenseSubstitutionComponent(); 11171 parseBackboneAttributes(xpp, res); 11172 next(xpp); 11173 int eventType = nextNoWhitespace(xpp); 11174 while (eventType != XmlPullParser.END_TAG) { 11175 if (!parseMedicationDispenseMedicationDispenseSubstitutionComponentContent(eventType, xpp, owner, res)) 11176 unknownContent(xpp); 11177 eventType = nextNoWhitespace(xpp); 11178 } 11179 next(xpp); 11180 parseElementClose(res); 11181 return res; 11182 } 11183 11184 protected boolean parseMedicationDispenseMedicationDispenseSubstitutionComponentContent(int eventType, XmlPullParser xpp, MedicationDispense owner, MedicationDispense.MedicationDispenseSubstitutionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11185 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("wasSubstituted")) { 11186 res.setWasSubstitutedElement(parseBoolean(xpp)); 11187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11188 res.setType(parseCodeableConcept(xpp)); 11189 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11190 res.getReason().add(parseCodeableConcept(xpp)); 11191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsibleParty")) { 11192 res.getResponsibleParty().add(parseReference(xpp)); 11193 } else if (!parseBackboneContent(eventType, xpp, res)) 11194 return false; 11195 return true; 11196 } 11197 11198 protected MedicationRequest parseMedicationRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11199 MedicationRequest res = new MedicationRequest(); 11200 parseDomainResourceAttributes(xpp, res); 11201 next(xpp); 11202 int eventType = nextNoWhitespace(xpp); 11203 while (eventType != XmlPullParser.END_TAG) { 11204 if (!parseMedicationRequestContent(eventType, xpp, res)) 11205 unknownContent(xpp); 11206 eventType = nextNoWhitespace(xpp); 11207 } 11208 next(xpp); 11209 parseElementClose(res); 11210 return res; 11211 } 11212 11213 protected boolean parseMedicationRequestContent(int eventType, XmlPullParser xpp, MedicationRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 11214 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11215 res.getIdentifier().add(parseIdentifier(xpp)); 11216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 11217 res.getDefinition().add(parseReference(xpp)); 11218 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11219 res.getBasedOn().add(parseReference(xpp)); 11220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 11221 res.setGroupIdentifier(parseIdentifier(xpp)); 11222 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11223 res.setStatusElement(parseEnumeration(xpp, MedicationRequest.MedicationRequestStatus.NULL, new MedicationRequest.MedicationRequestStatusEnumFactory())); 11224 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 11225 res.setIntentElement(parseEnumeration(xpp, MedicationRequest.MedicationRequestIntent.NULL, new MedicationRequest.MedicationRequestIntentEnumFactory())); 11226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11227 res.setCategory(parseCodeableConcept(xpp)); 11228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 11229 res.setPriorityElement(parseEnumeration(xpp, MedicationRequest.MedicationRequestPriority.NULL, new MedicationRequest.MedicationRequestPriorityEnumFactory())); 11230 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 11231 res.setMedication(parseType("medication", xpp)); 11232 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11233 res.setSubject(parseReference(xpp)); 11234 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11235 res.setContext(parseReference(xpp)); 11236 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInformation")) { 11237 res.getSupportingInformation().add(parseReference(xpp)); 11238 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 11239 res.setAuthoredOnElement(parseDateTime(xpp)); 11240 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 11241 res.setRequester(parseMedicationRequestMedicationRequestRequesterComponent(xpp, res)); 11242 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorder")) { 11243 res.setRecorder(parseReference(xpp)); 11244 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 11245 res.getReasonCode().add(parseCodeableConcept(xpp)); 11246 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 11247 res.getReasonReference().add(parseReference(xpp)); 11248 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11249 res.getNote().add(parseAnnotation(xpp)); 11250 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosageInstruction")) { 11251 res.getDosageInstruction().add(parseDosage(xpp)); 11252 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispenseRequest")) { 11253 res.setDispenseRequest(parseMedicationRequestMedicationRequestDispenseRequestComponent(xpp, res)); 11254 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("substitution")) { 11255 res.setSubstitution(parseMedicationRequestMedicationRequestSubstitutionComponent(xpp, res)); 11256 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priorPrescription")) { 11257 res.setPriorPrescription(parseReference(xpp)); 11258 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detectedIssue")) { 11259 res.getDetectedIssue().add(parseReference(xpp)); 11260 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventHistory")) { 11261 res.getEventHistory().add(parseReference(xpp)); 11262 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11263 return false; 11264 return true; 11265 } 11266 11267 protected MedicationRequest.MedicationRequestRequesterComponent parseMedicationRequestMedicationRequestRequesterComponent(XmlPullParser xpp, MedicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 11268 MedicationRequest.MedicationRequestRequesterComponent res = new MedicationRequest.MedicationRequestRequesterComponent(); 11269 parseBackboneAttributes(xpp, res); 11270 next(xpp); 11271 int eventType = nextNoWhitespace(xpp); 11272 while (eventType != XmlPullParser.END_TAG) { 11273 if (!parseMedicationRequestMedicationRequestRequesterComponentContent(eventType, xpp, owner, res)) 11274 unknownContent(xpp); 11275 eventType = nextNoWhitespace(xpp); 11276 } 11277 next(xpp); 11278 parseElementClose(res); 11279 return res; 11280 } 11281 11282 protected boolean parseMedicationRequestMedicationRequestRequesterComponentContent(int eventType, XmlPullParser xpp, MedicationRequest owner, MedicationRequest.MedicationRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11283 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 11284 res.setAgent(parseReference(xpp)); 11285 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 11286 res.setOnBehalfOf(parseReference(xpp)); 11287 } else if (!parseBackboneContent(eventType, xpp, res)) 11288 return false; 11289 return true; 11290 } 11291 11292 protected MedicationRequest.MedicationRequestDispenseRequestComponent parseMedicationRequestMedicationRequestDispenseRequestComponent(XmlPullParser xpp, MedicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 11293 MedicationRequest.MedicationRequestDispenseRequestComponent res = new MedicationRequest.MedicationRequestDispenseRequestComponent(); 11294 parseBackboneAttributes(xpp, res); 11295 next(xpp); 11296 int eventType = nextNoWhitespace(xpp); 11297 while (eventType != XmlPullParser.END_TAG) { 11298 if (!parseMedicationRequestMedicationRequestDispenseRequestComponentContent(eventType, xpp, owner, res)) 11299 unknownContent(xpp); 11300 eventType = nextNoWhitespace(xpp); 11301 } 11302 next(xpp); 11303 parseElementClose(res); 11304 return res; 11305 } 11306 11307 protected boolean parseMedicationRequestMedicationRequestDispenseRequestComponentContent(int eventType, XmlPullParser xpp, MedicationRequest owner, MedicationRequest.MedicationRequestDispenseRequestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11308 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validityPeriod")) { 11309 res.setValidityPeriod(parsePeriod(xpp)); 11310 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("numberOfRepeatsAllowed")) { 11311 res.setNumberOfRepeatsAllowedElement(parsePositiveInt(xpp)); 11312 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11313 res.setQuantity(parseSimpleQuantity(xpp)); 11314 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expectedSupplyDuration")) { 11315 res.setExpectedSupplyDuration(parseDuration(xpp)); 11316 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11317 res.setPerformer(parseReference(xpp)); 11318 } else if (!parseBackboneContent(eventType, xpp, res)) 11319 return false; 11320 return true; 11321 } 11322 11323 protected MedicationRequest.MedicationRequestSubstitutionComponent parseMedicationRequestMedicationRequestSubstitutionComponent(XmlPullParser xpp, MedicationRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 11324 MedicationRequest.MedicationRequestSubstitutionComponent res = new MedicationRequest.MedicationRequestSubstitutionComponent(); 11325 parseBackboneAttributes(xpp, res); 11326 next(xpp); 11327 int eventType = nextNoWhitespace(xpp); 11328 while (eventType != XmlPullParser.END_TAG) { 11329 if (!parseMedicationRequestMedicationRequestSubstitutionComponentContent(eventType, xpp, owner, res)) 11330 unknownContent(xpp); 11331 eventType = nextNoWhitespace(xpp); 11332 } 11333 next(xpp); 11334 parseElementClose(res); 11335 return res; 11336 } 11337 11338 protected boolean parseMedicationRequestMedicationRequestSubstitutionComponentContent(int eventType, XmlPullParser xpp, MedicationRequest owner, MedicationRequest.MedicationRequestSubstitutionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11339 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allowed")) { 11340 res.setAllowedElement(parseBoolean(xpp)); 11341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11342 res.setReason(parseCodeableConcept(xpp)); 11343 } else if (!parseBackboneContent(eventType, xpp, res)) 11344 return false; 11345 return true; 11346 } 11347 11348 protected MedicationStatement parseMedicationStatement(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11349 MedicationStatement res = new MedicationStatement(); 11350 parseDomainResourceAttributes(xpp, res); 11351 next(xpp); 11352 int eventType = nextNoWhitespace(xpp); 11353 while (eventType != XmlPullParser.END_TAG) { 11354 if (!parseMedicationStatementContent(eventType, xpp, res)) 11355 unknownContent(xpp); 11356 eventType = nextNoWhitespace(xpp); 11357 } 11358 next(xpp); 11359 parseElementClose(res); 11360 return res; 11361 } 11362 11363 protected boolean parseMedicationStatementContent(int eventType, XmlPullParser xpp, MedicationStatement res) throws XmlPullParserException, IOException, FHIRFormatError { 11364 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11365 res.getIdentifier().add(parseIdentifier(xpp)); 11366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11367 res.getBasedOn().add(parseReference(xpp)); 11368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 11369 res.getPartOf().add(parseReference(xpp)); 11370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11371 res.setContext(parseReference(xpp)); 11372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11373 res.setStatusElement(parseEnumeration(xpp, MedicationStatement.MedicationStatementStatus.NULL, new MedicationStatement.MedicationStatementStatusEnumFactory())); 11374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11375 res.setCategory(parseCodeableConcept(xpp)); 11376 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { 11377 res.setMedication(parseType("medication", xpp)); 11378 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 11379 res.setEffective(parseType("effective", xpp)); 11380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateAsserted")) { 11381 res.setDateAssertedElement(parseDateTime(xpp)); 11382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { 11383 res.setInformationSource(parseReference(xpp)); 11384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11385 res.setSubject(parseReference(xpp)); 11386 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 11387 res.getDerivedFrom().add(parseReference(xpp)); 11388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("taken")) { 11389 res.setTakenElement(parseEnumeration(xpp, MedicationStatement.MedicationStatementTaken.NULL, new MedicationStatement.MedicationStatementTakenEnumFactory())); 11390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonNotTaken")) { 11391 res.getReasonNotTaken().add(parseCodeableConcept(xpp)); 11392 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 11393 res.getReasonCode().add(parseCodeableConcept(xpp)); 11394 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 11395 res.getReasonReference().add(parseReference(xpp)); 11396 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 11397 res.getNote().add(parseAnnotation(xpp)); 11398 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { 11399 res.getDosage().add(parseDosage(xpp)); 11400 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11401 return false; 11402 return true; 11403 } 11404 11405 protected MessageDefinition parseMessageDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11406 MessageDefinition res = new MessageDefinition(); 11407 parseDomainResourceAttributes(xpp, res); 11408 next(xpp); 11409 int eventType = nextNoWhitespace(xpp); 11410 while (eventType != XmlPullParser.END_TAG) { 11411 if (!parseMessageDefinitionContent(eventType, xpp, res)) 11412 unknownContent(xpp); 11413 eventType = nextNoWhitespace(xpp); 11414 } 11415 next(xpp); 11416 parseElementClose(res); 11417 return res; 11418 } 11419 11420 protected boolean parseMessageDefinitionContent(int eventType, XmlPullParser xpp, MessageDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 11421 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 11422 res.setUrlElement(parseUri(xpp)); 11423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11424 res.setIdentifier(parseIdentifier(xpp)); 11425 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 11426 res.setVersionElement(parseString(xpp)); 11427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11428 res.setNameElement(parseString(xpp)); 11429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 11430 res.setTitleElement(parseString(xpp)); 11431 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11432 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 11433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 11434 res.setExperimentalElement(parseBoolean(xpp)); 11435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 11436 res.setDateElement(parseDateTime(xpp)); 11437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 11438 res.setPublisherElement(parseString(xpp)); 11439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 11440 res.getContact().add(parseContactDetail(xpp)); 11441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11442 res.setDescriptionElement(parseMarkdown(xpp)); 11443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 11444 res.getUseContext().add(parseUsageContext(xpp)); 11445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 11446 res.getJurisdiction().add(parseCodeableConcept(xpp)); 11447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 11448 res.setPurposeElement(parseMarkdown(xpp)); 11449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 11450 res.setCopyrightElement(parseMarkdown(xpp)); 11451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 11452 res.setBase(parseReference(xpp)); 11453 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 11454 res.getParent().add(parseReference(xpp)); 11455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 11456 res.getReplaces().add(parseReference(xpp)); 11457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 11458 res.setEvent(parseCoding(xpp)); 11459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11460 res.setCategoryElement(parseEnumeration(xpp, MessageDefinition.MessageSignificanceCategory.NULL, new MessageDefinition.MessageSignificanceCategoryEnumFactory())); 11461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 11462 res.getFocus().add(parseMessageDefinitionMessageDefinitionFocusComponent(xpp, res)); 11463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseRequired")) { 11464 res.setResponseRequiredElement(parseBoolean(xpp)); 11465 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allowedResponse")) { 11466 res.getAllowedResponse().add(parseMessageDefinitionMessageDefinitionAllowedResponseComponent(xpp, res)); 11467 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11468 return false; 11469 return true; 11470 } 11471 11472 protected MessageDefinition.MessageDefinitionFocusComponent parseMessageDefinitionMessageDefinitionFocusComponent(XmlPullParser xpp, MessageDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 11473 MessageDefinition.MessageDefinitionFocusComponent res = new MessageDefinition.MessageDefinitionFocusComponent(); 11474 parseBackboneAttributes(xpp, res); 11475 next(xpp); 11476 int eventType = nextNoWhitespace(xpp); 11477 while (eventType != XmlPullParser.END_TAG) { 11478 if (!parseMessageDefinitionMessageDefinitionFocusComponentContent(eventType, xpp, owner, res)) 11479 unknownContent(xpp); 11480 eventType = nextNoWhitespace(xpp); 11481 } 11482 next(xpp); 11483 parseElementClose(res); 11484 return res; 11485 } 11486 11487 protected boolean parseMessageDefinitionMessageDefinitionFocusComponentContent(int eventType, XmlPullParser xpp, MessageDefinition owner, MessageDefinition.MessageDefinitionFocusComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11488 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11489 res.setCodeElement(parseCode(xpp)); 11490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 11491 res.setProfile(parseReference(xpp)); 11492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 11493 res.setMinElement(parseUnsignedInt(xpp)); 11494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 11495 res.setMaxElement(parseString(xpp)); 11496 } else if (!parseBackboneContent(eventType, xpp, res)) 11497 return false; 11498 return true; 11499 } 11500 11501 protected MessageDefinition.MessageDefinitionAllowedResponseComponent parseMessageDefinitionMessageDefinitionAllowedResponseComponent(XmlPullParser xpp, MessageDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 11502 MessageDefinition.MessageDefinitionAllowedResponseComponent res = new MessageDefinition.MessageDefinitionAllowedResponseComponent(); 11503 parseBackboneAttributes(xpp, res); 11504 next(xpp); 11505 int eventType = nextNoWhitespace(xpp); 11506 while (eventType != XmlPullParser.END_TAG) { 11507 if (!parseMessageDefinitionMessageDefinitionAllowedResponseComponentContent(eventType, xpp, owner, res)) 11508 unknownContent(xpp); 11509 eventType = nextNoWhitespace(xpp); 11510 } 11511 next(xpp); 11512 parseElementClose(res); 11513 return res; 11514 } 11515 11516 protected boolean parseMessageDefinitionMessageDefinitionAllowedResponseComponentContent(int eventType, XmlPullParser xpp, MessageDefinition owner, MessageDefinition.MessageDefinitionAllowedResponseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11517 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("message")) { 11518 res.setMessage(parseReference(xpp)); 11519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("situation")) { 11520 res.setSituationElement(parseMarkdown(xpp)); 11521 } else if (!parseBackboneContent(eventType, xpp, res)) 11522 return false; 11523 return true; 11524 } 11525 11526 protected MessageHeader parseMessageHeader(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11527 MessageHeader res = new MessageHeader(); 11528 parseDomainResourceAttributes(xpp, res); 11529 next(xpp); 11530 int eventType = nextNoWhitespace(xpp); 11531 while (eventType != XmlPullParser.END_TAG) { 11532 if (!parseMessageHeaderContent(eventType, xpp, res)) 11533 unknownContent(xpp); 11534 eventType = nextNoWhitespace(xpp); 11535 } 11536 next(xpp); 11537 parseElementClose(res); 11538 return res; 11539 } 11540 11541 protected boolean parseMessageHeaderContent(int eventType, XmlPullParser xpp, MessageHeader res) throws XmlPullParserException, IOException, FHIRFormatError { 11542 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("event")) { 11543 res.setEvent(parseCoding(xpp)); 11544 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 11545 res.getDestination().add(parseMessageHeaderMessageDestinationComponent(xpp, res)); 11546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 11547 res.setReceiver(parseReference(xpp)); 11548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sender")) { 11549 res.setSender(parseReference(xpp)); 11550 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 11551 res.setTimestampElement(parseInstant(xpp)); 11552 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enterer")) { 11553 res.setEnterer(parseReference(xpp)); 11554 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 11555 res.setAuthor(parseReference(xpp)); 11556 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 11557 res.setSource(parseMessageHeaderMessageSourceComponent(xpp, res)); 11558 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 11559 res.setResponsible(parseReference(xpp)); 11560 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 11561 res.setReason(parseCodeableConcept(xpp)); 11562 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 11563 res.setResponse(parseMessageHeaderMessageHeaderResponseComponent(xpp, res)); 11564 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 11565 res.getFocus().add(parseReference(xpp)); 11566 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11567 return false; 11568 return true; 11569 } 11570 11571 protected MessageHeader.MessageDestinationComponent parseMessageHeaderMessageDestinationComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 11572 MessageHeader.MessageDestinationComponent res = new MessageHeader.MessageDestinationComponent(); 11573 parseBackboneAttributes(xpp, res); 11574 next(xpp); 11575 int eventType = nextNoWhitespace(xpp); 11576 while (eventType != XmlPullParser.END_TAG) { 11577 if (!parseMessageHeaderMessageDestinationComponentContent(eventType, xpp, owner, res)) 11578 unknownContent(xpp); 11579 eventType = nextNoWhitespace(xpp); 11580 } 11581 next(xpp); 11582 parseElementClose(res); 11583 return res; 11584 } 11585 11586 protected boolean parseMessageHeaderMessageDestinationComponentContent(int eventType, XmlPullParser xpp, MessageHeader owner, MessageHeader.MessageDestinationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11587 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11588 res.setNameElement(parseString(xpp)); 11589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 11590 res.setTarget(parseReference(xpp)); 11591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 11592 res.setEndpointElement(parseUri(xpp)); 11593 } else if (!parseBackboneContent(eventType, xpp, res)) 11594 return false; 11595 return true; 11596 } 11597 11598 protected MessageHeader.MessageSourceComponent parseMessageHeaderMessageSourceComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 11599 MessageHeader.MessageSourceComponent res = new MessageHeader.MessageSourceComponent(); 11600 parseBackboneAttributes(xpp, res); 11601 next(xpp); 11602 int eventType = nextNoWhitespace(xpp); 11603 while (eventType != XmlPullParser.END_TAG) { 11604 if (!parseMessageHeaderMessageSourceComponentContent(eventType, xpp, owner, res)) 11605 unknownContent(xpp); 11606 eventType = nextNoWhitespace(xpp); 11607 } 11608 next(xpp); 11609 parseElementClose(res); 11610 return res; 11611 } 11612 11613 protected boolean parseMessageHeaderMessageSourceComponentContent(int eventType, XmlPullParser xpp, MessageHeader owner, MessageHeader.MessageSourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11614 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11615 res.setNameElement(parseString(xpp)); 11616 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("software")) { 11617 res.setSoftwareElement(parseString(xpp)); 11618 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 11619 res.setVersionElement(parseString(xpp)); 11620 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 11621 res.setContact(parseContactPoint(xpp)); 11622 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 11623 res.setEndpointElement(parseUri(xpp)); 11624 } else if (!parseBackboneContent(eventType, xpp, res)) 11625 return false; 11626 return true; 11627 } 11628 11629 protected MessageHeader.MessageHeaderResponseComponent parseMessageHeaderMessageHeaderResponseComponent(XmlPullParser xpp, MessageHeader owner) throws XmlPullParserException, IOException, FHIRFormatError { 11630 MessageHeader.MessageHeaderResponseComponent res = new MessageHeader.MessageHeaderResponseComponent(); 11631 parseBackboneAttributes(xpp, res); 11632 next(xpp); 11633 int eventType = nextNoWhitespace(xpp); 11634 while (eventType != XmlPullParser.END_TAG) { 11635 if (!parseMessageHeaderMessageHeaderResponseComponentContent(eventType, xpp, owner, res)) 11636 unknownContent(xpp); 11637 eventType = nextNoWhitespace(xpp); 11638 } 11639 next(xpp); 11640 parseElementClose(res); 11641 return res; 11642 } 11643 11644 protected boolean parseMessageHeaderMessageHeaderResponseComponentContent(int eventType, XmlPullParser xpp, MessageHeader owner, MessageHeader.MessageHeaderResponseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11645 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11646 res.setIdentifierElement(parseId(xpp)); 11647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11648 res.setCodeElement(parseEnumeration(xpp, MessageHeader.ResponseType.NULL, new MessageHeader.ResponseTypeEnumFactory())); 11649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 11650 res.setDetails(parseReference(xpp)); 11651 } else if (!parseBackboneContent(eventType, xpp, res)) 11652 return false; 11653 return true; 11654 } 11655 11656 protected NamingSystem parseNamingSystem(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11657 NamingSystem res = new NamingSystem(); 11658 parseDomainResourceAttributes(xpp, res); 11659 next(xpp); 11660 int eventType = nextNoWhitespace(xpp); 11661 while (eventType != XmlPullParser.END_TAG) { 11662 if (!parseNamingSystemContent(eventType, xpp, res)) 11663 unknownContent(xpp); 11664 eventType = nextNoWhitespace(xpp); 11665 } 11666 next(xpp); 11667 parseElementClose(res); 11668 return res; 11669 } 11670 11671 protected boolean parseNamingSystemContent(int eventType, XmlPullParser xpp, NamingSystem res) throws XmlPullParserException, IOException, FHIRFormatError { 11672 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 11673 res.setNameElement(parseString(xpp)); 11674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11675 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 11676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 11677 res.setKindElement(parseEnumeration(xpp, NamingSystem.NamingSystemType.NULL, new NamingSystem.NamingSystemTypeEnumFactory())); 11678 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 11679 res.setDateElement(parseDateTime(xpp)); 11680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 11681 res.setPublisherElement(parseString(xpp)); 11682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 11683 res.getContact().add(parseContactDetail(xpp)); 11684 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responsible")) { 11685 res.setResponsibleElement(parseString(xpp)); 11686 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11687 res.setType(parseCodeableConcept(xpp)); 11688 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 11689 res.setDescriptionElement(parseMarkdown(xpp)); 11690 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 11691 res.getUseContext().add(parseUsageContext(xpp)); 11692 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 11693 res.getJurisdiction().add(parseCodeableConcept(xpp)); 11694 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 11695 res.setUsageElement(parseString(xpp)); 11696 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uniqueId")) { 11697 res.getUniqueId().add(parseNamingSystemNamingSystemUniqueIdComponent(xpp, res)); 11698 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replacedBy")) { 11699 res.setReplacedBy(parseReference(xpp)); 11700 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11701 return false; 11702 return true; 11703 } 11704 11705 protected NamingSystem.NamingSystemUniqueIdComponent parseNamingSystemNamingSystemUniqueIdComponent(XmlPullParser xpp, NamingSystem owner) throws XmlPullParserException, IOException, FHIRFormatError { 11706 NamingSystem.NamingSystemUniqueIdComponent res = new NamingSystem.NamingSystemUniqueIdComponent(); 11707 parseBackboneAttributes(xpp, res); 11708 next(xpp); 11709 int eventType = nextNoWhitespace(xpp); 11710 while (eventType != XmlPullParser.END_TAG) { 11711 if (!parseNamingSystemNamingSystemUniqueIdComponentContent(eventType, xpp, owner, res)) 11712 unknownContent(xpp); 11713 eventType = nextNoWhitespace(xpp); 11714 } 11715 next(xpp); 11716 parseElementClose(res); 11717 return res; 11718 } 11719 11720 protected boolean parseNamingSystemNamingSystemUniqueIdComponentContent(int eventType, XmlPullParser xpp, NamingSystem owner, NamingSystem.NamingSystemUniqueIdComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11721 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11722 res.setTypeElement(parseEnumeration(xpp, NamingSystem.NamingSystemIdentifierType.NULL, new NamingSystem.NamingSystemIdentifierTypeEnumFactory())); 11723 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 11724 res.setValueElement(parseString(xpp)); 11725 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 11726 res.setPreferredElement(parseBoolean(xpp)); 11727 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 11728 res.setCommentElement(parseString(xpp)); 11729 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 11730 res.setPeriod(parsePeriod(xpp)); 11731 } else if (!parseBackboneContent(eventType, xpp, res)) 11732 return false; 11733 return true; 11734 } 11735 11736 protected NutritionOrder parseNutritionOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11737 NutritionOrder res = new NutritionOrder(); 11738 parseDomainResourceAttributes(xpp, res); 11739 next(xpp); 11740 int eventType = nextNoWhitespace(xpp); 11741 while (eventType != XmlPullParser.END_TAG) { 11742 if (!parseNutritionOrderContent(eventType, xpp, res)) 11743 unknownContent(xpp); 11744 eventType = nextNoWhitespace(xpp); 11745 } 11746 next(xpp); 11747 parseElementClose(res); 11748 return res; 11749 } 11750 11751 protected boolean parseNutritionOrderContent(int eventType, XmlPullParser xpp, NutritionOrder res) throws XmlPullParserException, IOException, FHIRFormatError { 11752 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11753 res.getIdentifier().add(parseIdentifier(xpp)); 11754 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11755 res.setStatusElement(parseEnumeration(xpp, NutritionOrder.NutritionOrderStatus.NULL, new NutritionOrder.NutritionOrderStatusEnumFactory())); 11756 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 11757 res.setPatient(parseReference(xpp)); 11758 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 11759 res.setEncounter(parseReference(xpp)); 11760 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { 11761 res.setDateTimeElement(parseDateTime(xpp)); 11762 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderer")) { 11763 res.setOrderer(parseReference(xpp)); 11764 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allergyIntolerance")) { 11765 res.getAllergyIntolerance().add(parseReference(xpp)); 11766 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodPreferenceModifier")) { 11767 res.getFoodPreferenceModifier().add(parseCodeableConcept(xpp)); 11768 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("excludeFoodModifier")) { 11769 res.getExcludeFoodModifier().add(parseCodeableConcept(xpp)); 11770 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("oralDiet")) { 11771 res.setOralDiet(parseNutritionOrderNutritionOrderOralDietComponent(xpp, res)); 11772 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplement")) { 11773 res.getSupplement().add(parseNutritionOrderNutritionOrderSupplementComponent(xpp, res)); 11774 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enteralFormula")) { 11775 res.setEnteralFormula(parseNutritionOrderNutritionOrderEnteralFormulaComponent(xpp, res)); 11776 } else if (!parseDomainResourceContent(eventType, xpp, res)) 11777 return false; 11778 return true; 11779 } 11780 11781 protected NutritionOrder.NutritionOrderOralDietComponent parseNutritionOrderNutritionOrderOralDietComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11782 NutritionOrder.NutritionOrderOralDietComponent res = new NutritionOrder.NutritionOrderOralDietComponent(); 11783 parseBackboneAttributes(xpp, res); 11784 next(xpp); 11785 int eventType = nextNoWhitespace(xpp); 11786 while (eventType != XmlPullParser.END_TAG) { 11787 if (!parseNutritionOrderNutritionOrderOralDietComponentContent(eventType, xpp, owner, res)) 11788 unknownContent(xpp); 11789 eventType = nextNoWhitespace(xpp); 11790 } 11791 next(xpp); 11792 parseElementClose(res); 11793 return res; 11794 } 11795 11796 protected boolean parseNutritionOrderNutritionOrderOralDietComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderOralDietComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11797 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11798 res.getType().add(parseCodeableConcept(xpp)); 11799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 11800 res.getSchedule().add(parseTiming(xpp)); 11801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutrient")) { 11802 res.getNutrient().add(parseNutritionOrderNutritionOrderOralDietNutrientComponent(xpp, owner)); 11803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("texture")) { 11804 res.getTexture().add(parseNutritionOrderNutritionOrderOralDietTextureComponent(xpp, owner)); 11805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fluidConsistencyType")) { 11806 res.getFluidConsistencyType().add(parseCodeableConcept(xpp)); 11807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 11808 res.setInstructionElement(parseString(xpp)); 11809 } else if (!parseBackboneContent(eventType, xpp, res)) 11810 return false; 11811 return true; 11812 } 11813 11814 protected NutritionOrder.NutritionOrderOralDietNutrientComponent parseNutritionOrderNutritionOrderOralDietNutrientComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11815 NutritionOrder.NutritionOrderOralDietNutrientComponent res = new NutritionOrder.NutritionOrderOralDietNutrientComponent(); 11816 parseBackboneAttributes(xpp, res); 11817 next(xpp); 11818 int eventType = nextNoWhitespace(xpp); 11819 while (eventType != XmlPullParser.END_TAG) { 11820 if (!parseNutritionOrderNutritionOrderOralDietNutrientComponentContent(eventType, xpp, owner, res)) 11821 unknownContent(xpp); 11822 eventType = nextNoWhitespace(xpp); 11823 } 11824 next(xpp); 11825 parseElementClose(res); 11826 return res; 11827 } 11828 11829 protected boolean parseNutritionOrderNutritionOrderOralDietNutrientComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderOralDietNutrientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11830 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 11831 res.setModifier(parseCodeableConcept(xpp)); 11832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 11833 res.setAmount(parseSimpleQuantity(xpp)); 11834 } else if (!parseBackboneContent(eventType, xpp, res)) 11835 return false; 11836 return true; 11837 } 11838 11839 protected NutritionOrder.NutritionOrderOralDietTextureComponent parseNutritionOrderNutritionOrderOralDietTextureComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11840 NutritionOrder.NutritionOrderOralDietTextureComponent res = new NutritionOrder.NutritionOrderOralDietTextureComponent(); 11841 parseBackboneAttributes(xpp, res); 11842 next(xpp); 11843 int eventType = nextNoWhitespace(xpp); 11844 while (eventType != XmlPullParser.END_TAG) { 11845 if (!parseNutritionOrderNutritionOrderOralDietTextureComponentContent(eventType, xpp, owner, res)) 11846 unknownContent(xpp); 11847 eventType = nextNoWhitespace(xpp); 11848 } 11849 next(xpp); 11850 parseElementClose(res); 11851 return res; 11852 } 11853 11854 protected boolean parseNutritionOrderNutritionOrderOralDietTextureComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderOralDietTextureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11855 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 11856 res.setModifier(parseCodeableConcept(xpp)); 11857 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foodType")) { 11858 res.setFoodType(parseCodeableConcept(xpp)); 11859 } else if (!parseBackboneContent(eventType, xpp, res)) 11860 return false; 11861 return true; 11862 } 11863 11864 protected NutritionOrder.NutritionOrderSupplementComponent parseNutritionOrderNutritionOrderSupplementComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11865 NutritionOrder.NutritionOrderSupplementComponent res = new NutritionOrder.NutritionOrderSupplementComponent(); 11866 parseBackboneAttributes(xpp, res); 11867 next(xpp); 11868 int eventType = nextNoWhitespace(xpp); 11869 while (eventType != XmlPullParser.END_TAG) { 11870 if (!parseNutritionOrderNutritionOrderSupplementComponentContent(eventType, xpp, owner, res)) 11871 unknownContent(xpp); 11872 eventType = nextNoWhitespace(xpp); 11873 } 11874 next(xpp); 11875 parseElementClose(res); 11876 return res; 11877 } 11878 11879 protected boolean parseNutritionOrderNutritionOrderSupplementComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderSupplementComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11880 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 11881 res.setType(parseCodeableConcept(xpp)); 11882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productName")) { 11883 res.setProductNameElement(parseString(xpp)); 11884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 11885 res.getSchedule().add(parseTiming(xpp)); 11886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11887 res.setQuantity(parseSimpleQuantity(xpp)); 11888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instruction")) { 11889 res.setInstructionElement(parseString(xpp)); 11890 } else if (!parseBackboneContent(eventType, xpp, res)) 11891 return false; 11892 return true; 11893 } 11894 11895 protected NutritionOrder.NutritionOrderEnteralFormulaComponent parseNutritionOrderNutritionOrderEnteralFormulaComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11896 NutritionOrder.NutritionOrderEnteralFormulaComponent res = new NutritionOrder.NutritionOrderEnteralFormulaComponent(); 11897 parseBackboneAttributes(xpp, res); 11898 next(xpp); 11899 int eventType = nextNoWhitespace(xpp); 11900 while (eventType != XmlPullParser.END_TAG) { 11901 if (!parseNutritionOrderNutritionOrderEnteralFormulaComponentContent(eventType, xpp, owner, res)) 11902 unknownContent(xpp); 11903 eventType = nextNoWhitespace(xpp); 11904 } 11905 next(xpp); 11906 parseElementClose(res); 11907 return res; 11908 } 11909 11910 protected boolean parseNutritionOrderNutritionOrderEnteralFormulaComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderEnteralFormulaComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11911 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaType")) { 11912 res.setBaseFormulaType(parseCodeableConcept(xpp)); 11913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseFormulaProductName")) { 11914 res.setBaseFormulaProductNameElement(parseString(xpp)); 11915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additiveType")) { 11916 res.setAdditiveType(parseCodeableConcept(xpp)); 11917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additiveProductName")) { 11918 res.setAdditiveProductNameElement(parseString(xpp)); 11919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("caloricDensity")) { 11920 res.setCaloricDensity(parseSimpleQuantity(xpp)); 11921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("routeofAdministration")) { 11922 res.setRouteofAdministration(parseCodeableConcept(xpp)); 11923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administration")) { 11924 res.getAdministration().add(parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(xpp, owner)); 11925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxVolumeToDeliver")) { 11926 res.setMaxVolumeToDeliver(parseSimpleQuantity(xpp)); 11927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("administrationInstruction")) { 11928 res.setAdministrationInstructionElement(parseString(xpp)); 11929 } else if (!parseBackboneContent(eventType, xpp, res)) 11930 return false; 11931 return true; 11932 } 11933 11934 protected NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(XmlPullParser xpp, NutritionOrder owner) throws XmlPullParserException, IOException, FHIRFormatError { 11935 NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent res = new NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent(); 11936 parseBackboneAttributes(xpp, res); 11937 next(xpp); 11938 int eventType = nextNoWhitespace(xpp); 11939 while (eventType != XmlPullParser.END_TAG) { 11940 if (!parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponentContent(eventType, xpp, owner, res)) 11941 unknownContent(xpp); 11942 eventType = nextNoWhitespace(xpp); 11943 } 11944 next(xpp); 11945 parseElementClose(res); 11946 return res; 11947 } 11948 11949 protected boolean parseNutritionOrderNutritionOrderEnteralFormulaAdministrationComponentContent(int eventType, XmlPullParser xpp, NutritionOrder owner, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 11950 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 11951 res.setSchedule(parseTiming(xpp)); 11952 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 11953 res.setQuantity(parseSimpleQuantity(xpp)); 11954 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "rate")) { 11955 res.setRate(parseType("rate", xpp)); 11956 } else if (!parseBackboneContent(eventType, xpp, res)) 11957 return false; 11958 return true; 11959 } 11960 11961 protected Observation parseObservation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 11962 Observation res = new Observation(); 11963 parseDomainResourceAttributes(xpp, res); 11964 next(xpp); 11965 int eventType = nextNoWhitespace(xpp); 11966 while (eventType != XmlPullParser.END_TAG) { 11967 if (!parseObservationContent(eventType, xpp, res)) 11968 unknownContent(xpp); 11969 eventType = nextNoWhitespace(xpp); 11970 } 11971 next(xpp); 11972 parseElementClose(res); 11973 return res; 11974 } 11975 11976 protected boolean parseObservationContent(int eventType, XmlPullParser xpp, Observation res) throws XmlPullParserException, IOException, FHIRFormatError { 11977 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 11978 res.getIdentifier().add(parseIdentifier(xpp)); 11979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 11980 res.getBasedOn().add(parseReference(xpp)); 11981 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 11982 res.setStatusElement(parseEnumeration(xpp, Observation.ObservationStatus.NULL, new Observation.ObservationStatusEnumFactory())); 11983 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 11984 res.getCategory().add(parseCodeableConcept(xpp)); 11985 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 11986 res.setCode(parseCodeableConcept(xpp)); 11987 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 11988 res.setSubject(parseReference(xpp)); 11989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 11990 res.setContext(parseReference(xpp)); 11991 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { 11992 res.setEffective(parseType("effective", xpp)); 11993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 11994 res.setIssuedElement(parseInstant(xpp)); 11995 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 11996 res.getPerformer().add(parseReference(xpp)); 11997 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 11998 res.setValue(parseType("value", xpp)); 11999 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 12000 res.setDataAbsentReason(parseCodeableConcept(xpp)); 12001 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpretation")) { 12002 res.setInterpretation(parseCodeableConcept(xpp)); 12003 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 12004 res.setCommentElement(parseString(xpp)); 12005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 12006 res.setBodySite(parseCodeableConcept(xpp)); 12007 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 12008 res.setMethod(parseCodeableConcept(xpp)); 12009 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 12010 res.setSpecimen(parseReference(xpp)); 12011 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 12012 res.setDevice(parseReference(xpp)); 12013 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 12014 res.getReferenceRange().add(parseObservationObservationReferenceRangeComponent(xpp, res)); 12015 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("related")) { 12016 res.getRelated().add(parseObservationObservationRelatedComponent(xpp, res)); 12017 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 12018 res.getComponent().add(parseObservationObservationComponentComponent(xpp, res)); 12019 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12020 return false; 12021 return true; 12022 } 12023 12024 protected Observation.ObservationReferenceRangeComponent parseObservationObservationReferenceRangeComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12025 Observation.ObservationReferenceRangeComponent res = new Observation.ObservationReferenceRangeComponent(); 12026 parseBackboneAttributes(xpp, res); 12027 next(xpp); 12028 int eventType = nextNoWhitespace(xpp); 12029 while (eventType != XmlPullParser.END_TAG) { 12030 if (!parseObservationObservationReferenceRangeComponentContent(eventType, xpp, owner, res)) 12031 unknownContent(xpp); 12032 eventType = nextNoWhitespace(xpp); 12033 } 12034 next(xpp); 12035 parseElementClose(res); 12036 return res; 12037 } 12038 12039 protected boolean parseObservationObservationReferenceRangeComponentContent(int eventType, XmlPullParser xpp, Observation owner, Observation.ObservationReferenceRangeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12040 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("low")) { 12041 res.setLow(parseSimpleQuantity(xpp)); 12042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("high")) { 12043 res.setHigh(parseSimpleQuantity(xpp)); 12044 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12045 res.setType(parseCodeableConcept(xpp)); 12046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appliesTo")) { 12047 res.getAppliesTo().add(parseCodeableConcept(xpp)); 12048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("age")) { 12049 res.setAge(parseRange(xpp)); 12050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 12051 res.setTextElement(parseString(xpp)); 12052 } else if (!parseBackboneContent(eventType, xpp, res)) 12053 return false; 12054 return true; 12055 } 12056 12057 protected Observation.ObservationRelatedComponent parseObservationObservationRelatedComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12058 Observation.ObservationRelatedComponent res = new Observation.ObservationRelatedComponent(); 12059 parseBackboneAttributes(xpp, res); 12060 next(xpp); 12061 int eventType = nextNoWhitespace(xpp); 12062 while (eventType != XmlPullParser.END_TAG) { 12063 if (!parseObservationObservationRelatedComponentContent(eventType, xpp, owner, res)) 12064 unknownContent(xpp); 12065 eventType = nextNoWhitespace(xpp); 12066 } 12067 next(xpp); 12068 parseElementClose(res); 12069 return res; 12070 } 12071 12072 protected boolean parseObservationObservationRelatedComponentContent(int eventType, XmlPullParser xpp, Observation owner, Observation.ObservationRelatedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12073 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12074 res.setTypeElement(parseEnumeration(xpp, Observation.ObservationRelationshipType.NULL, new Observation.ObservationRelationshipTypeEnumFactory())); 12075 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12076 res.setTarget(parseReference(xpp)); 12077 } else if (!parseBackboneContent(eventType, xpp, res)) 12078 return false; 12079 return true; 12080 } 12081 12082 protected Observation.ObservationComponentComponent parseObservationObservationComponentComponent(XmlPullParser xpp, Observation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12083 Observation.ObservationComponentComponent res = new Observation.ObservationComponentComponent(); 12084 parseBackboneAttributes(xpp, res); 12085 next(xpp); 12086 int eventType = nextNoWhitespace(xpp); 12087 while (eventType != XmlPullParser.END_TAG) { 12088 if (!parseObservationObservationComponentComponentContent(eventType, xpp, owner, res)) 12089 unknownContent(xpp); 12090 eventType = nextNoWhitespace(xpp); 12091 } 12092 next(xpp); 12093 parseElementClose(res); 12094 return res; 12095 } 12096 12097 protected boolean parseObservationObservationComponentComponentContent(int eventType, XmlPullParser xpp, Observation owner, Observation.ObservationComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12098 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12099 res.setCode(parseCodeableConcept(xpp)); 12100 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 12101 res.setValue(parseType("value", xpp)); 12102 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataAbsentReason")) { 12103 res.setDataAbsentReason(parseCodeableConcept(xpp)); 12104 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("interpretation")) { 12105 res.setInterpretation(parseCodeableConcept(xpp)); 12106 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceRange")) { 12107 res.getReferenceRange().add(parseObservationObservationReferenceRangeComponent(xpp, owner)); 12108 } else if (!parseBackboneContent(eventType, xpp, res)) 12109 return false; 12110 return true; 12111 } 12112 12113 protected OperationDefinition parseOperationDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12114 OperationDefinition res = new OperationDefinition(); 12115 parseDomainResourceAttributes(xpp, res); 12116 next(xpp); 12117 int eventType = nextNoWhitespace(xpp); 12118 while (eventType != XmlPullParser.END_TAG) { 12119 if (!parseOperationDefinitionContent(eventType, xpp, res)) 12120 unknownContent(xpp); 12121 eventType = nextNoWhitespace(xpp); 12122 } 12123 next(xpp); 12124 parseElementClose(res); 12125 return res; 12126 } 12127 12128 protected boolean parseOperationDefinitionContent(int eventType, XmlPullParser xpp, OperationDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 12129 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12130 res.setUrlElement(parseUri(xpp)); 12131 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 12132 res.setVersionElement(parseString(xpp)); 12133 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12134 res.setNameElement(parseString(xpp)); 12135 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12136 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 12137 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 12138 res.setKindElement(parseEnumeration(xpp, OperationDefinition.OperationKind.NULL, new OperationDefinition.OperationKindEnumFactory())); 12139 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 12140 res.setExperimentalElement(parseBoolean(xpp)); 12141 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12142 res.setDateElement(parseDateTime(xpp)); 12143 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12144 res.setPublisherElement(parseString(xpp)); 12145 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12146 res.getContact().add(parseContactDetail(xpp)); 12147 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12148 res.setDescriptionElement(parseMarkdown(xpp)); 12149 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12150 res.getUseContext().add(parseUsageContext(xpp)); 12151 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 12152 res.getJurisdiction().add(parseCodeableConcept(xpp)); 12153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 12154 res.setPurposeElement(parseMarkdown(xpp)); 12155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("idempotent")) { 12156 res.setIdempotentElement(parseBoolean(xpp)); 12157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12158 res.setCodeElement(parseCode(xpp)); 12159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 12160 res.setCommentElement(parseString(xpp)); 12161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 12162 res.setBase(parseReference(xpp)); 12163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 12164 res.getResource().add(parseCode(xpp)); 12165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 12166 res.setSystemElement(parseBoolean(xpp)); 12167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12168 res.setTypeElement(parseBoolean(xpp)); 12169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 12170 res.setInstanceElement(parseBoolean(xpp)); 12171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 12172 res.getParameter().add(parseOperationDefinitionOperationDefinitionParameterComponent(xpp, res)); 12173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overload")) { 12174 res.getOverload().add(parseOperationDefinitionOperationDefinitionOverloadComponent(xpp, res)); 12175 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12176 return false; 12177 return true; 12178 } 12179 12180 protected OperationDefinition.OperationDefinitionParameterComponent parseOperationDefinitionOperationDefinitionParameterComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12181 OperationDefinition.OperationDefinitionParameterComponent res = new OperationDefinition.OperationDefinitionParameterComponent(); 12182 parseBackboneAttributes(xpp, res); 12183 next(xpp); 12184 int eventType = nextNoWhitespace(xpp); 12185 while (eventType != XmlPullParser.END_TAG) { 12186 if (!parseOperationDefinitionOperationDefinitionParameterComponentContent(eventType, xpp, owner, res)) 12187 unknownContent(xpp); 12188 eventType = nextNoWhitespace(xpp); 12189 } 12190 next(xpp); 12191 parseElementClose(res); 12192 return res; 12193 } 12194 12195 protected boolean parseOperationDefinitionOperationDefinitionParameterComponentContent(int eventType, XmlPullParser xpp, OperationDefinition owner, OperationDefinition.OperationDefinitionParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12196 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12197 res.setNameElement(parseCode(xpp)); 12198 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 12199 res.setUseElement(parseEnumeration(xpp, OperationDefinition.OperationParameterUse.NULL, new OperationDefinition.OperationParameterUseEnumFactory())); 12200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 12201 res.setMinElement(parseInteger(xpp)); 12202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 12203 res.setMaxElement(parseString(xpp)); 12204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12205 res.setDocumentationElement(parseString(xpp)); 12206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12207 res.setTypeElement(parseCode(xpp)); 12208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchType")) { 12209 res.setSearchTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 12210 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 12211 res.setProfile(parseReference(xpp)); 12212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("binding")) { 12213 res.setBinding(parseOperationDefinitionOperationDefinitionParameterBindingComponent(xpp, owner)); 12214 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { 12215 res.getPart().add(parseOperationDefinitionOperationDefinitionParameterComponent(xpp, owner)); 12216 } else if (!parseBackboneContent(eventType, xpp, res)) 12217 return false; 12218 return true; 12219 } 12220 12221 protected OperationDefinition.OperationDefinitionParameterBindingComponent parseOperationDefinitionOperationDefinitionParameterBindingComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12222 OperationDefinition.OperationDefinitionParameterBindingComponent res = new OperationDefinition.OperationDefinitionParameterBindingComponent(); 12223 parseBackboneAttributes(xpp, res); 12224 next(xpp); 12225 int eventType = nextNoWhitespace(xpp); 12226 while (eventType != XmlPullParser.END_TAG) { 12227 if (!parseOperationDefinitionOperationDefinitionParameterBindingComponentContent(eventType, xpp, owner, res)) 12228 unknownContent(xpp); 12229 eventType = nextNoWhitespace(xpp); 12230 } 12231 next(xpp); 12232 parseElementClose(res); 12233 return res; 12234 } 12235 12236 protected boolean parseOperationDefinitionOperationDefinitionParameterBindingComponentContent(int eventType, XmlPullParser xpp, OperationDefinition owner, OperationDefinition.OperationDefinitionParameterBindingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12237 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strength")) { 12238 res.setStrengthElement(parseEnumeration(xpp, Enumerations.BindingStrength.NULL, new Enumerations.BindingStrengthEnumFactory())); 12239 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "valueSet")) { 12240 res.setValueSet(parseType("valueSet", xpp)); 12241 } else if (!parseBackboneContent(eventType, xpp, res)) 12242 return false; 12243 return true; 12244 } 12245 12246 protected OperationDefinition.OperationDefinitionOverloadComponent parseOperationDefinitionOperationDefinitionOverloadComponent(XmlPullParser xpp, OperationDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12247 OperationDefinition.OperationDefinitionOverloadComponent res = new OperationDefinition.OperationDefinitionOverloadComponent(); 12248 parseBackboneAttributes(xpp, res); 12249 next(xpp); 12250 int eventType = nextNoWhitespace(xpp); 12251 while (eventType != XmlPullParser.END_TAG) { 12252 if (!parseOperationDefinitionOperationDefinitionOverloadComponentContent(eventType, xpp, owner, res)) 12253 unknownContent(xpp); 12254 eventType = nextNoWhitespace(xpp); 12255 } 12256 next(xpp); 12257 parseElementClose(res); 12258 return res; 12259 } 12260 12261 protected boolean parseOperationDefinitionOperationDefinitionOverloadComponentContent(int eventType, XmlPullParser xpp, OperationDefinition owner, OperationDefinition.OperationDefinitionOverloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12262 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameterName")) { 12263 res.getParameterName().add(parseString(xpp)); 12264 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 12265 res.setCommentElement(parseString(xpp)); 12266 } else if (!parseBackboneContent(eventType, xpp, res)) 12267 return false; 12268 return true; 12269 } 12270 12271 protected OperationOutcome parseOperationOutcome(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12272 OperationOutcome res = new OperationOutcome(); 12273 parseDomainResourceAttributes(xpp, res); 12274 next(xpp); 12275 int eventType = nextNoWhitespace(xpp); 12276 while (eventType != XmlPullParser.END_TAG) { 12277 if (!parseOperationOutcomeContent(eventType, xpp, res)) 12278 unknownContent(xpp); 12279 eventType = nextNoWhitespace(xpp); 12280 } 12281 next(xpp); 12282 parseElementClose(res); 12283 return res; 12284 } 12285 12286 protected boolean parseOperationOutcomeContent(int eventType, XmlPullParser xpp, OperationOutcome res) throws XmlPullParserException, IOException, FHIRFormatError { 12287 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issue")) { 12288 res.getIssue().add(parseOperationOutcomeOperationOutcomeIssueComponent(xpp, res)); 12289 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12290 return false; 12291 return true; 12292 } 12293 12294 protected OperationOutcome.OperationOutcomeIssueComponent parseOperationOutcomeOperationOutcomeIssueComponent(XmlPullParser xpp, OperationOutcome owner) throws XmlPullParserException, IOException, FHIRFormatError { 12295 OperationOutcome.OperationOutcomeIssueComponent res = new OperationOutcome.OperationOutcomeIssueComponent(); 12296 parseBackboneAttributes(xpp, res); 12297 next(xpp); 12298 int eventType = nextNoWhitespace(xpp); 12299 while (eventType != XmlPullParser.END_TAG) { 12300 if (!parseOperationOutcomeOperationOutcomeIssueComponentContent(eventType, xpp, owner, res)) 12301 unknownContent(xpp); 12302 eventType = nextNoWhitespace(xpp); 12303 } 12304 next(xpp); 12305 parseElementClose(res); 12306 return res; 12307 } 12308 12309 protected boolean parseOperationOutcomeOperationOutcomeIssueComponentContent(int eventType, XmlPullParser xpp, OperationOutcome owner, OperationOutcome.OperationOutcomeIssueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12310 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("severity")) { 12311 res.setSeverityElement(parseEnumeration(xpp, OperationOutcome.IssueSeverity.NULL, new OperationOutcome.IssueSeverityEnumFactory())); 12312 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12313 res.setCodeElement(parseEnumeration(xpp, OperationOutcome.IssueType.NULL, new OperationOutcome.IssueTypeEnumFactory())); 12314 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("details")) { 12315 res.setDetails(parseCodeableConcept(xpp)); 12316 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diagnostics")) { 12317 res.setDiagnosticsElement(parseString(xpp)); 12318 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 12319 res.getLocation().add(parseString(xpp)); 12320 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 12321 res.getExpression().add(parseString(xpp)); 12322 } else if (!parseBackboneContent(eventType, xpp, res)) 12323 return false; 12324 return true; 12325 } 12326 12327 protected Organization parseOrganization(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12328 Organization res = new Organization(); 12329 parseDomainResourceAttributes(xpp, res); 12330 next(xpp); 12331 int eventType = nextNoWhitespace(xpp); 12332 while (eventType != XmlPullParser.END_TAG) { 12333 if (!parseOrganizationContent(eventType, xpp, res)) 12334 unknownContent(xpp); 12335 eventType = nextNoWhitespace(xpp); 12336 } 12337 next(xpp); 12338 parseElementClose(res); 12339 return res; 12340 } 12341 12342 protected boolean parseOrganizationContent(int eventType, XmlPullParser xpp, Organization res) throws XmlPullParserException, IOException, FHIRFormatError { 12343 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12344 res.getIdentifier().add(parseIdentifier(xpp)); 12345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 12346 res.setActiveElement(parseBoolean(xpp)); 12347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12348 res.getType().add(parseCodeableConcept(xpp)); 12349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12350 res.setNameElement(parseString(xpp)); 12351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 12352 res.getAlias().add(parseString(xpp)); 12353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12354 res.getTelecom().add(parseContactPoint(xpp)); 12355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12356 res.getAddress().add(parseAddress(xpp)); 12357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 12358 res.setPartOf(parseReference(xpp)); 12359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12360 res.getContact().add(parseOrganizationOrganizationContactComponent(xpp, res)); 12361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 12362 res.getEndpoint().add(parseReference(xpp)); 12363 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12364 return false; 12365 return true; 12366 } 12367 12368 protected Organization.OrganizationContactComponent parseOrganizationOrganizationContactComponent(XmlPullParser xpp, Organization owner) throws XmlPullParserException, IOException, FHIRFormatError { 12369 Organization.OrganizationContactComponent res = new Organization.OrganizationContactComponent(); 12370 parseBackboneAttributes(xpp, res); 12371 next(xpp); 12372 int eventType = nextNoWhitespace(xpp); 12373 while (eventType != XmlPullParser.END_TAG) { 12374 if (!parseOrganizationOrganizationContactComponentContent(eventType, xpp, owner, res)) 12375 unknownContent(xpp); 12376 eventType = nextNoWhitespace(xpp); 12377 } 12378 next(xpp); 12379 parseElementClose(res); 12380 return res; 12381 } 12382 12383 protected boolean parseOrganizationOrganizationContactComponentContent(int eventType, XmlPullParser xpp, Organization owner, Organization.OrganizationContactComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12384 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 12385 res.setPurpose(parseCodeableConcept(xpp)); 12386 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12387 res.setName(parseHumanName(xpp)); 12388 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12389 res.getTelecom().add(parseContactPoint(xpp)); 12390 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12391 res.setAddress(parseAddress(xpp)); 12392 } else if (!parseBackboneContent(eventType, xpp, res)) 12393 return false; 12394 return true; 12395 } 12396 12397 protected Patient parsePatient(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12398 Patient res = new Patient(); 12399 parseDomainResourceAttributes(xpp, res); 12400 next(xpp); 12401 int eventType = nextNoWhitespace(xpp); 12402 while (eventType != XmlPullParser.END_TAG) { 12403 if (!parsePatientContent(eventType, xpp, res)) 12404 unknownContent(xpp); 12405 eventType = nextNoWhitespace(xpp); 12406 } 12407 next(xpp); 12408 parseElementClose(res); 12409 return res; 12410 } 12411 12412 protected boolean parsePatientContent(int eventType, XmlPullParser xpp, Patient res) throws XmlPullParserException, IOException, FHIRFormatError { 12413 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12414 res.getIdentifier().add(parseIdentifier(xpp)); 12415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 12416 res.setActiveElement(parseBoolean(xpp)); 12417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12418 res.getName().add(parseHumanName(xpp)); 12419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12420 res.getTelecom().add(parseContactPoint(xpp)); 12421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 12422 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 12423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 12424 res.setBirthDateElement(parseDate(xpp)); 12425 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "deceased")) { 12426 res.setDeceased(parseType("deceased", xpp)); 12427 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12428 res.getAddress().add(parseAddress(xpp)); 12429 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maritalStatus")) { 12430 res.setMaritalStatus(parseCodeableConcept(xpp)); 12431 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "multipleBirth")) { 12432 res.setMultipleBirth(parseType("multipleBirth", xpp)); 12433 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 12434 res.getPhoto().add(parseAttachment(xpp)); 12435 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12436 res.getContact().add(parsePatientContactComponent(xpp, res)); 12437 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("animal")) { 12438 res.setAnimal(parsePatientAnimalComponent(xpp, res)); 12439 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 12440 res.getCommunication().add(parsePatientPatientCommunicationComponent(xpp, res)); 12441 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("generalPractitioner")) { 12442 res.getGeneralPractitioner().add(parseReference(xpp)); 12443 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 12444 res.setManagingOrganization(parseReference(xpp)); 12445 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 12446 res.getLink().add(parsePatientPatientLinkComponent(xpp, res)); 12447 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12448 return false; 12449 return true; 12450 } 12451 12452 protected Patient.ContactComponent parsePatientContactComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 12453 Patient.ContactComponent res = new Patient.ContactComponent(); 12454 parseBackboneAttributes(xpp, res); 12455 next(xpp); 12456 int eventType = nextNoWhitespace(xpp); 12457 while (eventType != XmlPullParser.END_TAG) { 12458 if (!parsePatientContactComponentContent(eventType, xpp, owner, res)) 12459 unknownContent(xpp); 12460 eventType = nextNoWhitespace(xpp); 12461 } 12462 next(xpp); 12463 parseElementClose(res); 12464 return res; 12465 } 12466 12467 protected boolean parsePatientContactComponentContent(int eventType, XmlPullParser xpp, Patient owner, Patient.ContactComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12468 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 12469 res.getRelationship().add(parseCodeableConcept(xpp)); 12470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12471 res.setName(parseHumanName(xpp)); 12472 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12473 res.getTelecom().add(parseContactPoint(xpp)); 12474 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12475 res.setAddress(parseAddress(xpp)); 12476 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 12477 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 12478 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 12479 res.setOrganization(parseReference(xpp)); 12480 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 12481 res.setPeriod(parsePeriod(xpp)); 12482 } else if (!parseBackboneContent(eventType, xpp, res)) 12483 return false; 12484 return true; 12485 } 12486 12487 protected Patient.AnimalComponent parsePatientAnimalComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 12488 Patient.AnimalComponent res = new Patient.AnimalComponent(); 12489 parseBackboneAttributes(xpp, res); 12490 next(xpp); 12491 int eventType = nextNoWhitespace(xpp); 12492 while (eventType != XmlPullParser.END_TAG) { 12493 if (!parsePatientAnimalComponentContent(eventType, xpp, owner, res)) 12494 unknownContent(xpp); 12495 eventType = nextNoWhitespace(xpp); 12496 } 12497 next(xpp); 12498 parseElementClose(res); 12499 return res; 12500 } 12501 12502 protected boolean parsePatientAnimalComponentContent(int eventType, XmlPullParser xpp, Patient owner, Patient.AnimalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12503 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("species")) { 12504 res.setSpecies(parseCodeableConcept(xpp)); 12505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("breed")) { 12506 res.setBreed(parseCodeableConcept(xpp)); 12507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genderStatus")) { 12508 res.setGenderStatus(parseCodeableConcept(xpp)); 12509 } else if (!parseBackboneContent(eventType, xpp, res)) 12510 return false; 12511 return true; 12512 } 12513 12514 protected Patient.PatientCommunicationComponent parsePatientPatientCommunicationComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 12515 Patient.PatientCommunicationComponent res = new Patient.PatientCommunicationComponent(); 12516 parseBackboneAttributes(xpp, res); 12517 next(xpp); 12518 int eventType = nextNoWhitespace(xpp); 12519 while (eventType != XmlPullParser.END_TAG) { 12520 if (!parsePatientPatientCommunicationComponentContent(eventType, xpp, owner, res)) 12521 unknownContent(xpp); 12522 eventType = nextNoWhitespace(xpp); 12523 } 12524 next(xpp); 12525 parseElementClose(res); 12526 return res; 12527 } 12528 12529 protected boolean parsePatientPatientCommunicationComponentContent(int eventType, XmlPullParser xpp, Patient owner, Patient.PatientCommunicationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12530 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 12531 res.setLanguage(parseCodeableConcept(xpp)); 12532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("preferred")) { 12533 res.setPreferredElement(parseBoolean(xpp)); 12534 } else if (!parseBackboneContent(eventType, xpp, res)) 12535 return false; 12536 return true; 12537 } 12538 12539 protected Patient.PatientLinkComponent parsePatientPatientLinkComponent(XmlPullParser xpp, Patient owner) throws XmlPullParserException, IOException, FHIRFormatError { 12540 Patient.PatientLinkComponent res = new Patient.PatientLinkComponent(); 12541 parseBackboneAttributes(xpp, res); 12542 next(xpp); 12543 int eventType = nextNoWhitespace(xpp); 12544 while (eventType != XmlPullParser.END_TAG) { 12545 if (!parsePatientPatientLinkComponentContent(eventType, xpp, owner, res)) 12546 unknownContent(xpp); 12547 eventType = nextNoWhitespace(xpp); 12548 } 12549 next(xpp); 12550 parseElementClose(res); 12551 return res; 12552 } 12553 12554 protected boolean parsePatientPatientLinkComponentContent(int eventType, XmlPullParser xpp, Patient owner, Patient.PatientLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12555 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("other")) { 12556 res.setOther(parseReference(xpp)); 12557 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12558 res.setTypeElement(parseEnumeration(xpp, Patient.LinkType.NULL, new Patient.LinkTypeEnumFactory())); 12559 } else if (!parseBackboneContent(eventType, xpp, res)) 12560 return false; 12561 return true; 12562 } 12563 12564 protected PaymentNotice parsePaymentNotice(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12565 PaymentNotice res = new PaymentNotice(); 12566 parseDomainResourceAttributes(xpp, res); 12567 next(xpp); 12568 int eventType = nextNoWhitespace(xpp); 12569 while (eventType != XmlPullParser.END_TAG) { 12570 if (!parsePaymentNoticeContent(eventType, xpp, res)) 12571 unknownContent(xpp); 12572 eventType = nextNoWhitespace(xpp); 12573 } 12574 next(xpp); 12575 parseElementClose(res); 12576 return res; 12577 } 12578 12579 protected boolean parsePaymentNoticeContent(int eventType, XmlPullParser xpp, PaymentNotice res) throws XmlPullParserException, IOException, FHIRFormatError { 12580 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12581 res.getIdentifier().add(parseIdentifier(xpp)); 12582 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12583 res.setStatusElement(parseEnumeration(xpp, PaymentNotice.PaymentNoticeStatus.NULL, new PaymentNotice.PaymentNoticeStatusEnumFactory())); 12584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 12585 res.setRequest(parseReference(xpp)); 12586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 12587 res.setResponse(parseReference(xpp)); 12588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { 12589 res.setStatusDateElement(parseDate(xpp)); 12590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 12591 res.setCreatedElement(parseDateTime(xpp)); 12592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12593 res.setTarget(parseReference(xpp)); 12594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 12595 res.setProvider(parseReference(xpp)); 12596 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 12597 res.setOrganization(parseReference(xpp)); 12598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("paymentStatus")) { 12599 res.setPaymentStatus(parseCodeableConcept(xpp)); 12600 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12601 return false; 12602 return true; 12603 } 12604 12605 protected PaymentReconciliation parsePaymentReconciliation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12606 PaymentReconciliation res = new PaymentReconciliation(); 12607 parseDomainResourceAttributes(xpp, res); 12608 next(xpp); 12609 int eventType = nextNoWhitespace(xpp); 12610 while (eventType != XmlPullParser.END_TAG) { 12611 if (!parsePaymentReconciliationContent(eventType, xpp, res)) 12612 unknownContent(xpp); 12613 eventType = nextNoWhitespace(xpp); 12614 } 12615 next(xpp); 12616 parseElementClose(res); 12617 return res; 12618 } 12619 12620 protected boolean parsePaymentReconciliationContent(int eventType, XmlPullParser xpp, PaymentReconciliation res) throws XmlPullParserException, IOException, FHIRFormatError { 12621 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12622 res.getIdentifier().add(parseIdentifier(xpp)); 12623 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12624 res.setStatusElement(parseEnumeration(xpp, PaymentReconciliation.PaymentReconciliationStatus.NULL, new PaymentReconciliation.PaymentReconciliationStatusEnumFactory())); 12625 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 12626 res.setPeriod(parsePeriod(xpp)); 12627 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 12628 res.setCreatedElement(parseDateTime(xpp)); 12629 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 12630 res.setOrganization(parseReference(xpp)); 12631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 12632 res.setRequest(parseReference(xpp)); 12633 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 12634 res.setOutcome(parseCodeableConcept(xpp)); 12635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 12636 res.setDispositionElement(parseString(xpp)); 12637 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 12638 res.setRequestProvider(parseReference(xpp)); 12639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 12640 res.setRequestOrganization(parseReference(xpp)); 12641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 12642 res.getDetail().add(parsePaymentReconciliationDetailsComponent(xpp, res)); 12643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 12644 res.setForm(parseCodeableConcept(xpp)); 12645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 12646 res.setTotal(parseMoney(xpp)); 12647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 12648 res.getProcessNote().add(parsePaymentReconciliationNotesComponent(xpp, res)); 12649 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12650 return false; 12651 return true; 12652 } 12653 12654 protected PaymentReconciliation.DetailsComponent parsePaymentReconciliationDetailsComponent(XmlPullParser xpp, PaymentReconciliation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12655 PaymentReconciliation.DetailsComponent res = new PaymentReconciliation.DetailsComponent(); 12656 parseBackboneAttributes(xpp, res); 12657 next(xpp); 12658 int eventType = nextNoWhitespace(xpp); 12659 while (eventType != XmlPullParser.END_TAG) { 12660 if (!parsePaymentReconciliationDetailsComponentContent(eventType, xpp, owner, res)) 12661 unknownContent(xpp); 12662 eventType = nextNoWhitespace(xpp); 12663 } 12664 next(xpp); 12665 parseElementClose(res); 12666 return res; 12667 } 12668 12669 protected boolean parsePaymentReconciliationDetailsComponentContent(int eventType, XmlPullParser xpp, PaymentReconciliation owner, PaymentReconciliation.DetailsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12670 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12671 res.setType(parseCodeableConcept(xpp)); 12672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 12673 res.setRequest(parseReference(xpp)); 12674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 12675 res.setResponse(parseReference(xpp)); 12676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("submitter")) { 12677 res.setSubmitter(parseReference(xpp)); 12678 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payee")) { 12679 res.setPayee(parseReference(xpp)); 12680 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12681 res.setDateElement(parseDate(xpp)); 12682 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { 12683 res.setAmount(parseMoney(xpp)); 12684 } else if (!parseBackboneContent(eventType, xpp, res)) 12685 return false; 12686 return true; 12687 } 12688 12689 protected PaymentReconciliation.NotesComponent parsePaymentReconciliationNotesComponent(XmlPullParser xpp, PaymentReconciliation owner) throws XmlPullParserException, IOException, FHIRFormatError { 12690 PaymentReconciliation.NotesComponent res = new PaymentReconciliation.NotesComponent(); 12691 parseBackboneAttributes(xpp, res); 12692 next(xpp); 12693 int eventType = nextNoWhitespace(xpp); 12694 while (eventType != XmlPullParser.END_TAG) { 12695 if (!parsePaymentReconciliationNotesComponentContent(eventType, xpp, owner, res)) 12696 unknownContent(xpp); 12697 eventType = nextNoWhitespace(xpp); 12698 } 12699 next(xpp); 12700 parseElementClose(res); 12701 return res; 12702 } 12703 12704 protected boolean parsePaymentReconciliationNotesComponentContent(int eventType, XmlPullParser xpp, PaymentReconciliation owner, PaymentReconciliation.NotesComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12705 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12706 res.setType(parseCodeableConcept(xpp)); 12707 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 12708 res.setTextElement(parseString(xpp)); 12709 } else if (!parseBackboneContent(eventType, xpp, res)) 12710 return false; 12711 return true; 12712 } 12713 12714 protected Person parsePerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12715 Person res = new Person(); 12716 parseDomainResourceAttributes(xpp, res); 12717 next(xpp); 12718 int eventType = nextNoWhitespace(xpp); 12719 while (eventType != XmlPullParser.END_TAG) { 12720 if (!parsePersonContent(eventType, xpp, res)) 12721 unknownContent(xpp); 12722 eventType = nextNoWhitespace(xpp); 12723 } 12724 next(xpp); 12725 parseElementClose(res); 12726 return res; 12727 } 12728 12729 protected boolean parsePersonContent(int eventType, XmlPullParser xpp, Person res) throws XmlPullParserException, IOException, FHIRFormatError { 12730 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12731 res.getIdentifier().add(parseIdentifier(xpp)); 12732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12733 res.getName().add(parseHumanName(xpp)); 12734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 12735 res.getTelecom().add(parseContactPoint(xpp)); 12736 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 12737 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 12738 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 12739 res.setBirthDateElement(parseDate(xpp)); 12740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 12741 res.getAddress().add(parseAddress(xpp)); 12742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 12743 res.setPhoto(parseAttachment(xpp)); 12744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("managingOrganization")) { 12745 res.setManagingOrganization(parseReference(xpp)); 12746 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 12747 res.setActiveElement(parseBoolean(xpp)); 12748 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 12749 res.getLink().add(parsePersonPersonLinkComponent(xpp, res)); 12750 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12751 return false; 12752 return true; 12753 } 12754 12755 protected Person.PersonLinkComponent parsePersonPersonLinkComponent(XmlPullParser xpp, Person owner) throws XmlPullParserException, IOException, FHIRFormatError { 12756 Person.PersonLinkComponent res = new Person.PersonLinkComponent(); 12757 parseBackboneAttributes(xpp, res); 12758 next(xpp); 12759 int eventType = nextNoWhitespace(xpp); 12760 while (eventType != XmlPullParser.END_TAG) { 12761 if (!parsePersonPersonLinkComponentContent(eventType, xpp, owner, res)) 12762 unknownContent(xpp); 12763 eventType = nextNoWhitespace(xpp); 12764 } 12765 next(xpp); 12766 parseElementClose(res); 12767 return res; 12768 } 12769 12770 protected boolean parsePersonPersonLinkComponentContent(int eventType, XmlPullParser xpp, Person owner, Person.PersonLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12771 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12772 res.setTarget(parseReference(xpp)); 12773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assurance")) { 12774 res.setAssuranceElement(parseEnumeration(xpp, Person.IdentityAssuranceLevel.NULL, new Person.IdentityAssuranceLevelEnumFactory())); 12775 } else if (!parseBackboneContent(eventType, xpp, res)) 12776 return false; 12777 return true; 12778 } 12779 12780 protected PlanDefinition parsePlanDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 12781 PlanDefinition res = new PlanDefinition(); 12782 parseDomainResourceAttributes(xpp, res); 12783 next(xpp); 12784 int eventType = nextNoWhitespace(xpp); 12785 while (eventType != XmlPullParser.END_TAG) { 12786 if (!parsePlanDefinitionContent(eventType, xpp, res)) 12787 unknownContent(xpp); 12788 eventType = nextNoWhitespace(xpp); 12789 } 12790 next(xpp); 12791 parseElementClose(res); 12792 return res; 12793 } 12794 12795 protected boolean parsePlanDefinitionContent(int eventType, XmlPullParser xpp, PlanDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 12796 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 12797 res.setUrlElement(parseUri(xpp)); 12798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 12799 res.getIdentifier().add(parseIdentifier(xpp)); 12800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 12801 res.setVersionElement(parseString(xpp)); 12802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 12803 res.setNameElement(parseString(xpp)); 12804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 12805 res.setTitleElement(parseString(xpp)); 12806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12807 res.setType(parseCodeableConcept(xpp)); 12808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 12809 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 12810 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 12811 res.setExperimentalElement(parseBoolean(xpp)); 12812 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 12813 res.setDateElement(parseDateTime(xpp)); 12814 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 12815 res.setPublisherElement(parseString(xpp)); 12816 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12817 res.setDescriptionElement(parseMarkdown(xpp)); 12818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 12819 res.setPurposeElement(parseMarkdown(xpp)); 12820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 12821 res.setUsageElement(parseString(xpp)); 12822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 12823 res.setApprovalDateElement(parseDate(xpp)); 12824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 12825 res.setLastReviewDateElement(parseDate(xpp)); 12826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 12827 res.setEffectivePeriod(parsePeriod(xpp)); 12828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 12829 res.getUseContext().add(parseUsageContext(xpp)); 12830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 12831 res.getJurisdiction().add(parseCodeableConcept(xpp)); 12832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 12833 res.getTopic().add(parseCodeableConcept(xpp)); 12834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 12835 res.getContributor().add(parseContributor(xpp)); 12836 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 12837 res.getContact().add(parseContactDetail(xpp)); 12838 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 12839 res.setCopyrightElement(parseMarkdown(xpp)); 12840 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 12841 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 12842 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("library")) { 12843 res.getLibrary().add(parseReference(xpp)); 12844 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goal")) { 12845 res.getGoal().add(parsePlanDefinitionPlanDefinitionGoalComponent(xpp, res)); 12846 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 12847 res.getAction().add(parsePlanDefinitionPlanDefinitionActionComponent(xpp, res)); 12848 } else if (!parseDomainResourceContent(eventType, xpp, res)) 12849 return false; 12850 return true; 12851 } 12852 12853 protected PlanDefinition.PlanDefinitionGoalComponent parsePlanDefinitionPlanDefinitionGoalComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12854 PlanDefinition.PlanDefinitionGoalComponent res = new PlanDefinition.PlanDefinitionGoalComponent(); 12855 parseBackboneAttributes(xpp, res); 12856 next(xpp); 12857 int eventType = nextNoWhitespace(xpp); 12858 while (eventType != XmlPullParser.END_TAG) { 12859 if (!parsePlanDefinitionPlanDefinitionGoalComponentContent(eventType, xpp, owner, res)) 12860 unknownContent(xpp); 12861 eventType = nextNoWhitespace(xpp); 12862 } 12863 next(xpp); 12864 parseElementClose(res); 12865 return res; 12866 } 12867 12868 protected boolean parsePlanDefinitionPlanDefinitionGoalComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionGoalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12869 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 12870 res.setCategory(parseCodeableConcept(xpp)); 12871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12872 res.setDescription(parseCodeableConcept(xpp)); 12873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 12874 res.setPriority(parseCodeableConcept(xpp)); 12875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 12876 res.setStart(parseCodeableConcept(xpp)); 12877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("addresses")) { 12878 res.getAddresses().add(parseCodeableConcept(xpp)); 12879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12880 res.getDocumentation().add(parseRelatedArtifact(xpp)); 12881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 12882 res.getTarget().add(parsePlanDefinitionPlanDefinitionGoalTargetComponent(xpp, owner)); 12883 } else if (!parseBackboneContent(eventType, xpp, res)) 12884 return false; 12885 return true; 12886 } 12887 12888 protected PlanDefinition.PlanDefinitionGoalTargetComponent parsePlanDefinitionPlanDefinitionGoalTargetComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12889 PlanDefinition.PlanDefinitionGoalTargetComponent res = new PlanDefinition.PlanDefinitionGoalTargetComponent(); 12890 parseBackboneAttributes(xpp, res); 12891 next(xpp); 12892 int eventType = nextNoWhitespace(xpp); 12893 while (eventType != XmlPullParser.END_TAG) { 12894 if (!parsePlanDefinitionPlanDefinitionGoalTargetComponentContent(eventType, xpp, owner, res)) 12895 unknownContent(xpp); 12896 eventType = nextNoWhitespace(xpp); 12897 } 12898 next(xpp); 12899 parseElementClose(res); 12900 return res; 12901 } 12902 12903 protected boolean parsePlanDefinitionPlanDefinitionGoalTargetComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionGoalTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12904 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measure")) { 12905 res.setMeasure(parseCodeableConcept(xpp)); 12906 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "detail")) { 12907 res.setDetail(parseType("detail", xpp)); 12908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("due")) { 12909 res.setDue(parseDuration(xpp)); 12910 } else if (!parseBackboneContent(eventType, xpp, res)) 12911 return false; 12912 return true; 12913 } 12914 12915 protected PlanDefinition.PlanDefinitionActionComponent parsePlanDefinitionPlanDefinitionActionComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12916 PlanDefinition.PlanDefinitionActionComponent res = new PlanDefinition.PlanDefinitionActionComponent(); 12917 parseBackboneAttributes(xpp, res); 12918 next(xpp); 12919 int eventType = nextNoWhitespace(xpp); 12920 while (eventType != XmlPullParser.END_TAG) { 12921 if (!parsePlanDefinitionPlanDefinitionActionComponentContent(eventType, xpp, owner, res)) 12922 unknownContent(xpp); 12923 eventType = nextNoWhitespace(xpp); 12924 } 12925 next(xpp); 12926 parseElementClose(res); 12927 return res; 12928 } 12929 12930 protected boolean parsePlanDefinitionPlanDefinitionActionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 12931 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 12932 res.setLabelElement(parseString(xpp)); 12933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 12934 res.setTitleElement(parseString(xpp)); 12935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 12936 res.setDescriptionElement(parseString(xpp)); 12937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textEquivalent")) { 12938 res.setTextEquivalentElement(parseString(xpp)); 12939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 12940 res.getCode().add(parseCodeableConcept(xpp)); 12941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 12942 res.getReason().add(parseCodeableConcept(xpp)); 12943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 12944 res.getDocumentation().add(parseRelatedArtifact(xpp)); 12945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("goalId")) { 12946 res.getGoalId().add(parseId(xpp)); 12947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("triggerDefinition")) { 12948 res.getTriggerDefinition().add(parseTriggerDefinition(xpp)); 12949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 12950 res.getCondition().add(parsePlanDefinitionPlanDefinitionActionConditionComponent(xpp, owner)); 12951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 12952 res.getInput().add(parseDataRequirement(xpp)); 12953 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 12954 res.getOutput().add(parseDataRequirement(xpp)); 12955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAction")) { 12956 res.getRelatedAction().add(parsePlanDefinitionPlanDefinitionActionRelatedActionComponent(xpp, owner)); 12957 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 12958 res.setTiming(parseType("timing", xpp)); 12959 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 12960 res.getParticipant().add(parsePlanDefinitionPlanDefinitionActionParticipantComponent(xpp, owner)); 12961 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 12962 res.setType(parseCoding(xpp)); 12963 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupingBehavior")) { 12964 res.setGroupingBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionGroupingBehavior.NULL, new PlanDefinition.ActionGroupingBehaviorEnumFactory())); 12965 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("selectionBehavior")) { 12966 res.setSelectionBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionSelectionBehavior.NULL, new PlanDefinition.ActionSelectionBehaviorEnumFactory())); 12967 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requiredBehavior")) { 12968 res.setRequiredBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionRequiredBehavior.NULL, new PlanDefinition.ActionRequiredBehaviorEnumFactory())); 12969 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precheckBehavior")) { 12970 res.setPrecheckBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionPrecheckBehavior.NULL, new PlanDefinition.ActionPrecheckBehaviorEnumFactory())); 12971 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cardinalityBehavior")) { 12972 res.setCardinalityBehaviorElement(parseEnumeration(xpp, PlanDefinition.ActionCardinalityBehavior.NULL, new PlanDefinition.ActionCardinalityBehaviorEnumFactory())); 12973 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 12974 res.setDefinition(parseReference(xpp)); 12975 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 12976 res.setTransform(parseReference(xpp)); 12977 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dynamicValue")) { 12978 res.getDynamicValue().add(parsePlanDefinitionPlanDefinitionActionDynamicValueComponent(xpp, owner)); 12979 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 12980 res.getAction().add(parsePlanDefinitionPlanDefinitionActionComponent(xpp, owner)); 12981 } else if (!parseBackboneContent(eventType, xpp, res)) 12982 return false; 12983 return true; 12984 } 12985 12986 protected PlanDefinition.PlanDefinitionActionConditionComponent parsePlanDefinitionPlanDefinitionActionConditionComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 12987 PlanDefinition.PlanDefinitionActionConditionComponent res = new PlanDefinition.PlanDefinitionActionConditionComponent(); 12988 parseBackboneAttributes(xpp, res); 12989 next(xpp); 12990 int eventType = nextNoWhitespace(xpp); 12991 while (eventType != XmlPullParser.END_TAG) { 12992 if (!parsePlanDefinitionPlanDefinitionActionConditionComponentContent(eventType, xpp, owner, res)) 12993 unknownContent(xpp); 12994 eventType = nextNoWhitespace(xpp); 12995 } 12996 next(xpp); 12997 parseElementClose(res); 12998 return res; 12999 } 13000 13001 protected boolean parsePlanDefinitionPlanDefinitionActionConditionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13002 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 13003 res.setKindElement(parseEnumeration(xpp, PlanDefinition.ActionConditionKind.NULL, new PlanDefinition.ActionConditionKindEnumFactory())); 13004 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13005 res.setDescriptionElement(parseString(xpp)); 13006 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 13007 res.setLanguageElement(parseString(xpp)); 13008 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 13009 res.setExpressionElement(parseString(xpp)); 13010 } else if (!parseBackboneContent(eventType, xpp, res)) 13011 return false; 13012 return true; 13013 } 13014 13015 protected PlanDefinition.PlanDefinitionActionRelatedActionComponent parsePlanDefinitionPlanDefinitionActionRelatedActionComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 13016 PlanDefinition.PlanDefinitionActionRelatedActionComponent res = new PlanDefinition.PlanDefinitionActionRelatedActionComponent(); 13017 parseBackboneAttributes(xpp, res); 13018 next(xpp); 13019 int eventType = nextNoWhitespace(xpp); 13020 while (eventType != XmlPullParser.END_TAG) { 13021 if (!parsePlanDefinitionPlanDefinitionActionRelatedActionComponentContent(eventType, xpp, owner, res)) 13022 unknownContent(xpp); 13023 eventType = nextNoWhitespace(xpp); 13024 } 13025 next(xpp); 13026 parseElementClose(res); 13027 return res; 13028 } 13029 13030 protected boolean parsePlanDefinitionPlanDefinitionActionRelatedActionComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionRelatedActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13031 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionId")) { 13032 res.setActionIdElement(parseId(xpp)); 13033 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 13034 res.setRelationshipElement(parseEnumeration(xpp, PlanDefinition.ActionRelationshipType.NULL, new PlanDefinition.ActionRelationshipTypeEnumFactory())); 13035 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "offset")) { 13036 res.setOffset(parseType("offset", xpp)); 13037 } else if (!parseBackboneContent(eventType, xpp, res)) 13038 return false; 13039 return true; 13040 } 13041 13042 protected PlanDefinition.PlanDefinitionActionParticipantComponent parsePlanDefinitionPlanDefinitionActionParticipantComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 13043 PlanDefinition.PlanDefinitionActionParticipantComponent res = new PlanDefinition.PlanDefinitionActionParticipantComponent(); 13044 parseBackboneAttributes(xpp, res); 13045 next(xpp); 13046 int eventType = nextNoWhitespace(xpp); 13047 while (eventType != XmlPullParser.END_TAG) { 13048 if (!parsePlanDefinitionPlanDefinitionActionParticipantComponentContent(eventType, xpp, owner, res)) 13049 unknownContent(xpp); 13050 eventType = nextNoWhitespace(xpp); 13051 } 13052 next(xpp); 13053 parseElementClose(res); 13054 return res; 13055 } 13056 13057 protected boolean parsePlanDefinitionPlanDefinitionActionParticipantComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13058 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13059 res.setTypeElement(parseEnumeration(xpp, PlanDefinition.ActionParticipantType.NULL, new PlanDefinition.ActionParticipantTypeEnumFactory())); 13060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 13061 res.setRole(parseCodeableConcept(xpp)); 13062 } else if (!parseBackboneContent(eventType, xpp, res)) 13063 return false; 13064 return true; 13065 } 13066 13067 protected PlanDefinition.PlanDefinitionActionDynamicValueComponent parsePlanDefinitionPlanDefinitionActionDynamicValueComponent(XmlPullParser xpp, PlanDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 13068 PlanDefinition.PlanDefinitionActionDynamicValueComponent res = new PlanDefinition.PlanDefinitionActionDynamicValueComponent(); 13069 parseBackboneAttributes(xpp, res); 13070 next(xpp); 13071 int eventType = nextNoWhitespace(xpp); 13072 while (eventType != XmlPullParser.END_TAG) { 13073 if (!parsePlanDefinitionPlanDefinitionActionDynamicValueComponentContent(eventType, xpp, owner, res)) 13074 unknownContent(xpp); 13075 eventType = nextNoWhitespace(xpp); 13076 } 13077 next(xpp); 13078 parseElementClose(res); 13079 return res; 13080 } 13081 13082 protected boolean parsePlanDefinitionPlanDefinitionActionDynamicValueComponentContent(int eventType, XmlPullParser xpp, PlanDefinition owner, PlanDefinition.PlanDefinitionActionDynamicValueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13083 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13084 res.setDescriptionElement(parseString(xpp)); 13085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 13086 res.setPathElement(parseString(xpp)); 13087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 13088 res.setLanguageElement(parseString(xpp)); 13089 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 13090 res.setExpressionElement(parseString(xpp)); 13091 } else if (!parseBackboneContent(eventType, xpp, res)) 13092 return false; 13093 return true; 13094 } 13095 13096 protected Practitioner parsePractitioner(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13097 Practitioner res = new Practitioner(); 13098 parseDomainResourceAttributes(xpp, res); 13099 next(xpp); 13100 int eventType = nextNoWhitespace(xpp); 13101 while (eventType != XmlPullParser.END_TAG) { 13102 if (!parsePractitionerContent(eventType, xpp, res)) 13103 unknownContent(xpp); 13104 eventType = nextNoWhitespace(xpp); 13105 } 13106 next(xpp); 13107 parseElementClose(res); 13108 return res; 13109 } 13110 13111 protected boolean parsePractitionerContent(int eventType, XmlPullParser xpp, Practitioner res) throws XmlPullParserException, IOException, FHIRFormatError { 13112 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13113 res.getIdentifier().add(parseIdentifier(xpp)); 13114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 13115 res.setActiveElement(parseBoolean(xpp)); 13116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13117 res.getName().add(parseHumanName(xpp)); 13118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 13119 res.getTelecom().add(parseContactPoint(xpp)); 13120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 13121 res.getAddress().add(parseAddress(xpp)); 13122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 13123 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 13124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 13125 res.setBirthDateElement(parseDate(xpp)); 13126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 13127 res.getPhoto().add(parseAttachment(xpp)); 13128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualification")) { 13129 res.getQualification().add(parsePractitionerPractitionerQualificationComponent(xpp, res)); 13130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communication")) { 13131 res.getCommunication().add(parseCodeableConcept(xpp)); 13132 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13133 return false; 13134 return true; 13135 } 13136 13137 protected Practitioner.PractitionerQualificationComponent parsePractitionerPractitionerQualificationComponent(XmlPullParser xpp, Practitioner owner) throws XmlPullParserException, IOException, FHIRFormatError { 13138 Practitioner.PractitionerQualificationComponent res = new Practitioner.PractitionerQualificationComponent(); 13139 parseBackboneAttributes(xpp, res); 13140 next(xpp); 13141 int eventType = nextNoWhitespace(xpp); 13142 while (eventType != XmlPullParser.END_TAG) { 13143 if (!parsePractitionerPractitionerQualificationComponentContent(eventType, xpp, owner, res)) 13144 unknownContent(xpp); 13145 eventType = nextNoWhitespace(xpp); 13146 } 13147 next(xpp); 13148 parseElementClose(res); 13149 return res; 13150 } 13151 13152 protected boolean parsePractitionerPractitionerQualificationComponentContent(int eventType, XmlPullParser xpp, Practitioner owner, Practitioner.PractitionerQualificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13153 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13154 res.getIdentifier().add(parseIdentifier(xpp)); 13155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13156 res.setCode(parseCodeableConcept(xpp)); 13157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 13158 res.setPeriod(parsePeriod(xpp)); 13159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issuer")) { 13160 res.setIssuer(parseReference(xpp)); 13161 } else if (!parseBackboneContent(eventType, xpp, res)) 13162 return false; 13163 return true; 13164 } 13165 13166 protected PractitionerRole parsePractitionerRole(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13167 PractitionerRole res = new PractitionerRole(); 13168 parseDomainResourceAttributes(xpp, res); 13169 next(xpp); 13170 int eventType = nextNoWhitespace(xpp); 13171 while (eventType != XmlPullParser.END_TAG) { 13172 if (!parsePractitionerRoleContent(eventType, xpp, res)) 13173 unknownContent(xpp); 13174 eventType = nextNoWhitespace(xpp); 13175 } 13176 next(xpp); 13177 parseElementClose(res); 13178 return res; 13179 } 13180 13181 protected boolean parsePractitionerRoleContent(int eventType, XmlPullParser xpp, PractitionerRole res) throws XmlPullParserException, IOException, FHIRFormatError { 13182 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13183 res.getIdentifier().add(parseIdentifier(xpp)); 13184 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 13185 res.setActiveElement(parseBoolean(xpp)); 13186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 13187 res.setPeriod(parsePeriod(xpp)); 13188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("practitioner")) { 13189 res.setPractitioner(parseReference(xpp)); 13190 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 13191 res.setOrganization(parseReference(xpp)); 13192 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13193 res.getCode().add(parseCodeableConcept(xpp)); 13194 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 13195 res.getSpecialty().add(parseCodeableConcept(xpp)); 13196 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 13197 res.getLocation().add(parseReference(xpp)); 13198 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("healthcareService")) { 13199 res.getHealthcareService().add(parseReference(xpp)); 13200 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 13201 res.getTelecom().add(parseContactPoint(xpp)); 13202 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableTime")) { 13203 res.getAvailableTime().add(parsePractitionerRolePractitionerRoleAvailableTimeComponent(xpp, res)); 13204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notAvailable")) { 13205 res.getNotAvailable().add(parsePractitionerRolePractitionerRoleNotAvailableComponent(xpp, res)); 13206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availabilityExceptions")) { 13207 res.setAvailabilityExceptionsElement(parseString(xpp)); 13208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 13209 res.getEndpoint().add(parseReference(xpp)); 13210 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13211 return false; 13212 return true; 13213 } 13214 13215 protected PractitionerRole.PractitionerRoleAvailableTimeComponent parsePractitionerRolePractitionerRoleAvailableTimeComponent(XmlPullParser xpp, PractitionerRole owner) throws XmlPullParserException, IOException, FHIRFormatError { 13216 PractitionerRole.PractitionerRoleAvailableTimeComponent res = new PractitionerRole.PractitionerRoleAvailableTimeComponent(); 13217 parseBackboneAttributes(xpp, res); 13218 next(xpp); 13219 int eventType = nextNoWhitespace(xpp); 13220 while (eventType != XmlPullParser.END_TAG) { 13221 if (!parsePractitionerRolePractitionerRoleAvailableTimeComponentContent(eventType, xpp, owner, res)) 13222 unknownContent(xpp); 13223 eventType = nextNoWhitespace(xpp); 13224 } 13225 next(xpp); 13226 parseElementClose(res); 13227 return res; 13228 } 13229 13230 protected boolean parsePractitionerRolePractitionerRoleAvailableTimeComponentContent(int eventType, XmlPullParser xpp, PractitionerRole owner, PractitionerRole.PractitionerRoleAvailableTimeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13231 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("daysOfWeek")) { 13232 res.getDaysOfWeek().add(parseEnumeration(xpp, PractitionerRole.DaysOfWeek.NULL, new PractitionerRole.DaysOfWeekEnumFactory())); 13233 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allDay")) { 13234 res.setAllDayElement(parseBoolean(xpp)); 13235 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableStartTime")) { 13236 res.setAvailableStartTimeElement(parseTime(xpp)); 13237 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("availableEndTime")) { 13238 res.setAvailableEndTimeElement(parseTime(xpp)); 13239 } else if (!parseBackboneContent(eventType, xpp, res)) 13240 return false; 13241 return true; 13242 } 13243 13244 protected PractitionerRole.PractitionerRoleNotAvailableComponent parsePractitionerRolePractitionerRoleNotAvailableComponent(XmlPullParser xpp, PractitionerRole owner) throws XmlPullParserException, IOException, FHIRFormatError { 13245 PractitionerRole.PractitionerRoleNotAvailableComponent res = new PractitionerRole.PractitionerRoleNotAvailableComponent(); 13246 parseBackboneAttributes(xpp, res); 13247 next(xpp); 13248 int eventType = nextNoWhitespace(xpp); 13249 while (eventType != XmlPullParser.END_TAG) { 13250 if (!parsePractitionerRolePractitionerRoleNotAvailableComponentContent(eventType, xpp, owner, res)) 13251 unknownContent(xpp); 13252 eventType = nextNoWhitespace(xpp); 13253 } 13254 next(xpp); 13255 parseElementClose(res); 13256 return res; 13257 } 13258 13259 protected boolean parsePractitionerRolePractitionerRoleNotAvailableComponentContent(int eventType, XmlPullParser xpp, PractitionerRole owner, PractitionerRole.PractitionerRoleNotAvailableComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13260 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13261 res.setDescriptionElement(parseString(xpp)); 13262 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("during")) { 13263 res.setDuring(parsePeriod(xpp)); 13264 } else if (!parseBackboneContent(eventType, xpp, res)) 13265 return false; 13266 return true; 13267 } 13268 13269 protected Procedure parseProcedure(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13270 Procedure res = new Procedure(); 13271 parseDomainResourceAttributes(xpp, res); 13272 next(xpp); 13273 int eventType = nextNoWhitespace(xpp); 13274 while (eventType != XmlPullParser.END_TAG) { 13275 if (!parseProcedureContent(eventType, xpp, res)) 13276 unknownContent(xpp); 13277 eventType = nextNoWhitespace(xpp); 13278 } 13279 next(xpp); 13280 parseElementClose(res); 13281 return res; 13282 } 13283 13284 protected boolean parseProcedureContent(int eventType, XmlPullParser xpp, Procedure res) throws XmlPullParserException, IOException, FHIRFormatError { 13285 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13286 res.getIdentifier().add(parseIdentifier(xpp)); 13287 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 13288 res.getDefinition().add(parseReference(xpp)); 13289 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 13290 res.getBasedOn().add(parseReference(xpp)); 13291 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 13292 res.getPartOf().add(parseReference(xpp)); 13293 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13294 res.setStatusElement(parseEnumeration(xpp, Procedure.ProcedureStatus.NULL, new Procedure.ProcedureStatusEnumFactory())); 13295 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDone")) { 13296 res.setNotDoneElement(parseBoolean(xpp)); 13297 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notDoneReason")) { 13298 res.setNotDoneReason(parseCodeableConcept(xpp)); 13299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 13300 res.setCategory(parseCodeableConcept(xpp)); 13301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13302 res.setCode(parseCodeableConcept(xpp)); 13303 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 13304 res.setSubject(parseReference(xpp)); 13305 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 13306 res.setContext(parseReference(xpp)); 13307 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "performed")) { 13308 res.setPerformed(parseType("performed", xpp)); 13309 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 13310 res.getPerformer().add(parseProcedureProcedurePerformerComponent(xpp, res)); 13311 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 13312 res.setLocation(parseReference(xpp)); 13313 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 13314 res.getReasonCode().add(parseCodeableConcept(xpp)); 13315 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 13316 res.getReasonReference().add(parseReference(xpp)); 13317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 13318 res.getBodySite().add(parseCodeableConcept(xpp)); 13319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 13320 res.setOutcome(parseCodeableConcept(xpp)); 13321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("report")) { 13322 res.getReport().add(parseReference(xpp)); 13323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complication")) { 13324 res.getComplication().add(parseCodeableConcept(xpp)); 13325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complicationDetail")) { 13326 res.getComplicationDetail().add(parseReference(xpp)); 13327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("followUp")) { 13328 res.getFollowUp().add(parseCodeableConcept(xpp)); 13329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 13330 res.getNote().add(parseAnnotation(xpp)); 13331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focalDevice")) { 13332 res.getFocalDevice().add(parseProcedureProcedureFocalDeviceComponent(xpp, res)); 13333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usedReference")) { 13334 res.getUsedReference().add(parseReference(xpp)); 13335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usedCode")) { 13336 res.getUsedCode().add(parseCodeableConcept(xpp)); 13337 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13338 return false; 13339 return true; 13340 } 13341 13342 protected Procedure.ProcedurePerformerComponent parseProcedureProcedurePerformerComponent(XmlPullParser xpp, Procedure owner) throws XmlPullParserException, IOException, FHIRFormatError { 13343 Procedure.ProcedurePerformerComponent res = new Procedure.ProcedurePerformerComponent(); 13344 parseBackboneAttributes(xpp, res); 13345 next(xpp); 13346 int eventType = nextNoWhitespace(xpp); 13347 while (eventType != XmlPullParser.END_TAG) { 13348 if (!parseProcedureProcedurePerformerComponentContent(eventType, xpp, owner, res)) 13349 unknownContent(xpp); 13350 eventType = nextNoWhitespace(xpp); 13351 } 13352 next(xpp); 13353 parseElementClose(res); 13354 return res; 13355 } 13356 13357 protected boolean parseProcedureProcedurePerformerComponentContent(int eventType, XmlPullParser xpp, Procedure owner, Procedure.ProcedurePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13358 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 13359 res.setRole(parseCodeableConcept(xpp)); 13360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 13361 res.setActor(parseReference(xpp)); 13362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 13363 res.setOnBehalfOf(parseReference(xpp)); 13364 } else if (!parseBackboneContent(eventType, xpp, res)) 13365 return false; 13366 return true; 13367 } 13368 13369 protected Procedure.ProcedureFocalDeviceComponent parseProcedureProcedureFocalDeviceComponent(XmlPullParser xpp, Procedure owner) throws XmlPullParserException, IOException, FHIRFormatError { 13370 Procedure.ProcedureFocalDeviceComponent res = new Procedure.ProcedureFocalDeviceComponent(); 13371 parseBackboneAttributes(xpp, res); 13372 next(xpp); 13373 int eventType = nextNoWhitespace(xpp); 13374 while (eventType != XmlPullParser.END_TAG) { 13375 if (!parseProcedureProcedureFocalDeviceComponentContent(eventType, xpp, owner, res)) 13376 unknownContent(xpp); 13377 eventType = nextNoWhitespace(xpp); 13378 } 13379 next(xpp); 13380 parseElementClose(res); 13381 return res; 13382 } 13383 13384 protected boolean parseProcedureProcedureFocalDeviceComponentContent(int eventType, XmlPullParser xpp, Procedure owner, Procedure.ProcedureFocalDeviceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13385 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 13386 res.setAction(parseCodeableConcept(xpp)); 13387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manipulated")) { 13388 res.setManipulated(parseReference(xpp)); 13389 } else if (!parseBackboneContent(eventType, xpp, res)) 13390 return false; 13391 return true; 13392 } 13393 13394 protected ProcedureRequest parseProcedureRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13395 ProcedureRequest res = new ProcedureRequest(); 13396 parseDomainResourceAttributes(xpp, res); 13397 next(xpp); 13398 int eventType = nextNoWhitespace(xpp); 13399 while (eventType != XmlPullParser.END_TAG) { 13400 if (!parseProcedureRequestContent(eventType, xpp, res)) 13401 unknownContent(xpp); 13402 eventType = nextNoWhitespace(xpp); 13403 } 13404 next(xpp); 13405 parseElementClose(res); 13406 return res; 13407 } 13408 13409 protected boolean parseProcedureRequestContent(int eventType, XmlPullParser xpp, ProcedureRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 13410 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13411 res.getIdentifier().add(parseIdentifier(xpp)); 13412 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 13413 res.getDefinition().add(parseReference(xpp)); 13414 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 13415 res.getBasedOn().add(parseReference(xpp)); 13416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 13417 res.getReplaces().add(parseReference(xpp)); 13418 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requisition")) { 13419 res.setRequisition(parseIdentifier(xpp)); 13420 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13421 res.setStatusElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestStatus.NULL, new ProcedureRequest.ProcedureRequestStatusEnumFactory())); 13422 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 13423 res.setIntentElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestIntent.NULL, new ProcedureRequest.ProcedureRequestIntentEnumFactory())); 13424 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 13425 res.setPriorityElement(parseEnumeration(xpp, ProcedureRequest.ProcedureRequestPriority.NULL, new ProcedureRequest.ProcedureRequestPriorityEnumFactory())); 13426 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doNotPerform")) { 13427 res.setDoNotPerformElement(parseBoolean(xpp)); 13428 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 13429 res.getCategory().add(parseCodeableConcept(xpp)); 13430 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13431 res.setCode(parseCodeableConcept(xpp)); 13432 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 13433 res.setSubject(parseReference(xpp)); 13434 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 13435 res.setContext(parseReference(xpp)); 13436 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 13437 res.setOccurrence(parseType("occurrence", xpp)); 13438 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "asNeeded")) { 13439 res.setAsNeeded(parseType("asNeeded", xpp)); 13440 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 13441 res.setAuthoredOnElement(parseDateTime(xpp)); 13442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 13443 res.setRequester(parseProcedureRequestProcedureRequestRequesterComponent(xpp, res)); 13444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 13445 res.setPerformerType(parseCodeableConcept(xpp)); 13446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 13447 res.setPerformer(parseReference(xpp)); 13448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 13449 res.getReasonCode().add(parseCodeableConcept(xpp)); 13450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 13451 res.getReasonReference().add(parseReference(xpp)); 13452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 13453 res.getSupportingInfo().add(parseReference(xpp)); 13454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 13455 res.getSpecimen().add(parseReference(xpp)); 13456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 13457 res.getBodySite().add(parseCodeableConcept(xpp)); 13458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 13459 res.getNote().add(parseAnnotation(xpp)); 13460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 13461 res.getRelevantHistory().add(parseReference(xpp)); 13462 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13463 return false; 13464 return true; 13465 } 13466 13467 protected ProcedureRequest.ProcedureRequestRequesterComponent parseProcedureRequestProcedureRequestRequesterComponent(XmlPullParser xpp, ProcedureRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 13468 ProcedureRequest.ProcedureRequestRequesterComponent res = new ProcedureRequest.ProcedureRequestRequesterComponent(); 13469 parseBackboneAttributes(xpp, res); 13470 next(xpp); 13471 int eventType = nextNoWhitespace(xpp); 13472 while (eventType != XmlPullParser.END_TAG) { 13473 if (!parseProcedureRequestProcedureRequestRequesterComponentContent(eventType, xpp, owner, res)) 13474 unknownContent(xpp); 13475 eventType = nextNoWhitespace(xpp); 13476 } 13477 next(xpp); 13478 parseElementClose(res); 13479 return res; 13480 } 13481 13482 protected boolean parseProcedureRequestProcedureRequestRequesterComponentContent(int eventType, XmlPullParser xpp, ProcedureRequest owner, ProcedureRequest.ProcedureRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13483 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 13484 res.setAgent(parseReference(xpp)); 13485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 13486 res.setOnBehalfOf(parseReference(xpp)); 13487 } else if (!parseBackboneContent(eventType, xpp, res)) 13488 return false; 13489 return true; 13490 } 13491 13492 protected ProcessRequest parseProcessRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13493 ProcessRequest res = new ProcessRequest(); 13494 parseDomainResourceAttributes(xpp, res); 13495 next(xpp); 13496 int eventType = nextNoWhitespace(xpp); 13497 while (eventType != XmlPullParser.END_TAG) { 13498 if (!parseProcessRequestContent(eventType, xpp, res)) 13499 unknownContent(xpp); 13500 eventType = nextNoWhitespace(xpp); 13501 } 13502 next(xpp); 13503 parseElementClose(res); 13504 return res; 13505 } 13506 13507 protected boolean parseProcessRequestContent(int eventType, XmlPullParser xpp, ProcessRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 13508 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13509 res.getIdentifier().add(parseIdentifier(xpp)); 13510 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13511 res.setStatusElement(parseEnumeration(xpp, ProcessRequest.ProcessRequestStatus.NULL, new ProcessRequest.ProcessRequestStatusEnumFactory())); 13512 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 13513 res.setActionElement(parseEnumeration(xpp, ProcessRequest.ActionList.NULL, new ProcessRequest.ActionListEnumFactory())); 13514 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 13515 res.setTarget(parseReference(xpp)); 13516 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 13517 res.setCreatedElement(parseDateTime(xpp)); 13518 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("provider")) { 13519 res.setProvider(parseReference(xpp)); 13520 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 13521 res.setOrganization(parseReference(xpp)); 13522 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 13523 res.setRequest(parseReference(xpp)); 13524 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 13525 res.setResponse(parseReference(xpp)); 13526 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nullify")) { 13527 res.setNullifyElement(parseBoolean(xpp)); 13528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reference")) { 13529 res.setReferenceElement(parseString(xpp)); 13530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13531 res.getItem().add(parseProcessRequestItemsComponent(xpp, res)); 13532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 13533 res.getInclude().add(parseString(xpp)); 13534 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 13535 res.getExclude().add(parseString(xpp)); 13536 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 13537 res.setPeriod(parsePeriod(xpp)); 13538 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13539 return false; 13540 return true; 13541 } 13542 13543 protected ProcessRequest.ItemsComponent parseProcessRequestItemsComponent(XmlPullParser xpp, ProcessRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 13544 ProcessRequest.ItemsComponent res = new ProcessRequest.ItemsComponent(); 13545 parseBackboneAttributes(xpp, res); 13546 next(xpp); 13547 int eventType = nextNoWhitespace(xpp); 13548 while (eventType != XmlPullParser.END_TAG) { 13549 if (!parseProcessRequestItemsComponentContent(eventType, xpp, owner, res)) 13550 unknownContent(xpp); 13551 eventType = nextNoWhitespace(xpp); 13552 } 13553 next(xpp); 13554 parseElementClose(res); 13555 return res; 13556 } 13557 13558 protected boolean parseProcessRequestItemsComponentContent(int eventType, XmlPullParser xpp, ProcessRequest owner, ProcessRequest.ItemsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13559 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sequenceLinkId")) { 13560 res.setSequenceLinkIdElement(parseInteger(xpp)); 13561 } else if (!parseBackboneContent(eventType, xpp, res)) 13562 return false; 13563 return true; 13564 } 13565 13566 protected ProcessResponse parseProcessResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13567 ProcessResponse res = new ProcessResponse(); 13568 parseDomainResourceAttributes(xpp, res); 13569 next(xpp); 13570 int eventType = nextNoWhitespace(xpp); 13571 while (eventType != XmlPullParser.END_TAG) { 13572 if (!parseProcessResponseContent(eventType, xpp, res)) 13573 unknownContent(xpp); 13574 eventType = nextNoWhitespace(xpp); 13575 } 13576 next(xpp); 13577 parseElementClose(res); 13578 return res; 13579 } 13580 13581 protected boolean parseProcessResponseContent(int eventType, XmlPullParser xpp, ProcessResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 13582 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13583 res.getIdentifier().add(parseIdentifier(xpp)); 13584 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13585 res.setStatusElement(parseEnumeration(xpp, ProcessResponse.ProcessResponseStatus.NULL, new ProcessResponse.ProcessResponseStatusEnumFactory())); 13586 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("created")) { 13587 res.setCreatedElement(parseDateTime(xpp)); 13588 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("organization")) { 13589 res.setOrganization(parseReference(xpp)); 13590 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 13591 res.setRequest(parseReference(xpp)); 13592 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 13593 res.setOutcome(parseCodeableConcept(xpp)); 13594 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("disposition")) { 13595 res.setDispositionElement(parseString(xpp)); 13596 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestProvider")) { 13597 res.setRequestProvider(parseReference(xpp)); 13598 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestOrganization")) { 13599 res.setRequestOrganization(parseReference(xpp)); 13600 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("form")) { 13601 res.setForm(parseCodeableConcept(xpp)); 13602 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processNote")) { 13603 res.getProcessNote().add(parseProcessResponseProcessResponseProcessNoteComponent(xpp, res)); 13604 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 13605 res.getError().add(parseCodeableConcept(xpp)); 13606 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("communicationRequest")) { 13607 res.getCommunicationRequest().add(parseReference(xpp)); 13608 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13609 return false; 13610 return true; 13611 } 13612 13613 protected ProcessResponse.ProcessResponseProcessNoteComponent parseProcessResponseProcessResponseProcessNoteComponent(XmlPullParser xpp, ProcessResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 13614 ProcessResponse.ProcessResponseProcessNoteComponent res = new ProcessResponse.ProcessResponseProcessNoteComponent(); 13615 parseBackboneAttributes(xpp, res); 13616 next(xpp); 13617 int eventType = nextNoWhitespace(xpp); 13618 while (eventType != XmlPullParser.END_TAG) { 13619 if (!parseProcessResponseProcessResponseProcessNoteComponentContent(eventType, xpp, owner, res)) 13620 unknownContent(xpp); 13621 eventType = nextNoWhitespace(xpp); 13622 } 13623 next(xpp); 13624 parseElementClose(res); 13625 return res; 13626 } 13627 13628 protected boolean parseProcessResponseProcessResponseProcessNoteComponentContent(int eventType, XmlPullParser xpp, ProcessResponse owner, ProcessResponse.ProcessResponseProcessNoteComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13629 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13630 res.setType(parseCodeableConcept(xpp)); 13631 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 13632 res.setTextElement(parseString(xpp)); 13633 } else if (!parseBackboneContent(eventType, xpp, res)) 13634 return false; 13635 return true; 13636 } 13637 13638 protected Provenance parseProvenance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13639 Provenance res = new Provenance(); 13640 parseDomainResourceAttributes(xpp, res); 13641 next(xpp); 13642 int eventType = nextNoWhitespace(xpp); 13643 while (eventType != XmlPullParser.END_TAG) { 13644 if (!parseProvenanceContent(eventType, xpp, res)) 13645 unknownContent(xpp); 13646 eventType = nextNoWhitespace(xpp); 13647 } 13648 next(xpp); 13649 parseElementClose(res); 13650 return res; 13651 } 13652 13653 protected boolean parseProvenanceContent(int eventType, XmlPullParser xpp, Provenance res) throws XmlPullParserException, IOException, FHIRFormatError { 13654 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 13655 res.getTarget().add(parseReference(xpp)); 13656 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 13657 res.setPeriod(parsePeriod(xpp)); 13658 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { 13659 res.setRecordedElement(parseInstant(xpp)); 13660 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("policy")) { 13661 res.getPolicy().add(parseUri(xpp)); 13662 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { 13663 res.setLocation(parseReference(xpp)); 13664 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 13665 res.getReason().add(parseCoding(xpp)); 13666 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("activity")) { 13667 res.setActivity(parseCoding(xpp)); 13668 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 13669 res.getAgent().add(parseProvenanceProvenanceAgentComponent(xpp, res)); 13670 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("entity")) { 13671 res.getEntity().add(parseProvenanceProvenanceEntityComponent(xpp, res)); 13672 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("signature")) { 13673 res.getSignature().add(parseSignature(xpp)); 13674 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13675 return false; 13676 return true; 13677 } 13678 13679 protected Provenance.ProvenanceAgentComponent parseProvenanceProvenanceAgentComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 13680 Provenance.ProvenanceAgentComponent res = new Provenance.ProvenanceAgentComponent(); 13681 parseBackboneAttributes(xpp, res); 13682 next(xpp); 13683 int eventType = nextNoWhitespace(xpp); 13684 while (eventType != XmlPullParser.END_TAG) { 13685 if (!parseProvenanceProvenanceAgentComponentContent(eventType, xpp, owner, res)) 13686 unknownContent(xpp); 13687 eventType = nextNoWhitespace(xpp); 13688 } 13689 next(xpp); 13690 parseElementClose(res); 13691 return res; 13692 } 13693 13694 protected boolean parseProvenanceProvenanceAgentComponentContent(int eventType, XmlPullParser xpp, Provenance owner, Provenance.ProvenanceAgentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13695 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 13696 res.getRole().add(parseCodeableConcept(xpp)); 13697 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "who")) { 13698 res.setWho(parseType("who", xpp)); 13699 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "onBehalfOf")) { 13700 res.setOnBehalfOf(parseType("onBehalfOf", xpp)); 13701 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAgentType")) { 13702 res.setRelatedAgentType(parseCodeableConcept(xpp)); 13703 } else if (!parseBackboneContent(eventType, xpp, res)) 13704 return false; 13705 return true; 13706 } 13707 13708 protected Provenance.ProvenanceEntityComponent parseProvenanceProvenanceEntityComponent(XmlPullParser xpp, Provenance owner) throws XmlPullParserException, IOException, FHIRFormatError { 13709 Provenance.ProvenanceEntityComponent res = new Provenance.ProvenanceEntityComponent(); 13710 parseBackboneAttributes(xpp, res); 13711 next(xpp); 13712 int eventType = nextNoWhitespace(xpp); 13713 while (eventType != XmlPullParser.END_TAG) { 13714 if (!parseProvenanceProvenanceEntityComponentContent(eventType, xpp, owner, res)) 13715 unknownContent(xpp); 13716 eventType = nextNoWhitespace(xpp); 13717 } 13718 next(xpp); 13719 parseElementClose(res); 13720 return res; 13721 } 13722 13723 protected boolean parseProvenanceProvenanceEntityComponentContent(int eventType, XmlPullParser xpp, Provenance owner, Provenance.ProvenanceEntityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13724 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { 13725 res.setRoleElement(parseEnumeration(xpp, Provenance.ProvenanceEntityRole.NULL, new Provenance.ProvenanceEntityRoleEnumFactory())); 13726 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "what")) { 13727 res.setWhat(parseType("what", xpp)); 13728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 13729 res.getAgent().add(parseProvenanceProvenanceAgentComponent(xpp, owner)); 13730 } else if (!parseBackboneContent(eventType, xpp, res)) 13731 return false; 13732 return true; 13733 } 13734 13735 protected Questionnaire parseQuestionnaire(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13736 Questionnaire res = new Questionnaire(); 13737 parseDomainResourceAttributes(xpp, res); 13738 next(xpp); 13739 int eventType = nextNoWhitespace(xpp); 13740 while (eventType != XmlPullParser.END_TAG) { 13741 if (!parseQuestionnaireContent(eventType, xpp, res)) 13742 unknownContent(xpp); 13743 eventType = nextNoWhitespace(xpp); 13744 } 13745 next(xpp); 13746 parseElementClose(res); 13747 return res; 13748 } 13749 13750 protected boolean parseQuestionnaireContent(int eventType, XmlPullParser xpp, Questionnaire res) throws XmlPullParserException, IOException, FHIRFormatError { 13751 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 13752 res.setUrlElement(parseUri(xpp)); 13753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13754 res.getIdentifier().add(parseIdentifier(xpp)); 13755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 13756 res.setVersionElement(parseString(xpp)); 13757 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 13758 res.setNameElement(parseString(xpp)); 13759 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 13760 res.setTitleElement(parseString(xpp)); 13761 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13762 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 13763 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 13764 res.setExperimentalElement(parseBoolean(xpp)); 13765 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 13766 res.setDateElement(parseDateTime(xpp)); 13767 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 13768 res.setPublisherElement(parseString(xpp)); 13769 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 13770 res.setDescriptionElement(parseMarkdown(xpp)); 13771 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 13772 res.setPurposeElement(parseMarkdown(xpp)); 13773 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 13774 res.setApprovalDateElement(parseDate(xpp)); 13775 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 13776 res.setLastReviewDateElement(parseDate(xpp)); 13777 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 13778 res.setEffectivePeriod(parsePeriod(xpp)); 13779 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 13780 res.getUseContext().add(parseUsageContext(xpp)); 13781 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 13782 res.getJurisdiction().add(parseCodeableConcept(xpp)); 13783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 13784 res.getContact().add(parseContactDetail(xpp)); 13785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 13786 res.setCopyrightElement(parseMarkdown(xpp)); 13787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13788 res.getCode().add(parseCoding(xpp)); 13789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subjectType")) { 13790 res.getSubjectType().add(parseCode(xpp)); 13791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13792 res.getItem().add(parseQuestionnaireQuestionnaireItemComponent(xpp, res)); 13793 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13794 return false; 13795 return true; 13796 } 13797 13798 protected Questionnaire.QuestionnaireItemComponent parseQuestionnaireQuestionnaireItemComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 13799 Questionnaire.QuestionnaireItemComponent res = new Questionnaire.QuestionnaireItemComponent(); 13800 parseBackboneAttributes(xpp, res); 13801 next(xpp); 13802 int eventType = nextNoWhitespace(xpp); 13803 while (eventType != XmlPullParser.END_TAG) { 13804 if (!parseQuestionnaireQuestionnaireItemComponentContent(eventType, xpp, owner, res)) 13805 unknownContent(xpp); 13806 eventType = nextNoWhitespace(xpp); 13807 } 13808 next(xpp); 13809 parseElementClose(res); 13810 return res; 13811 } 13812 13813 protected boolean parseQuestionnaireQuestionnaireItemComponentContent(int eventType, XmlPullParser xpp, Questionnaire owner, Questionnaire.QuestionnaireItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13814 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 13815 res.setLinkIdElement(parseString(xpp)); 13816 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 13817 res.setDefinitionElement(parseUri(xpp)); 13818 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 13819 res.getCode().add(parseCoding(xpp)); 13820 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prefix")) { 13821 res.setPrefixElement(parseString(xpp)); 13822 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 13823 res.setTextElement(parseString(xpp)); 13824 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 13825 res.setTypeElement(parseEnumeration(xpp, Questionnaire.QuestionnaireItemType.NULL, new Questionnaire.QuestionnaireItemTypeEnumFactory())); 13826 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enableWhen")) { 13827 res.getEnableWhen().add(parseQuestionnaireQuestionnaireItemEnableWhenComponent(xpp, owner)); 13828 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 13829 res.setRequiredElement(parseBoolean(xpp)); 13830 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeats")) { 13831 res.setRepeatsElement(parseBoolean(xpp)); 13832 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readOnly")) { 13833 res.setReadOnlyElement(parseBoolean(xpp)); 13834 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("maxLength")) { 13835 res.setMaxLengthElement(parseInteger(xpp)); 13836 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("options")) { 13837 res.setOptions(parseReference(xpp)); 13838 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("option")) { 13839 res.getOption().add(parseQuestionnaireQuestionnaireItemOptionComponent(xpp, owner)); 13840 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "initial")) { 13841 res.setInitial(parseType("initial", xpp)); 13842 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13843 res.getItem().add(parseQuestionnaireQuestionnaireItemComponent(xpp, owner)); 13844 } else if (!parseBackboneContent(eventType, xpp, res)) 13845 return false; 13846 return true; 13847 } 13848 13849 protected Questionnaire.QuestionnaireItemEnableWhenComponent parseQuestionnaireQuestionnaireItemEnableWhenComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 13850 Questionnaire.QuestionnaireItemEnableWhenComponent res = new Questionnaire.QuestionnaireItemEnableWhenComponent(); 13851 parseBackboneAttributes(xpp, res); 13852 next(xpp); 13853 int eventType = nextNoWhitespace(xpp); 13854 while (eventType != XmlPullParser.END_TAG) { 13855 if (!parseQuestionnaireQuestionnaireItemEnableWhenComponentContent(eventType, xpp, owner, res)) 13856 unknownContent(xpp); 13857 eventType = nextNoWhitespace(xpp); 13858 } 13859 next(xpp); 13860 parseElementClose(res); 13861 return res; 13862 } 13863 13864 protected boolean parseQuestionnaireQuestionnaireItemEnableWhenComponentContent(int eventType, XmlPullParser xpp, Questionnaire owner, Questionnaire.QuestionnaireItemEnableWhenComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13865 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("question")) { 13866 res.setQuestionElement(parseString(xpp)); 13867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hasAnswer")) { 13868 res.setHasAnswerElement(parseBoolean(xpp)); 13869 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "answer")) { 13870 res.setAnswer(parseType("answer", xpp)); 13871 } else if (!parseBackboneContent(eventType, xpp, res)) 13872 return false; 13873 return true; 13874 } 13875 13876 protected Questionnaire.QuestionnaireItemOptionComponent parseQuestionnaireQuestionnaireItemOptionComponent(XmlPullParser xpp, Questionnaire owner) throws XmlPullParserException, IOException, FHIRFormatError { 13877 Questionnaire.QuestionnaireItemOptionComponent res = new Questionnaire.QuestionnaireItemOptionComponent(); 13878 parseBackboneAttributes(xpp, res); 13879 next(xpp); 13880 int eventType = nextNoWhitespace(xpp); 13881 while (eventType != XmlPullParser.END_TAG) { 13882 if (!parseQuestionnaireQuestionnaireItemOptionComponentContent(eventType, xpp, owner, res)) 13883 unknownContent(xpp); 13884 eventType = nextNoWhitespace(xpp); 13885 } 13886 next(xpp); 13887 parseElementClose(res); 13888 return res; 13889 } 13890 13891 protected boolean parseQuestionnaireQuestionnaireItemOptionComponentContent(int eventType, XmlPullParser xpp, Questionnaire owner, Questionnaire.QuestionnaireItemOptionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13892 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 13893 res.setValue(parseType("value", xpp)); 13894 } else if (!parseBackboneContent(eventType, xpp, res)) 13895 return false; 13896 return true; 13897 } 13898 13899 protected QuestionnaireResponse parseQuestionnaireResponse(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 13900 QuestionnaireResponse res = new QuestionnaireResponse(); 13901 parseDomainResourceAttributes(xpp, res); 13902 next(xpp); 13903 int eventType = nextNoWhitespace(xpp); 13904 while (eventType != XmlPullParser.END_TAG) { 13905 if (!parseQuestionnaireResponseContent(eventType, xpp, res)) 13906 unknownContent(xpp); 13907 eventType = nextNoWhitespace(xpp); 13908 } 13909 next(xpp); 13910 parseElementClose(res); 13911 return res; 13912 } 13913 13914 protected boolean parseQuestionnaireResponseContent(int eventType, XmlPullParser xpp, QuestionnaireResponse res) throws XmlPullParserException, IOException, FHIRFormatError { 13915 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 13916 res.setIdentifier(parseIdentifier(xpp)); 13917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 13918 res.getBasedOn().add(parseReference(xpp)); 13919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 13920 res.getParent().add(parseReference(xpp)); 13921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("questionnaire")) { 13922 res.setQuestionnaire(parseReference(xpp)); 13923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 13924 res.setStatusElement(parseEnumeration(xpp, QuestionnaireResponse.QuestionnaireResponseStatus.NULL, new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory())); 13925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 13926 res.setSubject(parseReference(xpp)); 13927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 13928 res.setContext(parseReference(xpp)); 13929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authored")) { 13930 res.setAuthoredElement(parseDateTime(xpp)); 13931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 13932 res.setAuthor(parseReference(xpp)); 13933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 13934 res.setSource(parseReference(xpp)); 13935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13936 res.getItem().add(parseQuestionnaireResponseQuestionnaireResponseItemComponent(xpp, res)); 13937 } else if (!parseDomainResourceContent(eventType, xpp, res)) 13938 return false; 13939 return true; 13940 } 13941 13942 protected QuestionnaireResponse.QuestionnaireResponseItemComponent parseQuestionnaireResponseQuestionnaireResponseItemComponent(XmlPullParser xpp, QuestionnaireResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 13943 QuestionnaireResponse.QuestionnaireResponseItemComponent res = new QuestionnaireResponse.QuestionnaireResponseItemComponent(); 13944 parseBackboneAttributes(xpp, res); 13945 next(xpp); 13946 int eventType = nextNoWhitespace(xpp); 13947 while (eventType != XmlPullParser.END_TAG) { 13948 if (!parseQuestionnaireResponseQuestionnaireResponseItemComponentContent(eventType, xpp, owner, res)) 13949 unknownContent(xpp); 13950 eventType = nextNoWhitespace(xpp); 13951 } 13952 next(xpp); 13953 parseElementClose(res); 13954 return res; 13955 } 13956 13957 protected boolean parseQuestionnaireResponseQuestionnaireResponseItemComponentContent(int eventType, XmlPullParser xpp, QuestionnaireResponse owner, QuestionnaireResponse.QuestionnaireResponseItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13958 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("linkId")) { 13959 res.setLinkIdElement(parseString(xpp)); 13960 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 13961 res.setDefinitionElement(parseUri(xpp)); 13962 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("text")) { 13963 res.setTextElement(parseString(xpp)); 13964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 13965 res.setSubject(parseReference(xpp)); 13966 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("answer")) { 13967 res.getAnswer().add(parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(xpp, owner)); 13968 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13969 res.getItem().add(parseQuestionnaireResponseQuestionnaireResponseItemComponent(xpp, owner)); 13970 } else if (!parseBackboneContent(eventType, xpp, res)) 13971 return false; 13972 return true; 13973 } 13974 13975 protected QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(XmlPullParser xpp, QuestionnaireResponse owner) throws XmlPullParserException, IOException, FHIRFormatError { 13976 QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent res = new QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); 13977 parseBackboneAttributes(xpp, res); 13978 next(xpp); 13979 int eventType = nextNoWhitespace(xpp); 13980 while (eventType != XmlPullParser.END_TAG) { 13981 if (!parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponentContent(eventType, xpp, owner, res)) 13982 unknownContent(xpp); 13983 eventType = nextNoWhitespace(xpp); 13984 } 13985 next(xpp); 13986 parseElementClose(res); 13987 return res; 13988 } 13989 13990 protected boolean parseQuestionnaireResponseQuestionnaireResponseItemAnswerComponentContent(int eventType, XmlPullParser xpp, QuestionnaireResponse owner, QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 13991 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 13992 res.setValue(parseType("value", xpp)); 13993 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { 13994 res.getItem().add(parseQuestionnaireResponseQuestionnaireResponseItemComponent(xpp, owner)); 13995 } else if (!parseBackboneContent(eventType, xpp, res)) 13996 return false; 13997 return true; 13998 } 13999 14000 protected ReferralRequest parseReferralRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14001 ReferralRequest res = new ReferralRequest(); 14002 parseDomainResourceAttributes(xpp, res); 14003 next(xpp); 14004 int eventType = nextNoWhitespace(xpp); 14005 while (eventType != XmlPullParser.END_TAG) { 14006 if (!parseReferralRequestContent(eventType, xpp, res)) 14007 unknownContent(xpp); 14008 eventType = nextNoWhitespace(xpp); 14009 } 14010 next(xpp); 14011 parseElementClose(res); 14012 return res; 14013 } 14014 14015 protected boolean parseReferralRequestContent(int eventType, XmlPullParser xpp, ReferralRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 14016 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14017 res.getIdentifier().add(parseIdentifier(xpp)); 14018 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 14019 res.getDefinition().add(parseReference(xpp)); 14020 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 14021 res.getBasedOn().add(parseReference(xpp)); 14022 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 14023 res.getReplaces().add(parseReference(xpp)); 14024 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 14025 res.setGroupIdentifier(parseIdentifier(xpp)); 14026 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14027 res.setStatusElement(parseEnumeration(xpp, ReferralRequest.ReferralRequestStatus.NULL, new ReferralRequest.ReferralRequestStatusEnumFactory())); 14028 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 14029 res.setIntentElement(parseEnumeration(xpp, ReferralRequest.ReferralCategory.NULL, new ReferralRequest.ReferralCategoryEnumFactory())); 14030 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14031 res.setType(parseCodeableConcept(xpp)); 14032 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 14033 res.setPriorityElement(parseEnumeration(xpp, ReferralRequest.ReferralPriority.NULL, new ReferralRequest.ReferralPriorityEnumFactory())); 14034 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceRequested")) { 14035 res.getServiceRequested().add(parseCodeableConcept(xpp)); 14036 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14037 res.setSubject(parseReference(xpp)); 14038 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 14039 res.setContext(parseReference(xpp)); 14040 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 14041 res.setOccurrence(parseType("occurrence", xpp)); 14042 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 14043 res.setAuthoredOnElement(parseDateTime(xpp)); 14044 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 14045 res.setRequester(parseReferralRequestReferralRequestRequesterComponent(xpp, res)); 14046 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 14047 res.setSpecialty(parseCodeableConcept(xpp)); 14048 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 14049 res.getRecipient().add(parseReference(xpp)); 14050 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { 14051 res.getReasonCode().add(parseCodeableConcept(xpp)); 14052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonReference")) { 14053 res.getReasonReference().add(parseReference(xpp)); 14054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14055 res.setDescriptionElement(parseString(xpp)); 14056 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingInfo")) { 14057 res.getSupportingInfo().add(parseReference(xpp)); 14058 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14059 res.getNote().add(parseAnnotation(xpp)); 14060 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 14061 res.getRelevantHistory().add(parseReference(xpp)); 14062 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14063 return false; 14064 return true; 14065 } 14066 14067 protected ReferralRequest.ReferralRequestRequesterComponent parseReferralRequestReferralRequestRequesterComponent(XmlPullParser xpp, ReferralRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 14068 ReferralRequest.ReferralRequestRequesterComponent res = new ReferralRequest.ReferralRequestRequesterComponent(); 14069 parseBackboneAttributes(xpp, res); 14070 next(xpp); 14071 int eventType = nextNoWhitespace(xpp); 14072 while (eventType != XmlPullParser.END_TAG) { 14073 if (!parseReferralRequestReferralRequestRequesterComponentContent(eventType, xpp, owner, res)) 14074 unknownContent(xpp); 14075 eventType = nextNoWhitespace(xpp); 14076 } 14077 next(xpp); 14078 parseElementClose(res); 14079 return res; 14080 } 14081 14082 protected boolean parseReferralRequestReferralRequestRequesterComponentContent(int eventType, XmlPullParser xpp, ReferralRequest owner, ReferralRequest.ReferralRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14083 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 14084 res.setAgent(parseReference(xpp)); 14085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 14086 res.setOnBehalfOf(parseReference(xpp)); 14087 } else if (!parseBackboneContent(eventType, xpp, res)) 14088 return false; 14089 return true; 14090 } 14091 14092 protected RelatedPerson parseRelatedPerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14093 RelatedPerson res = new RelatedPerson(); 14094 parseDomainResourceAttributes(xpp, res); 14095 next(xpp); 14096 int eventType = nextNoWhitespace(xpp); 14097 while (eventType != XmlPullParser.END_TAG) { 14098 if (!parseRelatedPersonContent(eventType, xpp, res)) 14099 unknownContent(xpp); 14100 eventType = nextNoWhitespace(xpp); 14101 } 14102 next(xpp); 14103 parseElementClose(res); 14104 return res; 14105 } 14106 14107 protected boolean parseRelatedPersonContent(int eventType, XmlPullParser xpp, RelatedPerson res) throws XmlPullParserException, IOException, FHIRFormatError { 14108 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14109 res.getIdentifier().add(parseIdentifier(xpp)); 14110 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 14111 res.setActiveElement(parseBoolean(xpp)); 14112 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 14113 res.setPatient(parseReference(xpp)); 14114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 14115 res.setRelationship(parseCodeableConcept(xpp)); 14116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14117 res.getName().add(parseHumanName(xpp)); 14118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { 14119 res.getTelecom().add(parseContactPoint(xpp)); 14120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gender")) { 14121 res.setGenderElement(parseEnumeration(xpp, Enumerations.AdministrativeGender.NULL, new Enumerations.AdministrativeGenderEnumFactory())); 14122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("birthDate")) { 14123 res.setBirthDateElement(parseDate(xpp)); 14124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { 14125 res.getAddress().add(parseAddress(xpp)); 14126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("photo")) { 14127 res.getPhoto().add(parseAttachment(xpp)); 14128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 14129 res.setPeriod(parsePeriod(xpp)); 14130 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14131 return false; 14132 return true; 14133 } 14134 14135 protected RequestGroup parseRequestGroup(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14136 RequestGroup res = new RequestGroup(); 14137 parseDomainResourceAttributes(xpp, res); 14138 next(xpp); 14139 int eventType = nextNoWhitespace(xpp); 14140 while (eventType != XmlPullParser.END_TAG) { 14141 if (!parseRequestGroupContent(eventType, xpp, res)) 14142 unknownContent(xpp); 14143 eventType = nextNoWhitespace(xpp); 14144 } 14145 next(xpp); 14146 parseElementClose(res); 14147 return res; 14148 } 14149 14150 protected boolean parseRequestGroupContent(int eventType, XmlPullParser xpp, RequestGroup res) throws XmlPullParserException, IOException, FHIRFormatError { 14151 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14152 res.getIdentifier().add(parseIdentifier(xpp)); 14153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 14154 res.getDefinition().add(parseReference(xpp)); 14155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 14156 res.getBasedOn().add(parseReference(xpp)); 14157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("replaces")) { 14158 res.getReplaces().add(parseReference(xpp)); 14159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 14160 res.setGroupIdentifier(parseIdentifier(xpp)); 14161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14162 res.setStatusElement(parseEnumeration(xpp, RequestGroup.RequestStatus.NULL, new RequestGroup.RequestStatusEnumFactory())); 14163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 14164 res.setIntentElement(parseEnumeration(xpp, RequestGroup.RequestIntent.NULL, new RequestGroup.RequestIntentEnumFactory())); 14165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 14166 res.setPriorityElement(parseEnumeration(xpp, RequestGroup.RequestPriority.NULL, new RequestGroup.RequestPriorityEnumFactory())); 14167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14168 res.setSubject(parseReference(xpp)); 14169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 14170 res.setContext(parseReference(xpp)); 14171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 14172 res.setAuthoredOnElement(parseDateTime(xpp)); 14173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { 14174 res.setAuthor(parseReference(xpp)); 14175 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 14176 res.setReason(parseType("reason", xpp)); 14177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14178 res.getNote().add(parseAnnotation(xpp)); 14179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 14180 res.getAction().add(parseRequestGroupRequestGroupActionComponent(xpp, res)); 14181 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14182 return false; 14183 return true; 14184 } 14185 14186 protected RequestGroup.RequestGroupActionComponent parseRequestGroupRequestGroupActionComponent(XmlPullParser xpp, RequestGroup owner) throws XmlPullParserException, IOException, FHIRFormatError { 14187 RequestGroup.RequestGroupActionComponent res = new RequestGroup.RequestGroupActionComponent(); 14188 parseBackboneAttributes(xpp, res); 14189 next(xpp); 14190 int eventType = nextNoWhitespace(xpp); 14191 while (eventType != XmlPullParser.END_TAG) { 14192 if (!parseRequestGroupRequestGroupActionComponentContent(eventType, xpp, owner, res)) 14193 unknownContent(xpp); 14194 eventType = nextNoWhitespace(xpp); 14195 } 14196 next(xpp); 14197 parseElementClose(res); 14198 return res; 14199 } 14200 14201 protected boolean parseRequestGroupRequestGroupActionComponentContent(int eventType, XmlPullParser xpp, RequestGroup owner, RequestGroup.RequestGroupActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14202 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 14203 res.setLabelElement(parseString(xpp)); 14204 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 14205 res.setTitleElement(parseString(xpp)); 14206 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14207 res.setDescriptionElement(parseString(xpp)); 14208 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("textEquivalent")) { 14209 res.setTextEquivalentElement(parseString(xpp)); 14210 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14211 res.getCode().add(parseCodeableConcept(xpp)); 14212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 14213 res.getDocumentation().add(parseRelatedArtifact(xpp)); 14214 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 14215 res.getCondition().add(parseRequestGroupRequestGroupActionConditionComponent(xpp, owner)); 14216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedAction")) { 14217 res.getRelatedAction().add(parseRequestGroupRequestGroupActionRelatedActionComponent(xpp, owner)); 14218 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { 14219 res.setTiming(parseType("timing", xpp)); 14220 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 14221 res.getParticipant().add(parseReference(xpp)); 14222 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14223 res.setType(parseCoding(xpp)); 14224 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupingBehavior")) { 14225 res.setGroupingBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionGroupingBehavior.NULL, new RequestGroup.ActionGroupingBehaviorEnumFactory())); 14226 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("selectionBehavior")) { 14227 res.setSelectionBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionSelectionBehavior.NULL, new RequestGroup.ActionSelectionBehaviorEnumFactory())); 14228 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requiredBehavior")) { 14229 res.setRequiredBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionRequiredBehavior.NULL, new RequestGroup.ActionRequiredBehaviorEnumFactory())); 14230 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precheckBehavior")) { 14231 res.setPrecheckBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionPrecheckBehavior.NULL, new RequestGroup.ActionPrecheckBehaviorEnumFactory())); 14232 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cardinalityBehavior")) { 14233 res.setCardinalityBehaviorElement(parseEnumeration(xpp, RequestGroup.ActionCardinalityBehavior.NULL, new RequestGroup.ActionCardinalityBehaviorEnumFactory())); 14234 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 14235 res.setResource(parseReference(xpp)); 14236 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 14237 res.getAction().add(parseRequestGroupRequestGroupActionComponent(xpp, owner)); 14238 } else if (!parseBackboneContent(eventType, xpp, res)) 14239 return false; 14240 return true; 14241 } 14242 14243 protected RequestGroup.RequestGroupActionConditionComponent parseRequestGroupRequestGroupActionConditionComponent(XmlPullParser xpp, RequestGroup owner) throws XmlPullParserException, IOException, FHIRFormatError { 14244 RequestGroup.RequestGroupActionConditionComponent res = new RequestGroup.RequestGroupActionConditionComponent(); 14245 parseBackboneAttributes(xpp, res); 14246 next(xpp); 14247 int eventType = nextNoWhitespace(xpp); 14248 while (eventType != XmlPullParser.END_TAG) { 14249 if (!parseRequestGroupRequestGroupActionConditionComponentContent(eventType, xpp, owner, res)) 14250 unknownContent(xpp); 14251 eventType = nextNoWhitespace(xpp); 14252 } 14253 next(xpp); 14254 parseElementClose(res); 14255 return res; 14256 } 14257 14258 protected boolean parseRequestGroupRequestGroupActionConditionComponentContent(int eventType, XmlPullParser xpp, RequestGroup owner, RequestGroup.RequestGroupActionConditionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14259 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 14260 res.setKindElement(parseEnumeration(xpp, RequestGroup.ActionConditionKind.NULL, new RequestGroup.ActionConditionKindEnumFactory())); 14261 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14262 res.setDescriptionElement(parseString(xpp)); 14263 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 14264 res.setLanguageElement(parseString(xpp)); 14265 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 14266 res.setExpressionElement(parseString(xpp)); 14267 } else if (!parseBackboneContent(eventType, xpp, res)) 14268 return false; 14269 return true; 14270 } 14271 14272 protected RequestGroup.RequestGroupActionRelatedActionComponent parseRequestGroupRequestGroupActionRelatedActionComponent(XmlPullParser xpp, RequestGroup owner) throws XmlPullParserException, IOException, FHIRFormatError { 14273 RequestGroup.RequestGroupActionRelatedActionComponent res = new RequestGroup.RequestGroupActionRelatedActionComponent(); 14274 parseBackboneAttributes(xpp, res); 14275 next(xpp); 14276 int eventType = nextNoWhitespace(xpp); 14277 while (eventType != XmlPullParser.END_TAG) { 14278 if (!parseRequestGroupRequestGroupActionRelatedActionComponentContent(eventType, xpp, owner, res)) 14279 unknownContent(xpp); 14280 eventType = nextNoWhitespace(xpp); 14281 } 14282 next(xpp); 14283 parseElementClose(res); 14284 return res; 14285 } 14286 14287 protected boolean parseRequestGroupRequestGroupActionRelatedActionComponentContent(int eventType, XmlPullParser xpp, RequestGroup owner, RequestGroup.RequestGroupActionRelatedActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14288 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actionId")) { 14289 res.setActionIdElement(parseId(xpp)); 14290 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relationship")) { 14291 res.setRelationshipElement(parseEnumeration(xpp, RequestGroup.ActionRelationshipType.NULL, new RequestGroup.ActionRelationshipTypeEnumFactory())); 14292 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "offset")) { 14293 res.setOffset(parseType("offset", xpp)); 14294 } else if (!parseBackboneContent(eventType, xpp, res)) 14295 return false; 14296 return true; 14297 } 14298 14299 protected ResearchStudy parseResearchStudy(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14300 ResearchStudy res = new ResearchStudy(); 14301 parseDomainResourceAttributes(xpp, res); 14302 next(xpp); 14303 int eventType = nextNoWhitespace(xpp); 14304 while (eventType != XmlPullParser.END_TAG) { 14305 if (!parseResearchStudyContent(eventType, xpp, res)) 14306 unknownContent(xpp); 14307 eventType = nextNoWhitespace(xpp); 14308 } 14309 next(xpp); 14310 parseElementClose(res); 14311 return res; 14312 } 14313 14314 protected boolean parseResearchStudyContent(int eventType, XmlPullParser xpp, ResearchStudy res) throws XmlPullParserException, IOException, FHIRFormatError { 14315 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14316 res.getIdentifier().add(parseIdentifier(xpp)); 14317 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 14318 res.setTitleElement(parseString(xpp)); 14319 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("protocol")) { 14320 res.getProtocol().add(parseReference(xpp)); 14321 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 14322 res.getPartOf().add(parseReference(xpp)); 14323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14324 res.setStatusElement(parseEnumeration(xpp, ResearchStudy.ResearchStudyStatus.NULL, new ResearchStudy.ResearchStudyStatusEnumFactory())); 14325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 14326 res.getCategory().add(parseCodeableConcept(xpp)); 14327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 14328 res.getFocus().add(parseCodeableConcept(xpp)); 14329 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 14330 res.getContact().add(parseContactDetail(xpp)); 14331 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 14332 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 14333 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("keyword")) { 14334 res.getKeyword().add(parseCodeableConcept(xpp)); 14335 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 14336 res.getJurisdiction().add(parseCodeableConcept(xpp)); 14337 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14338 res.setDescriptionElement(parseMarkdown(xpp)); 14339 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("enrollment")) { 14340 res.getEnrollment().add(parseReference(xpp)); 14341 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 14342 res.setPeriod(parsePeriod(xpp)); 14343 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sponsor")) { 14344 res.setSponsor(parseReference(xpp)); 14345 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("principalInvestigator")) { 14346 res.setPrincipalInvestigator(parseReference(xpp)); 14347 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("site")) { 14348 res.getSite().add(parseReference(xpp)); 14349 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonStopped")) { 14350 res.setReasonStopped(parseCodeableConcept(xpp)); 14351 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14352 res.getNote().add(parseAnnotation(xpp)); 14353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("arm")) { 14354 res.getArm().add(parseResearchStudyResearchStudyArmComponent(xpp, res)); 14355 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14356 return false; 14357 return true; 14358 } 14359 14360 protected ResearchStudy.ResearchStudyArmComponent parseResearchStudyResearchStudyArmComponent(XmlPullParser xpp, ResearchStudy owner) throws XmlPullParserException, IOException, FHIRFormatError { 14361 ResearchStudy.ResearchStudyArmComponent res = new ResearchStudy.ResearchStudyArmComponent(); 14362 parseBackboneAttributes(xpp, res); 14363 next(xpp); 14364 int eventType = nextNoWhitespace(xpp); 14365 while (eventType != XmlPullParser.END_TAG) { 14366 if (!parseResearchStudyResearchStudyArmComponentContent(eventType, xpp, owner, res)) 14367 unknownContent(xpp); 14368 eventType = nextNoWhitespace(xpp); 14369 } 14370 next(xpp); 14371 parseElementClose(res); 14372 return res; 14373 } 14374 14375 protected boolean parseResearchStudyResearchStudyArmComponentContent(int eventType, XmlPullParser xpp, ResearchStudy owner, ResearchStudy.ResearchStudyArmComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14376 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14377 res.setNameElement(parseString(xpp)); 14378 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14379 res.setCode(parseCodeableConcept(xpp)); 14380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14381 res.setDescriptionElement(parseString(xpp)); 14382 } else if (!parseBackboneContent(eventType, xpp, res)) 14383 return false; 14384 return true; 14385 } 14386 14387 protected ResearchSubject parseResearchSubject(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14388 ResearchSubject res = new ResearchSubject(); 14389 parseDomainResourceAttributes(xpp, res); 14390 next(xpp); 14391 int eventType = nextNoWhitespace(xpp); 14392 while (eventType != XmlPullParser.END_TAG) { 14393 if (!parseResearchSubjectContent(eventType, xpp, res)) 14394 unknownContent(xpp); 14395 eventType = nextNoWhitespace(xpp); 14396 } 14397 next(xpp); 14398 parseElementClose(res); 14399 return res; 14400 } 14401 14402 protected boolean parseResearchSubjectContent(int eventType, XmlPullParser xpp, ResearchSubject res) throws XmlPullParserException, IOException, FHIRFormatError { 14403 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14404 res.setIdentifier(parseIdentifier(xpp)); 14405 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14406 res.setStatusElement(parseEnumeration(xpp, ResearchSubject.ResearchSubjectStatus.NULL, new ResearchSubject.ResearchSubjectStatusEnumFactory())); 14407 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 14408 res.setPeriod(parsePeriod(xpp)); 14409 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("study")) { 14410 res.setStudy(parseReference(xpp)); 14411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("individual")) { 14412 res.setIndividual(parseReference(xpp)); 14413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assignedArm")) { 14414 res.setAssignedArmElement(parseString(xpp)); 14415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actualArm")) { 14416 res.setActualArmElement(parseString(xpp)); 14417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("consent")) { 14418 res.setConsent(parseReference(xpp)); 14419 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14420 return false; 14421 return true; 14422 } 14423 14424 protected RiskAssessment parseRiskAssessment(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14425 RiskAssessment res = new RiskAssessment(); 14426 parseDomainResourceAttributes(xpp, res); 14427 next(xpp); 14428 int eventType = nextNoWhitespace(xpp); 14429 while (eventType != XmlPullParser.END_TAG) { 14430 if (!parseRiskAssessmentContent(eventType, xpp, res)) 14431 unknownContent(xpp); 14432 eventType = nextNoWhitespace(xpp); 14433 } 14434 next(xpp); 14435 parseElementClose(res); 14436 return res; 14437 } 14438 14439 protected boolean parseRiskAssessmentContent(int eventType, XmlPullParser xpp, RiskAssessment res) throws XmlPullParserException, IOException, FHIRFormatError { 14440 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14441 res.setIdentifier(parseIdentifier(xpp)); 14442 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 14443 res.setBasedOn(parseReference(xpp)); 14444 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 14445 res.setParent(parseReference(xpp)); 14446 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14447 res.setStatusElement(parseEnumeration(xpp, RiskAssessment.RiskAssessmentStatus.NULL, new RiskAssessment.RiskAssessmentStatusEnumFactory())); 14448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 14449 res.setMethod(parseCodeableConcept(xpp)); 14450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14451 res.setCode(parseCodeableConcept(xpp)); 14452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14453 res.setSubject(parseReference(xpp)); 14454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 14455 res.setContext(parseReference(xpp)); 14456 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 14457 res.setOccurrence(parseType("occurrence", xpp)); 14458 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 14459 res.setCondition(parseReference(xpp)); 14460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 14461 res.setPerformer(parseReference(xpp)); 14462 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 14463 res.setReason(parseType("reason", xpp)); 14464 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { 14465 res.getBasis().add(parseReference(xpp)); 14466 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prediction")) { 14467 res.getPrediction().add(parseRiskAssessmentRiskAssessmentPredictionComponent(xpp, res)); 14468 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mitigation")) { 14469 res.setMitigationElement(parseString(xpp)); 14470 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 14471 res.setCommentElement(parseString(xpp)); 14472 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14473 return false; 14474 return true; 14475 } 14476 14477 protected RiskAssessment.RiskAssessmentPredictionComponent parseRiskAssessmentRiskAssessmentPredictionComponent(XmlPullParser xpp, RiskAssessment owner) throws XmlPullParserException, IOException, FHIRFormatError { 14478 RiskAssessment.RiskAssessmentPredictionComponent res = new RiskAssessment.RiskAssessmentPredictionComponent(); 14479 parseBackboneAttributes(xpp, res); 14480 next(xpp); 14481 int eventType = nextNoWhitespace(xpp); 14482 while (eventType != XmlPullParser.END_TAG) { 14483 if (!parseRiskAssessmentRiskAssessmentPredictionComponentContent(eventType, xpp, owner, res)) 14484 unknownContent(xpp); 14485 eventType = nextNoWhitespace(xpp); 14486 } 14487 next(xpp); 14488 parseElementClose(res); 14489 return res; 14490 } 14491 14492 protected boolean parseRiskAssessmentRiskAssessmentPredictionComponentContent(int eventType, XmlPullParser xpp, RiskAssessment owner, RiskAssessment.RiskAssessmentPredictionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14493 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { 14494 res.setOutcome(parseCodeableConcept(xpp)); 14495 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "probability")) { 14496 res.setProbability(parseType("probability", xpp)); 14497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("qualitativeRisk")) { 14498 res.setQualitativeRisk(parseCodeableConcept(xpp)); 14499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relativeRisk")) { 14500 res.setRelativeRiskElement(parseDecimal(xpp)); 14501 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "when")) { 14502 res.setWhen(parseType("when", xpp)); 14503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rationale")) { 14504 res.setRationaleElement(parseString(xpp)); 14505 } else if (!parseBackboneContent(eventType, xpp, res)) 14506 return false; 14507 return true; 14508 } 14509 14510 protected Schedule parseSchedule(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14511 Schedule res = new Schedule(); 14512 parseDomainResourceAttributes(xpp, res); 14513 next(xpp); 14514 int eventType = nextNoWhitespace(xpp); 14515 while (eventType != XmlPullParser.END_TAG) { 14516 if (!parseScheduleContent(eventType, xpp, res)) 14517 unknownContent(xpp); 14518 eventType = nextNoWhitespace(xpp); 14519 } 14520 next(xpp); 14521 parseElementClose(res); 14522 return res; 14523 } 14524 14525 protected boolean parseScheduleContent(int eventType, XmlPullParser xpp, Schedule res) throws XmlPullParserException, IOException, FHIRFormatError { 14526 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14527 res.getIdentifier().add(parseIdentifier(xpp)); 14528 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("active")) { 14529 res.setActiveElement(parseBoolean(xpp)); 14530 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 14531 res.setServiceCategory(parseCodeableConcept(xpp)); 14532 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 14533 res.getServiceType().add(parseCodeableConcept(xpp)); 14534 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 14535 res.getSpecialty().add(parseCodeableConcept(xpp)); 14536 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { 14537 res.getActor().add(parseReference(xpp)); 14538 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("planningHorizon")) { 14539 res.setPlanningHorizon(parsePeriod(xpp)); 14540 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 14541 res.setCommentElement(parseString(xpp)); 14542 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14543 return false; 14544 return true; 14545 } 14546 14547 protected SearchParameter parseSearchParameter(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14548 SearchParameter res = new SearchParameter(); 14549 parseDomainResourceAttributes(xpp, res); 14550 next(xpp); 14551 int eventType = nextNoWhitespace(xpp); 14552 while (eventType != XmlPullParser.END_TAG) { 14553 if (!parseSearchParameterContent(eventType, xpp, res)) 14554 unknownContent(xpp); 14555 eventType = nextNoWhitespace(xpp); 14556 } 14557 next(xpp); 14558 parseElementClose(res); 14559 return res; 14560 } 14561 14562 protected boolean parseSearchParameterContent(int eventType, XmlPullParser xpp, SearchParameter res) throws XmlPullParserException, IOException, FHIRFormatError { 14563 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 14564 res.setUrlElement(parseUri(xpp)); 14565 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 14566 res.setVersionElement(parseString(xpp)); 14567 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14568 res.setNameElement(parseString(xpp)); 14569 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14570 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 14571 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 14572 res.setExperimentalElement(parseBoolean(xpp)); 14573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 14574 res.setDateElement(parseDateTime(xpp)); 14575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 14576 res.setPublisherElement(parseString(xpp)); 14577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 14578 res.getContact().add(parseContactDetail(xpp)); 14579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 14580 res.getUseContext().add(parseUsageContext(xpp)); 14581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 14582 res.getJurisdiction().add(parseCodeableConcept(xpp)); 14583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 14584 res.setPurposeElement(parseMarkdown(xpp)); 14585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 14586 res.setCodeElement(parseCode(xpp)); 14587 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 14588 res.getBase().add(parseCode(xpp)); 14589 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14590 res.setTypeElement(parseEnumeration(xpp, Enumerations.SearchParamType.NULL, new Enumerations.SearchParamTypeEnumFactory())); 14591 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { 14592 res.setDerivedFromElement(parseUri(xpp)); 14593 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14594 res.setDescriptionElement(parseMarkdown(xpp)); 14595 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 14596 res.setExpressionElement(parseString(xpp)); 14597 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpath")) { 14598 res.setXpathElement(parseString(xpp)); 14599 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("xpathUsage")) { 14600 res.setXpathUsageElement(parseEnumeration(xpp, SearchParameter.XPathUsageType.NULL, new SearchParameter.XPathUsageTypeEnumFactory())); 14601 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 14602 res.getTarget().add(parseCode(xpp)); 14603 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comparator")) { 14604 res.getComparator().add(parseEnumeration(xpp, SearchParameter.SearchComparator.NULL, new SearchParameter.SearchComparatorEnumFactory())); 14605 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modifier")) { 14606 res.getModifier().add(parseEnumeration(xpp, SearchParameter.SearchModifierCode.NULL, new SearchParameter.SearchModifierCodeEnumFactory())); 14607 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chain")) { 14608 res.getChain().add(parseString(xpp)); 14609 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("component")) { 14610 res.getComponent().add(parseSearchParameterSearchParameterComponentComponent(xpp, res)); 14611 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14612 return false; 14613 return true; 14614 } 14615 14616 protected SearchParameter.SearchParameterComponentComponent parseSearchParameterSearchParameterComponentComponent(XmlPullParser xpp, SearchParameter owner) throws XmlPullParserException, IOException, FHIRFormatError { 14617 SearchParameter.SearchParameterComponentComponent res = new SearchParameter.SearchParameterComponentComponent(); 14618 parseBackboneAttributes(xpp, res); 14619 next(xpp); 14620 int eventType = nextNoWhitespace(xpp); 14621 while (eventType != XmlPullParser.END_TAG) { 14622 if (!parseSearchParameterSearchParameterComponentComponentContent(eventType, xpp, owner, res)) 14623 unknownContent(xpp); 14624 eventType = nextNoWhitespace(xpp); 14625 } 14626 next(xpp); 14627 parseElementClose(res); 14628 return res; 14629 } 14630 14631 protected boolean parseSearchParameterSearchParameterComponentComponentContent(int eventType, XmlPullParser xpp, SearchParameter owner, SearchParameter.SearchParameterComponentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14632 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { 14633 res.setDefinition(parseReference(xpp)); 14634 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 14635 res.setExpressionElement(parseString(xpp)); 14636 } else if (!parseBackboneContent(eventType, xpp, res)) 14637 return false; 14638 return true; 14639 } 14640 14641 protected Sequence parseSequence(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14642 Sequence res = new Sequence(); 14643 parseDomainResourceAttributes(xpp, res); 14644 next(xpp); 14645 int eventType = nextNoWhitespace(xpp); 14646 while (eventType != XmlPullParser.END_TAG) { 14647 if (!parseSequenceContent(eventType, xpp, res)) 14648 unknownContent(xpp); 14649 eventType = nextNoWhitespace(xpp); 14650 } 14651 next(xpp); 14652 parseElementClose(res); 14653 return res; 14654 } 14655 14656 protected boolean parseSequenceContent(int eventType, XmlPullParser xpp, Sequence res) throws XmlPullParserException, IOException, FHIRFormatError { 14657 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14658 res.getIdentifier().add(parseIdentifier(xpp)); 14659 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14660 res.setTypeElement(parseEnumeration(xpp, Sequence.SequenceType.NULL, new Sequence.SequenceTypeEnumFactory())); 14661 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("coordinateSystem")) { 14662 res.setCoordinateSystemElement(parseInteger(xpp)); 14663 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 14664 res.setPatient(parseReference(xpp)); 14665 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimen")) { 14666 res.setSpecimen(parseReference(xpp)); 14667 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { 14668 res.setDevice(parseReference(xpp)); 14669 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { 14670 res.setPerformer(parseReference(xpp)); 14671 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 14672 res.setQuantity(parseQuantity(xpp)); 14673 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeq")) { 14674 res.setReferenceSeq(parseSequenceSequenceReferenceSeqComponent(xpp, res)); 14675 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variant")) { 14676 res.getVariant().add(parseSequenceSequenceVariantComponent(xpp, res)); 14677 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observedSeq")) { 14678 res.setObservedSeqElement(parseString(xpp)); 14679 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quality")) { 14680 res.getQuality().add(parseSequenceSequenceQualityComponent(xpp, res)); 14681 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readCoverage")) { 14682 res.setReadCoverageElement(parseInteger(xpp)); 14683 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repository")) { 14684 res.getRepository().add(parseSequenceSequenceRepositoryComponent(xpp, res)); 14685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pointer")) { 14686 res.getPointer().add(parseReference(xpp)); 14687 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14688 return false; 14689 return true; 14690 } 14691 14692 protected Sequence.SequenceReferenceSeqComponent parseSequenceSequenceReferenceSeqComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 14693 Sequence.SequenceReferenceSeqComponent res = new Sequence.SequenceReferenceSeqComponent(); 14694 parseBackboneAttributes(xpp, res); 14695 next(xpp); 14696 int eventType = nextNoWhitespace(xpp); 14697 while (eventType != XmlPullParser.END_TAG) { 14698 if (!parseSequenceSequenceReferenceSeqComponentContent(eventType, xpp, owner, res)) 14699 unknownContent(xpp); 14700 eventType = nextNoWhitespace(xpp); 14701 } 14702 next(xpp); 14703 parseElementClose(res); 14704 return res; 14705 } 14706 14707 protected boolean parseSequenceSequenceReferenceSeqComponentContent(int eventType, XmlPullParser xpp, Sequence owner, Sequence.SequenceReferenceSeqComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14708 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("chromosome")) { 14709 res.setChromosome(parseCodeableConcept(xpp)); 14710 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("genomeBuild")) { 14711 res.setGenomeBuildElement(parseString(xpp)); 14712 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeqId")) { 14713 res.setReferenceSeqId(parseCodeableConcept(xpp)); 14714 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeqPointer")) { 14715 res.setReferenceSeqPointer(parseReference(xpp)); 14716 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceSeqString")) { 14717 res.setReferenceSeqStringElement(parseString(xpp)); 14718 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("strand")) { 14719 res.setStrandElement(parseInteger(xpp)); 14720 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("windowStart")) { 14721 res.setWindowStartElement(parseInteger(xpp)); 14722 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("windowEnd")) { 14723 res.setWindowEndElement(parseInteger(xpp)); 14724 } else if (!parseBackboneContent(eventType, xpp, res)) 14725 return false; 14726 return true; 14727 } 14728 14729 protected Sequence.SequenceVariantComponent parseSequenceSequenceVariantComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 14730 Sequence.SequenceVariantComponent res = new Sequence.SequenceVariantComponent(); 14731 parseBackboneAttributes(xpp, res); 14732 next(xpp); 14733 int eventType = nextNoWhitespace(xpp); 14734 while (eventType != XmlPullParser.END_TAG) { 14735 if (!parseSequenceSequenceVariantComponentContent(eventType, xpp, owner, res)) 14736 unknownContent(xpp); 14737 eventType = nextNoWhitespace(xpp); 14738 } 14739 next(xpp); 14740 parseElementClose(res); 14741 return res; 14742 } 14743 14744 protected boolean parseSequenceSequenceVariantComponentContent(int eventType, XmlPullParser xpp, Sequence owner, Sequence.SequenceVariantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14745 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 14746 res.setStartElement(parseInteger(xpp)); 14747 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 14748 res.setEndElement(parseInteger(xpp)); 14749 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observedAllele")) { 14750 res.setObservedAlleleElement(parseString(xpp)); 14751 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referenceAllele")) { 14752 res.setReferenceAlleleElement(parseString(xpp)); 14753 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cigar")) { 14754 res.setCigarElement(parseString(xpp)); 14755 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variantPointer")) { 14756 res.setVariantPointer(parseReference(xpp)); 14757 } else if (!parseBackboneContent(eventType, xpp, res)) 14758 return false; 14759 return true; 14760 } 14761 14762 protected Sequence.SequenceQualityComponent parseSequenceSequenceQualityComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 14763 Sequence.SequenceQualityComponent res = new Sequence.SequenceQualityComponent(); 14764 parseBackboneAttributes(xpp, res); 14765 next(xpp); 14766 int eventType = nextNoWhitespace(xpp); 14767 while (eventType != XmlPullParser.END_TAG) { 14768 if (!parseSequenceSequenceQualityComponentContent(eventType, xpp, owner, res)) 14769 unknownContent(xpp); 14770 eventType = nextNoWhitespace(xpp); 14771 } 14772 next(xpp); 14773 parseElementClose(res); 14774 return res; 14775 } 14776 14777 protected boolean parseSequenceSequenceQualityComponentContent(int eventType, XmlPullParser xpp, Sequence owner, Sequence.SequenceQualityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14778 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14779 res.setTypeElement(parseEnumeration(xpp, Sequence.QualityType.NULL, new Sequence.QualityTypeEnumFactory())); 14780 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("standardSequence")) { 14781 res.setStandardSequence(parseCodeableConcept(xpp)); 14782 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 14783 res.setStartElement(parseInteger(xpp)); 14784 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 14785 res.setEndElement(parseInteger(xpp)); 14786 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 14787 res.setScore(parseQuantity(xpp)); 14788 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 14789 res.setMethod(parseCodeableConcept(xpp)); 14790 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("truthTP")) { 14791 res.setTruthTPElement(parseDecimal(xpp)); 14792 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("queryTP")) { 14793 res.setQueryTPElement(parseDecimal(xpp)); 14794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("truthFN")) { 14795 res.setTruthFNElement(parseDecimal(xpp)); 14796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("queryFP")) { 14797 res.setQueryFPElement(parseDecimal(xpp)); 14798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("gtFP")) { 14799 res.setGtFPElement(parseDecimal(xpp)); 14800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("precision")) { 14801 res.setPrecisionElement(parseDecimal(xpp)); 14802 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recall")) { 14803 res.setRecallElement(parseDecimal(xpp)); 14804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fScore")) { 14805 res.setFScoreElement(parseDecimal(xpp)); 14806 } else if (!parseBackboneContent(eventType, xpp, res)) 14807 return false; 14808 return true; 14809 } 14810 14811 protected Sequence.SequenceRepositoryComponent parseSequenceSequenceRepositoryComponent(XmlPullParser xpp, Sequence owner) throws XmlPullParserException, IOException, FHIRFormatError { 14812 Sequence.SequenceRepositoryComponent res = new Sequence.SequenceRepositoryComponent(); 14813 parseBackboneAttributes(xpp, res); 14814 next(xpp); 14815 int eventType = nextNoWhitespace(xpp); 14816 while (eventType != XmlPullParser.END_TAG) { 14817 if (!parseSequenceSequenceRepositoryComponentContent(eventType, xpp, owner, res)) 14818 unknownContent(xpp); 14819 eventType = nextNoWhitespace(xpp); 14820 } 14821 next(xpp); 14822 parseElementClose(res); 14823 return res; 14824 } 14825 14826 protected boolean parseSequenceSequenceRepositoryComponentContent(int eventType, XmlPullParser xpp, Sequence owner, Sequence.SequenceRepositoryComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 14827 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14828 res.setTypeElement(parseEnumeration(xpp, Sequence.RepositoryType.NULL, new Sequence.RepositoryTypeEnumFactory())); 14829 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 14830 res.setUrlElement(parseUri(xpp)); 14831 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14832 res.setNameElement(parseString(xpp)); 14833 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("datasetId")) { 14834 res.setDatasetIdElement(parseString(xpp)); 14835 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variantsetId")) { 14836 res.setVariantsetIdElement(parseString(xpp)); 14837 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("readsetId")) { 14838 res.setReadsetIdElement(parseString(xpp)); 14839 } else if (!parseBackboneContent(eventType, xpp, res)) 14840 return false; 14841 return true; 14842 } 14843 14844 protected ServiceDefinition parseServiceDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14845 ServiceDefinition res = new ServiceDefinition(); 14846 parseDomainResourceAttributes(xpp, res); 14847 next(xpp); 14848 int eventType = nextNoWhitespace(xpp); 14849 while (eventType != XmlPullParser.END_TAG) { 14850 if (!parseServiceDefinitionContent(eventType, xpp, res)) 14851 unknownContent(xpp); 14852 eventType = nextNoWhitespace(xpp); 14853 } 14854 next(xpp); 14855 parseElementClose(res); 14856 return res; 14857 } 14858 14859 protected boolean parseServiceDefinitionContent(int eventType, XmlPullParser xpp, ServiceDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 14860 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 14861 res.setUrlElement(parseUri(xpp)); 14862 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14863 res.getIdentifier().add(parseIdentifier(xpp)); 14864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 14865 res.setVersionElement(parseString(xpp)); 14866 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 14867 res.setNameElement(parseString(xpp)); 14868 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 14869 res.setTitleElement(parseString(xpp)); 14870 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14871 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 14872 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 14873 res.setExperimentalElement(parseBoolean(xpp)); 14874 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 14875 res.setDateElement(parseDateTime(xpp)); 14876 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 14877 res.setPublisherElement(parseString(xpp)); 14878 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 14879 res.setDescriptionElement(parseMarkdown(xpp)); 14880 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 14881 res.setPurposeElement(parseMarkdown(xpp)); 14882 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usage")) { 14883 res.setUsageElement(parseString(xpp)); 14884 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { 14885 res.setApprovalDateElement(parseDate(xpp)); 14886 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { 14887 res.setLastReviewDateElement(parseDate(xpp)); 14888 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { 14889 res.setEffectivePeriod(parsePeriod(xpp)); 14890 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 14891 res.getUseContext().add(parseUsageContext(xpp)); 14892 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 14893 res.getJurisdiction().add(parseCodeableConcept(xpp)); 14894 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { 14895 res.getTopic().add(parseCodeableConcept(xpp)); 14896 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { 14897 res.getContributor().add(parseContributor(xpp)); 14898 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 14899 res.getContact().add(parseContactDetail(xpp)); 14900 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 14901 res.setCopyrightElement(parseMarkdown(xpp)); 14902 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { 14903 res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); 14904 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("trigger")) { 14905 res.getTrigger().add(parseTriggerDefinition(xpp)); 14906 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataRequirement")) { 14907 res.getDataRequirement().add(parseDataRequirement(xpp)); 14908 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationDefinition")) { 14909 res.setOperationDefinition(parseReference(xpp)); 14910 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14911 return false; 14912 return true; 14913 } 14914 14915 protected Slot parseSlot(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14916 Slot res = new Slot(); 14917 parseDomainResourceAttributes(xpp, res); 14918 next(xpp); 14919 int eventType = nextNoWhitespace(xpp); 14920 while (eventType != XmlPullParser.END_TAG) { 14921 if (!parseSlotContent(eventType, xpp, res)) 14922 unknownContent(xpp); 14923 eventType = nextNoWhitespace(xpp); 14924 } 14925 next(xpp); 14926 parseElementClose(res); 14927 return res; 14928 } 14929 14930 protected boolean parseSlotContent(int eventType, XmlPullParser xpp, Slot res) throws XmlPullParserException, IOException, FHIRFormatError { 14931 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14932 res.getIdentifier().add(parseIdentifier(xpp)); 14933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceCategory")) { 14934 res.setServiceCategory(parseCodeableConcept(xpp)); 14935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("serviceType")) { 14936 res.getServiceType().add(parseCodeableConcept(xpp)); 14937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialty")) { 14938 res.getSpecialty().add(parseCodeableConcept(xpp)); 14939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("appointmentType")) { 14940 res.setAppointmentType(parseCodeableConcept(xpp)); 14941 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { 14942 res.setSchedule(parseReference(xpp)); 14943 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14944 res.setStatusElement(parseEnumeration(xpp, Slot.SlotStatus.NULL, new Slot.SlotStatusEnumFactory())); 14945 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("start")) { 14946 res.setStartElement(parseInstant(xpp)); 14947 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 14948 res.setEndElement(parseInstant(xpp)); 14949 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("overbooked")) { 14950 res.setOverbookedElement(parseBoolean(xpp)); 14951 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 14952 res.setCommentElement(parseString(xpp)); 14953 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14954 return false; 14955 return true; 14956 } 14957 14958 protected Specimen parseSpecimen(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 14959 Specimen res = new Specimen(); 14960 parseDomainResourceAttributes(xpp, res); 14961 next(xpp); 14962 int eventType = nextNoWhitespace(xpp); 14963 while (eventType != XmlPullParser.END_TAG) { 14964 if (!parseSpecimenContent(eventType, xpp, res)) 14965 unknownContent(xpp); 14966 eventType = nextNoWhitespace(xpp); 14967 } 14968 next(xpp); 14969 parseElementClose(res); 14970 return res; 14971 } 14972 14973 protected boolean parseSpecimenContent(int eventType, XmlPullParser xpp, Specimen res) throws XmlPullParserException, IOException, FHIRFormatError { 14974 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 14975 res.getIdentifier().add(parseIdentifier(xpp)); 14976 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accessionIdentifier")) { 14977 res.setAccessionIdentifier(parseIdentifier(xpp)); 14978 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 14979 res.setStatusElement(parseEnumeration(xpp, Specimen.SpecimenStatus.NULL, new Specimen.SpecimenStatusEnumFactory())); 14980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 14981 res.setType(parseCodeableConcept(xpp)); 14982 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { 14983 res.setSubject(parseReference(xpp)); 14984 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receivedTime")) { 14985 res.setReceivedTimeElement(parseDateTime(xpp)); 14986 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parent")) { 14987 res.getParent().add(parseReference(xpp)); 14988 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("request")) { 14989 res.getRequest().add(parseReference(xpp)); 14990 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collection")) { 14991 res.setCollection(parseSpecimenSpecimenCollectionComponent(xpp, res)); 14992 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processing")) { 14993 res.getProcessing().add(parseSpecimenSpecimenProcessingComponent(xpp, res)); 14994 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("container")) { 14995 res.getContainer().add(parseSpecimenSpecimenContainerComponent(xpp, res)); 14996 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 14997 res.getNote().add(parseAnnotation(xpp)); 14998 } else if (!parseDomainResourceContent(eventType, xpp, res)) 14999 return false; 15000 return true; 15001 } 15002 15003 protected Specimen.SpecimenCollectionComponent parseSpecimenSpecimenCollectionComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 15004 Specimen.SpecimenCollectionComponent res = new Specimen.SpecimenCollectionComponent(); 15005 parseBackboneAttributes(xpp, res); 15006 next(xpp); 15007 int eventType = nextNoWhitespace(xpp); 15008 while (eventType != XmlPullParser.END_TAG) { 15009 if (!parseSpecimenSpecimenCollectionComponentContent(eventType, xpp, owner, res)) 15010 unknownContent(xpp); 15011 eventType = nextNoWhitespace(xpp); 15012 } 15013 next(xpp); 15014 parseElementClose(res); 15015 return res; 15016 } 15017 15018 protected boolean parseSpecimenSpecimenCollectionComponentContent(int eventType, XmlPullParser xpp, Specimen owner, Specimen.SpecimenCollectionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15019 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collector")) { 15020 res.setCollector(parseReference(xpp)); 15021 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "collected")) { 15022 res.setCollected(parseType("collected", xpp)); 15023 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15024 res.setQuantity(parseSimpleQuantity(xpp)); 15025 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("method")) { 15026 res.setMethod(parseCodeableConcept(xpp)); 15027 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { 15028 res.setBodySite(parseCodeableConcept(xpp)); 15029 } else if (!parseBackboneContent(eventType, xpp, res)) 15030 return false; 15031 return true; 15032 } 15033 15034 protected Specimen.SpecimenProcessingComponent parseSpecimenSpecimenProcessingComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 15035 Specimen.SpecimenProcessingComponent res = new Specimen.SpecimenProcessingComponent(); 15036 parseBackboneAttributes(xpp, res); 15037 next(xpp); 15038 int eventType = nextNoWhitespace(xpp); 15039 while (eventType != XmlPullParser.END_TAG) { 15040 if (!parseSpecimenSpecimenProcessingComponentContent(eventType, xpp, owner, res)) 15041 unknownContent(xpp); 15042 eventType = nextNoWhitespace(xpp); 15043 } 15044 next(xpp); 15045 parseElementClose(res); 15046 return res; 15047 } 15048 15049 protected boolean parseSpecimenSpecimenProcessingComponentContent(int eventType, XmlPullParser xpp, Specimen owner, Specimen.SpecimenProcessingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15050 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15051 res.setDescriptionElement(parseString(xpp)); 15052 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("procedure")) { 15053 res.setProcedure(parseCodeableConcept(xpp)); 15054 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("additive")) { 15055 res.getAdditive().add(parseReference(xpp)); 15056 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "time")) { 15057 res.setTime(parseType("time", xpp)); 15058 } else if (!parseBackboneContent(eventType, xpp, res)) 15059 return false; 15060 return true; 15061 } 15062 15063 protected Specimen.SpecimenContainerComponent parseSpecimenSpecimenContainerComponent(XmlPullParser xpp, Specimen owner) throws XmlPullParserException, IOException, FHIRFormatError { 15064 Specimen.SpecimenContainerComponent res = new Specimen.SpecimenContainerComponent(); 15065 parseBackboneAttributes(xpp, res); 15066 next(xpp); 15067 int eventType = nextNoWhitespace(xpp); 15068 while (eventType != XmlPullParser.END_TAG) { 15069 if (!parseSpecimenSpecimenContainerComponentContent(eventType, xpp, owner, res)) 15070 unknownContent(xpp); 15071 eventType = nextNoWhitespace(xpp); 15072 } 15073 next(xpp); 15074 parseElementClose(res); 15075 return res; 15076 } 15077 15078 protected boolean parseSpecimenSpecimenContainerComponentContent(int eventType, XmlPullParser xpp, Specimen owner, Specimen.SpecimenContainerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15079 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15080 res.getIdentifier().add(parseIdentifier(xpp)); 15081 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15082 res.setDescriptionElement(parseString(xpp)); 15083 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15084 res.setType(parseCodeableConcept(xpp)); 15085 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capacity")) { 15086 res.setCapacity(parseSimpleQuantity(xpp)); 15087 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specimenQuantity")) { 15088 res.setSpecimenQuantity(parseSimpleQuantity(xpp)); 15089 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "additive")) { 15090 res.setAdditive(parseType("additive", xpp)); 15091 } else if (!parseBackboneContent(eventType, xpp, res)) 15092 return false; 15093 return true; 15094 } 15095 15096 protected StructureDefinition parseStructureDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15097 StructureDefinition res = new StructureDefinition(); 15098 parseDomainResourceAttributes(xpp, res); 15099 next(xpp); 15100 int eventType = nextNoWhitespace(xpp); 15101 while (eventType != XmlPullParser.END_TAG) { 15102 if (!parseStructureDefinitionContent(eventType, xpp, res)) 15103 unknownContent(xpp); 15104 eventType = nextNoWhitespace(xpp); 15105 } 15106 next(xpp); 15107 parseElementClose(res); 15108 return res; 15109 } 15110 15111 protected boolean parseStructureDefinitionContent(int eventType, XmlPullParser xpp, StructureDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { 15112 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 15113 res.setUrlElement(parseUri(xpp)); 15114 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15115 res.getIdentifier().add(parseIdentifier(xpp)); 15116 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 15117 res.setVersionElement(parseString(xpp)); 15118 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15119 res.setNameElement(parseString(xpp)); 15120 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 15121 res.setTitleElement(parseString(xpp)); 15122 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15123 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 15124 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 15125 res.setExperimentalElement(parseBoolean(xpp)); 15126 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 15127 res.setDateElement(parseDateTime(xpp)); 15128 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 15129 res.setPublisherElement(parseString(xpp)); 15130 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 15131 res.getContact().add(parseContactDetail(xpp)); 15132 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15133 res.setDescriptionElement(parseMarkdown(xpp)); 15134 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 15135 res.getUseContext().add(parseUsageContext(xpp)); 15136 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 15137 res.getJurisdiction().add(parseCodeableConcept(xpp)); 15138 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 15139 res.setPurposeElement(parseMarkdown(xpp)); 15140 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 15141 res.setCopyrightElement(parseMarkdown(xpp)); 15142 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("keyword")) { 15143 res.getKeyword().add(parseCoding(xpp)); 15144 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirVersion")) { 15145 res.setFhirVersionElement(parseId(xpp)); 15146 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mapping")) { 15147 res.getMapping().add(parseStructureDefinitionStructureDefinitionMappingComponent(xpp, res)); 15148 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("kind")) { 15149 res.setKindElement(parseEnumeration(xpp, StructureDefinition.StructureDefinitionKind.NULL, new StructureDefinition.StructureDefinitionKindEnumFactory())); 15150 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 15151 res.setAbstractElement(parseBoolean(xpp)); 15152 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextType")) { 15153 res.setContextTypeElement(parseEnumeration(xpp, StructureDefinition.ExtensionContext.NULL, new StructureDefinition.ExtensionContextEnumFactory())); 15154 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 15155 res.getContext().add(parseString(xpp)); 15156 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextInvariant")) { 15157 res.getContextInvariant().add(parseString(xpp)); 15158 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15159 res.setTypeElement(parseCode(xpp)); 15160 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseDefinition")) { 15161 res.setBaseDefinitionElement(parseUri(xpp)); 15162 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivation")) { 15163 res.setDerivationElement(parseEnumeration(xpp, StructureDefinition.TypeDerivationRule.NULL, new StructureDefinition.TypeDerivationRuleEnumFactory())); 15164 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("snapshot")) { 15165 res.setSnapshot(parseStructureDefinitionStructureDefinitionSnapshotComponent(xpp, res)); 15166 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("differential")) { 15167 res.setDifferential(parseStructureDefinitionStructureDefinitionDifferentialComponent(xpp, res)); 15168 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15169 return false; 15170 return true; 15171 } 15172 15173 protected StructureDefinition.StructureDefinitionMappingComponent parseStructureDefinitionStructureDefinitionMappingComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 15174 StructureDefinition.StructureDefinitionMappingComponent res = new StructureDefinition.StructureDefinitionMappingComponent(); 15175 parseBackboneAttributes(xpp, res); 15176 next(xpp); 15177 int eventType = nextNoWhitespace(xpp); 15178 while (eventType != XmlPullParser.END_TAG) { 15179 if (!parseStructureDefinitionStructureDefinitionMappingComponentContent(eventType, xpp, owner, res)) 15180 unknownContent(xpp); 15181 eventType = nextNoWhitespace(xpp); 15182 } 15183 next(xpp); 15184 parseElementClose(res); 15185 return res; 15186 } 15187 15188 protected boolean parseStructureDefinitionStructureDefinitionMappingComponentContent(int eventType, XmlPullParser xpp, StructureDefinition owner, StructureDefinition.StructureDefinitionMappingComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15189 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identity")) { 15190 res.setIdentityElement(parseId(xpp)); 15191 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 15192 res.setUriElement(parseUri(xpp)); 15193 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15194 res.setNameElement(parseString(xpp)); 15195 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("comment")) { 15196 res.setCommentElement(parseString(xpp)); 15197 } else if (!parseBackboneContent(eventType, xpp, res)) 15198 return false; 15199 return true; 15200 } 15201 15202 protected StructureDefinition.StructureDefinitionSnapshotComponent parseStructureDefinitionStructureDefinitionSnapshotComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 15203 StructureDefinition.StructureDefinitionSnapshotComponent res = new StructureDefinition.StructureDefinitionSnapshotComponent(); 15204 parseBackboneAttributes(xpp, res); 15205 next(xpp); 15206 int eventType = nextNoWhitespace(xpp); 15207 while (eventType != XmlPullParser.END_TAG) { 15208 if (!parseStructureDefinitionStructureDefinitionSnapshotComponentContent(eventType, xpp, owner, res)) 15209 unknownContent(xpp); 15210 eventType = nextNoWhitespace(xpp); 15211 } 15212 next(xpp); 15213 parseElementClose(res); 15214 return res; 15215 } 15216 15217 protected boolean parseStructureDefinitionStructureDefinitionSnapshotComponentContent(int eventType, XmlPullParser xpp, StructureDefinition owner, StructureDefinition.StructureDefinitionSnapshotComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15218 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 15219 res.getElement().add(parseElementDefinition(xpp)); 15220 } else if (!parseBackboneContent(eventType, xpp, res)) 15221 return false; 15222 return true; 15223 } 15224 15225 protected StructureDefinition.StructureDefinitionDifferentialComponent parseStructureDefinitionStructureDefinitionDifferentialComponent(XmlPullParser xpp, StructureDefinition owner) throws XmlPullParserException, IOException, FHIRFormatError { 15226 StructureDefinition.StructureDefinitionDifferentialComponent res = new StructureDefinition.StructureDefinitionDifferentialComponent(); 15227 parseBackboneAttributes(xpp, res); 15228 next(xpp); 15229 int eventType = nextNoWhitespace(xpp); 15230 while (eventType != XmlPullParser.END_TAG) { 15231 if (!parseStructureDefinitionStructureDefinitionDifferentialComponentContent(eventType, xpp, owner, res)) 15232 unknownContent(xpp); 15233 eventType = nextNoWhitespace(xpp); 15234 } 15235 next(xpp); 15236 parseElementClose(res); 15237 return res; 15238 } 15239 15240 protected boolean parseStructureDefinitionStructureDefinitionDifferentialComponentContent(int eventType, XmlPullParser xpp, StructureDefinition owner, StructureDefinition.StructureDefinitionDifferentialComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15241 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 15242 res.getElement().add(parseElementDefinition(xpp)); 15243 } else if (!parseBackboneContent(eventType, xpp, res)) 15244 return false; 15245 return true; 15246 } 15247 15248 protected StructureMap parseStructureMap(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15249 StructureMap res = new StructureMap(); 15250 parseDomainResourceAttributes(xpp, res); 15251 next(xpp); 15252 int eventType = nextNoWhitespace(xpp); 15253 while (eventType != XmlPullParser.END_TAG) { 15254 if (!parseStructureMapContent(eventType, xpp, res)) 15255 unknownContent(xpp); 15256 eventType = nextNoWhitespace(xpp); 15257 } 15258 next(xpp); 15259 parseElementClose(res); 15260 return res; 15261 } 15262 15263 protected boolean parseStructureMapContent(int eventType, XmlPullParser xpp, StructureMap res) throws XmlPullParserException, IOException, FHIRFormatError { 15264 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 15265 res.setUrlElement(parseUri(xpp)); 15266 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15267 res.getIdentifier().add(parseIdentifier(xpp)); 15268 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 15269 res.setVersionElement(parseString(xpp)); 15270 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15271 res.setNameElement(parseString(xpp)); 15272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 15273 res.setTitleElement(parseString(xpp)); 15274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15275 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 15276 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 15277 res.setExperimentalElement(parseBoolean(xpp)); 15278 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 15279 res.setDateElement(parseDateTime(xpp)); 15280 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 15281 res.setPublisherElement(parseString(xpp)); 15282 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 15283 res.getContact().add(parseContactDetail(xpp)); 15284 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15285 res.setDescriptionElement(parseMarkdown(xpp)); 15286 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 15287 res.getUseContext().add(parseUsageContext(xpp)); 15288 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 15289 res.getJurisdiction().add(parseCodeableConcept(xpp)); 15290 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 15291 res.setPurposeElement(parseMarkdown(xpp)); 15292 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 15293 res.setCopyrightElement(parseMarkdown(xpp)); 15294 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("structure")) { 15295 res.getStructure().add(parseStructureMapStructureMapStructureComponent(xpp, res)); 15296 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("import")) { 15297 res.getImport().add(parseUri(xpp)); 15298 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("group")) { 15299 res.getGroup().add(parseStructureMapStructureMapGroupComponent(xpp, res)); 15300 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15301 return false; 15302 return true; 15303 } 15304 15305 protected StructureMap.StructureMapStructureComponent parseStructureMapStructureMapStructureComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15306 StructureMap.StructureMapStructureComponent res = new StructureMap.StructureMapStructureComponent(); 15307 parseBackboneAttributes(xpp, res); 15308 next(xpp); 15309 int eventType = nextNoWhitespace(xpp); 15310 while (eventType != XmlPullParser.END_TAG) { 15311 if (!parseStructureMapStructureMapStructureComponentContent(eventType, xpp, owner, res)) 15312 unknownContent(xpp); 15313 eventType = nextNoWhitespace(xpp); 15314 } 15315 next(xpp); 15316 parseElementClose(res); 15317 return res; 15318 } 15319 15320 protected boolean parseStructureMapStructureMapStructureComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapStructureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15321 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 15322 res.setUrlElement(parseUri(xpp)); 15323 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 15324 res.setModeElement(parseEnumeration(xpp, StructureMap.StructureMapModelMode.NULL, new StructureMap.StructureMapModelModeEnumFactory())); 15325 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alias")) { 15326 res.setAliasElement(parseString(xpp)); 15327 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 15328 res.setDocumentationElement(parseString(xpp)); 15329 } else if (!parseBackboneContent(eventType, xpp, res)) 15330 return false; 15331 return true; 15332 } 15333 15334 protected StructureMap.StructureMapGroupComponent parseStructureMapStructureMapGroupComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15335 StructureMap.StructureMapGroupComponent res = new StructureMap.StructureMapGroupComponent(); 15336 parseBackboneAttributes(xpp, res); 15337 next(xpp); 15338 int eventType = nextNoWhitespace(xpp); 15339 while (eventType != XmlPullParser.END_TAG) { 15340 if (!parseStructureMapStructureMapGroupComponentContent(eventType, xpp, owner, res)) 15341 unknownContent(xpp); 15342 eventType = nextNoWhitespace(xpp); 15343 } 15344 next(xpp); 15345 parseElementClose(res); 15346 return res; 15347 } 15348 15349 protected boolean parseStructureMapStructureMapGroupComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15350 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15351 res.setNameElement(parseId(xpp)); 15352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extends")) { 15353 res.setExtendsElement(parseId(xpp)); 15354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("typeMode")) { 15355 res.setTypeModeElement(parseEnumeration(xpp, StructureMap.StructureMapGroupTypeMode.NULL, new StructureMap.StructureMapGroupTypeModeEnumFactory())); 15356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 15357 res.setDocumentationElement(parseString(xpp)); 15358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 15359 res.getInput().add(parseStructureMapStructureMapGroupInputComponent(xpp, owner)); 15360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 15361 res.getRule().add(parseStructureMapStructureMapGroupRuleComponent(xpp, owner)); 15362 } else if (!parseBackboneContent(eventType, xpp, res)) 15363 return false; 15364 return true; 15365 } 15366 15367 protected StructureMap.StructureMapGroupInputComponent parseStructureMapStructureMapGroupInputComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15368 StructureMap.StructureMapGroupInputComponent res = new StructureMap.StructureMapGroupInputComponent(); 15369 parseBackboneAttributes(xpp, res); 15370 next(xpp); 15371 int eventType = nextNoWhitespace(xpp); 15372 while (eventType != XmlPullParser.END_TAG) { 15373 if (!parseStructureMapStructureMapGroupInputComponentContent(eventType, xpp, owner, res)) 15374 unknownContent(xpp); 15375 eventType = nextNoWhitespace(xpp); 15376 } 15377 next(xpp); 15378 parseElementClose(res); 15379 return res; 15380 } 15381 15382 protected boolean parseStructureMapStructureMapGroupInputComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupInputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15383 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15384 res.setNameElement(parseId(xpp)); 15385 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15386 res.setTypeElement(parseString(xpp)); 15387 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("mode")) { 15388 res.setModeElement(parseEnumeration(xpp, StructureMap.StructureMapInputMode.NULL, new StructureMap.StructureMapInputModeEnumFactory())); 15389 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 15390 res.setDocumentationElement(parseString(xpp)); 15391 } else if (!parseBackboneContent(eventType, xpp, res)) 15392 return false; 15393 return true; 15394 } 15395 15396 protected StructureMap.StructureMapGroupRuleComponent parseStructureMapStructureMapGroupRuleComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15397 StructureMap.StructureMapGroupRuleComponent res = new StructureMap.StructureMapGroupRuleComponent(); 15398 parseBackboneAttributes(xpp, res); 15399 next(xpp); 15400 int eventType = nextNoWhitespace(xpp); 15401 while (eventType != XmlPullParser.END_TAG) { 15402 if (!parseStructureMapStructureMapGroupRuleComponentContent(eventType, xpp, owner, res)) 15403 unknownContent(xpp); 15404 eventType = nextNoWhitespace(xpp); 15405 } 15406 next(xpp); 15407 parseElementClose(res); 15408 return res; 15409 } 15410 15411 protected boolean parseStructureMapStructureMapGroupRuleComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15412 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15413 res.setNameElement(parseId(xpp)); 15414 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { 15415 res.getSource().add(parseStructureMapStructureMapGroupRuleSourceComponent(xpp, owner)); 15416 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("target")) { 15417 res.getTarget().add(parseStructureMapStructureMapGroupRuleTargetComponent(xpp, owner)); 15418 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 15419 res.getRule().add(parseStructureMapStructureMapGroupRuleComponent(xpp, owner)); 15420 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dependent")) { 15421 res.getDependent().add(parseStructureMapStructureMapGroupRuleDependentComponent(xpp, owner)); 15422 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { 15423 res.setDocumentationElement(parseString(xpp)); 15424 } else if (!parseBackboneContent(eventType, xpp, res)) 15425 return false; 15426 return true; 15427 } 15428 15429 protected StructureMap.StructureMapGroupRuleSourceComponent parseStructureMapStructureMapGroupRuleSourceComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15430 StructureMap.StructureMapGroupRuleSourceComponent res = new StructureMap.StructureMapGroupRuleSourceComponent(); 15431 parseBackboneAttributes(xpp, res); 15432 next(xpp); 15433 int eventType = nextNoWhitespace(xpp); 15434 while (eventType != XmlPullParser.END_TAG) { 15435 if (!parseStructureMapStructureMapGroupRuleSourceComponentContent(eventType, xpp, owner, res)) 15436 unknownContent(xpp); 15437 eventType = nextNoWhitespace(xpp); 15438 } 15439 next(xpp); 15440 parseElementClose(res); 15441 return res; 15442 } 15443 15444 protected boolean parseStructureMapStructureMapGroupRuleSourceComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleSourceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15445 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 15446 res.setContextElement(parseId(xpp)); 15447 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("min")) { 15448 res.setMinElement(parseInteger(xpp)); 15449 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("max")) { 15450 res.setMaxElement(parseString(xpp)); 15451 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15452 res.setTypeElement(parseString(xpp)); 15453 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "defaultValue")) { 15454 res.setDefaultValue(parseType("defaultValue", xpp)); 15455 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 15456 res.setElementElement(parseString(xpp)); 15457 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listMode")) { 15458 res.setListModeElement(parseEnumeration(xpp, StructureMap.StructureMapSourceListMode.NULL, new StructureMap.StructureMapSourceListModeEnumFactory())); 15459 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 15460 res.setVariableElement(parseId(xpp)); 15461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("condition")) { 15462 res.setConditionElement(parseString(xpp)); 15463 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("check")) { 15464 res.setCheckElement(parseString(xpp)); 15465 } else if (!parseBackboneContent(eventType, xpp, res)) 15466 return false; 15467 return true; 15468 } 15469 15470 protected StructureMap.StructureMapGroupRuleTargetComponent parseStructureMapStructureMapGroupRuleTargetComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15471 StructureMap.StructureMapGroupRuleTargetComponent res = new StructureMap.StructureMapGroupRuleTargetComponent(); 15472 parseBackboneAttributes(xpp, res); 15473 next(xpp); 15474 int eventType = nextNoWhitespace(xpp); 15475 while (eventType != XmlPullParser.END_TAG) { 15476 if (!parseStructureMapStructureMapGroupRuleTargetComponentContent(eventType, xpp, owner, res)) 15477 unknownContent(xpp); 15478 eventType = nextNoWhitespace(xpp); 15479 } 15480 next(xpp); 15481 parseElementClose(res); 15482 return res; 15483 } 15484 15485 protected boolean parseStructureMapStructureMapGroupRuleTargetComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleTargetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15486 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 15487 res.setContextElement(parseId(xpp)); 15488 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contextType")) { 15489 res.setContextTypeElement(parseEnumeration(xpp, StructureMap.StructureMapContextType.NULL, new StructureMap.StructureMapContextTypeEnumFactory())); 15490 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("element")) { 15491 res.setElementElement(parseString(xpp)); 15492 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 15493 res.setVariableElement(parseId(xpp)); 15494 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listMode")) { 15495 res.getListMode().add(parseEnumeration(xpp, StructureMap.StructureMapTargetListMode.NULL, new StructureMap.StructureMapTargetListModeEnumFactory())); 15496 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listRuleId")) { 15497 res.setListRuleIdElement(parseId(xpp)); 15498 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("transform")) { 15499 res.setTransformElement(parseEnumeration(xpp, StructureMap.StructureMapTransform.NULL, new StructureMap.StructureMapTransformEnumFactory())); 15500 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 15501 res.getParameter().add(parseStructureMapStructureMapGroupRuleTargetParameterComponent(xpp, owner)); 15502 } else if (!parseBackboneContent(eventType, xpp, res)) 15503 return false; 15504 return true; 15505 } 15506 15507 protected StructureMap.StructureMapGroupRuleTargetParameterComponent parseStructureMapStructureMapGroupRuleTargetParameterComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15508 StructureMap.StructureMapGroupRuleTargetParameterComponent res = new StructureMap.StructureMapGroupRuleTargetParameterComponent(); 15509 parseBackboneAttributes(xpp, res); 15510 next(xpp); 15511 int eventType = nextNoWhitespace(xpp); 15512 while (eventType != XmlPullParser.END_TAG) { 15513 if (!parseStructureMapStructureMapGroupRuleTargetParameterComponentContent(eventType, xpp, owner, res)) 15514 unknownContent(xpp); 15515 eventType = nextNoWhitespace(xpp); 15516 } 15517 next(xpp); 15518 parseElementClose(res); 15519 return res; 15520 } 15521 15522 protected boolean parseStructureMapStructureMapGroupRuleTargetParameterComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleTargetParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15523 if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 15524 res.setValue(parseType("value", xpp)); 15525 } else if (!parseBackboneContent(eventType, xpp, res)) 15526 return false; 15527 return true; 15528 } 15529 15530 protected StructureMap.StructureMapGroupRuleDependentComponent parseStructureMapStructureMapGroupRuleDependentComponent(XmlPullParser xpp, StructureMap owner) throws XmlPullParserException, IOException, FHIRFormatError { 15531 StructureMap.StructureMapGroupRuleDependentComponent res = new StructureMap.StructureMapGroupRuleDependentComponent(); 15532 parseBackboneAttributes(xpp, res); 15533 next(xpp); 15534 int eventType = nextNoWhitespace(xpp); 15535 while (eventType != XmlPullParser.END_TAG) { 15536 if (!parseStructureMapStructureMapGroupRuleDependentComponentContent(eventType, xpp, owner, res)) 15537 unknownContent(xpp); 15538 eventType = nextNoWhitespace(xpp); 15539 } 15540 next(xpp); 15541 parseElementClose(res); 15542 return res; 15543 } 15544 15545 protected boolean parseStructureMapStructureMapGroupRuleDependentComponentContent(int eventType, XmlPullParser xpp, StructureMap owner, StructureMap.StructureMapGroupRuleDependentComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15546 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 15547 res.setNameElement(parseId(xpp)); 15548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 15549 res.getVariable().add(parseString(xpp)); 15550 } else if (!parseBackboneContent(eventType, xpp, res)) 15551 return false; 15552 return true; 15553 } 15554 15555 protected Subscription parseSubscription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15556 Subscription res = new Subscription(); 15557 parseDomainResourceAttributes(xpp, res); 15558 next(xpp); 15559 int eventType = nextNoWhitespace(xpp); 15560 while (eventType != XmlPullParser.END_TAG) { 15561 if (!parseSubscriptionContent(eventType, xpp, res)) 15562 unknownContent(xpp); 15563 eventType = nextNoWhitespace(xpp); 15564 } 15565 next(xpp); 15566 parseElementClose(res); 15567 return res; 15568 } 15569 15570 protected boolean parseSubscriptionContent(int eventType, XmlPullParser xpp, Subscription res) throws XmlPullParserException, IOException, FHIRFormatError { 15571 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15572 res.setStatusElement(parseEnumeration(xpp, Subscription.SubscriptionStatus.NULL, new Subscription.SubscriptionStatusEnumFactory())); 15573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 15574 res.getContact().add(parseContactPoint(xpp)); 15575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("end")) { 15576 res.setEndElement(parseInstant(xpp)); 15577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 15578 res.setReasonElement(parseString(xpp)); 15579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("criteria")) { 15580 res.setCriteriaElement(parseString(xpp)); 15581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { 15582 res.setErrorElement(parseString(xpp)); 15583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("channel")) { 15584 res.setChannel(parseSubscriptionSubscriptionChannelComponent(xpp, res)); 15585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tag")) { 15586 res.getTag().add(parseCoding(xpp)); 15587 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15588 return false; 15589 return true; 15590 } 15591 15592 protected Subscription.SubscriptionChannelComponent parseSubscriptionSubscriptionChannelComponent(XmlPullParser xpp, Subscription owner) throws XmlPullParserException, IOException, FHIRFormatError { 15593 Subscription.SubscriptionChannelComponent res = new Subscription.SubscriptionChannelComponent(); 15594 parseBackboneAttributes(xpp, res); 15595 next(xpp); 15596 int eventType = nextNoWhitespace(xpp); 15597 while (eventType != XmlPullParser.END_TAG) { 15598 if (!parseSubscriptionSubscriptionChannelComponentContent(eventType, xpp, owner, res)) 15599 unknownContent(xpp); 15600 eventType = nextNoWhitespace(xpp); 15601 } 15602 next(xpp); 15603 parseElementClose(res); 15604 return res; 15605 } 15606 15607 protected boolean parseSubscriptionSubscriptionChannelComponentContent(int eventType, XmlPullParser xpp, Subscription owner, Subscription.SubscriptionChannelComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15608 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15609 res.setTypeElement(parseEnumeration(xpp, Subscription.SubscriptionChannelType.NULL, new Subscription.SubscriptionChannelTypeEnumFactory())); 15610 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { 15611 res.setEndpointElement(parseUri(xpp)); 15612 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { 15613 res.setPayloadElement(parseString(xpp)); 15614 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("header")) { 15615 res.getHeader().add(parseString(xpp)); 15616 } else if (!parseBackboneContent(eventType, xpp, res)) 15617 return false; 15618 return true; 15619 } 15620 15621 protected Substance parseSubstance(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15622 Substance res = new Substance(); 15623 parseDomainResourceAttributes(xpp, res); 15624 next(xpp); 15625 int eventType = nextNoWhitespace(xpp); 15626 while (eventType != XmlPullParser.END_TAG) { 15627 if (!parseSubstanceContent(eventType, xpp, res)) 15628 unknownContent(xpp); 15629 eventType = nextNoWhitespace(xpp); 15630 } 15631 next(xpp); 15632 parseElementClose(res); 15633 return res; 15634 } 15635 15636 protected boolean parseSubstanceContent(int eventType, XmlPullParser xpp, Substance res) throws XmlPullParserException, IOException, FHIRFormatError { 15637 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15638 res.getIdentifier().add(parseIdentifier(xpp)); 15639 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15640 res.setStatusElement(parseEnumeration(xpp, Substance.FHIRSubstanceStatus.NULL, new Substance.FHIRSubstanceStatusEnumFactory())); 15641 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 15642 res.getCategory().add(parseCodeableConcept(xpp)); 15643 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 15644 res.setCode(parseCodeableConcept(xpp)); 15645 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15646 res.setDescriptionElement(parseString(xpp)); 15647 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { 15648 res.getInstance().add(parseSubstanceSubstanceInstanceComponent(xpp, res)); 15649 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { 15650 res.getIngredient().add(parseSubstanceSubstanceIngredientComponent(xpp, res)); 15651 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15652 return false; 15653 return true; 15654 } 15655 15656 protected Substance.SubstanceInstanceComponent parseSubstanceSubstanceInstanceComponent(XmlPullParser xpp, Substance owner) throws XmlPullParserException, IOException, FHIRFormatError { 15657 Substance.SubstanceInstanceComponent res = new Substance.SubstanceInstanceComponent(); 15658 parseBackboneAttributes(xpp, res); 15659 next(xpp); 15660 int eventType = nextNoWhitespace(xpp); 15661 while (eventType != XmlPullParser.END_TAG) { 15662 if (!parseSubstanceSubstanceInstanceComponentContent(eventType, xpp, owner, res)) 15663 unknownContent(xpp); 15664 eventType = nextNoWhitespace(xpp); 15665 } 15666 next(xpp); 15667 parseElementClose(res); 15668 return res; 15669 } 15670 15671 protected boolean parseSubstanceSubstanceInstanceComponentContent(int eventType, XmlPullParser xpp, Substance owner, Substance.SubstanceInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15672 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15673 res.setIdentifier(parseIdentifier(xpp)); 15674 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expiry")) { 15675 res.setExpiryElement(parseDateTime(xpp)); 15676 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15677 res.setQuantity(parseSimpleQuantity(xpp)); 15678 } else if (!parseBackboneContent(eventType, xpp, res)) 15679 return false; 15680 return true; 15681 } 15682 15683 protected Substance.SubstanceIngredientComponent parseSubstanceSubstanceIngredientComponent(XmlPullParser xpp, Substance owner) throws XmlPullParserException, IOException, FHIRFormatError { 15684 Substance.SubstanceIngredientComponent res = new Substance.SubstanceIngredientComponent(); 15685 parseBackboneAttributes(xpp, res); 15686 next(xpp); 15687 int eventType = nextNoWhitespace(xpp); 15688 while (eventType != XmlPullParser.END_TAG) { 15689 if (!parseSubstanceSubstanceIngredientComponentContent(eventType, xpp, owner, res)) 15690 unknownContent(xpp); 15691 eventType = nextNoWhitespace(xpp); 15692 } 15693 next(xpp); 15694 parseElementClose(res); 15695 return res; 15696 } 15697 15698 protected boolean parseSubstanceSubstanceIngredientComponentContent(int eventType, XmlPullParser xpp, Substance owner, Substance.SubstanceIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15699 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15700 res.setQuantity(parseRatio(xpp)); 15701 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "substance")) { 15702 res.setSubstance(parseType("substance", xpp)); 15703 } else if (!parseBackboneContent(eventType, xpp, res)) 15704 return false; 15705 return true; 15706 } 15707 15708 protected SupplyDelivery parseSupplyDelivery(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15709 SupplyDelivery res = new SupplyDelivery(); 15710 parseDomainResourceAttributes(xpp, res); 15711 next(xpp); 15712 int eventType = nextNoWhitespace(xpp); 15713 while (eventType != XmlPullParser.END_TAG) { 15714 if (!parseSupplyDeliveryContent(eventType, xpp, res)) 15715 unknownContent(xpp); 15716 eventType = nextNoWhitespace(xpp); 15717 } 15718 next(xpp); 15719 parseElementClose(res); 15720 return res; 15721 } 15722 15723 protected boolean parseSupplyDeliveryContent(int eventType, XmlPullParser xpp, SupplyDelivery res) throws XmlPullParserException, IOException, FHIRFormatError { 15724 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15725 res.setIdentifier(parseIdentifier(xpp)); 15726 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 15727 res.getBasedOn().add(parseReference(xpp)); 15728 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 15729 res.getPartOf().add(parseReference(xpp)); 15730 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15731 res.setStatusElement(parseEnumeration(xpp, SupplyDelivery.SupplyDeliveryStatus.NULL, new SupplyDelivery.SupplyDeliveryStatusEnumFactory())); 15732 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 15733 res.setPatient(parseReference(xpp)); 15734 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 15735 res.setType(parseCodeableConcept(xpp)); 15736 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suppliedItem")) { 15737 res.setSuppliedItem(parseSupplyDeliverySupplyDeliverySuppliedItemComponent(xpp, res)); 15738 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 15739 res.setOccurrence(parseType("occurrence", xpp)); 15740 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 15741 res.setSupplier(parseReference(xpp)); 15742 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 15743 res.setDestination(parseReference(xpp)); 15744 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("receiver")) { 15745 res.getReceiver().add(parseReference(xpp)); 15746 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15747 return false; 15748 return true; 15749 } 15750 15751 protected SupplyDelivery.SupplyDeliverySuppliedItemComponent parseSupplyDeliverySupplyDeliverySuppliedItemComponent(XmlPullParser xpp, SupplyDelivery owner) throws XmlPullParserException, IOException, FHIRFormatError { 15752 SupplyDelivery.SupplyDeliverySuppliedItemComponent res = new SupplyDelivery.SupplyDeliverySuppliedItemComponent(); 15753 parseBackboneAttributes(xpp, res); 15754 next(xpp); 15755 int eventType = nextNoWhitespace(xpp); 15756 while (eventType != XmlPullParser.END_TAG) { 15757 if (!parseSupplyDeliverySupplyDeliverySuppliedItemComponentContent(eventType, xpp, owner, res)) 15758 unknownContent(xpp); 15759 eventType = nextNoWhitespace(xpp); 15760 } 15761 next(xpp); 15762 parseElementClose(res); 15763 return res; 15764 } 15765 15766 protected boolean parseSupplyDeliverySupplyDeliverySuppliedItemComponentContent(int eventType, XmlPullParser xpp, SupplyDelivery owner, SupplyDelivery.SupplyDeliverySuppliedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15767 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15768 res.setQuantity(parseSimpleQuantity(xpp)); 15769 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 15770 res.setItem(parseType("item", xpp)); 15771 } else if (!parseBackboneContent(eventType, xpp, res)) 15772 return false; 15773 return true; 15774 } 15775 15776 protected SupplyRequest parseSupplyRequest(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15777 SupplyRequest res = new SupplyRequest(); 15778 parseDomainResourceAttributes(xpp, res); 15779 next(xpp); 15780 int eventType = nextNoWhitespace(xpp); 15781 while (eventType != XmlPullParser.END_TAG) { 15782 if (!parseSupplyRequestContent(eventType, xpp, res)) 15783 unknownContent(xpp); 15784 eventType = nextNoWhitespace(xpp); 15785 } 15786 next(xpp); 15787 parseElementClose(res); 15788 return res; 15789 } 15790 15791 protected boolean parseSupplyRequestContent(int eventType, XmlPullParser xpp, SupplyRequest res) throws XmlPullParserException, IOException, FHIRFormatError { 15792 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15793 res.setIdentifier(parseIdentifier(xpp)); 15794 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15795 res.setStatusElement(parseEnumeration(xpp, SupplyRequest.SupplyRequestStatus.NULL, new SupplyRequest.SupplyRequestStatusEnumFactory())); 15796 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { 15797 res.setCategory(parseCodeableConcept(xpp)); 15798 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 15799 res.setPriorityElement(parseEnumeration(xpp, SupplyRequest.RequestPriority.NULL, new SupplyRequest.RequestPriorityEnumFactory())); 15800 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orderedItem")) { 15801 res.setOrderedItem(parseSupplyRequestSupplyRequestOrderedItemComponent(xpp, res)); 15802 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { 15803 res.setOccurrence(parseType("occurrence", xpp)); 15804 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 15805 res.setAuthoredOnElement(parseDateTime(xpp)); 15806 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 15807 res.setRequester(parseSupplyRequestSupplyRequestRequesterComponent(xpp, res)); 15808 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supplier")) { 15809 res.getSupplier().add(parseReference(xpp)); 15810 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 15811 res.setReason(parseType("reason", xpp)); 15812 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deliverFrom")) { 15813 res.setDeliverFrom(parseReference(xpp)); 15814 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("deliverTo")) { 15815 res.setDeliverTo(parseReference(xpp)); 15816 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15817 return false; 15818 return true; 15819 } 15820 15821 protected SupplyRequest.SupplyRequestOrderedItemComponent parseSupplyRequestSupplyRequestOrderedItemComponent(XmlPullParser xpp, SupplyRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 15822 SupplyRequest.SupplyRequestOrderedItemComponent res = new SupplyRequest.SupplyRequestOrderedItemComponent(); 15823 parseBackboneAttributes(xpp, res); 15824 next(xpp); 15825 int eventType = nextNoWhitespace(xpp); 15826 while (eventType != XmlPullParser.END_TAG) { 15827 if (!parseSupplyRequestSupplyRequestOrderedItemComponentContent(eventType, xpp, owner, res)) 15828 unknownContent(xpp); 15829 eventType = nextNoWhitespace(xpp); 15830 } 15831 next(xpp); 15832 parseElementClose(res); 15833 return res; 15834 } 15835 15836 protected boolean parseSupplyRequestSupplyRequestOrderedItemComponentContent(int eventType, XmlPullParser xpp, SupplyRequest owner, SupplyRequest.SupplyRequestOrderedItemComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15837 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { 15838 res.setQuantity(parseQuantity(xpp)); 15839 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { 15840 res.setItem(parseType("item", xpp)); 15841 } else if (!parseBackboneContent(eventType, xpp, res)) 15842 return false; 15843 return true; 15844 } 15845 15846 protected SupplyRequest.SupplyRequestRequesterComponent parseSupplyRequestSupplyRequestRequesterComponent(XmlPullParser xpp, SupplyRequest owner) throws XmlPullParserException, IOException, FHIRFormatError { 15847 SupplyRequest.SupplyRequestRequesterComponent res = new SupplyRequest.SupplyRequestRequesterComponent(); 15848 parseBackboneAttributes(xpp, res); 15849 next(xpp); 15850 int eventType = nextNoWhitespace(xpp); 15851 while (eventType != XmlPullParser.END_TAG) { 15852 if (!parseSupplyRequestSupplyRequestRequesterComponentContent(eventType, xpp, owner, res)) 15853 unknownContent(xpp); 15854 eventType = nextNoWhitespace(xpp); 15855 } 15856 next(xpp); 15857 parseElementClose(res); 15858 return res; 15859 } 15860 15861 protected boolean parseSupplyRequestSupplyRequestRequesterComponentContent(int eventType, XmlPullParser xpp, SupplyRequest owner, SupplyRequest.SupplyRequestRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15862 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 15863 res.setAgent(parseReference(xpp)); 15864 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 15865 res.setOnBehalfOf(parseReference(xpp)); 15866 } else if (!parseBackboneContent(eventType, xpp, res)) 15867 return false; 15868 return true; 15869 } 15870 15871 protected Task parseTask(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 15872 Task res = new Task(); 15873 parseDomainResourceAttributes(xpp, res); 15874 next(xpp); 15875 int eventType = nextNoWhitespace(xpp); 15876 while (eventType != XmlPullParser.END_TAG) { 15877 if (!parseTaskContent(eventType, xpp, res)) 15878 unknownContent(xpp); 15879 eventType = nextNoWhitespace(xpp); 15880 } 15881 next(xpp); 15882 parseElementClose(res); 15883 return res; 15884 } 15885 15886 protected boolean parseTaskContent(int eventType, XmlPullParser xpp, Task res) throws XmlPullParserException, IOException, FHIRFormatError { 15887 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 15888 res.getIdentifier().add(parseIdentifier(xpp)); 15889 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "definition")) { 15890 res.setDefinition(parseType("definition", xpp)); 15891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { 15892 res.getBasedOn().add(parseReference(xpp)); 15893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupIdentifier")) { 15894 res.setGroupIdentifier(parseIdentifier(xpp)); 15895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { 15896 res.getPartOf().add(parseReference(xpp)); 15897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 15898 res.setStatusElement(parseEnumeration(xpp, Task.TaskStatus.NULL, new Task.TaskStatusEnumFactory())); 15899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { 15900 res.setStatusReason(parseCodeableConcept(xpp)); 15901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("businessStatus")) { 15902 res.setBusinessStatus(parseCodeableConcept(xpp)); 15903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { 15904 res.setIntentElement(parseEnumeration(xpp, Task.TaskIntent.NULL, new Task.TaskIntentEnumFactory())); 15905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { 15906 res.setPriorityElement(parseEnumeration(xpp, Task.TaskPriority.NULL, new Task.TaskPriorityEnumFactory())); 15907 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 15908 res.setCode(parseCodeableConcept(xpp)); 15909 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 15910 res.setDescriptionElement(parseString(xpp)); 15911 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("focus")) { 15912 res.setFocus(parseReference(xpp)); 15913 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("for")) { 15914 res.setFor(parseReference(xpp)); 15915 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { 15916 res.setContext(parseReference(xpp)); 15917 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("executionPeriod")) { 15918 res.setExecutionPeriod(parsePeriod(xpp)); 15919 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authoredOn")) { 15920 res.setAuthoredOnElement(parseDateTime(xpp)); 15921 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastModified")) { 15922 res.setLastModifiedElement(parseDateTime(xpp)); 15923 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requester")) { 15924 res.setRequester(parseTaskTaskRequesterComponent(xpp, res)); 15925 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performerType")) { 15926 res.getPerformerType().add(parseCodeableConcept(xpp)); 15927 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { 15928 res.setOwner(parseReference(xpp)); 15929 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { 15930 res.setReason(parseCodeableConcept(xpp)); 15931 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 15932 res.getNote().add(parseAnnotation(xpp)); 15933 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relevantHistory")) { 15934 res.getRelevantHistory().add(parseReference(xpp)); 15935 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("restriction")) { 15936 res.setRestriction(parseTaskTaskRestrictionComponent(xpp, res)); 15937 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("input")) { 15938 res.getInput().add(parseTaskParameterComponent(xpp, res)); 15939 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("output")) { 15940 res.getOutput().add(parseTaskTaskOutputComponent(xpp, res)); 15941 } else if (!parseDomainResourceContent(eventType, xpp, res)) 15942 return false; 15943 return true; 15944 } 15945 15946 protected Task.TaskRequesterComponent parseTaskTaskRequesterComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 15947 Task.TaskRequesterComponent res = new Task.TaskRequesterComponent(); 15948 parseBackboneAttributes(xpp, res); 15949 next(xpp); 15950 int eventType = nextNoWhitespace(xpp); 15951 while (eventType != XmlPullParser.END_TAG) { 15952 if (!parseTaskTaskRequesterComponentContent(eventType, xpp, owner, res)) 15953 unknownContent(xpp); 15954 eventType = nextNoWhitespace(xpp); 15955 } 15956 next(xpp); 15957 parseElementClose(res); 15958 return res; 15959 } 15960 15961 protected boolean parseTaskTaskRequesterComponentContent(int eventType, XmlPullParser xpp, Task owner, Task.TaskRequesterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15962 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { 15963 res.setAgent(parseReference(xpp)); 15964 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onBehalfOf")) { 15965 res.setOnBehalfOf(parseReference(xpp)); 15966 } else if (!parseBackboneContent(eventType, xpp, res)) 15967 return false; 15968 return true; 15969 } 15970 15971 protected Task.TaskRestrictionComponent parseTaskTaskRestrictionComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 15972 Task.TaskRestrictionComponent res = new Task.TaskRestrictionComponent(); 15973 parseBackboneAttributes(xpp, res); 15974 next(xpp); 15975 int eventType = nextNoWhitespace(xpp); 15976 while (eventType != XmlPullParser.END_TAG) { 15977 if (!parseTaskTaskRestrictionComponentContent(eventType, xpp, owner, res)) 15978 unknownContent(xpp); 15979 eventType = nextNoWhitespace(xpp); 15980 } 15981 next(xpp); 15982 parseElementClose(res); 15983 return res; 15984 } 15985 15986 protected boolean parseTaskTaskRestrictionComponentContent(int eventType, XmlPullParser xpp, Task owner, Task.TaskRestrictionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 15987 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repetitions")) { 15988 res.setRepetitionsElement(parsePositiveInt(xpp)); 15989 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { 15990 res.setPeriod(parsePeriod(xpp)); 15991 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recipient")) { 15992 res.getRecipient().add(parseReference(xpp)); 15993 } else if (!parseBackboneContent(eventType, xpp, res)) 15994 return false; 15995 return true; 15996 } 15997 15998 protected Task.ParameterComponent parseTaskParameterComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 15999 Task.ParameterComponent res = new Task.ParameterComponent(); 16000 parseBackboneAttributes(xpp, res); 16001 next(xpp); 16002 int eventType = nextNoWhitespace(xpp); 16003 while (eventType != XmlPullParser.END_TAG) { 16004 if (!parseTaskParameterComponentContent(eventType, xpp, owner, res)) 16005 unknownContent(xpp); 16006 eventType = nextNoWhitespace(xpp); 16007 } 16008 next(xpp); 16009 parseElementClose(res); 16010 return res; 16011 } 16012 16013 protected boolean parseTaskParameterComponentContent(int eventType, XmlPullParser xpp, Task owner, Task.ParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16014 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16015 res.setType(parseCodeableConcept(xpp)); 16016 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 16017 res.setValue(parseType("value", xpp)); 16018 } else if (!parseBackboneContent(eventType, xpp, res)) 16019 return false; 16020 return true; 16021 } 16022 16023 protected Task.TaskOutputComponent parseTaskTaskOutputComponent(XmlPullParser xpp, Task owner) throws XmlPullParserException, IOException, FHIRFormatError { 16024 Task.TaskOutputComponent res = new Task.TaskOutputComponent(); 16025 parseBackboneAttributes(xpp, res); 16026 next(xpp); 16027 int eventType = nextNoWhitespace(xpp); 16028 while (eventType != XmlPullParser.END_TAG) { 16029 if (!parseTaskTaskOutputComponentContent(eventType, xpp, owner, res)) 16030 unknownContent(xpp); 16031 eventType = nextNoWhitespace(xpp); 16032 } 16033 next(xpp); 16034 parseElementClose(res); 16035 return res; 16036 } 16037 16038 protected boolean parseTaskTaskOutputComponentContent(int eventType, XmlPullParser xpp, Task owner, Task.TaskOutputComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16039 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16040 res.setType(parseCodeableConcept(xpp)); 16041 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 16042 res.setValue(parseType("value", xpp)); 16043 } else if (!parseBackboneContent(eventType, xpp, res)) 16044 return false; 16045 return true; 16046 } 16047 16048 protected TestReport parseTestReport(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16049 TestReport res = new TestReport(); 16050 parseDomainResourceAttributes(xpp, res); 16051 next(xpp); 16052 int eventType = nextNoWhitespace(xpp); 16053 while (eventType != XmlPullParser.END_TAG) { 16054 if (!parseTestReportContent(eventType, xpp, res)) 16055 unknownContent(xpp); 16056 eventType = nextNoWhitespace(xpp); 16057 } 16058 next(xpp); 16059 parseElementClose(res); 16060 return res; 16061 } 16062 16063 protected boolean parseTestReportContent(int eventType, XmlPullParser xpp, TestReport res) throws XmlPullParserException, IOException, FHIRFormatError { 16064 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16065 res.setIdentifier(parseIdentifier(xpp)); 16066 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16067 res.setNameElement(parseString(xpp)); 16068 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 16069 res.setStatusElement(parseEnumeration(xpp, TestReport.TestReportStatus.NULL, new TestReport.TestReportStatusEnumFactory())); 16070 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("testScript")) { 16071 res.setTestScript(parseReference(xpp)); 16072 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 16073 res.setResultElement(parseEnumeration(xpp, TestReport.TestReportResult.NULL, new TestReport.TestReportResultEnumFactory())); 16074 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("score")) { 16075 res.setScoreElement(parseDecimal(xpp)); 16076 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("tester")) { 16077 res.setTesterElement(parseString(xpp)); 16078 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issued")) { 16079 res.setIssuedElement(parseDateTime(xpp)); 16080 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("participant")) { 16081 res.getParticipant().add(parseTestReportTestReportParticipantComponent(xpp, res)); 16082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("setup")) { 16083 res.setSetup(parseTestReportTestReportSetupComponent(xpp, res)); 16084 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("test")) { 16085 res.getTest().add(parseTestReportTestReportTestComponent(xpp, res)); 16086 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("teardown")) { 16087 res.setTeardown(parseTestReportTestReportTeardownComponent(xpp, res)); 16088 } else if (!parseDomainResourceContent(eventType, xpp, res)) 16089 return false; 16090 return true; 16091 } 16092 16093 protected TestReport.TestReportParticipantComponent parseTestReportTestReportParticipantComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16094 TestReport.TestReportParticipantComponent res = new TestReport.TestReportParticipantComponent(); 16095 parseBackboneAttributes(xpp, res); 16096 next(xpp); 16097 int eventType = nextNoWhitespace(xpp); 16098 while (eventType != XmlPullParser.END_TAG) { 16099 if (!parseTestReportTestReportParticipantComponentContent(eventType, xpp, owner, res)) 16100 unknownContent(xpp); 16101 eventType = nextNoWhitespace(xpp); 16102 } 16103 next(xpp); 16104 parseElementClose(res); 16105 return res; 16106 } 16107 16108 protected boolean parseTestReportTestReportParticipantComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestReportParticipantComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16109 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16110 res.setTypeElement(parseEnumeration(xpp, TestReport.TestReportParticipantType.NULL, new TestReport.TestReportParticipantTypeEnumFactory())); 16111 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("uri")) { 16112 res.setUriElement(parseUri(xpp)); 16113 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 16114 res.setDisplayElement(parseString(xpp)); 16115 } else if (!parseBackboneContent(eventType, xpp, res)) 16116 return false; 16117 return true; 16118 } 16119 16120 protected TestReport.TestReportSetupComponent parseTestReportTestReportSetupComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16121 TestReport.TestReportSetupComponent res = new TestReport.TestReportSetupComponent(); 16122 parseBackboneAttributes(xpp, res); 16123 next(xpp); 16124 int eventType = nextNoWhitespace(xpp); 16125 while (eventType != XmlPullParser.END_TAG) { 16126 if (!parseTestReportTestReportSetupComponentContent(eventType, xpp, owner, res)) 16127 unknownContent(xpp); 16128 eventType = nextNoWhitespace(xpp); 16129 } 16130 next(xpp); 16131 parseElementClose(res); 16132 return res; 16133 } 16134 16135 protected boolean parseTestReportTestReportSetupComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestReportSetupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16136 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 16137 res.getAction().add(parseTestReportSetupActionComponent(xpp, owner)); 16138 } else if (!parseBackboneContent(eventType, xpp, res)) 16139 return false; 16140 return true; 16141 } 16142 16143 protected TestReport.SetupActionComponent parseTestReportSetupActionComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16144 TestReport.SetupActionComponent res = new TestReport.SetupActionComponent(); 16145 parseBackboneAttributes(xpp, res); 16146 next(xpp); 16147 int eventType = nextNoWhitespace(xpp); 16148 while (eventType != XmlPullParser.END_TAG) { 16149 if (!parseTestReportSetupActionComponentContent(eventType, xpp, owner, res)) 16150 unknownContent(xpp); 16151 eventType = nextNoWhitespace(xpp); 16152 } 16153 next(xpp); 16154 parseElementClose(res); 16155 return res; 16156 } 16157 16158 protected boolean parseTestReportSetupActionComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.SetupActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16159 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 16160 res.setOperation(parseTestReportSetupActionOperationComponent(xpp, owner)); 16161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 16162 res.setAssert(parseTestReportSetupActionAssertComponent(xpp, owner)); 16163 } else if (!parseBackboneContent(eventType, xpp, res)) 16164 return false; 16165 return true; 16166 } 16167 16168 protected TestReport.SetupActionOperationComponent parseTestReportSetupActionOperationComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16169 TestReport.SetupActionOperationComponent res = new TestReport.SetupActionOperationComponent(); 16170 parseBackboneAttributes(xpp, res); 16171 next(xpp); 16172 int eventType = nextNoWhitespace(xpp); 16173 while (eventType != XmlPullParser.END_TAG) { 16174 if (!parseTestReportSetupActionOperationComponentContent(eventType, xpp, owner, res)) 16175 unknownContent(xpp); 16176 eventType = nextNoWhitespace(xpp); 16177 } 16178 next(xpp); 16179 parseElementClose(res); 16180 return res; 16181 } 16182 16183 protected boolean parseTestReportSetupActionOperationComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.SetupActionOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16184 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 16185 res.setResultElement(parseEnumeration(xpp, TestReport.TestReportActionResult.NULL, new TestReport.TestReportActionResultEnumFactory())); 16186 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("message")) { 16187 res.setMessageElement(parseMarkdown(xpp)); 16188 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 16189 res.setDetailElement(parseUri(xpp)); 16190 } else if (!parseBackboneContent(eventType, xpp, res)) 16191 return false; 16192 return true; 16193 } 16194 16195 protected TestReport.SetupActionAssertComponent parseTestReportSetupActionAssertComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16196 TestReport.SetupActionAssertComponent res = new TestReport.SetupActionAssertComponent(); 16197 parseBackboneAttributes(xpp, res); 16198 next(xpp); 16199 int eventType = nextNoWhitespace(xpp); 16200 while (eventType != XmlPullParser.END_TAG) { 16201 if (!parseTestReportSetupActionAssertComponentContent(eventType, xpp, owner, res)) 16202 unknownContent(xpp); 16203 eventType = nextNoWhitespace(xpp); 16204 } 16205 next(xpp); 16206 parseElementClose(res); 16207 return res; 16208 } 16209 16210 protected boolean parseTestReportSetupActionAssertComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.SetupActionAssertComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16211 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("result")) { 16212 res.setResultElement(parseEnumeration(xpp, TestReport.TestReportActionResult.NULL, new TestReport.TestReportActionResultEnumFactory())); 16213 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("message")) { 16214 res.setMessageElement(parseMarkdown(xpp)); 16215 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("detail")) { 16216 res.setDetailElement(parseString(xpp)); 16217 } else if (!parseBackboneContent(eventType, xpp, res)) 16218 return false; 16219 return true; 16220 } 16221 16222 protected TestReport.TestReportTestComponent parseTestReportTestReportTestComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16223 TestReport.TestReportTestComponent res = new TestReport.TestReportTestComponent(); 16224 parseBackboneAttributes(xpp, res); 16225 next(xpp); 16226 int eventType = nextNoWhitespace(xpp); 16227 while (eventType != XmlPullParser.END_TAG) { 16228 if (!parseTestReportTestReportTestComponentContent(eventType, xpp, owner, res)) 16229 unknownContent(xpp); 16230 eventType = nextNoWhitespace(xpp); 16231 } 16232 next(xpp); 16233 parseElementClose(res); 16234 return res; 16235 } 16236 16237 protected boolean parseTestReportTestReportTestComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestReportTestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16238 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16239 res.setNameElement(parseString(xpp)); 16240 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16241 res.setDescriptionElement(parseString(xpp)); 16242 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 16243 res.getAction().add(parseTestReportTestActionComponent(xpp, owner)); 16244 } else if (!parseBackboneContent(eventType, xpp, res)) 16245 return false; 16246 return true; 16247 } 16248 16249 protected TestReport.TestActionComponent parseTestReportTestActionComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16250 TestReport.TestActionComponent res = new TestReport.TestActionComponent(); 16251 parseBackboneAttributes(xpp, res); 16252 next(xpp); 16253 int eventType = nextNoWhitespace(xpp); 16254 while (eventType != XmlPullParser.END_TAG) { 16255 if (!parseTestReportTestActionComponentContent(eventType, xpp, owner, res)) 16256 unknownContent(xpp); 16257 eventType = nextNoWhitespace(xpp); 16258 } 16259 next(xpp); 16260 parseElementClose(res); 16261 return res; 16262 } 16263 16264 protected boolean parseTestReportTestActionComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16265 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 16266 res.setOperation(parseTestReportSetupActionOperationComponent(xpp, owner)); 16267 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 16268 res.setAssert(parseTestReportSetupActionAssertComponent(xpp, owner)); 16269 } else if (!parseBackboneContent(eventType, xpp, res)) 16270 return false; 16271 return true; 16272 } 16273 16274 protected TestReport.TestReportTeardownComponent parseTestReportTestReportTeardownComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16275 TestReport.TestReportTeardownComponent res = new TestReport.TestReportTeardownComponent(); 16276 parseBackboneAttributes(xpp, res); 16277 next(xpp); 16278 int eventType = nextNoWhitespace(xpp); 16279 while (eventType != XmlPullParser.END_TAG) { 16280 if (!parseTestReportTestReportTeardownComponentContent(eventType, xpp, owner, res)) 16281 unknownContent(xpp); 16282 eventType = nextNoWhitespace(xpp); 16283 } 16284 next(xpp); 16285 parseElementClose(res); 16286 return res; 16287 } 16288 16289 protected boolean parseTestReportTestReportTeardownComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TestReportTeardownComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16290 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 16291 res.getAction().add(parseTestReportTeardownActionComponent(xpp, owner)); 16292 } else if (!parseBackboneContent(eventType, xpp, res)) 16293 return false; 16294 return true; 16295 } 16296 16297 protected TestReport.TeardownActionComponent parseTestReportTeardownActionComponent(XmlPullParser xpp, TestReport owner) throws XmlPullParserException, IOException, FHIRFormatError { 16298 TestReport.TeardownActionComponent res = new TestReport.TeardownActionComponent(); 16299 parseBackboneAttributes(xpp, res); 16300 next(xpp); 16301 int eventType = nextNoWhitespace(xpp); 16302 while (eventType != XmlPullParser.END_TAG) { 16303 if (!parseTestReportTeardownActionComponentContent(eventType, xpp, owner, res)) 16304 unknownContent(xpp); 16305 eventType = nextNoWhitespace(xpp); 16306 } 16307 next(xpp); 16308 parseElementClose(res); 16309 return res; 16310 } 16311 16312 protected boolean parseTestReportTeardownActionComponentContent(int eventType, XmlPullParser xpp, TestReport owner, TestReport.TeardownActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16313 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 16314 res.setOperation(parseTestReportSetupActionOperationComponent(xpp, owner)); 16315 } else if (!parseBackboneContent(eventType, xpp, res)) 16316 return false; 16317 return true; 16318 } 16319 16320 protected TestScript parseTestScript(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 16321 TestScript res = new TestScript(); 16322 parseDomainResourceAttributes(xpp, res); 16323 next(xpp); 16324 int eventType = nextNoWhitespace(xpp); 16325 while (eventType != XmlPullParser.END_TAG) { 16326 if (!parseTestScriptContent(eventType, xpp, res)) 16327 unknownContent(xpp); 16328 eventType = nextNoWhitespace(xpp); 16329 } 16330 next(xpp); 16331 parseElementClose(res); 16332 return res; 16333 } 16334 16335 protected boolean parseTestScriptContent(int eventType, XmlPullParser xpp, TestScript res) throws XmlPullParserException, IOException, FHIRFormatError { 16336 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 16337 res.setUrlElement(parseUri(xpp)); 16338 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 16339 res.setIdentifier(parseIdentifier(xpp)); 16340 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 16341 res.setVersionElement(parseString(xpp)); 16342 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16343 res.setNameElement(parseString(xpp)); 16344 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 16345 res.setTitleElement(parseString(xpp)); 16346 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 16347 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 16348 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 16349 res.setExperimentalElement(parseBoolean(xpp)); 16350 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 16351 res.setDateElement(parseDateTime(xpp)); 16352 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 16353 res.setPublisherElement(parseString(xpp)); 16354 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 16355 res.getContact().add(parseContactDetail(xpp)); 16356 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16357 res.setDescriptionElement(parseMarkdown(xpp)); 16358 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 16359 res.getUseContext().add(parseUsageContext(xpp)); 16360 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 16361 res.getJurisdiction().add(parseCodeableConcept(xpp)); 16362 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 16363 res.setPurposeElement(parseMarkdown(xpp)); 16364 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 16365 res.setCopyrightElement(parseMarkdown(xpp)); 16366 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 16367 res.getOrigin().add(parseTestScriptTestScriptOriginComponent(xpp, res)); 16368 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 16369 res.getDestination().add(parseTestScriptTestScriptDestinationComponent(xpp, res)); 16370 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("metadata")) { 16371 res.setMetadata(parseTestScriptTestScriptMetadataComponent(xpp, res)); 16372 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fixture")) { 16373 res.getFixture().add(parseTestScriptTestScriptFixtureComponent(xpp, res)); 16374 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 16375 res.getProfile().add(parseReference(xpp)); 16376 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variable")) { 16377 res.getVariable().add(parseTestScriptTestScriptVariableComponent(xpp, res)); 16378 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 16379 res.getRule().add(parseTestScriptTestScriptRuleComponent(xpp, res)); 16380 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 16381 res.getRuleset().add(parseTestScriptTestScriptRulesetComponent(xpp, res)); 16382 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("setup")) { 16383 res.setSetup(parseTestScriptTestScriptSetupComponent(xpp, res)); 16384 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("test")) { 16385 res.getTest().add(parseTestScriptTestScriptTestComponent(xpp, res)); 16386 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("teardown")) { 16387 res.setTeardown(parseTestScriptTestScriptTeardownComponent(xpp, res)); 16388 } else if (!parseDomainResourceContent(eventType, xpp, res)) 16389 return false; 16390 return true; 16391 } 16392 16393 protected TestScript.TestScriptOriginComponent parseTestScriptTestScriptOriginComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16394 TestScript.TestScriptOriginComponent res = new TestScript.TestScriptOriginComponent(); 16395 parseBackboneAttributes(xpp, res); 16396 next(xpp); 16397 int eventType = nextNoWhitespace(xpp); 16398 while (eventType != XmlPullParser.END_TAG) { 16399 if (!parseTestScriptTestScriptOriginComponentContent(eventType, xpp, owner, res)) 16400 unknownContent(xpp); 16401 eventType = nextNoWhitespace(xpp); 16402 } 16403 next(xpp); 16404 parseElementClose(res); 16405 return res; 16406 } 16407 16408 protected boolean parseTestScriptTestScriptOriginComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptOriginComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16409 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("index")) { 16410 res.setIndexElement(parseInteger(xpp)); 16411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 16412 res.setProfile(parseCoding(xpp)); 16413 } else if (!parseBackboneContent(eventType, xpp, res)) 16414 return false; 16415 return true; 16416 } 16417 16418 protected TestScript.TestScriptDestinationComponent parseTestScriptTestScriptDestinationComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16419 TestScript.TestScriptDestinationComponent res = new TestScript.TestScriptDestinationComponent(); 16420 parseBackboneAttributes(xpp, res); 16421 next(xpp); 16422 int eventType = nextNoWhitespace(xpp); 16423 while (eventType != XmlPullParser.END_TAG) { 16424 if (!parseTestScriptTestScriptDestinationComponentContent(eventType, xpp, owner, res)) 16425 unknownContent(xpp); 16426 eventType = nextNoWhitespace(xpp); 16427 } 16428 next(xpp); 16429 parseElementClose(res); 16430 return res; 16431 } 16432 16433 protected boolean parseTestScriptTestScriptDestinationComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptDestinationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16434 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("index")) { 16435 res.setIndexElement(parseInteger(xpp)); 16436 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("profile")) { 16437 res.setProfile(parseCoding(xpp)); 16438 } else if (!parseBackboneContent(eventType, xpp, res)) 16439 return false; 16440 return true; 16441 } 16442 16443 protected TestScript.TestScriptMetadataComponent parseTestScriptTestScriptMetadataComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16444 TestScript.TestScriptMetadataComponent res = new TestScript.TestScriptMetadataComponent(); 16445 parseBackboneAttributes(xpp, res); 16446 next(xpp); 16447 int eventType = nextNoWhitespace(xpp); 16448 while (eventType != XmlPullParser.END_TAG) { 16449 if (!parseTestScriptTestScriptMetadataComponentContent(eventType, xpp, owner, res)) 16450 unknownContent(xpp); 16451 eventType = nextNoWhitespace(xpp); 16452 } 16453 next(xpp); 16454 parseElementClose(res); 16455 return res; 16456 } 16457 16458 protected boolean parseTestScriptTestScriptMetadataComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptMetadataComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16459 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 16460 res.getLink().add(parseTestScriptTestScriptMetadataLinkComponent(xpp, owner)); 16461 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capability")) { 16462 res.getCapability().add(parseTestScriptTestScriptMetadataCapabilityComponent(xpp, owner)); 16463 } else if (!parseBackboneContent(eventType, xpp, res)) 16464 return false; 16465 return true; 16466 } 16467 16468 protected TestScript.TestScriptMetadataLinkComponent parseTestScriptTestScriptMetadataLinkComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16469 TestScript.TestScriptMetadataLinkComponent res = new TestScript.TestScriptMetadataLinkComponent(); 16470 parseBackboneAttributes(xpp, res); 16471 next(xpp); 16472 int eventType = nextNoWhitespace(xpp); 16473 while (eventType != XmlPullParser.END_TAG) { 16474 if (!parseTestScriptTestScriptMetadataLinkComponentContent(eventType, xpp, owner, res)) 16475 unknownContent(xpp); 16476 eventType = nextNoWhitespace(xpp); 16477 } 16478 next(xpp); 16479 parseElementClose(res); 16480 return res; 16481 } 16482 16483 protected boolean parseTestScriptTestScriptMetadataLinkComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptMetadataLinkComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16484 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 16485 res.setUrlElement(parseUri(xpp)); 16486 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16487 res.setDescriptionElement(parseString(xpp)); 16488 } else if (!parseBackboneContent(eventType, xpp, res)) 16489 return false; 16490 return true; 16491 } 16492 16493 protected TestScript.TestScriptMetadataCapabilityComponent parseTestScriptTestScriptMetadataCapabilityComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16494 TestScript.TestScriptMetadataCapabilityComponent res = new TestScript.TestScriptMetadataCapabilityComponent(); 16495 parseBackboneAttributes(xpp, res); 16496 next(xpp); 16497 int eventType = nextNoWhitespace(xpp); 16498 while (eventType != XmlPullParser.END_TAG) { 16499 if (!parseTestScriptTestScriptMetadataCapabilityComponentContent(eventType, xpp, owner, res)) 16500 unknownContent(xpp); 16501 eventType = nextNoWhitespace(xpp); 16502 } 16503 next(xpp); 16504 parseElementClose(res); 16505 return res; 16506 } 16507 16508 protected boolean parseTestScriptTestScriptMetadataCapabilityComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptMetadataCapabilityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16509 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("required")) { 16510 res.setRequiredElement(parseBoolean(xpp)); 16511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validated")) { 16512 res.setValidatedElement(parseBoolean(xpp)); 16513 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16514 res.setDescriptionElement(parseString(xpp)); 16515 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 16516 res.getOrigin().add(parseInteger(xpp)); 16517 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 16518 res.setDestinationElement(parseInteger(xpp)); 16519 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("link")) { 16520 res.getLink().add(parseUri(xpp)); 16521 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("capabilities")) { 16522 res.setCapabilities(parseReference(xpp)); 16523 } else if (!parseBackboneContent(eventType, xpp, res)) 16524 return false; 16525 return true; 16526 } 16527 16528 protected TestScript.TestScriptFixtureComponent parseTestScriptTestScriptFixtureComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16529 TestScript.TestScriptFixtureComponent res = new TestScript.TestScriptFixtureComponent(); 16530 parseBackboneAttributes(xpp, res); 16531 next(xpp); 16532 int eventType = nextNoWhitespace(xpp); 16533 while (eventType != XmlPullParser.END_TAG) { 16534 if (!parseTestScriptTestScriptFixtureComponentContent(eventType, xpp, owner, res)) 16535 unknownContent(xpp); 16536 eventType = nextNoWhitespace(xpp); 16537 } 16538 next(xpp); 16539 parseElementClose(res); 16540 return res; 16541 } 16542 16543 protected boolean parseTestScriptTestScriptFixtureComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptFixtureComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16544 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autocreate")) { 16545 res.setAutocreateElement(parseBoolean(xpp)); 16546 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("autodelete")) { 16547 res.setAutodeleteElement(parseBoolean(xpp)); 16548 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16549 res.setResource(parseReference(xpp)); 16550 } else if (!parseBackboneContent(eventType, xpp, res)) 16551 return false; 16552 return true; 16553 } 16554 16555 protected TestScript.TestScriptVariableComponent parseTestScriptTestScriptVariableComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16556 TestScript.TestScriptVariableComponent res = new TestScript.TestScriptVariableComponent(); 16557 parseBackboneAttributes(xpp, res); 16558 next(xpp); 16559 int eventType = nextNoWhitespace(xpp); 16560 while (eventType != XmlPullParser.END_TAG) { 16561 if (!parseTestScriptTestScriptVariableComponentContent(eventType, xpp, owner, res)) 16562 unknownContent(xpp); 16563 eventType = nextNoWhitespace(xpp); 16564 } 16565 next(xpp); 16566 parseElementClose(res); 16567 return res; 16568 } 16569 16570 protected boolean parseTestScriptTestScriptVariableComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptVariableComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16571 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16572 res.setNameElement(parseString(xpp)); 16573 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("defaultValue")) { 16574 res.setDefaultValueElement(parseString(xpp)); 16575 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16576 res.setDescriptionElement(parseString(xpp)); 16577 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 16578 res.setExpressionElement(parseString(xpp)); 16579 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 16580 res.setHeaderFieldElement(parseString(xpp)); 16581 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("hint")) { 16582 res.setHintElement(parseString(xpp)); 16583 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 16584 res.setPathElement(parseString(xpp)); 16585 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 16586 res.setSourceIdElement(parseId(xpp)); 16587 } else if (!parseBackboneContent(eventType, xpp, res)) 16588 return false; 16589 return true; 16590 } 16591 16592 protected TestScript.TestScriptRuleComponent parseTestScriptTestScriptRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16593 TestScript.TestScriptRuleComponent res = new TestScript.TestScriptRuleComponent(); 16594 parseBackboneAttributes(xpp, res); 16595 next(xpp); 16596 int eventType = nextNoWhitespace(xpp); 16597 while (eventType != XmlPullParser.END_TAG) { 16598 if (!parseTestScriptTestScriptRuleComponentContent(eventType, xpp, owner, res)) 16599 unknownContent(xpp); 16600 eventType = nextNoWhitespace(xpp); 16601 } 16602 next(xpp); 16603 parseElementClose(res); 16604 return res; 16605 } 16606 16607 protected boolean parseTestScriptTestScriptRuleComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16608 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16609 res.setResource(parseReference(xpp)); 16610 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 16611 res.getParam().add(parseTestScriptRuleParamComponent(xpp, owner)); 16612 } else if (!parseBackboneContent(eventType, xpp, res)) 16613 return false; 16614 return true; 16615 } 16616 16617 protected TestScript.RuleParamComponent parseTestScriptRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16618 TestScript.RuleParamComponent res = new TestScript.RuleParamComponent(); 16619 parseBackboneAttributes(xpp, res); 16620 next(xpp); 16621 int eventType = nextNoWhitespace(xpp); 16622 while (eventType != XmlPullParser.END_TAG) { 16623 if (!parseTestScriptRuleParamComponentContent(eventType, xpp, owner, res)) 16624 unknownContent(xpp); 16625 eventType = nextNoWhitespace(xpp); 16626 } 16627 next(xpp); 16628 parseElementClose(res); 16629 return res; 16630 } 16631 16632 protected boolean parseTestScriptRuleParamComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.RuleParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16633 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16634 res.setNameElement(parseString(xpp)); 16635 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16636 res.setValueElement(parseString(xpp)); 16637 } else if (!parseBackboneContent(eventType, xpp, res)) 16638 return false; 16639 return true; 16640 } 16641 16642 protected TestScript.TestScriptRulesetComponent parseTestScriptTestScriptRulesetComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16643 TestScript.TestScriptRulesetComponent res = new TestScript.TestScriptRulesetComponent(); 16644 parseBackboneAttributes(xpp, res); 16645 next(xpp); 16646 int eventType = nextNoWhitespace(xpp); 16647 while (eventType != XmlPullParser.END_TAG) { 16648 if (!parseTestScriptTestScriptRulesetComponentContent(eventType, xpp, owner, res)) 16649 unknownContent(xpp); 16650 eventType = nextNoWhitespace(xpp); 16651 } 16652 next(xpp); 16653 parseElementClose(res); 16654 return res; 16655 } 16656 16657 protected boolean parseTestScriptTestScriptRulesetComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptRulesetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16658 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16659 res.setResource(parseReference(xpp)); 16660 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 16661 res.getRule().add(parseTestScriptRulesetRuleComponent(xpp, owner)); 16662 } else if (!parseBackboneContent(eventType, xpp, res)) 16663 return false; 16664 return true; 16665 } 16666 16667 protected TestScript.RulesetRuleComponent parseTestScriptRulesetRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16668 TestScript.RulesetRuleComponent res = new TestScript.RulesetRuleComponent(); 16669 parseBackboneAttributes(xpp, res); 16670 next(xpp); 16671 int eventType = nextNoWhitespace(xpp); 16672 while (eventType != XmlPullParser.END_TAG) { 16673 if (!parseTestScriptRulesetRuleComponentContent(eventType, xpp, owner, res)) 16674 unknownContent(xpp); 16675 eventType = nextNoWhitespace(xpp); 16676 } 16677 next(xpp); 16678 parseElementClose(res); 16679 return res; 16680 } 16681 16682 protected boolean parseTestScriptRulesetRuleComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.RulesetRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16683 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleId")) { 16684 res.setRuleIdElement(parseId(xpp)); 16685 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 16686 res.getParam().add(parseTestScriptRulesetRuleParamComponent(xpp, owner)); 16687 } else if (!parseBackboneContent(eventType, xpp, res)) 16688 return false; 16689 return true; 16690 } 16691 16692 protected TestScript.RulesetRuleParamComponent parseTestScriptRulesetRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16693 TestScript.RulesetRuleParamComponent res = new TestScript.RulesetRuleParamComponent(); 16694 parseBackboneAttributes(xpp, res); 16695 next(xpp); 16696 int eventType = nextNoWhitespace(xpp); 16697 while (eventType != XmlPullParser.END_TAG) { 16698 if (!parseTestScriptRulesetRuleParamComponentContent(eventType, xpp, owner, res)) 16699 unknownContent(xpp); 16700 eventType = nextNoWhitespace(xpp); 16701 } 16702 next(xpp); 16703 parseElementClose(res); 16704 return res; 16705 } 16706 16707 protected boolean parseTestScriptRulesetRuleParamComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.RulesetRuleParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16708 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16709 res.setNameElement(parseString(xpp)); 16710 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16711 res.setValueElement(parseString(xpp)); 16712 } else if (!parseBackboneContent(eventType, xpp, res)) 16713 return false; 16714 return true; 16715 } 16716 16717 protected TestScript.TestScriptSetupComponent parseTestScriptTestScriptSetupComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16718 TestScript.TestScriptSetupComponent res = new TestScript.TestScriptSetupComponent(); 16719 parseBackboneAttributes(xpp, res); 16720 next(xpp); 16721 int eventType = nextNoWhitespace(xpp); 16722 while (eventType != XmlPullParser.END_TAG) { 16723 if (!parseTestScriptTestScriptSetupComponentContent(eventType, xpp, owner, res)) 16724 unknownContent(xpp); 16725 eventType = nextNoWhitespace(xpp); 16726 } 16727 next(xpp); 16728 parseElementClose(res); 16729 return res; 16730 } 16731 16732 protected boolean parseTestScriptTestScriptSetupComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptSetupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16733 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 16734 res.getAction().add(parseTestScriptSetupActionComponent(xpp, owner)); 16735 } else if (!parseBackboneContent(eventType, xpp, res)) 16736 return false; 16737 return true; 16738 } 16739 16740 protected TestScript.SetupActionComponent parseTestScriptSetupActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16741 TestScript.SetupActionComponent res = new TestScript.SetupActionComponent(); 16742 parseBackboneAttributes(xpp, res); 16743 next(xpp); 16744 int eventType = nextNoWhitespace(xpp); 16745 while (eventType != XmlPullParser.END_TAG) { 16746 if (!parseTestScriptSetupActionComponentContent(eventType, xpp, owner, res)) 16747 unknownContent(xpp); 16748 eventType = nextNoWhitespace(xpp); 16749 } 16750 next(xpp); 16751 parseElementClose(res); 16752 return res; 16753 } 16754 16755 protected boolean parseTestScriptSetupActionComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.SetupActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16756 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 16757 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp, owner)); 16758 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 16759 res.setAssert(parseTestScriptSetupActionAssertComponent(xpp, owner)); 16760 } else if (!parseBackboneContent(eventType, xpp, res)) 16761 return false; 16762 return true; 16763 } 16764 16765 protected TestScript.SetupActionOperationComponent parseTestScriptSetupActionOperationComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16766 TestScript.SetupActionOperationComponent res = new TestScript.SetupActionOperationComponent(); 16767 parseBackboneAttributes(xpp, res); 16768 next(xpp); 16769 int eventType = nextNoWhitespace(xpp); 16770 while (eventType != XmlPullParser.END_TAG) { 16771 if (!parseTestScriptSetupActionOperationComponentContent(eventType, xpp, owner, res)) 16772 unknownContent(xpp); 16773 eventType = nextNoWhitespace(xpp); 16774 } 16775 next(xpp); 16776 parseElementClose(res); 16777 return res; 16778 } 16779 16780 protected boolean parseTestScriptSetupActionOperationComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.SetupActionOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16781 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { 16782 res.setType(parseCoding(xpp)); 16783 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16784 res.setResourceElement(parseCode(xpp)); 16785 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 16786 res.setLabelElement(parseString(xpp)); 16787 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16788 res.setDescriptionElement(parseString(xpp)); 16789 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("accept")) { 16790 res.setAcceptElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 16791 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 16792 res.setContentTypeElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 16793 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("destination")) { 16794 res.setDestinationElement(parseInteger(xpp)); 16795 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encodeRequestUrl")) { 16796 res.setEncodeRequestUrlElement(parseBoolean(xpp)); 16797 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("origin")) { 16798 res.setOriginElement(parseInteger(xpp)); 16799 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("params")) { 16800 res.setParamsElement(parseString(xpp)); 16801 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestHeader")) { 16802 res.getRequestHeader().add(parseTestScriptSetupActionOperationRequestHeaderComponent(xpp, owner)); 16803 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestId")) { 16804 res.setRequestIdElement(parseId(xpp)); 16805 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseId")) { 16806 res.setResponseIdElement(parseId(xpp)); 16807 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 16808 res.setSourceIdElement(parseId(xpp)); 16809 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetId")) { 16810 res.setTargetIdElement(parseId(xpp)); 16811 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 16812 res.setUrlElement(parseString(xpp)); 16813 } else if (!parseBackboneContent(eventType, xpp, res)) 16814 return false; 16815 return true; 16816 } 16817 16818 protected TestScript.SetupActionOperationRequestHeaderComponent parseTestScriptSetupActionOperationRequestHeaderComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16819 TestScript.SetupActionOperationRequestHeaderComponent res = new TestScript.SetupActionOperationRequestHeaderComponent(); 16820 parseBackboneAttributes(xpp, res); 16821 next(xpp); 16822 int eventType = nextNoWhitespace(xpp); 16823 while (eventType != XmlPullParser.END_TAG) { 16824 if (!parseTestScriptSetupActionOperationRequestHeaderComponentContent(eventType, xpp, owner, res)) 16825 unknownContent(xpp); 16826 eventType = nextNoWhitespace(xpp); 16827 } 16828 next(xpp); 16829 parseElementClose(res); 16830 return res; 16831 } 16832 16833 protected boolean parseTestScriptSetupActionOperationRequestHeaderComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.SetupActionOperationRequestHeaderComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16834 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("field")) { 16835 res.setFieldElement(parseString(xpp)); 16836 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16837 res.setValueElement(parseString(xpp)); 16838 } else if (!parseBackboneContent(eventType, xpp, res)) 16839 return false; 16840 return true; 16841 } 16842 16843 protected TestScript.SetupActionAssertComponent parseTestScriptSetupActionAssertComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16844 TestScript.SetupActionAssertComponent res = new TestScript.SetupActionAssertComponent(); 16845 parseBackboneAttributes(xpp, res); 16846 next(xpp); 16847 int eventType = nextNoWhitespace(xpp); 16848 while (eventType != XmlPullParser.END_TAG) { 16849 if (!parseTestScriptSetupActionAssertComponentContent(eventType, xpp, owner, res)) 16850 unknownContent(xpp); 16851 eventType = nextNoWhitespace(xpp); 16852 } 16853 next(xpp); 16854 parseElementClose(res); 16855 return res; 16856 } 16857 16858 protected boolean parseTestScriptSetupActionAssertComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.SetupActionAssertComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16859 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("label")) { 16860 res.setLabelElement(parseString(xpp)); 16861 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 16862 res.setDescriptionElement(parseString(xpp)); 16863 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("direction")) { 16864 res.setDirectionElement(parseEnumeration(xpp, TestScript.AssertionDirectionType.NULL, new TestScript.AssertionDirectionTypeEnumFactory())); 16865 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourceId")) { 16866 res.setCompareToSourceIdElement(parseString(xpp)); 16867 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourceExpression")) { 16868 res.setCompareToSourceExpressionElement(parseString(xpp)); 16869 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compareToSourcePath")) { 16870 res.setCompareToSourcePathElement(parseString(xpp)); 16871 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { 16872 res.setContentTypeElement(parseEnumeration(xpp, TestScript.ContentType.NULL, new TestScript.ContentTypeEnumFactory())); 16873 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expression")) { 16874 res.setExpressionElement(parseString(xpp)); 16875 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("headerField")) { 16876 res.setHeaderFieldElement(parseString(xpp)); 16877 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("minimumId")) { 16878 res.setMinimumIdElement(parseString(xpp)); 16879 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("navigationLinks")) { 16880 res.setNavigationLinksElement(parseBoolean(xpp)); 16881 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operator")) { 16882 res.setOperatorElement(parseEnumeration(xpp, TestScript.AssertionOperatorType.NULL, new TestScript.AssertionOperatorTypeEnumFactory())); 16883 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("path")) { 16884 res.setPathElement(parseString(xpp)); 16885 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestMethod")) { 16886 res.setRequestMethodElement(parseEnumeration(xpp, TestScript.TestScriptRequestMethodCode.NULL, new TestScript.TestScriptRequestMethodCodeEnumFactory())); 16887 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requestURL")) { 16888 res.setRequestURLElement(parseString(xpp)); 16889 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resource")) { 16890 res.setResourceElement(parseCode(xpp)); 16891 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("response")) { 16892 res.setResponseElement(parseEnumeration(xpp, TestScript.AssertionResponseTypes.NULL, new TestScript.AssertionResponseTypesEnumFactory())); 16893 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("responseCode")) { 16894 res.setResponseCodeElement(parseString(xpp)); 16895 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 16896 res.setRule(parseTestScriptActionAssertRuleComponent(xpp, owner)); 16897 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleset")) { 16898 res.setRuleset(parseTestScriptActionAssertRulesetComponent(xpp, owner)); 16899 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceId")) { 16900 res.setSourceIdElement(parseId(xpp)); 16901 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validateProfileId")) { 16902 res.setValidateProfileIdElement(parseId(xpp)); 16903 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16904 res.setValueElement(parseString(xpp)); 16905 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("warningOnly")) { 16906 res.setWarningOnlyElement(parseBoolean(xpp)); 16907 } else if (!parseBackboneContent(eventType, xpp, res)) 16908 return false; 16909 return true; 16910 } 16911 16912 protected TestScript.ActionAssertRuleComponent parseTestScriptActionAssertRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16913 TestScript.ActionAssertRuleComponent res = new TestScript.ActionAssertRuleComponent(); 16914 parseBackboneAttributes(xpp, res); 16915 next(xpp); 16916 int eventType = nextNoWhitespace(xpp); 16917 while (eventType != XmlPullParser.END_TAG) { 16918 if (!parseTestScriptActionAssertRuleComponentContent(eventType, xpp, owner, res)) 16919 unknownContent(xpp); 16920 eventType = nextNoWhitespace(xpp); 16921 } 16922 next(xpp); 16923 parseElementClose(res); 16924 return res; 16925 } 16926 16927 protected boolean parseTestScriptActionAssertRuleComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16928 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleId")) { 16929 res.setRuleIdElement(parseId(xpp)); 16930 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 16931 res.getParam().add(parseTestScriptActionAssertRuleParamComponent(xpp, owner)); 16932 } else if (!parseBackboneContent(eventType, xpp, res)) 16933 return false; 16934 return true; 16935 } 16936 16937 protected TestScript.ActionAssertRuleParamComponent parseTestScriptActionAssertRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16938 TestScript.ActionAssertRuleParamComponent res = new TestScript.ActionAssertRuleParamComponent(); 16939 parseBackboneAttributes(xpp, res); 16940 next(xpp); 16941 int eventType = nextNoWhitespace(xpp); 16942 while (eventType != XmlPullParser.END_TAG) { 16943 if (!parseTestScriptActionAssertRuleParamComponentContent(eventType, xpp, owner, res)) 16944 unknownContent(xpp); 16945 eventType = nextNoWhitespace(xpp); 16946 } 16947 next(xpp); 16948 parseElementClose(res); 16949 return res; 16950 } 16951 16952 protected boolean parseTestScriptActionAssertRuleParamComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRuleParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16953 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 16954 res.setNameElement(parseString(xpp)); 16955 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 16956 res.setValueElement(parseString(xpp)); 16957 } else if (!parseBackboneContent(eventType, xpp, res)) 16958 return false; 16959 return true; 16960 } 16961 16962 protected TestScript.ActionAssertRulesetComponent parseTestScriptActionAssertRulesetComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16963 TestScript.ActionAssertRulesetComponent res = new TestScript.ActionAssertRulesetComponent(); 16964 parseBackboneAttributes(xpp, res); 16965 next(xpp); 16966 int eventType = nextNoWhitespace(xpp); 16967 while (eventType != XmlPullParser.END_TAG) { 16968 if (!parseTestScriptActionAssertRulesetComponentContent(eventType, xpp, owner, res)) 16969 unknownContent(xpp); 16970 eventType = nextNoWhitespace(xpp); 16971 } 16972 next(xpp); 16973 parseElementClose(res); 16974 return res; 16975 } 16976 16977 protected boolean parseTestScriptActionAssertRulesetComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRulesetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 16978 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rulesetId")) { 16979 res.setRulesetIdElement(parseId(xpp)); 16980 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("rule")) { 16981 res.getRule().add(parseTestScriptActionAssertRulesetRuleComponent(xpp, owner)); 16982 } else if (!parseBackboneContent(eventType, xpp, res)) 16983 return false; 16984 return true; 16985 } 16986 16987 protected TestScript.ActionAssertRulesetRuleComponent parseTestScriptActionAssertRulesetRuleComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 16988 TestScript.ActionAssertRulesetRuleComponent res = new TestScript.ActionAssertRulesetRuleComponent(); 16989 parseBackboneAttributes(xpp, res); 16990 next(xpp); 16991 int eventType = nextNoWhitespace(xpp); 16992 while (eventType != XmlPullParser.END_TAG) { 16993 if (!parseTestScriptActionAssertRulesetRuleComponentContent(eventType, xpp, owner, res)) 16994 unknownContent(xpp); 16995 eventType = nextNoWhitespace(xpp); 16996 } 16997 next(xpp); 16998 parseElementClose(res); 16999 return res; 17000 } 17001 17002 protected boolean parseTestScriptActionAssertRulesetRuleComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRulesetRuleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17003 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ruleId")) { 17004 res.setRuleIdElement(parseId(xpp)); 17005 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("param")) { 17006 res.getParam().add(parseTestScriptActionAssertRulesetRuleParamComponent(xpp, owner)); 17007 } else if (!parseBackboneContent(eventType, xpp, res)) 17008 return false; 17009 return true; 17010 } 17011 17012 protected TestScript.ActionAssertRulesetRuleParamComponent parseTestScriptActionAssertRulesetRuleParamComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17013 TestScript.ActionAssertRulesetRuleParamComponent res = new TestScript.ActionAssertRulesetRuleParamComponent(); 17014 parseBackboneAttributes(xpp, res); 17015 next(xpp); 17016 int eventType = nextNoWhitespace(xpp); 17017 while (eventType != XmlPullParser.END_TAG) { 17018 if (!parseTestScriptActionAssertRulesetRuleParamComponentContent(eventType, xpp, owner, res)) 17019 unknownContent(xpp); 17020 eventType = nextNoWhitespace(xpp); 17021 } 17022 next(xpp); 17023 parseElementClose(res); 17024 return res; 17025 } 17026 17027 protected boolean parseTestScriptActionAssertRulesetRuleParamComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.ActionAssertRulesetRuleParamComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17028 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17029 res.setNameElement(parseString(xpp)); 17030 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 17031 res.setValueElement(parseString(xpp)); 17032 } else if (!parseBackboneContent(eventType, xpp, res)) 17033 return false; 17034 return true; 17035 } 17036 17037 protected TestScript.TestScriptTestComponent parseTestScriptTestScriptTestComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17038 TestScript.TestScriptTestComponent res = new TestScript.TestScriptTestComponent(); 17039 parseBackboneAttributes(xpp, res); 17040 next(xpp); 17041 int eventType = nextNoWhitespace(xpp); 17042 while (eventType != XmlPullParser.END_TAG) { 17043 if (!parseTestScriptTestScriptTestComponentContent(eventType, xpp, owner, res)) 17044 unknownContent(xpp); 17045 eventType = nextNoWhitespace(xpp); 17046 } 17047 next(xpp); 17048 parseElementClose(res); 17049 return res; 17050 } 17051 17052 protected boolean parseTestScriptTestScriptTestComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptTestComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17053 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17054 res.setNameElement(parseString(xpp)); 17055 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 17056 res.setDescriptionElement(parseString(xpp)); 17057 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 17058 res.getAction().add(parseTestScriptTestActionComponent(xpp, owner)); 17059 } else if (!parseBackboneContent(eventType, xpp, res)) 17060 return false; 17061 return true; 17062 } 17063 17064 protected TestScript.TestActionComponent parseTestScriptTestActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17065 TestScript.TestActionComponent res = new TestScript.TestActionComponent(); 17066 parseBackboneAttributes(xpp, res); 17067 next(xpp); 17068 int eventType = nextNoWhitespace(xpp); 17069 while (eventType != XmlPullParser.END_TAG) { 17070 if (!parseTestScriptTestActionComponentContent(eventType, xpp, owner, res)) 17071 unknownContent(xpp); 17072 eventType = nextNoWhitespace(xpp); 17073 } 17074 next(xpp); 17075 parseElementClose(res); 17076 return res; 17077 } 17078 17079 protected boolean parseTestScriptTestActionComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17080 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 17081 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp, owner)); 17082 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assert")) { 17083 res.setAssert(parseTestScriptSetupActionAssertComponent(xpp, owner)); 17084 } else if (!parseBackboneContent(eventType, xpp, res)) 17085 return false; 17086 return true; 17087 } 17088 17089 protected TestScript.TestScriptTeardownComponent parseTestScriptTestScriptTeardownComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17090 TestScript.TestScriptTeardownComponent res = new TestScript.TestScriptTeardownComponent(); 17091 parseBackboneAttributes(xpp, res); 17092 next(xpp); 17093 int eventType = nextNoWhitespace(xpp); 17094 while (eventType != XmlPullParser.END_TAG) { 17095 if (!parseTestScriptTestScriptTeardownComponentContent(eventType, xpp, owner, res)) 17096 unknownContent(xpp); 17097 eventType = nextNoWhitespace(xpp); 17098 } 17099 next(xpp); 17100 parseElementClose(res); 17101 return res; 17102 } 17103 17104 protected boolean parseTestScriptTestScriptTeardownComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TestScriptTeardownComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17105 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("action")) { 17106 res.getAction().add(parseTestScriptTeardownActionComponent(xpp, owner)); 17107 } else if (!parseBackboneContent(eventType, xpp, res)) 17108 return false; 17109 return true; 17110 } 17111 17112 protected TestScript.TeardownActionComponent parseTestScriptTeardownActionComponent(XmlPullParser xpp, TestScript owner) throws XmlPullParserException, IOException, FHIRFormatError { 17113 TestScript.TeardownActionComponent res = new TestScript.TeardownActionComponent(); 17114 parseBackboneAttributes(xpp, res); 17115 next(xpp); 17116 int eventType = nextNoWhitespace(xpp); 17117 while (eventType != XmlPullParser.END_TAG) { 17118 if (!parseTestScriptTeardownActionComponentContent(eventType, xpp, owner, res)) 17119 unknownContent(xpp); 17120 eventType = nextNoWhitespace(xpp); 17121 } 17122 next(xpp); 17123 parseElementClose(res); 17124 return res; 17125 } 17126 17127 protected boolean parseTestScriptTeardownActionComponentContent(int eventType, XmlPullParser xpp, TestScript owner, TestScript.TeardownActionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17128 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operation")) { 17129 res.setOperation(parseTestScriptSetupActionOperationComponent(xpp, owner)); 17130 } else if (!parseBackboneContent(eventType, xpp, res)) 17131 return false; 17132 return true; 17133 } 17134 17135 protected ValueSet parseValueSet(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17136 ValueSet res = new ValueSet(); 17137 parseDomainResourceAttributes(xpp, res); 17138 next(xpp); 17139 int eventType = nextNoWhitespace(xpp); 17140 while (eventType != XmlPullParser.END_TAG) { 17141 if (!parseValueSetContent(eventType, xpp, res)) 17142 unknownContent(xpp); 17143 eventType = nextNoWhitespace(xpp); 17144 } 17145 next(xpp); 17146 parseElementClose(res); 17147 return res; 17148 } 17149 17150 protected boolean parseValueSetContent(int eventType, XmlPullParser xpp, ValueSet res) throws XmlPullParserException, IOException, FHIRFormatError { 17151 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { 17152 res.setUrlElement(parseUri(xpp)); 17153 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17154 res.getIdentifier().add(parseIdentifier(xpp)); 17155 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 17156 res.setVersionElement(parseString(xpp)); 17157 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17158 res.setNameElement(parseString(xpp)); 17159 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { 17160 res.setTitleElement(parseString(xpp)); 17161 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17162 res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); 17163 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { 17164 res.setExperimentalElement(parseBoolean(xpp)); 17165 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { 17166 res.setDateElement(parseDateTime(xpp)); 17167 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { 17168 res.setPublisherElement(parseString(xpp)); 17169 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { 17170 res.getContact().add(parseContactDetail(xpp)); 17171 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { 17172 res.setDescriptionElement(parseMarkdown(xpp)); 17173 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { 17174 res.getUseContext().add(parseUsageContext(xpp)); 17175 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { 17176 res.getJurisdiction().add(parseCodeableConcept(xpp)); 17177 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("immutable")) { 17178 res.setImmutableElement(parseBoolean(xpp)); 17179 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { 17180 res.setPurposeElement(parseMarkdown(xpp)); 17181 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { 17182 res.setCopyrightElement(parseMarkdown(xpp)); 17183 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("extensible")) { 17184 res.setExtensibleElement(parseBoolean(xpp)); 17185 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("compose")) { 17186 res.setCompose(parseValueSetValueSetComposeComponent(xpp, res)); 17187 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expansion")) { 17188 res.setExpansion(parseValueSetValueSetExpansionComponent(xpp, res)); 17189 } else if (!parseDomainResourceContent(eventType, xpp, res)) 17190 return false; 17191 return true; 17192 } 17193 17194 protected ValueSet.ValueSetComposeComponent parseValueSetValueSetComposeComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17195 ValueSet.ValueSetComposeComponent res = new ValueSet.ValueSetComposeComponent(); 17196 parseBackboneAttributes(xpp, res); 17197 next(xpp); 17198 int eventType = nextNoWhitespace(xpp); 17199 while (eventType != XmlPullParser.END_TAG) { 17200 if (!parseValueSetValueSetComposeComponentContent(eventType, xpp, owner, res)) 17201 unknownContent(xpp); 17202 eventType = nextNoWhitespace(xpp); 17203 } 17204 next(xpp); 17205 parseElementClose(res); 17206 return res; 17207 } 17208 17209 protected boolean parseValueSetValueSetComposeComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ValueSetComposeComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17210 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lockedDate")) { 17211 res.setLockedDateElement(parseDate(xpp)); 17212 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 17213 res.setInactiveElement(parseBoolean(xpp)); 17214 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("include")) { 17215 res.getInclude().add(parseValueSetConceptSetComponent(xpp, owner)); 17216 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { 17217 res.getExclude().add(parseValueSetConceptSetComponent(xpp, owner)); 17218 } else if (!parseBackboneContent(eventType, xpp, res)) 17219 return false; 17220 return true; 17221 } 17222 17223 protected ValueSet.ConceptSetComponent parseValueSetConceptSetComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17224 ValueSet.ConceptSetComponent res = new ValueSet.ConceptSetComponent(); 17225 parseBackboneAttributes(xpp, res); 17226 next(xpp); 17227 int eventType = nextNoWhitespace(xpp); 17228 while (eventType != XmlPullParser.END_TAG) { 17229 if (!parseValueSetConceptSetComponentContent(eventType, xpp, owner, res)) 17230 unknownContent(xpp); 17231 eventType = nextNoWhitespace(xpp); 17232 } 17233 next(xpp); 17234 parseElementClose(res); 17235 return res; 17236 } 17237 17238 protected boolean parseValueSetConceptSetComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ConceptSetComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17239 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 17240 res.setSystemElement(parseUri(xpp)); 17241 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 17242 res.setVersionElement(parseString(xpp)); 17243 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concept")) { 17244 res.getConcept().add(parseValueSetConceptReferenceComponent(xpp, owner)); 17245 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("filter")) { 17246 res.getFilter().add(parseValueSetConceptSetFilterComponent(xpp, owner)); 17247 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("valueSet")) { 17248 res.getValueSet().add(parseUri(xpp)); 17249 } else if (!parseBackboneContent(eventType, xpp, res)) 17250 return false; 17251 return true; 17252 } 17253 17254 protected ValueSet.ConceptReferenceComponent parseValueSetConceptReferenceComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17255 ValueSet.ConceptReferenceComponent res = new ValueSet.ConceptReferenceComponent(); 17256 parseBackboneAttributes(xpp, res); 17257 next(xpp); 17258 int eventType = nextNoWhitespace(xpp); 17259 while (eventType != XmlPullParser.END_TAG) { 17260 if (!parseValueSetConceptReferenceComponentContent(eventType, xpp, owner, res)) 17261 unknownContent(xpp); 17262 eventType = nextNoWhitespace(xpp); 17263 } 17264 next(xpp); 17265 parseElementClose(res); 17266 return res; 17267 } 17268 17269 protected boolean parseValueSetConceptReferenceComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ConceptReferenceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17270 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 17271 res.setCodeElement(parseCode(xpp)); 17272 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 17273 res.setDisplayElement(parseString(xpp)); 17274 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 17275 res.getDesignation().add(parseValueSetConceptReferenceDesignationComponent(xpp, owner)); 17276 } else if (!parseBackboneContent(eventType, xpp, res)) 17277 return false; 17278 return true; 17279 } 17280 17281 protected ValueSet.ConceptReferenceDesignationComponent parseValueSetConceptReferenceDesignationComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17282 ValueSet.ConceptReferenceDesignationComponent res = new ValueSet.ConceptReferenceDesignationComponent(); 17283 parseBackboneAttributes(xpp, res); 17284 next(xpp); 17285 int eventType = nextNoWhitespace(xpp); 17286 while (eventType != XmlPullParser.END_TAG) { 17287 if (!parseValueSetConceptReferenceDesignationComponentContent(eventType, xpp, owner, res)) 17288 unknownContent(xpp); 17289 eventType = nextNoWhitespace(xpp); 17290 } 17291 next(xpp); 17292 parseElementClose(res); 17293 return res; 17294 } 17295 17296 protected boolean parseValueSetConceptReferenceDesignationComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ConceptReferenceDesignationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17297 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { 17298 res.setLanguageElement(parseCode(xpp)); 17299 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("use")) { 17300 res.setUse(parseCoding(xpp)); 17301 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 17302 res.setValueElement(parseString(xpp)); 17303 } else if (!parseBackboneContent(eventType, xpp, res)) 17304 return false; 17305 return true; 17306 } 17307 17308 protected ValueSet.ConceptSetFilterComponent parseValueSetConceptSetFilterComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17309 ValueSet.ConceptSetFilterComponent res = new ValueSet.ConceptSetFilterComponent(); 17310 parseBackboneAttributes(xpp, res); 17311 next(xpp); 17312 int eventType = nextNoWhitespace(xpp); 17313 while (eventType != XmlPullParser.END_TAG) { 17314 if (!parseValueSetConceptSetFilterComponentContent(eventType, xpp, owner, res)) 17315 unknownContent(xpp); 17316 eventType = nextNoWhitespace(xpp); 17317 } 17318 next(xpp); 17319 parseElementClose(res); 17320 return res; 17321 } 17322 17323 protected boolean parseValueSetConceptSetFilterComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ConceptSetFilterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17324 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { 17325 res.setPropertyElement(parseCode(xpp)); 17326 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("op")) { 17327 res.setOpElement(parseEnumeration(xpp, ValueSet.FilterOperator.NULL, new ValueSet.FilterOperatorEnumFactory())); 17328 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { 17329 res.setValueElement(parseCode(xpp)); 17330 } else if (!parseBackboneContent(eventType, xpp, res)) 17331 return false; 17332 return true; 17333 } 17334 17335 protected ValueSet.ValueSetExpansionComponent parseValueSetValueSetExpansionComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17336 ValueSet.ValueSetExpansionComponent res = new ValueSet.ValueSetExpansionComponent(); 17337 parseBackboneAttributes(xpp, res); 17338 next(xpp); 17339 int eventType = nextNoWhitespace(xpp); 17340 while (eventType != XmlPullParser.END_TAG) { 17341 if (!parseValueSetValueSetExpansionComponentContent(eventType, xpp, owner, res)) 17342 unknownContent(xpp); 17343 eventType = nextNoWhitespace(xpp); 17344 } 17345 next(xpp); 17346 parseElementClose(res); 17347 return res; 17348 } 17349 17350 protected boolean parseValueSetValueSetExpansionComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ValueSetExpansionComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17351 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17352 res.setIdentifierElement(parseUri(xpp)); 17353 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timestamp")) { 17354 res.setTimestampElement(parseDateTime(xpp)); 17355 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("total")) { 17356 res.setTotalElement(parseInteger(xpp)); 17357 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("offset")) { 17358 res.setOffsetElement(parseInteger(xpp)); 17359 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { 17360 res.getParameter().add(parseValueSetValueSetExpansionParameterComponent(xpp, owner)); 17361 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 17362 res.getContains().add(parseValueSetValueSetExpansionContainsComponent(xpp, owner)); 17363 } else if (!parseBackboneContent(eventType, xpp, res)) 17364 return false; 17365 return true; 17366 } 17367 17368 protected ValueSet.ValueSetExpansionParameterComponent parseValueSetValueSetExpansionParameterComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17369 ValueSet.ValueSetExpansionParameterComponent res = new ValueSet.ValueSetExpansionParameterComponent(); 17370 parseBackboneAttributes(xpp, res); 17371 next(xpp); 17372 int eventType = nextNoWhitespace(xpp); 17373 while (eventType != XmlPullParser.END_TAG) { 17374 if (!parseValueSetValueSetExpansionParameterComponentContent(eventType, xpp, owner, res)) 17375 unknownContent(xpp); 17376 eventType = nextNoWhitespace(xpp); 17377 } 17378 next(xpp); 17379 parseElementClose(res); 17380 return res; 17381 } 17382 17383 protected boolean parseValueSetValueSetExpansionParameterComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ValueSetExpansionParameterComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17384 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { 17385 res.setNameElement(parseString(xpp)); 17386 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { 17387 res.setValue(parseType("value", xpp)); 17388 } else if (!parseBackboneContent(eventType, xpp, res)) 17389 return false; 17390 return true; 17391 } 17392 17393 protected ValueSet.ValueSetExpansionContainsComponent parseValueSetValueSetExpansionContainsComponent(XmlPullParser xpp, ValueSet owner) throws XmlPullParserException, IOException, FHIRFormatError { 17394 ValueSet.ValueSetExpansionContainsComponent res = new ValueSet.ValueSetExpansionContainsComponent(); 17395 parseBackboneAttributes(xpp, res); 17396 next(xpp); 17397 int eventType = nextNoWhitespace(xpp); 17398 while (eventType != XmlPullParser.END_TAG) { 17399 if (!parseValueSetValueSetExpansionContainsComponentContent(eventType, xpp, owner, res)) 17400 unknownContent(xpp); 17401 eventType = nextNoWhitespace(xpp); 17402 } 17403 next(xpp); 17404 parseElementClose(res); 17405 return res; 17406 } 17407 17408 protected boolean parseValueSetValueSetExpansionContainsComponentContent(int eventType, XmlPullParser xpp, ValueSet owner, ValueSet.ValueSetExpansionContainsComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17409 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("system")) { 17410 res.setSystemElement(parseUri(xpp)); 17411 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { 17412 res.setAbstractElement(parseBoolean(xpp)); 17413 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("inactive")) { 17414 res.setInactiveElement(parseBoolean(xpp)); 17415 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { 17416 res.setVersionElement(parseString(xpp)); 17417 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { 17418 res.setCodeElement(parseCode(xpp)); 17419 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("display")) { 17420 res.setDisplayElement(parseString(xpp)); 17421 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("designation")) { 17422 res.getDesignation().add(parseValueSetConceptReferenceDesignationComponent(xpp, owner)); 17423 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contains")) { 17424 res.getContains().add(parseValueSetValueSetExpansionContainsComponent(xpp, owner)); 17425 } else if (!parseBackboneContent(eventType, xpp, res)) 17426 return false; 17427 return true; 17428 } 17429 17430 protected VisionPrescription parseVisionPrescription(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17431 VisionPrescription res = new VisionPrescription(); 17432 parseDomainResourceAttributes(xpp, res); 17433 next(xpp); 17434 int eventType = nextNoWhitespace(xpp); 17435 while (eventType != XmlPullParser.END_TAG) { 17436 if (!parseVisionPrescriptionContent(eventType, xpp, res)) 17437 unknownContent(xpp); 17438 eventType = nextNoWhitespace(xpp); 17439 } 17440 next(xpp); 17441 parseElementClose(res); 17442 return res; 17443 } 17444 17445 protected boolean parseVisionPrescriptionContent(int eventType, XmlPullParser xpp, VisionPrescription res) throws XmlPullParserException, IOException, FHIRFormatError { 17446 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { 17447 res.getIdentifier().add(parseIdentifier(xpp)); 17448 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { 17449 res.setStatusElement(parseEnumeration(xpp, VisionPrescription.VisionStatus.NULL, new VisionPrescription.VisionStatusEnumFactory())); 17450 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { 17451 res.setPatient(parseReference(xpp)); 17452 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { 17453 res.setEncounter(parseReference(xpp)); 17454 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateWritten")) { 17455 res.setDateWrittenElement(parseDateTime(xpp)); 17456 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prescriber")) { 17457 res.setPrescriber(parseReference(xpp)); 17458 } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reason")) { 17459 res.setReason(parseType("reason", xpp)); 17460 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dispense")) { 17461 res.getDispense().add(parseVisionPrescriptionVisionPrescriptionDispenseComponent(xpp, res)); 17462 } else if (!parseDomainResourceContent(eventType, xpp, res)) 17463 return false; 17464 return true; 17465 } 17466 17467 protected VisionPrescription.VisionPrescriptionDispenseComponent parseVisionPrescriptionVisionPrescriptionDispenseComponent(XmlPullParser xpp, VisionPrescription owner) throws XmlPullParserException, IOException, FHIRFormatError { 17468 VisionPrescription.VisionPrescriptionDispenseComponent res = new VisionPrescription.VisionPrescriptionDispenseComponent(); 17469 parseBackboneAttributes(xpp, res); 17470 next(xpp); 17471 int eventType = nextNoWhitespace(xpp); 17472 while (eventType != XmlPullParser.END_TAG) { 17473 if (!parseVisionPrescriptionVisionPrescriptionDispenseComponentContent(eventType, xpp, owner, res)) 17474 unknownContent(xpp); 17475 eventType = nextNoWhitespace(xpp); 17476 } 17477 next(xpp); 17478 parseElementClose(res); 17479 return res; 17480 } 17481 17482 protected boolean parseVisionPrescriptionVisionPrescriptionDispenseComponentContent(int eventType, XmlPullParser xpp, VisionPrescription owner, VisionPrescription.VisionPrescriptionDispenseComponent res) throws XmlPullParserException, IOException, FHIRFormatError { 17483 if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("product")) { 17484 res.setProduct(parseCodeableConcept(xpp)); 17485 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eye")) { 17486 res.setEyeElement(parseEnumeration(xpp, VisionPrescription.VisionEyes.NULL, new VisionPrescription.VisionEyesEnumFactory())); 17487 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sphere")) { 17488 res.setSphereElement(parseDecimal(xpp)); 17489 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("cylinder")) { 17490 res.setCylinderElement(parseDecimal(xpp)); 17491 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("axis")) { 17492 res.setAxisElement(parseInteger(xpp)); 17493 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("prism")) { 17494 res.setPrismElement(parseDecimal(xpp)); 17495 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("base")) { 17496 res.setBaseElement(parseEnumeration(xpp, VisionPrescription.VisionBase.NULL, new VisionPrescription.VisionBaseEnumFactory())); 17497 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("add")) { 17498 res.setAddElement(parseDecimal(xpp)); 17499 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("power")) { 17500 res.setPowerElement(parseDecimal(xpp)); 17501 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("backCurve")) { 17502 res.setBackCurveElement(parseDecimal(xpp)); 17503 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("diameter")) { 17504 res.setDiameterElement(parseDecimal(xpp)); 17505 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("duration")) { 17506 res.setDuration(parseSimpleQuantity(xpp)); 17507 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("color")) { 17508 res.setColorElement(parseString(xpp)); 17509 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("brand")) { 17510 res.setBrandElement(parseString(xpp)); 17511 } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { 17512 res.getNote().add(parseAnnotation(xpp)); 17513 } else if (!parseBackboneContent(eventType, xpp, res)) 17514 return false; 17515 return true; 17516 } 17517 17518 @Override 17519 protected Resource parseResource(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17520 if (xpp.getName().equals("Parameters")) 17521 return parseParameters(xpp); 17522 else if (xpp.getName().equals("Account")) 17523 return parseAccount(xpp); 17524 else if (xpp.getName().equals("ActivityDefinition")) 17525 return parseActivityDefinition(xpp); 17526 else if (xpp.getName().equals("AdverseEvent")) 17527 return parseAdverseEvent(xpp); 17528 else if (xpp.getName().equals("AllergyIntolerance")) 17529 return parseAllergyIntolerance(xpp); 17530 else if (xpp.getName().equals("Appointment")) 17531 return parseAppointment(xpp); 17532 else if (xpp.getName().equals("AppointmentResponse")) 17533 return parseAppointmentResponse(xpp); 17534 else if (xpp.getName().equals("AuditEvent")) 17535 return parseAuditEvent(xpp); 17536 else if (xpp.getName().equals("Basic")) 17537 return parseBasic(xpp); 17538 else if (xpp.getName().equals("Binary")) 17539 return parseBinary(xpp); 17540 else if (xpp.getName().equals("BodySite")) 17541 return parseBodySite(xpp); 17542 else if (xpp.getName().equals("Bundle")) 17543 return parseBundle(xpp); 17544 else if (xpp.getName().equals("CapabilityStatement")) 17545 return parseCapabilityStatement(xpp); 17546 else if (xpp.getName().equals("CarePlan")) 17547 return parseCarePlan(xpp); 17548 else if (xpp.getName().equals("CareTeam")) 17549 return parseCareTeam(xpp); 17550 else if (xpp.getName().equals("ChargeItem")) 17551 return parseChargeItem(xpp); 17552 else if (xpp.getName().equals("Claim")) 17553 return parseClaim(xpp); 17554 else if (xpp.getName().equals("ClaimResponse")) 17555 return parseClaimResponse(xpp); 17556 else if (xpp.getName().equals("ClinicalImpression")) 17557 return parseClinicalImpression(xpp); 17558 else if (xpp.getName().equals("CodeSystem")) 17559 return parseCodeSystem(xpp); 17560 else if (xpp.getName().equals("Communication")) 17561 return parseCommunication(xpp); 17562 else if (xpp.getName().equals("CommunicationRequest")) 17563 return parseCommunicationRequest(xpp); 17564 else if (xpp.getName().equals("CompartmentDefinition")) 17565 return parseCompartmentDefinition(xpp); 17566 else if (xpp.getName().equals("Composition")) 17567 return parseComposition(xpp); 17568 else if (xpp.getName().equals("ConceptMap")) 17569 return parseConceptMap(xpp); 17570 else if (xpp.getName().equals("Condition")) 17571 return parseCondition(xpp); 17572 else if (xpp.getName().equals("Consent")) 17573 return parseConsent(xpp); 17574 else if (xpp.getName().equals("Contract")) 17575 return parseContract(xpp); 17576 else if (xpp.getName().equals("Coverage")) 17577 return parseCoverage(xpp); 17578 else if (xpp.getName().equals("DataElement")) 17579 return parseDataElement(xpp); 17580 else if (xpp.getName().equals("DetectedIssue")) 17581 return parseDetectedIssue(xpp); 17582 else if (xpp.getName().equals("Device")) 17583 return parseDevice(xpp); 17584 else if (xpp.getName().equals("DeviceComponent")) 17585 return parseDeviceComponent(xpp); 17586 else if (xpp.getName().equals("DeviceMetric")) 17587 return parseDeviceMetric(xpp); 17588 else if (xpp.getName().equals("DeviceRequest")) 17589 return parseDeviceRequest(xpp); 17590 else if (xpp.getName().equals("DeviceUseStatement")) 17591 return parseDeviceUseStatement(xpp); 17592 else if (xpp.getName().equals("DiagnosticReport")) 17593 return parseDiagnosticReport(xpp); 17594 else if (xpp.getName().equals("DocumentManifest")) 17595 return parseDocumentManifest(xpp); 17596 else if (xpp.getName().equals("DocumentReference")) 17597 return parseDocumentReference(xpp); 17598 else if (xpp.getName().equals("EligibilityRequest")) 17599 return parseEligibilityRequest(xpp); 17600 else if (xpp.getName().equals("EligibilityResponse")) 17601 return parseEligibilityResponse(xpp); 17602 else if (xpp.getName().equals("Encounter")) 17603 return parseEncounter(xpp); 17604 else if (xpp.getName().equals("Endpoint")) 17605 return parseEndpoint(xpp); 17606 else if (xpp.getName().equals("EnrollmentRequest")) 17607 return parseEnrollmentRequest(xpp); 17608 else if (xpp.getName().equals("EnrollmentResponse")) 17609 return parseEnrollmentResponse(xpp); 17610 else if (xpp.getName().equals("EpisodeOfCare")) 17611 return parseEpisodeOfCare(xpp); 17612 else if (xpp.getName().equals("ExpansionProfile")) 17613 return parseExpansionProfile(xpp); 17614 else if (xpp.getName().equals("ExplanationOfBenefit")) 17615 return parseExplanationOfBenefit(xpp); 17616 else if (xpp.getName().equals("FamilyMemberHistory")) 17617 return parseFamilyMemberHistory(xpp); 17618 else if (xpp.getName().equals("Flag")) 17619 return parseFlag(xpp); 17620 else if (xpp.getName().equals("Goal")) 17621 return parseGoal(xpp); 17622 else if (xpp.getName().equals("GraphDefinition")) 17623 return parseGraphDefinition(xpp); 17624 else if (xpp.getName().equals("Group")) 17625 return parseGroup(xpp); 17626 else if (xpp.getName().equals("GuidanceResponse")) 17627 return parseGuidanceResponse(xpp); 17628 else if (xpp.getName().equals("HealthcareService")) 17629 return parseHealthcareService(xpp); 17630 else if (xpp.getName().equals("ImagingManifest")) 17631 return parseImagingManifest(xpp); 17632 else if (xpp.getName().equals("ImagingStudy")) 17633 return parseImagingStudy(xpp); 17634 else if (xpp.getName().equals("Immunization")) 17635 return parseImmunization(xpp); 17636 else if (xpp.getName().equals("ImmunizationRecommendation")) 17637 return parseImmunizationRecommendation(xpp); 17638 else if (xpp.getName().equals("ImplementationGuide")) 17639 return parseImplementationGuide(xpp); 17640 else if (xpp.getName().equals("Library")) 17641 return parseLibrary(xpp); 17642 else if (xpp.getName().equals("Linkage")) 17643 return parseLinkage(xpp); 17644 else if (xpp.getName().equals("List")) 17645 return parseListResource(xpp); 17646 else if (xpp.getName().equals("Location")) 17647 return parseLocation(xpp); 17648 else if (xpp.getName().equals("Measure")) 17649 return parseMeasure(xpp); 17650 else if (xpp.getName().equals("MeasureReport")) 17651 return parseMeasureReport(xpp); 17652 else if (xpp.getName().equals("Media")) 17653 return parseMedia(xpp); 17654 else if (xpp.getName().equals("Medication")) 17655 return parseMedication(xpp); 17656 else if (xpp.getName().equals("MedicationAdministration")) 17657 return parseMedicationAdministration(xpp); 17658 else if (xpp.getName().equals("MedicationDispense")) 17659 return parseMedicationDispense(xpp); 17660 else if (xpp.getName().equals("MedicationRequest")) 17661 return parseMedicationRequest(xpp); 17662 else if (xpp.getName().equals("MedicationStatement")) 17663 return parseMedicationStatement(xpp); 17664 else if (xpp.getName().equals("MessageDefinition")) 17665 return parseMessageDefinition(xpp); 17666 else if (xpp.getName().equals("MessageHeader")) 17667 return parseMessageHeader(xpp); 17668 else if (xpp.getName().equals("NamingSystem")) 17669 return parseNamingSystem(xpp); 17670 else if (xpp.getName().equals("NutritionOrder")) 17671 return parseNutritionOrder(xpp); 17672 else if (xpp.getName().equals("Observation")) 17673 return parseObservation(xpp); 17674 else if (xpp.getName().equals("OperationDefinition")) 17675 return parseOperationDefinition(xpp); 17676 else if (xpp.getName().equals("OperationOutcome")) 17677 return parseOperationOutcome(xpp); 17678 else if (xpp.getName().equals("Organization")) 17679 return parseOrganization(xpp); 17680 else if (xpp.getName().equals("Patient")) 17681 return parsePatient(xpp); 17682 else if (xpp.getName().equals("PaymentNotice")) 17683 return parsePaymentNotice(xpp); 17684 else if (xpp.getName().equals("PaymentReconciliation")) 17685 return parsePaymentReconciliation(xpp); 17686 else if (xpp.getName().equals("Person")) 17687 return parsePerson(xpp); 17688 else if (xpp.getName().equals("PlanDefinition")) 17689 return parsePlanDefinition(xpp); 17690 else if (xpp.getName().equals("Practitioner")) 17691 return parsePractitioner(xpp); 17692 else if (xpp.getName().equals("PractitionerRole")) 17693 return parsePractitionerRole(xpp); 17694 else if (xpp.getName().equals("Procedure")) 17695 return parseProcedure(xpp); 17696 else if (xpp.getName().equals("ProcedureRequest")) 17697 return parseProcedureRequest(xpp); 17698 else if (xpp.getName().equals("ProcessRequest")) 17699 return parseProcessRequest(xpp); 17700 else if (xpp.getName().equals("ProcessResponse")) 17701 return parseProcessResponse(xpp); 17702 else if (xpp.getName().equals("Provenance")) 17703 return parseProvenance(xpp); 17704 else if (xpp.getName().equals("Questionnaire")) 17705 return parseQuestionnaire(xpp); 17706 else if (xpp.getName().equals("QuestionnaireResponse")) 17707 return parseQuestionnaireResponse(xpp); 17708 else if (xpp.getName().equals("ReferralRequest")) 17709 return parseReferralRequest(xpp); 17710 else if (xpp.getName().equals("RelatedPerson")) 17711 return parseRelatedPerson(xpp); 17712 else if (xpp.getName().equals("RequestGroup")) 17713 return parseRequestGroup(xpp); 17714 else if (xpp.getName().equals("ResearchStudy")) 17715 return parseResearchStudy(xpp); 17716 else if (xpp.getName().equals("ResearchSubject")) 17717 return parseResearchSubject(xpp); 17718 else if (xpp.getName().equals("RiskAssessment")) 17719 return parseRiskAssessment(xpp); 17720 else if (xpp.getName().equals("Schedule")) 17721 return parseSchedule(xpp); 17722 else if (xpp.getName().equals("SearchParameter")) 17723 return parseSearchParameter(xpp); 17724 else if (xpp.getName().equals("Sequence")) 17725 return parseSequence(xpp); 17726 else if (xpp.getName().equals("ServiceDefinition")) 17727 return parseServiceDefinition(xpp); 17728 else if (xpp.getName().equals("Slot")) 17729 return parseSlot(xpp); 17730 else if (xpp.getName().equals("Specimen")) 17731 return parseSpecimen(xpp); 17732 else if (xpp.getName().equals("StructureDefinition")) 17733 return parseStructureDefinition(xpp); 17734 else if (xpp.getName().equals("StructureMap")) 17735 return parseStructureMap(xpp); 17736 else if (xpp.getName().equals("Subscription")) 17737 return parseSubscription(xpp); 17738 else if (xpp.getName().equals("Substance")) 17739 return parseSubstance(xpp); 17740 else if (xpp.getName().equals("SupplyDelivery")) 17741 return parseSupplyDelivery(xpp); 17742 else if (xpp.getName().equals("SupplyRequest")) 17743 return parseSupplyRequest(xpp); 17744 else if (xpp.getName().equals("Task")) 17745 return parseTask(xpp); 17746 else if (xpp.getName().equals("TestReport")) 17747 return parseTestReport(xpp); 17748 else if (xpp.getName().equals("TestScript")) 17749 return parseTestScript(xpp); 17750 else if (xpp.getName().equals("ValueSet")) 17751 return parseValueSet(xpp); 17752 else if (xpp.getName().equals("VisionPrescription")) 17753 return parseVisionPrescription(xpp); 17754 else if (xpp.getName().equals("Binary")) 17755 return parseBinary(xpp); 17756 throw new FHIRFormatError("Unknown resource type "+xpp.getName()+""); 17757 } 17758 17759 protected Type parseType(String prefix, XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { 17760 if (xpp.getName().equals(prefix+"date")) 17761 return parseDate(xpp); 17762 else if (xpp.getName().equals(prefix+"dateTime")) 17763 return parseDateTime(xpp); 17764 else if (xpp.getName().equals(prefix+"code")) 17765 return parseCode(xpp); 17766 else if (xpp.getName().equals(prefix+"string")) 17767 return parseString(xpp); 17768 else if (xpp.getName().equals(prefix+"integer")) 17769 return parseInteger(xpp); 17770 else if (xpp.getName().equals(prefix+"oid")) 17771 return parseOid(xpp); 17772 else if (xpp.getName().equals(prefix+"uri")) 17773 return parseUri(xpp); 17774 else if (xpp.getName().equals(prefix+"uuid")) 17775 return parseUuid(xpp); 17776 else if (xpp.getName().equals(prefix+"instant")) 17777 return parseInstant(xpp); 17778 else if (xpp.getName().equals(prefix+"boolean")) 17779 return parseBoolean(xpp); 17780 else if (xpp.getName().equals(prefix+"base64Binary")) 17781 return parseBase64Binary(xpp); 17782 else if (xpp.getName().equals(prefix+"unsignedInt")) 17783 return parseUnsignedInt(xpp); 17784 else if (xpp.getName().equals(prefix+"markdown")) 17785 return parseMarkdown(xpp); 17786 else if (xpp.getName().equals(prefix+"time")) 17787 return parseTime(xpp); 17788 else if (xpp.getName().equals(prefix+"id")) 17789 return parseId(xpp); 17790 else if (xpp.getName().equals(prefix+"positiveInt")) 17791 return parsePositiveInt(xpp); 17792 else if (xpp.getName().equals(prefix+"decimal")) 17793 return parseDecimal(xpp); 17794 else if (xpp.getName().equals(prefix+"Extension")) 17795 return parseExtension(xpp); 17796 else if (xpp.getName().equals(prefix+"Narrative")) 17797 return parseNarrative(xpp); 17798 else if (xpp.getName().equals(prefix+"Reference")) 17799 return parseReference(xpp); 17800 else if (xpp.getName().equals(prefix+"Quantity")) 17801 return parseQuantity(xpp); 17802 else if (xpp.getName().equals(prefix+"Period")) 17803 return parsePeriod(xpp); 17804 else if (xpp.getName().equals(prefix+"Attachment")) 17805 return parseAttachment(xpp); 17806 else if (xpp.getName().equals(prefix+"Duration")) 17807 return parseDuration(xpp); 17808 else if (xpp.getName().equals(prefix+"Count")) 17809 return parseCount(xpp); 17810 else if (xpp.getName().equals(prefix+"Range")) 17811 return parseRange(xpp); 17812 else if (xpp.getName().equals(prefix+"Annotation")) 17813 return parseAnnotation(xpp); 17814 else if (xpp.getName().equals(prefix+"Money")) 17815 return parseMoney(xpp); 17816 else if (xpp.getName().equals(prefix+"Identifier")) 17817 return parseIdentifier(xpp); 17818 else if (xpp.getName().equals(prefix+"Coding")) 17819 return parseCoding(xpp); 17820 else if (xpp.getName().equals(prefix+"Signature")) 17821 return parseSignature(xpp); 17822 else if (xpp.getName().equals(prefix+"SampledData")) 17823 return parseSampledData(xpp); 17824 else if (xpp.getName().equals(prefix+"Ratio")) 17825 return parseRatio(xpp); 17826 else if (xpp.getName().equals(prefix+"Distance")) 17827 return parseDistance(xpp); 17828 else if (xpp.getName().equals(prefix+"Age")) 17829 return parseAge(xpp); 17830 else if (xpp.getName().equals(prefix+"CodeableConcept")) 17831 return parseCodeableConcept(xpp); 17832 else if (xpp.getName().equals(prefix+"SimpleQuantity")) 17833 return parseSimpleQuantity(xpp); 17834 else if (xpp.getName().equals(prefix+"Meta")) 17835 return parseMeta(xpp); 17836 else if (xpp.getName().equals(prefix+"Address")) 17837 return parseAddress(xpp); 17838 else if (xpp.getName().equals(prefix+"TriggerDefinition")) 17839 return parseTriggerDefinition(xpp); 17840 else if (xpp.getName().equals(prefix+"Contributor")) 17841 return parseContributor(xpp); 17842 else if (xpp.getName().equals(prefix+"DataRequirement")) 17843 return parseDataRequirement(xpp); 17844 else if (xpp.getName().equals(prefix+"Dosage")) 17845 return parseDosage(xpp); 17846 else if (xpp.getName().equals(prefix+"RelatedArtifact")) 17847 return parseRelatedArtifact(xpp); 17848 else if (xpp.getName().equals(prefix+"ContactDetail")) 17849 return parseContactDetail(xpp); 17850 else if (xpp.getName().equals(prefix+"HumanName")) 17851 return parseHumanName(xpp); 17852 else if (xpp.getName().equals(prefix+"ContactPoint")) 17853 return parseContactPoint(xpp); 17854 else if (xpp.getName().equals(prefix+"UsageContext")) 17855 return parseUsageContext(xpp); 17856 else if (xpp.getName().equals(prefix+"Timing")) 17857 return parseTiming(xpp); 17858 else if (xpp.getName().equals(prefix+"ElementDefinition")) 17859 return parseElementDefinition(xpp); 17860 else if (xpp.getName().equals(prefix+"ParameterDefinition")) 17861 return parseParameterDefinition(xpp); 17862 else if (xpp.getName().equals(prefix+"Date")) 17863 return parseDate(xpp); 17864 else if (xpp.getName().equals(prefix+"DateTime")) 17865 return parseDateTime(xpp); 17866 else if (xpp.getName().equals(prefix+"Code")) 17867 return parseCode(xpp); 17868 else if (xpp.getName().equals(prefix+"String")) 17869 return parseString(xpp); 17870 else if (xpp.getName().equals(prefix+"Integer")) 17871 return parseInteger(xpp); 17872 else if (xpp.getName().equals(prefix+"Oid")) 17873 return parseOid(xpp); 17874 else if (xpp.getName().equals(prefix+"Uri")) 17875 return parseUri(xpp); 17876 else if (xpp.getName().equals(prefix+"Uuid")) 17877 return parseUuid(xpp); 17878 else if (xpp.getName().equals(prefix+"Instant")) 17879 return parseInstant(xpp); 17880 else if (xpp.getName().equals(prefix+"Boolean")) 17881 return parseBoolean(xpp); 17882 else if (xpp.getName().equals(prefix+"Base64Binary")) 17883 return parseBase64Binary(xpp); 17884 else if (xpp.getName().equals(prefix+"UnsignedInt")) 17885 return parseUnsignedInt(xpp); 17886 else if (xpp.getName().equals(prefix+"Markdown")) 17887 return parseMarkdown(xpp); 17888 else if (xpp.getName().equals(prefix+"Time")) 17889 return parseTime(xpp); 17890 else if (xpp.getName().equals(prefix+"Id")) 17891 return parseId(xpp); 17892 else if (xpp.getName().equals(prefix+"PositiveInt")) 17893 return parsePositiveInt(xpp); 17894 else if (xpp.getName().equals(prefix+"Decimal")) 17895 return parseDecimal(xpp); 17896 throw new FHIRFormatError("Unknown type "+xpp.getName()); 17897 } 17898 17899 protected Type parseType(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 17900 if (type.equals("date")) 17901 return parseDate(xpp); 17902 else if (type.equals("dateTime")) 17903 return parseDateTime(xpp); 17904 else if (type.equals("code")) 17905 return parseCode(xpp); 17906 else if (type.equals("string")) 17907 return parseString(xpp); 17908 else if (type.equals("integer")) 17909 return parseInteger(xpp); 17910 else if (type.equals("oid")) 17911 return parseOid(xpp); 17912 else if (type.equals("uri")) 17913 return parseUri(xpp); 17914 else if (type.equals("uuid")) 17915 return parseUuid(xpp); 17916 else if (type.equals("instant")) 17917 return parseInstant(xpp); 17918 else if (type.equals("boolean")) 17919 return parseBoolean(xpp); 17920 else if (type.equals("base64Binary")) 17921 return parseBase64Binary(xpp); 17922 else if (type.equals("unsignedInt")) 17923 return parseUnsignedInt(xpp); 17924 else if (type.equals("markdown")) 17925 return parseMarkdown(xpp); 17926 else if (type.equals("time")) 17927 return parseTime(xpp); 17928 else if (type.equals("id")) 17929 return parseId(xpp); 17930 else if (type.equals("positiveInt")) 17931 return parsePositiveInt(xpp); 17932 else if (type.equals("decimal")) 17933 return parseDecimal(xpp); 17934 else if (type.equals("Extension")) 17935 return parseExtension(xpp); 17936 else if (type.equals("Narrative")) 17937 return parseNarrative(xpp); 17938 else if (type.equals("Reference")) 17939 return parseReference(xpp); 17940 else if (type.equals("Quantity")) 17941 return parseQuantity(xpp); 17942 else if (type.equals("Period")) 17943 return parsePeriod(xpp); 17944 else if (type.equals("Attachment")) 17945 return parseAttachment(xpp); 17946 else if (type.equals("Duration")) 17947 return parseDuration(xpp); 17948 else if (type.equals("Count")) 17949 return parseCount(xpp); 17950 else if (type.equals("Range")) 17951 return parseRange(xpp); 17952 else if (type.equals("Annotation")) 17953 return parseAnnotation(xpp); 17954 else if (type.equals("Money")) 17955 return parseMoney(xpp); 17956 else if (type.equals("Identifier")) 17957 return parseIdentifier(xpp); 17958 else if (type.equals("Coding")) 17959 return parseCoding(xpp); 17960 else if (type.equals("Signature")) 17961 return parseSignature(xpp); 17962 else if (type.equals("SampledData")) 17963 return parseSampledData(xpp); 17964 else if (type.equals("Ratio")) 17965 return parseRatio(xpp); 17966 else if (type.equals("Distance")) 17967 return parseDistance(xpp); 17968 else if (type.equals("Age")) 17969 return parseAge(xpp); 17970 else if (type.equals("CodeableConcept")) 17971 return parseCodeableConcept(xpp); 17972 else if (type.equals("SimpleQuantity")) 17973 return parseSimpleQuantity(xpp); 17974 else if (type.equals("Meta")) 17975 return parseMeta(xpp); 17976 else if (type.equals("Address")) 17977 return parseAddress(xpp); 17978 else if (type.equals("TriggerDefinition")) 17979 return parseTriggerDefinition(xpp); 17980 else if (type.equals("Contributor")) 17981 return parseContributor(xpp); 17982 else if (type.equals("DataRequirement")) 17983 return parseDataRequirement(xpp); 17984 else if (type.equals("Dosage")) 17985 return parseDosage(xpp); 17986 else if (type.equals("RelatedArtifact")) 17987 return parseRelatedArtifact(xpp); 17988 else if (type.equals("ContactDetail")) 17989 return parseContactDetail(xpp); 17990 else if (type.equals("HumanName")) 17991 return parseHumanName(xpp); 17992 else if (type.equals("ContactPoint")) 17993 return parseContactPoint(xpp); 17994 else if (type.equals("UsageContext")) 17995 return parseUsageContext(xpp); 17996 else if (type.equals("Timing")) 17997 return parseTiming(xpp); 17998 else if (type.equals("ElementDefinition")) 17999 return parseElementDefinition(xpp); 18000 else if (type.equals("ParameterDefinition")) 18001 return parseParameterDefinition(xpp); 18002 throw new FHIRFormatError("Unknown type "+type); 18003 } 18004 18005 public Base parseFragment(XmlPullParser xpp, String type) throws XmlPullParserException, IOException, FHIRFormatError { 18006 if (type.equals("Extension")) 18007 return parseExtension(xpp); 18008 else if (type.equals("Narrative")) 18009 return parseNarrative(xpp); 18010 else if (type.equals("Reference")) 18011 return parseReference(xpp); 18012 else if (type.equals("Quantity")) 18013 return parseQuantity(xpp); 18014 else if (type.equals("Period")) 18015 return parsePeriod(xpp); 18016 else if (type.equals("Attachment")) 18017 return parseAttachment(xpp); 18018 else if (type.equals("Duration")) 18019 return parseDuration(xpp); 18020 else if (type.equals("Count")) 18021 return parseCount(xpp); 18022 else if (type.equals("Range")) 18023 return parseRange(xpp); 18024 else if (type.equals("Annotation")) 18025 return parseAnnotation(xpp); 18026 else if (type.equals("Money")) 18027 return parseMoney(xpp); 18028 else if (type.equals("Identifier")) 18029 return parseIdentifier(xpp); 18030 else if (type.equals("Coding")) 18031 return parseCoding(xpp); 18032 else if (type.equals("Signature")) 18033 return parseSignature(xpp); 18034 else if (type.equals("SampledData")) 18035 return parseSampledData(xpp); 18036 else if (type.equals("Ratio")) 18037 return parseRatio(xpp); 18038 else if (type.equals("Distance")) 18039 return parseDistance(xpp); 18040 else if (type.equals("Age")) 18041 return parseAge(xpp); 18042 else if (type.equals("CodeableConcept")) 18043 return parseCodeableConcept(xpp); 18044 else if (type.equals("SimpleQuantity")) 18045 return parseSimpleQuantity(xpp); 18046 else if (type.equals("Meta")) 18047 return parseMeta(xpp); 18048 else if (type.equals("Address")) 18049 return parseAddress(xpp); 18050 else if (type.equals("TriggerDefinition")) 18051 return parseTriggerDefinition(xpp); 18052 else if (type.equals("Contributor")) 18053 return parseContributor(xpp); 18054 else if (type.equals("DataRequirement")) 18055 return parseDataRequirement(xpp); 18056 else if (type.equals("Dosage")) 18057 return parseDosage(xpp); 18058 else if (type.equals("RelatedArtifact")) 18059 return parseRelatedArtifact(xpp); 18060 else if (type.equals("ContactDetail")) 18061 return parseContactDetail(xpp); 18062 else if (type.equals("HumanName")) 18063 return parseHumanName(xpp); 18064 else if (type.equals("ContactPoint")) 18065 return parseContactPoint(xpp); 18066 else if (type.equals("UsageContext")) 18067 return parseUsageContext(xpp); 18068 else if (type.equals("Timing")) 18069 return parseTiming(xpp); 18070 else if (type.equals("ElementDefinition")) 18071 return parseElementDefinition(xpp); 18072 else if (type.equals("ParameterDefinition")) 18073 return parseParameterDefinition(xpp); 18074 else if (type.equals("Parameters")) 18075 return parseParameters(xpp); 18076 else if (type.equals("Account")) 18077 return parseAccount(xpp); 18078 else if (type.equals("ActivityDefinition")) 18079 return parseActivityDefinition(xpp); 18080 else if (type.equals("AdverseEvent")) 18081 return parseAdverseEvent(xpp); 18082 else if (type.equals("AllergyIntolerance")) 18083 return parseAllergyIntolerance(xpp); 18084 else if (type.equals("Appointment")) 18085 return parseAppointment(xpp); 18086 else if (type.equals("AppointmentResponse")) 18087 return parseAppointmentResponse(xpp); 18088 else if (type.equals("AuditEvent")) 18089 return parseAuditEvent(xpp); 18090 else if (type.equals("Basic")) 18091 return parseBasic(xpp); 18092 else if (type.equals("Binary")) 18093 return parseBinary(xpp); 18094 else if (type.equals("BodySite")) 18095 return parseBodySite(xpp); 18096 else if (type.equals("Bundle")) 18097 return parseBundle(xpp); 18098 else if (type.equals("CapabilityStatement")) 18099 return parseCapabilityStatement(xpp); 18100 else if (type.equals("CarePlan")) 18101 return parseCarePlan(xpp); 18102 else if (type.equals("CareTeam")) 18103 return parseCareTeam(xpp); 18104 else if (type.equals("ChargeItem")) 18105 return parseChargeItem(xpp); 18106 else if (type.equals("Claim")) 18107 return parseClaim(xpp); 18108 else if (type.equals("ClaimResponse")) 18109 return parseClaimResponse(xpp); 18110 else if (type.equals("ClinicalImpression")) 18111 return parseClinicalImpression(xpp); 18112 else if (type.equals("CodeSystem")) 18113 return parseCodeSystem(xpp); 18114 else if (type.equals("Communication")) 18115 return parseCommunication(xpp); 18116 else if (type.equals("CommunicationRequest")) 18117 return parseCommunicationRequest(xpp); 18118 else if (type.equals("CompartmentDefinition")) 18119 return parseCompartmentDefinition(xpp); 18120 else if (type.equals("Composition")) 18121 return parseComposition(xpp); 18122 else if (type.equals("ConceptMap")) 18123 return parseConceptMap(xpp); 18124 else if (type.equals("Condition")) 18125 return parseCondition(xpp); 18126 else if (type.equals("Consent")) 18127 return parseConsent(xpp); 18128 else if (type.equals("Contract")) 18129 return parseContract(xpp); 18130 else if (type.equals("Coverage")) 18131 return parseCoverage(xpp); 18132 else if (type.equals("DataElement")) 18133 return parseDataElement(xpp); 18134 else if (type.equals("DetectedIssue")) 18135 return parseDetectedIssue(xpp); 18136 else if (type.equals("Device")) 18137 return parseDevice(xpp); 18138 else if (type.equals("DeviceComponent")) 18139 return parseDeviceComponent(xpp); 18140 else if (type.equals("DeviceMetric")) 18141 return parseDeviceMetric(xpp); 18142 else if (type.equals("DeviceRequest")) 18143 return parseDeviceRequest(xpp); 18144 else if (type.equals("DeviceUseStatement")) 18145 return parseDeviceUseStatement(xpp); 18146 else if (type.equals("DiagnosticReport")) 18147 return parseDiagnosticReport(xpp); 18148 else if (type.equals("DocumentManifest")) 18149 return parseDocumentManifest(xpp); 18150 else if (type.equals("DocumentReference")) 18151 return parseDocumentReference(xpp); 18152 else if (type.equals("EligibilityRequest")) 18153 return parseEligibilityRequest(xpp); 18154 else if (type.equals("EligibilityResponse")) 18155 return parseEligibilityResponse(xpp); 18156 else if (type.equals("Encounter")) 18157 return parseEncounter(xpp); 18158 else if (type.equals("Endpoint")) 18159 return parseEndpoint(xpp); 18160 else if (type.equals("EnrollmentRequest")) 18161 return parseEnrollmentRequest(xpp); 18162 else if (type.equals("EnrollmentResponse")) 18163 return parseEnrollmentResponse(xpp); 18164 else if (type.equals("EpisodeOfCare")) 18165 return parseEpisodeOfCare(xpp); 18166 else if (type.equals("ExpansionProfile")) 18167 return parseExpansionProfile(xpp); 18168 else if (type.equals("ExplanationOfBenefit")) 18169 return parseExplanationOfBenefit(xpp); 18170 else if (type.equals("FamilyMemberHistory")) 18171 return parseFamilyMemberHistory(xpp); 18172 else if (type.equals("Flag")) 18173 return parseFlag(xpp); 18174 else if (type.equals("Goal")) 18175 return parseGoal(xpp); 18176 else if (type.equals("GraphDefinition")) 18177 return parseGraphDefinition(xpp); 18178 else if (type.equals("Group")) 18179 return parseGroup(xpp); 18180 else if (type.equals("GuidanceResponse")) 18181 return parseGuidanceResponse(xpp); 18182 else if (type.equals("HealthcareService")) 18183 return parseHealthcareService(xpp); 18184 else if (type.equals("ImagingManifest")) 18185 return parseImagingManifest(xpp); 18186 else if (type.equals("ImagingStudy")) 18187 return parseImagingStudy(xpp); 18188 else if (type.equals("Immunization")) 18189 return parseImmunization(xpp); 18190 else if (type.equals("ImmunizationRecommendation")) 18191 return parseImmunizationRecommendation(xpp); 18192 else if (type.equals("ImplementationGuide")) 18193 return parseImplementationGuide(xpp); 18194 else if (type.equals("Library")) 18195 return parseLibrary(xpp); 18196 else if (type.equals("Linkage")) 18197 return parseLinkage(xpp); 18198 else if (type.equals("List")) 18199 return parseListResource(xpp); 18200 else if (type.equals("Location")) 18201 return parseLocation(xpp); 18202 else if (type.equals("Measure")) 18203 return parseMeasure(xpp); 18204 else if (type.equals("MeasureReport")) 18205 return parseMeasureReport(xpp); 18206 else if (type.equals("Media")) 18207 return parseMedia(xpp); 18208 else if (type.equals("Medication")) 18209 return parseMedication(xpp); 18210 else if (type.equals("MedicationAdministration")) 18211 return parseMedicationAdministration(xpp); 18212 else if (type.equals("MedicationDispense")) 18213 return parseMedicationDispense(xpp); 18214 else if (type.equals("MedicationRequest")) 18215 return parseMedicationRequest(xpp); 18216 else if (type.equals("MedicationStatement")) 18217 return parseMedicationStatement(xpp); 18218 else if (type.equals("MessageDefinition")) 18219 return parseMessageDefinition(xpp); 18220 else if (type.equals("MessageHeader")) 18221 return parseMessageHeader(xpp); 18222 else if (type.equals("NamingSystem")) 18223 return parseNamingSystem(xpp); 18224 else if (type.equals("NutritionOrder")) 18225 return parseNutritionOrder(xpp); 18226 else if (type.equals("Observation")) 18227 return parseObservation(xpp); 18228 else if (type.equals("OperationDefinition")) 18229 return parseOperationDefinition(xpp); 18230 else if (type.equals("OperationOutcome")) 18231 return parseOperationOutcome(xpp); 18232 else if (type.equals("Organization")) 18233 return parseOrganization(xpp); 18234 else if (type.equals("Patient")) 18235 return parsePatient(xpp); 18236 else if (type.equals("PaymentNotice")) 18237 return parsePaymentNotice(xpp); 18238 else if (type.equals("PaymentReconciliation")) 18239 return parsePaymentReconciliation(xpp); 18240 else if (type.equals("Person")) 18241 return parsePerson(xpp); 18242 else if (type.equals("PlanDefinition")) 18243 return parsePlanDefinition(xpp); 18244 else if (type.equals("Practitioner")) 18245 return parsePractitioner(xpp); 18246 else if (type.equals("PractitionerRole")) 18247 return parsePractitionerRole(xpp); 18248 else if (type.equals("Procedure")) 18249 return parseProcedure(xpp); 18250 else if (type.equals("ProcedureRequest")) 18251 return parseProcedureRequest(xpp); 18252 else if (type.equals("ProcessRequest")) 18253 return parseProcessRequest(xpp); 18254 else if (type.equals("ProcessResponse")) 18255 return parseProcessResponse(xpp); 18256 else if (type.equals("Provenance")) 18257 return parseProvenance(xpp); 18258 else if (type.equals("Questionnaire")) 18259 return parseQuestionnaire(xpp); 18260 else if (type.equals("QuestionnaireResponse")) 18261 return parseQuestionnaireResponse(xpp); 18262 else if (type.equals("ReferralRequest")) 18263 return parseReferralRequest(xpp); 18264 else if (type.equals("RelatedPerson")) 18265 return parseRelatedPerson(xpp); 18266 else if (type.equals("RequestGroup")) 18267 return parseRequestGroup(xpp); 18268 else if (type.equals("ResearchStudy")) 18269 return parseResearchStudy(xpp); 18270 else if (type.equals("ResearchSubject")) 18271 return parseResearchSubject(xpp); 18272 else if (type.equals("RiskAssessment")) 18273 return parseRiskAssessment(xpp); 18274 else if (type.equals("Schedule")) 18275 return parseSchedule(xpp); 18276 else if (type.equals("SearchParameter")) 18277 return parseSearchParameter(xpp); 18278 else if (type.equals("Sequence")) 18279 return parseSequence(xpp); 18280 else if (type.equals("ServiceDefinition")) 18281 return parseServiceDefinition(xpp); 18282 else if (type.equals("Slot")) 18283 return parseSlot(xpp); 18284 else if (type.equals("Specimen")) 18285 return parseSpecimen(xpp); 18286 else if (type.equals("StructureDefinition")) 18287 return parseStructureDefinition(xpp); 18288 else if (type.equals("StructureMap")) 18289 return parseStructureMap(xpp); 18290 else if (type.equals("Subscription")) 18291 return parseSubscription(xpp); 18292 else if (type.equals("Substance")) 18293 return parseSubstance(xpp); 18294 else if (type.equals("SupplyDelivery")) 18295 return parseSupplyDelivery(xpp); 18296 else if (type.equals("SupplyRequest")) 18297 return parseSupplyRequest(xpp); 18298 else if (type.equals("Task")) 18299 return parseTask(xpp); 18300 else if (type.equals("TestReport")) 18301 return parseTestReport(xpp); 18302 else if (type.equals("TestScript")) 18303 return parseTestScript(xpp); 18304 else if (type.equals("ValueSet")) 18305 return parseValueSet(xpp); 18306 else if (type.equals("VisionPrescription")) 18307 return parseVisionPrescription(xpp); 18308 else if (type.equals("date")) 18309 return parseDate(xpp); 18310 else if (type.equals("dateTime")) 18311 return parseDateTime(xpp); 18312 else if (type.equals("code")) 18313 return parseCode(xpp); 18314 else if (type.equals("string")) 18315 return parseString(xpp); 18316 else if (type.equals("integer")) 18317 return parseInteger(xpp); 18318 else if (type.equals("oid")) 18319 return parseOid(xpp); 18320 else if (type.equals("uri")) 18321 return parseUri(xpp); 18322 else if (type.equals("uuid")) 18323 return parseUuid(xpp); 18324 else if (type.equals("instant")) 18325 return parseInstant(xpp); 18326 else if (type.equals("boolean")) 18327 return parseBoolean(xpp); 18328 else if (type.equals("base64Binary")) 18329 return parseBase64Binary(xpp); 18330 else if (type.equals("unsignedInt")) 18331 return parseUnsignedInt(xpp); 18332 else if (type.equals("markdown")) 18333 return parseMarkdown(xpp); 18334 else if (type.equals("time")) 18335 return parseTime(xpp); 18336 else if (type.equals("id")) 18337 return parseId(xpp); 18338 else if (type.equals("positiveInt")) 18339 return parsePositiveInt(xpp); 18340 else if (type.equals("decimal")) 18341 return parseDecimal(xpp); 18342 throw new FHIRFormatError("Unknown type "+type); 18343 } 18344 18345 private boolean nameIsTypeName(XmlPullParser xpp, String prefix) { 18346 if (xpp.getName().equals(prefix+"Reference")) 18347 return true; 18348 if (xpp.getName().equals(prefix+"Quantity")) 18349 return true; 18350 if (xpp.getName().equals(prefix+"Period")) 18351 return true; 18352 if (xpp.getName().equals(prefix+"Attachment")) 18353 return true; 18354 if (xpp.getName().equals(prefix+"Duration")) 18355 return true; 18356 if (xpp.getName().equals(prefix+"Count")) 18357 return true; 18358 if (xpp.getName().equals(prefix+"Range")) 18359 return true; 18360 if (xpp.getName().equals(prefix+"Annotation")) 18361 return true; 18362 if (xpp.getName().equals(prefix+"Money")) 18363 return true; 18364 if (xpp.getName().equals(prefix+"Identifier")) 18365 return true; 18366 if (xpp.getName().equals(prefix+"Coding")) 18367 return true; 18368 if (xpp.getName().equals(prefix+"Signature")) 18369 return true; 18370 if (xpp.getName().equals(prefix+"SampledData")) 18371 return true; 18372 if (xpp.getName().equals(prefix+"Ratio")) 18373 return true; 18374 if (xpp.getName().equals(prefix+"Distance")) 18375 return true; 18376 if (xpp.getName().equals(prefix+"Age")) 18377 return true; 18378 if (xpp.getName().equals(prefix+"CodeableConcept")) 18379 return true; 18380 if (xpp.getName().equals(prefix+"SimpleQuantity")) 18381 return true; 18382 if (xpp.getName().equals(prefix+"Meta")) 18383 return true; 18384 if (xpp.getName().equals(prefix+"Address")) 18385 return true; 18386 if (xpp.getName().equals(prefix+"TriggerDefinition")) 18387 return true; 18388 if (xpp.getName().equals(prefix+"Contributor")) 18389 return true; 18390 if (xpp.getName().equals(prefix+"DataRequirement")) 18391 return true; 18392 if (xpp.getName().equals(prefix+"Dosage")) 18393 return true; 18394 if (xpp.getName().equals(prefix+"RelatedArtifact")) 18395 return true; 18396 if (xpp.getName().equals(prefix+"ContactDetail")) 18397 return true; 18398 if (xpp.getName().equals(prefix+"HumanName")) 18399 return true; 18400 if (xpp.getName().equals(prefix+"ContactPoint")) 18401 return true; 18402 if (xpp.getName().equals(prefix+"UsageContext")) 18403 return true; 18404 if (xpp.getName().equals(prefix+"Timing")) 18405 return true; 18406 if (xpp.getName().equals(prefix+"ElementDefinition")) 18407 return true; 18408 if (xpp.getName().equals(prefix+"ParameterDefinition")) 18409 return true; 18410 if (xpp.getName().equals(prefix+"Parameters")) 18411 return true; 18412 if (xpp.getName().equals(prefix+"Account")) 18413 return true; 18414 if (xpp.getName().equals(prefix+"ActivityDefinition")) 18415 return true; 18416 if (xpp.getName().equals(prefix+"AdverseEvent")) 18417 return true; 18418 if (xpp.getName().equals(prefix+"AllergyIntolerance")) 18419 return true; 18420 if (xpp.getName().equals(prefix+"Appointment")) 18421 return true; 18422 if (xpp.getName().equals(prefix+"AppointmentResponse")) 18423 return true; 18424 if (xpp.getName().equals(prefix+"AuditEvent")) 18425 return true; 18426 if (xpp.getName().equals(prefix+"Basic")) 18427 return true; 18428 if (xpp.getName().equals(prefix+"Binary")) 18429 return true; 18430 if (xpp.getName().equals(prefix+"BodySite")) 18431 return true; 18432 if (xpp.getName().equals(prefix+"Bundle")) 18433 return true; 18434 if (xpp.getName().equals(prefix+"CapabilityStatement")) 18435 return true; 18436 if (xpp.getName().equals(prefix+"CarePlan")) 18437 return true; 18438 if (xpp.getName().equals(prefix+"CareTeam")) 18439 return true; 18440 if (xpp.getName().equals(prefix+"ChargeItem")) 18441 return true; 18442 if (xpp.getName().equals(prefix+"Claim")) 18443 return true; 18444 if (xpp.getName().equals(prefix+"ClaimResponse")) 18445 return true; 18446 if (xpp.getName().equals(prefix+"ClinicalImpression")) 18447 return true; 18448 if (xpp.getName().equals(prefix+"CodeSystem")) 18449 return true; 18450 if (xpp.getName().equals(prefix+"Communication")) 18451 return true; 18452 if (xpp.getName().equals(prefix+"CommunicationRequest")) 18453 return true; 18454 if (xpp.getName().equals(prefix+"CompartmentDefinition")) 18455 return true; 18456 if (xpp.getName().equals(prefix+"Composition")) 18457 return true; 18458 if (xpp.getName().equals(prefix+"ConceptMap")) 18459 return true; 18460 if (xpp.getName().equals(prefix+"Condition")) 18461 return true; 18462 if (xpp.getName().equals(prefix+"Consent")) 18463 return true; 18464 if (xpp.getName().equals(prefix+"Contract")) 18465 return true; 18466 if (xpp.getName().equals(prefix+"Coverage")) 18467 return true; 18468 if (xpp.getName().equals(prefix+"DataElement")) 18469 return true; 18470 if (xpp.getName().equals(prefix+"DetectedIssue")) 18471 return true; 18472 if (xpp.getName().equals(prefix+"Device")) 18473 return true; 18474 if (xpp.getName().equals(prefix+"DeviceComponent")) 18475 return true; 18476 if (xpp.getName().equals(prefix+"DeviceMetric")) 18477 return true; 18478 if (xpp.getName().equals(prefix+"DeviceRequest")) 18479 return true; 18480 if (xpp.getName().equals(prefix+"DeviceUseStatement")) 18481 return true; 18482 if (xpp.getName().equals(prefix+"DiagnosticReport")) 18483 return true; 18484 if (xpp.getName().equals(prefix+"DocumentManifest")) 18485 return true; 18486 if (xpp.getName().equals(prefix+"DocumentReference")) 18487 return true; 18488 if (xpp.getName().equals(prefix+"EligibilityRequest")) 18489 return true; 18490 if (xpp.getName().equals(prefix+"EligibilityResponse")) 18491 return true; 18492 if (xpp.getName().equals(prefix+"Encounter")) 18493 return true; 18494 if (xpp.getName().equals(prefix+"Endpoint")) 18495 return true; 18496 if (xpp.getName().equals(prefix+"EnrollmentRequest")) 18497 return true; 18498 if (xpp.getName().equals(prefix+"EnrollmentResponse")) 18499 return true; 18500 if (xpp.getName().equals(prefix+"EpisodeOfCare")) 18501 return true; 18502 if (xpp.getName().equals(prefix+"ExpansionProfile")) 18503 return true; 18504 if (xpp.getName().equals(prefix+"ExplanationOfBenefit")) 18505 return true; 18506 if (xpp.getName().equals(prefix+"FamilyMemberHistory")) 18507 return true; 18508 if (xpp.getName().equals(prefix+"Flag")) 18509 return true; 18510 if (xpp.getName().equals(prefix+"Goal")) 18511 return true; 18512 if (xpp.getName().equals(prefix+"GraphDefinition")) 18513 return true; 18514 if (xpp.getName().equals(prefix+"Group")) 18515 return true; 18516 if (xpp.getName().equals(prefix+"GuidanceResponse")) 18517 return true; 18518 if (xpp.getName().equals(prefix+"HealthcareService")) 18519 return true; 18520 if (xpp.getName().equals(prefix+"ImagingManifest")) 18521 return true; 18522 if (xpp.getName().equals(prefix+"ImagingStudy")) 18523 return true; 18524 if (xpp.getName().equals(prefix+"Immunization")) 18525 return true; 18526 if (xpp.getName().equals(prefix+"ImmunizationRecommendation")) 18527 return true; 18528 if (xpp.getName().equals(prefix+"ImplementationGuide")) 18529 return true; 18530 if (xpp.getName().equals(prefix+"Library")) 18531 return true; 18532 if (xpp.getName().equals(prefix+"Linkage")) 18533 return true; 18534 if (xpp.getName().equals(prefix+"List")) 18535 return true; 18536 if (xpp.getName().equals(prefix+"Location")) 18537 return true; 18538 if (xpp.getName().equals(prefix+"Measure")) 18539 return true; 18540 if (xpp.getName().equals(prefix+"MeasureReport")) 18541 return true; 18542 if (xpp.getName().equals(prefix+"Media")) 18543 return true; 18544 if (xpp.getName().equals(prefix+"Medication")) 18545 return true; 18546 if (xpp.getName().equals(prefix+"MedicationAdministration")) 18547 return true; 18548 if (xpp.getName().equals(prefix+"MedicationDispense")) 18549 return true; 18550 if (xpp.getName().equals(prefix+"MedicationRequest")) 18551 return true; 18552 if (xpp.getName().equals(prefix+"MedicationStatement")) 18553 return true; 18554 if (xpp.getName().equals(prefix+"MessageDefinition")) 18555 return true; 18556 if (xpp.getName().equals(prefix+"MessageHeader")) 18557 return true; 18558 if (xpp.getName().equals(prefix+"NamingSystem")) 18559 return true; 18560 if (xpp.getName().equals(prefix+"NutritionOrder")) 18561 return true; 18562 if (xpp.getName().equals(prefix+"Observation")) 18563 return true; 18564 if (xpp.getName().equals(prefix+"OperationDefinition")) 18565 return true; 18566 if (xpp.getName().equals(prefix+"OperationOutcome")) 18567 return true; 18568 if (xpp.getName().equals(prefix+"Organization")) 18569 return true; 18570 if (xpp.getName().equals(prefix+"Patient")) 18571 return true; 18572 if (xpp.getName().equals(prefix+"PaymentNotice")) 18573 return true; 18574 if (xpp.getName().equals(prefix+"PaymentReconciliation")) 18575 return true; 18576 if (xpp.getName().equals(prefix+"Person")) 18577 return true; 18578 if (xpp.getName().equals(prefix+"PlanDefinition")) 18579 return true; 18580 if (xpp.getName().equals(prefix+"Practitioner")) 18581 return true; 18582 if (xpp.getName().equals(prefix+"PractitionerRole")) 18583 return true; 18584 if (xpp.getName().equals(prefix+"Procedure")) 18585 return true; 18586 if (xpp.getName().equals(prefix+"ProcedureRequest")) 18587 return true; 18588 if (xpp.getName().equals(prefix+"ProcessRequest")) 18589 return true; 18590 if (xpp.getName().equals(prefix+"ProcessResponse")) 18591 return true; 18592 if (xpp.getName().equals(prefix+"Provenance")) 18593 return true; 18594 if (xpp.getName().equals(prefix+"Questionnaire")) 18595 return true; 18596 if (xpp.getName().equals(prefix+"QuestionnaireResponse")) 18597 return true; 18598 if (xpp.getName().equals(prefix+"ReferralRequest")) 18599 return true; 18600 if (xpp.getName().equals(prefix+"RelatedPerson")) 18601 return true; 18602 if (xpp.getName().equals(prefix+"RequestGroup")) 18603 return true; 18604 if (xpp.getName().equals(prefix+"ResearchStudy")) 18605 return true; 18606 if (xpp.getName().equals(prefix+"ResearchSubject")) 18607 return true; 18608 if (xpp.getName().equals(prefix+"RiskAssessment")) 18609 return true; 18610 if (xpp.getName().equals(prefix+"Schedule")) 18611 return true; 18612 if (xpp.getName().equals(prefix+"SearchParameter")) 18613 return true; 18614 if (xpp.getName().equals(prefix+"Sequence")) 18615 return true; 18616 if (xpp.getName().equals(prefix+"ServiceDefinition")) 18617 return true; 18618 if (xpp.getName().equals(prefix+"Slot")) 18619 return true; 18620 if (xpp.getName().equals(prefix+"Specimen")) 18621 return true; 18622 if (xpp.getName().equals(prefix+"StructureDefinition")) 18623 return true; 18624 if (xpp.getName().equals(prefix+"StructureMap")) 18625 return true; 18626 if (xpp.getName().equals(prefix+"Subscription")) 18627 return true; 18628 if (xpp.getName().equals(prefix+"Substance")) 18629 return true; 18630 if (xpp.getName().equals(prefix+"SupplyDelivery")) 18631 return true; 18632 if (xpp.getName().equals(prefix+"SupplyRequest")) 18633 return true; 18634 if (xpp.getName().equals(prefix+"Task")) 18635 return true; 18636 if (xpp.getName().equals(prefix+"TestReport")) 18637 return true; 18638 if (xpp.getName().equals(prefix+"TestScript")) 18639 return true; 18640 if (xpp.getName().equals(prefix+"ValueSet")) 18641 return true; 18642 if (xpp.getName().equals(prefix+"VisionPrescription")) 18643 return true; 18644 if (xpp.getName().equals(prefix+"Date")) 18645 return true; 18646 if (xpp.getName().equals(prefix+"DateTime")) 18647 return true; 18648 if (xpp.getName().equals(prefix+"Code")) 18649 return true; 18650 if (xpp.getName().equals(prefix+"String")) 18651 return true; 18652 if (xpp.getName().equals(prefix+"Integer")) 18653 return true; 18654 if (xpp.getName().equals(prefix+"Oid")) 18655 return true; 18656 if (xpp.getName().equals(prefix+"Uri")) 18657 return true; 18658 if (xpp.getName().equals(prefix+"Uuid")) 18659 return true; 18660 if (xpp.getName().equals(prefix+"Instant")) 18661 return true; 18662 if (xpp.getName().equals(prefix+"Boolean")) 18663 return true; 18664 if (xpp.getName().equals(prefix+"Base64Binary")) 18665 return true; 18666 if (xpp.getName().equals(prefix+"UnsignedInt")) 18667 return true; 18668 if (xpp.getName().equals(prefix+"Markdown")) 18669 return true; 18670 if (xpp.getName().equals(prefix+"Time")) 18671 return true; 18672 if (xpp.getName().equals(prefix+"Id")) 18673 return true; 18674 if (xpp.getName().equals(prefix+"PositiveInt")) 18675 return true; 18676 if (xpp.getName().equals(prefix+"Decimal")) 18677 return true; 18678 return false; 18679 } 18680 protected void composeElementElements(Element element) throws IOException { 18681 for (Extension e : element.getExtension()) { 18682 composeExtension("extension", e); 18683 } 18684 } 18685 18686 protected void composeBackboneElements(BackboneElement element) throws IOException { 18687 composeElementElements(element); 18688 for (Extension e : element.getModifierExtension()) { 18689 composeExtension("modifierExtension", e); 18690 } 18691 } 18692 18693 protected <E extends Enum<E>> void composeEnumeration(String name, Enumeration<E> value, EnumFactory e) throws IOException { 18694 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) { 18695 composeElementAttributes(value); 18696 if (value.getValue() != null) 18697 xml.attribute("value", e.toCode(value.getValue())); 18698 18699 xml.enter(FHIR_NS, name); 18700 composeElementElements(value); 18701 composeElementClose(value); 18702 xml.exit(FHIR_NS, name); 18703 } 18704 } 18705 18706 protected void composeDate(String name, DateType value) throws IOException { 18707 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// date 18708 composeElementAttributes(value); 18709 if (value.asStringValue() != null) 18710 xml.attribute("value", value.asStringValue()); 18711 18712 xml.enter(FHIR_NS, name); 18713 composeElementElements(value); 18714 composeElementClose(value); 18715 xml.exit(FHIR_NS, name); 18716 } 18717 } 18718 18719 protected void composeDateTime(String name, DateTimeType value) throws IOException { 18720 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// dateTime 18721 composeElementAttributes(value); 18722 if (value.asStringValue() != null) 18723 xml.attribute("value", value.asStringValue()); 18724 18725 xml.enter(FHIR_NS, name); 18726 composeElementElements(value); 18727 composeElementClose(value); 18728 xml.exit(FHIR_NS, name); 18729 } 18730 } 18731 18732 protected void composeCode(String name, CodeType value) throws IOException { 18733 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// code 18734 composeElementAttributes(value); 18735 if (value.asStringValue() != null) 18736 xml.attribute("value", value.asStringValue()); 18737 18738 xml.enter(FHIR_NS, name); 18739 composeElementElements(value); 18740 composeElementClose(value); 18741 xml.exit(FHIR_NS, name); 18742 } 18743 } 18744 18745 protected void composeString(String name, StringType value) throws IOException { 18746 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// string 18747 composeElementAttributes(value); 18748 if (value.asStringValue() != null) 18749 xml.attribute("value", value.asStringValue()); 18750 18751 xml.enter(FHIR_NS, name); 18752 composeElementElements(value); 18753 composeElementClose(value); 18754 xml.exit(FHIR_NS, name); 18755 } 18756 } 18757 18758 protected void composeInteger(String name, IntegerType value) throws IOException { 18759 if (value != null) { // integer 18760 composeElementAttributes(value); 18761 if (value.asStringValue() != null) 18762 xml.attribute("value", value.asStringValue()); 18763 18764 xml.enter(FHIR_NS, name); 18765 composeElementElements(value); 18766 composeElementClose(value); 18767 xml.exit(FHIR_NS, name); 18768 } 18769 } 18770 18771 protected void composeOid(String name, OidType value) throws IOException { 18772 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// oid 18773 composeElementAttributes(value); 18774 if (value.asStringValue() != null) 18775 xml.attribute("value", value.asStringValue()); 18776 18777 xml.enter(FHIR_NS, name); 18778 composeElementElements(value); 18779 composeElementClose(value); 18780 xml.exit(FHIR_NS, name); 18781 } 18782 } 18783 18784 protected void composeUri(String name, UriType value) throws IOException { 18785 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// uri 18786 composeElementAttributes(value); 18787 if (value.asStringValue() != null) 18788 xml.attribute("value", value.asStringValue()); 18789 18790 xml.enter(FHIR_NS, name); 18791 composeElementElements(value); 18792 composeElementClose(value); 18793 xml.exit(FHIR_NS, name); 18794 } 18795 } 18796 18797 protected void composeUuid(String name, UuidType value) throws IOException { 18798 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// uuid 18799 composeElementAttributes(value); 18800 if (value.asStringValue() != null) 18801 xml.attribute("value", value.asStringValue()); 18802 18803 xml.enter(FHIR_NS, name); 18804 composeElementElements(value); 18805 composeElementClose(value); 18806 xml.exit(FHIR_NS, name); 18807 } 18808 } 18809 18810 protected void composeInstant(String name, InstantType value) throws IOException { 18811 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// instant 18812 composeElementAttributes(value); 18813 if (value.asStringValue() != null) 18814 xml.attribute("value", value.asStringValue()); 18815 18816 xml.enter(FHIR_NS, name); 18817 composeElementElements(value); 18818 composeElementClose(value); 18819 xml.exit(FHIR_NS, name); 18820 } 18821 } 18822 18823 protected void composeBoolean(String name, BooleanType value) throws IOException { 18824 if (value != null) { // boolean 18825 composeElementAttributes(value); 18826 if (value.asStringValue() != null) 18827 xml.attribute("value", value.asStringValue()); 18828 18829 xml.enter(FHIR_NS, name); 18830 composeElementElements(value); 18831 composeElementClose(value); 18832 xml.exit(FHIR_NS, name); 18833 } 18834 } 18835 18836 protected void composeBase64Binary(String name, Base64BinaryType value) throws IOException { 18837 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// base64Binary 18838 composeElementAttributes(value); 18839 if (value.asStringValue() != null) 18840 xml.attribute("value", value.asStringValue()); 18841 18842 xml.enter(FHIR_NS, name); 18843 composeElementElements(value); 18844 composeElementClose(value); 18845 xml.exit(FHIR_NS, name); 18846 } 18847 } 18848 18849 protected void composeUnsignedInt(String name, UnsignedIntType value) throws IOException { 18850 if (value != null) { // unsignedInt 18851 composeElementAttributes(value); 18852 if (value.asStringValue() != null) 18853 xml.attribute("value", value.asStringValue()); 18854 18855 xml.enter(FHIR_NS, name); 18856 composeElementElements(value); 18857 composeElementClose(value); 18858 xml.exit(FHIR_NS, name); 18859 } 18860 } 18861 18862 protected void composeMarkdown(String name, MarkdownType value) throws IOException { 18863 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// markdown 18864 composeElementAttributes(value); 18865 if (value.asStringValue() != null) 18866 xml.attribute("value", value.asStringValue()); 18867 18868 xml.enter(FHIR_NS, name); 18869 composeElementElements(value); 18870 composeElementClose(value); 18871 xml.exit(FHIR_NS, name); 18872 } 18873 } 18874 18875 protected void composeTime(String name, TimeType value) throws IOException { 18876 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// time 18877 composeElementAttributes(value); 18878 if (value.asStringValue() != null) 18879 xml.attribute("value", value.asStringValue()); 18880 18881 xml.enter(FHIR_NS, name); 18882 composeElementElements(value); 18883 composeElementClose(value); 18884 xml.exit(FHIR_NS, name); 18885 } 18886 } 18887 18888 protected void composeId(String name, IdType value) throws IOException { 18889 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || !Utilities.noString(value.getValue()))) {// id 18890 composeElementAttributes(value); 18891 if (value.asStringValue() != null) 18892 xml.attribute("value", value.asStringValue()); 18893 18894 xml.enter(FHIR_NS, name); 18895 composeElementElements(value); 18896 composeElementClose(value); 18897 xml.exit(FHIR_NS, name); 18898 } 18899 } 18900 18901 protected void composePositiveInt(String name, PositiveIntType value) throws IOException { 18902 if (value != null) { // positiveInt 18903 composeElementAttributes(value); 18904 if (value.asStringValue() != null) 18905 xml.attribute("value", value.asStringValue()); 18906 18907 xml.enter(FHIR_NS, name); 18908 composeElementElements(value); 18909 composeElementClose(value); 18910 xml.exit(FHIR_NS, name); 18911 } 18912 } 18913 18914 protected void composeDecimal(String name, DecimalType value) throws IOException { 18915 if (value != null && (!Utilities.noString(value.getId()) || ExtensionHelper.hasExtensions(value) || value.getValue() != null)) {// decimal 18916 composeElementAttributes(value); 18917 if (value.asStringValue() != null) 18918 xml.attribute("value", value.asStringValue()); 18919 18920 xml.enter(FHIR_NS, name); 18921 composeElementElements(value); 18922 composeElementClose(value); 18923 xml.exit(FHIR_NS, name); 18924 } 18925 } 18926 18927 protected void composeExtension(String name, Extension element) throws IOException { 18928 if (element != null) { 18929 composeElementAttributes(element); 18930 if (element.hasUrlElement()) 18931 xml.attribute("url", element.getUrlElement().getValue()); 18932 xml.enter(FHIR_NS, name); 18933 composeExtensionElements(element); 18934 composeElementClose(element); 18935 xml.exit(FHIR_NS, name); 18936 } 18937 } 18938 18939 protected void composeExtensionElements(Extension element) throws IOException { 18940 composeElementElements(element); 18941 if (element.hasValue()) { 18942 composeType("value", element.getValue()); 18943 } } 18944 18945 protected void composeNarrative(String name, Narrative element) throws IOException { 18946 if (element != null) { 18947 composeElementAttributes(element); 18948 xml.enter(FHIR_NS, name); 18949 composeNarrativeElements(element); 18950 composeElementClose(element); 18951 xml.exit(FHIR_NS, name); 18952 } 18953 } 18954 18955 protected void composeNarrativeElements(Narrative element) throws IOException { 18956 composeElementElements(element); 18957 if (element.hasStatusElement()) 18958 composeEnumeration("status", element.getStatusElement(), new Narrative.NarrativeStatusEnumFactory()); 18959 if (element.hasDiv()) { 18960 composeXhtml("div", element.getDiv()); 18961 } 18962 } 18963 18964 protected void composeDuration(String name, Duration element) throws IOException { 18965 if (element != null) { 18966 composeTypeAttributes(element); 18967 xml.enter(FHIR_NS, name); 18968 composeDurationElements(element); 18969 composeElementClose(element); 18970 xml.exit(FHIR_NS, name); 18971 } 18972 } 18973 18974 protected void composeDurationElements(Duration element) throws IOException { 18975 composeQuantityElements(element); 18976 } 18977 18978 protected void composeCount(String name, Count element) throws IOException { 18979 if (element != null) { 18980 composeTypeAttributes(element); 18981 xml.enter(FHIR_NS, name); 18982 composeCountElements(element); 18983 composeElementClose(element); 18984 xml.exit(FHIR_NS, name); 18985 } 18986 } 18987 18988 protected void composeCountElements(Count element) throws IOException { 18989 composeQuantityElements(element); 18990 } 18991 18992 protected void composeMoney(String name, Money element) throws IOException { 18993 if (element != null) { 18994 composeTypeAttributes(element); 18995 xml.enter(FHIR_NS, name); 18996 composeMoneyElements(element); 18997 composeElementClose(element); 18998 xml.exit(FHIR_NS, name); 18999 } 19000 } 19001 19002 protected void composeMoneyElements(Money element) throws IOException { 19003 composeQuantityElements(element); 19004 } 19005 19006 protected void composeDistance(String name, Distance element) throws IOException { 19007 if (element != null) { 19008 composeTypeAttributes(element); 19009 xml.enter(FHIR_NS, name); 19010 composeDistanceElements(element); 19011 composeElementClose(element); 19012 xml.exit(FHIR_NS, name); 19013 } 19014 } 19015 19016 protected void composeDistanceElements(Distance element) throws IOException { 19017 composeQuantityElements(element); 19018 } 19019 19020 protected void composeAge(String name, Age element) throws IOException { 19021 if (element != null) { 19022 composeTypeAttributes(element); 19023 xml.enter(FHIR_NS, name); 19024 composeAgeElements(element); 19025 composeElementClose(element); 19026 xml.exit(FHIR_NS, name); 19027 } 19028 } 19029 19030 protected void composeAgeElements(Age element) throws IOException { 19031 composeQuantityElements(element); 19032 } 19033 19034 protected void composeReference(String name, Reference element) throws IOException { 19035 if (element != null) { 19036 composeTypeAttributes(element); 19037 xml.enter(FHIR_NS, name); 19038 composeReferenceElements(element); 19039 composeElementClose(element); 19040 xml.exit(FHIR_NS, name); 19041 } 19042 } 19043 19044 protected void composeReferenceElements(Reference element) throws IOException { 19045 composeElementElements(element); 19046 if (element.hasReferenceElement()) { 19047 composeString("reference", element.getReferenceElement()); 19048 } 19049 if (element.hasIdentifier()) { 19050 composeIdentifier("identifier", element.getIdentifier()); 19051 } 19052 if (element.hasDisplayElement()) { 19053 composeString("display", element.getDisplayElement()); 19054 } 19055 } 19056 19057 protected void composeQuantity(String name, Quantity element) throws IOException { 19058 if (element != null) { 19059 composeTypeAttributes(element); 19060 xml.enter(FHIR_NS, name); 19061 composeQuantityElements(element); 19062 composeElementClose(element); 19063 xml.exit(FHIR_NS, name); 19064 } 19065 } 19066 19067 protected void composeQuantityElements(Quantity element) throws IOException { 19068 composeElementElements(element); 19069 if (element.hasValueElement()) { 19070 composeDecimal("value", element.getValueElement()); 19071 } 19072 if (element.hasComparatorElement()) 19073 composeEnumeration("comparator", element.getComparatorElement(), new Quantity.QuantityComparatorEnumFactory()); 19074 if (element.hasUnitElement()) { 19075 composeString("unit", element.getUnitElement()); 19076 } 19077 if (element.hasSystemElement()) { 19078 composeUri("system", element.getSystemElement()); 19079 } 19080 if (element.hasCodeElement()) { 19081 composeCode("code", element.getCodeElement()); 19082 } 19083 } 19084 19085 protected void composePeriod(String name, Period element) throws IOException { 19086 if (element != null) { 19087 composeTypeAttributes(element); 19088 xml.enter(FHIR_NS, name); 19089 composePeriodElements(element); 19090 composeElementClose(element); 19091 xml.exit(FHIR_NS, name); 19092 } 19093 } 19094 19095 protected void composePeriodElements(Period element) throws IOException { 19096 composeElementElements(element); 19097 if (element.hasStartElement()) { 19098 composeDateTime("start", element.getStartElement()); 19099 } 19100 if (element.hasEndElement()) { 19101 composeDateTime("end", element.getEndElement()); 19102 } 19103 } 19104 19105 protected void composeAttachment(String name, Attachment element) throws IOException { 19106 if (element != null) { 19107 composeTypeAttributes(element); 19108 xml.enter(FHIR_NS, name); 19109 composeAttachmentElements(element); 19110 composeElementClose(element); 19111 xml.exit(FHIR_NS, name); 19112 } 19113 } 19114 19115 protected void composeAttachmentElements(Attachment element) throws IOException { 19116 composeElementElements(element); 19117 if (element.hasContentTypeElement()) { 19118 composeCode("contentType", element.getContentTypeElement()); 19119 } 19120 if (element.hasLanguageElement()) { 19121 composeCode("language", element.getLanguageElement()); 19122 } 19123 if (element.hasDataElement()) { 19124 composeBase64Binary("data", element.getDataElement()); 19125 } 19126 if (element.hasUrlElement()) { 19127 composeUri("url", element.getUrlElement()); 19128 } 19129 if (element.hasSizeElement()) { 19130 composeUnsignedInt("size", element.getSizeElement()); 19131 } 19132 if (element.hasHashElement()) { 19133 composeBase64Binary("hash", element.getHashElement()); 19134 } 19135 if (element.hasTitleElement()) { 19136 composeString("title", element.getTitleElement()); 19137 } 19138 if (element.hasCreationElement()) { 19139 composeDateTime("creation", element.getCreationElement()); 19140 } 19141 } 19142 19143 protected void composeRange(String name, Range element) throws IOException { 19144 if (element != null) { 19145 composeTypeAttributes(element); 19146 xml.enter(FHIR_NS, name); 19147 composeRangeElements(element); 19148 composeElementClose(element); 19149 xml.exit(FHIR_NS, name); 19150 } 19151 } 19152 19153 protected void composeRangeElements(Range element) throws IOException { 19154 composeElementElements(element); 19155 if (element.hasLow()) { 19156 composeSimpleQuantity("low", element.getLow()); 19157 } 19158 if (element.hasHigh()) { 19159 composeSimpleQuantity("high", element.getHigh()); 19160 } 19161 } 19162 19163 protected void composeAnnotation(String name, Annotation element) throws IOException { 19164 if (element != null) { 19165 composeTypeAttributes(element); 19166 xml.enter(FHIR_NS, name); 19167 composeAnnotationElements(element); 19168 composeElementClose(element); 19169 xml.exit(FHIR_NS, name); 19170 } 19171 } 19172 19173 protected void composeAnnotationElements(Annotation element) throws IOException { 19174 composeElementElements(element); 19175 if (element.hasAuthor()) { 19176 composeType("author", element.getAuthor()); 19177 } if (element.hasTimeElement()) { 19178 composeDateTime("time", element.getTimeElement()); 19179 } 19180 if (element.hasTextElement()) { 19181 composeString("text", element.getTextElement()); 19182 } 19183 } 19184 19185 protected void composeIdentifier(String name, Identifier element) throws IOException { 19186 if (element != null) { 19187 composeTypeAttributes(element); 19188 xml.enter(FHIR_NS, name); 19189 composeIdentifierElements(element); 19190 composeElementClose(element); 19191 xml.exit(FHIR_NS, name); 19192 } 19193 } 19194 19195 protected void composeIdentifierElements(Identifier element) throws IOException { 19196 composeElementElements(element); 19197 if (element.hasUseElement()) 19198 composeEnumeration("use", element.getUseElement(), new Identifier.IdentifierUseEnumFactory()); 19199 if (element.hasType()) { 19200 composeCodeableConcept("type", element.getType()); 19201 } 19202 if (element.hasSystemElement()) { 19203 composeUri("system", element.getSystemElement()); 19204 } 19205 if (element.hasValueElement()) { 19206 composeString("value", element.getValueElement()); 19207 } 19208 if (element.hasPeriod()) { 19209 composePeriod("period", element.getPeriod()); 19210 } 19211 if (element.hasAssigner()) { 19212 composeReference("assigner", element.getAssigner()); 19213 } 19214 } 19215 19216 protected void composeCoding(String name, Coding element) throws IOException { 19217 if (element != null) { 19218 composeTypeAttributes(element); 19219 xml.enter(FHIR_NS, name); 19220 composeCodingElements(element); 19221 composeElementClose(element); 19222 xml.exit(FHIR_NS, name); 19223 } 19224 } 19225 19226 protected void composeCodingElements(Coding element) throws IOException { 19227 composeElementElements(element); 19228 if (element.hasSystemElement()) { 19229 composeUri("system", element.getSystemElement()); 19230 } 19231 if (element.hasVersionElement()) { 19232 composeString("version", element.getVersionElement()); 19233 } 19234 if (element.hasCodeElement()) { 19235 composeCode("code", element.getCodeElement()); 19236 } 19237 if (element.hasDisplayElement()) { 19238 composeString("display", element.getDisplayElement()); 19239 } 19240 if (element.hasUserSelectedElement()) { 19241 composeBoolean("userSelected", element.getUserSelectedElement()); 19242 } 19243 } 19244 19245 protected void composeSignature(String name, Signature element) throws IOException { 19246 if (element != null) { 19247 composeTypeAttributes(element); 19248 xml.enter(FHIR_NS, name); 19249 composeSignatureElements(element); 19250 composeElementClose(element); 19251 xml.exit(FHIR_NS, name); 19252 } 19253 } 19254 19255 protected void composeSignatureElements(Signature element) throws IOException { 19256 composeElementElements(element); 19257 if (element.hasType()) { 19258 for (Coding e : element.getType()) 19259 composeCoding("type", e); 19260 } 19261 if (element.hasWhenElement()) { 19262 composeInstant("when", element.getWhenElement()); 19263 } 19264 if (element.hasWho()) { 19265 composeType("who", element.getWho()); 19266 } if (element.hasOnBehalfOf()) { 19267 composeType("onBehalfOf", element.getOnBehalfOf()); 19268 } if (element.hasContentTypeElement()) { 19269 composeCode("contentType", element.getContentTypeElement()); 19270 } 19271 if (element.hasBlobElement()) { 19272 composeBase64Binary("blob", element.getBlobElement()); 19273 } 19274 } 19275 19276 protected void composeSampledData(String name, SampledData element) throws IOException { 19277 if (element != null) { 19278 composeTypeAttributes(element); 19279 xml.enter(FHIR_NS, name); 19280 composeSampledDataElements(element); 19281 composeElementClose(element); 19282 xml.exit(FHIR_NS, name); 19283 } 19284 } 19285 19286 protected void composeSampledDataElements(SampledData element) throws IOException { 19287 composeElementElements(element); 19288 if (element.hasOrigin()) { 19289 composeSimpleQuantity("origin", element.getOrigin()); 19290 } 19291 if (element.hasPeriodElement()) { 19292 composeDecimal("period", element.getPeriodElement()); 19293 } 19294 if (element.hasFactorElement()) { 19295 composeDecimal("factor", element.getFactorElement()); 19296 } 19297 if (element.hasLowerLimitElement()) { 19298 composeDecimal("lowerLimit", element.getLowerLimitElement()); 19299 } 19300 if (element.hasUpperLimitElement()) { 19301 composeDecimal("upperLimit", element.getUpperLimitElement()); 19302 } 19303 if (element.hasDimensionsElement()) { 19304 composePositiveInt("dimensions", element.getDimensionsElement()); 19305 } 19306 if (element.hasDataElement()) { 19307 composeString("data", element.getDataElement()); 19308 } 19309 } 19310 19311 protected void composeRatio(String name, Ratio element) throws IOException { 19312 if (element != null) { 19313 composeTypeAttributes(element); 19314 xml.enter(FHIR_NS, name); 19315 composeRatioElements(element); 19316 composeElementClose(element); 19317 xml.exit(FHIR_NS, name); 19318 } 19319 } 19320 19321 protected void composeRatioElements(Ratio element) throws IOException { 19322 composeElementElements(element); 19323 if (element.hasNumerator()) { 19324 composeQuantity("numerator", element.getNumerator()); 19325 } 19326 if (element.hasDenominator()) { 19327 composeQuantity("denominator", element.getDenominator()); 19328 } 19329 } 19330 19331 protected void composeCodeableConcept(String name, CodeableConcept element) throws IOException { 19332 if (element != null) { 19333 composeTypeAttributes(element); 19334 xml.enter(FHIR_NS, name); 19335 composeCodeableConceptElements(element); 19336 composeElementClose(element); 19337 xml.exit(FHIR_NS, name); 19338 } 19339 } 19340 19341 protected void composeCodeableConceptElements(CodeableConcept element) throws IOException { 19342 composeElementElements(element); 19343 if (element.hasCoding()) { 19344 for (Coding e : element.getCoding()) 19345 composeCoding("coding", e); 19346 } 19347 if (element.hasTextElement()) { 19348 composeString("text", element.getTextElement()); 19349 } 19350 } 19351 19352 protected void composeSimpleQuantity(String name, SimpleQuantity element) throws IOException { 19353 if (element != null) { 19354 composeTypeAttributes(element); 19355 xml.enter(FHIR_NS, name); 19356 composeSimpleQuantityElements(element); 19357 composeElementClose(element); 19358 xml.exit(FHIR_NS, name); 19359 } 19360 } 19361 19362 protected void composeSimpleQuantityElements(SimpleQuantity element) throws IOException { 19363 composeElementElements(element); 19364 if (element.hasValueElement()) { 19365 composeDecimal("value", element.getValueElement()); 19366 } 19367 if (element.hasComparatorElement()) 19368 composeEnumeration("comparator", element.getComparatorElement(), new SimpleQuantity.QuantityComparatorEnumFactory()); 19369 if (element.hasUnitElement()) { 19370 composeString("unit", element.getUnitElement()); 19371 } 19372 if (element.hasSystemElement()) { 19373 composeUri("system", element.getSystemElement()); 19374 } 19375 if (element.hasCodeElement()) { 19376 composeCode("code", element.getCodeElement()); 19377 } 19378 } 19379 19380 protected void composeMeta(String name, Meta element) throws IOException { 19381 if (element != null) { 19382 composeElementAttributes(element); 19383 xml.enter(FHIR_NS, name); 19384 composeMetaElements(element); 19385 composeElementClose(element); 19386 xml.exit(FHIR_NS, name); 19387 } 19388 } 19389 19390 protected void composeMetaElements(Meta element) throws IOException { 19391 composeElementElements(element); 19392 if (element.hasVersionIdElement()) { 19393 composeId("versionId", element.getVersionIdElement()); 19394 } 19395 if (element.hasLastUpdatedElement()) { 19396 composeInstant("lastUpdated", element.getLastUpdatedElement()); 19397 } 19398 if (element.hasProfile()) { 19399 for (UriType e : element.getProfile()) 19400 composeUri("profile", e); 19401 } 19402 if (element.hasSecurity()) { 19403 for (Coding e : element.getSecurity()) 19404 composeCoding("security", e); 19405 } 19406 if (element.hasTag()) { 19407 for (Coding e : element.getTag()) 19408 composeCoding("tag", e); 19409 } 19410 } 19411 19412 protected void composeAddress(String name, Address element) throws IOException { 19413 if (element != null) { 19414 composeElementAttributes(element); 19415 xml.enter(FHIR_NS, name); 19416 composeAddressElements(element); 19417 composeElementClose(element); 19418 xml.exit(FHIR_NS, name); 19419 } 19420 } 19421 19422 protected void composeAddressElements(Address element) throws IOException { 19423 composeElementElements(element); 19424 if (element.hasUseElement()) 19425 composeEnumeration("use", element.getUseElement(), new Address.AddressUseEnumFactory()); 19426 if (element.hasTypeElement()) 19427 composeEnumeration("type", element.getTypeElement(), new Address.AddressTypeEnumFactory()); 19428 if (element.hasTextElement()) { 19429 composeString("text", element.getTextElement()); 19430 } 19431 if (element.hasLine()) { 19432 for (StringType e : element.getLine()) 19433 composeString("line", e); 19434 } 19435 if (element.hasCityElement()) { 19436 composeString("city", element.getCityElement()); 19437 } 19438 if (element.hasDistrictElement()) { 19439 composeString("district", element.getDistrictElement()); 19440 } 19441 if (element.hasStateElement()) { 19442 composeString("state", element.getStateElement()); 19443 } 19444 if (element.hasPostalCodeElement()) { 19445 composeString("postalCode", element.getPostalCodeElement()); 19446 } 19447 if (element.hasCountryElement()) { 19448 composeString("country", element.getCountryElement()); 19449 } 19450 if (element.hasPeriod()) { 19451 composePeriod("period", element.getPeriod()); 19452 } 19453 } 19454 19455 protected void composeTriggerDefinition(String name, TriggerDefinition element) throws IOException { 19456 if (element != null) { 19457 composeElementAttributes(element); 19458 xml.enter(FHIR_NS, name); 19459 composeTriggerDefinitionElements(element); 19460 composeElementClose(element); 19461 xml.exit(FHIR_NS, name); 19462 } 19463 } 19464 19465 protected void composeTriggerDefinitionElements(TriggerDefinition element) throws IOException { 19466 composeElementElements(element); 19467 if (element.hasTypeElement()) 19468 composeEnumeration("type", element.getTypeElement(), new TriggerDefinition.TriggerTypeEnumFactory()); 19469 if (element.hasEventNameElement()) { 19470 composeString("eventName", element.getEventNameElement()); 19471 } 19472 if (element.hasEventTiming()) { 19473 composeType("eventTiming", element.getEventTiming()); 19474 } if (element.hasEventData()) { 19475 composeDataRequirement("eventData", element.getEventData()); 19476 } 19477 } 19478 19479 protected void composeContributor(String name, Contributor element) throws IOException { 19480 if (element != null) { 19481 composeElementAttributes(element); 19482 xml.enter(FHIR_NS, name); 19483 composeContributorElements(element); 19484 composeElementClose(element); 19485 xml.exit(FHIR_NS, name); 19486 } 19487 } 19488 19489 protected void composeContributorElements(Contributor element) throws IOException { 19490 composeElementElements(element); 19491 if (element.hasTypeElement()) 19492 composeEnumeration("type", element.getTypeElement(), new Contributor.ContributorTypeEnumFactory()); 19493 if (element.hasNameElement()) { 19494 composeString("name", element.getNameElement()); 19495 } 19496 if (element.hasContact()) { 19497 for (ContactDetail e : element.getContact()) 19498 composeContactDetail("contact", e); 19499 } 19500 } 19501 19502 protected void composeDataRequirement(String name, DataRequirement element) throws IOException { 19503 if (element != null) { 19504 composeElementAttributes(element); 19505 xml.enter(FHIR_NS, name); 19506 composeDataRequirementElements(element); 19507 composeElementClose(element); 19508 xml.exit(FHIR_NS, name); 19509 } 19510 } 19511 19512 protected void composeDataRequirementElements(DataRequirement element) throws IOException { 19513 composeElementElements(element); 19514 if (element.hasTypeElement()) { 19515 composeCode("type", element.getTypeElement()); 19516 } 19517 if (element.hasProfile()) { 19518 for (UriType e : element.getProfile()) 19519 composeUri("profile", e); 19520 } 19521 if (element.hasMustSupport()) { 19522 for (StringType e : element.getMustSupport()) 19523 composeString("mustSupport", e); 19524 } 19525 if (element.hasCodeFilter()) { 19526 for (DataRequirement.DataRequirementCodeFilterComponent e : element.getCodeFilter()) 19527 composeDataRequirementDataRequirementCodeFilterComponent("codeFilter", e); 19528 } 19529 if (element.hasDateFilter()) { 19530 for (DataRequirement.DataRequirementDateFilterComponent e : element.getDateFilter()) 19531 composeDataRequirementDataRequirementDateFilterComponent("dateFilter", e); 19532 } 19533 } 19534 19535 protected void composeDataRequirementDataRequirementCodeFilterComponent(String name, DataRequirement.DataRequirementCodeFilterComponent element) throws IOException { 19536 if (element != null) { 19537 composeElementAttributes(element); 19538 xml.enter(FHIR_NS, name); 19539 composeDataRequirementDataRequirementCodeFilterComponentElements(element); 19540 composeElementClose(element); 19541 xml.exit(FHIR_NS, name); 19542 } 19543 } 19544 19545 protected void composeDataRequirementDataRequirementCodeFilterComponentElements(DataRequirement.DataRequirementCodeFilterComponent element) throws IOException { 19546 composeElementElements(element); 19547 if (element.hasPathElement()) { 19548 composeString("path", element.getPathElement()); 19549 } 19550 if (element.hasValueSet()) { 19551 composeType("valueSet", element.getValueSet()); 19552 } if (element.hasValueCode()) { 19553 for (CodeType e : element.getValueCode()) 19554 composeCode("valueCode", e); 19555 } 19556 if (element.hasValueCoding()) { 19557 for (Coding e : element.getValueCoding()) 19558 composeCoding("valueCoding", e); 19559 } 19560 if (element.hasValueCodeableConcept()) { 19561 for (CodeableConcept e : element.getValueCodeableConcept()) 19562 composeCodeableConcept("valueCodeableConcept", e); 19563 } 19564 } 19565 19566 protected void composeDataRequirementDataRequirementDateFilterComponent(String name, DataRequirement.DataRequirementDateFilterComponent element) throws IOException { 19567 if (element != null) { 19568 composeElementAttributes(element); 19569 xml.enter(FHIR_NS, name); 19570 composeDataRequirementDataRequirementDateFilterComponentElements(element); 19571 composeElementClose(element); 19572 xml.exit(FHIR_NS, name); 19573 } 19574 } 19575 19576 protected void composeDataRequirementDataRequirementDateFilterComponentElements(DataRequirement.DataRequirementDateFilterComponent element) throws IOException { 19577 composeElementElements(element); 19578 if (element.hasPathElement()) { 19579 composeString("path", element.getPathElement()); 19580 } 19581 if (element.hasValue()) { 19582 composeType("value", element.getValue()); 19583 } } 19584 19585 protected void composeDosage(String name, Dosage element) throws IOException { 19586 if (element != null) { 19587 composeElementAttributes(element); 19588 xml.enter(FHIR_NS, name); 19589 composeDosageElements(element); 19590 composeElementClose(element); 19591 xml.exit(FHIR_NS, name); 19592 } 19593 } 19594 19595 protected void composeDosageElements(Dosage element) throws IOException { 19596 composeElementElements(element); 19597 if (element.hasSequenceElement()) { 19598 composeInteger("sequence", element.getSequenceElement()); 19599 } 19600 if (element.hasTextElement()) { 19601 composeString("text", element.getTextElement()); 19602 } 19603 if (element.hasAdditionalInstruction()) { 19604 for (CodeableConcept e : element.getAdditionalInstruction()) 19605 composeCodeableConcept("additionalInstruction", e); 19606 } 19607 if (element.hasPatientInstructionElement()) { 19608 composeString("patientInstruction", element.getPatientInstructionElement()); 19609 } 19610 if (element.hasTiming()) { 19611 composeTiming("timing", element.getTiming()); 19612 } 19613 if (element.hasAsNeeded()) { 19614 composeType("asNeeded", element.getAsNeeded()); 19615 } if (element.hasSite()) { 19616 composeCodeableConcept("site", element.getSite()); 19617 } 19618 if (element.hasRoute()) { 19619 composeCodeableConcept("route", element.getRoute()); 19620 } 19621 if (element.hasMethod()) { 19622 composeCodeableConcept("method", element.getMethod()); 19623 } 19624 if (element.hasDose()) { 19625 composeType("dose", element.getDose()); 19626 } if (element.hasMaxDosePerPeriod()) { 19627 composeRatio("maxDosePerPeriod", element.getMaxDosePerPeriod()); 19628 } 19629 if (element.hasMaxDosePerAdministration()) { 19630 composeSimpleQuantity("maxDosePerAdministration", element.getMaxDosePerAdministration()); 19631 } 19632 if (element.hasMaxDosePerLifetime()) { 19633 composeSimpleQuantity("maxDosePerLifetime", element.getMaxDosePerLifetime()); 19634 } 19635 if (element.hasRate()) { 19636 composeType("rate", element.getRate()); 19637 } } 19638 19639 protected void composeRelatedArtifact(String name, RelatedArtifact element) throws IOException { 19640 if (element != null) { 19641 composeElementAttributes(element); 19642 xml.enter(FHIR_NS, name); 19643 composeRelatedArtifactElements(element); 19644 composeElementClose(element); 19645 xml.exit(FHIR_NS, name); 19646 } 19647 } 19648 19649 protected void composeRelatedArtifactElements(RelatedArtifact element) throws IOException { 19650 composeElementElements(element); 19651 if (element.hasTypeElement()) 19652 composeEnumeration("type", element.getTypeElement(), new RelatedArtifact.RelatedArtifactTypeEnumFactory()); 19653 if (element.hasDisplayElement()) { 19654 composeString("display", element.getDisplayElement()); 19655 } 19656 if (element.hasCitationElement()) { 19657 composeString("citation", element.getCitationElement()); 19658 } 19659 if (element.hasUrlElement()) { 19660 composeUri("url", element.getUrlElement()); 19661 } 19662 if (element.hasDocument()) { 19663 composeAttachment("document", element.getDocument()); 19664 } 19665 if (element.hasResource()) { 19666 composeReference("resource", element.getResource()); 19667 } 19668 } 19669 19670 protected void composeContactDetail(String name, ContactDetail element) throws IOException { 19671 if (element != null) { 19672 composeElementAttributes(element); 19673 xml.enter(FHIR_NS, name); 19674 composeContactDetailElements(element); 19675 composeElementClose(element); 19676 xml.exit(FHIR_NS, name); 19677 } 19678 } 19679 19680 protected void composeContactDetailElements(ContactDetail element) throws IOException { 19681 composeElementElements(element); 19682 if (element.hasNameElement()) { 19683 composeString("name", element.getNameElement()); 19684 } 19685 if (element.hasTelecom()) { 19686 for (ContactPoint e : element.getTelecom()) 19687 composeContactPoint("telecom", e); 19688 } 19689 } 19690 19691 protected void composeHumanName(String name, HumanName element) throws IOException { 19692 if (element != null) { 19693 composeElementAttributes(element); 19694 xml.enter(FHIR_NS, name); 19695 composeHumanNameElements(element); 19696 composeElementClose(element); 19697 xml.exit(FHIR_NS, name); 19698 } 19699 } 19700 19701 protected void composeHumanNameElements(HumanName element) throws IOException { 19702 composeElementElements(element); 19703 if (element.hasUseElement()) 19704 composeEnumeration("use", element.getUseElement(), new HumanName.NameUseEnumFactory()); 19705 if (element.hasTextElement()) { 19706 composeString("text", element.getTextElement()); 19707 } 19708 if (element.hasFamilyElement()) { 19709 composeString("family", element.getFamilyElement()); 19710 } 19711 if (element.hasGiven()) { 19712 for (StringType e : element.getGiven()) 19713 composeString("given", e); 19714 } 19715 if (element.hasPrefix()) { 19716 for (StringType e : element.getPrefix()) 19717 composeString("prefix", e); 19718 } 19719 if (element.hasSuffix()) { 19720 for (StringType e : element.getSuffix()) 19721 composeString("suffix", e); 19722 } 19723 if (element.hasPeriod()) { 19724 composePeriod("period", element.getPeriod()); 19725 } 19726 } 19727 19728 protected void composeContactPoint(String name, ContactPoint element) throws IOException { 19729 if (element != null) { 19730 composeElementAttributes(element); 19731 xml.enter(FHIR_NS, name); 19732 composeContactPointElements(element); 19733 composeElementClose(element); 19734 xml.exit(FHIR_NS, name); 19735 } 19736 } 19737 19738 protected void composeContactPointElements(ContactPoint element) throws IOException { 19739 composeElementElements(element); 19740 if (element.hasSystemElement()) 19741 composeEnumeration("system", element.getSystemElement(), new ContactPoint.ContactPointSystemEnumFactory()); 19742 if (element.hasValueElement()) { 19743 composeString("value", element.getValueElement()); 19744 } 19745 if (element.hasUseElement()) 19746 composeEnumeration("use", element.getUseElement(), new ContactPoint.ContactPointUseEnumFactory()); 19747 if (element.hasRankElement()) { 19748 composePositiveInt("rank", element.getRankElement()); 19749 } 19750 if (element.hasPeriod()) { 19751 composePeriod("period", element.getPeriod()); 19752 } 19753 } 19754 19755 protected void composeUsageContext(String name, UsageContext element) throws IOException { 19756 if (element != null) { 19757 composeElementAttributes(element); 19758 xml.enter(FHIR_NS, name); 19759 composeUsageContextElements(element); 19760 composeElementClose(element); 19761 xml.exit(FHIR_NS, name); 19762 } 19763 } 19764 19765 protected void composeUsageContextElements(UsageContext element) throws IOException { 19766 composeElementElements(element); 19767 if (element.hasCode()) { 19768 composeCoding("code", element.getCode()); 19769 } 19770 if (element.hasValue()) { 19771 composeType("value", element.getValue()); 19772 } } 19773 19774 protected void composeTiming(String name, Timing element) throws IOException { 19775 if (element != null) { 19776 composeElementAttributes(element); 19777 xml.enter(FHIR_NS, name); 19778 composeTimingElements(element); 19779 composeElementClose(element); 19780 xml.exit(FHIR_NS, name); 19781 } 19782 } 19783 19784 protected void composeTimingElements(Timing element) throws IOException { 19785 composeElementElements(element); 19786 if (element.hasEvent()) { 19787 for (DateTimeType e : element.getEvent()) 19788 composeDateTime("event", e); 19789 } 19790 if (element.hasRepeat()) { 19791 composeTimingTimingRepeatComponent("repeat", element.getRepeat()); 19792 } 19793 if (element.hasCode()) { 19794 composeCodeableConcept("code", element.getCode()); 19795 } 19796 } 19797 19798 protected void composeTimingTimingRepeatComponent(String name, Timing.TimingRepeatComponent element) throws IOException { 19799 if (element != null) { 19800 composeElementAttributes(element); 19801 xml.enter(FHIR_NS, name); 19802 composeTimingTimingRepeatComponentElements(element); 19803 composeElementClose(element); 19804 xml.exit(FHIR_NS, name); 19805 } 19806 } 19807 19808 protected void composeTimingTimingRepeatComponentElements(Timing.TimingRepeatComponent element) throws IOException { 19809 composeElementElements(element); 19810 if (element.hasBounds()) { 19811 composeType("bounds", element.getBounds()); 19812 } if (element.hasCountElement()) { 19813 composeInteger("count", element.getCountElement()); 19814 } 19815 if (element.hasCountMaxElement()) { 19816 composeInteger("countMax", element.getCountMaxElement()); 19817 } 19818 if (element.hasDurationElement()) { 19819 composeDecimal("duration", element.getDurationElement()); 19820 } 19821 if (element.hasDurationMaxElement()) { 19822 composeDecimal("durationMax", element.getDurationMaxElement()); 19823 } 19824 if (element.hasDurationUnitElement()) 19825 composeEnumeration("durationUnit", element.getDurationUnitElement(), new Timing.UnitsOfTimeEnumFactory()); 19826 if (element.hasFrequencyElement()) { 19827 composeInteger("frequency", element.getFrequencyElement()); 19828 } 19829 if (element.hasFrequencyMaxElement()) { 19830 composeInteger("frequencyMax", element.getFrequencyMaxElement()); 19831 } 19832 if (element.hasPeriodElement()) { 19833 composeDecimal("period", element.getPeriodElement()); 19834 } 19835 if (element.hasPeriodMaxElement()) { 19836 composeDecimal("periodMax", element.getPeriodMaxElement()); 19837 } 19838 if (element.hasPeriodUnitElement()) 19839 composeEnumeration("periodUnit", element.getPeriodUnitElement(), new Timing.UnitsOfTimeEnumFactory()); 19840 if (element.hasDayOfWeek()) 19841 for (Enumeration<Timing.DayOfWeek> e : element.getDayOfWeek()) 19842 composeEnumeration("dayOfWeek", e, new Timing.DayOfWeekEnumFactory()); 19843 if (element.hasTimeOfDay()) { 19844 for (TimeType e : element.getTimeOfDay()) 19845 composeTime("timeOfDay", e); 19846 } 19847 if (element.hasWhen()) 19848 for (Enumeration<Timing.EventTiming> e : element.getWhen()) 19849 composeEnumeration("when", e, new Timing.EventTimingEnumFactory()); 19850 if (element.hasOffsetElement()) { 19851 composeUnsignedInt("offset", element.getOffsetElement()); 19852 } 19853 } 19854 19855 protected void composeElementDefinition(String name, ElementDefinition element) throws IOException { 19856 if (element != null) { 19857 composeElementAttributes(element); 19858 xml.enter(FHIR_NS, name); 19859 composeElementDefinitionElements(element); 19860 composeElementClose(element); 19861 xml.exit(FHIR_NS, name); 19862 } 19863 } 19864 19865 protected void composeElementDefinitionElements(ElementDefinition element) throws IOException { 19866 composeElementElements(element); 19867 if (element.hasPathElement()) { 19868 composeString("path", element.getPathElement()); 19869 } 19870 if (element.hasRepresentation()) 19871 for (Enumeration<ElementDefinition.PropertyRepresentation> e : element.getRepresentation()) 19872 composeEnumeration("representation", e, new ElementDefinition.PropertyRepresentationEnumFactory()); 19873 if (element.hasSliceNameElement()) { 19874 composeString("sliceName", element.getSliceNameElement()); 19875 } 19876 if (element.hasLabelElement()) { 19877 composeString("label", element.getLabelElement()); 19878 } 19879 if (element.hasCode()) { 19880 for (Coding e : element.getCode()) 19881 composeCoding("code", e); 19882 } 19883 if (element.hasSlicing()) { 19884 composeElementDefinitionElementDefinitionSlicingComponent("slicing", element.getSlicing()); 19885 } 19886 if (element.hasShortElement()) { 19887 composeString("short", element.getShortElement()); 19888 } 19889 if (element.hasDefinitionElement()) { 19890 composeMarkdown("definition", element.getDefinitionElement()); 19891 } 19892 if (element.hasCommentElement()) { 19893 composeMarkdown("comment", element.getCommentElement()); 19894 } 19895 if (element.hasRequirementsElement()) { 19896 composeMarkdown("requirements", element.getRequirementsElement()); 19897 } 19898 if (element.hasAlias()) { 19899 for (StringType e : element.getAlias()) 19900 composeString("alias", e); 19901 } 19902 if (element.hasMinElement()) { 19903 composeUnsignedInt("min", element.getMinElement()); 19904 } 19905 if (element.hasMaxElement()) { 19906 composeString("max", element.getMaxElement()); 19907 } 19908 if (element.hasBase()) { 19909 composeElementDefinitionElementDefinitionBaseComponent("base", element.getBase()); 19910 } 19911 if (element.hasContentReferenceElement()) { 19912 composeUri("contentReference", element.getContentReferenceElement()); 19913 } 19914 if (element.hasType()) { 19915 for (ElementDefinition.TypeRefComponent e : element.getType()) 19916 composeElementDefinitionTypeRefComponent("type", e); 19917 } 19918 if (element.hasDefaultValue()) { 19919 composeType("defaultValue", element.getDefaultValue()); 19920 } if (element.hasMeaningWhenMissingElement()) { 19921 composeMarkdown("meaningWhenMissing", element.getMeaningWhenMissingElement()); 19922 } 19923 if (element.hasOrderMeaningElement()) { 19924 composeString("orderMeaning", element.getOrderMeaningElement()); 19925 } 19926 if (element.hasFixed()) { 19927 composeType("fixed", element.getFixed()); 19928 } if (element.hasPattern()) { 19929 composeType("pattern", element.getPattern()); 19930 } if (element.hasExample()) { 19931 for (ElementDefinition.ElementDefinitionExampleComponent e : element.getExample()) 19932 composeElementDefinitionElementDefinitionExampleComponent("example", e); 19933 } 19934 if (element.hasMinValue()) { 19935 composeType("minValue", element.getMinValue()); 19936 } if (element.hasMaxValue()) { 19937 composeType("maxValue", element.getMaxValue()); 19938 } if (element.hasMaxLengthElement()) { 19939 composeInteger("maxLength", element.getMaxLengthElement()); 19940 } 19941 if (element.hasCondition()) { 19942 for (IdType e : element.getCondition()) 19943 composeId("condition", e); 19944 } 19945 if (element.hasConstraint()) { 19946 for (ElementDefinition.ElementDefinitionConstraintComponent e : element.getConstraint()) 19947 composeElementDefinitionElementDefinitionConstraintComponent("constraint", e); 19948 } 19949 if (element.hasMustSupportElement()) { 19950 composeBoolean("mustSupport", element.getMustSupportElement()); 19951 } 19952 if (element.hasIsModifierElement()) { 19953 composeBoolean("isModifier", element.getIsModifierElement()); 19954 } 19955 if (element.hasIsSummaryElement()) { 19956 composeBoolean("isSummary", element.getIsSummaryElement()); 19957 } 19958 if (element.hasBinding()) { 19959 composeElementDefinitionElementDefinitionBindingComponent("binding", element.getBinding()); 19960 } 19961 if (element.hasMapping()) { 19962 for (ElementDefinition.ElementDefinitionMappingComponent e : element.getMapping()) 19963 composeElementDefinitionElementDefinitionMappingComponent("mapping", e); 19964 } 19965 } 19966 19967 protected void composeElementDefinitionElementDefinitionSlicingComponent(String name, ElementDefinition.ElementDefinitionSlicingComponent element) throws IOException { 19968 if (element != null) { 19969 composeElementAttributes(element); 19970 xml.enter(FHIR_NS, name); 19971 composeElementDefinitionElementDefinitionSlicingComponentElements(element); 19972 composeElementClose(element); 19973 xml.exit(FHIR_NS, name); 19974 } 19975 } 19976 19977 protected void composeElementDefinitionElementDefinitionSlicingComponentElements(ElementDefinition.ElementDefinitionSlicingComponent element) throws IOException { 19978 composeElementElements(element); 19979 if (element.hasDiscriminator()) { 19980 for (ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent e : element.getDiscriminator()) 19981 composeElementDefinitionElementDefinitionSlicingDiscriminatorComponent("discriminator", e); 19982 } 19983 if (element.hasDescriptionElement()) { 19984 composeString("description", element.getDescriptionElement()); 19985 } 19986 if (element.hasOrderedElement()) { 19987 composeBoolean("ordered", element.getOrderedElement()); 19988 } 19989 if (element.hasRulesElement()) 19990 composeEnumeration("rules", element.getRulesElement(), new ElementDefinition.SlicingRulesEnumFactory()); 19991 } 19992 19993 protected void composeElementDefinitionElementDefinitionSlicingDiscriminatorComponent(String name, ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent element) throws IOException { 19994 if (element != null) { 19995 composeElementAttributes(element); 19996 xml.enter(FHIR_NS, name); 19997 composeElementDefinitionElementDefinitionSlicingDiscriminatorComponentElements(element); 19998 composeElementClose(element); 19999 xml.exit(FHIR_NS, name); 20000 } 20001 } 20002 20003 protected void composeElementDefinitionElementDefinitionSlicingDiscriminatorComponentElements(ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent element) throws IOException { 20004 composeElementElements(element); 20005 if (element.hasTypeElement()) 20006 composeEnumeration("type", element.getTypeElement(), new ElementDefinition.DiscriminatorTypeEnumFactory()); 20007 if (element.hasPathElement()) { 20008 composeString("path", element.getPathElement()); 20009 } 20010 } 20011 20012 protected void composeElementDefinitionElementDefinitionBaseComponent(String name, ElementDefinition.ElementDefinitionBaseComponent element) throws IOException { 20013 if (element != null) { 20014 composeElementAttributes(element); 20015 xml.enter(FHIR_NS, name); 20016 composeElementDefinitionElementDefinitionBaseComponentElements(element); 20017 composeElementClose(element); 20018 xml.exit(FHIR_NS, name); 20019 } 20020 } 20021 20022 protected void composeElementDefinitionElementDefinitionBaseComponentElements(ElementDefinition.ElementDefinitionBaseComponent element) throws IOException { 20023 composeElementElements(element); 20024 if (element.hasPathElement()) { 20025 composeString("path", element.getPathElement()); 20026 } 20027 if (element.hasMinElement()) { 20028 composeUnsignedInt("min", element.getMinElement()); 20029 } 20030 if (element.hasMaxElement()) { 20031 composeString("max", element.getMaxElement()); 20032 } 20033 } 20034 20035 protected void composeElementDefinitionTypeRefComponent(String name, ElementDefinition.TypeRefComponent element) throws IOException { 20036 if (element != null) { 20037 composeElementAttributes(element); 20038 xml.enter(FHIR_NS, name); 20039 composeElementDefinitionTypeRefComponentElements(element); 20040 composeElementClose(element); 20041 xml.exit(FHIR_NS, name); 20042 } 20043 } 20044 20045 protected void composeElementDefinitionTypeRefComponentElements(ElementDefinition.TypeRefComponent element) throws IOException { 20046 composeElementElements(element); 20047 if (element.hasCodeElement()) { 20048 composeUri("code", element.getCodeElement()); 20049 } 20050 if (element.hasProfileElement()) { 20051 composeUri("profile", element.getProfileElement()); 20052 } 20053 if (element.hasTargetProfileElement()) { 20054 composeUri("targetProfile", element.getTargetProfileElement()); 20055 } 20056 if (element.hasAggregation()) 20057 for (Enumeration<ElementDefinition.AggregationMode> e : element.getAggregation()) 20058 composeEnumeration("aggregation", e, new ElementDefinition.AggregationModeEnumFactory()); 20059 if (element.hasVersioningElement()) 20060 composeEnumeration("versioning", element.getVersioningElement(), new ElementDefinition.ReferenceVersionRulesEnumFactory()); 20061 } 20062 20063 protected void composeElementDefinitionElementDefinitionExampleComponent(String name, ElementDefinition.ElementDefinitionExampleComponent element) throws IOException { 20064 if (element != null) { 20065 composeElementAttributes(element); 20066 xml.enter(FHIR_NS, name); 20067 composeElementDefinitionElementDefinitionExampleComponentElements(element); 20068 composeElementClose(element); 20069 xml.exit(FHIR_NS, name); 20070 } 20071 } 20072 20073 protected void composeElementDefinitionElementDefinitionExampleComponentElements(ElementDefinition.ElementDefinitionExampleComponent element) throws IOException { 20074 composeElementElements(element); 20075 if (element.hasLabelElement()) { 20076 composeString("label", element.getLabelElement()); 20077 } 20078 if (element.hasValue()) { 20079 composeType("value", element.getValue()); 20080 } } 20081 20082 protected void composeElementDefinitionElementDefinitionConstraintComponent(String name, ElementDefinition.ElementDefinitionConstraintComponent element) throws IOException { 20083 if (element != null) { 20084 composeElementAttributes(element); 20085 xml.enter(FHIR_NS, name); 20086 composeElementDefinitionElementDefinitionConstraintComponentElements(element); 20087 composeElementClose(element); 20088 xml.exit(FHIR_NS, name); 20089 } 20090 } 20091 20092 protected void composeElementDefinitionElementDefinitionConstraintComponentElements(ElementDefinition.ElementDefinitionConstraintComponent element) throws IOException { 20093 composeElementElements(element); 20094 if (element.hasKeyElement()) { 20095 composeId("key", element.getKeyElement()); 20096 } 20097 if (element.hasRequirementsElement()) { 20098 composeString("requirements", element.getRequirementsElement()); 20099 } 20100 if (element.hasSeverityElement()) 20101 composeEnumeration("severity", element.getSeverityElement(), new ElementDefinition.ConstraintSeverityEnumFactory()); 20102 if (element.hasHumanElement()) { 20103 composeString("human", element.getHumanElement()); 20104 } 20105 if (element.hasExpressionElement()) { 20106 composeString("expression", element.getExpressionElement()); 20107 } 20108 if (element.hasXpathElement()) { 20109 composeString("xpath", element.getXpathElement()); 20110 } 20111 if (element.hasSourceElement()) { 20112 composeUri("source", element.getSourceElement()); 20113 } 20114 } 20115 20116 protected void composeElementDefinitionElementDefinitionBindingComponent(String name, ElementDefinition.ElementDefinitionBindingComponent element) throws IOException { 20117 if (element != null) { 20118 composeElementAttributes(element); 20119 xml.enter(FHIR_NS, name); 20120 composeElementDefinitionElementDefinitionBindingComponentElements(element); 20121 composeElementClose(element); 20122 xml.exit(FHIR_NS, name); 20123 } 20124 } 20125 20126 protected void composeElementDefinitionElementDefinitionBindingComponentElements(ElementDefinition.ElementDefinitionBindingComponent element) throws IOException { 20127 composeElementElements(element); 20128 if (element.hasStrengthElement()) 20129 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 20130 if (element.hasDescriptionElement()) { 20131 composeString("description", element.getDescriptionElement()); 20132 } 20133 if (element.hasValueSet()) { 20134 composeType("valueSet", element.getValueSet()); 20135 } } 20136 20137 protected void composeElementDefinitionElementDefinitionMappingComponent(String name, ElementDefinition.ElementDefinitionMappingComponent element) throws IOException { 20138 if (element != null) { 20139 composeElementAttributes(element); 20140 xml.enter(FHIR_NS, name); 20141 composeElementDefinitionElementDefinitionMappingComponentElements(element); 20142 composeElementClose(element); 20143 xml.exit(FHIR_NS, name); 20144 } 20145 } 20146 20147 protected void composeElementDefinitionElementDefinitionMappingComponentElements(ElementDefinition.ElementDefinitionMappingComponent element) throws IOException { 20148 composeElementElements(element); 20149 if (element.hasIdentityElement()) { 20150 composeId("identity", element.getIdentityElement()); 20151 } 20152 if (element.hasLanguageElement()) { 20153 composeCode("language", element.getLanguageElement()); 20154 } 20155 if (element.hasMapElement()) { 20156 composeString("map", element.getMapElement()); 20157 } 20158 if (element.hasCommentElement()) { 20159 composeString("comment", element.getCommentElement()); 20160 } 20161 } 20162 20163 protected void composeParameterDefinition(String name, ParameterDefinition element) throws IOException { 20164 if (element != null) { 20165 composeElementAttributes(element); 20166 xml.enter(FHIR_NS, name); 20167 composeParameterDefinitionElements(element); 20168 composeElementClose(element); 20169 xml.exit(FHIR_NS, name); 20170 } 20171 } 20172 20173 protected void composeParameterDefinitionElements(ParameterDefinition element) throws IOException { 20174 composeElementElements(element); 20175 if (element.hasNameElement()) { 20176 composeCode("name", element.getNameElement()); 20177 } 20178 if (element.hasUseElement()) 20179 composeEnumeration("use", element.getUseElement(), new ParameterDefinition.ParameterUseEnumFactory()); 20180 if (element.hasMinElement()) { 20181 composeInteger("min", element.getMinElement()); 20182 } 20183 if (element.hasMaxElement()) { 20184 composeString("max", element.getMaxElement()); 20185 } 20186 if (element.hasDocumentationElement()) { 20187 composeString("documentation", element.getDocumentationElement()); 20188 } 20189 if (element.hasTypeElement()) { 20190 composeCode("type", element.getTypeElement()); 20191 } 20192 if (element.hasProfile()) { 20193 composeReference("profile", element.getProfile()); 20194 } 20195 } 20196 20197 protected void composeDomainResourceAttributes(DomainResource element) throws IOException { 20198 composeResourceAttributes(element); 20199 } 20200 20201 protected void composeDomainResourceElements(DomainResource element) throws IOException { 20202 composeResourceElements(element); 20203 if (element.hasText()) { 20204 composeNarrative("text", element.getText()); 20205 } 20206 if (element.hasContained()) { 20207 for (Resource e : element.getContained()) 20208 { 20209 xml.enter(FHIR_NS, "contained"); 20210 composeResource(e); 20211 xml.exit(FHIR_NS, "contained"); 20212 } 20213 } 20214 if (element.hasExtension()) 20215 for (Extension e : element.getExtension()) 20216 composeExtension("extension", e); 20217 if (element.hasModifierExtension()) { 20218 for (Extension e : element.getModifierExtension()) 20219 composeExtension("modifierExtension", e); 20220 } 20221 } 20222 20223 protected void composeParameters(String name, Parameters element) throws IOException { 20224 if (element != null) { 20225 composeResourceAttributes(element); 20226 xml.enter(FHIR_NS, name); 20227 composeParametersElements(element); 20228 composeElementClose(element); 20229 xml.exit(FHIR_NS, name); 20230 } 20231 } 20232 20233 protected void composeParametersElements(Parameters element) throws IOException { 20234 composeResourceElements(element); 20235 if (element.hasParameter()) { 20236 for (Parameters.ParametersParameterComponent e : element.getParameter()) 20237 composeParametersParametersParameterComponent("parameter", e); 20238 } 20239 } 20240 20241 protected void composeParametersParametersParameterComponent(String name, Parameters.ParametersParameterComponent element) throws IOException { 20242 if (element != null) { 20243 composeElementAttributes(element); 20244 xml.enter(FHIR_NS, name); 20245 composeParametersParametersParameterComponentElements(element); 20246 composeElementClose(element); 20247 xml.exit(FHIR_NS, name); 20248 } 20249 } 20250 20251 protected void composeParametersParametersParameterComponentElements(Parameters.ParametersParameterComponent element) throws IOException { 20252 composeBackboneElements(element); 20253 if (element.hasNameElement()) { 20254 composeString("name", element.getNameElement()); 20255 } 20256 if (element.hasValue()) { 20257 composeType("value", element.getValue()); 20258 } if (element.hasResource()) { 20259 xml.enter(FHIR_NS, "resource"); 20260 composeResource(element.getResource()); 20261 xml.exit(FHIR_NS, "resource"); 20262 } 20263 if (element.hasPart()) { 20264 for (Parameters.ParametersParameterComponent e : element.getPart()) 20265 composeParametersParametersParameterComponent("part", e); 20266 } 20267 } 20268 20269 protected void composeResourceAttributes(Resource element) throws IOException { 20270 if (style != OutputStyle.CANONICAL) 20271 for (String comment : element.getFormatCommentsPre()) 20272 xml.comment(comment, getOutputStyle() == OutputStyle.PRETTY); 20273 } 20274 20275 protected void composeResourceElements(Resource element) throws IOException { 20276 if (element.hasIdElement()) { 20277 composeId("id", element.getIdElement()); 20278 } 20279 if (element.hasMeta()) { 20280 composeMeta("meta", element.getMeta()); 20281 } 20282 if (element.hasImplicitRulesElement()) { 20283 composeUri("implicitRules", element.getImplicitRulesElement()); 20284 } 20285 if (element.hasLanguageElement()) { 20286 composeCode("language", element.getLanguageElement()); 20287 } 20288 } 20289 20290 protected void composeAccount(String name, Account element) throws IOException { 20291 if (element != null) { 20292 composeDomainResourceAttributes(element); 20293 xml.enter(FHIR_NS, name); 20294 composeAccountElements(element); 20295 composeElementClose(element); 20296 xml.exit(FHIR_NS, name); 20297 } 20298 } 20299 20300 protected void composeAccountElements(Account element) throws IOException { 20301 composeDomainResourceElements(element); 20302 if (element.hasIdentifier()) { 20303 for (Identifier e : element.getIdentifier()) 20304 composeIdentifier("identifier", e); 20305 } 20306 if (element.hasStatusElement()) 20307 composeEnumeration("status", element.getStatusElement(), new Account.AccountStatusEnumFactory()); 20308 if (element.hasType()) { 20309 composeCodeableConcept("type", element.getType()); 20310 } 20311 if (element.hasNameElement()) { 20312 composeString("name", element.getNameElement()); 20313 } 20314 if (element.hasSubject()) { 20315 composeReference("subject", element.getSubject()); 20316 } 20317 if (element.hasPeriod()) { 20318 composePeriod("period", element.getPeriod()); 20319 } 20320 if (element.hasActive()) { 20321 composePeriod("active", element.getActive()); 20322 } 20323 if (element.hasBalance()) { 20324 composeMoney("balance", element.getBalance()); 20325 } 20326 if (element.hasCoverage()) { 20327 for (Account.CoverageComponent e : element.getCoverage()) 20328 composeAccountCoverageComponent("coverage", e); 20329 } 20330 if (element.hasOwner()) { 20331 composeReference("owner", element.getOwner()); 20332 } 20333 if (element.hasDescriptionElement()) { 20334 composeString("description", element.getDescriptionElement()); 20335 } 20336 if (element.hasGuarantor()) { 20337 for (Account.GuarantorComponent e : element.getGuarantor()) 20338 composeAccountGuarantorComponent("guarantor", e); 20339 } 20340 } 20341 20342 protected void composeAccountCoverageComponent(String name, Account.CoverageComponent element) throws IOException { 20343 if (element != null) { 20344 composeElementAttributes(element); 20345 xml.enter(FHIR_NS, name); 20346 composeAccountCoverageComponentElements(element); 20347 composeElementClose(element); 20348 xml.exit(FHIR_NS, name); 20349 } 20350 } 20351 20352 protected void composeAccountCoverageComponentElements(Account.CoverageComponent element) throws IOException { 20353 composeBackboneElements(element); 20354 if (element.hasCoverage()) { 20355 composeReference("coverage", element.getCoverage()); 20356 } 20357 if (element.hasPriorityElement()) { 20358 composePositiveInt("priority", element.getPriorityElement()); 20359 } 20360 } 20361 20362 protected void composeAccountGuarantorComponent(String name, Account.GuarantorComponent element) throws IOException { 20363 if (element != null) { 20364 composeElementAttributes(element); 20365 xml.enter(FHIR_NS, name); 20366 composeAccountGuarantorComponentElements(element); 20367 composeElementClose(element); 20368 xml.exit(FHIR_NS, name); 20369 } 20370 } 20371 20372 protected void composeAccountGuarantorComponentElements(Account.GuarantorComponent element) throws IOException { 20373 composeBackboneElements(element); 20374 if (element.hasParty()) { 20375 composeReference("party", element.getParty()); 20376 } 20377 if (element.hasOnHoldElement()) { 20378 composeBoolean("onHold", element.getOnHoldElement()); 20379 } 20380 if (element.hasPeriod()) { 20381 composePeriod("period", element.getPeriod()); 20382 } 20383 } 20384 20385 protected void composeActivityDefinition(String name, ActivityDefinition element) throws IOException { 20386 if (element != null) { 20387 composeDomainResourceAttributes(element); 20388 xml.enter(FHIR_NS, name); 20389 composeActivityDefinitionElements(element); 20390 composeElementClose(element); 20391 xml.exit(FHIR_NS, name); 20392 } 20393 } 20394 20395 protected void composeActivityDefinitionElements(ActivityDefinition element) throws IOException { 20396 composeDomainResourceElements(element); 20397 if (element.hasUrlElement()) { 20398 composeUri("url", element.getUrlElement()); 20399 } 20400 if (element.hasIdentifier()) { 20401 for (Identifier e : element.getIdentifier()) 20402 composeIdentifier("identifier", e); 20403 } 20404 if (element.hasVersionElement()) { 20405 composeString("version", element.getVersionElement()); 20406 } 20407 if (element.hasNameElement()) { 20408 composeString("name", element.getNameElement()); 20409 } 20410 if (element.hasTitleElement()) { 20411 composeString("title", element.getTitleElement()); 20412 } 20413 if (element.hasStatusElement()) 20414 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 20415 if (element.hasExperimentalElement()) { 20416 composeBoolean("experimental", element.getExperimentalElement()); 20417 } 20418 if (element.hasDateElement()) { 20419 composeDateTime("date", element.getDateElement()); 20420 } 20421 if (element.hasPublisherElement()) { 20422 composeString("publisher", element.getPublisherElement()); 20423 } 20424 if (element.hasDescriptionElement()) { 20425 composeMarkdown("description", element.getDescriptionElement()); 20426 } 20427 if (element.hasPurposeElement()) { 20428 composeMarkdown("purpose", element.getPurposeElement()); 20429 } 20430 if (element.hasUsageElement()) { 20431 composeString("usage", element.getUsageElement()); 20432 } 20433 if (element.hasApprovalDateElement()) { 20434 composeDate("approvalDate", element.getApprovalDateElement()); 20435 } 20436 if (element.hasLastReviewDateElement()) { 20437 composeDate("lastReviewDate", element.getLastReviewDateElement()); 20438 } 20439 if (element.hasEffectivePeriod()) { 20440 composePeriod("effectivePeriod", element.getEffectivePeriod()); 20441 } 20442 if (element.hasUseContext()) { 20443 for (UsageContext e : element.getUseContext()) 20444 composeUsageContext("useContext", e); 20445 } 20446 if (element.hasJurisdiction()) { 20447 for (CodeableConcept e : element.getJurisdiction()) 20448 composeCodeableConcept("jurisdiction", e); 20449 } 20450 if (element.hasTopic()) { 20451 for (CodeableConcept e : element.getTopic()) 20452 composeCodeableConcept("topic", e); 20453 } 20454 if (element.hasContributor()) { 20455 for (Contributor e : element.getContributor()) 20456 composeContributor("contributor", e); 20457 } 20458 if (element.hasContact()) { 20459 for (ContactDetail e : element.getContact()) 20460 composeContactDetail("contact", e); 20461 } 20462 if (element.hasCopyrightElement()) { 20463 composeMarkdown("copyright", element.getCopyrightElement()); 20464 } 20465 if (element.hasRelatedArtifact()) { 20466 for (RelatedArtifact e : element.getRelatedArtifact()) 20467 composeRelatedArtifact("relatedArtifact", e); 20468 } 20469 if (element.hasLibrary()) { 20470 for (Reference e : element.getLibrary()) 20471 composeReference("library", e); 20472 } 20473 if (element.hasKindElement()) 20474 composeEnumeration("kind", element.getKindElement(), new ActivityDefinition.ActivityDefinitionKindEnumFactory()); 20475 if (element.hasCode()) { 20476 composeCodeableConcept("code", element.getCode()); 20477 } 20478 if (element.hasTiming()) { 20479 composeType("timing", element.getTiming()); 20480 } if (element.hasLocation()) { 20481 composeReference("location", element.getLocation()); 20482 } 20483 if (element.hasParticipant()) { 20484 for (ActivityDefinition.ActivityDefinitionParticipantComponent e : element.getParticipant()) 20485 composeActivityDefinitionActivityDefinitionParticipantComponent("participant", e); 20486 } 20487 if (element.hasProduct()) { 20488 composeType("product", element.getProduct()); 20489 } if (element.hasQuantity()) { 20490 composeSimpleQuantity("quantity", element.getQuantity()); 20491 } 20492 if (element.hasDosage()) { 20493 for (Dosage e : element.getDosage()) 20494 composeDosage("dosage", e); 20495 } 20496 if (element.hasBodySite()) { 20497 for (CodeableConcept e : element.getBodySite()) 20498 composeCodeableConcept("bodySite", e); 20499 } 20500 if (element.hasTransform()) { 20501 composeReference("transform", element.getTransform()); 20502 } 20503 if (element.hasDynamicValue()) { 20504 for (ActivityDefinition.ActivityDefinitionDynamicValueComponent e : element.getDynamicValue()) 20505 composeActivityDefinitionActivityDefinitionDynamicValueComponent("dynamicValue", e); 20506 } 20507 } 20508 20509 protected void composeActivityDefinitionActivityDefinitionParticipantComponent(String name, ActivityDefinition.ActivityDefinitionParticipantComponent element) throws IOException { 20510 if (element != null) { 20511 composeElementAttributes(element); 20512 xml.enter(FHIR_NS, name); 20513 composeActivityDefinitionActivityDefinitionParticipantComponentElements(element); 20514 composeElementClose(element); 20515 xml.exit(FHIR_NS, name); 20516 } 20517 } 20518 20519 protected void composeActivityDefinitionActivityDefinitionParticipantComponentElements(ActivityDefinition.ActivityDefinitionParticipantComponent element) throws IOException { 20520 composeBackboneElements(element); 20521 if (element.hasTypeElement()) 20522 composeEnumeration("type", element.getTypeElement(), new ActivityDefinition.ActivityParticipantTypeEnumFactory()); 20523 if (element.hasRole()) { 20524 composeCodeableConcept("role", element.getRole()); 20525 } 20526 } 20527 20528 protected void composeActivityDefinitionActivityDefinitionDynamicValueComponent(String name, ActivityDefinition.ActivityDefinitionDynamicValueComponent element) throws IOException { 20529 if (element != null) { 20530 composeElementAttributes(element); 20531 xml.enter(FHIR_NS, name); 20532 composeActivityDefinitionActivityDefinitionDynamicValueComponentElements(element); 20533 composeElementClose(element); 20534 xml.exit(FHIR_NS, name); 20535 } 20536 } 20537 20538 protected void composeActivityDefinitionActivityDefinitionDynamicValueComponentElements(ActivityDefinition.ActivityDefinitionDynamicValueComponent element) throws IOException { 20539 composeBackboneElements(element); 20540 if (element.hasDescriptionElement()) { 20541 composeString("description", element.getDescriptionElement()); 20542 } 20543 if (element.hasPathElement()) { 20544 composeString("path", element.getPathElement()); 20545 } 20546 if (element.hasLanguageElement()) { 20547 composeString("language", element.getLanguageElement()); 20548 } 20549 if (element.hasExpressionElement()) { 20550 composeString("expression", element.getExpressionElement()); 20551 } 20552 } 20553 20554 protected void composeAdverseEvent(String name, AdverseEvent element) throws IOException { 20555 if (element != null) { 20556 composeDomainResourceAttributes(element); 20557 xml.enter(FHIR_NS, name); 20558 composeAdverseEventElements(element); 20559 composeElementClose(element); 20560 xml.exit(FHIR_NS, name); 20561 } 20562 } 20563 20564 protected void composeAdverseEventElements(AdverseEvent element) throws IOException { 20565 composeDomainResourceElements(element); 20566 if (element.hasIdentifier()) { 20567 composeIdentifier("identifier", element.getIdentifier()); 20568 } 20569 if (element.hasCategoryElement()) 20570 composeEnumeration("category", element.getCategoryElement(), new AdverseEvent.AdverseEventCategoryEnumFactory()); 20571 if (element.hasType()) { 20572 composeCodeableConcept("type", element.getType()); 20573 } 20574 if (element.hasSubject()) { 20575 composeReference("subject", element.getSubject()); 20576 } 20577 if (element.hasDateElement()) { 20578 composeDateTime("date", element.getDateElement()); 20579 } 20580 if (element.hasReaction()) { 20581 for (Reference e : element.getReaction()) 20582 composeReference("reaction", e); 20583 } 20584 if (element.hasLocation()) { 20585 composeReference("location", element.getLocation()); 20586 } 20587 if (element.hasSeriousness()) { 20588 composeCodeableConcept("seriousness", element.getSeriousness()); 20589 } 20590 if (element.hasOutcome()) { 20591 composeCodeableConcept("outcome", element.getOutcome()); 20592 } 20593 if (element.hasRecorder()) { 20594 composeReference("recorder", element.getRecorder()); 20595 } 20596 if (element.hasEventParticipant()) { 20597 composeReference("eventParticipant", element.getEventParticipant()); 20598 } 20599 if (element.hasDescriptionElement()) { 20600 composeString("description", element.getDescriptionElement()); 20601 } 20602 if (element.hasSuspectEntity()) { 20603 for (AdverseEvent.AdverseEventSuspectEntityComponent e : element.getSuspectEntity()) 20604 composeAdverseEventAdverseEventSuspectEntityComponent("suspectEntity", e); 20605 } 20606 if (element.hasSubjectMedicalHistory()) { 20607 for (Reference e : element.getSubjectMedicalHistory()) 20608 composeReference("subjectMedicalHistory", e); 20609 } 20610 if (element.hasReferenceDocument()) { 20611 for (Reference e : element.getReferenceDocument()) 20612 composeReference("referenceDocument", e); 20613 } 20614 if (element.hasStudy()) { 20615 for (Reference e : element.getStudy()) 20616 composeReference("study", e); 20617 } 20618 } 20619 20620 protected void composeAdverseEventAdverseEventSuspectEntityComponent(String name, AdverseEvent.AdverseEventSuspectEntityComponent element) throws IOException { 20621 if (element != null) { 20622 composeElementAttributes(element); 20623 xml.enter(FHIR_NS, name); 20624 composeAdverseEventAdverseEventSuspectEntityComponentElements(element); 20625 composeElementClose(element); 20626 xml.exit(FHIR_NS, name); 20627 } 20628 } 20629 20630 protected void composeAdverseEventAdverseEventSuspectEntityComponentElements(AdverseEvent.AdverseEventSuspectEntityComponent element) throws IOException { 20631 composeBackboneElements(element); 20632 if (element.hasInstance()) { 20633 composeReference("instance", element.getInstance()); 20634 } 20635 if (element.hasCausalityElement()) 20636 composeEnumeration("causality", element.getCausalityElement(), new AdverseEvent.AdverseEventCausalityEnumFactory()); 20637 if (element.hasCausalityAssessment()) { 20638 composeCodeableConcept("causalityAssessment", element.getCausalityAssessment()); 20639 } 20640 if (element.hasCausalityProductRelatednessElement()) { 20641 composeString("causalityProductRelatedness", element.getCausalityProductRelatednessElement()); 20642 } 20643 if (element.hasCausalityMethod()) { 20644 composeCodeableConcept("causalityMethod", element.getCausalityMethod()); 20645 } 20646 if (element.hasCausalityAuthor()) { 20647 composeReference("causalityAuthor", element.getCausalityAuthor()); 20648 } 20649 if (element.hasCausalityResult()) { 20650 composeCodeableConcept("causalityResult", element.getCausalityResult()); 20651 } 20652 } 20653 20654 protected void composeAllergyIntolerance(String name, AllergyIntolerance element) throws IOException { 20655 if (element != null) { 20656 composeDomainResourceAttributes(element); 20657 xml.enter(FHIR_NS, name); 20658 composeAllergyIntoleranceElements(element); 20659 composeElementClose(element); 20660 xml.exit(FHIR_NS, name); 20661 } 20662 } 20663 20664 protected void composeAllergyIntoleranceElements(AllergyIntolerance element) throws IOException { 20665 composeDomainResourceElements(element); 20666 if (element.hasIdentifier()) { 20667 for (Identifier e : element.getIdentifier()) 20668 composeIdentifier("identifier", e); 20669 } 20670 if (element.hasClinicalStatusElement()) 20671 composeEnumeration("clinicalStatus", element.getClinicalStatusElement(), new AllergyIntolerance.AllergyIntoleranceClinicalStatusEnumFactory()); 20672 if (element.hasVerificationStatusElement()) 20673 composeEnumeration("verificationStatus", element.getVerificationStatusElement(), new AllergyIntolerance.AllergyIntoleranceVerificationStatusEnumFactory()); 20674 if (element.hasTypeElement()) 20675 composeEnumeration("type", element.getTypeElement(), new AllergyIntolerance.AllergyIntoleranceTypeEnumFactory()); 20676 if (element.hasCategory()) 20677 for (Enumeration<AllergyIntolerance.AllergyIntoleranceCategory> e : element.getCategory()) 20678 composeEnumeration("category", e, new AllergyIntolerance.AllergyIntoleranceCategoryEnumFactory()); 20679 if (element.hasCriticalityElement()) 20680 composeEnumeration("criticality", element.getCriticalityElement(), new AllergyIntolerance.AllergyIntoleranceCriticalityEnumFactory()); 20681 if (element.hasCode()) { 20682 composeCodeableConcept("code", element.getCode()); 20683 } 20684 if (element.hasPatient()) { 20685 composeReference("patient", element.getPatient()); 20686 } 20687 if (element.hasOnset()) { 20688 composeType("onset", element.getOnset()); 20689 } if (element.hasAssertedDateElement()) { 20690 composeDateTime("assertedDate", element.getAssertedDateElement()); 20691 } 20692 if (element.hasRecorder()) { 20693 composeReference("recorder", element.getRecorder()); 20694 } 20695 if (element.hasAsserter()) { 20696 composeReference("asserter", element.getAsserter()); 20697 } 20698 if (element.hasLastOccurrenceElement()) { 20699 composeDateTime("lastOccurrence", element.getLastOccurrenceElement()); 20700 } 20701 if (element.hasNote()) { 20702 for (Annotation e : element.getNote()) 20703 composeAnnotation("note", e); 20704 } 20705 if (element.hasReaction()) { 20706 for (AllergyIntolerance.AllergyIntoleranceReactionComponent e : element.getReaction()) 20707 composeAllergyIntoleranceAllergyIntoleranceReactionComponent("reaction", e); 20708 } 20709 } 20710 20711 protected void composeAllergyIntoleranceAllergyIntoleranceReactionComponent(String name, AllergyIntolerance.AllergyIntoleranceReactionComponent element) throws IOException { 20712 if (element != null) { 20713 composeElementAttributes(element); 20714 xml.enter(FHIR_NS, name); 20715 composeAllergyIntoleranceAllergyIntoleranceReactionComponentElements(element); 20716 composeElementClose(element); 20717 xml.exit(FHIR_NS, name); 20718 } 20719 } 20720 20721 protected void composeAllergyIntoleranceAllergyIntoleranceReactionComponentElements(AllergyIntolerance.AllergyIntoleranceReactionComponent element) throws IOException { 20722 composeBackboneElements(element); 20723 if (element.hasSubstance()) { 20724 composeCodeableConcept("substance", element.getSubstance()); 20725 } 20726 if (element.hasManifestation()) { 20727 for (CodeableConcept e : element.getManifestation()) 20728 composeCodeableConcept("manifestation", e); 20729 } 20730 if (element.hasDescriptionElement()) { 20731 composeString("description", element.getDescriptionElement()); 20732 } 20733 if (element.hasOnsetElement()) { 20734 composeDateTime("onset", element.getOnsetElement()); 20735 } 20736 if (element.hasSeverityElement()) 20737 composeEnumeration("severity", element.getSeverityElement(), new AllergyIntolerance.AllergyIntoleranceSeverityEnumFactory()); 20738 if (element.hasExposureRoute()) { 20739 composeCodeableConcept("exposureRoute", element.getExposureRoute()); 20740 } 20741 if (element.hasNote()) { 20742 for (Annotation e : element.getNote()) 20743 composeAnnotation("note", e); 20744 } 20745 } 20746 20747 protected void composeAppointment(String name, Appointment element) throws IOException { 20748 if (element != null) { 20749 composeDomainResourceAttributes(element); 20750 xml.enter(FHIR_NS, name); 20751 composeAppointmentElements(element); 20752 composeElementClose(element); 20753 xml.exit(FHIR_NS, name); 20754 } 20755 } 20756 20757 protected void composeAppointmentElements(Appointment element) throws IOException { 20758 composeDomainResourceElements(element); 20759 if (element.hasIdentifier()) { 20760 for (Identifier e : element.getIdentifier()) 20761 composeIdentifier("identifier", e); 20762 } 20763 if (element.hasStatusElement()) 20764 composeEnumeration("status", element.getStatusElement(), new Appointment.AppointmentStatusEnumFactory()); 20765 if (element.hasServiceCategory()) { 20766 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 20767 } 20768 if (element.hasServiceType()) { 20769 for (CodeableConcept e : element.getServiceType()) 20770 composeCodeableConcept("serviceType", e); 20771 } 20772 if (element.hasSpecialty()) { 20773 for (CodeableConcept e : element.getSpecialty()) 20774 composeCodeableConcept("specialty", e); 20775 } 20776 if (element.hasAppointmentType()) { 20777 composeCodeableConcept("appointmentType", element.getAppointmentType()); 20778 } 20779 if (element.hasReason()) { 20780 for (CodeableConcept e : element.getReason()) 20781 composeCodeableConcept("reason", e); 20782 } 20783 if (element.hasIndication()) { 20784 for (Reference e : element.getIndication()) 20785 composeReference("indication", e); 20786 } 20787 if (element.hasPriorityElement()) { 20788 composeUnsignedInt("priority", element.getPriorityElement()); 20789 } 20790 if (element.hasDescriptionElement()) { 20791 composeString("description", element.getDescriptionElement()); 20792 } 20793 if (element.hasSupportingInformation()) { 20794 for (Reference e : element.getSupportingInformation()) 20795 composeReference("supportingInformation", e); 20796 } 20797 if (element.hasStartElement()) { 20798 composeInstant("start", element.getStartElement()); 20799 } 20800 if (element.hasEndElement()) { 20801 composeInstant("end", element.getEndElement()); 20802 } 20803 if (element.hasMinutesDurationElement()) { 20804 composePositiveInt("minutesDuration", element.getMinutesDurationElement()); 20805 } 20806 if (element.hasSlot()) { 20807 for (Reference e : element.getSlot()) 20808 composeReference("slot", e); 20809 } 20810 if (element.hasCreatedElement()) { 20811 composeDateTime("created", element.getCreatedElement()); 20812 } 20813 if (element.hasCommentElement()) { 20814 composeString("comment", element.getCommentElement()); 20815 } 20816 if (element.hasIncomingReferral()) { 20817 for (Reference e : element.getIncomingReferral()) 20818 composeReference("incomingReferral", e); 20819 } 20820 if (element.hasParticipant()) { 20821 for (Appointment.AppointmentParticipantComponent e : element.getParticipant()) 20822 composeAppointmentAppointmentParticipantComponent("participant", e); 20823 } 20824 if (element.hasRequestedPeriod()) { 20825 for (Period e : element.getRequestedPeriod()) 20826 composePeriod("requestedPeriod", e); 20827 } 20828 } 20829 20830 protected void composeAppointmentAppointmentParticipantComponent(String name, Appointment.AppointmentParticipantComponent element) throws IOException { 20831 if (element != null) { 20832 composeElementAttributes(element); 20833 xml.enter(FHIR_NS, name); 20834 composeAppointmentAppointmentParticipantComponentElements(element); 20835 composeElementClose(element); 20836 xml.exit(FHIR_NS, name); 20837 } 20838 } 20839 20840 protected void composeAppointmentAppointmentParticipantComponentElements(Appointment.AppointmentParticipantComponent element) throws IOException { 20841 composeBackboneElements(element); 20842 if (element.hasType()) { 20843 for (CodeableConcept e : element.getType()) 20844 composeCodeableConcept("type", e); 20845 } 20846 if (element.hasActor()) { 20847 composeReference("actor", element.getActor()); 20848 } 20849 if (element.hasRequiredElement()) 20850 composeEnumeration("required", element.getRequiredElement(), new Appointment.ParticipantRequiredEnumFactory()); 20851 if (element.hasStatusElement()) 20852 composeEnumeration("status", element.getStatusElement(), new Appointment.ParticipationStatusEnumFactory()); 20853 } 20854 20855 protected void composeAppointmentResponse(String name, AppointmentResponse element) throws IOException { 20856 if (element != null) { 20857 composeDomainResourceAttributes(element); 20858 xml.enter(FHIR_NS, name); 20859 composeAppointmentResponseElements(element); 20860 composeElementClose(element); 20861 xml.exit(FHIR_NS, name); 20862 } 20863 } 20864 20865 protected void composeAppointmentResponseElements(AppointmentResponse element) throws IOException { 20866 composeDomainResourceElements(element); 20867 if (element.hasIdentifier()) { 20868 for (Identifier e : element.getIdentifier()) 20869 composeIdentifier("identifier", e); 20870 } 20871 if (element.hasAppointment()) { 20872 composeReference("appointment", element.getAppointment()); 20873 } 20874 if (element.hasStartElement()) { 20875 composeInstant("start", element.getStartElement()); 20876 } 20877 if (element.hasEndElement()) { 20878 composeInstant("end", element.getEndElement()); 20879 } 20880 if (element.hasParticipantType()) { 20881 for (CodeableConcept e : element.getParticipantType()) 20882 composeCodeableConcept("participantType", e); 20883 } 20884 if (element.hasActor()) { 20885 composeReference("actor", element.getActor()); 20886 } 20887 if (element.hasParticipantStatusElement()) 20888 composeEnumeration("participantStatus", element.getParticipantStatusElement(), new AppointmentResponse.ParticipantStatusEnumFactory()); 20889 if (element.hasCommentElement()) { 20890 composeString("comment", element.getCommentElement()); 20891 } 20892 } 20893 20894 protected void composeAuditEvent(String name, AuditEvent element) throws IOException { 20895 if (element != null) { 20896 composeDomainResourceAttributes(element); 20897 xml.enter(FHIR_NS, name); 20898 composeAuditEventElements(element); 20899 composeElementClose(element); 20900 xml.exit(FHIR_NS, name); 20901 } 20902 } 20903 20904 protected void composeAuditEventElements(AuditEvent element) throws IOException { 20905 composeDomainResourceElements(element); 20906 if (element.hasType()) { 20907 composeCoding("type", element.getType()); 20908 } 20909 if (element.hasSubtype()) { 20910 for (Coding e : element.getSubtype()) 20911 composeCoding("subtype", e); 20912 } 20913 if (element.hasActionElement()) 20914 composeEnumeration("action", element.getActionElement(), new AuditEvent.AuditEventActionEnumFactory()); 20915 if (element.hasRecordedElement()) { 20916 composeInstant("recorded", element.getRecordedElement()); 20917 } 20918 if (element.hasOutcomeElement()) 20919 composeEnumeration("outcome", element.getOutcomeElement(), new AuditEvent.AuditEventOutcomeEnumFactory()); 20920 if (element.hasOutcomeDescElement()) { 20921 composeString("outcomeDesc", element.getOutcomeDescElement()); 20922 } 20923 if (element.hasPurposeOfEvent()) { 20924 for (CodeableConcept e : element.getPurposeOfEvent()) 20925 composeCodeableConcept("purposeOfEvent", e); 20926 } 20927 if (element.hasAgent()) { 20928 for (AuditEvent.AuditEventAgentComponent e : element.getAgent()) 20929 composeAuditEventAuditEventAgentComponent("agent", e); 20930 } 20931 if (element.hasSource()) { 20932 composeAuditEventAuditEventSourceComponent("source", element.getSource()); 20933 } 20934 if (element.hasEntity()) { 20935 for (AuditEvent.AuditEventEntityComponent e : element.getEntity()) 20936 composeAuditEventAuditEventEntityComponent("entity", e); 20937 } 20938 } 20939 20940 protected void composeAuditEventAuditEventAgentComponent(String name, AuditEvent.AuditEventAgentComponent element) throws IOException { 20941 if (element != null) { 20942 composeElementAttributes(element); 20943 xml.enter(FHIR_NS, name); 20944 composeAuditEventAuditEventAgentComponentElements(element); 20945 composeElementClose(element); 20946 xml.exit(FHIR_NS, name); 20947 } 20948 } 20949 20950 protected void composeAuditEventAuditEventAgentComponentElements(AuditEvent.AuditEventAgentComponent element) throws IOException { 20951 composeBackboneElements(element); 20952 if (element.hasRole()) { 20953 for (CodeableConcept e : element.getRole()) 20954 composeCodeableConcept("role", e); 20955 } 20956 if (element.hasReference()) { 20957 composeReference("reference", element.getReference()); 20958 } 20959 if (element.hasUserId()) { 20960 composeIdentifier("userId", element.getUserId()); 20961 } 20962 if (element.hasAltIdElement()) { 20963 composeString("altId", element.getAltIdElement()); 20964 } 20965 if (element.hasNameElement()) { 20966 composeString("name", element.getNameElement()); 20967 } 20968 if (element.hasRequestorElement()) { 20969 composeBoolean("requestor", element.getRequestorElement()); 20970 } 20971 if (element.hasLocation()) { 20972 composeReference("location", element.getLocation()); 20973 } 20974 if (element.hasPolicy()) { 20975 for (UriType e : element.getPolicy()) 20976 composeUri("policy", e); 20977 } 20978 if (element.hasMedia()) { 20979 composeCoding("media", element.getMedia()); 20980 } 20981 if (element.hasNetwork()) { 20982 composeAuditEventAuditEventAgentNetworkComponent("network", element.getNetwork()); 20983 } 20984 if (element.hasPurposeOfUse()) { 20985 for (CodeableConcept e : element.getPurposeOfUse()) 20986 composeCodeableConcept("purposeOfUse", e); 20987 } 20988 } 20989 20990 protected void composeAuditEventAuditEventAgentNetworkComponent(String name, AuditEvent.AuditEventAgentNetworkComponent element) throws IOException { 20991 if (element != null) { 20992 composeElementAttributes(element); 20993 xml.enter(FHIR_NS, name); 20994 composeAuditEventAuditEventAgentNetworkComponentElements(element); 20995 composeElementClose(element); 20996 xml.exit(FHIR_NS, name); 20997 } 20998 } 20999 21000 protected void composeAuditEventAuditEventAgentNetworkComponentElements(AuditEvent.AuditEventAgentNetworkComponent element) throws IOException { 21001 composeBackboneElements(element); 21002 if (element.hasAddressElement()) { 21003 composeString("address", element.getAddressElement()); 21004 } 21005 if (element.hasTypeElement()) 21006 composeEnumeration("type", element.getTypeElement(), new AuditEvent.AuditEventAgentNetworkTypeEnumFactory()); 21007 } 21008 21009 protected void composeAuditEventAuditEventSourceComponent(String name, AuditEvent.AuditEventSourceComponent element) throws IOException { 21010 if (element != null) { 21011 composeElementAttributes(element); 21012 xml.enter(FHIR_NS, name); 21013 composeAuditEventAuditEventSourceComponentElements(element); 21014 composeElementClose(element); 21015 xml.exit(FHIR_NS, name); 21016 } 21017 } 21018 21019 protected void composeAuditEventAuditEventSourceComponentElements(AuditEvent.AuditEventSourceComponent element) throws IOException { 21020 composeBackboneElements(element); 21021 if (element.hasSiteElement()) { 21022 composeString("site", element.getSiteElement()); 21023 } 21024 if (element.hasIdentifier()) { 21025 composeIdentifier("identifier", element.getIdentifier()); 21026 } 21027 if (element.hasType()) { 21028 for (Coding e : element.getType()) 21029 composeCoding("type", e); 21030 } 21031 } 21032 21033 protected void composeAuditEventAuditEventEntityComponent(String name, AuditEvent.AuditEventEntityComponent element) throws IOException { 21034 if (element != null) { 21035 composeElementAttributes(element); 21036 xml.enter(FHIR_NS, name); 21037 composeAuditEventAuditEventEntityComponentElements(element); 21038 composeElementClose(element); 21039 xml.exit(FHIR_NS, name); 21040 } 21041 } 21042 21043 protected void composeAuditEventAuditEventEntityComponentElements(AuditEvent.AuditEventEntityComponent element) throws IOException { 21044 composeBackboneElements(element); 21045 if (element.hasIdentifier()) { 21046 composeIdentifier("identifier", element.getIdentifier()); 21047 } 21048 if (element.hasReference()) { 21049 composeReference("reference", element.getReference()); 21050 } 21051 if (element.hasType()) { 21052 composeCoding("type", element.getType()); 21053 } 21054 if (element.hasRole()) { 21055 composeCoding("role", element.getRole()); 21056 } 21057 if (element.hasLifecycle()) { 21058 composeCoding("lifecycle", element.getLifecycle()); 21059 } 21060 if (element.hasSecurityLabel()) { 21061 for (Coding e : element.getSecurityLabel()) 21062 composeCoding("securityLabel", e); 21063 } 21064 if (element.hasNameElement()) { 21065 composeString("name", element.getNameElement()); 21066 } 21067 if (element.hasDescriptionElement()) { 21068 composeString("description", element.getDescriptionElement()); 21069 } 21070 if (element.hasQueryElement()) { 21071 composeBase64Binary("query", element.getQueryElement()); 21072 } 21073 if (element.hasDetail()) { 21074 for (AuditEvent.AuditEventEntityDetailComponent e : element.getDetail()) 21075 composeAuditEventAuditEventEntityDetailComponent("detail", e); 21076 } 21077 } 21078 21079 protected void composeAuditEventAuditEventEntityDetailComponent(String name, AuditEvent.AuditEventEntityDetailComponent element) throws IOException { 21080 if (element != null) { 21081 composeElementAttributes(element); 21082 xml.enter(FHIR_NS, name); 21083 composeAuditEventAuditEventEntityDetailComponentElements(element); 21084 composeElementClose(element); 21085 xml.exit(FHIR_NS, name); 21086 } 21087 } 21088 21089 protected void composeAuditEventAuditEventEntityDetailComponentElements(AuditEvent.AuditEventEntityDetailComponent element) throws IOException { 21090 composeBackboneElements(element); 21091 if (element.hasTypeElement()) { 21092 composeString("type", element.getTypeElement()); 21093 } 21094 if (element.hasValueElement()) { 21095 composeBase64Binary("value", element.getValueElement()); 21096 } 21097 } 21098 21099 protected void composeBasic(String name, Basic element) throws IOException { 21100 if (element != null) { 21101 composeDomainResourceAttributes(element); 21102 xml.enter(FHIR_NS, name); 21103 composeBasicElements(element); 21104 composeElementClose(element); 21105 xml.exit(FHIR_NS, name); 21106 } 21107 } 21108 21109 protected void composeBasicElements(Basic element) throws IOException { 21110 composeDomainResourceElements(element); 21111 if (element.hasIdentifier()) { 21112 for (Identifier e : element.getIdentifier()) 21113 composeIdentifier("identifier", e); 21114 } 21115 if (element.hasCode()) { 21116 composeCodeableConcept("code", element.getCode()); 21117 } 21118 if (element.hasSubject()) { 21119 composeReference("subject", element.getSubject()); 21120 } 21121 if (element.hasCreatedElement()) { 21122 composeDate("created", element.getCreatedElement()); 21123 } 21124 if (element.hasAuthor()) { 21125 composeReference("author", element.getAuthor()); 21126 } 21127 } 21128 21129 protected void composeBinary(String name, Binary element) throws IOException { 21130 if (element != null) { 21131 composeResourceAttributes(element); 21132 xml.enter(FHIR_NS, name); 21133 composeBinaryElements(element); 21134 composeElementClose(element); 21135 xml.exit(FHIR_NS, name); 21136 } 21137 } 21138 21139 protected void composeBinaryElements(Binary element) throws IOException { 21140 composeResourceElements(element); 21141 if (element.hasContentTypeElement()) { 21142 composeCode("contentType", element.getContentTypeElement()); 21143 } 21144 if (element.hasSecurityContext()) { 21145 composeReference("securityContext", element.getSecurityContext()); 21146 } 21147 if (element.hasContentElement()) { 21148 composeBase64Binary("content", element.getContentElement()); 21149 } 21150 } 21151 21152 protected void composeBodySite(String name, BodySite element) throws IOException { 21153 if (element != null) { 21154 composeDomainResourceAttributes(element); 21155 xml.enter(FHIR_NS, name); 21156 composeBodySiteElements(element); 21157 composeElementClose(element); 21158 xml.exit(FHIR_NS, name); 21159 } 21160 } 21161 21162 protected void composeBodySiteElements(BodySite element) throws IOException { 21163 composeDomainResourceElements(element); 21164 if (element.hasIdentifier()) { 21165 for (Identifier e : element.getIdentifier()) 21166 composeIdentifier("identifier", e); 21167 } 21168 if (element.hasActiveElement()) { 21169 composeBoolean("active", element.getActiveElement()); 21170 } 21171 if (element.hasCode()) { 21172 composeCodeableConcept("code", element.getCode()); 21173 } 21174 if (element.hasQualifier()) { 21175 for (CodeableConcept e : element.getQualifier()) 21176 composeCodeableConcept("qualifier", e); 21177 } 21178 if (element.hasDescriptionElement()) { 21179 composeString("description", element.getDescriptionElement()); 21180 } 21181 if (element.hasImage()) { 21182 for (Attachment e : element.getImage()) 21183 composeAttachment("image", e); 21184 } 21185 if (element.hasPatient()) { 21186 composeReference("patient", element.getPatient()); 21187 } 21188 } 21189 21190 protected void composeBundle(String name, Bundle element) throws IOException { 21191 if (element != null) { 21192 composeResourceAttributes(element); 21193 xml.enter(FHIR_NS, name); 21194 composeBundleElements(element); 21195 composeElementClose(element); 21196 xml.exit(FHIR_NS, name); 21197 } 21198 } 21199 21200 protected void composeBundleElements(Bundle element) throws IOException { 21201 composeResourceElements(element); 21202 if (element.hasIdentifier()) { 21203 composeIdentifier("identifier", element.getIdentifier()); 21204 } 21205 if (element.hasTypeElement()) 21206 composeEnumeration("type", element.getTypeElement(), new Bundle.BundleTypeEnumFactory()); 21207 if (element.hasTotalElement()) { 21208 composeUnsignedInt("total", element.getTotalElement()); 21209 } 21210 if (element.hasLink()) { 21211 for (Bundle.BundleLinkComponent e : element.getLink()) 21212 composeBundleBundleLinkComponent("link", e); 21213 } 21214 if (element.hasEntry()) { 21215 for (Bundle.BundleEntryComponent e : element.getEntry()) 21216 composeBundleBundleEntryComponent("entry", e); 21217 } 21218 if (element.hasSignature()) { 21219 composeSignature("signature", element.getSignature()); 21220 } 21221 } 21222 21223 protected void composeBundleBundleLinkComponent(String name, Bundle.BundleLinkComponent element) throws IOException { 21224 if (element != null) { 21225 composeElementAttributes(element); 21226 xml.enter(FHIR_NS, name); 21227 composeBundleBundleLinkComponentElements(element); 21228 composeElementClose(element); 21229 xml.exit(FHIR_NS, name); 21230 } 21231 } 21232 21233 protected void composeBundleBundleLinkComponentElements(Bundle.BundleLinkComponent element) throws IOException { 21234 composeBackboneElements(element); 21235 if (element.hasRelationElement()) { 21236 composeString("relation", element.getRelationElement()); 21237 } 21238 if (element.hasUrlElement()) { 21239 composeUri("url", element.getUrlElement()); 21240 } 21241 } 21242 21243 protected void composeBundleBundleEntryComponent(String name, Bundle.BundleEntryComponent element) throws IOException { 21244 if (element != null) { 21245 composeElementAttributes(element); 21246 xml.enter(FHIR_NS, name); 21247 composeBundleBundleEntryComponentElements(element); 21248 composeElementClose(element); 21249 xml.exit(FHIR_NS, name); 21250 } 21251 } 21252 21253 protected void composeBundleBundleEntryComponentElements(Bundle.BundleEntryComponent element) throws IOException { 21254 composeBackboneElements(element); 21255 if (element.hasLink()) { 21256 for (Bundle.BundleLinkComponent e : element.getLink()) 21257 composeBundleBundleLinkComponent("link", e); 21258 } 21259 if (element.hasFullUrlElement()) { 21260 composeUri("fullUrl", element.getFullUrlElement()); 21261 } 21262 if (element.hasResource()) { 21263 xml.enter(FHIR_NS, "resource"); 21264 composeResource(element.getResource()); 21265 xml.exit(FHIR_NS, "resource"); 21266 } 21267 if (element.hasSearch()) { 21268 composeBundleBundleEntrySearchComponent("search", element.getSearch()); 21269 } 21270 if (element.hasRequest()) { 21271 composeBundleBundleEntryRequestComponent("request", element.getRequest()); 21272 } 21273 if (element.hasResponse()) { 21274 composeBundleBundleEntryResponseComponent("response", element.getResponse()); 21275 } 21276 } 21277 21278 protected void composeBundleBundleEntrySearchComponent(String name, Bundle.BundleEntrySearchComponent element) throws IOException { 21279 if (element != null) { 21280 composeElementAttributes(element); 21281 xml.enter(FHIR_NS, name); 21282 composeBundleBundleEntrySearchComponentElements(element); 21283 composeElementClose(element); 21284 xml.exit(FHIR_NS, name); 21285 } 21286 } 21287 21288 protected void composeBundleBundleEntrySearchComponentElements(Bundle.BundleEntrySearchComponent element) throws IOException { 21289 composeBackboneElements(element); 21290 if (element.hasModeElement()) 21291 composeEnumeration("mode", element.getModeElement(), new Bundle.SearchEntryModeEnumFactory()); 21292 if (element.hasScoreElement()) { 21293 composeDecimal("score", element.getScoreElement()); 21294 } 21295 } 21296 21297 protected void composeBundleBundleEntryRequestComponent(String name, Bundle.BundleEntryRequestComponent element) throws IOException { 21298 if (element != null) { 21299 composeElementAttributes(element); 21300 xml.enter(FHIR_NS, name); 21301 composeBundleBundleEntryRequestComponentElements(element); 21302 composeElementClose(element); 21303 xml.exit(FHIR_NS, name); 21304 } 21305 } 21306 21307 protected void composeBundleBundleEntryRequestComponentElements(Bundle.BundleEntryRequestComponent element) throws IOException { 21308 composeBackboneElements(element); 21309 if (element.hasMethodElement()) 21310 composeEnumeration("method", element.getMethodElement(), new Bundle.HTTPVerbEnumFactory()); 21311 if (element.hasUrlElement()) { 21312 composeUri("url", element.getUrlElement()); 21313 } 21314 if (element.hasIfNoneMatchElement()) { 21315 composeString("ifNoneMatch", element.getIfNoneMatchElement()); 21316 } 21317 if (element.hasIfModifiedSinceElement()) { 21318 composeInstant("ifModifiedSince", element.getIfModifiedSinceElement()); 21319 } 21320 if (element.hasIfMatchElement()) { 21321 composeString("ifMatch", element.getIfMatchElement()); 21322 } 21323 if (element.hasIfNoneExistElement()) { 21324 composeString("ifNoneExist", element.getIfNoneExistElement()); 21325 } 21326 } 21327 21328 protected void composeBundleBundleEntryResponseComponent(String name, Bundle.BundleEntryResponseComponent element) throws IOException { 21329 if (element != null) { 21330 composeElementAttributes(element); 21331 xml.enter(FHIR_NS, name); 21332 composeBundleBundleEntryResponseComponentElements(element); 21333 composeElementClose(element); 21334 xml.exit(FHIR_NS, name); 21335 } 21336 } 21337 21338 protected void composeBundleBundleEntryResponseComponentElements(Bundle.BundleEntryResponseComponent element) throws IOException { 21339 composeBackboneElements(element); 21340 if (element.hasStatusElement()) { 21341 composeString("status", element.getStatusElement()); 21342 } 21343 if (element.hasLocationElement()) { 21344 composeUri("location", element.getLocationElement()); 21345 } 21346 if (element.hasEtagElement()) { 21347 composeString("etag", element.getEtagElement()); 21348 } 21349 if (element.hasLastModifiedElement()) { 21350 composeInstant("lastModified", element.getLastModifiedElement()); 21351 } 21352 if (element.hasOutcome()) { 21353 xml.enter(FHIR_NS, "outcome"); 21354 composeResource(element.getOutcome()); 21355 xml.exit(FHIR_NS, "outcome"); 21356 } 21357 } 21358 21359 protected void composeCapabilityStatement(String name, CapabilityStatement element) throws IOException { 21360 if (element != null) { 21361 composeDomainResourceAttributes(element); 21362 xml.enter(FHIR_NS, name); 21363 composeCapabilityStatementElements(element); 21364 composeElementClose(element); 21365 xml.exit(FHIR_NS, name); 21366 } 21367 } 21368 21369 protected void composeCapabilityStatementElements(CapabilityStatement element) throws IOException { 21370 composeDomainResourceElements(element); 21371 if (element.hasUrlElement()) { 21372 composeUri("url", element.getUrlElement()); 21373 } 21374 if (element.hasVersionElement()) { 21375 composeString("version", element.getVersionElement()); 21376 } 21377 if (element.hasNameElement()) { 21378 composeString("name", element.getNameElement()); 21379 } 21380 if (element.hasTitleElement()) { 21381 composeString("title", element.getTitleElement()); 21382 } 21383 if (element.hasStatusElement()) 21384 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 21385 if (element.hasExperimentalElement()) { 21386 composeBoolean("experimental", element.getExperimentalElement()); 21387 } 21388 if (element.hasDateElement()) { 21389 composeDateTime("date", element.getDateElement()); 21390 } 21391 if (element.hasPublisherElement()) { 21392 composeString("publisher", element.getPublisherElement()); 21393 } 21394 if (element.hasContact()) { 21395 for (ContactDetail e : element.getContact()) 21396 composeContactDetail("contact", e); 21397 } 21398 if (element.hasDescriptionElement()) { 21399 composeMarkdown("description", element.getDescriptionElement()); 21400 } 21401 if (element.hasUseContext()) { 21402 for (UsageContext e : element.getUseContext()) 21403 composeUsageContext("useContext", e); 21404 } 21405 if (element.hasJurisdiction()) { 21406 for (CodeableConcept e : element.getJurisdiction()) 21407 composeCodeableConcept("jurisdiction", e); 21408 } 21409 if (element.hasPurposeElement()) { 21410 composeMarkdown("purpose", element.getPurposeElement()); 21411 } 21412 if (element.hasCopyrightElement()) { 21413 composeMarkdown("copyright", element.getCopyrightElement()); 21414 } 21415 if (element.hasKindElement()) 21416 composeEnumeration("kind", element.getKindElement(), new CapabilityStatement.CapabilityStatementKindEnumFactory()); 21417 if (element.hasInstantiates()) { 21418 for (UriType e : element.getInstantiates()) 21419 composeUri("instantiates", e); 21420 } 21421 if (element.hasSoftware()) { 21422 composeCapabilityStatementCapabilityStatementSoftwareComponent("software", element.getSoftware()); 21423 } 21424 if (element.hasImplementation()) { 21425 composeCapabilityStatementCapabilityStatementImplementationComponent("implementation", element.getImplementation()); 21426 } 21427 if (element.hasFhirVersionElement()) { 21428 composeId("fhirVersion", element.getFhirVersionElement()); 21429 } 21430 if (element.hasAcceptUnknownElement()) 21431 composeEnumeration("acceptUnknown", element.getAcceptUnknownElement(), new CapabilityStatement.UnknownContentCodeEnumFactory()); 21432 if (element.hasFormat()) { 21433 for (CodeType e : element.getFormat()) 21434 composeCode("format", e); 21435 } 21436 if (element.hasPatchFormat()) { 21437 for (CodeType e : element.getPatchFormat()) 21438 composeCode("patchFormat", e); 21439 } 21440 if (element.hasImplementationGuide()) { 21441 for (UriType e : element.getImplementationGuide()) 21442 composeUri("implementationGuide", e); 21443 } 21444 if (element.hasProfile()) { 21445 for (Reference e : element.getProfile()) 21446 composeReference("profile", e); 21447 } 21448 if (element.hasRest()) { 21449 for (CapabilityStatement.CapabilityStatementRestComponent e : element.getRest()) 21450 composeCapabilityStatementCapabilityStatementRestComponent("rest", e); 21451 } 21452 if (element.hasMessaging()) { 21453 for (CapabilityStatement.CapabilityStatementMessagingComponent e : element.getMessaging()) 21454 composeCapabilityStatementCapabilityStatementMessagingComponent("messaging", e); 21455 } 21456 if (element.hasDocument()) { 21457 for (CapabilityStatement.CapabilityStatementDocumentComponent e : element.getDocument()) 21458 composeCapabilityStatementCapabilityStatementDocumentComponent("document", e); 21459 } 21460 } 21461 21462 protected void composeCapabilityStatementCapabilityStatementSoftwareComponent(String name, CapabilityStatement.CapabilityStatementSoftwareComponent element) throws IOException { 21463 if (element != null) { 21464 composeElementAttributes(element); 21465 xml.enter(FHIR_NS, name); 21466 composeCapabilityStatementCapabilityStatementSoftwareComponentElements(element); 21467 composeElementClose(element); 21468 xml.exit(FHIR_NS, name); 21469 } 21470 } 21471 21472 protected void composeCapabilityStatementCapabilityStatementSoftwareComponentElements(CapabilityStatement.CapabilityStatementSoftwareComponent element) throws IOException { 21473 composeBackboneElements(element); 21474 if (element.hasNameElement()) { 21475 composeString("name", element.getNameElement()); 21476 } 21477 if (element.hasVersionElement()) { 21478 composeString("version", element.getVersionElement()); 21479 } 21480 if (element.hasReleaseDateElement()) { 21481 composeDateTime("releaseDate", element.getReleaseDateElement()); 21482 } 21483 } 21484 21485 protected void composeCapabilityStatementCapabilityStatementImplementationComponent(String name, CapabilityStatement.CapabilityStatementImplementationComponent element) throws IOException { 21486 if (element != null) { 21487 composeElementAttributes(element); 21488 xml.enter(FHIR_NS, name); 21489 composeCapabilityStatementCapabilityStatementImplementationComponentElements(element); 21490 composeElementClose(element); 21491 xml.exit(FHIR_NS, name); 21492 } 21493 } 21494 21495 protected void composeCapabilityStatementCapabilityStatementImplementationComponentElements(CapabilityStatement.CapabilityStatementImplementationComponent element) throws IOException { 21496 composeBackboneElements(element); 21497 if (element.hasDescriptionElement()) { 21498 composeString("description", element.getDescriptionElement()); 21499 } 21500 if (element.hasUrlElement()) { 21501 composeUri("url", element.getUrlElement()); 21502 } 21503 } 21504 21505 protected void composeCapabilityStatementCapabilityStatementRestComponent(String name, CapabilityStatement.CapabilityStatementRestComponent element) throws IOException { 21506 if (element != null) { 21507 composeElementAttributes(element); 21508 xml.enter(FHIR_NS, name); 21509 composeCapabilityStatementCapabilityStatementRestComponentElements(element); 21510 composeElementClose(element); 21511 xml.exit(FHIR_NS, name); 21512 } 21513 } 21514 21515 protected void composeCapabilityStatementCapabilityStatementRestComponentElements(CapabilityStatement.CapabilityStatementRestComponent element) throws IOException { 21516 composeBackboneElements(element); 21517 if (element.hasModeElement()) 21518 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.RestfulCapabilityModeEnumFactory()); 21519 if (element.hasDocumentationElement()) { 21520 composeString("documentation", element.getDocumentationElement()); 21521 } 21522 if (element.hasSecurity()) { 21523 composeCapabilityStatementCapabilityStatementRestSecurityComponent("security", element.getSecurity()); 21524 } 21525 if (element.hasResource()) { 21526 for (CapabilityStatement.CapabilityStatementRestResourceComponent e : element.getResource()) 21527 composeCapabilityStatementCapabilityStatementRestResourceComponent("resource", e); 21528 } 21529 if (element.hasInteraction()) { 21530 for (CapabilityStatement.SystemInteractionComponent e : element.getInteraction()) 21531 composeCapabilityStatementSystemInteractionComponent("interaction", e); 21532 } 21533 if (element.hasSearchParam()) { 21534 for (CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent e : element.getSearchParam()) 21535 composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponent("searchParam", e); 21536 } 21537 if (element.hasOperation()) { 21538 for (CapabilityStatement.CapabilityStatementRestOperationComponent e : element.getOperation()) 21539 composeCapabilityStatementCapabilityStatementRestOperationComponent("operation", e); 21540 } 21541 if (element.hasCompartment()) { 21542 for (UriType e : element.getCompartment()) 21543 composeUri("compartment", e); 21544 } 21545 } 21546 21547 protected void composeCapabilityStatementCapabilityStatementRestSecurityComponent(String name, CapabilityStatement.CapabilityStatementRestSecurityComponent element) throws IOException { 21548 if (element != null) { 21549 composeElementAttributes(element); 21550 xml.enter(FHIR_NS, name); 21551 composeCapabilityStatementCapabilityStatementRestSecurityComponentElements(element); 21552 composeElementClose(element); 21553 xml.exit(FHIR_NS, name); 21554 } 21555 } 21556 21557 protected void composeCapabilityStatementCapabilityStatementRestSecurityComponentElements(CapabilityStatement.CapabilityStatementRestSecurityComponent element) throws IOException { 21558 composeBackboneElements(element); 21559 if (element.hasCorsElement()) { 21560 composeBoolean("cors", element.getCorsElement()); 21561 } 21562 if (element.hasService()) { 21563 for (CodeableConcept e : element.getService()) 21564 composeCodeableConcept("service", e); 21565 } 21566 if (element.hasDescriptionElement()) { 21567 composeString("description", element.getDescriptionElement()); 21568 } 21569 if (element.hasCertificate()) { 21570 for (CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent e : element.getCertificate()) 21571 composeCapabilityStatementCapabilityStatementRestSecurityCertificateComponent("certificate", e); 21572 } 21573 } 21574 21575 protected void composeCapabilityStatementCapabilityStatementRestSecurityCertificateComponent(String name, CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent element) throws IOException { 21576 if (element != null) { 21577 composeElementAttributes(element); 21578 xml.enter(FHIR_NS, name); 21579 composeCapabilityStatementCapabilityStatementRestSecurityCertificateComponentElements(element); 21580 composeElementClose(element); 21581 xml.exit(FHIR_NS, name); 21582 } 21583 } 21584 21585 protected void composeCapabilityStatementCapabilityStatementRestSecurityCertificateComponentElements(CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent element) throws IOException { 21586 composeBackboneElements(element); 21587 if (element.hasTypeElement()) { 21588 composeCode("type", element.getTypeElement()); 21589 } 21590 if (element.hasBlobElement()) { 21591 composeBase64Binary("blob", element.getBlobElement()); 21592 } 21593 } 21594 21595 protected void composeCapabilityStatementCapabilityStatementRestResourceComponent(String name, CapabilityStatement.CapabilityStatementRestResourceComponent element) throws IOException { 21596 if (element != null) { 21597 composeElementAttributes(element); 21598 xml.enter(FHIR_NS, name); 21599 composeCapabilityStatementCapabilityStatementRestResourceComponentElements(element); 21600 composeElementClose(element); 21601 xml.exit(FHIR_NS, name); 21602 } 21603 } 21604 21605 protected void composeCapabilityStatementCapabilityStatementRestResourceComponentElements(CapabilityStatement.CapabilityStatementRestResourceComponent element) throws IOException { 21606 composeBackboneElements(element); 21607 if (element.hasTypeElement()) { 21608 composeCode("type", element.getTypeElement()); 21609 } 21610 if (element.hasProfile()) { 21611 composeReference("profile", element.getProfile()); 21612 } 21613 if (element.hasDocumentationElement()) { 21614 composeMarkdown("documentation", element.getDocumentationElement()); 21615 } 21616 if (element.hasInteraction()) { 21617 for (CapabilityStatement.ResourceInteractionComponent e : element.getInteraction()) 21618 composeCapabilityStatementResourceInteractionComponent("interaction", e); 21619 } 21620 if (element.hasVersioningElement()) 21621 composeEnumeration("versioning", element.getVersioningElement(), new CapabilityStatement.ResourceVersionPolicyEnumFactory()); 21622 if (element.hasReadHistoryElement()) { 21623 composeBoolean("readHistory", element.getReadHistoryElement()); 21624 } 21625 if (element.hasUpdateCreateElement()) { 21626 composeBoolean("updateCreate", element.getUpdateCreateElement()); 21627 } 21628 if (element.hasConditionalCreateElement()) { 21629 composeBoolean("conditionalCreate", element.getConditionalCreateElement()); 21630 } 21631 if (element.hasConditionalReadElement()) 21632 composeEnumeration("conditionalRead", element.getConditionalReadElement(), new CapabilityStatement.ConditionalReadStatusEnumFactory()); 21633 if (element.hasConditionalUpdateElement()) { 21634 composeBoolean("conditionalUpdate", element.getConditionalUpdateElement()); 21635 } 21636 if (element.hasConditionalDeleteElement()) 21637 composeEnumeration("conditionalDelete", element.getConditionalDeleteElement(), new CapabilityStatement.ConditionalDeleteStatusEnumFactory()); 21638 if (element.hasReferencePolicy()) 21639 for (Enumeration<CapabilityStatement.ReferenceHandlingPolicy> e : element.getReferencePolicy()) 21640 composeEnumeration("referencePolicy", e, new CapabilityStatement.ReferenceHandlingPolicyEnumFactory()); 21641 if (element.hasSearchInclude()) { 21642 for (StringType e : element.getSearchInclude()) 21643 composeString("searchInclude", e); 21644 } 21645 if (element.hasSearchRevInclude()) { 21646 for (StringType e : element.getSearchRevInclude()) 21647 composeString("searchRevInclude", e); 21648 } 21649 if (element.hasSearchParam()) { 21650 for (CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent e : element.getSearchParam()) 21651 composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponent("searchParam", e); 21652 } 21653 } 21654 21655 protected void composeCapabilityStatementResourceInteractionComponent(String name, CapabilityStatement.ResourceInteractionComponent element) throws IOException { 21656 if (element != null) { 21657 composeElementAttributes(element); 21658 xml.enter(FHIR_NS, name); 21659 composeCapabilityStatementResourceInteractionComponentElements(element); 21660 composeElementClose(element); 21661 xml.exit(FHIR_NS, name); 21662 } 21663 } 21664 21665 protected void composeCapabilityStatementResourceInteractionComponentElements(CapabilityStatement.ResourceInteractionComponent element) throws IOException { 21666 composeBackboneElements(element); 21667 if (element.hasCodeElement()) 21668 composeEnumeration("code", element.getCodeElement(), new CapabilityStatement.TypeRestfulInteractionEnumFactory()); 21669 if (element.hasDocumentationElement()) { 21670 composeString("documentation", element.getDocumentationElement()); 21671 } 21672 } 21673 21674 protected void composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponent(String name, CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent element) throws IOException { 21675 if (element != null) { 21676 composeElementAttributes(element); 21677 xml.enter(FHIR_NS, name); 21678 composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponentElements(element); 21679 composeElementClose(element); 21680 xml.exit(FHIR_NS, name); 21681 } 21682 } 21683 21684 protected void composeCapabilityStatementCapabilityStatementRestResourceSearchParamComponentElements(CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent element) throws IOException { 21685 composeBackboneElements(element); 21686 if (element.hasNameElement()) { 21687 composeString("name", element.getNameElement()); 21688 } 21689 if (element.hasDefinitionElement()) { 21690 composeUri("definition", element.getDefinitionElement()); 21691 } 21692 if (element.hasTypeElement()) 21693 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 21694 if (element.hasDocumentationElement()) { 21695 composeString("documentation", element.getDocumentationElement()); 21696 } 21697 } 21698 21699 protected void composeCapabilityStatementSystemInteractionComponent(String name, CapabilityStatement.SystemInteractionComponent element) throws IOException { 21700 if (element != null) { 21701 composeElementAttributes(element); 21702 xml.enter(FHIR_NS, name); 21703 composeCapabilityStatementSystemInteractionComponentElements(element); 21704 composeElementClose(element); 21705 xml.exit(FHIR_NS, name); 21706 } 21707 } 21708 21709 protected void composeCapabilityStatementSystemInteractionComponentElements(CapabilityStatement.SystemInteractionComponent element) throws IOException { 21710 composeBackboneElements(element); 21711 if (element.hasCodeElement()) 21712 composeEnumeration("code", element.getCodeElement(), new CapabilityStatement.SystemRestfulInteractionEnumFactory()); 21713 if (element.hasDocumentationElement()) { 21714 composeString("documentation", element.getDocumentationElement()); 21715 } 21716 } 21717 21718 protected void composeCapabilityStatementCapabilityStatementRestOperationComponent(String name, CapabilityStatement.CapabilityStatementRestOperationComponent element) throws IOException { 21719 if (element != null) { 21720 composeElementAttributes(element); 21721 xml.enter(FHIR_NS, name); 21722 composeCapabilityStatementCapabilityStatementRestOperationComponentElements(element); 21723 composeElementClose(element); 21724 xml.exit(FHIR_NS, name); 21725 } 21726 } 21727 21728 protected void composeCapabilityStatementCapabilityStatementRestOperationComponentElements(CapabilityStatement.CapabilityStatementRestOperationComponent element) throws IOException { 21729 composeBackboneElements(element); 21730 if (element.hasNameElement()) { 21731 composeString("name", element.getNameElement()); 21732 } 21733 if (element.hasDefinition()) { 21734 composeReference("definition", element.getDefinition()); 21735 } 21736 } 21737 21738 protected void composeCapabilityStatementCapabilityStatementMessagingComponent(String name, CapabilityStatement.CapabilityStatementMessagingComponent element) throws IOException { 21739 if (element != null) { 21740 composeElementAttributes(element); 21741 xml.enter(FHIR_NS, name); 21742 composeCapabilityStatementCapabilityStatementMessagingComponentElements(element); 21743 composeElementClose(element); 21744 xml.exit(FHIR_NS, name); 21745 } 21746 } 21747 21748 protected void composeCapabilityStatementCapabilityStatementMessagingComponentElements(CapabilityStatement.CapabilityStatementMessagingComponent element) throws IOException { 21749 composeBackboneElements(element); 21750 if (element.hasEndpoint()) { 21751 for (CapabilityStatement.CapabilityStatementMessagingEndpointComponent e : element.getEndpoint()) 21752 composeCapabilityStatementCapabilityStatementMessagingEndpointComponent("endpoint", e); 21753 } 21754 if (element.hasReliableCacheElement()) { 21755 composeUnsignedInt("reliableCache", element.getReliableCacheElement()); 21756 } 21757 if (element.hasDocumentationElement()) { 21758 composeString("documentation", element.getDocumentationElement()); 21759 } 21760 if (element.hasSupportedMessage()) { 21761 for (CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent e : element.getSupportedMessage()) 21762 composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent("supportedMessage", e); 21763 } 21764 if (element.hasEvent()) { 21765 for (CapabilityStatement.CapabilityStatementMessagingEventComponent e : element.getEvent()) 21766 composeCapabilityStatementCapabilityStatementMessagingEventComponent("event", e); 21767 } 21768 } 21769 21770 protected void composeCapabilityStatementCapabilityStatementMessagingEndpointComponent(String name, CapabilityStatement.CapabilityStatementMessagingEndpointComponent element) throws IOException { 21771 if (element != null) { 21772 composeElementAttributes(element); 21773 xml.enter(FHIR_NS, name); 21774 composeCapabilityStatementCapabilityStatementMessagingEndpointComponentElements(element); 21775 composeElementClose(element); 21776 xml.exit(FHIR_NS, name); 21777 } 21778 } 21779 21780 protected void composeCapabilityStatementCapabilityStatementMessagingEndpointComponentElements(CapabilityStatement.CapabilityStatementMessagingEndpointComponent element) throws IOException { 21781 composeBackboneElements(element); 21782 if (element.hasProtocol()) { 21783 composeCoding("protocol", element.getProtocol()); 21784 } 21785 if (element.hasAddressElement()) { 21786 composeUri("address", element.getAddressElement()); 21787 } 21788 } 21789 21790 protected void composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponent(String name, CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent element) throws IOException { 21791 if (element != null) { 21792 composeElementAttributes(element); 21793 xml.enter(FHIR_NS, name); 21794 composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponentElements(element); 21795 composeElementClose(element); 21796 xml.exit(FHIR_NS, name); 21797 } 21798 } 21799 21800 protected void composeCapabilityStatementCapabilityStatementMessagingSupportedMessageComponentElements(CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent element) throws IOException { 21801 composeBackboneElements(element); 21802 if (element.hasModeElement()) 21803 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.EventCapabilityModeEnumFactory()); 21804 if (element.hasDefinition()) { 21805 composeReference("definition", element.getDefinition()); 21806 } 21807 } 21808 21809 protected void composeCapabilityStatementCapabilityStatementMessagingEventComponent(String name, CapabilityStatement.CapabilityStatementMessagingEventComponent element) throws IOException { 21810 if (element != null) { 21811 composeElementAttributes(element); 21812 xml.enter(FHIR_NS, name); 21813 composeCapabilityStatementCapabilityStatementMessagingEventComponentElements(element); 21814 composeElementClose(element); 21815 xml.exit(FHIR_NS, name); 21816 } 21817 } 21818 21819 protected void composeCapabilityStatementCapabilityStatementMessagingEventComponentElements(CapabilityStatement.CapabilityStatementMessagingEventComponent element) throws IOException { 21820 composeBackboneElements(element); 21821 if (element.hasCode()) { 21822 composeCoding("code", element.getCode()); 21823 } 21824 if (element.hasCategoryElement()) 21825 composeEnumeration("category", element.getCategoryElement(), new CapabilityStatement.MessageSignificanceCategoryEnumFactory()); 21826 if (element.hasModeElement()) 21827 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.EventCapabilityModeEnumFactory()); 21828 if (element.hasFocusElement()) { 21829 composeCode("focus", element.getFocusElement()); 21830 } 21831 if (element.hasRequest()) { 21832 composeReference("request", element.getRequest()); 21833 } 21834 if (element.hasResponse()) { 21835 composeReference("response", element.getResponse()); 21836 } 21837 if (element.hasDocumentationElement()) { 21838 composeString("documentation", element.getDocumentationElement()); 21839 } 21840 } 21841 21842 protected void composeCapabilityStatementCapabilityStatementDocumentComponent(String name, CapabilityStatement.CapabilityStatementDocumentComponent element) throws IOException { 21843 if (element != null) { 21844 composeElementAttributes(element); 21845 xml.enter(FHIR_NS, name); 21846 composeCapabilityStatementCapabilityStatementDocumentComponentElements(element); 21847 composeElementClose(element); 21848 xml.exit(FHIR_NS, name); 21849 } 21850 } 21851 21852 protected void composeCapabilityStatementCapabilityStatementDocumentComponentElements(CapabilityStatement.CapabilityStatementDocumentComponent element) throws IOException { 21853 composeBackboneElements(element); 21854 if (element.hasModeElement()) 21855 composeEnumeration("mode", element.getModeElement(), new CapabilityStatement.DocumentModeEnumFactory()); 21856 if (element.hasDocumentationElement()) { 21857 composeString("documentation", element.getDocumentationElement()); 21858 } 21859 if (element.hasProfile()) { 21860 composeReference("profile", element.getProfile()); 21861 } 21862 } 21863 21864 protected void composeCarePlan(String name, CarePlan element) throws IOException { 21865 if (element != null) { 21866 composeDomainResourceAttributes(element); 21867 xml.enter(FHIR_NS, name); 21868 composeCarePlanElements(element); 21869 composeElementClose(element); 21870 xml.exit(FHIR_NS, name); 21871 } 21872 } 21873 21874 protected void composeCarePlanElements(CarePlan element) throws IOException { 21875 composeDomainResourceElements(element); 21876 if (element.hasIdentifier()) { 21877 for (Identifier e : element.getIdentifier()) 21878 composeIdentifier("identifier", e); 21879 } 21880 if (element.hasDefinition()) { 21881 for (Reference e : element.getDefinition()) 21882 composeReference("definition", e); 21883 } 21884 if (element.hasBasedOn()) { 21885 for (Reference e : element.getBasedOn()) 21886 composeReference("basedOn", e); 21887 } 21888 if (element.hasReplaces()) { 21889 for (Reference e : element.getReplaces()) 21890 composeReference("replaces", e); 21891 } 21892 if (element.hasPartOf()) { 21893 for (Reference e : element.getPartOf()) 21894 composeReference("partOf", e); 21895 } 21896 if (element.hasStatusElement()) 21897 composeEnumeration("status", element.getStatusElement(), new CarePlan.CarePlanStatusEnumFactory()); 21898 if (element.hasIntentElement()) 21899 composeEnumeration("intent", element.getIntentElement(), new CarePlan.CarePlanIntentEnumFactory()); 21900 if (element.hasCategory()) { 21901 for (CodeableConcept e : element.getCategory()) 21902 composeCodeableConcept("category", e); 21903 } 21904 if (element.hasTitleElement()) { 21905 composeString("title", element.getTitleElement()); 21906 } 21907 if (element.hasDescriptionElement()) { 21908 composeString("description", element.getDescriptionElement()); 21909 } 21910 if (element.hasSubject()) { 21911 composeReference("subject", element.getSubject()); 21912 } 21913 if (element.hasContext()) { 21914 composeReference("context", element.getContext()); 21915 } 21916 if (element.hasPeriod()) { 21917 composePeriod("period", element.getPeriod()); 21918 } 21919 if (element.hasAuthor()) { 21920 for (Reference e : element.getAuthor()) 21921 composeReference("author", e); 21922 } 21923 if (element.hasCareTeam()) { 21924 for (Reference e : element.getCareTeam()) 21925 composeReference("careTeam", e); 21926 } 21927 if (element.hasAddresses()) { 21928 for (Reference e : element.getAddresses()) 21929 composeReference("addresses", e); 21930 } 21931 if (element.hasSupportingInfo()) { 21932 for (Reference e : element.getSupportingInfo()) 21933 composeReference("supportingInfo", e); 21934 } 21935 if (element.hasGoal()) { 21936 for (Reference e : element.getGoal()) 21937 composeReference("goal", e); 21938 } 21939 if (element.hasActivity()) { 21940 for (CarePlan.CarePlanActivityComponent e : element.getActivity()) 21941 composeCarePlanCarePlanActivityComponent("activity", e); 21942 } 21943 if (element.hasNote()) { 21944 for (Annotation e : element.getNote()) 21945 composeAnnotation("note", e); 21946 } 21947 } 21948 21949 protected void composeCarePlanCarePlanActivityComponent(String name, CarePlan.CarePlanActivityComponent element) throws IOException { 21950 if (element != null) { 21951 composeElementAttributes(element); 21952 xml.enter(FHIR_NS, name); 21953 composeCarePlanCarePlanActivityComponentElements(element); 21954 composeElementClose(element); 21955 xml.exit(FHIR_NS, name); 21956 } 21957 } 21958 21959 protected void composeCarePlanCarePlanActivityComponentElements(CarePlan.CarePlanActivityComponent element) throws IOException { 21960 composeBackboneElements(element); 21961 if (element.hasOutcomeCodeableConcept()) { 21962 for (CodeableConcept e : element.getOutcomeCodeableConcept()) 21963 composeCodeableConcept("outcomeCodeableConcept", e); 21964 } 21965 if (element.hasOutcomeReference()) { 21966 for (Reference e : element.getOutcomeReference()) 21967 composeReference("outcomeReference", e); 21968 } 21969 if (element.hasProgress()) { 21970 for (Annotation e : element.getProgress()) 21971 composeAnnotation("progress", e); 21972 } 21973 if (element.hasReference()) { 21974 composeReference("reference", element.getReference()); 21975 } 21976 if (element.hasDetail()) { 21977 composeCarePlanCarePlanActivityDetailComponent("detail", element.getDetail()); 21978 } 21979 } 21980 21981 protected void composeCarePlanCarePlanActivityDetailComponent(String name, CarePlan.CarePlanActivityDetailComponent element) throws IOException { 21982 if (element != null) { 21983 composeElementAttributes(element); 21984 xml.enter(FHIR_NS, name); 21985 composeCarePlanCarePlanActivityDetailComponentElements(element); 21986 composeElementClose(element); 21987 xml.exit(FHIR_NS, name); 21988 } 21989 } 21990 21991 protected void composeCarePlanCarePlanActivityDetailComponentElements(CarePlan.CarePlanActivityDetailComponent element) throws IOException { 21992 composeBackboneElements(element); 21993 if (element.hasCategory()) { 21994 composeCodeableConcept("category", element.getCategory()); 21995 } 21996 if (element.hasDefinition()) { 21997 composeReference("definition", element.getDefinition()); 21998 } 21999 if (element.hasCode()) { 22000 composeCodeableConcept("code", element.getCode()); 22001 } 22002 if (element.hasReasonCode()) { 22003 for (CodeableConcept e : element.getReasonCode()) 22004 composeCodeableConcept("reasonCode", e); 22005 } 22006 if (element.hasReasonReference()) { 22007 for (Reference e : element.getReasonReference()) 22008 composeReference("reasonReference", e); 22009 } 22010 if (element.hasGoal()) { 22011 for (Reference e : element.getGoal()) 22012 composeReference("goal", e); 22013 } 22014 if (element.hasStatusElement()) 22015 composeEnumeration("status", element.getStatusElement(), new CarePlan.CarePlanActivityStatusEnumFactory()); 22016 if (element.hasStatusReasonElement()) { 22017 composeString("statusReason", element.getStatusReasonElement()); 22018 } 22019 if (element.hasProhibitedElement()) { 22020 composeBoolean("prohibited", element.getProhibitedElement()); 22021 } 22022 if (element.hasScheduled()) { 22023 composeType("scheduled", element.getScheduled()); 22024 } if (element.hasLocation()) { 22025 composeReference("location", element.getLocation()); 22026 } 22027 if (element.hasPerformer()) { 22028 for (Reference e : element.getPerformer()) 22029 composeReference("performer", e); 22030 } 22031 if (element.hasProduct()) { 22032 composeType("product", element.getProduct()); 22033 } if (element.hasDailyAmount()) { 22034 composeSimpleQuantity("dailyAmount", element.getDailyAmount()); 22035 } 22036 if (element.hasQuantity()) { 22037 composeSimpleQuantity("quantity", element.getQuantity()); 22038 } 22039 if (element.hasDescriptionElement()) { 22040 composeString("description", element.getDescriptionElement()); 22041 } 22042 } 22043 22044 protected void composeCareTeam(String name, CareTeam element) throws IOException { 22045 if (element != null) { 22046 composeDomainResourceAttributes(element); 22047 xml.enter(FHIR_NS, name); 22048 composeCareTeamElements(element); 22049 composeElementClose(element); 22050 xml.exit(FHIR_NS, name); 22051 } 22052 } 22053 22054 protected void composeCareTeamElements(CareTeam element) throws IOException { 22055 composeDomainResourceElements(element); 22056 if (element.hasIdentifier()) { 22057 for (Identifier e : element.getIdentifier()) 22058 composeIdentifier("identifier", e); 22059 } 22060 if (element.hasStatusElement()) 22061 composeEnumeration("status", element.getStatusElement(), new CareTeam.CareTeamStatusEnumFactory()); 22062 if (element.hasCategory()) { 22063 for (CodeableConcept e : element.getCategory()) 22064 composeCodeableConcept("category", e); 22065 } 22066 if (element.hasNameElement()) { 22067 composeString("name", element.getNameElement()); 22068 } 22069 if (element.hasSubject()) { 22070 composeReference("subject", element.getSubject()); 22071 } 22072 if (element.hasContext()) { 22073 composeReference("context", element.getContext()); 22074 } 22075 if (element.hasPeriod()) { 22076 composePeriod("period", element.getPeriod()); 22077 } 22078 if (element.hasParticipant()) { 22079 for (CareTeam.CareTeamParticipantComponent e : element.getParticipant()) 22080 composeCareTeamCareTeamParticipantComponent("participant", e); 22081 } 22082 if (element.hasReasonCode()) { 22083 for (CodeableConcept e : element.getReasonCode()) 22084 composeCodeableConcept("reasonCode", e); 22085 } 22086 if (element.hasReasonReference()) { 22087 for (Reference e : element.getReasonReference()) 22088 composeReference("reasonReference", e); 22089 } 22090 if (element.hasManagingOrganization()) { 22091 for (Reference e : element.getManagingOrganization()) 22092 composeReference("managingOrganization", e); 22093 } 22094 if (element.hasNote()) { 22095 for (Annotation e : element.getNote()) 22096 composeAnnotation("note", e); 22097 } 22098 } 22099 22100 protected void composeCareTeamCareTeamParticipantComponent(String name, CareTeam.CareTeamParticipantComponent element) throws IOException { 22101 if (element != null) { 22102 composeElementAttributes(element); 22103 xml.enter(FHIR_NS, name); 22104 composeCareTeamCareTeamParticipantComponentElements(element); 22105 composeElementClose(element); 22106 xml.exit(FHIR_NS, name); 22107 } 22108 } 22109 22110 protected void composeCareTeamCareTeamParticipantComponentElements(CareTeam.CareTeamParticipantComponent element) throws IOException { 22111 composeBackboneElements(element); 22112 if (element.hasRole()) { 22113 composeCodeableConcept("role", element.getRole()); 22114 } 22115 if (element.hasMember()) { 22116 composeReference("member", element.getMember()); 22117 } 22118 if (element.hasOnBehalfOf()) { 22119 composeReference("onBehalfOf", element.getOnBehalfOf()); 22120 } 22121 if (element.hasPeriod()) { 22122 composePeriod("period", element.getPeriod()); 22123 } 22124 } 22125 22126 protected void composeChargeItem(String name, ChargeItem element) throws IOException { 22127 if (element != null) { 22128 composeDomainResourceAttributes(element); 22129 xml.enter(FHIR_NS, name); 22130 composeChargeItemElements(element); 22131 composeElementClose(element); 22132 xml.exit(FHIR_NS, name); 22133 } 22134 } 22135 22136 protected void composeChargeItemElements(ChargeItem element) throws IOException { 22137 composeDomainResourceElements(element); 22138 if (element.hasIdentifier()) { 22139 composeIdentifier("identifier", element.getIdentifier()); 22140 } 22141 if (element.hasDefinition()) { 22142 for (UriType e : element.getDefinition()) 22143 composeUri("definition", e); 22144 } 22145 if (element.hasStatusElement()) 22146 composeEnumeration("status", element.getStatusElement(), new ChargeItem.ChargeItemStatusEnumFactory()); 22147 if (element.hasPartOf()) { 22148 for (Reference e : element.getPartOf()) 22149 composeReference("partOf", e); 22150 } 22151 if (element.hasCode()) { 22152 composeCodeableConcept("code", element.getCode()); 22153 } 22154 if (element.hasSubject()) { 22155 composeReference("subject", element.getSubject()); 22156 } 22157 if (element.hasContext()) { 22158 composeReference("context", element.getContext()); 22159 } 22160 if (element.hasOccurrence()) { 22161 composeType("occurrence", element.getOccurrence()); 22162 } if (element.hasParticipant()) { 22163 for (ChargeItem.ChargeItemParticipantComponent e : element.getParticipant()) 22164 composeChargeItemChargeItemParticipantComponent("participant", e); 22165 } 22166 if (element.hasPerformingOrganization()) { 22167 composeReference("performingOrganization", element.getPerformingOrganization()); 22168 } 22169 if (element.hasRequestingOrganization()) { 22170 composeReference("requestingOrganization", element.getRequestingOrganization()); 22171 } 22172 if (element.hasQuantity()) { 22173 composeQuantity("quantity", element.getQuantity()); 22174 } 22175 if (element.hasBodysite()) { 22176 for (CodeableConcept e : element.getBodysite()) 22177 composeCodeableConcept("bodysite", e); 22178 } 22179 if (element.hasFactorOverrideElement()) { 22180 composeDecimal("factorOverride", element.getFactorOverrideElement()); 22181 } 22182 if (element.hasPriceOverride()) { 22183 composeMoney("priceOverride", element.getPriceOverride()); 22184 } 22185 if (element.hasOverrideReasonElement()) { 22186 composeString("overrideReason", element.getOverrideReasonElement()); 22187 } 22188 if (element.hasEnterer()) { 22189 composeReference("enterer", element.getEnterer()); 22190 } 22191 if (element.hasEnteredDateElement()) { 22192 composeDateTime("enteredDate", element.getEnteredDateElement()); 22193 } 22194 if (element.hasReason()) { 22195 for (CodeableConcept e : element.getReason()) 22196 composeCodeableConcept("reason", e); 22197 } 22198 if (element.hasService()) { 22199 for (Reference e : element.getService()) 22200 composeReference("service", e); 22201 } 22202 if (element.hasAccount()) { 22203 for (Reference e : element.getAccount()) 22204 composeReference("account", e); 22205 } 22206 if (element.hasNote()) { 22207 for (Annotation e : element.getNote()) 22208 composeAnnotation("note", e); 22209 } 22210 if (element.hasSupportingInformation()) { 22211 for (Reference e : element.getSupportingInformation()) 22212 composeReference("supportingInformation", e); 22213 } 22214 } 22215 22216 protected void composeChargeItemChargeItemParticipantComponent(String name, ChargeItem.ChargeItemParticipantComponent element) throws IOException { 22217 if (element != null) { 22218 composeElementAttributes(element); 22219 xml.enter(FHIR_NS, name); 22220 composeChargeItemChargeItemParticipantComponentElements(element); 22221 composeElementClose(element); 22222 xml.exit(FHIR_NS, name); 22223 } 22224 } 22225 22226 protected void composeChargeItemChargeItemParticipantComponentElements(ChargeItem.ChargeItemParticipantComponent element) throws IOException { 22227 composeBackboneElements(element); 22228 if (element.hasRole()) { 22229 composeCodeableConcept("role", element.getRole()); 22230 } 22231 if (element.hasActor()) { 22232 composeReference("actor", element.getActor()); 22233 } 22234 } 22235 22236 protected void composeClaim(String name, Claim element) throws IOException { 22237 if (element != null) { 22238 composeDomainResourceAttributes(element); 22239 xml.enter(FHIR_NS, name); 22240 composeClaimElements(element); 22241 composeElementClose(element); 22242 xml.exit(FHIR_NS, name); 22243 } 22244 } 22245 22246 protected void composeClaimElements(Claim element) throws IOException { 22247 composeDomainResourceElements(element); 22248 if (element.hasIdentifier()) { 22249 for (Identifier e : element.getIdentifier()) 22250 composeIdentifier("identifier", e); 22251 } 22252 if (element.hasStatusElement()) 22253 composeEnumeration("status", element.getStatusElement(), new Claim.ClaimStatusEnumFactory()); 22254 if (element.hasType()) { 22255 composeCodeableConcept("type", element.getType()); 22256 } 22257 if (element.hasSubType()) { 22258 for (CodeableConcept e : element.getSubType()) 22259 composeCodeableConcept("subType", e); 22260 } 22261 if (element.hasUseElement()) 22262 composeEnumeration("use", element.getUseElement(), new Claim.UseEnumFactory()); 22263 if (element.hasPatient()) { 22264 composeReference("patient", element.getPatient()); 22265 } 22266 if (element.hasBillablePeriod()) { 22267 composePeriod("billablePeriod", element.getBillablePeriod()); 22268 } 22269 if (element.hasCreatedElement()) { 22270 composeDateTime("created", element.getCreatedElement()); 22271 } 22272 if (element.hasEnterer()) { 22273 composeReference("enterer", element.getEnterer()); 22274 } 22275 if (element.hasInsurer()) { 22276 composeReference("insurer", element.getInsurer()); 22277 } 22278 if (element.hasProvider()) { 22279 composeReference("provider", element.getProvider()); 22280 } 22281 if (element.hasOrganization()) { 22282 composeReference("organization", element.getOrganization()); 22283 } 22284 if (element.hasPriority()) { 22285 composeCodeableConcept("priority", element.getPriority()); 22286 } 22287 if (element.hasFundsReserve()) { 22288 composeCodeableConcept("fundsReserve", element.getFundsReserve()); 22289 } 22290 if (element.hasRelated()) { 22291 for (Claim.RelatedClaimComponent e : element.getRelated()) 22292 composeClaimRelatedClaimComponent("related", e); 22293 } 22294 if (element.hasPrescription()) { 22295 composeReference("prescription", element.getPrescription()); 22296 } 22297 if (element.hasOriginalPrescription()) { 22298 composeReference("originalPrescription", element.getOriginalPrescription()); 22299 } 22300 if (element.hasPayee()) { 22301 composeClaimPayeeComponent("payee", element.getPayee()); 22302 } 22303 if (element.hasReferral()) { 22304 composeReference("referral", element.getReferral()); 22305 } 22306 if (element.hasFacility()) { 22307 composeReference("facility", element.getFacility()); 22308 } 22309 if (element.hasCareTeam()) { 22310 for (Claim.CareTeamComponent e : element.getCareTeam()) 22311 composeClaimCareTeamComponent("careTeam", e); 22312 } 22313 if (element.hasInformation()) { 22314 for (Claim.SpecialConditionComponent e : element.getInformation()) 22315 composeClaimSpecialConditionComponent("information", e); 22316 } 22317 if (element.hasDiagnosis()) { 22318 for (Claim.DiagnosisComponent e : element.getDiagnosis()) 22319 composeClaimDiagnosisComponent("diagnosis", e); 22320 } 22321 if (element.hasProcedure()) { 22322 for (Claim.ProcedureComponent e : element.getProcedure()) 22323 composeClaimProcedureComponent("procedure", e); 22324 } 22325 if (element.hasInsurance()) { 22326 for (Claim.InsuranceComponent e : element.getInsurance()) 22327 composeClaimInsuranceComponent("insurance", e); 22328 } 22329 if (element.hasAccident()) { 22330 composeClaimAccidentComponent("accident", element.getAccident()); 22331 } 22332 if (element.hasEmploymentImpacted()) { 22333 composePeriod("employmentImpacted", element.getEmploymentImpacted()); 22334 } 22335 if (element.hasHospitalization()) { 22336 composePeriod("hospitalization", element.getHospitalization()); 22337 } 22338 if (element.hasItem()) { 22339 for (Claim.ItemComponent e : element.getItem()) 22340 composeClaimItemComponent("item", e); 22341 } 22342 if (element.hasTotal()) { 22343 composeMoney("total", element.getTotal()); 22344 } 22345 } 22346 22347 protected void composeClaimRelatedClaimComponent(String name, Claim.RelatedClaimComponent element) throws IOException { 22348 if (element != null) { 22349 composeElementAttributes(element); 22350 xml.enter(FHIR_NS, name); 22351 composeClaimRelatedClaimComponentElements(element); 22352 composeElementClose(element); 22353 xml.exit(FHIR_NS, name); 22354 } 22355 } 22356 22357 protected void composeClaimRelatedClaimComponentElements(Claim.RelatedClaimComponent element) throws IOException { 22358 composeBackboneElements(element); 22359 if (element.hasClaim()) { 22360 composeReference("claim", element.getClaim()); 22361 } 22362 if (element.hasRelationship()) { 22363 composeCodeableConcept("relationship", element.getRelationship()); 22364 } 22365 if (element.hasReference()) { 22366 composeIdentifier("reference", element.getReference()); 22367 } 22368 } 22369 22370 protected void composeClaimPayeeComponent(String name, Claim.PayeeComponent element) throws IOException { 22371 if (element != null) { 22372 composeElementAttributes(element); 22373 xml.enter(FHIR_NS, name); 22374 composeClaimPayeeComponentElements(element); 22375 composeElementClose(element); 22376 xml.exit(FHIR_NS, name); 22377 } 22378 } 22379 22380 protected void composeClaimPayeeComponentElements(Claim.PayeeComponent element) throws IOException { 22381 composeBackboneElements(element); 22382 if (element.hasType()) { 22383 composeCodeableConcept("type", element.getType()); 22384 } 22385 if (element.hasResourceType()) { 22386 composeCoding("resourceType", element.getResourceType()); 22387 } 22388 if (element.hasParty()) { 22389 composeReference("party", element.getParty()); 22390 } 22391 } 22392 22393 protected void composeClaimCareTeamComponent(String name, Claim.CareTeamComponent element) throws IOException { 22394 if (element != null) { 22395 composeElementAttributes(element); 22396 xml.enter(FHIR_NS, name); 22397 composeClaimCareTeamComponentElements(element); 22398 composeElementClose(element); 22399 xml.exit(FHIR_NS, name); 22400 } 22401 } 22402 22403 protected void composeClaimCareTeamComponentElements(Claim.CareTeamComponent element) throws IOException { 22404 composeBackboneElements(element); 22405 if (element.hasSequenceElement()) { 22406 composePositiveInt("sequence", element.getSequenceElement()); 22407 } 22408 if (element.hasProvider()) { 22409 composeReference("provider", element.getProvider()); 22410 } 22411 if (element.hasResponsibleElement()) { 22412 composeBoolean("responsible", element.getResponsibleElement()); 22413 } 22414 if (element.hasRole()) { 22415 composeCodeableConcept("role", element.getRole()); 22416 } 22417 if (element.hasQualification()) { 22418 composeCodeableConcept("qualification", element.getQualification()); 22419 } 22420 } 22421 22422 protected void composeClaimSpecialConditionComponent(String name, Claim.SpecialConditionComponent element) throws IOException { 22423 if (element != null) { 22424 composeElementAttributes(element); 22425 xml.enter(FHIR_NS, name); 22426 composeClaimSpecialConditionComponentElements(element); 22427 composeElementClose(element); 22428 xml.exit(FHIR_NS, name); 22429 } 22430 } 22431 22432 protected void composeClaimSpecialConditionComponentElements(Claim.SpecialConditionComponent element) throws IOException { 22433 composeBackboneElements(element); 22434 if (element.hasSequenceElement()) { 22435 composePositiveInt("sequence", element.getSequenceElement()); 22436 } 22437 if (element.hasCategory()) { 22438 composeCodeableConcept("category", element.getCategory()); 22439 } 22440 if (element.hasCode()) { 22441 composeCodeableConcept("code", element.getCode()); 22442 } 22443 if (element.hasTiming()) { 22444 composeType("timing", element.getTiming()); 22445 } if (element.hasValue()) { 22446 composeType("value", element.getValue()); 22447 } if (element.hasReason()) { 22448 composeCodeableConcept("reason", element.getReason()); 22449 } 22450 } 22451 22452 protected void composeClaimDiagnosisComponent(String name, Claim.DiagnosisComponent element) throws IOException { 22453 if (element != null) { 22454 composeElementAttributes(element); 22455 xml.enter(FHIR_NS, name); 22456 composeClaimDiagnosisComponentElements(element); 22457 composeElementClose(element); 22458 xml.exit(FHIR_NS, name); 22459 } 22460 } 22461 22462 protected void composeClaimDiagnosisComponentElements(Claim.DiagnosisComponent element) throws IOException { 22463 composeBackboneElements(element); 22464 if (element.hasSequenceElement()) { 22465 composePositiveInt("sequence", element.getSequenceElement()); 22466 } 22467 if (element.hasDiagnosis()) { 22468 composeType("diagnosis", element.getDiagnosis()); 22469 } if (element.hasType()) { 22470 for (CodeableConcept e : element.getType()) 22471 composeCodeableConcept("type", e); 22472 } 22473 if (element.hasPackageCode()) { 22474 composeCodeableConcept("packageCode", element.getPackageCode()); 22475 } 22476 } 22477 22478 protected void composeClaimProcedureComponent(String name, Claim.ProcedureComponent element) throws IOException { 22479 if (element != null) { 22480 composeElementAttributes(element); 22481 xml.enter(FHIR_NS, name); 22482 composeClaimProcedureComponentElements(element); 22483 composeElementClose(element); 22484 xml.exit(FHIR_NS, name); 22485 } 22486 } 22487 22488 protected void composeClaimProcedureComponentElements(Claim.ProcedureComponent element) throws IOException { 22489 composeBackboneElements(element); 22490 if (element.hasSequenceElement()) { 22491 composePositiveInt("sequence", element.getSequenceElement()); 22492 } 22493 if (element.hasDateElement()) { 22494 composeDateTime("date", element.getDateElement()); 22495 } 22496 if (element.hasProcedure()) { 22497 composeType("procedure", element.getProcedure()); 22498 } } 22499 22500 protected void composeClaimInsuranceComponent(String name, Claim.InsuranceComponent element) throws IOException { 22501 if (element != null) { 22502 composeElementAttributes(element); 22503 xml.enter(FHIR_NS, name); 22504 composeClaimInsuranceComponentElements(element); 22505 composeElementClose(element); 22506 xml.exit(FHIR_NS, name); 22507 } 22508 } 22509 22510 protected void composeClaimInsuranceComponentElements(Claim.InsuranceComponent element) throws IOException { 22511 composeBackboneElements(element); 22512 if (element.hasSequenceElement()) { 22513 composePositiveInt("sequence", element.getSequenceElement()); 22514 } 22515 if (element.hasFocalElement()) { 22516 composeBoolean("focal", element.getFocalElement()); 22517 } 22518 if (element.hasCoverage()) { 22519 composeReference("coverage", element.getCoverage()); 22520 } 22521 if (element.hasBusinessArrangementElement()) { 22522 composeString("businessArrangement", element.getBusinessArrangementElement()); 22523 } 22524 if (element.hasPreAuthRef()) { 22525 for (StringType e : element.getPreAuthRef()) 22526 composeString("preAuthRef", e); 22527 } 22528 if (element.hasClaimResponse()) { 22529 composeReference("claimResponse", element.getClaimResponse()); 22530 } 22531 } 22532 22533 protected void composeClaimAccidentComponent(String name, Claim.AccidentComponent element) throws IOException { 22534 if (element != null) { 22535 composeElementAttributes(element); 22536 xml.enter(FHIR_NS, name); 22537 composeClaimAccidentComponentElements(element); 22538 composeElementClose(element); 22539 xml.exit(FHIR_NS, name); 22540 } 22541 } 22542 22543 protected void composeClaimAccidentComponentElements(Claim.AccidentComponent element) throws IOException { 22544 composeBackboneElements(element); 22545 if (element.hasDateElement()) { 22546 composeDate("date", element.getDateElement()); 22547 } 22548 if (element.hasType()) { 22549 composeCodeableConcept("type", element.getType()); 22550 } 22551 if (element.hasLocation()) { 22552 composeType("location", element.getLocation()); 22553 } } 22554 22555 protected void composeClaimItemComponent(String name, Claim.ItemComponent element) throws IOException { 22556 if (element != null) { 22557 composeElementAttributes(element); 22558 xml.enter(FHIR_NS, name); 22559 composeClaimItemComponentElements(element); 22560 composeElementClose(element); 22561 xml.exit(FHIR_NS, name); 22562 } 22563 } 22564 22565 protected void composeClaimItemComponentElements(Claim.ItemComponent element) throws IOException { 22566 composeBackboneElements(element); 22567 if (element.hasSequenceElement()) { 22568 composePositiveInt("sequence", element.getSequenceElement()); 22569 } 22570 if (element.hasCareTeamLinkId()) { 22571 for (PositiveIntType e : element.getCareTeamLinkId()) 22572 composePositiveInt("careTeamLinkId", e); 22573 } 22574 if (element.hasDiagnosisLinkId()) { 22575 for (PositiveIntType e : element.getDiagnosisLinkId()) 22576 composePositiveInt("diagnosisLinkId", e); 22577 } 22578 if (element.hasProcedureLinkId()) { 22579 for (PositiveIntType e : element.getProcedureLinkId()) 22580 composePositiveInt("procedureLinkId", e); 22581 } 22582 if (element.hasInformationLinkId()) { 22583 for (PositiveIntType e : element.getInformationLinkId()) 22584 composePositiveInt("informationLinkId", e); 22585 } 22586 if (element.hasRevenue()) { 22587 composeCodeableConcept("revenue", element.getRevenue()); 22588 } 22589 if (element.hasCategory()) { 22590 composeCodeableConcept("category", element.getCategory()); 22591 } 22592 if (element.hasService()) { 22593 composeCodeableConcept("service", element.getService()); 22594 } 22595 if (element.hasModifier()) { 22596 for (CodeableConcept e : element.getModifier()) 22597 composeCodeableConcept("modifier", e); 22598 } 22599 if (element.hasProgramCode()) { 22600 for (CodeableConcept e : element.getProgramCode()) 22601 composeCodeableConcept("programCode", e); 22602 } 22603 if (element.hasServiced()) { 22604 composeType("serviced", element.getServiced()); 22605 } if (element.hasLocation()) { 22606 composeType("location", element.getLocation()); 22607 } if (element.hasQuantity()) { 22608 composeSimpleQuantity("quantity", element.getQuantity()); 22609 } 22610 if (element.hasUnitPrice()) { 22611 composeMoney("unitPrice", element.getUnitPrice()); 22612 } 22613 if (element.hasFactorElement()) { 22614 composeDecimal("factor", element.getFactorElement()); 22615 } 22616 if (element.hasNet()) { 22617 composeMoney("net", element.getNet()); 22618 } 22619 if (element.hasUdi()) { 22620 for (Reference e : element.getUdi()) 22621 composeReference("udi", e); 22622 } 22623 if (element.hasBodySite()) { 22624 composeCodeableConcept("bodySite", element.getBodySite()); 22625 } 22626 if (element.hasSubSite()) { 22627 for (CodeableConcept e : element.getSubSite()) 22628 composeCodeableConcept("subSite", e); 22629 } 22630 if (element.hasEncounter()) { 22631 for (Reference e : element.getEncounter()) 22632 composeReference("encounter", e); 22633 } 22634 if (element.hasDetail()) { 22635 for (Claim.DetailComponent e : element.getDetail()) 22636 composeClaimDetailComponent("detail", e); 22637 } 22638 } 22639 22640 protected void composeClaimDetailComponent(String name, Claim.DetailComponent element) throws IOException { 22641 if (element != null) { 22642 composeElementAttributes(element); 22643 xml.enter(FHIR_NS, name); 22644 composeClaimDetailComponentElements(element); 22645 composeElementClose(element); 22646 xml.exit(FHIR_NS, name); 22647 } 22648 } 22649 22650 protected void composeClaimDetailComponentElements(Claim.DetailComponent element) throws IOException { 22651 composeBackboneElements(element); 22652 if (element.hasSequenceElement()) { 22653 composePositiveInt("sequence", element.getSequenceElement()); 22654 } 22655 if (element.hasRevenue()) { 22656 composeCodeableConcept("revenue", element.getRevenue()); 22657 } 22658 if (element.hasCategory()) { 22659 composeCodeableConcept("category", element.getCategory()); 22660 } 22661 if (element.hasService()) { 22662 composeCodeableConcept("service", element.getService()); 22663 } 22664 if (element.hasModifier()) { 22665 for (CodeableConcept e : element.getModifier()) 22666 composeCodeableConcept("modifier", e); 22667 } 22668 if (element.hasProgramCode()) { 22669 for (CodeableConcept e : element.getProgramCode()) 22670 composeCodeableConcept("programCode", e); 22671 } 22672 if (element.hasQuantity()) { 22673 composeSimpleQuantity("quantity", element.getQuantity()); 22674 } 22675 if (element.hasUnitPrice()) { 22676 composeMoney("unitPrice", element.getUnitPrice()); 22677 } 22678 if (element.hasFactorElement()) { 22679 composeDecimal("factor", element.getFactorElement()); 22680 } 22681 if (element.hasNet()) { 22682 composeMoney("net", element.getNet()); 22683 } 22684 if (element.hasUdi()) { 22685 for (Reference e : element.getUdi()) 22686 composeReference("udi", e); 22687 } 22688 if (element.hasSubDetail()) { 22689 for (Claim.SubDetailComponent e : element.getSubDetail()) 22690 composeClaimSubDetailComponent("subDetail", e); 22691 } 22692 } 22693 22694 protected void composeClaimSubDetailComponent(String name, Claim.SubDetailComponent element) throws IOException { 22695 if (element != null) { 22696 composeElementAttributes(element); 22697 xml.enter(FHIR_NS, name); 22698 composeClaimSubDetailComponentElements(element); 22699 composeElementClose(element); 22700 xml.exit(FHIR_NS, name); 22701 } 22702 } 22703 22704 protected void composeClaimSubDetailComponentElements(Claim.SubDetailComponent element) throws IOException { 22705 composeBackboneElements(element); 22706 if (element.hasSequenceElement()) { 22707 composePositiveInt("sequence", element.getSequenceElement()); 22708 } 22709 if (element.hasRevenue()) { 22710 composeCodeableConcept("revenue", element.getRevenue()); 22711 } 22712 if (element.hasCategory()) { 22713 composeCodeableConcept("category", element.getCategory()); 22714 } 22715 if (element.hasService()) { 22716 composeCodeableConcept("service", element.getService()); 22717 } 22718 if (element.hasModifier()) { 22719 for (CodeableConcept e : element.getModifier()) 22720 composeCodeableConcept("modifier", e); 22721 } 22722 if (element.hasProgramCode()) { 22723 for (CodeableConcept e : element.getProgramCode()) 22724 composeCodeableConcept("programCode", e); 22725 } 22726 if (element.hasQuantity()) { 22727 composeSimpleQuantity("quantity", element.getQuantity()); 22728 } 22729 if (element.hasUnitPrice()) { 22730 composeMoney("unitPrice", element.getUnitPrice()); 22731 } 22732 if (element.hasFactorElement()) { 22733 composeDecimal("factor", element.getFactorElement()); 22734 } 22735 if (element.hasNet()) { 22736 composeMoney("net", element.getNet()); 22737 } 22738 if (element.hasUdi()) { 22739 for (Reference e : element.getUdi()) 22740 composeReference("udi", e); 22741 } 22742 } 22743 22744 protected void composeClaimResponse(String name, ClaimResponse element) throws IOException { 22745 if (element != null) { 22746 composeDomainResourceAttributes(element); 22747 xml.enter(FHIR_NS, name); 22748 composeClaimResponseElements(element); 22749 composeElementClose(element); 22750 xml.exit(FHIR_NS, name); 22751 } 22752 } 22753 22754 protected void composeClaimResponseElements(ClaimResponse element) throws IOException { 22755 composeDomainResourceElements(element); 22756 if (element.hasIdentifier()) { 22757 for (Identifier e : element.getIdentifier()) 22758 composeIdentifier("identifier", e); 22759 } 22760 if (element.hasStatusElement()) 22761 composeEnumeration("status", element.getStatusElement(), new ClaimResponse.ClaimResponseStatusEnumFactory()); 22762 if (element.hasPatient()) { 22763 composeReference("patient", element.getPatient()); 22764 } 22765 if (element.hasCreatedElement()) { 22766 composeDateTime("created", element.getCreatedElement()); 22767 } 22768 if (element.hasInsurer()) { 22769 composeReference("insurer", element.getInsurer()); 22770 } 22771 if (element.hasRequestProvider()) { 22772 composeReference("requestProvider", element.getRequestProvider()); 22773 } 22774 if (element.hasRequestOrganization()) { 22775 composeReference("requestOrganization", element.getRequestOrganization()); 22776 } 22777 if (element.hasRequest()) { 22778 composeReference("request", element.getRequest()); 22779 } 22780 if (element.hasOutcome()) { 22781 composeCodeableConcept("outcome", element.getOutcome()); 22782 } 22783 if (element.hasDispositionElement()) { 22784 composeString("disposition", element.getDispositionElement()); 22785 } 22786 if (element.hasPayeeType()) { 22787 composeCodeableConcept("payeeType", element.getPayeeType()); 22788 } 22789 if (element.hasItem()) { 22790 for (ClaimResponse.ItemComponent e : element.getItem()) 22791 composeClaimResponseItemComponent("item", e); 22792 } 22793 if (element.hasAddItem()) { 22794 for (ClaimResponse.AddedItemComponent e : element.getAddItem()) 22795 composeClaimResponseAddedItemComponent("addItem", e); 22796 } 22797 if (element.hasError()) { 22798 for (ClaimResponse.ErrorComponent e : element.getError()) 22799 composeClaimResponseErrorComponent("error", e); 22800 } 22801 if (element.hasTotalCost()) { 22802 composeMoney("totalCost", element.getTotalCost()); 22803 } 22804 if (element.hasUnallocDeductable()) { 22805 composeMoney("unallocDeductable", element.getUnallocDeductable()); 22806 } 22807 if (element.hasTotalBenefit()) { 22808 composeMoney("totalBenefit", element.getTotalBenefit()); 22809 } 22810 if (element.hasPayment()) { 22811 composeClaimResponsePaymentComponent("payment", element.getPayment()); 22812 } 22813 if (element.hasReserved()) { 22814 composeCoding("reserved", element.getReserved()); 22815 } 22816 if (element.hasForm()) { 22817 composeCodeableConcept("form", element.getForm()); 22818 } 22819 if (element.hasProcessNote()) { 22820 for (ClaimResponse.NoteComponent e : element.getProcessNote()) 22821 composeClaimResponseNoteComponent("processNote", e); 22822 } 22823 if (element.hasCommunicationRequest()) { 22824 for (Reference e : element.getCommunicationRequest()) 22825 composeReference("communicationRequest", e); 22826 } 22827 if (element.hasInsurance()) { 22828 for (ClaimResponse.InsuranceComponent e : element.getInsurance()) 22829 composeClaimResponseInsuranceComponent("insurance", e); 22830 } 22831 } 22832 22833 protected void composeClaimResponseItemComponent(String name, ClaimResponse.ItemComponent element) throws IOException { 22834 if (element != null) { 22835 composeElementAttributes(element); 22836 xml.enter(FHIR_NS, name); 22837 composeClaimResponseItemComponentElements(element); 22838 composeElementClose(element); 22839 xml.exit(FHIR_NS, name); 22840 } 22841 } 22842 22843 protected void composeClaimResponseItemComponentElements(ClaimResponse.ItemComponent element) throws IOException { 22844 composeBackboneElements(element); 22845 if (element.hasSequenceLinkIdElement()) { 22846 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 22847 } 22848 if (element.hasNoteNumber()) { 22849 for (PositiveIntType e : element.getNoteNumber()) 22850 composePositiveInt("noteNumber", e); 22851 } 22852 if (element.hasAdjudication()) { 22853 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 22854 composeClaimResponseAdjudicationComponent("adjudication", e); 22855 } 22856 if (element.hasDetail()) { 22857 for (ClaimResponse.ItemDetailComponent e : element.getDetail()) 22858 composeClaimResponseItemDetailComponent("detail", e); 22859 } 22860 } 22861 22862 protected void composeClaimResponseAdjudicationComponent(String name, ClaimResponse.AdjudicationComponent element) throws IOException { 22863 if (element != null) { 22864 composeElementAttributes(element); 22865 xml.enter(FHIR_NS, name); 22866 composeClaimResponseAdjudicationComponentElements(element); 22867 composeElementClose(element); 22868 xml.exit(FHIR_NS, name); 22869 } 22870 } 22871 22872 protected void composeClaimResponseAdjudicationComponentElements(ClaimResponse.AdjudicationComponent element) throws IOException { 22873 composeBackboneElements(element); 22874 if (element.hasCategory()) { 22875 composeCodeableConcept("category", element.getCategory()); 22876 } 22877 if (element.hasReason()) { 22878 composeCodeableConcept("reason", element.getReason()); 22879 } 22880 if (element.hasAmount()) { 22881 composeMoney("amount", element.getAmount()); 22882 } 22883 if (element.hasValueElement()) { 22884 composeDecimal("value", element.getValueElement()); 22885 } 22886 } 22887 22888 protected void composeClaimResponseItemDetailComponent(String name, ClaimResponse.ItemDetailComponent element) throws IOException { 22889 if (element != null) { 22890 composeElementAttributes(element); 22891 xml.enter(FHIR_NS, name); 22892 composeClaimResponseItemDetailComponentElements(element); 22893 composeElementClose(element); 22894 xml.exit(FHIR_NS, name); 22895 } 22896 } 22897 22898 protected void composeClaimResponseItemDetailComponentElements(ClaimResponse.ItemDetailComponent element) throws IOException { 22899 composeBackboneElements(element); 22900 if (element.hasSequenceLinkIdElement()) { 22901 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 22902 } 22903 if (element.hasNoteNumber()) { 22904 for (PositiveIntType e : element.getNoteNumber()) 22905 composePositiveInt("noteNumber", e); 22906 } 22907 if (element.hasAdjudication()) { 22908 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 22909 composeClaimResponseAdjudicationComponent("adjudication", e); 22910 } 22911 if (element.hasSubDetail()) { 22912 for (ClaimResponse.SubDetailComponent e : element.getSubDetail()) 22913 composeClaimResponseSubDetailComponent("subDetail", e); 22914 } 22915 } 22916 22917 protected void composeClaimResponseSubDetailComponent(String name, ClaimResponse.SubDetailComponent element) throws IOException { 22918 if (element != null) { 22919 composeElementAttributes(element); 22920 xml.enter(FHIR_NS, name); 22921 composeClaimResponseSubDetailComponentElements(element); 22922 composeElementClose(element); 22923 xml.exit(FHIR_NS, name); 22924 } 22925 } 22926 22927 protected void composeClaimResponseSubDetailComponentElements(ClaimResponse.SubDetailComponent element) throws IOException { 22928 composeBackboneElements(element); 22929 if (element.hasSequenceLinkIdElement()) { 22930 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 22931 } 22932 if (element.hasNoteNumber()) { 22933 for (PositiveIntType e : element.getNoteNumber()) 22934 composePositiveInt("noteNumber", e); 22935 } 22936 if (element.hasAdjudication()) { 22937 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 22938 composeClaimResponseAdjudicationComponent("adjudication", e); 22939 } 22940 } 22941 22942 protected void composeClaimResponseAddedItemComponent(String name, ClaimResponse.AddedItemComponent element) throws IOException { 22943 if (element != null) { 22944 composeElementAttributes(element); 22945 xml.enter(FHIR_NS, name); 22946 composeClaimResponseAddedItemComponentElements(element); 22947 composeElementClose(element); 22948 xml.exit(FHIR_NS, name); 22949 } 22950 } 22951 22952 protected void composeClaimResponseAddedItemComponentElements(ClaimResponse.AddedItemComponent element) throws IOException { 22953 composeBackboneElements(element); 22954 if (element.hasSequenceLinkId()) { 22955 for (PositiveIntType e : element.getSequenceLinkId()) 22956 composePositiveInt("sequenceLinkId", e); 22957 } 22958 if (element.hasRevenue()) { 22959 composeCodeableConcept("revenue", element.getRevenue()); 22960 } 22961 if (element.hasCategory()) { 22962 composeCodeableConcept("category", element.getCategory()); 22963 } 22964 if (element.hasService()) { 22965 composeCodeableConcept("service", element.getService()); 22966 } 22967 if (element.hasModifier()) { 22968 for (CodeableConcept e : element.getModifier()) 22969 composeCodeableConcept("modifier", e); 22970 } 22971 if (element.hasFee()) { 22972 composeMoney("fee", element.getFee()); 22973 } 22974 if (element.hasNoteNumber()) { 22975 for (PositiveIntType e : element.getNoteNumber()) 22976 composePositiveInt("noteNumber", e); 22977 } 22978 if (element.hasAdjudication()) { 22979 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 22980 composeClaimResponseAdjudicationComponent("adjudication", e); 22981 } 22982 if (element.hasDetail()) { 22983 for (ClaimResponse.AddedItemsDetailComponent e : element.getDetail()) 22984 composeClaimResponseAddedItemsDetailComponent("detail", e); 22985 } 22986 } 22987 22988 protected void composeClaimResponseAddedItemsDetailComponent(String name, ClaimResponse.AddedItemsDetailComponent element) throws IOException { 22989 if (element != null) { 22990 composeElementAttributes(element); 22991 xml.enter(FHIR_NS, name); 22992 composeClaimResponseAddedItemsDetailComponentElements(element); 22993 composeElementClose(element); 22994 xml.exit(FHIR_NS, name); 22995 } 22996 } 22997 22998 protected void composeClaimResponseAddedItemsDetailComponentElements(ClaimResponse.AddedItemsDetailComponent element) throws IOException { 22999 composeBackboneElements(element); 23000 if (element.hasRevenue()) { 23001 composeCodeableConcept("revenue", element.getRevenue()); 23002 } 23003 if (element.hasCategory()) { 23004 composeCodeableConcept("category", element.getCategory()); 23005 } 23006 if (element.hasService()) { 23007 composeCodeableConcept("service", element.getService()); 23008 } 23009 if (element.hasModifier()) { 23010 for (CodeableConcept e : element.getModifier()) 23011 composeCodeableConcept("modifier", e); 23012 } 23013 if (element.hasFee()) { 23014 composeMoney("fee", element.getFee()); 23015 } 23016 if (element.hasNoteNumber()) { 23017 for (PositiveIntType e : element.getNoteNumber()) 23018 composePositiveInt("noteNumber", e); 23019 } 23020 if (element.hasAdjudication()) { 23021 for (ClaimResponse.AdjudicationComponent e : element.getAdjudication()) 23022 composeClaimResponseAdjudicationComponent("adjudication", e); 23023 } 23024 } 23025 23026 protected void composeClaimResponseErrorComponent(String name, ClaimResponse.ErrorComponent element) throws IOException { 23027 if (element != null) { 23028 composeElementAttributes(element); 23029 xml.enter(FHIR_NS, name); 23030 composeClaimResponseErrorComponentElements(element); 23031 composeElementClose(element); 23032 xml.exit(FHIR_NS, name); 23033 } 23034 } 23035 23036 protected void composeClaimResponseErrorComponentElements(ClaimResponse.ErrorComponent element) throws IOException { 23037 composeBackboneElements(element); 23038 if (element.hasSequenceLinkIdElement()) { 23039 composePositiveInt("sequenceLinkId", element.getSequenceLinkIdElement()); 23040 } 23041 if (element.hasDetailSequenceLinkIdElement()) { 23042 composePositiveInt("detailSequenceLinkId", element.getDetailSequenceLinkIdElement()); 23043 } 23044 if (element.hasSubdetailSequenceLinkIdElement()) { 23045 composePositiveInt("subdetailSequenceLinkId", element.getSubdetailSequenceLinkIdElement()); 23046 } 23047 if (element.hasCode()) { 23048 composeCodeableConcept("code", element.getCode()); 23049 } 23050 } 23051 23052 protected void composeClaimResponsePaymentComponent(String name, ClaimResponse.PaymentComponent element) throws IOException { 23053 if (element != null) { 23054 composeElementAttributes(element); 23055 xml.enter(FHIR_NS, name); 23056 composeClaimResponsePaymentComponentElements(element); 23057 composeElementClose(element); 23058 xml.exit(FHIR_NS, name); 23059 } 23060 } 23061 23062 protected void composeClaimResponsePaymentComponentElements(ClaimResponse.PaymentComponent element) throws IOException { 23063 composeBackboneElements(element); 23064 if (element.hasType()) { 23065 composeCodeableConcept("type", element.getType()); 23066 } 23067 if (element.hasAdjustment()) { 23068 composeMoney("adjustment", element.getAdjustment()); 23069 } 23070 if (element.hasAdjustmentReason()) { 23071 composeCodeableConcept("adjustmentReason", element.getAdjustmentReason()); 23072 } 23073 if (element.hasDateElement()) { 23074 composeDate("date", element.getDateElement()); 23075 } 23076 if (element.hasAmount()) { 23077 composeMoney("amount", element.getAmount()); 23078 } 23079 if (element.hasIdentifier()) { 23080 composeIdentifier("identifier", element.getIdentifier()); 23081 } 23082 } 23083 23084 protected void composeClaimResponseNoteComponent(String name, ClaimResponse.NoteComponent element) throws IOException { 23085 if (element != null) { 23086 composeElementAttributes(element); 23087 xml.enter(FHIR_NS, name); 23088 composeClaimResponseNoteComponentElements(element); 23089 composeElementClose(element); 23090 xml.exit(FHIR_NS, name); 23091 } 23092 } 23093 23094 protected void composeClaimResponseNoteComponentElements(ClaimResponse.NoteComponent element) throws IOException { 23095 composeBackboneElements(element); 23096 if (element.hasNumberElement()) { 23097 composePositiveInt("number", element.getNumberElement()); 23098 } 23099 if (element.hasType()) { 23100 composeCodeableConcept("type", element.getType()); 23101 } 23102 if (element.hasTextElement()) { 23103 composeString("text", element.getTextElement()); 23104 } 23105 if (element.hasLanguage()) { 23106 composeCodeableConcept("language", element.getLanguage()); 23107 } 23108 } 23109 23110 protected void composeClaimResponseInsuranceComponent(String name, ClaimResponse.InsuranceComponent element) throws IOException { 23111 if (element != null) { 23112 composeElementAttributes(element); 23113 xml.enter(FHIR_NS, name); 23114 composeClaimResponseInsuranceComponentElements(element); 23115 composeElementClose(element); 23116 xml.exit(FHIR_NS, name); 23117 } 23118 } 23119 23120 protected void composeClaimResponseInsuranceComponentElements(ClaimResponse.InsuranceComponent element) throws IOException { 23121 composeBackboneElements(element); 23122 if (element.hasSequenceElement()) { 23123 composePositiveInt("sequence", element.getSequenceElement()); 23124 } 23125 if (element.hasFocalElement()) { 23126 composeBoolean("focal", element.getFocalElement()); 23127 } 23128 if (element.hasCoverage()) { 23129 composeReference("coverage", element.getCoverage()); 23130 } 23131 if (element.hasBusinessArrangementElement()) { 23132 composeString("businessArrangement", element.getBusinessArrangementElement()); 23133 } 23134 if (element.hasPreAuthRef()) { 23135 for (StringType e : element.getPreAuthRef()) 23136 composeString("preAuthRef", e); 23137 } 23138 if (element.hasClaimResponse()) { 23139 composeReference("claimResponse", element.getClaimResponse()); 23140 } 23141 } 23142 23143 protected void composeClinicalImpression(String name, ClinicalImpression element) throws IOException { 23144 if (element != null) { 23145 composeDomainResourceAttributes(element); 23146 xml.enter(FHIR_NS, name); 23147 composeClinicalImpressionElements(element); 23148 composeElementClose(element); 23149 xml.exit(FHIR_NS, name); 23150 } 23151 } 23152 23153 protected void composeClinicalImpressionElements(ClinicalImpression element) throws IOException { 23154 composeDomainResourceElements(element); 23155 if (element.hasIdentifier()) { 23156 for (Identifier e : element.getIdentifier()) 23157 composeIdentifier("identifier", e); 23158 } 23159 if (element.hasStatusElement()) 23160 composeEnumeration("status", element.getStatusElement(), new ClinicalImpression.ClinicalImpressionStatusEnumFactory()); 23161 if (element.hasCode()) { 23162 composeCodeableConcept("code", element.getCode()); 23163 } 23164 if (element.hasDescriptionElement()) { 23165 composeString("description", element.getDescriptionElement()); 23166 } 23167 if (element.hasSubject()) { 23168 composeReference("subject", element.getSubject()); 23169 } 23170 if (element.hasContext()) { 23171 composeReference("context", element.getContext()); 23172 } 23173 if (element.hasEffective()) { 23174 composeType("effective", element.getEffective()); 23175 } if (element.hasDateElement()) { 23176 composeDateTime("date", element.getDateElement()); 23177 } 23178 if (element.hasAssessor()) { 23179 composeReference("assessor", element.getAssessor()); 23180 } 23181 if (element.hasPrevious()) { 23182 composeReference("previous", element.getPrevious()); 23183 } 23184 if (element.hasProblem()) { 23185 for (Reference e : element.getProblem()) 23186 composeReference("problem", e); 23187 } 23188 if (element.hasInvestigation()) { 23189 for (ClinicalImpression.ClinicalImpressionInvestigationComponent e : element.getInvestigation()) 23190 composeClinicalImpressionClinicalImpressionInvestigationComponent("investigation", e); 23191 } 23192 if (element.hasProtocol()) { 23193 for (UriType e : element.getProtocol()) 23194 composeUri("protocol", e); 23195 } 23196 if (element.hasSummaryElement()) { 23197 composeString("summary", element.getSummaryElement()); 23198 } 23199 if (element.hasFinding()) { 23200 for (ClinicalImpression.ClinicalImpressionFindingComponent e : element.getFinding()) 23201 composeClinicalImpressionClinicalImpressionFindingComponent("finding", e); 23202 } 23203 if (element.hasPrognosisCodeableConcept()) { 23204 for (CodeableConcept e : element.getPrognosisCodeableConcept()) 23205 composeCodeableConcept("prognosisCodeableConcept", e); 23206 } 23207 if (element.hasPrognosisReference()) { 23208 for (Reference e : element.getPrognosisReference()) 23209 composeReference("prognosisReference", e); 23210 } 23211 if (element.hasAction()) { 23212 for (Reference e : element.getAction()) 23213 composeReference("action", e); 23214 } 23215 if (element.hasNote()) { 23216 for (Annotation e : element.getNote()) 23217 composeAnnotation("note", e); 23218 } 23219 } 23220 23221 protected void composeClinicalImpressionClinicalImpressionInvestigationComponent(String name, ClinicalImpression.ClinicalImpressionInvestigationComponent element) throws IOException { 23222 if (element != null) { 23223 composeElementAttributes(element); 23224 xml.enter(FHIR_NS, name); 23225 composeClinicalImpressionClinicalImpressionInvestigationComponentElements(element); 23226 composeElementClose(element); 23227 xml.exit(FHIR_NS, name); 23228 } 23229 } 23230 23231 protected void composeClinicalImpressionClinicalImpressionInvestigationComponentElements(ClinicalImpression.ClinicalImpressionInvestigationComponent element) throws IOException { 23232 composeBackboneElements(element); 23233 if (element.hasCode()) { 23234 composeCodeableConcept("code", element.getCode()); 23235 } 23236 if (element.hasItem()) { 23237 for (Reference e : element.getItem()) 23238 composeReference("item", e); 23239 } 23240 } 23241 23242 protected void composeClinicalImpressionClinicalImpressionFindingComponent(String name, ClinicalImpression.ClinicalImpressionFindingComponent element) throws IOException { 23243 if (element != null) { 23244 composeElementAttributes(element); 23245 xml.enter(FHIR_NS, name); 23246 composeClinicalImpressionClinicalImpressionFindingComponentElements(element); 23247 composeElementClose(element); 23248 xml.exit(FHIR_NS, name); 23249 } 23250 } 23251 23252 protected void composeClinicalImpressionClinicalImpressionFindingComponentElements(ClinicalImpression.ClinicalImpressionFindingComponent element) throws IOException { 23253 composeBackboneElements(element); 23254 if (element.hasItem()) { 23255 composeType("item", element.getItem()); 23256 } if (element.hasBasisElement()) { 23257 composeString("basis", element.getBasisElement()); 23258 } 23259 } 23260 23261 protected void composeCodeSystem(String name, CodeSystem element) throws IOException { 23262 if (element != null) { 23263 composeDomainResourceAttributes(element); 23264 xml.enter(FHIR_NS, name); 23265 composeCodeSystemElements(element); 23266 composeElementClose(element); 23267 xml.exit(FHIR_NS, name); 23268 } 23269 } 23270 23271 protected void composeCodeSystemElements(CodeSystem element) throws IOException { 23272 composeDomainResourceElements(element); 23273 if (element.hasUrlElement()) { 23274 composeUri("url", element.getUrlElement()); 23275 } 23276 if (element.hasIdentifier()) { 23277 composeIdentifier("identifier", element.getIdentifier()); 23278 } 23279 if (element.hasVersionElement()) { 23280 composeString("version", element.getVersionElement()); 23281 } 23282 if (element.hasNameElement()) { 23283 composeString("name", element.getNameElement()); 23284 } 23285 if (element.hasTitleElement()) { 23286 composeString("title", element.getTitleElement()); 23287 } 23288 if (element.hasStatusElement()) 23289 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 23290 if (element.hasExperimentalElement()) { 23291 composeBoolean("experimental", element.getExperimentalElement()); 23292 } 23293 if (element.hasDateElement()) { 23294 composeDateTime("date", element.getDateElement()); 23295 } 23296 if (element.hasPublisherElement()) { 23297 composeString("publisher", element.getPublisherElement()); 23298 } 23299 if (element.hasContact()) { 23300 for (ContactDetail e : element.getContact()) 23301 composeContactDetail("contact", e); 23302 } 23303 if (element.hasDescriptionElement()) { 23304 composeMarkdown("description", element.getDescriptionElement()); 23305 } 23306 if (element.hasUseContext()) { 23307 for (UsageContext e : element.getUseContext()) 23308 composeUsageContext("useContext", e); 23309 } 23310 if (element.hasJurisdiction()) { 23311 for (CodeableConcept e : element.getJurisdiction()) 23312 composeCodeableConcept("jurisdiction", e); 23313 } 23314 if (element.hasPurposeElement()) { 23315 composeMarkdown("purpose", element.getPurposeElement()); 23316 } 23317 if (element.hasCopyrightElement()) { 23318 composeMarkdown("copyright", element.getCopyrightElement()); 23319 } 23320 if (element.hasCaseSensitiveElement()) { 23321 composeBoolean("caseSensitive", element.getCaseSensitiveElement()); 23322 } 23323 if (element.hasValueSetElement()) { 23324 composeUri("valueSet", element.getValueSetElement()); 23325 } 23326 if (element.hasHierarchyMeaningElement()) 23327 composeEnumeration("hierarchyMeaning", element.getHierarchyMeaningElement(), new CodeSystem.CodeSystemHierarchyMeaningEnumFactory()); 23328 if (element.hasCompositionalElement()) { 23329 composeBoolean("compositional", element.getCompositionalElement()); 23330 } 23331 if (element.hasVersionNeededElement()) { 23332 composeBoolean("versionNeeded", element.getVersionNeededElement()); 23333 } 23334 if (element.hasContentElement()) 23335 composeEnumeration("content", element.getContentElement(), new CodeSystem.CodeSystemContentModeEnumFactory()); 23336 if (element.hasCountElement()) { 23337 composeUnsignedInt("count", element.getCountElement()); 23338 } 23339 if (element.hasFilter()) { 23340 for (CodeSystem.CodeSystemFilterComponent e : element.getFilter()) 23341 composeCodeSystemCodeSystemFilterComponent("filter", e); 23342 } 23343 if (element.hasProperty()) { 23344 for (CodeSystem.PropertyComponent e : element.getProperty()) 23345 composeCodeSystemPropertyComponent("property", e); 23346 } 23347 if (element.hasConcept()) { 23348 for (CodeSystem.ConceptDefinitionComponent e : element.getConcept()) 23349 composeCodeSystemConceptDefinitionComponent("concept", e); 23350 } 23351 } 23352 23353 protected void composeCodeSystemCodeSystemFilterComponent(String name, CodeSystem.CodeSystemFilterComponent element) throws IOException { 23354 if (element != null) { 23355 composeElementAttributes(element); 23356 xml.enter(FHIR_NS, name); 23357 composeCodeSystemCodeSystemFilterComponentElements(element); 23358 composeElementClose(element); 23359 xml.exit(FHIR_NS, name); 23360 } 23361 } 23362 23363 protected void composeCodeSystemCodeSystemFilterComponentElements(CodeSystem.CodeSystemFilterComponent element) throws IOException { 23364 composeBackboneElements(element); 23365 if (element.hasCodeElement()) { 23366 composeCode("code", element.getCodeElement()); 23367 } 23368 if (element.hasDescriptionElement()) { 23369 composeString("description", element.getDescriptionElement()); 23370 } 23371 if (element.hasOperator()) 23372 for (Enumeration<CodeSystem.FilterOperator> e : element.getOperator()) 23373 composeEnumeration("operator", e, new CodeSystem.FilterOperatorEnumFactory()); 23374 if (element.hasValueElement()) { 23375 composeString("value", element.getValueElement()); 23376 } 23377 } 23378 23379 protected void composeCodeSystemPropertyComponent(String name, CodeSystem.PropertyComponent element) throws IOException { 23380 if (element != null) { 23381 composeElementAttributes(element); 23382 xml.enter(FHIR_NS, name); 23383 composeCodeSystemPropertyComponentElements(element); 23384 composeElementClose(element); 23385 xml.exit(FHIR_NS, name); 23386 } 23387 } 23388 23389 protected void composeCodeSystemPropertyComponentElements(CodeSystem.PropertyComponent element) throws IOException { 23390 composeBackboneElements(element); 23391 if (element.hasCodeElement()) { 23392 composeCode("code", element.getCodeElement()); 23393 } 23394 if (element.hasUriElement()) { 23395 composeUri("uri", element.getUriElement()); 23396 } 23397 if (element.hasDescriptionElement()) { 23398 composeString("description", element.getDescriptionElement()); 23399 } 23400 if (element.hasTypeElement()) 23401 composeEnumeration("type", element.getTypeElement(), new CodeSystem.PropertyTypeEnumFactory()); 23402 } 23403 23404 protected void composeCodeSystemConceptDefinitionComponent(String name, CodeSystem.ConceptDefinitionComponent element) throws IOException { 23405 if (element != null) { 23406 composeElementAttributes(element); 23407 xml.enter(FHIR_NS, name); 23408 composeCodeSystemConceptDefinitionComponentElements(element); 23409 composeElementClose(element); 23410 xml.exit(FHIR_NS, name); 23411 } 23412 } 23413 23414 protected void composeCodeSystemConceptDefinitionComponentElements(CodeSystem.ConceptDefinitionComponent element) throws IOException { 23415 composeBackboneElements(element); 23416 if (element.hasCodeElement()) { 23417 composeCode("code", element.getCodeElement()); 23418 } 23419 if (element.hasDisplayElement()) { 23420 composeString("display", element.getDisplayElement()); 23421 } 23422 if (element.hasDefinitionElement()) { 23423 composeString("definition", element.getDefinitionElement()); 23424 } 23425 if (element.hasDesignation()) { 23426 for (CodeSystem.ConceptDefinitionDesignationComponent e : element.getDesignation()) 23427 composeCodeSystemConceptDefinitionDesignationComponent("designation", e); 23428 } 23429 if (element.hasProperty()) { 23430 for (CodeSystem.ConceptPropertyComponent e : element.getProperty()) 23431 composeCodeSystemConceptPropertyComponent("property", e); 23432 } 23433 if (element.hasConcept()) { 23434 for (CodeSystem.ConceptDefinitionComponent e : element.getConcept()) 23435 composeCodeSystemConceptDefinitionComponent("concept", e); 23436 } 23437 } 23438 23439 protected void composeCodeSystemConceptDefinitionDesignationComponent(String name, CodeSystem.ConceptDefinitionDesignationComponent element) throws IOException { 23440 if (element != null) { 23441 composeElementAttributes(element); 23442 xml.enter(FHIR_NS, name); 23443 composeCodeSystemConceptDefinitionDesignationComponentElements(element); 23444 composeElementClose(element); 23445 xml.exit(FHIR_NS, name); 23446 } 23447 } 23448 23449 protected void composeCodeSystemConceptDefinitionDesignationComponentElements(CodeSystem.ConceptDefinitionDesignationComponent element) throws IOException { 23450 composeBackboneElements(element); 23451 if (element.hasLanguageElement()) { 23452 composeCode("language", element.getLanguageElement()); 23453 } 23454 if (element.hasUse()) { 23455 composeCoding("use", element.getUse()); 23456 } 23457 if (element.hasValueElement()) { 23458 composeString("value", element.getValueElement()); 23459 } 23460 } 23461 23462 protected void composeCodeSystemConceptPropertyComponent(String name, CodeSystem.ConceptPropertyComponent element) throws IOException { 23463 if (element != null) { 23464 composeElementAttributes(element); 23465 xml.enter(FHIR_NS, name); 23466 composeCodeSystemConceptPropertyComponentElements(element); 23467 composeElementClose(element); 23468 xml.exit(FHIR_NS, name); 23469 } 23470 } 23471 23472 protected void composeCodeSystemConceptPropertyComponentElements(CodeSystem.ConceptPropertyComponent element) throws IOException { 23473 composeBackboneElements(element); 23474 if (element.hasCodeElement()) { 23475 composeCode("code", element.getCodeElement()); 23476 } 23477 if (element.hasValue()) { 23478 composeType("value", element.getValue()); 23479 } } 23480 23481 protected void composeCommunication(String name, Communication element) throws IOException { 23482 if (element != null) { 23483 composeDomainResourceAttributes(element); 23484 xml.enter(FHIR_NS, name); 23485 composeCommunicationElements(element); 23486 composeElementClose(element); 23487 xml.exit(FHIR_NS, name); 23488 } 23489 } 23490 23491 protected void composeCommunicationElements(Communication element) throws IOException { 23492 composeDomainResourceElements(element); 23493 if (element.hasIdentifier()) { 23494 for (Identifier e : element.getIdentifier()) 23495 composeIdentifier("identifier", e); 23496 } 23497 if (element.hasDefinition()) { 23498 for (Reference e : element.getDefinition()) 23499 composeReference("definition", e); 23500 } 23501 if (element.hasBasedOn()) { 23502 for (Reference e : element.getBasedOn()) 23503 composeReference("basedOn", e); 23504 } 23505 if (element.hasPartOf()) { 23506 for (Reference e : element.getPartOf()) 23507 composeReference("partOf", e); 23508 } 23509 if (element.hasStatusElement()) 23510 composeEnumeration("status", element.getStatusElement(), new Communication.CommunicationStatusEnumFactory()); 23511 if (element.hasNotDoneElement()) { 23512 composeBoolean("notDone", element.getNotDoneElement()); 23513 } 23514 if (element.hasNotDoneReason()) { 23515 composeCodeableConcept("notDoneReason", element.getNotDoneReason()); 23516 } 23517 if (element.hasCategory()) { 23518 for (CodeableConcept e : element.getCategory()) 23519 composeCodeableConcept("category", e); 23520 } 23521 if (element.hasMedium()) { 23522 for (CodeableConcept e : element.getMedium()) 23523 composeCodeableConcept("medium", e); 23524 } 23525 if (element.hasSubject()) { 23526 composeReference("subject", element.getSubject()); 23527 } 23528 if (element.hasRecipient()) { 23529 for (Reference e : element.getRecipient()) 23530 composeReference("recipient", e); 23531 } 23532 if (element.hasTopic()) { 23533 for (Reference e : element.getTopic()) 23534 composeReference("topic", e); 23535 } 23536 if (element.hasContext()) { 23537 composeReference("context", element.getContext()); 23538 } 23539 if (element.hasSentElement()) { 23540 composeDateTime("sent", element.getSentElement()); 23541 } 23542 if (element.hasReceivedElement()) { 23543 composeDateTime("received", element.getReceivedElement()); 23544 } 23545 if (element.hasSender()) { 23546 composeReference("sender", element.getSender()); 23547 } 23548 if (element.hasReasonCode()) { 23549 for (CodeableConcept e : element.getReasonCode()) 23550 composeCodeableConcept("reasonCode", e); 23551 } 23552 if (element.hasReasonReference()) { 23553 for (Reference e : element.getReasonReference()) 23554 composeReference("reasonReference", e); 23555 } 23556 if (element.hasPayload()) { 23557 for (Communication.CommunicationPayloadComponent e : element.getPayload()) 23558 composeCommunicationCommunicationPayloadComponent("payload", e); 23559 } 23560 if (element.hasNote()) { 23561 for (Annotation e : element.getNote()) 23562 composeAnnotation("note", e); 23563 } 23564 } 23565 23566 protected void composeCommunicationCommunicationPayloadComponent(String name, Communication.CommunicationPayloadComponent element) throws IOException { 23567 if (element != null) { 23568 composeElementAttributes(element); 23569 xml.enter(FHIR_NS, name); 23570 composeCommunicationCommunicationPayloadComponentElements(element); 23571 composeElementClose(element); 23572 xml.exit(FHIR_NS, name); 23573 } 23574 } 23575 23576 protected void composeCommunicationCommunicationPayloadComponentElements(Communication.CommunicationPayloadComponent element) throws IOException { 23577 composeBackboneElements(element); 23578 if (element.hasContent()) { 23579 composeType("content", element.getContent()); 23580 } } 23581 23582 protected void composeCommunicationRequest(String name, CommunicationRequest element) throws IOException { 23583 if (element != null) { 23584 composeDomainResourceAttributes(element); 23585 xml.enter(FHIR_NS, name); 23586 composeCommunicationRequestElements(element); 23587 composeElementClose(element); 23588 xml.exit(FHIR_NS, name); 23589 } 23590 } 23591 23592 protected void composeCommunicationRequestElements(CommunicationRequest element) throws IOException { 23593 composeDomainResourceElements(element); 23594 if (element.hasIdentifier()) { 23595 for (Identifier e : element.getIdentifier()) 23596 composeIdentifier("identifier", e); 23597 } 23598 if (element.hasBasedOn()) { 23599 for (Reference e : element.getBasedOn()) 23600 composeReference("basedOn", e); 23601 } 23602 if (element.hasReplaces()) { 23603 for (Reference e : element.getReplaces()) 23604 composeReference("replaces", e); 23605 } 23606 if (element.hasGroupIdentifier()) { 23607 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 23608 } 23609 if (element.hasStatusElement()) 23610 composeEnumeration("status", element.getStatusElement(), new CommunicationRequest.CommunicationRequestStatusEnumFactory()); 23611 if (element.hasCategory()) { 23612 for (CodeableConcept e : element.getCategory()) 23613 composeCodeableConcept("category", e); 23614 } 23615 if (element.hasPriorityElement()) 23616 composeEnumeration("priority", element.getPriorityElement(), new CommunicationRequest.CommunicationPriorityEnumFactory()); 23617 if (element.hasMedium()) { 23618 for (CodeableConcept e : element.getMedium()) 23619 composeCodeableConcept("medium", e); 23620 } 23621 if (element.hasSubject()) { 23622 composeReference("subject", element.getSubject()); 23623 } 23624 if (element.hasRecipient()) { 23625 for (Reference e : element.getRecipient()) 23626 composeReference("recipient", e); 23627 } 23628 if (element.hasTopic()) { 23629 for (Reference e : element.getTopic()) 23630 composeReference("topic", e); 23631 } 23632 if (element.hasContext()) { 23633 composeReference("context", element.getContext()); 23634 } 23635 if (element.hasPayload()) { 23636 for (CommunicationRequest.CommunicationRequestPayloadComponent e : element.getPayload()) 23637 composeCommunicationRequestCommunicationRequestPayloadComponent("payload", e); 23638 } 23639 if (element.hasOccurrence()) { 23640 composeType("occurrence", element.getOccurrence()); 23641 } if (element.hasAuthoredOnElement()) { 23642 composeDateTime("authoredOn", element.getAuthoredOnElement()); 23643 } 23644 if (element.hasSender()) { 23645 composeReference("sender", element.getSender()); 23646 } 23647 if (element.hasRequester()) { 23648 composeCommunicationRequestCommunicationRequestRequesterComponent("requester", element.getRequester()); 23649 } 23650 if (element.hasReasonCode()) { 23651 for (CodeableConcept e : element.getReasonCode()) 23652 composeCodeableConcept("reasonCode", e); 23653 } 23654 if (element.hasReasonReference()) { 23655 for (Reference e : element.getReasonReference()) 23656 composeReference("reasonReference", e); 23657 } 23658 if (element.hasNote()) { 23659 for (Annotation e : element.getNote()) 23660 composeAnnotation("note", e); 23661 } 23662 } 23663 23664 protected void composeCommunicationRequestCommunicationRequestPayloadComponent(String name, CommunicationRequest.CommunicationRequestPayloadComponent element) throws IOException { 23665 if (element != null) { 23666 composeElementAttributes(element); 23667 xml.enter(FHIR_NS, name); 23668 composeCommunicationRequestCommunicationRequestPayloadComponentElements(element); 23669 composeElementClose(element); 23670 xml.exit(FHIR_NS, name); 23671 } 23672 } 23673 23674 protected void composeCommunicationRequestCommunicationRequestPayloadComponentElements(CommunicationRequest.CommunicationRequestPayloadComponent element) throws IOException { 23675 composeBackboneElements(element); 23676 if (element.hasContent()) { 23677 composeType("content", element.getContent()); 23678 } } 23679 23680 protected void composeCommunicationRequestCommunicationRequestRequesterComponent(String name, CommunicationRequest.CommunicationRequestRequesterComponent element) throws IOException { 23681 if (element != null) { 23682 composeElementAttributes(element); 23683 xml.enter(FHIR_NS, name); 23684 composeCommunicationRequestCommunicationRequestRequesterComponentElements(element); 23685 composeElementClose(element); 23686 xml.exit(FHIR_NS, name); 23687 } 23688 } 23689 23690 protected void composeCommunicationRequestCommunicationRequestRequesterComponentElements(CommunicationRequest.CommunicationRequestRequesterComponent element) throws IOException { 23691 composeBackboneElements(element); 23692 if (element.hasAgent()) { 23693 composeReference("agent", element.getAgent()); 23694 } 23695 if (element.hasOnBehalfOf()) { 23696 composeReference("onBehalfOf", element.getOnBehalfOf()); 23697 } 23698 } 23699 23700 protected void composeCompartmentDefinition(String name, CompartmentDefinition element) throws IOException { 23701 if (element != null) { 23702 composeDomainResourceAttributes(element); 23703 xml.enter(FHIR_NS, name); 23704 composeCompartmentDefinitionElements(element); 23705 composeElementClose(element); 23706 xml.exit(FHIR_NS, name); 23707 } 23708 } 23709 23710 protected void composeCompartmentDefinitionElements(CompartmentDefinition element) throws IOException { 23711 composeDomainResourceElements(element); 23712 if (element.hasUrlElement()) { 23713 composeUri("url", element.getUrlElement()); 23714 } 23715 if (element.hasNameElement()) { 23716 composeString("name", element.getNameElement()); 23717 } 23718 if (element.hasTitleElement()) { 23719 composeString("title", element.getTitleElement()); 23720 } 23721 if (element.hasStatusElement()) 23722 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 23723 if (element.hasExperimentalElement()) { 23724 composeBoolean("experimental", element.getExperimentalElement()); 23725 } 23726 if (element.hasDateElement()) { 23727 composeDateTime("date", element.getDateElement()); 23728 } 23729 if (element.hasPublisherElement()) { 23730 composeString("publisher", element.getPublisherElement()); 23731 } 23732 if (element.hasContact()) { 23733 for (ContactDetail e : element.getContact()) 23734 composeContactDetail("contact", e); 23735 } 23736 if (element.hasDescriptionElement()) { 23737 composeMarkdown("description", element.getDescriptionElement()); 23738 } 23739 if (element.hasPurposeElement()) { 23740 composeMarkdown("purpose", element.getPurposeElement()); 23741 } 23742 if (element.hasUseContext()) { 23743 for (UsageContext e : element.getUseContext()) 23744 composeUsageContext("useContext", e); 23745 } 23746 if (element.hasJurisdiction()) { 23747 for (CodeableConcept e : element.getJurisdiction()) 23748 composeCodeableConcept("jurisdiction", e); 23749 } 23750 if (element.hasCodeElement()) 23751 composeEnumeration("code", element.getCodeElement(), new CompartmentDefinition.CompartmentTypeEnumFactory()); 23752 if (element.hasSearchElement()) { 23753 composeBoolean("search", element.getSearchElement()); 23754 } 23755 if (element.hasResource()) { 23756 for (CompartmentDefinition.CompartmentDefinitionResourceComponent e : element.getResource()) 23757 composeCompartmentDefinitionCompartmentDefinitionResourceComponent("resource", e); 23758 } 23759 } 23760 23761 protected void composeCompartmentDefinitionCompartmentDefinitionResourceComponent(String name, CompartmentDefinition.CompartmentDefinitionResourceComponent element) throws IOException { 23762 if (element != null) { 23763 composeElementAttributes(element); 23764 xml.enter(FHIR_NS, name); 23765 composeCompartmentDefinitionCompartmentDefinitionResourceComponentElements(element); 23766 composeElementClose(element); 23767 xml.exit(FHIR_NS, name); 23768 } 23769 } 23770 23771 protected void composeCompartmentDefinitionCompartmentDefinitionResourceComponentElements(CompartmentDefinition.CompartmentDefinitionResourceComponent element) throws IOException { 23772 composeBackboneElements(element); 23773 if (element.hasCodeElement()) { 23774 composeCode("code", element.getCodeElement()); 23775 } 23776 if (element.hasParam()) { 23777 for (StringType e : element.getParam()) 23778 composeString("param", e); 23779 } 23780 if (element.hasDocumentationElement()) { 23781 composeString("documentation", element.getDocumentationElement()); 23782 } 23783 } 23784 23785 protected void composeComposition(String name, Composition element) throws IOException { 23786 if (element != null) { 23787 composeDomainResourceAttributes(element); 23788 xml.enter(FHIR_NS, name); 23789 composeCompositionElements(element); 23790 composeElementClose(element); 23791 xml.exit(FHIR_NS, name); 23792 } 23793 } 23794 23795 protected void composeCompositionElements(Composition element) throws IOException { 23796 composeDomainResourceElements(element); 23797 if (element.hasIdentifier()) { 23798 composeIdentifier("identifier", element.getIdentifier()); 23799 } 23800 if (element.hasStatusElement()) 23801 composeEnumeration("status", element.getStatusElement(), new Composition.CompositionStatusEnumFactory()); 23802 if (element.hasType()) { 23803 composeCodeableConcept("type", element.getType()); 23804 } 23805 if (element.hasClass_()) { 23806 composeCodeableConcept("class", element.getClass_()); 23807 } 23808 if (element.hasSubject()) { 23809 composeReference("subject", element.getSubject()); 23810 } 23811 if (element.hasEncounter()) { 23812 composeReference("encounter", element.getEncounter()); 23813 } 23814 if (element.hasDateElement()) { 23815 composeDateTime("date", element.getDateElement()); 23816 } 23817 if (element.hasAuthor()) { 23818 for (Reference e : element.getAuthor()) 23819 composeReference("author", e); 23820 } 23821 if (element.hasTitleElement()) { 23822 composeString("title", element.getTitleElement()); 23823 } 23824 if (element.hasConfidentialityElement()) 23825 composeEnumeration("confidentiality", element.getConfidentialityElement(), new Composition.DocumentConfidentialityEnumFactory()); 23826 if (element.hasAttester()) { 23827 for (Composition.CompositionAttesterComponent e : element.getAttester()) 23828 composeCompositionCompositionAttesterComponent("attester", e); 23829 } 23830 if (element.hasCustodian()) { 23831 composeReference("custodian", element.getCustodian()); 23832 } 23833 if (element.hasRelatesTo()) { 23834 for (Composition.CompositionRelatesToComponent e : element.getRelatesTo()) 23835 composeCompositionCompositionRelatesToComponent("relatesTo", e); 23836 } 23837 if (element.hasEvent()) { 23838 for (Composition.CompositionEventComponent e : element.getEvent()) 23839 composeCompositionCompositionEventComponent("event", e); 23840 } 23841 if (element.hasSection()) { 23842 for (Composition.SectionComponent e : element.getSection()) 23843 composeCompositionSectionComponent("section", e); 23844 } 23845 } 23846 23847 protected void composeCompositionCompositionAttesterComponent(String name, Composition.CompositionAttesterComponent element) throws IOException { 23848 if (element != null) { 23849 composeElementAttributes(element); 23850 xml.enter(FHIR_NS, name); 23851 composeCompositionCompositionAttesterComponentElements(element); 23852 composeElementClose(element); 23853 xml.exit(FHIR_NS, name); 23854 } 23855 } 23856 23857 protected void composeCompositionCompositionAttesterComponentElements(Composition.CompositionAttesterComponent element) throws IOException { 23858 composeBackboneElements(element); 23859 if (element.hasMode()) 23860 for (Enumeration<Composition.CompositionAttestationMode> e : element.getMode()) 23861 composeEnumeration("mode", e, new Composition.CompositionAttestationModeEnumFactory()); 23862 if (element.hasTimeElement()) { 23863 composeDateTime("time", element.getTimeElement()); 23864 } 23865 if (element.hasParty()) { 23866 composeReference("party", element.getParty()); 23867 } 23868 } 23869 23870 protected void composeCompositionCompositionRelatesToComponent(String name, Composition.CompositionRelatesToComponent element) throws IOException { 23871 if (element != null) { 23872 composeElementAttributes(element); 23873 xml.enter(FHIR_NS, name); 23874 composeCompositionCompositionRelatesToComponentElements(element); 23875 composeElementClose(element); 23876 xml.exit(FHIR_NS, name); 23877 } 23878 } 23879 23880 protected void composeCompositionCompositionRelatesToComponentElements(Composition.CompositionRelatesToComponent element) throws IOException { 23881 composeBackboneElements(element); 23882 if (element.hasCodeElement()) 23883 composeEnumeration("code", element.getCodeElement(), new Composition.DocumentRelationshipTypeEnumFactory()); 23884 if (element.hasTarget()) { 23885 composeType("target", element.getTarget()); 23886 } } 23887 23888 protected void composeCompositionCompositionEventComponent(String name, Composition.CompositionEventComponent element) throws IOException { 23889 if (element != null) { 23890 composeElementAttributes(element); 23891 xml.enter(FHIR_NS, name); 23892 composeCompositionCompositionEventComponentElements(element); 23893 composeElementClose(element); 23894 xml.exit(FHIR_NS, name); 23895 } 23896 } 23897 23898 protected void composeCompositionCompositionEventComponentElements(Composition.CompositionEventComponent element) throws IOException { 23899 composeBackboneElements(element); 23900 if (element.hasCode()) { 23901 for (CodeableConcept e : element.getCode()) 23902 composeCodeableConcept("code", e); 23903 } 23904 if (element.hasPeriod()) { 23905 composePeriod("period", element.getPeriod()); 23906 } 23907 if (element.hasDetail()) { 23908 for (Reference e : element.getDetail()) 23909 composeReference("detail", e); 23910 } 23911 } 23912 23913 protected void composeCompositionSectionComponent(String name, Composition.SectionComponent element) throws IOException { 23914 if (element != null) { 23915 composeElementAttributes(element); 23916 xml.enter(FHIR_NS, name); 23917 composeCompositionSectionComponentElements(element); 23918 composeElementClose(element); 23919 xml.exit(FHIR_NS, name); 23920 } 23921 } 23922 23923 protected void composeCompositionSectionComponentElements(Composition.SectionComponent element) throws IOException { 23924 composeBackboneElements(element); 23925 if (element.hasTitleElement()) { 23926 composeString("title", element.getTitleElement()); 23927 } 23928 if (element.hasCode()) { 23929 composeCodeableConcept("code", element.getCode()); 23930 } 23931 if (element.hasText()) { 23932 composeNarrative("text", element.getText()); 23933 } 23934 if (element.hasModeElement()) 23935 composeEnumeration("mode", element.getModeElement(), new Composition.SectionModeEnumFactory()); 23936 if (element.hasOrderedBy()) { 23937 composeCodeableConcept("orderedBy", element.getOrderedBy()); 23938 } 23939 if (element.hasEntry()) { 23940 for (Reference e : element.getEntry()) 23941 composeReference("entry", e); 23942 } 23943 if (element.hasEmptyReason()) { 23944 composeCodeableConcept("emptyReason", element.getEmptyReason()); 23945 } 23946 if (element.hasSection()) { 23947 for (Composition.SectionComponent e : element.getSection()) 23948 composeCompositionSectionComponent("section", e); 23949 } 23950 } 23951 23952 protected void composeConceptMap(String name, ConceptMap element) throws IOException { 23953 if (element != null) { 23954 composeDomainResourceAttributes(element); 23955 xml.enter(FHIR_NS, name); 23956 composeConceptMapElements(element); 23957 composeElementClose(element); 23958 xml.exit(FHIR_NS, name); 23959 } 23960 } 23961 23962 protected void composeConceptMapElements(ConceptMap element) throws IOException { 23963 composeDomainResourceElements(element); 23964 if (element.hasUrlElement()) { 23965 composeUri("url", element.getUrlElement()); 23966 } 23967 if (element.hasIdentifier()) { 23968 composeIdentifier("identifier", element.getIdentifier()); 23969 } 23970 if (element.hasVersionElement()) { 23971 composeString("version", element.getVersionElement()); 23972 } 23973 if (element.hasNameElement()) { 23974 composeString("name", element.getNameElement()); 23975 } 23976 if (element.hasTitleElement()) { 23977 composeString("title", element.getTitleElement()); 23978 } 23979 if (element.hasStatusElement()) 23980 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 23981 if (element.hasExperimentalElement()) { 23982 composeBoolean("experimental", element.getExperimentalElement()); 23983 } 23984 if (element.hasDateElement()) { 23985 composeDateTime("date", element.getDateElement()); 23986 } 23987 if (element.hasPublisherElement()) { 23988 composeString("publisher", element.getPublisherElement()); 23989 } 23990 if (element.hasContact()) { 23991 for (ContactDetail e : element.getContact()) 23992 composeContactDetail("contact", e); 23993 } 23994 if (element.hasDescriptionElement()) { 23995 composeMarkdown("description", element.getDescriptionElement()); 23996 } 23997 if (element.hasUseContext()) { 23998 for (UsageContext e : element.getUseContext()) 23999 composeUsageContext("useContext", e); 24000 } 24001 if (element.hasJurisdiction()) { 24002 for (CodeableConcept e : element.getJurisdiction()) 24003 composeCodeableConcept("jurisdiction", e); 24004 } 24005 if (element.hasPurposeElement()) { 24006 composeMarkdown("purpose", element.getPurposeElement()); 24007 } 24008 if (element.hasCopyrightElement()) { 24009 composeMarkdown("copyright", element.getCopyrightElement()); 24010 } 24011 if (element.hasSource()) { 24012 composeType("source", element.getSource()); 24013 } if (element.hasTarget()) { 24014 composeType("target", element.getTarget()); 24015 } if (element.hasGroup()) { 24016 for (ConceptMap.ConceptMapGroupComponent e : element.getGroup()) 24017 composeConceptMapConceptMapGroupComponent("group", e); 24018 } 24019 } 24020 24021 protected void composeConceptMapConceptMapGroupComponent(String name, ConceptMap.ConceptMapGroupComponent element) throws IOException { 24022 if (element != null) { 24023 composeElementAttributes(element); 24024 xml.enter(FHIR_NS, name); 24025 composeConceptMapConceptMapGroupComponentElements(element); 24026 composeElementClose(element); 24027 xml.exit(FHIR_NS, name); 24028 } 24029 } 24030 24031 protected void composeConceptMapConceptMapGroupComponentElements(ConceptMap.ConceptMapGroupComponent element) throws IOException { 24032 composeBackboneElements(element); 24033 if (element.hasSourceElement()) { 24034 composeUri("source", element.getSourceElement()); 24035 } 24036 if (element.hasSourceVersionElement()) { 24037 composeString("sourceVersion", element.getSourceVersionElement()); 24038 } 24039 if (element.hasTargetElement()) { 24040 composeUri("target", element.getTargetElement()); 24041 } 24042 if (element.hasTargetVersionElement()) { 24043 composeString("targetVersion", element.getTargetVersionElement()); 24044 } 24045 if (element.hasElement()) { 24046 for (ConceptMap.SourceElementComponent e : element.getElement()) 24047 composeConceptMapSourceElementComponent("element", e); 24048 } 24049 if (element.hasUnmapped()) { 24050 composeConceptMapConceptMapGroupUnmappedComponent("unmapped", element.getUnmapped()); 24051 } 24052 } 24053 24054 protected void composeConceptMapSourceElementComponent(String name, ConceptMap.SourceElementComponent element) throws IOException { 24055 if (element != null) { 24056 composeElementAttributes(element); 24057 xml.enter(FHIR_NS, name); 24058 composeConceptMapSourceElementComponentElements(element); 24059 composeElementClose(element); 24060 xml.exit(FHIR_NS, name); 24061 } 24062 } 24063 24064 protected void composeConceptMapSourceElementComponentElements(ConceptMap.SourceElementComponent element) throws IOException { 24065 composeBackboneElements(element); 24066 if (element.hasCodeElement()) { 24067 composeCode("code", element.getCodeElement()); 24068 } 24069 if (element.hasDisplayElement()) { 24070 composeString("display", element.getDisplayElement()); 24071 } 24072 if (element.hasTarget()) { 24073 for (ConceptMap.TargetElementComponent e : element.getTarget()) 24074 composeConceptMapTargetElementComponent("target", e); 24075 } 24076 } 24077 24078 protected void composeConceptMapTargetElementComponent(String name, ConceptMap.TargetElementComponent element) throws IOException { 24079 if (element != null) { 24080 composeElementAttributes(element); 24081 xml.enter(FHIR_NS, name); 24082 composeConceptMapTargetElementComponentElements(element); 24083 composeElementClose(element); 24084 xml.exit(FHIR_NS, name); 24085 } 24086 } 24087 24088 protected void composeConceptMapTargetElementComponentElements(ConceptMap.TargetElementComponent element) throws IOException { 24089 composeBackboneElements(element); 24090 if (element.hasCodeElement()) { 24091 composeCode("code", element.getCodeElement()); 24092 } 24093 if (element.hasDisplayElement()) { 24094 composeString("display", element.getDisplayElement()); 24095 } 24096 if (element.hasEquivalenceElement()) 24097 composeEnumeration("equivalence", element.getEquivalenceElement(), new Enumerations.ConceptMapEquivalenceEnumFactory()); 24098 if (element.hasCommentElement()) { 24099 composeString("comment", element.getCommentElement()); 24100 } 24101 if (element.hasDependsOn()) { 24102 for (ConceptMap.OtherElementComponent e : element.getDependsOn()) 24103 composeConceptMapOtherElementComponent("dependsOn", e); 24104 } 24105 if (element.hasProduct()) { 24106 for (ConceptMap.OtherElementComponent e : element.getProduct()) 24107 composeConceptMapOtherElementComponent("product", e); 24108 } 24109 } 24110 24111 protected void composeConceptMapOtherElementComponent(String name, ConceptMap.OtherElementComponent element) throws IOException { 24112 if (element != null) { 24113 composeElementAttributes(element); 24114 xml.enter(FHIR_NS, name); 24115 composeConceptMapOtherElementComponentElements(element); 24116 composeElementClose(element); 24117 xml.exit(FHIR_NS, name); 24118 } 24119 } 24120 24121 protected void composeConceptMapOtherElementComponentElements(ConceptMap.OtherElementComponent element) throws IOException { 24122 composeBackboneElements(element); 24123 if (element.hasPropertyElement()) { 24124 composeUri("property", element.getPropertyElement()); 24125 } 24126 if (element.hasSystemElement()) { 24127 composeUri("system", element.getSystemElement()); 24128 } 24129 if (element.hasCodeElement()) { 24130 composeString("code", element.getCodeElement()); 24131 } 24132 if (element.hasDisplayElement()) { 24133 composeString("display", element.getDisplayElement()); 24134 } 24135 } 24136 24137 protected void composeConceptMapConceptMapGroupUnmappedComponent(String name, ConceptMap.ConceptMapGroupUnmappedComponent element) throws IOException { 24138 if (element != null) { 24139 composeElementAttributes(element); 24140 xml.enter(FHIR_NS, name); 24141 composeConceptMapConceptMapGroupUnmappedComponentElements(element); 24142 composeElementClose(element); 24143 xml.exit(FHIR_NS, name); 24144 } 24145 } 24146 24147 protected void composeConceptMapConceptMapGroupUnmappedComponentElements(ConceptMap.ConceptMapGroupUnmappedComponent element) throws IOException { 24148 composeBackboneElements(element); 24149 if (element.hasModeElement()) 24150 composeEnumeration("mode", element.getModeElement(), new ConceptMap.ConceptMapGroupUnmappedModeEnumFactory()); 24151 if (element.hasCodeElement()) { 24152 composeCode("code", element.getCodeElement()); 24153 } 24154 if (element.hasDisplayElement()) { 24155 composeString("display", element.getDisplayElement()); 24156 } 24157 if (element.hasUrlElement()) { 24158 composeUri("url", element.getUrlElement()); 24159 } 24160 } 24161 24162 protected void composeCondition(String name, Condition element) throws IOException { 24163 if (element != null) { 24164 composeDomainResourceAttributes(element); 24165 xml.enter(FHIR_NS, name); 24166 composeConditionElements(element); 24167 composeElementClose(element); 24168 xml.exit(FHIR_NS, name); 24169 } 24170 } 24171 24172 protected void composeConditionElements(Condition element) throws IOException { 24173 composeDomainResourceElements(element); 24174 if (element.hasIdentifier()) { 24175 for (Identifier e : element.getIdentifier()) 24176 composeIdentifier("identifier", e); 24177 } 24178 if (element.hasClinicalStatusElement()) 24179 composeEnumeration("clinicalStatus", element.getClinicalStatusElement(), new Condition.ConditionClinicalStatusEnumFactory()); 24180 if (element.hasVerificationStatusElement()) 24181 composeEnumeration("verificationStatus", element.getVerificationStatusElement(), new Condition.ConditionVerificationStatusEnumFactory()); 24182 if (element.hasCategory()) { 24183 for (CodeableConcept e : element.getCategory()) 24184 composeCodeableConcept("category", e); 24185 } 24186 if (element.hasSeverity()) { 24187 composeCodeableConcept("severity", element.getSeverity()); 24188 } 24189 if (element.hasCode()) { 24190 composeCodeableConcept("code", element.getCode()); 24191 } 24192 if (element.hasBodySite()) { 24193 for (CodeableConcept e : element.getBodySite()) 24194 composeCodeableConcept("bodySite", e); 24195 } 24196 if (element.hasSubject()) { 24197 composeReference("subject", element.getSubject()); 24198 } 24199 if (element.hasContext()) { 24200 composeReference("context", element.getContext()); 24201 } 24202 if (element.hasOnset()) { 24203 composeType("onset", element.getOnset()); 24204 } if (element.hasAbatement()) { 24205 composeType("abatement", element.getAbatement()); 24206 } if (element.hasAssertedDateElement()) { 24207 composeDateTime("assertedDate", element.getAssertedDateElement()); 24208 } 24209 if (element.hasAsserter()) { 24210 composeReference("asserter", element.getAsserter()); 24211 } 24212 if (element.hasStage()) { 24213 composeConditionConditionStageComponent("stage", element.getStage()); 24214 } 24215 if (element.hasEvidence()) { 24216 for (Condition.ConditionEvidenceComponent e : element.getEvidence()) 24217 composeConditionConditionEvidenceComponent("evidence", e); 24218 } 24219 if (element.hasNote()) { 24220 for (Annotation e : element.getNote()) 24221 composeAnnotation("note", e); 24222 } 24223 } 24224 24225 protected void composeConditionConditionStageComponent(String name, Condition.ConditionStageComponent element) throws IOException { 24226 if (element != null) { 24227 composeElementAttributes(element); 24228 xml.enter(FHIR_NS, name); 24229 composeConditionConditionStageComponentElements(element); 24230 composeElementClose(element); 24231 xml.exit(FHIR_NS, name); 24232 } 24233 } 24234 24235 protected void composeConditionConditionStageComponentElements(Condition.ConditionStageComponent element) throws IOException { 24236 composeBackboneElements(element); 24237 if (element.hasSummary()) { 24238 composeCodeableConcept("summary", element.getSummary()); 24239 } 24240 if (element.hasAssessment()) { 24241 for (Reference e : element.getAssessment()) 24242 composeReference("assessment", e); 24243 } 24244 } 24245 24246 protected void composeConditionConditionEvidenceComponent(String name, Condition.ConditionEvidenceComponent element) throws IOException { 24247 if (element != null) { 24248 composeElementAttributes(element); 24249 xml.enter(FHIR_NS, name); 24250 composeConditionConditionEvidenceComponentElements(element); 24251 composeElementClose(element); 24252 xml.exit(FHIR_NS, name); 24253 } 24254 } 24255 24256 protected void composeConditionConditionEvidenceComponentElements(Condition.ConditionEvidenceComponent element) throws IOException { 24257 composeBackboneElements(element); 24258 if (element.hasCode()) { 24259 for (CodeableConcept e : element.getCode()) 24260 composeCodeableConcept("code", e); 24261 } 24262 if (element.hasDetail()) { 24263 for (Reference e : element.getDetail()) 24264 composeReference("detail", e); 24265 } 24266 } 24267 24268 protected void composeConsent(String name, Consent element) throws IOException { 24269 if (element != null) { 24270 composeDomainResourceAttributes(element); 24271 xml.enter(FHIR_NS, name); 24272 composeConsentElements(element); 24273 composeElementClose(element); 24274 xml.exit(FHIR_NS, name); 24275 } 24276 } 24277 24278 protected void composeConsentElements(Consent element) throws IOException { 24279 composeDomainResourceElements(element); 24280 if (element.hasIdentifier()) { 24281 composeIdentifier("identifier", element.getIdentifier()); 24282 } 24283 if (element.hasStatusElement()) 24284 composeEnumeration("status", element.getStatusElement(), new Consent.ConsentStateEnumFactory()); 24285 if (element.hasCategory()) { 24286 for (CodeableConcept e : element.getCategory()) 24287 composeCodeableConcept("category", e); 24288 } 24289 if (element.hasPatient()) { 24290 composeReference("patient", element.getPatient()); 24291 } 24292 if (element.hasPeriod()) { 24293 composePeriod("period", element.getPeriod()); 24294 } 24295 if (element.hasDateTimeElement()) { 24296 composeDateTime("dateTime", element.getDateTimeElement()); 24297 } 24298 if (element.hasConsentingParty()) { 24299 for (Reference e : element.getConsentingParty()) 24300 composeReference("consentingParty", e); 24301 } 24302 if (element.hasActor()) { 24303 for (Consent.ConsentActorComponent e : element.getActor()) 24304 composeConsentConsentActorComponent("actor", e); 24305 } 24306 if (element.hasAction()) { 24307 for (CodeableConcept e : element.getAction()) 24308 composeCodeableConcept("action", e); 24309 } 24310 if (element.hasOrganization()) { 24311 for (Reference e : element.getOrganization()) 24312 composeReference("organization", e); 24313 } 24314 if (element.hasSource()) { 24315 composeType("source", element.getSource()); 24316 } if (element.hasPolicy()) { 24317 for (Consent.ConsentPolicyComponent e : element.getPolicy()) 24318 composeConsentConsentPolicyComponent("policy", e); 24319 } 24320 if (element.hasPolicyRuleElement()) { 24321 composeUri("policyRule", element.getPolicyRuleElement()); 24322 } 24323 if (element.hasSecurityLabel()) { 24324 for (Coding e : element.getSecurityLabel()) 24325 composeCoding("securityLabel", e); 24326 } 24327 if (element.hasPurpose()) { 24328 for (Coding e : element.getPurpose()) 24329 composeCoding("purpose", e); 24330 } 24331 if (element.hasDataPeriod()) { 24332 composePeriod("dataPeriod", element.getDataPeriod()); 24333 } 24334 if (element.hasData()) { 24335 for (Consent.ConsentDataComponent e : element.getData()) 24336 composeConsentConsentDataComponent("data", e); 24337 } 24338 if (element.hasExcept()) { 24339 for (Consent.ExceptComponent e : element.getExcept()) 24340 composeConsentExceptComponent("except", e); 24341 } 24342 } 24343 24344 protected void composeConsentConsentActorComponent(String name, Consent.ConsentActorComponent element) throws IOException { 24345 if (element != null) { 24346 composeElementAttributes(element); 24347 xml.enter(FHIR_NS, name); 24348 composeConsentConsentActorComponentElements(element); 24349 composeElementClose(element); 24350 xml.exit(FHIR_NS, name); 24351 } 24352 } 24353 24354 protected void composeConsentConsentActorComponentElements(Consent.ConsentActorComponent element) throws IOException { 24355 composeBackboneElements(element); 24356 if (element.hasRole()) { 24357 composeCodeableConcept("role", element.getRole()); 24358 } 24359 if (element.hasReference()) { 24360 composeReference("reference", element.getReference()); 24361 } 24362 } 24363 24364 protected void composeConsentConsentPolicyComponent(String name, Consent.ConsentPolicyComponent element) throws IOException { 24365 if (element != null) { 24366 composeElementAttributes(element); 24367 xml.enter(FHIR_NS, name); 24368 composeConsentConsentPolicyComponentElements(element); 24369 composeElementClose(element); 24370 xml.exit(FHIR_NS, name); 24371 } 24372 } 24373 24374 protected void composeConsentConsentPolicyComponentElements(Consent.ConsentPolicyComponent element) throws IOException { 24375 composeBackboneElements(element); 24376 if (element.hasAuthorityElement()) { 24377 composeUri("authority", element.getAuthorityElement()); 24378 } 24379 if (element.hasUriElement()) { 24380 composeUri("uri", element.getUriElement()); 24381 } 24382 } 24383 24384 protected void composeConsentConsentDataComponent(String name, Consent.ConsentDataComponent element) throws IOException { 24385 if (element != null) { 24386 composeElementAttributes(element); 24387 xml.enter(FHIR_NS, name); 24388 composeConsentConsentDataComponentElements(element); 24389 composeElementClose(element); 24390 xml.exit(FHIR_NS, name); 24391 } 24392 } 24393 24394 protected void composeConsentConsentDataComponentElements(Consent.ConsentDataComponent element) throws IOException { 24395 composeBackboneElements(element); 24396 if (element.hasMeaningElement()) 24397 composeEnumeration("meaning", element.getMeaningElement(), new Consent.ConsentDataMeaningEnumFactory()); 24398 if (element.hasReference()) { 24399 composeReference("reference", element.getReference()); 24400 } 24401 } 24402 24403 protected void composeConsentExceptComponent(String name, Consent.ExceptComponent element) throws IOException { 24404 if (element != null) { 24405 composeElementAttributes(element); 24406 xml.enter(FHIR_NS, name); 24407 composeConsentExceptComponentElements(element); 24408 composeElementClose(element); 24409 xml.exit(FHIR_NS, name); 24410 } 24411 } 24412 24413 protected void composeConsentExceptComponentElements(Consent.ExceptComponent element) throws IOException { 24414 composeBackboneElements(element); 24415 if (element.hasTypeElement()) 24416 composeEnumeration("type", element.getTypeElement(), new Consent.ConsentExceptTypeEnumFactory()); 24417 if (element.hasPeriod()) { 24418 composePeriod("period", element.getPeriod()); 24419 } 24420 if (element.hasActor()) { 24421 for (Consent.ExceptActorComponent e : element.getActor()) 24422 composeConsentExceptActorComponent("actor", e); 24423 } 24424 if (element.hasAction()) { 24425 for (CodeableConcept e : element.getAction()) 24426 composeCodeableConcept("action", e); 24427 } 24428 if (element.hasSecurityLabel()) { 24429 for (Coding e : element.getSecurityLabel()) 24430 composeCoding("securityLabel", e); 24431 } 24432 if (element.hasPurpose()) { 24433 for (Coding e : element.getPurpose()) 24434 composeCoding("purpose", e); 24435 } 24436 if (element.hasClass_()) { 24437 for (Coding e : element.getClass_()) 24438 composeCoding("class", e); 24439 } 24440 if (element.hasCode()) { 24441 for (Coding e : element.getCode()) 24442 composeCoding("code", e); 24443 } 24444 if (element.hasDataPeriod()) { 24445 composePeriod("dataPeriod", element.getDataPeriod()); 24446 } 24447 if (element.hasData()) { 24448 for (Consent.ExceptDataComponent e : element.getData()) 24449 composeConsentExceptDataComponent("data", e); 24450 } 24451 } 24452 24453 protected void composeConsentExceptActorComponent(String name, Consent.ExceptActorComponent element) throws IOException { 24454 if (element != null) { 24455 composeElementAttributes(element); 24456 xml.enter(FHIR_NS, name); 24457 composeConsentExceptActorComponentElements(element); 24458 composeElementClose(element); 24459 xml.exit(FHIR_NS, name); 24460 } 24461 } 24462 24463 protected void composeConsentExceptActorComponentElements(Consent.ExceptActorComponent element) throws IOException { 24464 composeBackboneElements(element); 24465 if (element.hasRole()) { 24466 composeCodeableConcept("role", element.getRole()); 24467 } 24468 if (element.hasReference()) { 24469 composeReference("reference", element.getReference()); 24470 } 24471 } 24472 24473 protected void composeConsentExceptDataComponent(String name, Consent.ExceptDataComponent element) throws IOException { 24474 if (element != null) { 24475 composeElementAttributes(element); 24476 xml.enter(FHIR_NS, name); 24477 composeConsentExceptDataComponentElements(element); 24478 composeElementClose(element); 24479 xml.exit(FHIR_NS, name); 24480 } 24481 } 24482 24483 protected void composeConsentExceptDataComponentElements(Consent.ExceptDataComponent element) throws IOException { 24484 composeBackboneElements(element); 24485 if (element.hasMeaningElement()) 24486 composeEnumeration("meaning", element.getMeaningElement(), new Consent.ConsentDataMeaningEnumFactory()); 24487 if (element.hasReference()) { 24488 composeReference("reference", element.getReference()); 24489 } 24490 } 24491 24492 protected void composeContract(String name, Contract element) throws IOException { 24493 if (element != null) { 24494 composeDomainResourceAttributes(element); 24495 xml.enter(FHIR_NS, name); 24496 composeContractElements(element); 24497 composeElementClose(element); 24498 xml.exit(FHIR_NS, name); 24499 } 24500 } 24501 24502 protected void composeContractElements(Contract element) throws IOException { 24503 composeDomainResourceElements(element); 24504 if (element.hasIdentifier()) { 24505 composeIdentifier("identifier", element.getIdentifier()); 24506 } 24507 if (element.hasStatusElement()) 24508 composeEnumeration("status", element.getStatusElement(), new Contract.ContractStatusEnumFactory()); 24509 if (element.hasIssuedElement()) { 24510 composeDateTime("issued", element.getIssuedElement()); 24511 } 24512 if (element.hasApplies()) { 24513 composePeriod("applies", element.getApplies()); 24514 } 24515 if (element.hasSubject()) { 24516 for (Reference e : element.getSubject()) 24517 composeReference("subject", e); 24518 } 24519 if (element.hasTopic()) { 24520 for (Reference e : element.getTopic()) 24521 composeReference("topic", e); 24522 } 24523 if (element.hasAuthority()) { 24524 for (Reference e : element.getAuthority()) 24525 composeReference("authority", e); 24526 } 24527 if (element.hasDomain()) { 24528 for (Reference e : element.getDomain()) 24529 composeReference("domain", e); 24530 } 24531 if (element.hasType()) { 24532 composeCodeableConcept("type", element.getType()); 24533 } 24534 if (element.hasSubType()) { 24535 for (CodeableConcept e : element.getSubType()) 24536 composeCodeableConcept("subType", e); 24537 } 24538 if (element.hasAction()) { 24539 for (CodeableConcept e : element.getAction()) 24540 composeCodeableConcept("action", e); 24541 } 24542 if (element.hasActionReason()) { 24543 for (CodeableConcept e : element.getActionReason()) 24544 composeCodeableConcept("actionReason", e); 24545 } 24546 if (element.hasDecisionType()) { 24547 composeCodeableConcept("decisionType", element.getDecisionType()); 24548 } 24549 if (element.hasContentDerivative()) { 24550 composeCodeableConcept("contentDerivative", element.getContentDerivative()); 24551 } 24552 if (element.hasSecurityLabel()) { 24553 for (Coding e : element.getSecurityLabel()) 24554 composeCoding("securityLabel", e); 24555 } 24556 if (element.hasAgent()) { 24557 for (Contract.AgentComponent e : element.getAgent()) 24558 composeContractAgentComponent("agent", e); 24559 } 24560 if (element.hasSigner()) { 24561 for (Contract.SignatoryComponent e : element.getSigner()) 24562 composeContractSignatoryComponent("signer", e); 24563 } 24564 if (element.hasValuedItem()) { 24565 for (Contract.ValuedItemComponent e : element.getValuedItem()) 24566 composeContractValuedItemComponent("valuedItem", e); 24567 } 24568 if (element.hasTerm()) { 24569 for (Contract.TermComponent e : element.getTerm()) 24570 composeContractTermComponent("term", e); 24571 } 24572 if (element.hasBinding()) { 24573 composeType("binding", element.getBinding()); 24574 } if (element.hasFriendly()) { 24575 for (Contract.FriendlyLanguageComponent e : element.getFriendly()) 24576 composeContractFriendlyLanguageComponent("friendly", e); 24577 } 24578 if (element.hasLegal()) { 24579 for (Contract.LegalLanguageComponent e : element.getLegal()) 24580 composeContractLegalLanguageComponent("legal", e); 24581 } 24582 if (element.hasRule()) { 24583 for (Contract.ComputableLanguageComponent e : element.getRule()) 24584 composeContractComputableLanguageComponent("rule", e); 24585 } 24586 } 24587 24588 protected void composeContractAgentComponent(String name, Contract.AgentComponent element) throws IOException { 24589 if (element != null) { 24590 composeElementAttributes(element); 24591 xml.enter(FHIR_NS, name); 24592 composeContractAgentComponentElements(element); 24593 composeElementClose(element); 24594 xml.exit(FHIR_NS, name); 24595 } 24596 } 24597 24598 protected void composeContractAgentComponentElements(Contract.AgentComponent element) throws IOException { 24599 composeBackboneElements(element); 24600 if (element.hasActor()) { 24601 composeReference("actor", element.getActor()); 24602 } 24603 if (element.hasRole()) { 24604 for (CodeableConcept e : element.getRole()) 24605 composeCodeableConcept("role", e); 24606 } 24607 } 24608 24609 protected void composeContractSignatoryComponent(String name, Contract.SignatoryComponent element) throws IOException { 24610 if (element != null) { 24611 composeElementAttributes(element); 24612 xml.enter(FHIR_NS, name); 24613 composeContractSignatoryComponentElements(element); 24614 composeElementClose(element); 24615 xml.exit(FHIR_NS, name); 24616 } 24617 } 24618 24619 protected void composeContractSignatoryComponentElements(Contract.SignatoryComponent element) throws IOException { 24620 composeBackboneElements(element); 24621 if (element.hasType()) { 24622 composeCoding("type", element.getType()); 24623 } 24624 if (element.hasParty()) { 24625 composeReference("party", element.getParty()); 24626 } 24627 if (element.hasSignature()) { 24628 for (Signature e : element.getSignature()) 24629 composeSignature("signature", e); 24630 } 24631 } 24632 24633 protected void composeContractValuedItemComponent(String name, Contract.ValuedItemComponent element) throws IOException { 24634 if (element != null) { 24635 composeElementAttributes(element); 24636 xml.enter(FHIR_NS, name); 24637 composeContractValuedItemComponentElements(element); 24638 composeElementClose(element); 24639 xml.exit(FHIR_NS, name); 24640 } 24641 } 24642 24643 protected void composeContractValuedItemComponentElements(Contract.ValuedItemComponent element) throws IOException { 24644 composeBackboneElements(element); 24645 if (element.hasEntity()) { 24646 composeType("entity", element.getEntity()); 24647 } if (element.hasIdentifier()) { 24648 composeIdentifier("identifier", element.getIdentifier()); 24649 } 24650 if (element.hasEffectiveTimeElement()) { 24651 composeDateTime("effectiveTime", element.getEffectiveTimeElement()); 24652 } 24653 if (element.hasQuantity()) { 24654 composeSimpleQuantity("quantity", element.getQuantity()); 24655 } 24656 if (element.hasUnitPrice()) { 24657 composeMoney("unitPrice", element.getUnitPrice()); 24658 } 24659 if (element.hasFactorElement()) { 24660 composeDecimal("factor", element.getFactorElement()); 24661 } 24662 if (element.hasPointsElement()) { 24663 composeDecimal("points", element.getPointsElement()); 24664 } 24665 if (element.hasNet()) { 24666 composeMoney("net", element.getNet()); 24667 } 24668 } 24669 24670 protected void composeContractTermComponent(String name, Contract.TermComponent element) throws IOException { 24671 if (element != null) { 24672 composeElementAttributes(element); 24673 xml.enter(FHIR_NS, name); 24674 composeContractTermComponentElements(element); 24675 composeElementClose(element); 24676 xml.exit(FHIR_NS, name); 24677 } 24678 } 24679 24680 protected void composeContractTermComponentElements(Contract.TermComponent element) throws IOException { 24681 composeBackboneElements(element); 24682 if (element.hasIdentifier()) { 24683 composeIdentifier("identifier", element.getIdentifier()); 24684 } 24685 if (element.hasIssuedElement()) { 24686 composeDateTime("issued", element.getIssuedElement()); 24687 } 24688 if (element.hasApplies()) { 24689 composePeriod("applies", element.getApplies()); 24690 } 24691 if (element.hasType()) { 24692 composeCodeableConcept("type", element.getType()); 24693 } 24694 if (element.hasSubType()) { 24695 composeCodeableConcept("subType", element.getSubType()); 24696 } 24697 if (element.hasTopic()) { 24698 for (Reference e : element.getTopic()) 24699 composeReference("topic", e); 24700 } 24701 if (element.hasAction()) { 24702 for (CodeableConcept e : element.getAction()) 24703 composeCodeableConcept("action", e); 24704 } 24705 if (element.hasActionReason()) { 24706 for (CodeableConcept e : element.getActionReason()) 24707 composeCodeableConcept("actionReason", e); 24708 } 24709 if (element.hasSecurityLabel()) { 24710 for (Coding e : element.getSecurityLabel()) 24711 composeCoding("securityLabel", e); 24712 } 24713 if (element.hasAgent()) { 24714 for (Contract.TermAgentComponent e : element.getAgent()) 24715 composeContractTermAgentComponent("agent", e); 24716 } 24717 if (element.hasTextElement()) { 24718 composeString("text", element.getTextElement()); 24719 } 24720 if (element.hasValuedItem()) { 24721 for (Contract.TermValuedItemComponent e : element.getValuedItem()) 24722 composeContractTermValuedItemComponent("valuedItem", e); 24723 } 24724 if (element.hasGroup()) { 24725 for (Contract.TermComponent e : element.getGroup()) 24726 composeContractTermComponent("group", e); 24727 } 24728 } 24729 24730 protected void composeContractTermAgentComponent(String name, Contract.TermAgentComponent element) throws IOException { 24731 if (element != null) { 24732 composeElementAttributes(element); 24733 xml.enter(FHIR_NS, name); 24734 composeContractTermAgentComponentElements(element); 24735 composeElementClose(element); 24736 xml.exit(FHIR_NS, name); 24737 } 24738 } 24739 24740 protected void composeContractTermAgentComponentElements(Contract.TermAgentComponent element) throws IOException { 24741 composeBackboneElements(element); 24742 if (element.hasActor()) { 24743 composeReference("actor", element.getActor()); 24744 } 24745 if (element.hasRole()) { 24746 for (CodeableConcept e : element.getRole()) 24747 composeCodeableConcept("role", e); 24748 } 24749 } 24750 24751 protected void composeContractTermValuedItemComponent(String name, Contract.TermValuedItemComponent element) throws IOException { 24752 if (element != null) { 24753 composeElementAttributes(element); 24754 xml.enter(FHIR_NS, name); 24755 composeContractTermValuedItemComponentElements(element); 24756 composeElementClose(element); 24757 xml.exit(FHIR_NS, name); 24758 } 24759 } 24760 24761 protected void composeContractTermValuedItemComponentElements(Contract.TermValuedItemComponent element) throws IOException { 24762 composeBackboneElements(element); 24763 if (element.hasEntity()) { 24764 composeType("entity", element.getEntity()); 24765 } if (element.hasIdentifier()) { 24766 composeIdentifier("identifier", element.getIdentifier()); 24767 } 24768 if (element.hasEffectiveTimeElement()) { 24769 composeDateTime("effectiveTime", element.getEffectiveTimeElement()); 24770 } 24771 if (element.hasQuantity()) { 24772 composeSimpleQuantity("quantity", element.getQuantity()); 24773 } 24774 if (element.hasUnitPrice()) { 24775 composeMoney("unitPrice", element.getUnitPrice()); 24776 } 24777 if (element.hasFactorElement()) { 24778 composeDecimal("factor", element.getFactorElement()); 24779 } 24780 if (element.hasPointsElement()) { 24781 composeDecimal("points", element.getPointsElement()); 24782 } 24783 if (element.hasNet()) { 24784 composeMoney("net", element.getNet()); 24785 } 24786 } 24787 24788 protected void composeContractFriendlyLanguageComponent(String name, Contract.FriendlyLanguageComponent element) throws IOException { 24789 if (element != null) { 24790 composeElementAttributes(element); 24791 xml.enter(FHIR_NS, name); 24792 composeContractFriendlyLanguageComponentElements(element); 24793 composeElementClose(element); 24794 xml.exit(FHIR_NS, name); 24795 } 24796 } 24797 24798 protected void composeContractFriendlyLanguageComponentElements(Contract.FriendlyLanguageComponent element) throws IOException { 24799 composeBackboneElements(element); 24800 if (element.hasContent()) { 24801 composeType("content", element.getContent()); 24802 } } 24803 24804 protected void composeContractLegalLanguageComponent(String name, Contract.LegalLanguageComponent element) throws IOException { 24805 if (element != null) { 24806 composeElementAttributes(element); 24807 xml.enter(FHIR_NS, name); 24808 composeContractLegalLanguageComponentElements(element); 24809 composeElementClose(element); 24810 xml.exit(FHIR_NS, name); 24811 } 24812 } 24813 24814 protected void composeContractLegalLanguageComponentElements(Contract.LegalLanguageComponent element) throws IOException { 24815 composeBackboneElements(element); 24816 if (element.hasContent()) { 24817 composeType("content", element.getContent()); 24818 } } 24819 24820 protected void composeContractComputableLanguageComponent(String name, Contract.ComputableLanguageComponent element) throws IOException { 24821 if (element != null) { 24822 composeElementAttributes(element); 24823 xml.enter(FHIR_NS, name); 24824 composeContractComputableLanguageComponentElements(element); 24825 composeElementClose(element); 24826 xml.exit(FHIR_NS, name); 24827 } 24828 } 24829 24830 protected void composeContractComputableLanguageComponentElements(Contract.ComputableLanguageComponent element) throws IOException { 24831 composeBackboneElements(element); 24832 if (element.hasContent()) { 24833 composeType("content", element.getContent()); 24834 } } 24835 24836 protected void composeCoverage(String name, Coverage element) throws IOException { 24837 if (element != null) { 24838 composeDomainResourceAttributes(element); 24839 xml.enter(FHIR_NS, name); 24840 composeCoverageElements(element); 24841 composeElementClose(element); 24842 xml.exit(FHIR_NS, name); 24843 } 24844 } 24845 24846 protected void composeCoverageElements(Coverage element) throws IOException { 24847 composeDomainResourceElements(element); 24848 if (element.hasIdentifier()) { 24849 for (Identifier e : element.getIdentifier()) 24850 composeIdentifier("identifier", e); 24851 } 24852 if (element.hasStatusElement()) 24853 composeEnumeration("status", element.getStatusElement(), new Coverage.CoverageStatusEnumFactory()); 24854 if (element.hasType()) { 24855 composeCodeableConcept("type", element.getType()); 24856 } 24857 if (element.hasPolicyHolder()) { 24858 composeReference("policyHolder", element.getPolicyHolder()); 24859 } 24860 if (element.hasSubscriber()) { 24861 composeReference("subscriber", element.getSubscriber()); 24862 } 24863 if (element.hasSubscriberIdElement()) { 24864 composeString("subscriberId", element.getSubscriberIdElement()); 24865 } 24866 if (element.hasBeneficiary()) { 24867 composeReference("beneficiary", element.getBeneficiary()); 24868 } 24869 if (element.hasRelationship()) { 24870 composeCodeableConcept("relationship", element.getRelationship()); 24871 } 24872 if (element.hasPeriod()) { 24873 composePeriod("period", element.getPeriod()); 24874 } 24875 if (element.hasPayor()) { 24876 for (Reference e : element.getPayor()) 24877 composeReference("payor", e); 24878 } 24879 if (element.hasGrouping()) { 24880 composeCoverageGroupComponent("grouping", element.getGrouping()); 24881 } 24882 if (element.hasDependentElement()) { 24883 composeString("dependent", element.getDependentElement()); 24884 } 24885 if (element.hasSequenceElement()) { 24886 composeString("sequence", element.getSequenceElement()); 24887 } 24888 if (element.hasOrderElement()) { 24889 composePositiveInt("order", element.getOrderElement()); 24890 } 24891 if (element.hasNetworkElement()) { 24892 composeString("network", element.getNetworkElement()); 24893 } 24894 if (element.hasContract()) { 24895 for (Reference e : element.getContract()) 24896 composeReference("contract", e); 24897 } 24898 } 24899 24900 protected void composeCoverageGroupComponent(String name, Coverage.GroupComponent element) throws IOException { 24901 if (element != null) { 24902 composeElementAttributes(element); 24903 xml.enter(FHIR_NS, name); 24904 composeCoverageGroupComponentElements(element); 24905 composeElementClose(element); 24906 xml.exit(FHIR_NS, name); 24907 } 24908 } 24909 24910 protected void composeCoverageGroupComponentElements(Coverage.GroupComponent element) throws IOException { 24911 composeBackboneElements(element); 24912 if (element.hasGroupElement()) { 24913 composeString("group", element.getGroupElement()); 24914 } 24915 if (element.hasGroupDisplayElement()) { 24916 composeString("groupDisplay", element.getGroupDisplayElement()); 24917 } 24918 if (element.hasSubGroupElement()) { 24919 composeString("subGroup", element.getSubGroupElement()); 24920 } 24921 if (element.hasSubGroupDisplayElement()) { 24922 composeString("subGroupDisplay", element.getSubGroupDisplayElement()); 24923 } 24924 if (element.hasPlanElement()) { 24925 composeString("plan", element.getPlanElement()); 24926 } 24927 if (element.hasPlanDisplayElement()) { 24928 composeString("planDisplay", element.getPlanDisplayElement()); 24929 } 24930 if (element.hasSubPlanElement()) { 24931 composeString("subPlan", element.getSubPlanElement()); 24932 } 24933 if (element.hasSubPlanDisplayElement()) { 24934 composeString("subPlanDisplay", element.getSubPlanDisplayElement()); 24935 } 24936 if (element.hasClass_Element()) { 24937 composeString("class", element.getClass_Element()); 24938 } 24939 if (element.hasClassDisplayElement()) { 24940 composeString("classDisplay", element.getClassDisplayElement()); 24941 } 24942 if (element.hasSubClassElement()) { 24943 composeString("subClass", element.getSubClassElement()); 24944 } 24945 if (element.hasSubClassDisplayElement()) { 24946 composeString("subClassDisplay", element.getSubClassDisplayElement()); 24947 } 24948 } 24949 24950 protected void composeDataElement(String name, DataElement element) throws IOException { 24951 if (element != null) { 24952 composeDomainResourceAttributes(element); 24953 xml.enter(FHIR_NS, name); 24954 composeDataElementElements(element); 24955 composeElementClose(element); 24956 xml.exit(FHIR_NS, name); 24957 } 24958 } 24959 24960 protected void composeDataElementElements(DataElement element) throws IOException { 24961 composeDomainResourceElements(element); 24962 if (element.hasUrlElement()) { 24963 composeUri("url", element.getUrlElement()); 24964 } 24965 if (element.hasIdentifier()) { 24966 for (Identifier e : element.getIdentifier()) 24967 composeIdentifier("identifier", e); 24968 } 24969 if (element.hasVersionElement()) { 24970 composeString("version", element.getVersionElement()); 24971 } 24972 if (element.hasStatusElement()) 24973 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 24974 if (element.hasExperimentalElement()) { 24975 composeBoolean("experimental", element.getExperimentalElement()); 24976 } 24977 if (element.hasDateElement()) { 24978 composeDateTime("date", element.getDateElement()); 24979 } 24980 if (element.hasPublisherElement()) { 24981 composeString("publisher", element.getPublisherElement()); 24982 } 24983 if (element.hasNameElement()) { 24984 composeString("name", element.getNameElement()); 24985 } 24986 if (element.hasTitleElement()) { 24987 composeString("title", element.getTitleElement()); 24988 } 24989 if (element.hasContact()) { 24990 for (ContactDetail e : element.getContact()) 24991 composeContactDetail("contact", e); 24992 } 24993 if (element.hasUseContext()) { 24994 for (UsageContext e : element.getUseContext()) 24995 composeUsageContext("useContext", e); 24996 } 24997 if (element.hasJurisdiction()) { 24998 for (CodeableConcept e : element.getJurisdiction()) 24999 composeCodeableConcept("jurisdiction", e); 25000 } 25001 if (element.hasCopyrightElement()) { 25002 composeMarkdown("copyright", element.getCopyrightElement()); 25003 } 25004 if (element.hasStringencyElement()) 25005 composeEnumeration("stringency", element.getStringencyElement(), new DataElement.DataElementStringencyEnumFactory()); 25006 if (element.hasMapping()) { 25007 for (DataElement.DataElementMappingComponent e : element.getMapping()) 25008 composeDataElementDataElementMappingComponent("mapping", e); 25009 } 25010 if (element.hasElement()) { 25011 for (ElementDefinition e : element.getElement()) 25012 composeElementDefinition("element", e); 25013 } 25014 } 25015 25016 protected void composeDataElementDataElementMappingComponent(String name, DataElement.DataElementMappingComponent element) throws IOException { 25017 if (element != null) { 25018 composeElementAttributes(element); 25019 xml.enter(FHIR_NS, name); 25020 composeDataElementDataElementMappingComponentElements(element); 25021 composeElementClose(element); 25022 xml.exit(FHIR_NS, name); 25023 } 25024 } 25025 25026 protected void composeDataElementDataElementMappingComponentElements(DataElement.DataElementMappingComponent element) throws IOException { 25027 composeBackboneElements(element); 25028 if (element.hasIdentityElement()) { 25029 composeId("identity", element.getIdentityElement()); 25030 } 25031 if (element.hasUriElement()) { 25032 composeUri("uri", element.getUriElement()); 25033 } 25034 if (element.hasNameElement()) { 25035 composeString("name", element.getNameElement()); 25036 } 25037 if (element.hasCommentElement()) { 25038 composeString("comment", element.getCommentElement()); 25039 } 25040 } 25041 25042 protected void composeDetectedIssue(String name, DetectedIssue element) throws IOException { 25043 if (element != null) { 25044 composeDomainResourceAttributes(element); 25045 xml.enter(FHIR_NS, name); 25046 composeDetectedIssueElements(element); 25047 composeElementClose(element); 25048 xml.exit(FHIR_NS, name); 25049 } 25050 } 25051 25052 protected void composeDetectedIssueElements(DetectedIssue element) throws IOException { 25053 composeDomainResourceElements(element); 25054 if (element.hasIdentifier()) { 25055 composeIdentifier("identifier", element.getIdentifier()); 25056 } 25057 if (element.hasStatusElement()) 25058 composeEnumeration("status", element.getStatusElement(), new DetectedIssue.DetectedIssueStatusEnumFactory()); 25059 if (element.hasCategory()) { 25060 composeCodeableConcept("category", element.getCategory()); 25061 } 25062 if (element.hasSeverityElement()) 25063 composeEnumeration("severity", element.getSeverityElement(), new DetectedIssue.DetectedIssueSeverityEnumFactory()); 25064 if (element.hasPatient()) { 25065 composeReference("patient", element.getPatient()); 25066 } 25067 if (element.hasDateElement()) { 25068 composeDateTime("date", element.getDateElement()); 25069 } 25070 if (element.hasAuthor()) { 25071 composeReference("author", element.getAuthor()); 25072 } 25073 if (element.hasImplicated()) { 25074 for (Reference e : element.getImplicated()) 25075 composeReference("implicated", e); 25076 } 25077 if (element.hasDetailElement()) { 25078 composeString("detail", element.getDetailElement()); 25079 } 25080 if (element.hasReferenceElement()) { 25081 composeUri("reference", element.getReferenceElement()); 25082 } 25083 if (element.hasMitigation()) { 25084 for (DetectedIssue.DetectedIssueMitigationComponent e : element.getMitigation()) 25085 composeDetectedIssueDetectedIssueMitigationComponent("mitigation", e); 25086 } 25087 } 25088 25089 protected void composeDetectedIssueDetectedIssueMitigationComponent(String name, DetectedIssue.DetectedIssueMitigationComponent element) throws IOException { 25090 if (element != null) { 25091 composeElementAttributes(element); 25092 xml.enter(FHIR_NS, name); 25093 composeDetectedIssueDetectedIssueMitigationComponentElements(element); 25094 composeElementClose(element); 25095 xml.exit(FHIR_NS, name); 25096 } 25097 } 25098 25099 protected void composeDetectedIssueDetectedIssueMitigationComponentElements(DetectedIssue.DetectedIssueMitigationComponent element) throws IOException { 25100 composeBackboneElements(element); 25101 if (element.hasAction()) { 25102 composeCodeableConcept("action", element.getAction()); 25103 } 25104 if (element.hasDateElement()) { 25105 composeDateTime("date", element.getDateElement()); 25106 } 25107 if (element.hasAuthor()) { 25108 composeReference("author", element.getAuthor()); 25109 } 25110 } 25111 25112 protected void composeDevice(String name, Device element) throws IOException { 25113 if (element != null) { 25114 composeDomainResourceAttributes(element); 25115 xml.enter(FHIR_NS, name); 25116 composeDeviceElements(element); 25117 composeElementClose(element); 25118 xml.exit(FHIR_NS, name); 25119 } 25120 } 25121 25122 protected void composeDeviceElements(Device element) throws IOException { 25123 composeDomainResourceElements(element); 25124 if (element.hasIdentifier()) { 25125 for (Identifier e : element.getIdentifier()) 25126 composeIdentifier("identifier", e); 25127 } 25128 if (element.hasUdi()) { 25129 composeDeviceDeviceUdiComponent("udi", element.getUdi()); 25130 } 25131 if (element.hasStatusElement()) 25132 composeEnumeration("status", element.getStatusElement(), new Device.FHIRDeviceStatusEnumFactory()); 25133 if (element.hasType()) { 25134 composeCodeableConcept("type", element.getType()); 25135 } 25136 if (element.hasLotNumberElement()) { 25137 composeString("lotNumber", element.getLotNumberElement()); 25138 } 25139 if (element.hasManufacturerElement()) { 25140 composeString("manufacturer", element.getManufacturerElement()); 25141 } 25142 if (element.hasManufactureDateElement()) { 25143 composeDateTime("manufactureDate", element.getManufactureDateElement()); 25144 } 25145 if (element.hasExpirationDateElement()) { 25146 composeDateTime("expirationDate", element.getExpirationDateElement()); 25147 } 25148 if (element.hasModelElement()) { 25149 composeString("model", element.getModelElement()); 25150 } 25151 if (element.hasVersionElement()) { 25152 composeString("version", element.getVersionElement()); 25153 } 25154 if (element.hasPatient()) { 25155 composeReference("patient", element.getPatient()); 25156 } 25157 if (element.hasOwner()) { 25158 composeReference("owner", element.getOwner()); 25159 } 25160 if (element.hasContact()) { 25161 for (ContactPoint e : element.getContact()) 25162 composeContactPoint("contact", e); 25163 } 25164 if (element.hasLocation()) { 25165 composeReference("location", element.getLocation()); 25166 } 25167 if (element.hasUrlElement()) { 25168 composeUri("url", element.getUrlElement()); 25169 } 25170 if (element.hasNote()) { 25171 for (Annotation e : element.getNote()) 25172 composeAnnotation("note", e); 25173 } 25174 if (element.hasSafety()) { 25175 for (CodeableConcept e : element.getSafety()) 25176 composeCodeableConcept("safety", e); 25177 } 25178 } 25179 25180 protected void composeDeviceDeviceUdiComponent(String name, Device.DeviceUdiComponent element) throws IOException { 25181 if (element != null) { 25182 composeElementAttributes(element); 25183 xml.enter(FHIR_NS, name); 25184 composeDeviceDeviceUdiComponentElements(element); 25185 composeElementClose(element); 25186 xml.exit(FHIR_NS, name); 25187 } 25188 } 25189 25190 protected void composeDeviceDeviceUdiComponentElements(Device.DeviceUdiComponent element) throws IOException { 25191 composeBackboneElements(element); 25192 if (element.hasDeviceIdentifierElement()) { 25193 composeString("deviceIdentifier", element.getDeviceIdentifierElement()); 25194 } 25195 if (element.hasNameElement()) { 25196 composeString("name", element.getNameElement()); 25197 } 25198 if (element.hasJurisdictionElement()) { 25199 composeUri("jurisdiction", element.getJurisdictionElement()); 25200 } 25201 if (element.hasCarrierHRFElement()) { 25202 composeString("carrierHRF", element.getCarrierHRFElement()); 25203 } 25204 if (element.hasCarrierAIDCElement()) { 25205 composeBase64Binary("carrierAIDC", element.getCarrierAIDCElement()); 25206 } 25207 if (element.hasIssuerElement()) { 25208 composeUri("issuer", element.getIssuerElement()); 25209 } 25210 if (element.hasEntryTypeElement()) 25211 composeEnumeration("entryType", element.getEntryTypeElement(), new Device.UDIEntryTypeEnumFactory()); 25212 } 25213 25214 protected void composeDeviceComponent(String name, DeviceComponent element) throws IOException { 25215 if (element != null) { 25216 composeDomainResourceAttributes(element); 25217 xml.enter(FHIR_NS, name); 25218 composeDeviceComponentElements(element); 25219 composeElementClose(element); 25220 xml.exit(FHIR_NS, name); 25221 } 25222 } 25223 25224 protected void composeDeviceComponentElements(DeviceComponent element) throws IOException { 25225 composeDomainResourceElements(element); 25226 if (element.hasIdentifier()) { 25227 composeIdentifier("identifier", element.getIdentifier()); 25228 } 25229 if (element.hasType()) { 25230 composeCodeableConcept("type", element.getType()); 25231 } 25232 if (element.hasLastSystemChangeElement()) { 25233 composeInstant("lastSystemChange", element.getLastSystemChangeElement()); 25234 } 25235 if (element.hasSource()) { 25236 composeReference("source", element.getSource()); 25237 } 25238 if (element.hasParent()) { 25239 composeReference("parent", element.getParent()); 25240 } 25241 if (element.hasOperationalStatus()) { 25242 for (CodeableConcept e : element.getOperationalStatus()) 25243 composeCodeableConcept("operationalStatus", e); 25244 } 25245 if (element.hasParameterGroup()) { 25246 composeCodeableConcept("parameterGroup", element.getParameterGroup()); 25247 } 25248 if (element.hasMeasurementPrincipleElement()) 25249 composeEnumeration("measurementPrinciple", element.getMeasurementPrincipleElement(), new DeviceComponent.MeasmntPrincipleEnumFactory()); 25250 if (element.hasProductionSpecification()) { 25251 for (DeviceComponent.DeviceComponentProductionSpecificationComponent e : element.getProductionSpecification()) 25252 composeDeviceComponentDeviceComponentProductionSpecificationComponent("productionSpecification", e); 25253 } 25254 if (element.hasLanguageCode()) { 25255 composeCodeableConcept("languageCode", element.getLanguageCode()); 25256 } 25257 } 25258 25259 protected void composeDeviceComponentDeviceComponentProductionSpecificationComponent(String name, DeviceComponent.DeviceComponentProductionSpecificationComponent element) throws IOException { 25260 if (element != null) { 25261 composeElementAttributes(element); 25262 xml.enter(FHIR_NS, name); 25263 composeDeviceComponentDeviceComponentProductionSpecificationComponentElements(element); 25264 composeElementClose(element); 25265 xml.exit(FHIR_NS, name); 25266 } 25267 } 25268 25269 protected void composeDeviceComponentDeviceComponentProductionSpecificationComponentElements(DeviceComponent.DeviceComponentProductionSpecificationComponent element) throws IOException { 25270 composeBackboneElements(element); 25271 if (element.hasSpecType()) { 25272 composeCodeableConcept("specType", element.getSpecType()); 25273 } 25274 if (element.hasComponentId()) { 25275 composeIdentifier("componentId", element.getComponentId()); 25276 } 25277 if (element.hasProductionSpecElement()) { 25278 composeString("productionSpec", element.getProductionSpecElement()); 25279 } 25280 } 25281 25282 protected void composeDeviceMetric(String name, DeviceMetric element) throws IOException { 25283 if (element != null) { 25284 composeDomainResourceAttributes(element); 25285 xml.enter(FHIR_NS, name); 25286 composeDeviceMetricElements(element); 25287 composeElementClose(element); 25288 xml.exit(FHIR_NS, name); 25289 } 25290 } 25291 25292 protected void composeDeviceMetricElements(DeviceMetric element) throws IOException { 25293 composeDomainResourceElements(element); 25294 if (element.hasIdentifier()) { 25295 composeIdentifier("identifier", element.getIdentifier()); 25296 } 25297 if (element.hasType()) { 25298 composeCodeableConcept("type", element.getType()); 25299 } 25300 if (element.hasUnit()) { 25301 composeCodeableConcept("unit", element.getUnit()); 25302 } 25303 if (element.hasSource()) { 25304 composeReference("source", element.getSource()); 25305 } 25306 if (element.hasParent()) { 25307 composeReference("parent", element.getParent()); 25308 } 25309 if (element.hasOperationalStatusElement()) 25310 composeEnumeration("operationalStatus", element.getOperationalStatusElement(), new DeviceMetric.DeviceMetricOperationalStatusEnumFactory()); 25311 if (element.hasColorElement()) 25312 composeEnumeration("color", element.getColorElement(), new DeviceMetric.DeviceMetricColorEnumFactory()); 25313 if (element.hasCategoryElement()) 25314 composeEnumeration("category", element.getCategoryElement(), new DeviceMetric.DeviceMetricCategoryEnumFactory()); 25315 if (element.hasMeasurementPeriod()) { 25316 composeTiming("measurementPeriod", element.getMeasurementPeriod()); 25317 } 25318 if (element.hasCalibration()) { 25319 for (DeviceMetric.DeviceMetricCalibrationComponent e : element.getCalibration()) 25320 composeDeviceMetricDeviceMetricCalibrationComponent("calibration", e); 25321 } 25322 } 25323 25324 protected void composeDeviceMetricDeviceMetricCalibrationComponent(String name, DeviceMetric.DeviceMetricCalibrationComponent element) throws IOException { 25325 if (element != null) { 25326 composeElementAttributes(element); 25327 xml.enter(FHIR_NS, name); 25328 composeDeviceMetricDeviceMetricCalibrationComponentElements(element); 25329 composeElementClose(element); 25330 xml.exit(FHIR_NS, name); 25331 } 25332 } 25333 25334 protected void composeDeviceMetricDeviceMetricCalibrationComponentElements(DeviceMetric.DeviceMetricCalibrationComponent element) throws IOException { 25335 composeBackboneElements(element); 25336 if (element.hasTypeElement()) 25337 composeEnumeration("type", element.getTypeElement(), new DeviceMetric.DeviceMetricCalibrationTypeEnumFactory()); 25338 if (element.hasStateElement()) 25339 composeEnumeration("state", element.getStateElement(), new DeviceMetric.DeviceMetricCalibrationStateEnumFactory()); 25340 if (element.hasTimeElement()) { 25341 composeInstant("time", element.getTimeElement()); 25342 } 25343 } 25344 25345 protected void composeDeviceRequest(String name, DeviceRequest element) throws IOException { 25346 if (element != null) { 25347 composeDomainResourceAttributes(element); 25348 xml.enter(FHIR_NS, name); 25349 composeDeviceRequestElements(element); 25350 composeElementClose(element); 25351 xml.exit(FHIR_NS, name); 25352 } 25353 } 25354 25355 protected void composeDeviceRequestElements(DeviceRequest element) throws IOException { 25356 composeDomainResourceElements(element); 25357 if (element.hasIdentifier()) { 25358 for (Identifier e : element.getIdentifier()) 25359 composeIdentifier("identifier", e); 25360 } 25361 if (element.hasDefinition()) { 25362 for (Reference e : element.getDefinition()) 25363 composeReference("definition", e); 25364 } 25365 if (element.hasBasedOn()) { 25366 for (Reference e : element.getBasedOn()) 25367 composeReference("basedOn", e); 25368 } 25369 if (element.hasPriorRequest()) { 25370 for (Reference e : element.getPriorRequest()) 25371 composeReference("priorRequest", e); 25372 } 25373 if (element.hasGroupIdentifier()) { 25374 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 25375 } 25376 if (element.hasStatusElement()) 25377 composeEnumeration("status", element.getStatusElement(), new DeviceRequest.DeviceRequestStatusEnumFactory()); 25378 if (element.hasIntent()) { 25379 composeCodeableConcept("intent", element.getIntent()); 25380 } 25381 if (element.hasPriorityElement()) 25382 composeEnumeration("priority", element.getPriorityElement(), new DeviceRequest.RequestPriorityEnumFactory()); 25383 if (element.hasCode()) { 25384 composeType("code", element.getCode()); 25385 } if (element.hasSubject()) { 25386 composeReference("subject", element.getSubject()); 25387 } 25388 if (element.hasContext()) { 25389 composeReference("context", element.getContext()); 25390 } 25391 if (element.hasOccurrence()) { 25392 composeType("occurrence", element.getOccurrence()); 25393 } if (element.hasAuthoredOnElement()) { 25394 composeDateTime("authoredOn", element.getAuthoredOnElement()); 25395 } 25396 if (element.hasRequester()) { 25397 composeDeviceRequestDeviceRequestRequesterComponent("requester", element.getRequester()); 25398 } 25399 if (element.hasPerformerType()) { 25400 composeCodeableConcept("performerType", element.getPerformerType()); 25401 } 25402 if (element.hasPerformer()) { 25403 composeReference("performer", element.getPerformer()); 25404 } 25405 if (element.hasReasonCode()) { 25406 for (CodeableConcept e : element.getReasonCode()) 25407 composeCodeableConcept("reasonCode", e); 25408 } 25409 if (element.hasReasonReference()) { 25410 for (Reference e : element.getReasonReference()) 25411 composeReference("reasonReference", e); 25412 } 25413 if (element.hasSupportingInfo()) { 25414 for (Reference e : element.getSupportingInfo()) 25415 composeReference("supportingInfo", e); 25416 } 25417 if (element.hasNote()) { 25418 for (Annotation e : element.getNote()) 25419 composeAnnotation("note", e); 25420 } 25421 if (element.hasRelevantHistory()) { 25422 for (Reference e : element.getRelevantHistory()) 25423 composeReference("relevantHistory", e); 25424 } 25425 } 25426 25427 protected void composeDeviceRequestDeviceRequestRequesterComponent(String name, DeviceRequest.DeviceRequestRequesterComponent element) throws IOException { 25428 if (element != null) { 25429 composeElementAttributes(element); 25430 xml.enter(FHIR_NS, name); 25431 composeDeviceRequestDeviceRequestRequesterComponentElements(element); 25432 composeElementClose(element); 25433 xml.exit(FHIR_NS, name); 25434 } 25435 } 25436 25437 protected void composeDeviceRequestDeviceRequestRequesterComponentElements(DeviceRequest.DeviceRequestRequesterComponent element) throws IOException { 25438 composeBackboneElements(element); 25439 if (element.hasAgent()) { 25440 composeReference("agent", element.getAgent()); 25441 } 25442 if (element.hasOnBehalfOf()) { 25443 composeReference("onBehalfOf", element.getOnBehalfOf()); 25444 } 25445 } 25446 25447 protected void composeDeviceUseStatement(String name, DeviceUseStatement element) throws IOException { 25448 if (element != null) { 25449 composeDomainResourceAttributes(element); 25450 xml.enter(FHIR_NS, name); 25451 composeDeviceUseStatementElements(element); 25452 composeElementClose(element); 25453 xml.exit(FHIR_NS, name); 25454 } 25455 } 25456 25457 protected void composeDeviceUseStatementElements(DeviceUseStatement element) throws IOException { 25458 composeDomainResourceElements(element); 25459 if (element.hasIdentifier()) { 25460 for (Identifier e : element.getIdentifier()) 25461 composeIdentifier("identifier", e); 25462 } 25463 if (element.hasStatusElement()) 25464 composeEnumeration("status", element.getStatusElement(), new DeviceUseStatement.DeviceUseStatementStatusEnumFactory()); 25465 if (element.hasSubject()) { 25466 composeReference("subject", element.getSubject()); 25467 } 25468 if (element.hasWhenUsed()) { 25469 composePeriod("whenUsed", element.getWhenUsed()); 25470 } 25471 if (element.hasTiming()) { 25472 composeType("timing", element.getTiming()); 25473 } if (element.hasRecordedOnElement()) { 25474 composeDateTime("recordedOn", element.getRecordedOnElement()); 25475 } 25476 if (element.hasSource()) { 25477 composeReference("source", element.getSource()); 25478 } 25479 if (element.hasDevice()) { 25480 composeReference("device", element.getDevice()); 25481 } 25482 if (element.hasIndication()) { 25483 for (CodeableConcept e : element.getIndication()) 25484 composeCodeableConcept("indication", e); 25485 } 25486 if (element.hasBodySite()) { 25487 composeCodeableConcept("bodySite", element.getBodySite()); 25488 } 25489 if (element.hasNote()) { 25490 for (Annotation e : element.getNote()) 25491 composeAnnotation("note", e); 25492 } 25493 } 25494 25495 protected void composeDiagnosticReport(String name, DiagnosticReport element) throws IOException { 25496 if (element != null) { 25497 composeDomainResourceAttributes(element); 25498 xml.enter(FHIR_NS, name); 25499 composeDiagnosticReportElements(element); 25500 composeElementClose(element); 25501 xml.exit(FHIR_NS, name); 25502 } 25503 } 25504 25505 protected void composeDiagnosticReportElements(DiagnosticReport element) throws IOException { 25506 composeDomainResourceElements(element); 25507 if (element.hasIdentifier()) { 25508 for (Identifier e : element.getIdentifier()) 25509 composeIdentifier("identifier", e); 25510 } 25511 if (element.hasBasedOn()) { 25512 for (Reference e : element.getBasedOn()) 25513 composeReference("basedOn", e); 25514 } 25515 if (element.hasStatusElement()) 25516 composeEnumeration("status", element.getStatusElement(), new DiagnosticReport.DiagnosticReportStatusEnumFactory()); 25517 if (element.hasCategory()) { 25518 composeCodeableConcept("category", element.getCategory()); 25519 } 25520 if (element.hasCode()) { 25521 composeCodeableConcept("code", element.getCode()); 25522 } 25523 if (element.hasSubject()) { 25524 composeReference("subject", element.getSubject()); 25525 } 25526 if (element.hasContext()) { 25527 composeReference("context", element.getContext()); 25528 } 25529 if (element.hasEffective()) { 25530 composeType("effective", element.getEffective()); 25531 } if (element.hasIssuedElement()) { 25532 composeInstant("issued", element.getIssuedElement()); 25533 } 25534 if (element.hasPerformer()) { 25535 for (DiagnosticReport.DiagnosticReportPerformerComponent e : element.getPerformer()) 25536 composeDiagnosticReportDiagnosticReportPerformerComponent("performer", e); 25537 } 25538 if (element.hasSpecimen()) { 25539 for (Reference e : element.getSpecimen()) 25540 composeReference("specimen", e); 25541 } 25542 if (element.hasResult()) { 25543 for (Reference e : element.getResult()) 25544 composeReference("result", e); 25545 } 25546 if (element.hasImagingStudy()) { 25547 for (Reference e : element.getImagingStudy()) 25548 composeReference("imagingStudy", e); 25549 } 25550 if (element.hasImage()) { 25551 for (DiagnosticReport.DiagnosticReportImageComponent e : element.getImage()) 25552 composeDiagnosticReportDiagnosticReportImageComponent("image", e); 25553 } 25554 if (element.hasConclusionElement()) { 25555 composeString("conclusion", element.getConclusionElement()); 25556 } 25557 if (element.hasCodedDiagnosis()) { 25558 for (CodeableConcept e : element.getCodedDiagnosis()) 25559 composeCodeableConcept("codedDiagnosis", e); 25560 } 25561 if (element.hasPresentedForm()) { 25562 for (Attachment e : element.getPresentedForm()) 25563 composeAttachment("presentedForm", e); 25564 } 25565 } 25566 25567 protected void composeDiagnosticReportDiagnosticReportPerformerComponent(String name, DiagnosticReport.DiagnosticReportPerformerComponent element) throws IOException { 25568 if (element != null) { 25569 composeElementAttributes(element); 25570 xml.enter(FHIR_NS, name); 25571 composeDiagnosticReportDiagnosticReportPerformerComponentElements(element); 25572 composeElementClose(element); 25573 xml.exit(FHIR_NS, name); 25574 } 25575 } 25576 25577 protected void composeDiagnosticReportDiagnosticReportPerformerComponentElements(DiagnosticReport.DiagnosticReportPerformerComponent element) throws IOException { 25578 composeBackboneElements(element); 25579 if (element.hasRole()) { 25580 composeCodeableConcept("role", element.getRole()); 25581 } 25582 if (element.hasActor()) { 25583 composeReference("actor", element.getActor()); 25584 } 25585 } 25586 25587 protected void composeDiagnosticReportDiagnosticReportImageComponent(String name, DiagnosticReport.DiagnosticReportImageComponent element) throws IOException { 25588 if (element != null) { 25589 composeElementAttributes(element); 25590 xml.enter(FHIR_NS, name); 25591 composeDiagnosticReportDiagnosticReportImageComponentElements(element); 25592 composeElementClose(element); 25593 xml.exit(FHIR_NS, name); 25594 } 25595 } 25596 25597 protected void composeDiagnosticReportDiagnosticReportImageComponentElements(DiagnosticReport.DiagnosticReportImageComponent element) throws IOException { 25598 composeBackboneElements(element); 25599 if (element.hasCommentElement()) { 25600 composeString("comment", element.getCommentElement()); 25601 } 25602 if (element.hasLink()) { 25603 composeReference("link", element.getLink()); 25604 } 25605 } 25606 25607 protected void composeDocumentManifest(String name, DocumentManifest element) throws IOException { 25608 if (element != null) { 25609 composeDomainResourceAttributes(element); 25610 xml.enter(FHIR_NS, name); 25611 composeDocumentManifestElements(element); 25612 composeElementClose(element); 25613 xml.exit(FHIR_NS, name); 25614 } 25615 } 25616 25617 protected void composeDocumentManifestElements(DocumentManifest element) throws IOException { 25618 composeDomainResourceElements(element); 25619 if (element.hasMasterIdentifier()) { 25620 composeIdentifier("masterIdentifier", element.getMasterIdentifier()); 25621 } 25622 if (element.hasIdentifier()) { 25623 for (Identifier e : element.getIdentifier()) 25624 composeIdentifier("identifier", e); 25625 } 25626 if (element.hasStatusElement()) 25627 composeEnumeration("status", element.getStatusElement(), new Enumerations.DocumentReferenceStatusEnumFactory()); 25628 if (element.hasType()) { 25629 composeCodeableConcept("type", element.getType()); 25630 } 25631 if (element.hasSubject()) { 25632 composeReference("subject", element.getSubject()); 25633 } 25634 if (element.hasCreatedElement()) { 25635 composeDateTime("created", element.getCreatedElement()); 25636 } 25637 if (element.hasAuthor()) { 25638 for (Reference e : element.getAuthor()) 25639 composeReference("author", e); 25640 } 25641 if (element.hasRecipient()) { 25642 for (Reference e : element.getRecipient()) 25643 composeReference("recipient", e); 25644 } 25645 if (element.hasSourceElement()) { 25646 composeUri("source", element.getSourceElement()); 25647 } 25648 if (element.hasDescriptionElement()) { 25649 composeString("description", element.getDescriptionElement()); 25650 } 25651 if (element.hasContent()) { 25652 for (DocumentManifest.DocumentManifestContentComponent e : element.getContent()) 25653 composeDocumentManifestDocumentManifestContentComponent("content", e); 25654 } 25655 if (element.hasRelated()) { 25656 for (DocumentManifest.DocumentManifestRelatedComponent e : element.getRelated()) 25657 composeDocumentManifestDocumentManifestRelatedComponent("related", e); 25658 } 25659 } 25660 25661 protected void composeDocumentManifestDocumentManifestContentComponent(String name, DocumentManifest.DocumentManifestContentComponent element) throws IOException { 25662 if (element != null) { 25663 composeElementAttributes(element); 25664 xml.enter(FHIR_NS, name); 25665 composeDocumentManifestDocumentManifestContentComponentElements(element); 25666 composeElementClose(element); 25667 xml.exit(FHIR_NS, name); 25668 } 25669 } 25670 25671 protected void composeDocumentManifestDocumentManifestContentComponentElements(DocumentManifest.DocumentManifestContentComponent element) throws IOException { 25672 composeBackboneElements(element); 25673 if (element.hasP()) { 25674 composeType("p", element.getP()); 25675 } } 25676 25677 protected void composeDocumentManifestDocumentManifestRelatedComponent(String name, DocumentManifest.DocumentManifestRelatedComponent element) throws IOException { 25678 if (element != null) { 25679 composeElementAttributes(element); 25680 xml.enter(FHIR_NS, name); 25681 composeDocumentManifestDocumentManifestRelatedComponentElements(element); 25682 composeElementClose(element); 25683 xml.exit(FHIR_NS, name); 25684 } 25685 } 25686 25687 protected void composeDocumentManifestDocumentManifestRelatedComponentElements(DocumentManifest.DocumentManifestRelatedComponent element) throws IOException { 25688 composeBackboneElements(element); 25689 if (element.hasIdentifier()) { 25690 composeIdentifier("identifier", element.getIdentifier()); 25691 } 25692 if (element.hasRef()) { 25693 composeReference("ref", element.getRef()); 25694 } 25695 } 25696 25697 protected void composeDocumentReference(String name, DocumentReference element) throws IOException { 25698 if (element != null) { 25699 composeDomainResourceAttributes(element); 25700 xml.enter(FHIR_NS, name); 25701 composeDocumentReferenceElements(element); 25702 composeElementClose(element); 25703 xml.exit(FHIR_NS, name); 25704 } 25705 } 25706 25707 protected void composeDocumentReferenceElements(DocumentReference element) throws IOException { 25708 composeDomainResourceElements(element); 25709 if (element.hasMasterIdentifier()) { 25710 composeIdentifier("masterIdentifier", element.getMasterIdentifier()); 25711 } 25712 if (element.hasIdentifier()) { 25713 for (Identifier e : element.getIdentifier()) 25714 composeIdentifier("identifier", e); 25715 } 25716 if (element.hasStatusElement()) 25717 composeEnumeration("status", element.getStatusElement(), new Enumerations.DocumentReferenceStatusEnumFactory()); 25718 if (element.hasDocStatusElement()) 25719 composeEnumeration("docStatus", element.getDocStatusElement(), new DocumentReference.ReferredDocumentStatusEnumFactory()); 25720 if (element.hasType()) { 25721 composeCodeableConcept("type", element.getType()); 25722 } 25723 if (element.hasClass_()) { 25724 composeCodeableConcept("class", element.getClass_()); 25725 } 25726 if (element.hasSubject()) { 25727 composeReference("subject", element.getSubject()); 25728 } 25729 if (element.hasCreatedElement()) { 25730 composeDateTime("created", element.getCreatedElement()); 25731 } 25732 if (element.hasIndexedElement()) { 25733 composeInstant("indexed", element.getIndexedElement()); 25734 } 25735 if (element.hasAuthor()) { 25736 for (Reference e : element.getAuthor()) 25737 composeReference("author", e); 25738 } 25739 if (element.hasAuthenticator()) { 25740 composeReference("authenticator", element.getAuthenticator()); 25741 } 25742 if (element.hasCustodian()) { 25743 composeReference("custodian", element.getCustodian()); 25744 } 25745 if (element.hasRelatesTo()) { 25746 for (DocumentReference.DocumentReferenceRelatesToComponent e : element.getRelatesTo()) 25747 composeDocumentReferenceDocumentReferenceRelatesToComponent("relatesTo", e); 25748 } 25749 if (element.hasDescriptionElement()) { 25750 composeString("description", element.getDescriptionElement()); 25751 } 25752 if (element.hasSecurityLabel()) { 25753 for (CodeableConcept e : element.getSecurityLabel()) 25754 composeCodeableConcept("securityLabel", e); 25755 } 25756 if (element.hasContent()) { 25757 for (DocumentReference.DocumentReferenceContentComponent e : element.getContent()) 25758 composeDocumentReferenceDocumentReferenceContentComponent("content", e); 25759 } 25760 if (element.hasContext()) { 25761 composeDocumentReferenceDocumentReferenceContextComponent("context", element.getContext()); 25762 } 25763 } 25764 25765 protected void composeDocumentReferenceDocumentReferenceRelatesToComponent(String name, DocumentReference.DocumentReferenceRelatesToComponent element) throws IOException { 25766 if (element != null) { 25767 composeElementAttributes(element); 25768 xml.enter(FHIR_NS, name); 25769 composeDocumentReferenceDocumentReferenceRelatesToComponentElements(element); 25770 composeElementClose(element); 25771 xml.exit(FHIR_NS, name); 25772 } 25773 } 25774 25775 protected void composeDocumentReferenceDocumentReferenceRelatesToComponentElements(DocumentReference.DocumentReferenceRelatesToComponent element) throws IOException { 25776 composeBackboneElements(element); 25777 if (element.hasCodeElement()) 25778 composeEnumeration("code", element.getCodeElement(), new DocumentReference.DocumentRelationshipTypeEnumFactory()); 25779 if (element.hasTarget()) { 25780 composeReference("target", element.getTarget()); 25781 } 25782 } 25783 25784 protected void composeDocumentReferenceDocumentReferenceContentComponent(String name, DocumentReference.DocumentReferenceContentComponent element) throws IOException { 25785 if (element != null) { 25786 composeElementAttributes(element); 25787 xml.enter(FHIR_NS, name); 25788 composeDocumentReferenceDocumentReferenceContentComponentElements(element); 25789 composeElementClose(element); 25790 xml.exit(FHIR_NS, name); 25791 } 25792 } 25793 25794 protected void composeDocumentReferenceDocumentReferenceContentComponentElements(DocumentReference.DocumentReferenceContentComponent element) throws IOException { 25795 composeBackboneElements(element); 25796 if (element.hasAttachment()) { 25797 composeAttachment("attachment", element.getAttachment()); 25798 } 25799 if (element.hasFormat()) { 25800 composeCoding("format", element.getFormat()); 25801 } 25802 } 25803 25804 protected void composeDocumentReferenceDocumentReferenceContextComponent(String name, DocumentReference.DocumentReferenceContextComponent element) throws IOException { 25805 if (element != null) { 25806 composeElementAttributes(element); 25807 xml.enter(FHIR_NS, name); 25808 composeDocumentReferenceDocumentReferenceContextComponentElements(element); 25809 composeElementClose(element); 25810 xml.exit(FHIR_NS, name); 25811 } 25812 } 25813 25814 protected void composeDocumentReferenceDocumentReferenceContextComponentElements(DocumentReference.DocumentReferenceContextComponent element) throws IOException { 25815 composeBackboneElements(element); 25816 if (element.hasEncounter()) { 25817 composeReference("encounter", element.getEncounter()); 25818 } 25819 if (element.hasEvent()) { 25820 for (CodeableConcept e : element.getEvent()) 25821 composeCodeableConcept("event", e); 25822 } 25823 if (element.hasPeriod()) { 25824 composePeriod("period", element.getPeriod()); 25825 } 25826 if (element.hasFacilityType()) { 25827 composeCodeableConcept("facilityType", element.getFacilityType()); 25828 } 25829 if (element.hasPracticeSetting()) { 25830 composeCodeableConcept("practiceSetting", element.getPracticeSetting()); 25831 } 25832 if (element.hasSourcePatientInfo()) { 25833 composeReference("sourcePatientInfo", element.getSourcePatientInfo()); 25834 } 25835 if (element.hasRelated()) { 25836 for (DocumentReference.DocumentReferenceContextRelatedComponent e : element.getRelated()) 25837 composeDocumentReferenceDocumentReferenceContextRelatedComponent("related", e); 25838 } 25839 } 25840 25841 protected void composeDocumentReferenceDocumentReferenceContextRelatedComponent(String name, DocumentReference.DocumentReferenceContextRelatedComponent element) throws IOException { 25842 if (element != null) { 25843 composeElementAttributes(element); 25844 xml.enter(FHIR_NS, name); 25845 composeDocumentReferenceDocumentReferenceContextRelatedComponentElements(element); 25846 composeElementClose(element); 25847 xml.exit(FHIR_NS, name); 25848 } 25849 } 25850 25851 protected void composeDocumentReferenceDocumentReferenceContextRelatedComponentElements(DocumentReference.DocumentReferenceContextRelatedComponent element) throws IOException { 25852 composeBackboneElements(element); 25853 if (element.hasIdentifier()) { 25854 composeIdentifier("identifier", element.getIdentifier()); 25855 } 25856 if (element.hasRef()) { 25857 composeReference("ref", element.getRef()); 25858 } 25859 } 25860 25861 protected void composeEligibilityRequest(String name, EligibilityRequest element) throws IOException { 25862 if (element != null) { 25863 composeDomainResourceAttributes(element); 25864 xml.enter(FHIR_NS, name); 25865 composeEligibilityRequestElements(element); 25866 composeElementClose(element); 25867 xml.exit(FHIR_NS, name); 25868 } 25869 } 25870 25871 protected void composeEligibilityRequestElements(EligibilityRequest element) throws IOException { 25872 composeDomainResourceElements(element); 25873 if (element.hasIdentifier()) { 25874 for (Identifier e : element.getIdentifier()) 25875 composeIdentifier("identifier", e); 25876 } 25877 if (element.hasStatusElement()) 25878 composeEnumeration("status", element.getStatusElement(), new EligibilityRequest.EligibilityRequestStatusEnumFactory()); 25879 if (element.hasPriority()) { 25880 composeCodeableConcept("priority", element.getPriority()); 25881 } 25882 if (element.hasPatient()) { 25883 composeReference("patient", element.getPatient()); 25884 } 25885 if (element.hasServiced()) { 25886 composeType("serviced", element.getServiced()); 25887 } if (element.hasCreatedElement()) { 25888 composeDateTime("created", element.getCreatedElement()); 25889 } 25890 if (element.hasEnterer()) { 25891 composeReference("enterer", element.getEnterer()); 25892 } 25893 if (element.hasProvider()) { 25894 composeReference("provider", element.getProvider()); 25895 } 25896 if (element.hasOrganization()) { 25897 composeReference("organization", element.getOrganization()); 25898 } 25899 if (element.hasInsurer()) { 25900 composeReference("insurer", element.getInsurer()); 25901 } 25902 if (element.hasFacility()) { 25903 composeReference("facility", element.getFacility()); 25904 } 25905 if (element.hasCoverage()) { 25906 composeReference("coverage", element.getCoverage()); 25907 } 25908 if (element.hasBusinessArrangementElement()) { 25909 composeString("businessArrangement", element.getBusinessArrangementElement()); 25910 } 25911 if (element.hasBenefitCategory()) { 25912 composeCodeableConcept("benefitCategory", element.getBenefitCategory()); 25913 } 25914 if (element.hasBenefitSubCategory()) { 25915 composeCodeableConcept("benefitSubCategory", element.getBenefitSubCategory()); 25916 } 25917 } 25918 25919 protected void composeEligibilityResponse(String name, EligibilityResponse element) throws IOException { 25920 if (element != null) { 25921 composeDomainResourceAttributes(element); 25922 xml.enter(FHIR_NS, name); 25923 composeEligibilityResponseElements(element); 25924 composeElementClose(element); 25925 xml.exit(FHIR_NS, name); 25926 } 25927 } 25928 25929 protected void composeEligibilityResponseElements(EligibilityResponse element) throws IOException { 25930 composeDomainResourceElements(element); 25931 if (element.hasIdentifier()) { 25932 for (Identifier e : element.getIdentifier()) 25933 composeIdentifier("identifier", e); 25934 } 25935 if (element.hasStatusElement()) 25936 composeEnumeration("status", element.getStatusElement(), new EligibilityResponse.EligibilityResponseStatusEnumFactory()); 25937 if (element.hasCreatedElement()) { 25938 composeDateTime("created", element.getCreatedElement()); 25939 } 25940 if (element.hasRequestProvider()) { 25941 composeReference("requestProvider", element.getRequestProvider()); 25942 } 25943 if (element.hasRequestOrganization()) { 25944 composeReference("requestOrganization", element.getRequestOrganization()); 25945 } 25946 if (element.hasRequest()) { 25947 composeReference("request", element.getRequest()); 25948 } 25949 if (element.hasOutcome()) { 25950 composeCodeableConcept("outcome", element.getOutcome()); 25951 } 25952 if (element.hasDispositionElement()) { 25953 composeString("disposition", element.getDispositionElement()); 25954 } 25955 if (element.hasInsurer()) { 25956 composeReference("insurer", element.getInsurer()); 25957 } 25958 if (element.hasInforceElement()) { 25959 composeBoolean("inforce", element.getInforceElement()); 25960 } 25961 if (element.hasInsurance()) { 25962 for (EligibilityResponse.InsuranceComponent e : element.getInsurance()) 25963 composeEligibilityResponseInsuranceComponent("insurance", e); 25964 } 25965 if (element.hasForm()) { 25966 composeCodeableConcept("form", element.getForm()); 25967 } 25968 if (element.hasError()) { 25969 for (EligibilityResponse.ErrorsComponent e : element.getError()) 25970 composeEligibilityResponseErrorsComponent("error", e); 25971 } 25972 } 25973 25974 protected void composeEligibilityResponseInsuranceComponent(String name, EligibilityResponse.InsuranceComponent element) throws IOException { 25975 if (element != null) { 25976 composeElementAttributes(element); 25977 xml.enter(FHIR_NS, name); 25978 composeEligibilityResponseInsuranceComponentElements(element); 25979 composeElementClose(element); 25980 xml.exit(FHIR_NS, name); 25981 } 25982 } 25983 25984 protected void composeEligibilityResponseInsuranceComponentElements(EligibilityResponse.InsuranceComponent element) throws IOException { 25985 composeBackboneElements(element); 25986 if (element.hasCoverage()) { 25987 composeReference("coverage", element.getCoverage()); 25988 } 25989 if (element.hasContract()) { 25990 composeReference("contract", element.getContract()); 25991 } 25992 if (element.hasBenefitBalance()) { 25993 for (EligibilityResponse.BenefitsComponent e : element.getBenefitBalance()) 25994 composeEligibilityResponseBenefitsComponent("benefitBalance", e); 25995 } 25996 } 25997 25998 protected void composeEligibilityResponseBenefitsComponent(String name, EligibilityResponse.BenefitsComponent element) throws IOException { 25999 if (element != null) { 26000 composeElementAttributes(element); 26001 xml.enter(FHIR_NS, name); 26002 composeEligibilityResponseBenefitsComponentElements(element); 26003 composeElementClose(element); 26004 xml.exit(FHIR_NS, name); 26005 } 26006 } 26007 26008 protected void composeEligibilityResponseBenefitsComponentElements(EligibilityResponse.BenefitsComponent element) throws IOException { 26009 composeBackboneElements(element); 26010 if (element.hasCategory()) { 26011 composeCodeableConcept("category", element.getCategory()); 26012 } 26013 if (element.hasSubCategory()) { 26014 composeCodeableConcept("subCategory", element.getSubCategory()); 26015 } 26016 if (element.hasExcludedElement()) { 26017 composeBoolean("excluded", element.getExcludedElement()); 26018 } 26019 if (element.hasNameElement()) { 26020 composeString("name", element.getNameElement()); 26021 } 26022 if (element.hasDescriptionElement()) { 26023 composeString("description", element.getDescriptionElement()); 26024 } 26025 if (element.hasNetwork()) { 26026 composeCodeableConcept("network", element.getNetwork()); 26027 } 26028 if (element.hasUnit()) { 26029 composeCodeableConcept("unit", element.getUnit()); 26030 } 26031 if (element.hasTerm()) { 26032 composeCodeableConcept("term", element.getTerm()); 26033 } 26034 if (element.hasFinancial()) { 26035 for (EligibilityResponse.BenefitComponent e : element.getFinancial()) 26036 composeEligibilityResponseBenefitComponent("financial", e); 26037 } 26038 } 26039 26040 protected void composeEligibilityResponseBenefitComponent(String name, EligibilityResponse.BenefitComponent element) throws IOException { 26041 if (element != null) { 26042 composeElementAttributes(element); 26043 xml.enter(FHIR_NS, name); 26044 composeEligibilityResponseBenefitComponentElements(element); 26045 composeElementClose(element); 26046 xml.exit(FHIR_NS, name); 26047 } 26048 } 26049 26050 protected void composeEligibilityResponseBenefitComponentElements(EligibilityResponse.BenefitComponent element) throws IOException { 26051 composeBackboneElements(element); 26052 if (element.hasType()) { 26053 composeCodeableConcept("type", element.getType()); 26054 } 26055 if (element.hasAllowed()) { 26056 composeType("allowed", element.getAllowed()); 26057 } if (element.hasUsed()) { 26058 composeType("used", element.getUsed()); 26059 } } 26060 26061 protected void composeEligibilityResponseErrorsComponent(String name, EligibilityResponse.ErrorsComponent element) throws IOException { 26062 if (element != null) { 26063 composeElementAttributes(element); 26064 xml.enter(FHIR_NS, name); 26065 composeEligibilityResponseErrorsComponentElements(element); 26066 composeElementClose(element); 26067 xml.exit(FHIR_NS, name); 26068 } 26069 } 26070 26071 protected void composeEligibilityResponseErrorsComponentElements(EligibilityResponse.ErrorsComponent element) throws IOException { 26072 composeBackboneElements(element); 26073 if (element.hasCode()) { 26074 composeCodeableConcept("code", element.getCode()); 26075 } 26076 } 26077 26078 protected void composeEncounter(String name, Encounter element) throws IOException { 26079 if (element != null) { 26080 composeDomainResourceAttributes(element); 26081 xml.enter(FHIR_NS, name); 26082 composeEncounterElements(element); 26083 composeElementClose(element); 26084 xml.exit(FHIR_NS, name); 26085 } 26086 } 26087 26088 protected void composeEncounterElements(Encounter element) throws IOException { 26089 composeDomainResourceElements(element); 26090 if (element.hasIdentifier()) { 26091 for (Identifier e : element.getIdentifier()) 26092 composeIdentifier("identifier", e); 26093 } 26094 if (element.hasStatusElement()) 26095 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterStatusEnumFactory()); 26096 if (element.hasStatusHistory()) { 26097 for (Encounter.StatusHistoryComponent e : element.getStatusHistory()) 26098 composeEncounterStatusHistoryComponent("statusHistory", e); 26099 } 26100 if (element.hasClass_()) { 26101 composeCoding("class", element.getClass_()); 26102 } 26103 if (element.hasClassHistory()) { 26104 for (Encounter.ClassHistoryComponent e : element.getClassHistory()) 26105 composeEncounterClassHistoryComponent("classHistory", e); 26106 } 26107 if (element.hasType()) { 26108 for (CodeableConcept e : element.getType()) 26109 composeCodeableConcept("type", e); 26110 } 26111 if (element.hasPriority()) { 26112 composeCodeableConcept("priority", element.getPriority()); 26113 } 26114 if (element.hasSubject()) { 26115 composeReference("subject", element.getSubject()); 26116 } 26117 if (element.hasEpisodeOfCare()) { 26118 for (Reference e : element.getEpisodeOfCare()) 26119 composeReference("episodeOfCare", e); 26120 } 26121 if (element.hasIncomingReferral()) { 26122 for (Reference e : element.getIncomingReferral()) 26123 composeReference("incomingReferral", e); 26124 } 26125 if (element.hasParticipant()) { 26126 for (Encounter.EncounterParticipantComponent e : element.getParticipant()) 26127 composeEncounterEncounterParticipantComponent("participant", e); 26128 } 26129 if (element.hasAppointment()) { 26130 composeReference("appointment", element.getAppointment()); 26131 } 26132 if (element.hasPeriod()) { 26133 composePeriod("period", element.getPeriod()); 26134 } 26135 if (element.hasLength()) { 26136 composeDuration("length", element.getLength()); 26137 } 26138 if (element.hasReason()) { 26139 for (CodeableConcept e : element.getReason()) 26140 composeCodeableConcept("reason", e); 26141 } 26142 if (element.hasDiagnosis()) { 26143 for (Encounter.DiagnosisComponent e : element.getDiagnosis()) 26144 composeEncounterDiagnosisComponent("diagnosis", e); 26145 } 26146 if (element.hasAccount()) { 26147 for (Reference e : element.getAccount()) 26148 composeReference("account", e); 26149 } 26150 if (element.hasHospitalization()) { 26151 composeEncounterEncounterHospitalizationComponent("hospitalization", element.getHospitalization()); 26152 } 26153 if (element.hasLocation()) { 26154 for (Encounter.EncounterLocationComponent e : element.getLocation()) 26155 composeEncounterEncounterLocationComponent("location", e); 26156 } 26157 if (element.hasServiceProvider()) { 26158 composeReference("serviceProvider", element.getServiceProvider()); 26159 } 26160 if (element.hasPartOf()) { 26161 composeReference("partOf", element.getPartOf()); 26162 } 26163 } 26164 26165 protected void composeEncounterStatusHistoryComponent(String name, Encounter.StatusHistoryComponent element) throws IOException { 26166 if (element != null) { 26167 composeElementAttributes(element); 26168 xml.enter(FHIR_NS, name); 26169 composeEncounterStatusHistoryComponentElements(element); 26170 composeElementClose(element); 26171 xml.exit(FHIR_NS, name); 26172 } 26173 } 26174 26175 protected void composeEncounterStatusHistoryComponentElements(Encounter.StatusHistoryComponent element) throws IOException { 26176 composeBackboneElements(element); 26177 if (element.hasStatusElement()) 26178 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterStatusEnumFactory()); 26179 if (element.hasPeriod()) { 26180 composePeriod("period", element.getPeriod()); 26181 } 26182 } 26183 26184 protected void composeEncounterClassHistoryComponent(String name, Encounter.ClassHistoryComponent element) throws IOException { 26185 if (element != null) { 26186 composeElementAttributes(element); 26187 xml.enter(FHIR_NS, name); 26188 composeEncounterClassHistoryComponentElements(element); 26189 composeElementClose(element); 26190 xml.exit(FHIR_NS, name); 26191 } 26192 } 26193 26194 protected void composeEncounterClassHistoryComponentElements(Encounter.ClassHistoryComponent element) throws IOException { 26195 composeBackboneElements(element); 26196 if (element.hasClass_()) { 26197 composeCoding("class", element.getClass_()); 26198 } 26199 if (element.hasPeriod()) { 26200 composePeriod("period", element.getPeriod()); 26201 } 26202 } 26203 26204 protected void composeEncounterEncounterParticipantComponent(String name, Encounter.EncounterParticipantComponent element) throws IOException { 26205 if (element != null) { 26206 composeElementAttributes(element); 26207 xml.enter(FHIR_NS, name); 26208 composeEncounterEncounterParticipantComponentElements(element); 26209 composeElementClose(element); 26210 xml.exit(FHIR_NS, name); 26211 } 26212 } 26213 26214 protected void composeEncounterEncounterParticipantComponentElements(Encounter.EncounterParticipantComponent element) throws IOException { 26215 composeBackboneElements(element); 26216 if (element.hasType()) { 26217 for (CodeableConcept e : element.getType()) 26218 composeCodeableConcept("type", e); 26219 } 26220 if (element.hasPeriod()) { 26221 composePeriod("period", element.getPeriod()); 26222 } 26223 if (element.hasIndividual()) { 26224 composeReference("individual", element.getIndividual()); 26225 } 26226 } 26227 26228 protected void composeEncounterDiagnosisComponent(String name, Encounter.DiagnosisComponent element) throws IOException { 26229 if (element != null) { 26230 composeElementAttributes(element); 26231 xml.enter(FHIR_NS, name); 26232 composeEncounterDiagnosisComponentElements(element); 26233 composeElementClose(element); 26234 xml.exit(FHIR_NS, name); 26235 } 26236 } 26237 26238 protected void composeEncounterDiagnosisComponentElements(Encounter.DiagnosisComponent element) throws IOException { 26239 composeBackboneElements(element); 26240 if (element.hasCondition()) { 26241 composeReference("condition", element.getCondition()); 26242 } 26243 if (element.hasRole()) { 26244 composeCodeableConcept("role", element.getRole()); 26245 } 26246 if (element.hasRankElement()) { 26247 composePositiveInt("rank", element.getRankElement()); 26248 } 26249 } 26250 26251 protected void composeEncounterEncounterHospitalizationComponent(String name, Encounter.EncounterHospitalizationComponent element) throws IOException { 26252 if (element != null) { 26253 composeElementAttributes(element); 26254 xml.enter(FHIR_NS, name); 26255 composeEncounterEncounterHospitalizationComponentElements(element); 26256 composeElementClose(element); 26257 xml.exit(FHIR_NS, name); 26258 } 26259 } 26260 26261 protected void composeEncounterEncounterHospitalizationComponentElements(Encounter.EncounterHospitalizationComponent element) throws IOException { 26262 composeBackboneElements(element); 26263 if (element.hasPreAdmissionIdentifier()) { 26264 composeIdentifier("preAdmissionIdentifier", element.getPreAdmissionIdentifier()); 26265 } 26266 if (element.hasOrigin()) { 26267 composeReference("origin", element.getOrigin()); 26268 } 26269 if (element.hasAdmitSource()) { 26270 composeCodeableConcept("admitSource", element.getAdmitSource()); 26271 } 26272 if (element.hasReAdmission()) { 26273 composeCodeableConcept("reAdmission", element.getReAdmission()); 26274 } 26275 if (element.hasDietPreference()) { 26276 for (CodeableConcept e : element.getDietPreference()) 26277 composeCodeableConcept("dietPreference", e); 26278 } 26279 if (element.hasSpecialCourtesy()) { 26280 for (CodeableConcept e : element.getSpecialCourtesy()) 26281 composeCodeableConcept("specialCourtesy", e); 26282 } 26283 if (element.hasSpecialArrangement()) { 26284 for (CodeableConcept e : element.getSpecialArrangement()) 26285 composeCodeableConcept("specialArrangement", e); 26286 } 26287 if (element.hasDestination()) { 26288 composeReference("destination", element.getDestination()); 26289 } 26290 if (element.hasDischargeDisposition()) { 26291 composeCodeableConcept("dischargeDisposition", element.getDischargeDisposition()); 26292 } 26293 } 26294 26295 protected void composeEncounterEncounterLocationComponent(String name, Encounter.EncounterLocationComponent element) throws IOException { 26296 if (element != null) { 26297 composeElementAttributes(element); 26298 xml.enter(FHIR_NS, name); 26299 composeEncounterEncounterLocationComponentElements(element); 26300 composeElementClose(element); 26301 xml.exit(FHIR_NS, name); 26302 } 26303 } 26304 26305 protected void composeEncounterEncounterLocationComponentElements(Encounter.EncounterLocationComponent element) throws IOException { 26306 composeBackboneElements(element); 26307 if (element.hasLocation()) { 26308 composeReference("location", element.getLocation()); 26309 } 26310 if (element.hasStatusElement()) 26311 composeEnumeration("status", element.getStatusElement(), new Encounter.EncounterLocationStatusEnumFactory()); 26312 if (element.hasPeriod()) { 26313 composePeriod("period", element.getPeriod()); 26314 } 26315 } 26316 26317 protected void composeEndpoint(String name, Endpoint element) throws IOException { 26318 if (element != null) { 26319 composeDomainResourceAttributes(element); 26320 xml.enter(FHIR_NS, name); 26321 composeEndpointElements(element); 26322 composeElementClose(element); 26323 xml.exit(FHIR_NS, name); 26324 } 26325 } 26326 26327 protected void composeEndpointElements(Endpoint element) throws IOException { 26328 composeDomainResourceElements(element); 26329 if (element.hasIdentifier()) { 26330 for (Identifier e : element.getIdentifier()) 26331 composeIdentifier("identifier", e); 26332 } 26333 if (element.hasStatusElement()) 26334 composeEnumeration("status", element.getStatusElement(), new Endpoint.EndpointStatusEnumFactory()); 26335 if (element.hasConnectionType()) { 26336 composeCoding("connectionType", element.getConnectionType()); 26337 } 26338 if (element.hasNameElement()) { 26339 composeString("name", element.getNameElement()); 26340 } 26341 if (element.hasManagingOrganization()) { 26342 composeReference("managingOrganization", element.getManagingOrganization()); 26343 } 26344 if (element.hasContact()) { 26345 for (ContactPoint e : element.getContact()) 26346 composeContactPoint("contact", e); 26347 } 26348 if (element.hasPeriod()) { 26349 composePeriod("period", element.getPeriod()); 26350 } 26351 if (element.hasPayloadType()) { 26352 for (CodeableConcept e : element.getPayloadType()) 26353 composeCodeableConcept("payloadType", e); 26354 } 26355 if (element.hasPayloadMimeType()) { 26356 for (CodeType e : element.getPayloadMimeType()) 26357 composeCode("payloadMimeType", e); 26358 } 26359 if (element.hasAddressElement()) { 26360 composeUri("address", element.getAddressElement()); 26361 } 26362 if (element.hasHeader()) { 26363 for (StringType e : element.getHeader()) 26364 composeString("header", e); 26365 } 26366 } 26367 26368 protected void composeEnrollmentRequest(String name, EnrollmentRequest element) throws IOException { 26369 if (element != null) { 26370 composeDomainResourceAttributes(element); 26371 xml.enter(FHIR_NS, name); 26372 composeEnrollmentRequestElements(element); 26373 composeElementClose(element); 26374 xml.exit(FHIR_NS, name); 26375 } 26376 } 26377 26378 protected void composeEnrollmentRequestElements(EnrollmentRequest element) throws IOException { 26379 composeDomainResourceElements(element); 26380 if (element.hasIdentifier()) { 26381 for (Identifier e : element.getIdentifier()) 26382 composeIdentifier("identifier", e); 26383 } 26384 if (element.hasStatusElement()) 26385 composeEnumeration("status", element.getStatusElement(), new EnrollmentRequest.EnrollmentRequestStatusEnumFactory()); 26386 if (element.hasCreatedElement()) { 26387 composeDateTime("created", element.getCreatedElement()); 26388 } 26389 if (element.hasInsurer()) { 26390 composeReference("insurer", element.getInsurer()); 26391 } 26392 if (element.hasProvider()) { 26393 composeReference("provider", element.getProvider()); 26394 } 26395 if (element.hasOrganization()) { 26396 composeReference("organization", element.getOrganization()); 26397 } 26398 if (element.hasSubject()) { 26399 composeReference("subject", element.getSubject()); 26400 } 26401 if (element.hasCoverage()) { 26402 composeReference("coverage", element.getCoverage()); 26403 } 26404 } 26405 26406 protected void composeEnrollmentResponse(String name, EnrollmentResponse element) throws IOException { 26407 if (element != null) { 26408 composeDomainResourceAttributes(element); 26409 xml.enter(FHIR_NS, name); 26410 composeEnrollmentResponseElements(element); 26411 composeElementClose(element); 26412 xml.exit(FHIR_NS, name); 26413 } 26414 } 26415 26416 protected void composeEnrollmentResponseElements(EnrollmentResponse element) throws IOException { 26417 composeDomainResourceElements(element); 26418 if (element.hasIdentifier()) { 26419 for (Identifier e : element.getIdentifier()) 26420 composeIdentifier("identifier", e); 26421 } 26422 if (element.hasStatusElement()) 26423 composeEnumeration("status", element.getStatusElement(), new EnrollmentResponse.EnrollmentResponseStatusEnumFactory()); 26424 if (element.hasRequest()) { 26425 composeReference("request", element.getRequest()); 26426 } 26427 if (element.hasOutcome()) { 26428 composeCodeableConcept("outcome", element.getOutcome()); 26429 } 26430 if (element.hasDispositionElement()) { 26431 composeString("disposition", element.getDispositionElement()); 26432 } 26433 if (element.hasCreatedElement()) { 26434 composeDateTime("created", element.getCreatedElement()); 26435 } 26436 if (element.hasOrganization()) { 26437 composeReference("organization", element.getOrganization()); 26438 } 26439 if (element.hasRequestProvider()) { 26440 composeReference("requestProvider", element.getRequestProvider()); 26441 } 26442 if (element.hasRequestOrganization()) { 26443 composeReference("requestOrganization", element.getRequestOrganization()); 26444 } 26445 } 26446 26447 protected void composeEpisodeOfCare(String name, EpisodeOfCare element) throws IOException { 26448 if (element != null) { 26449 composeDomainResourceAttributes(element); 26450 xml.enter(FHIR_NS, name); 26451 composeEpisodeOfCareElements(element); 26452 composeElementClose(element); 26453 xml.exit(FHIR_NS, name); 26454 } 26455 } 26456 26457 protected void composeEpisodeOfCareElements(EpisodeOfCare element) throws IOException { 26458 composeDomainResourceElements(element); 26459 if (element.hasIdentifier()) { 26460 for (Identifier e : element.getIdentifier()) 26461 composeIdentifier("identifier", e); 26462 } 26463 if (element.hasStatusElement()) 26464 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 26465 if (element.hasStatusHistory()) { 26466 for (EpisodeOfCare.EpisodeOfCareStatusHistoryComponent e : element.getStatusHistory()) 26467 composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent("statusHistory", e); 26468 } 26469 if (element.hasType()) { 26470 for (CodeableConcept e : element.getType()) 26471 composeCodeableConcept("type", e); 26472 } 26473 if (element.hasDiagnosis()) { 26474 for (EpisodeOfCare.DiagnosisComponent e : element.getDiagnosis()) 26475 composeEpisodeOfCareDiagnosisComponent("diagnosis", e); 26476 } 26477 if (element.hasPatient()) { 26478 composeReference("patient", element.getPatient()); 26479 } 26480 if (element.hasManagingOrganization()) { 26481 composeReference("managingOrganization", element.getManagingOrganization()); 26482 } 26483 if (element.hasPeriod()) { 26484 composePeriod("period", element.getPeriod()); 26485 } 26486 if (element.hasReferralRequest()) { 26487 for (Reference e : element.getReferralRequest()) 26488 composeReference("referralRequest", e); 26489 } 26490 if (element.hasCareManager()) { 26491 composeReference("careManager", element.getCareManager()); 26492 } 26493 if (element.hasTeam()) { 26494 for (Reference e : element.getTeam()) 26495 composeReference("team", e); 26496 } 26497 if (element.hasAccount()) { 26498 for (Reference e : element.getAccount()) 26499 composeReference("account", e); 26500 } 26501 } 26502 26503 protected void composeEpisodeOfCareEpisodeOfCareStatusHistoryComponent(String name, EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element) throws IOException { 26504 if (element != null) { 26505 composeElementAttributes(element); 26506 xml.enter(FHIR_NS, name); 26507 composeEpisodeOfCareEpisodeOfCareStatusHistoryComponentElements(element); 26508 composeElementClose(element); 26509 xml.exit(FHIR_NS, name); 26510 } 26511 } 26512 26513 protected void composeEpisodeOfCareEpisodeOfCareStatusHistoryComponentElements(EpisodeOfCare.EpisodeOfCareStatusHistoryComponent element) throws IOException { 26514 composeBackboneElements(element); 26515 if (element.hasStatusElement()) 26516 composeEnumeration("status", element.getStatusElement(), new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 26517 if (element.hasPeriod()) { 26518 composePeriod("period", element.getPeriod()); 26519 } 26520 } 26521 26522 protected void composeEpisodeOfCareDiagnosisComponent(String name, EpisodeOfCare.DiagnosisComponent element) throws IOException { 26523 if (element != null) { 26524 composeElementAttributes(element); 26525 xml.enter(FHIR_NS, name); 26526 composeEpisodeOfCareDiagnosisComponentElements(element); 26527 composeElementClose(element); 26528 xml.exit(FHIR_NS, name); 26529 } 26530 } 26531 26532 protected void composeEpisodeOfCareDiagnosisComponentElements(EpisodeOfCare.DiagnosisComponent element) throws IOException { 26533 composeBackboneElements(element); 26534 if (element.hasCondition()) { 26535 composeReference("condition", element.getCondition()); 26536 } 26537 if (element.hasRole()) { 26538 composeCodeableConcept("role", element.getRole()); 26539 } 26540 if (element.hasRankElement()) { 26541 composePositiveInt("rank", element.getRankElement()); 26542 } 26543 } 26544 26545 protected void composeExpansionProfile(String name, ExpansionProfile element) throws IOException { 26546 if (element != null) { 26547 composeDomainResourceAttributes(element); 26548 xml.enter(FHIR_NS, name); 26549 composeExpansionProfileElements(element); 26550 composeElementClose(element); 26551 xml.exit(FHIR_NS, name); 26552 } 26553 } 26554 26555 protected void composeExpansionProfileElements(ExpansionProfile element) throws IOException { 26556 composeDomainResourceElements(element); 26557 if (element.hasUrlElement()) { 26558 composeUri("url", element.getUrlElement()); 26559 } 26560 if (element.hasIdentifier()) { 26561 composeIdentifier("identifier", element.getIdentifier()); 26562 } 26563 if (element.hasVersionElement()) { 26564 composeString("version", element.getVersionElement()); 26565 } 26566 if (element.hasNameElement()) { 26567 composeString("name", element.getNameElement()); 26568 } 26569 if (element.hasStatusElement()) 26570 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 26571 if (element.hasExperimentalElement()) { 26572 composeBoolean("experimental", element.getExperimentalElement()); 26573 } 26574 if (element.hasDateElement()) { 26575 composeDateTime("date", element.getDateElement()); 26576 } 26577 if (element.hasPublisherElement()) { 26578 composeString("publisher", element.getPublisherElement()); 26579 } 26580 if (element.hasContact()) { 26581 for (ContactDetail e : element.getContact()) 26582 composeContactDetail("contact", e); 26583 } 26584 if (element.hasDescriptionElement()) { 26585 composeMarkdown("description", element.getDescriptionElement()); 26586 } 26587 if (element.hasUseContext()) { 26588 for (UsageContext e : element.getUseContext()) 26589 composeUsageContext("useContext", e); 26590 } 26591 if (element.hasJurisdiction()) { 26592 for (CodeableConcept e : element.getJurisdiction()) 26593 composeCodeableConcept("jurisdiction", e); 26594 } 26595 if (element.hasFixedVersion()) { 26596 for (ExpansionProfile.ExpansionProfileFixedVersionComponent e : element.getFixedVersion()) 26597 composeExpansionProfileExpansionProfileFixedVersionComponent("fixedVersion", e); 26598 } 26599 if (element.hasExcludedSystem()) { 26600 composeExpansionProfileExpansionProfileExcludedSystemComponent("excludedSystem", element.getExcludedSystem()); 26601 } 26602 if (element.hasIncludeDesignationsElement()) { 26603 composeBoolean("includeDesignations", element.getIncludeDesignationsElement()); 26604 } 26605 if (element.hasDesignation()) { 26606 composeExpansionProfileExpansionProfileDesignationComponent("designation", element.getDesignation()); 26607 } 26608 if (element.hasIncludeDefinitionElement()) { 26609 composeBoolean("includeDefinition", element.getIncludeDefinitionElement()); 26610 } 26611 if (element.hasActiveOnlyElement()) { 26612 composeBoolean("activeOnly", element.getActiveOnlyElement()); 26613 } 26614 if (element.hasExcludeNestedElement()) { 26615 composeBoolean("excludeNested", element.getExcludeNestedElement()); 26616 } 26617 if (element.hasExcludeNotForUIElement()) { 26618 composeBoolean("excludeNotForUI", element.getExcludeNotForUIElement()); 26619 } 26620 if (element.hasExcludePostCoordinatedElement()) { 26621 composeBoolean("excludePostCoordinated", element.getExcludePostCoordinatedElement()); 26622 } 26623 if (element.hasDisplayLanguageElement()) { 26624 composeCode("displayLanguage", element.getDisplayLanguageElement()); 26625 } 26626 if (element.hasLimitedExpansionElement()) { 26627 composeBoolean("limitedExpansion", element.getLimitedExpansionElement()); 26628 } 26629 } 26630 26631 protected void composeExpansionProfileExpansionProfileFixedVersionComponent(String name, ExpansionProfile.ExpansionProfileFixedVersionComponent element) throws IOException { 26632 if (element != null) { 26633 composeElementAttributes(element); 26634 xml.enter(FHIR_NS, name); 26635 composeExpansionProfileExpansionProfileFixedVersionComponentElements(element); 26636 composeElementClose(element); 26637 xml.exit(FHIR_NS, name); 26638 } 26639 } 26640 26641 protected void composeExpansionProfileExpansionProfileFixedVersionComponentElements(ExpansionProfile.ExpansionProfileFixedVersionComponent element) throws IOException { 26642 composeBackboneElements(element); 26643 if (element.hasSystemElement()) { 26644 composeUri("system", element.getSystemElement()); 26645 } 26646 if (element.hasVersionElement()) { 26647 composeString("version", element.getVersionElement()); 26648 } 26649 if (element.hasModeElement()) 26650 composeEnumeration("mode", element.getModeElement(), new ExpansionProfile.SystemVersionProcessingModeEnumFactory()); 26651 } 26652 26653 protected void composeExpansionProfileExpansionProfileExcludedSystemComponent(String name, ExpansionProfile.ExpansionProfileExcludedSystemComponent element) throws IOException { 26654 if (element != null) { 26655 composeElementAttributes(element); 26656 xml.enter(FHIR_NS, name); 26657 composeExpansionProfileExpansionProfileExcludedSystemComponentElements(element); 26658 composeElementClose(element); 26659 xml.exit(FHIR_NS, name); 26660 } 26661 } 26662 26663 protected void composeExpansionProfileExpansionProfileExcludedSystemComponentElements(ExpansionProfile.ExpansionProfileExcludedSystemComponent element) throws IOException { 26664 composeBackboneElements(element); 26665 if (element.hasSystemElement()) { 26666 composeUri("system", element.getSystemElement()); 26667 } 26668 if (element.hasVersionElement()) { 26669 composeString("version", element.getVersionElement()); 26670 } 26671 } 26672 26673 protected void composeExpansionProfileExpansionProfileDesignationComponent(String name, ExpansionProfile.ExpansionProfileDesignationComponent element) throws IOException { 26674 if (element != null) { 26675 composeElementAttributes(element); 26676 xml.enter(FHIR_NS, name); 26677 composeExpansionProfileExpansionProfileDesignationComponentElements(element); 26678 composeElementClose(element); 26679 xml.exit(FHIR_NS, name); 26680 } 26681 } 26682 26683 protected void composeExpansionProfileExpansionProfileDesignationComponentElements(ExpansionProfile.ExpansionProfileDesignationComponent element) throws IOException { 26684 composeBackboneElements(element); 26685 if (element.hasInclude()) { 26686 composeExpansionProfileDesignationIncludeComponent("include", element.getInclude()); 26687 } 26688 if (element.hasExclude()) { 26689 composeExpansionProfileDesignationExcludeComponent("exclude", element.getExclude()); 26690 } 26691 } 26692 26693 protected void composeExpansionProfileDesignationIncludeComponent(String name, ExpansionProfile.DesignationIncludeComponent element) throws IOException { 26694 if (element != null) { 26695 composeElementAttributes(element); 26696 xml.enter(FHIR_NS, name); 26697 composeExpansionProfileDesignationIncludeComponentElements(element); 26698 composeElementClose(element); 26699 xml.exit(FHIR_NS, name); 26700 } 26701 } 26702 26703 protected void composeExpansionProfileDesignationIncludeComponentElements(ExpansionProfile.DesignationIncludeComponent element) throws IOException { 26704 composeBackboneElements(element); 26705 if (element.hasDesignation()) { 26706 for (ExpansionProfile.DesignationIncludeDesignationComponent e : element.getDesignation()) 26707 composeExpansionProfileDesignationIncludeDesignationComponent("designation", e); 26708 } 26709 } 26710 26711 protected void composeExpansionProfileDesignationIncludeDesignationComponent(String name, ExpansionProfile.DesignationIncludeDesignationComponent element) throws IOException { 26712 if (element != null) { 26713 composeElementAttributes(element); 26714 xml.enter(FHIR_NS, name); 26715 composeExpansionProfileDesignationIncludeDesignationComponentElements(element); 26716 composeElementClose(element); 26717 xml.exit(FHIR_NS, name); 26718 } 26719 } 26720 26721 protected void composeExpansionProfileDesignationIncludeDesignationComponentElements(ExpansionProfile.DesignationIncludeDesignationComponent element) throws IOException { 26722 composeBackboneElements(element); 26723 if (element.hasLanguageElement()) { 26724 composeCode("language", element.getLanguageElement()); 26725 } 26726 if (element.hasUse()) { 26727 composeCoding("use", element.getUse()); 26728 } 26729 } 26730 26731 protected void composeExpansionProfileDesignationExcludeComponent(String name, ExpansionProfile.DesignationExcludeComponent element) throws IOException { 26732 if (element != null) { 26733 composeElementAttributes(element); 26734 xml.enter(FHIR_NS, name); 26735 composeExpansionProfileDesignationExcludeComponentElements(element); 26736 composeElementClose(element); 26737 xml.exit(FHIR_NS, name); 26738 } 26739 } 26740 26741 protected void composeExpansionProfileDesignationExcludeComponentElements(ExpansionProfile.DesignationExcludeComponent element) throws IOException { 26742 composeBackboneElements(element); 26743 if (element.hasDesignation()) { 26744 for (ExpansionProfile.DesignationExcludeDesignationComponent e : element.getDesignation()) 26745 composeExpansionProfileDesignationExcludeDesignationComponent("designation", e); 26746 } 26747 } 26748 26749 protected void composeExpansionProfileDesignationExcludeDesignationComponent(String name, ExpansionProfile.DesignationExcludeDesignationComponent element) throws IOException { 26750 if (element != null) { 26751 composeElementAttributes(element); 26752 xml.enter(FHIR_NS, name); 26753 composeExpansionProfileDesignationExcludeDesignationComponentElements(element); 26754 composeElementClose(element); 26755 xml.exit(FHIR_NS, name); 26756 } 26757 } 26758 26759 protected void composeExpansionProfileDesignationExcludeDesignationComponentElements(ExpansionProfile.DesignationExcludeDesignationComponent element) throws IOException { 26760 composeBackboneElements(element); 26761 if (element.hasLanguageElement()) { 26762 composeCode("language", element.getLanguageElement()); 26763 } 26764 if (element.hasUse()) { 26765 composeCoding("use", element.getUse()); 26766 } 26767 } 26768 26769 protected void composeExplanationOfBenefit(String name, ExplanationOfBenefit element) throws IOException { 26770 if (element != null) { 26771 composeDomainResourceAttributes(element); 26772 xml.enter(FHIR_NS, name); 26773 composeExplanationOfBenefitElements(element); 26774 composeElementClose(element); 26775 xml.exit(FHIR_NS, name); 26776 } 26777 } 26778 26779 protected void composeExplanationOfBenefitElements(ExplanationOfBenefit element) throws IOException { 26780 composeDomainResourceElements(element); 26781 if (element.hasIdentifier()) { 26782 for (Identifier e : element.getIdentifier()) 26783 composeIdentifier("identifier", e); 26784 } 26785 if (element.hasStatusElement()) 26786 composeEnumeration("status", element.getStatusElement(), new ExplanationOfBenefit.ExplanationOfBenefitStatusEnumFactory()); 26787 if (element.hasType()) { 26788 composeCodeableConcept("type", element.getType()); 26789 } 26790 if (element.hasSubType()) { 26791 for (CodeableConcept e : element.getSubType()) 26792 composeCodeableConcept("subType", e); 26793 } 26794 if (element.hasPatient()) { 26795 composeReference("patient", element.getPatient()); 26796 } 26797 if (element.hasBillablePeriod()) { 26798 composePeriod("billablePeriod", element.getBillablePeriod()); 26799 } 26800 if (element.hasCreatedElement()) { 26801 composeDateTime("created", element.getCreatedElement()); 26802 } 26803 if (element.hasEnterer()) { 26804 composeReference("enterer", element.getEnterer()); 26805 } 26806 if (element.hasInsurer()) { 26807 composeReference("insurer", element.getInsurer()); 26808 } 26809 if (element.hasProvider()) { 26810 composeReference("provider", element.getProvider()); 26811 } 26812 if (element.hasOrganization()) { 26813 composeReference("organization", element.getOrganization()); 26814 } 26815 if (element.hasReferral()) { 26816 composeReference("referral", element.getReferral()); 26817 } 26818 if (element.hasFacility()) { 26819 composeReference("facility", element.getFacility()); 26820 } 26821 if (element.hasClaim()) { 26822 composeReference("claim", element.getClaim()); 26823 } 26824 if (element.hasClaimResponse()) { 26825 composeReference("claimResponse", element.getClaimResponse()); 26826 } 26827 if (element.hasOutcome()) { 26828 composeCodeableConcept("outcome", element.getOutcome()); 26829 } 26830 if (element.hasDispositionElement()) { 26831 composeString("disposition", element.getDispositionElement()); 26832 } 26833 if (element.hasRelated()) { 26834 for (ExplanationOfBenefit.RelatedClaimComponent e : element.getRelated()) 26835 composeExplanationOfBenefitRelatedClaimComponent("related", e); 26836 } 26837 if (element.hasPrescription()) { 26838 composeReference("prescription", element.getPrescription()); 26839 } 26840 if (element.hasOriginalPrescription()) { 26841 composeReference("originalPrescription", element.getOriginalPrescription()); 26842 } 26843 if (element.hasPayee()) { 26844 composeExplanationOfBenefitPayeeComponent("payee", element.getPayee()); 26845 } 26846 if (element.hasInformation()) { 26847 for (ExplanationOfBenefit.SupportingInformationComponent e : element.getInformation()) 26848 composeExplanationOfBenefitSupportingInformationComponent("information", e); 26849 } 26850 if (element.hasCareTeam()) { 26851 for (ExplanationOfBenefit.CareTeamComponent e : element.getCareTeam()) 26852 composeExplanationOfBenefitCareTeamComponent("careTeam", e); 26853 } 26854 if (element.hasDiagnosis()) { 26855 for (ExplanationOfBenefit.DiagnosisComponent e : element.getDiagnosis()) 26856 composeExplanationOfBenefitDiagnosisComponent("diagnosis", e); 26857 } 26858 if (element.hasProcedure()) { 26859 for (ExplanationOfBenefit.ProcedureComponent e : element.getProcedure()) 26860 composeExplanationOfBenefitProcedureComponent("procedure", e); 26861 } 26862 if (element.hasPrecedenceElement()) { 26863 composePositiveInt("precedence", element.getPrecedenceElement()); 26864 } 26865 if (element.hasInsurance()) { 26866 composeExplanationOfBenefitInsuranceComponent("insurance", element.getInsurance()); 26867 } 26868 if (element.hasAccident()) { 26869 composeExplanationOfBenefitAccidentComponent("accident", element.getAccident()); 26870 } 26871 if (element.hasEmploymentImpacted()) { 26872 composePeriod("employmentImpacted", element.getEmploymentImpacted()); 26873 } 26874 if (element.hasHospitalization()) { 26875 composePeriod("hospitalization", element.getHospitalization()); 26876 } 26877 if (element.hasItem()) { 26878 for (ExplanationOfBenefit.ItemComponent e : element.getItem()) 26879 composeExplanationOfBenefitItemComponent("item", e); 26880 } 26881 if (element.hasAddItem()) { 26882 for (ExplanationOfBenefit.AddedItemComponent e : element.getAddItem()) 26883 composeExplanationOfBenefitAddedItemComponent("addItem", e); 26884 } 26885 if (element.hasTotalCost()) { 26886 composeMoney("totalCost", element.getTotalCost()); 26887 } 26888 if (element.hasUnallocDeductable()) { 26889 composeMoney("unallocDeductable", element.getUnallocDeductable()); 26890 } 26891 if (element.hasTotalBenefit()) { 26892 composeMoney("totalBenefit", element.getTotalBenefit()); 26893 } 26894 if (element.hasPayment()) { 26895 composeExplanationOfBenefitPaymentComponent("payment", element.getPayment()); 26896 } 26897 if (element.hasForm()) { 26898 composeCodeableConcept("form", element.getForm()); 26899 } 26900 if (element.hasProcessNote()) { 26901 for (ExplanationOfBenefit.NoteComponent e : element.getProcessNote()) 26902 composeExplanationOfBenefitNoteComponent("processNote", e); 26903 } 26904 if (element.hasBenefitBalance()) { 26905 for (ExplanationOfBenefit.BenefitBalanceComponent e : element.getBenefitBalance()) 26906 composeExplanationOfBenefitBenefitBalanceComponent("benefitBalance", e); 26907 } 26908 } 26909 26910 protected void composeExplanationOfBenefitRelatedClaimComponent(String name, ExplanationOfBenefit.RelatedClaimComponent element) throws IOException { 26911 if (element != null) { 26912 composeElementAttributes(element); 26913 xml.enter(FHIR_NS, name); 26914 composeExplanationOfBenefitRelatedClaimComponentElements(element); 26915 composeElementClose(element); 26916 xml.exit(FHIR_NS, name); 26917 } 26918 } 26919 26920 protected void composeExplanationOfBenefitRelatedClaimComponentElements(ExplanationOfBenefit.RelatedClaimComponent element) throws IOException { 26921 composeBackboneElements(element); 26922 if (element.hasClaim()) { 26923 composeReference("claim", element.getClaim()); 26924 } 26925 if (element.hasRelationship()) { 26926 composeCodeableConcept("relationship", element.getRelationship()); 26927 } 26928 if (element.hasReference()) { 26929 composeIdentifier("reference", element.getReference()); 26930 } 26931 } 26932 26933 protected void composeExplanationOfBenefitPayeeComponent(String name, ExplanationOfBenefit.PayeeComponent element) throws IOException { 26934 if (element != null) { 26935 composeElementAttributes(element); 26936 xml.enter(FHIR_NS, name); 26937 composeExplanationOfBenefitPayeeComponentElements(element); 26938 composeElementClose(element); 26939 xml.exit(FHIR_NS, name); 26940 } 26941 } 26942 26943 protected void composeExplanationOfBenefitPayeeComponentElements(ExplanationOfBenefit.PayeeComponent element) throws IOException { 26944 composeBackboneElements(element); 26945 if (element.hasType()) { 26946 composeCodeableConcept("type", element.getType()); 26947 } 26948 if (element.hasResourceType()) { 26949 composeCodeableConcept("resourceType", element.getResourceType()); 26950 } 26951 if (element.hasParty()) { 26952 composeReference("party", element.getParty()); 26953 } 26954 } 26955 26956 protected void composeExplanationOfBenefitSupportingInformationComponent(String name, ExplanationOfBenefit.SupportingInformationComponent element) throws IOException { 26957 if (element != null) { 26958 composeElementAttributes(element); 26959 xml.enter(FHIR_NS, name); 26960 composeExplanationOfBenefitSupportingInformationComponentElements(element); 26961 composeElementClose(element); 26962 xml.exit(FHIR_NS, name); 26963 } 26964 } 26965 26966 protected void composeExplanationOfBenefitSupportingInformationComponentElements(ExplanationOfBenefit.SupportingInformationComponent element) throws IOException { 26967 composeBackboneElements(element); 26968 if (element.hasSequenceElement()) { 26969 composePositiveInt("sequence", element.getSequenceElement()); 26970 } 26971 if (element.hasCategory()) { 26972 composeCodeableConcept("category", element.getCategory()); 26973 } 26974 if (element.hasCode()) { 26975 composeCodeableConcept("code", element.getCode()); 26976 } 26977 if (element.hasTiming()) { 26978 composeType("timing", element.getTiming()); 26979 } if (element.hasValue()) { 26980 composeType("value", element.getValue()); 26981 } if (element.hasReason()) { 26982 composeCoding("reason", element.getReason()); 26983 } 26984 } 26985 26986 protected void composeExplanationOfBenefitCareTeamComponent(String name, ExplanationOfBenefit.CareTeamComponent element) throws IOException { 26987 if (element != null) { 26988 composeElementAttributes(element); 26989 xml.enter(FHIR_NS, name); 26990 composeExplanationOfBenefitCareTeamComponentElements(element); 26991 composeElementClose(element); 26992 xml.exit(FHIR_NS, name); 26993 } 26994 } 26995 26996 protected void composeExplanationOfBenefitCareTeamComponentElements(ExplanationOfBenefit.CareTeamComponent element) throws IOException { 26997 composeBackboneElements(element); 26998 if (element.hasSequenceElement()) { 26999 composePositiveInt("sequence", element.getSequenceElement()); 27000 } 27001 if (element.hasProvider()) { 27002 composeReference("provider", element.getProvider()); 27003 } 27004 if (element.hasResponsibleElement()) { 27005 composeBoolean("responsible", element.getResponsibleElement()); 27006 } 27007 if (element.hasRole()) { 27008 composeCodeableConcept("role", element.getRole()); 27009 } 27010 if (element.hasQualification()) { 27011 composeCodeableConcept("qualification", element.getQualification()); 27012 } 27013 } 27014 27015 protected void composeExplanationOfBenefitDiagnosisComponent(String name, ExplanationOfBenefit.DiagnosisComponent element) throws IOException { 27016 if (element != null) { 27017 composeElementAttributes(element); 27018 xml.enter(FHIR_NS, name); 27019 composeExplanationOfBenefitDiagnosisComponentElements(element); 27020 composeElementClose(element); 27021 xml.exit(FHIR_NS, name); 27022 } 27023 } 27024 27025 protected void composeExplanationOfBenefitDiagnosisComponentElements(ExplanationOfBenefit.DiagnosisComponent element) throws IOException { 27026 composeBackboneElements(element); 27027 if (element.hasSequenceElement()) { 27028 composePositiveInt("sequence", element.getSequenceElement()); 27029 } 27030 if (element.hasDiagnosis()) { 27031 composeType("diagnosis", element.getDiagnosis()); 27032 } if (element.hasType()) { 27033 for (CodeableConcept e : element.getType()) 27034 composeCodeableConcept("type", e); 27035 } 27036 if (element.hasPackageCode()) { 27037 composeCodeableConcept("packageCode", element.getPackageCode()); 27038 } 27039 } 27040 27041 protected void composeExplanationOfBenefitProcedureComponent(String name, ExplanationOfBenefit.ProcedureComponent element) throws IOException { 27042 if (element != null) { 27043 composeElementAttributes(element); 27044 xml.enter(FHIR_NS, name); 27045 composeExplanationOfBenefitProcedureComponentElements(element); 27046 composeElementClose(element); 27047 xml.exit(FHIR_NS, name); 27048 } 27049 } 27050 27051 protected void composeExplanationOfBenefitProcedureComponentElements(ExplanationOfBenefit.ProcedureComponent element) throws IOException { 27052 composeBackboneElements(element); 27053 if (element.hasSequenceElement()) { 27054 composePositiveInt("sequence", element.getSequenceElement()); 27055 } 27056 if (element.hasDateElement()) { 27057 composeDateTime("date", element.getDateElement()); 27058 } 27059 if (element.hasProcedure()) { 27060 composeType("procedure", element.getProcedure()); 27061 } } 27062 27063 protected void composeExplanationOfBenefitInsuranceComponent(String name, ExplanationOfBenefit.InsuranceComponent element) throws IOException { 27064 if (element != null) { 27065 composeElementAttributes(element); 27066 xml.enter(FHIR_NS, name); 27067 composeExplanationOfBenefitInsuranceComponentElements(element); 27068 composeElementClose(element); 27069 xml.exit(FHIR_NS, name); 27070 } 27071 } 27072 27073 protected void composeExplanationOfBenefitInsuranceComponentElements(ExplanationOfBenefit.InsuranceComponent element) throws IOException { 27074 composeBackboneElements(element); 27075 if (element.hasCoverage()) { 27076 composeReference("coverage", element.getCoverage()); 27077 } 27078 if (element.hasPreAuthRef()) { 27079 for (StringType e : element.getPreAuthRef()) 27080 composeString("preAuthRef", e); 27081 } 27082 } 27083 27084 protected void composeExplanationOfBenefitAccidentComponent(String name, ExplanationOfBenefit.AccidentComponent element) throws IOException { 27085 if (element != null) { 27086 composeElementAttributes(element); 27087 xml.enter(FHIR_NS, name); 27088 composeExplanationOfBenefitAccidentComponentElements(element); 27089 composeElementClose(element); 27090 xml.exit(FHIR_NS, name); 27091 } 27092 } 27093 27094 protected void composeExplanationOfBenefitAccidentComponentElements(ExplanationOfBenefit.AccidentComponent element) throws IOException { 27095 composeBackboneElements(element); 27096 if (element.hasDateElement()) { 27097 composeDate("date", element.getDateElement()); 27098 } 27099 if (element.hasType()) { 27100 composeCodeableConcept("type", element.getType()); 27101 } 27102 if (element.hasLocation()) { 27103 composeType("location", element.getLocation()); 27104 } } 27105 27106 protected void composeExplanationOfBenefitItemComponent(String name, ExplanationOfBenefit.ItemComponent element) throws IOException { 27107 if (element != null) { 27108 composeElementAttributes(element); 27109 xml.enter(FHIR_NS, name); 27110 composeExplanationOfBenefitItemComponentElements(element); 27111 composeElementClose(element); 27112 xml.exit(FHIR_NS, name); 27113 } 27114 } 27115 27116 protected void composeExplanationOfBenefitItemComponentElements(ExplanationOfBenefit.ItemComponent element) throws IOException { 27117 composeBackboneElements(element); 27118 if (element.hasSequenceElement()) { 27119 composePositiveInt("sequence", element.getSequenceElement()); 27120 } 27121 if (element.hasCareTeamLinkId()) { 27122 for (PositiveIntType e : element.getCareTeamLinkId()) 27123 composePositiveInt("careTeamLinkId", e); 27124 } 27125 if (element.hasDiagnosisLinkId()) { 27126 for (PositiveIntType e : element.getDiagnosisLinkId()) 27127 composePositiveInt("diagnosisLinkId", e); 27128 } 27129 if (element.hasProcedureLinkId()) { 27130 for (PositiveIntType e : element.getProcedureLinkId()) 27131 composePositiveInt("procedureLinkId", e); 27132 } 27133 if (element.hasInformationLinkId()) { 27134 for (PositiveIntType e : element.getInformationLinkId()) 27135 composePositiveInt("informationLinkId", e); 27136 } 27137 if (element.hasRevenue()) { 27138 composeCodeableConcept("revenue", element.getRevenue()); 27139 } 27140 if (element.hasCategory()) { 27141 composeCodeableConcept("category", element.getCategory()); 27142 } 27143 if (element.hasService()) { 27144 composeCodeableConcept("service", element.getService()); 27145 } 27146 if (element.hasModifier()) { 27147 for (CodeableConcept e : element.getModifier()) 27148 composeCodeableConcept("modifier", e); 27149 } 27150 if (element.hasProgramCode()) { 27151 for (CodeableConcept e : element.getProgramCode()) 27152 composeCodeableConcept("programCode", e); 27153 } 27154 if (element.hasServiced()) { 27155 composeType("serviced", element.getServiced()); 27156 } if (element.hasLocation()) { 27157 composeType("location", element.getLocation()); 27158 } if (element.hasQuantity()) { 27159 composeSimpleQuantity("quantity", element.getQuantity()); 27160 } 27161 if (element.hasUnitPrice()) { 27162 composeMoney("unitPrice", element.getUnitPrice()); 27163 } 27164 if (element.hasFactorElement()) { 27165 composeDecimal("factor", element.getFactorElement()); 27166 } 27167 if (element.hasNet()) { 27168 composeMoney("net", element.getNet()); 27169 } 27170 if (element.hasUdi()) { 27171 for (Reference e : element.getUdi()) 27172 composeReference("udi", e); 27173 } 27174 if (element.hasBodySite()) { 27175 composeCodeableConcept("bodySite", element.getBodySite()); 27176 } 27177 if (element.hasSubSite()) { 27178 for (CodeableConcept e : element.getSubSite()) 27179 composeCodeableConcept("subSite", e); 27180 } 27181 if (element.hasEncounter()) { 27182 for (Reference e : element.getEncounter()) 27183 composeReference("encounter", e); 27184 } 27185 if (element.hasNoteNumber()) { 27186 for (PositiveIntType e : element.getNoteNumber()) 27187 composePositiveInt("noteNumber", e); 27188 } 27189 if (element.hasAdjudication()) { 27190 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27191 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27192 } 27193 if (element.hasDetail()) { 27194 for (ExplanationOfBenefit.DetailComponent e : element.getDetail()) 27195 composeExplanationOfBenefitDetailComponent("detail", e); 27196 } 27197 } 27198 27199 protected void composeExplanationOfBenefitAdjudicationComponent(String name, ExplanationOfBenefit.AdjudicationComponent element) throws IOException { 27200 if (element != null) { 27201 composeElementAttributes(element); 27202 xml.enter(FHIR_NS, name); 27203 composeExplanationOfBenefitAdjudicationComponentElements(element); 27204 composeElementClose(element); 27205 xml.exit(FHIR_NS, name); 27206 } 27207 } 27208 27209 protected void composeExplanationOfBenefitAdjudicationComponentElements(ExplanationOfBenefit.AdjudicationComponent element) throws IOException { 27210 composeBackboneElements(element); 27211 if (element.hasCategory()) { 27212 composeCodeableConcept("category", element.getCategory()); 27213 } 27214 if (element.hasReason()) { 27215 composeCodeableConcept("reason", element.getReason()); 27216 } 27217 if (element.hasAmount()) { 27218 composeMoney("amount", element.getAmount()); 27219 } 27220 if (element.hasValueElement()) { 27221 composeDecimal("value", element.getValueElement()); 27222 } 27223 } 27224 27225 protected void composeExplanationOfBenefitDetailComponent(String name, ExplanationOfBenefit.DetailComponent element) throws IOException { 27226 if (element != null) { 27227 composeElementAttributes(element); 27228 xml.enter(FHIR_NS, name); 27229 composeExplanationOfBenefitDetailComponentElements(element); 27230 composeElementClose(element); 27231 xml.exit(FHIR_NS, name); 27232 } 27233 } 27234 27235 protected void composeExplanationOfBenefitDetailComponentElements(ExplanationOfBenefit.DetailComponent element) throws IOException { 27236 composeBackboneElements(element); 27237 if (element.hasSequenceElement()) { 27238 composePositiveInt("sequence", element.getSequenceElement()); 27239 } 27240 if (element.hasType()) { 27241 composeCodeableConcept("type", element.getType()); 27242 } 27243 if (element.hasRevenue()) { 27244 composeCodeableConcept("revenue", element.getRevenue()); 27245 } 27246 if (element.hasCategory()) { 27247 composeCodeableConcept("category", element.getCategory()); 27248 } 27249 if (element.hasService()) { 27250 composeCodeableConcept("service", element.getService()); 27251 } 27252 if (element.hasModifier()) { 27253 for (CodeableConcept e : element.getModifier()) 27254 composeCodeableConcept("modifier", e); 27255 } 27256 if (element.hasProgramCode()) { 27257 for (CodeableConcept e : element.getProgramCode()) 27258 composeCodeableConcept("programCode", e); 27259 } 27260 if (element.hasQuantity()) { 27261 composeSimpleQuantity("quantity", element.getQuantity()); 27262 } 27263 if (element.hasUnitPrice()) { 27264 composeMoney("unitPrice", element.getUnitPrice()); 27265 } 27266 if (element.hasFactorElement()) { 27267 composeDecimal("factor", element.getFactorElement()); 27268 } 27269 if (element.hasNet()) { 27270 composeMoney("net", element.getNet()); 27271 } 27272 if (element.hasUdi()) { 27273 for (Reference e : element.getUdi()) 27274 composeReference("udi", e); 27275 } 27276 if (element.hasNoteNumber()) { 27277 for (PositiveIntType e : element.getNoteNumber()) 27278 composePositiveInt("noteNumber", e); 27279 } 27280 if (element.hasAdjudication()) { 27281 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27282 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27283 } 27284 if (element.hasSubDetail()) { 27285 for (ExplanationOfBenefit.SubDetailComponent e : element.getSubDetail()) 27286 composeExplanationOfBenefitSubDetailComponent("subDetail", e); 27287 } 27288 } 27289 27290 protected void composeExplanationOfBenefitSubDetailComponent(String name, ExplanationOfBenefit.SubDetailComponent element) throws IOException { 27291 if (element != null) { 27292 composeElementAttributes(element); 27293 xml.enter(FHIR_NS, name); 27294 composeExplanationOfBenefitSubDetailComponentElements(element); 27295 composeElementClose(element); 27296 xml.exit(FHIR_NS, name); 27297 } 27298 } 27299 27300 protected void composeExplanationOfBenefitSubDetailComponentElements(ExplanationOfBenefit.SubDetailComponent element) throws IOException { 27301 composeBackboneElements(element); 27302 if (element.hasSequenceElement()) { 27303 composePositiveInt("sequence", element.getSequenceElement()); 27304 } 27305 if (element.hasType()) { 27306 composeCodeableConcept("type", element.getType()); 27307 } 27308 if (element.hasRevenue()) { 27309 composeCodeableConcept("revenue", element.getRevenue()); 27310 } 27311 if (element.hasCategory()) { 27312 composeCodeableConcept("category", element.getCategory()); 27313 } 27314 if (element.hasService()) { 27315 composeCodeableConcept("service", element.getService()); 27316 } 27317 if (element.hasModifier()) { 27318 for (CodeableConcept e : element.getModifier()) 27319 composeCodeableConcept("modifier", e); 27320 } 27321 if (element.hasProgramCode()) { 27322 for (CodeableConcept e : element.getProgramCode()) 27323 composeCodeableConcept("programCode", e); 27324 } 27325 if (element.hasQuantity()) { 27326 composeSimpleQuantity("quantity", element.getQuantity()); 27327 } 27328 if (element.hasUnitPrice()) { 27329 composeMoney("unitPrice", element.getUnitPrice()); 27330 } 27331 if (element.hasFactorElement()) { 27332 composeDecimal("factor", element.getFactorElement()); 27333 } 27334 if (element.hasNet()) { 27335 composeMoney("net", element.getNet()); 27336 } 27337 if (element.hasUdi()) { 27338 for (Reference e : element.getUdi()) 27339 composeReference("udi", e); 27340 } 27341 if (element.hasNoteNumber()) { 27342 for (PositiveIntType e : element.getNoteNumber()) 27343 composePositiveInt("noteNumber", e); 27344 } 27345 if (element.hasAdjudication()) { 27346 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27347 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27348 } 27349 } 27350 27351 protected void composeExplanationOfBenefitAddedItemComponent(String name, ExplanationOfBenefit.AddedItemComponent element) throws IOException { 27352 if (element != null) { 27353 composeElementAttributes(element); 27354 xml.enter(FHIR_NS, name); 27355 composeExplanationOfBenefitAddedItemComponentElements(element); 27356 composeElementClose(element); 27357 xml.exit(FHIR_NS, name); 27358 } 27359 } 27360 27361 protected void composeExplanationOfBenefitAddedItemComponentElements(ExplanationOfBenefit.AddedItemComponent element) throws IOException { 27362 composeBackboneElements(element); 27363 if (element.hasSequenceLinkId()) { 27364 for (PositiveIntType e : element.getSequenceLinkId()) 27365 composePositiveInt("sequenceLinkId", e); 27366 } 27367 if (element.hasRevenue()) { 27368 composeCodeableConcept("revenue", element.getRevenue()); 27369 } 27370 if (element.hasCategory()) { 27371 composeCodeableConcept("category", element.getCategory()); 27372 } 27373 if (element.hasService()) { 27374 composeCodeableConcept("service", element.getService()); 27375 } 27376 if (element.hasModifier()) { 27377 for (CodeableConcept e : element.getModifier()) 27378 composeCodeableConcept("modifier", e); 27379 } 27380 if (element.hasFee()) { 27381 composeMoney("fee", element.getFee()); 27382 } 27383 if (element.hasNoteNumber()) { 27384 for (PositiveIntType e : element.getNoteNumber()) 27385 composePositiveInt("noteNumber", e); 27386 } 27387 if (element.hasAdjudication()) { 27388 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27389 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27390 } 27391 if (element.hasDetail()) { 27392 for (ExplanationOfBenefit.AddedItemsDetailComponent e : element.getDetail()) 27393 composeExplanationOfBenefitAddedItemsDetailComponent("detail", e); 27394 } 27395 } 27396 27397 protected void composeExplanationOfBenefitAddedItemsDetailComponent(String name, ExplanationOfBenefit.AddedItemsDetailComponent element) throws IOException { 27398 if (element != null) { 27399 composeElementAttributes(element); 27400 xml.enter(FHIR_NS, name); 27401 composeExplanationOfBenefitAddedItemsDetailComponentElements(element); 27402 composeElementClose(element); 27403 xml.exit(FHIR_NS, name); 27404 } 27405 } 27406 27407 protected void composeExplanationOfBenefitAddedItemsDetailComponentElements(ExplanationOfBenefit.AddedItemsDetailComponent element) throws IOException { 27408 composeBackboneElements(element); 27409 if (element.hasRevenue()) { 27410 composeCodeableConcept("revenue", element.getRevenue()); 27411 } 27412 if (element.hasCategory()) { 27413 composeCodeableConcept("category", element.getCategory()); 27414 } 27415 if (element.hasService()) { 27416 composeCodeableConcept("service", element.getService()); 27417 } 27418 if (element.hasModifier()) { 27419 for (CodeableConcept e : element.getModifier()) 27420 composeCodeableConcept("modifier", e); 27421 } 27422 if (element.hasFee()) { 27423 composeMoney("fee", element.getFee()); 27424 } 27425 if (element.hasNoteNumber()) { 27426 for (PositiveIntType e : element.getNoteNumber()) 27427 composePositiveInt("noteNumber", e); 27428 } 27429 if (element.hasAdjudication()) { 27430 for (ExplanationOfBenefit.AdjudicationComponent e : element.getAdjudication()) 27431 composeExplanationOfBenefitAdjudicationComponent("adjudication", e); 27432 } 27433 } 27434 27435 protected void composeExplanationOfBenefitPaymentComponent(String name, ExplanationOfBenefit.PaymentComponent element) throws IOException { 27436 if (element != null) { 27437 composeElementAttributes(element); 27438 xml.enter(FHIR_NS, name); 27439 composeExplanationOfBenefitPaymentComponentElements(element); 27440 composeElementClose(element); 27441 xml.exit(FHIR_NS, name); 27442 } 27443 } 27444 27445 protected void composeExplanationOfBenefitPaymentComponentElements(ExplanationOfBenefit.PaymentComponent element) throws IOException { 27446 composeBackboneElements(element); 27447 if (element.hasType()) { 27448 composeCodeableConcept("type", element.getType()); 27449 } 27450 if (element.hasAdjustment()) { 27451 composeMoney("adjustment", element.getAdjustment()); 27452 } 27453 if (element.hasAdjustmentReason()) { 27454 composeCodeableConcept("adjustmentReason", element.getAdjustmentReason()); 27455 } 27456 if (element.hasDateElement()) { 27457 composeDate("date", element.getDateElement()); 27458 } 27459 if (element.hasAmount()) { 27460 composeMoney("amount", element.getAmount()); 27461 } 27462 if (element.hasIdentifier()) { 27463 composeIdentifier("identifier", element.getIdentifier()); 27464 } 27465 } 27466 27467 protected void composeExplanationOfBenefitNoteComponent(String name, ExplanationOfBenefit.NoteComponent element) throws IOException { 27468 if (element != null) { 27469 composeElementAttributes(element); 27470 xml.enter(FHIR_NS, name); 27471 composeExplanationOfBenefitNoteComponentElements(element); 27472 composeElementClose(element); 27473 xml.exit(FHIR_NS, name); 27474 } 27475 } 27476 27477 protected void composeExplanationOfBenefitNoteComponentElements(ExplanationOfBenefit.NoteComponent element) throws IOException { 27478 composeBackboneElements(element); 27479 if (element.hasNumberElement()) { 27480 composePositiveInt("number", element.getNumberElement()); 27481 } 27482 if (element.hasType()) { 27483 composeCodeableConcept("type", element.getType()); 27484 } 27485 if (element.hasTextElement()) { 27486 composeString("text", element.getTextElement()); 27487 } 27488 if (element.hasLanguage()) { 27489 composeCodeableConcept("language", element.getLanguage()); 27490 } 27491 } 27492 27493 protected void composeExplanationOfBenefitBenefitBalanceComponent(String name, ExplanationOfBenefit.BenefitBalanceComponent element) throws IOException { 27494 if (element != null) { 27495 composeElementAttributes(element); 27496 xml.enter(FHIR_NS, name); 27497 composeExplanationOfBenefitBenefitBalanceComponentElements(element); 27498 composeElementClose(element); 27499 xml.exit(FHIR_NS, name); 27500 } 27501 } 27502 27503 protected void composeExplanationOfBenefitBenefitBalanceComponentElements(ExplanationOfBenefit.BenefitBalanceComponent element) throws IOException { 27504 composeBackboneElements(element); 27505 if (element.hasCategory()) { 27506 composeCodeableConcept("category", element.getCategory()); 27507 } 27508 if (element.hasSubCategory()) { 27509 composeCodeableConcept("subCategory", element.getSubCategory()); 27510 } 27511 if (element.hasExcludedElement()) { 27512 composeBoolean("excluded", element.getExcludedElement()); 27513 } 27514 if (element.hasNameElement()) { 27515 composeString("name", element.getNameElement()); 27516 } 27517 if (element.hasDescriptionElement()) { 27518 composeString("description", element.getDescriptionElement()); 27519 } 27520 if (element.hasNetwork()) { 27521 composeCodeableConcept("network", element.getNetwork()); 27522 } 27523 if (element.hasUnit()) { 27524 composeCodeableConcept("unit", element.getUnit()); 27525 } 27526 if (element.hasTerm()) { 27527 composeCodeableConcept("term", element.getTerm()); 27528 } 27529 if (element.hasFinancial()) { 27530 for (ExplanationOfBenefit.BenefitComponent e : element.getFinancial()) 27531 composeExplanationOfBenefitBenefitComponent("financial", e); 27532 } 27533 } 27534 27535 protected void composeExplanationOfBenefitBenefitComponent(String name, ExplanationOfBenefit.BenefitComponent element) throws IOException { 27536 if (element != null) { 27537 composeElementAttributes(element); 27538 xml.enter(FHIR_NS, name); 27539 composeExplanationOfBenefitBenefitComponentElements(element); 27540 composeElementClose(element); 27541 xml.exit(FHIR_NS, name); 27542 } 27543 } 27544 27545 protected void composeExplanationOfBenefitBenefitComponentElements(ExplanationOfBenefit.BenefitComponent element) throws IOException { 27546 composeBackboneElements(element); 27547 if (element.hasType()) { 27548 composeCodeableConcept("type", element.getType()); 27549 } 27550 if (element.hasAllowed()) { 27551 composeType("allowed", element.getAllowed()); 27552 } if (element.hasUsed()) { 27553 composeType("used", element.getUsed()); 27554 } } 27555 27556 protected void composeFamilyMemberHistory(String name, FamilyMemberHistory element) throws IOException { 27557 if (element != null) { 27558 composeDomainResourceAttributes(element); 27559 xml.enter(FHIR_NS, name); 27560 composeFamilyMemberHistoryElements(element); 27561 composeElementClose(element); 27562 xml.exit(FHIR_NS, name); 27563 } 27564 } 27565 27566 protected void composeFamilyMemberHistoryElements(FamilyMemberHistory element) throws IOException { 27567 composeDomainResourceElements(element); 27568 if (element.hasIdentifier()) { 27569 for (Identifier e : element.getIdentifier()) 27570 composeIdentifier("identifier", e); 27571 } 27572 if (element.hasDefinition()) { 27573 for (Reference e : element.getDefinition()) 27574 composeReference("definition", e); 27575 } 27576 if (element.hasStatusElement()) 27577 composeEnumeration("status", element.getStatusElement(), new FamilyMemberHistory.FamilyHistoryStatusEnumFactory()); 27578 if (element.hasNotDoneElement()) { 27579 composeBoolean("notDone", element.getNotDoneElement()); 27580 } 27581 if (element.hasNotDoneReason()) { 27582 composeCodeableConcept("notDoneReason", element.getNotDoneReason()); 27583 } 27584 if (element.hasPatient()) { 27585 composeReference("patient", element.getPatient()); 27586 } 27587 if (element.hasDateElement()) { 27588 composeDateTime("date", element.getDateElement()); 27589 } 27590 if (element.hasNameElement()) { 27591 composeString("name", element.getNameElement()); 27592 } 27593 if (element.hasRelationship()) { 27594 composeCodeableConcept("relationship", element.getRelationship()); 27595 } 27596 if (element.hasGenderElement()) 27597 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 27598 if (element.hasBorn()) { 27599 composeType("born", element.getBorn()); 27600 } if (element.hasAge()) { 27601 composeType("age", element.getAge()); 27602 } if (element.hasEstimatedAgeElement()) { 27603 composeBoolean("estimatedAge", element.getEstimatedAgeElement()); 27604 } 27605 if (element.hasDeceased()) { 27606 composeType("deceased", element.getDeceased()); 27607 } if (element.hasReasonCode()) { 27608 for (CodeableConcept e : element.getReasonCode()) 27609 composeCodeableConcept("reasonCode", e); 27610 } 27611 if (element.hasReasonReference()) { 27612 for (Reference e : element.getReasonReference()) 27613 composeReference("reasonReference", e); 27614 } 27615 if (element.hasNote()) { 27616 for (Annotation e : element.getNote()) 27617 composeAnnotation("note", e); 27618 } 27619 if (element.hasCondition()) { 27620 for (FamilyMemberHistory.FamilyMemberHistoryConditionComponent e : element.getCondition()) 27621 composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent("condition", e); 27622 } 27623 } 27624 27625 protected void composeFamilyMemberHistoryFamilyMemberHistoryConditionComponent(String name, FamilyMemberHistory.FamilyMemberHistoryConditionComponent element) throws IOException { 27626 if (element != null) { 27627 composeElementAttributes(element); 27628 xml.enter(FHIR_NS, name); 27629 composeFamilyMemberHistoryFamilyMemberHistoryConditionComponentElements(element); 27630 composeElementClose(element); 27631 xml.exit(FHIR_NS, name); 27632 } 27633 } 27634 27635 protected void composeFamilyMemberHistoryFamilyMemberHistoryConditionComponentElements(FamilyMemberHistory.FamilyMemberHistoryConditionComponent element) throws IOException { 27636 composeBackboneElements(element); 27637 if (element.hasCode()) { 27638 composeCodeableConcept("code", element.getCode()); 27639 } 27640 if (element.hasOutcome()) { 27641 composeCodeableConcept("outcome", element.getOutcome()); 27642 } 27643 if (element.hasOnset()) { 27644 composeType("onset", element.getOnset()); 27645 } if (element.hasNote()) { 27646 for (Annotation e : element.getNote()) 27647 composeAnnotation("note", e); 27648 } 27649 } 27650 27651 protected void composeFlag(String name, Flag element) throws IOException { 27652 if (element != null) { 27653 composeDomainResourceAttributes(element); 27654 xml.enter(FHIR_NS, name); 27655 composeFlagElements(element); 27656 composeElementClose(element); 27657 xml.exit(FHIR_NS, name); 27658 } 27659 } 27660 27661 protected void composeFlagElements(Flag element) throws IOException { 27662 composeDomainResourceElements(element); 27663 if (element.hasIdentifier()) { 27664 for (Identifier e : element.getIdentifier()) 27665 composeIdentifier("identifier", e); 27666 } 27667 if (element.hasStatusElement()) 27668 composeEnumeration("status", element.getStatusElement(), new Flag.FlagStatusEnumFactory()); 27669 if (element.hasCategory()) { 27670 composeCodeableConcept("category", element.getCategory()); 27671 } 27672 if (element.hasCode()) { 27673 composeCodeableConcept("code", element.getCode()); 27674 } 27675 if (element.hasSubject()) { 27676 composeReference("subject", element.getSubject()); 27677 } 27678 if (element.hasPeriod()) { 27679 composePeriod("period", element.getPeriod()); 27680 } 27681 if (element.hasEncounter()) { 27682 composeReference("encounter", element.getEncounter()); 27683 } 27684 if (element.hasAuthor()) { 27685 composeReference("author", element.getAuthor()); 27686 } 27687 } 27688 27689 protected void composeGoal(String name, Goal element) throws IOException { 27690 if (element != null) { 27691 composeDomainResourceAttributes(element); 27692 xml.enter(FHIR_NS, name); 27693 composeGoalElements(element); 27694 composeElementClose(element); 27695 xml.exit(FHIR_NS, name); 27696 } 27697 } 27698 27699 protected void composeGoalElements(Goal element) throws IOException { 27700 composeDomainResourceElements(element); 27701 if (element.hasIdentifier()) { 27702 for (Identifier e : element.getIdentifier()) 27703 composeIdentifier("identifier", e); 27704 } 27705 if (element.hasStatusElement()) 27706 composeEnumeration("status", element.getStatusElement(), new Goal.GoalStatusEnumFactory()); 27707 if (element.hasCategory()) { 27708 for (CodeableConcept e : element.getCategory()) 27709 composeCodeableConcept("category", e); 27710 } 27711 if (element.hasPriority()) { 27712 composeCodeableConcept("priority", element.getPriority()); 27713 } 27714 if (element.hasDescription()) { 27715 composeCodeableConcept("description", element.getDescription()); 27716 } 27717 if (element.hasSubject()) { 27718 composeReference("subject", element.getSubject()); 27719 } 27720 if (element.hasStart()) { 27721 composeType("start", element.getStart()); 27722 } if (element.hasTarget()) { 27723 composeGoalGoalTargetComponent("target", element.getTarget()); 27724 } 27725 if (element.hasStatusDateElement()) { 27726 composeDate("statusDate", element.getStatusDateElement()); 27727 } 27728 if (element.hasStatusReasonElement()) { 27729 composeString("statusReason", element.getStatusReasonElement()); 27730 } 27731 if (element.hasExpressedBy()) { 27732 composeReference("expressedBy", element.getExpressedBy()); 27733 } 27734 if (element.hasAddresses()) { 27735 for (Reference e : element.getAddresses()) 27736 composeReference("addresses", e); 27737 } 27738 if (element.hasNote()) { 27739 for (Annotation e : element.getNote()) 27740 composeAnnotation("note", e); 27741 } 27742 if (element.hasOutcomeCode()) { 27743 for (CodeableConcept e : element.getOutcomeCode()) 27744 composeCodeableConcept("outcomeCode", e); 27745 } 27746 if (element.hasOutcomeReference()) { 27747 for (Reference e : element.getOutcomeReference()) 27748 composeReference("outcomeReference", e); 27749 } 27750 } 27751 27752 protected void composeGoalGoalTargetComponent(String name, Goal.GoalTargetComponent element) throws IOException { 27753 if (element != null) { 27754 composeElementAttributes(element); 27755 xml.enter(FHIR_NS, name); 27756 composeGoalGoalTargetComponentElements(element); 27757 composeElementClose(element); 27758 xml.exit(FHIR_NS, name); 27759 } 27760 } 27761 27762 protected void composeGoalGoalTargetComponentElements(Goal.GoalTargetComponent element) throws IOException { 27763 composeBackboneElements(element); 27764 if (element.hasMeasure()) { 27765 composeCodeableConcept("measure", element.getMeasure()); 27766 } 27767 if (element.hasDetail()) { 27768 composeType("detail", element.getDetail()); 27769 } if (element.hasDue()) { 27770 composeType("due", element.getDue()); 27771 } } 27772 27773 protected void composeGraphDefinition(String name, GraphDefinition element) throws IOException { 27774 if (element != null) { 27775 composeDomainResourceAttributes(element); 27776 xml.enter(FHIR_NS, name); 27777 composeGraphDefinitionElements(element); 27778 composeElementClose(element); 27779 xml.exit(FHIR_NS, name); 27780 } 27781 } 27782 27783 protected void composeGraphDefinitionElements(GraphDefinition element) throws IOException { 27784 composeDomainResourceElements(element); 27785 if (element.hasUrlElement()) { 27786 composeUri("url", element.getUrlElement()); 27787 } 27788 if (element.hasVersionElement()) { 27789 composeString("version", element.getVersionElement()); 27790 } 27791 if (element.hasNameElement()) { 27792 composeString("name", element.getNameElement()); 27793 } 27794 if (element.hasStatusElement()) 27795 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 27796 if (element.hasExperimentalElement()) { 27797 composeBoolean("experimental", element.getExperimentalElement()); 27798 } 27799 if (element.hasDateElement()) { 27800 composeDateTime("date", element.getDateElement()); 27801 } 27802 if (element.hasPublisherElement()) { 27803 composeString("publisher", element.getPublisherElement()); 27804 } 27805 if (element.hasContact()) { 27806 for (ContactDetail e : element.getContact()) 27807 composeContactDetail("contact", e); 27808 } 27809 if (element.hasDescriptionElement()) { 27810 composeMarkdown("description", element.getDescriptionElement()); 27811 } 27812 if (element.hasUseContext()) { 27813 for (UsageContext e : element.getUseContext()) 27814 composeUsageContext("useContext", e); 27815 } 27816 if (element.hasJurisdiction()) { 27817 for (CodeableConcept e : element.getJurisdiction()) 27818 composeCodeableConcept("jurisdiction", e); 27819 } 27820 if (element.hasPurposeElement()) { 27821 composeMarkdown("purpose", element.getPurposeElement()); 27822 } 27823 if (element.hasStartElement()) { 27824 composeCode("start", element.getStartElement()); 27825 } 27826 if (element.hasProfileElement()) { 27827 composeUri("profile", element.getProfileElement()); 27828 } 27829 if (element.hasLink()) { 27830 for (GraphDefinition.GraphDefinitionLinkComponent e : element.getLink()) 27831 composeGraphDefinitionGraphDefinitionLinkComponent("link", e); 27832 } 27833 } 27834 27835 protected void composeGraphDefinitionGraphDefinitionLinkComponent(String name, GraphDefinition.GraphDefinitionLinkComponent element) throws IOException { 27836 if (element != null) { 27837 composeElementAttributes(element); 27838 xml.enter(FHIR_NS, name); 27839 composeGraphDefinitionGraphDefinitionLinkComponentElements(element); 27840 composeElementClose(element); 27841 xml.exit(FHIR_NS, name); 27842 } 27843 } 27844 27845 protected void composeGraphDefinitionGraphDefinitionLinkComponentElements(GraphDefinition.GraphDefinitionLinkComponent element) throws IOException { 27846 composeBackboneElements(element); 27847 if (element.hasPathElement()) { 27848 composeString("path", element.getPathElement()); 27849 } 27850 if (element.hasSliceNameElement()) { 27851 composeString("sliceName", element.getSliceNameElement()); 27852 } 27853 if (element.hasMinElement()) { 27854 composeInteger("min", element.getMinElement()); 27855 } 27856 if (element.hasMaxElement()) { 27857 composeString("max", element.getMaxElement()); 27858 } 27859 if (element.hasDescriptionElement()) { 27860 composeString("description", element.getDescriptionElement()); 27861 } 27862 if (element.hasTarget()) { 27863 for (GraphDefinition.GraphDefinitionLinkTargetComponent e : element.getTarget()) 27864 composeGraphDefinitionGraphDefinitionLinkTargetComponent("target", e); 27865 } 27866 } 27867 27868 protected void composeGraphDefinitionGraphDefinitionLinkTargetComponent(String name, GraphDefinition.GraphDefinitionLinkTargetComponent element) throws IOException { 27869 if (element != null) { 27870 composeElementAttributes(element); 27871 xml.enter(FHIR_NS, name); 27872 composeGraphDefinitionGraphDefinitionLinkTargetComponentElements(element); 27873 composeElementClose(element); 27874 xml.exit(FHIR_NS, name); 27875 } 27876 } 27877 27878 protected void composeGraphDefinitionGraphDefinitionLinkTargetComponentElements(GraphDefinition.GraphDefinitionLinkTargetComponent element) throws IOException { 27879 composeBackboneElements(element); 27880 if (element.hasTypeElement()) { 27881 composeCode("type", element.getTypeElement()); 27882 } 27883 if (element.hasProfileElement()) { 27884 composeUri("profile", element.getProfileElement()); 27885 } 27886 if (element.hasCompartment()) { 27887 for (GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent e : element.getCompartment()) 27888 composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent("compartment", e); 27889 } 27890 if (element.hasLink()) { 27891 for (GraphDefinition.GraphDefinitionLinkComponent e : element.getLink()) 27892 composeGraphDefinitionGraphDefinitionLinkComponent("link", e); 27893 } 27894 } 27895 27896 protected void composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponent(String name, GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent element) throws IOException { 27897 if (element != null) { 27898 composeElementAttributes(element); 27899 xml.enter(FHIR_NS, name); 27900 composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponentElements(element); 27901 composeElementClose(element); 27902 xml.exit(FHIR_NS, name); 27903 } 27904 } 27905 27906 protected void composeGraphDefinitionGraphDefinitionLinkTargetCompartmentComponentElements(GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent element) throws IOException { 27907 composeBackboneElements(element); 27908 if (element.hasCodeElement()) 27909 composeEnumeration("code", element.getCodeElement(), new GraphDefinition.CompartmentCodeEnumFactory()); 27910 if (element.hasRuleElement()) 27911 composeEnumeration("rule", element.getRuleElement(), new GraphDefinition.GraphCompartmentRuleEnumFactory()); 27912 if (element.hasExpressionElement()) { 27913 composeString("expression", element.getExpressionElement()); 27914 } 27915 if (element.hasDescriptionElement()) { 27916 composeString("description", element.getDescriptionElement()); 27917 } 27918 } 27919 27920 protected void composeGroup(String name, Group element) throws IOException { 27921 if (element != null) { 27922 composeDomainResourceAttributes(element); 27923 xml.enter(FHIR_NS, name); 27924 composeGroupElements(element); 27925 composeElementClose(element); 27926 xml.exit(FHIR_NS, name); 27927 } 27928 } 27929 27930 protected void composeGroupElements(Group element) throws IOException { 27931 composeDomainResourceElements(element); 27932 if (element.hasIdentifier()) { 27933 for (Identifier e : element.getIdentifier()) 27934 composeIdentifier("identifier", e); 27935 } 27936 if (element.hasActiveElement()) { 27937 composeBoolean("active", element.getActiveElement()); 27938 } 27939 if (element.hasTypeElement()) 27940 composeEnumeration("type", element.getTypeElement(), new Group.GroupTypeEnumFactory()); 27941 if (element.hasActualElement()) { 27942 composeBoolean("actual", element.getActualElement()); 27943 } 27944 if (element.hasCode()) { 27945 composeCodeableConcept("code", element.getCode()); 27946 } 27947 if (element.hasNameElement()) { 27948 composeString("name", element.getNameElement()); 27949 } 27950 if (element.hasQuantityElement()) { 27951 composeUnsignedInt("quantity", element.getQuantityElement()); 27952 } 27953 if (element.hasCharacteristic()) { 27954 for (Group.GroupCharacteristicComponent e : element.getCharacteristic()) 27955 composeGroupGroupCharacteristicComponent("characteristic", e); 27956 } 27957 if (element.hasMember()) { 27958 for (Group.GroupMemberComponent e : element.getMember()) 27959 composeGroupGroupMemberComponent("member", e); 27960 } 27961 } 27962 27963 protected void composeGroupGroupCharacteristicComponent(String name, Group.GroupCharacteristicComponent element) throws IOException { 27964 if (element != null) { 27965 composeElementAttributes(element); 27966 xml.enter(FHIR_NS, name); 27967 composeGroupGroupCharacteristicComponentElements(element); 27968 composeElementClose(element); 27969 xml.exit(FHIR_NS, name); 27970 } 27971 } 27972 27973 protected void composeGroupGroupCharacteristicComponentElements(Group.GroupCharacteristicComponent element) throws IOException { 27974 composeBackboneElements(element); 27975 if (element.hasCode()) { 27976 composeCodeableConcept("code", element.getCode()); 27977 } 27978 if (element.hasValue()) { 27979 composeType("value", element.getValue()); 27980 } if (element.hasExcludeElement()) { 27981 composeBoolean("exclude", element.getExcludeElement()); 27982 } 27983 if (element.hasPeriod()) { 27984 composePeriod("period", element.getPeriod()); 27985 } 27986 } 27987 27988 protected void composeGroupGroupMemberComponent(String name, Group.GroupMemberComponent element) throws IOException { 27989 if (element != null) { 27990 composeElementAttributes(element); 27991 xml.enter(FHIR_NS, name); 27992 composeGroupGroupMemberComponentElements(element); 27993 composeElementClose(element); 27994 xml.exit(FHIR_NS, name); 27995 } 27996 } 27997 27998 protected void composeGroupGroupMemberComponentElements(Group.GroupMemberComponent element) throws IOException { 27999 composeBackboneElements(element); 28000 if (element.hasEntity()) { 28001 composeReference("entity", element.getEntity()); 28002 } 28003 if (element.hasPeriod()) { 28004 composePeriod("period", element.getPeriod()); 28005 } 28006 if (element.hasInactiveElement()) { 28007 composeBoolean("inactive", element.getInactiveElement()); 28008 } 28009 } 28010 28011 protected void composeGuidanceResponse(String name, GuidanceResponse element) throws IOException { 28012 if (element != null) { 28013 composeDomainResourceAttributes(element); 28014 xml.enter(FHIR_NS, name); 28015 composeGuidanceResponseElements(element); 28016 composeElementClose(element); 28017 xml.exit(FHIR_NS, name); 28018 } 28019 } 28020 28021 protected void composeGuidanceResponseElements(GuidanceResponse element) throws IOException { 28022 composeDomainResourceElements(element); 28023 if (element.hasRequestIdElement()) { 28024 composeId("requestId", element.getRequestIdElement()); 28025 } 28026 if (element.hasIdentifier()) { 28027 composeIdentifier("identifier", element.getIdentifier()); 28028 } 28029 if (element.hasModule()) { 28030 composeReference("module", element.getModule()); 28031 } 28032 if (element.hasStatusElement()) 28033 composeEnumeration("status", element.getStatusElement(), new GuidanceResponse.GuidanceResponseStatusEnumFactory()); 28034 if (element.hasSubject()) { 28035 composeReference("subject", element.getSubject()); 28036 } 28037 if (element.hasContext()) { 28038 composeReference("context", element.getContext()); 28039 } 28040 if (element.hasOccurrenceDateTimeElement()) { 28041 composeDateTime("occurrenceDateTime", element.getOccurrenceDateTimeElement()); 28042 } 28043 if (element.hasPerformer()) { 28044 composeReference("performer", element.getPerformer()); 28045 } 28046 if (element.hasReason()) { 28047 composeType("reason", element.getReason()); 28048 } if (element.hasNote()) { 28049 for (Annotation e : element.getNote()) 28050 composeAnnotation("note", e); 28051 } 28052 if (element.hasEvaluationMessage()) { 28053 for (Reference e : element.getEvaluationMessage()) 28054 composeReference("evaluationMessage", e); 28055 } 28056 if (element.hasOutputParameters()) { 28057 composeReference("outputParameters", element.getOutputParameters()); 28058 } 28059 if (element.hasResult()) { 28060 composeReference("result", element.getResult()); 28061 } 28062 if (element.hasDataRequirement()) { 28063 for (DataRequirement e : element.getDataRequirement()) 28064 composeDataRequirement("dataRequirement", e); 28065 } 28066 } 28067 28068 protected void composeHealthcareService(String name, HealthcareService element) throws IOException { 28069 if (element != null) { 28070 composeDomainResourceAttributes(element); 28071 xml.enter(FHIR_NS, name); 28072 composeHealthcareServiceElements(element); 28073 composeElementClose(element); 28074 xml.exit(FHIR_NS, name); 28075 } 28076 } 28077 28078 protected void composeHealthcareServiceElements(HealthcareService element) throws IOException { 28079 composeDomainResourceElements(element); 28080 if (element.hasIdentifier()) { 28081 for (Identifier e : element.getIdentifier()) 28082 composeIdentifier("identifier", e); 28083 } 28084 if (element.hasActiveElement()) { 28085 composeBoolean("active", element.getActiveElement()); 28086 } 28087 if (element.hasProvidedBy()) { 28088 composeReference("providedBy", element.getProvidedBy()); 28089 } 28090 if (element.hasCategory()) { 28091 composeCodeableConcept("category", element.getCategory()); 28092 } 28093 if (element.hasType()) { 28094 for (CodeableConcept e : element.getType()) 28095 composeCodeableConcept("type", e); 28096 } 28097 if (element.hasSpecialty()) { 28098 for (CodeableConcept e : element.getSpecialty()) 28099 composeCodeableConcept("specialty", e); 28100 } 28101 if (element.hasLocation()) { 28102 for (Reference e : element.getLocation()) 28103 composeReference("location", e); 28104 } 28105 if (element.hasNameElement()) { 28106 composeString("name", element.getNameElement()); 28107 } 28108 if (element.hasCommentElement()) { 28109 composeString("comment", element.getCommentElement()); 28110 } 28111 if (element.hasExtraDetailsElement()) { 28112 composeString("extraDetails", element.getExtraDetailsElement()); 28113 } 28114 if (element.hasPhoto()) { 28115 composeAttachment("photo", element.getPhoto()); 28116 } 28117 if (element.hasTelecom()) { 28118 for (ContactPoint e : element.getTelecom()) 28119 composeContactPoint("telecom", e); 28120 } 28121 if (element.hasCoverageArea()) { 28122 for (Reference e : element.getCoverageArea()) 28123 composeReference("coverageArea", e); 28124 } 28125 if (element.hasServiceProvisionCode()) { 28126 for (CodeableConcept e : element.getServiceProvisionCode()) 28127 composeCodeableConcept("serviceProvisionCode", e); 28128 } 28129 if (element.hasEligibility()) { 28130 composeCodeableConcept("eligibility", element.getEligibility()); 28131 } 28132 if (element.hasEligibilityNoteElement()) { 28133 composeString("eligibilityNote", element.getEligibilityNoteElement()); 28134 } 28135 if (element.hasProgramName()) { 28136 for (StringType e : element.getProgramName()) 28137 composeString("programName", e); 28138 } 28139 if (element.hasCharacteristic()) { 28140 for (CodeableConcept e : element.getCharacteristic()) 28141 composeCodeableConcept("characteristic", e); 28142 } 28143 if (element.hasReferralMethod()) { 28144 for (CodeableConcept e : element.getReferralMethod()) 28145 composeCodeableConcept("referralMethod", e); 28146 } 28147 if (element.hasAppointmentRequiredElement()) { 28148 composeBoolean("appointmentRequired", element.getAppointmentRequiredElement()); 28149 } 28150 if (element.hasAvailableTime()) { 28151 for (HealthcareService.HealthcareServiceAvailableTimeComponent e : element.getAvailableTime()) 28152 composeHealthcareServiceHealthcareServiceAvailableTimeComponent("availableTime", e); 28153 } 28154 if (element.hasNotAvailable()) { 28155 for (HealthcareService.HealthcareServiceNotAvailableComponent e : element.getNotAvailable()) 28156 composeHealthcareServiceHealthcareServiceNotAvailableComponent("notAvailable", e); 28157 } 28158 if (element.hasAvailabilityExceptionsElement()) { 28159 composeString("availabilityExceptions", element.getAvailabilityExceptionsElement()); 28160 } 28161 if (element.hasEndpoint()) { 28162 for (Reference e : element.getEndpoint()) 28163 composeReference("endpoint", e); 28164 } 28165 } 28166 28167 protected void composeHealthcareServiceHealthcareServiceAvailableTimeComponent(String name, HealthcareService.HealthcareServiceAvailableTimeComponent element) throws IOException { 28168 if (element != null) { 28169 composeElementAttributes(element); 28170 xml.enter(FHIR_NS, name); 28171 composeHealthcareServiceHealthcareServiceAvailableTimeComponentElements(element); 28172 composeElementClose(element); 28173 xml.exit(FHIR_NS, name); 28174 } 28175 } 28176 28177 protected void composeHealthcareServiceHealthcareServiceAvailableTimeComponentElements(HealthcareService.HealthcareServiceAvailableTimeComponent element) throws IOException { 28178 composeBackboneElements(element); 28179 if (element.hasDaysOfWeek()) 28180 for (Enumeration<HealthcareService.DaysOfWeek> e : element.getDaysOfWeek()) 28181 composeEnumeration("daysOfWeek", e, new HealthcareService.DaysOfWeekEnumFactory()); 28182 if (element.hasAllDayElement()) { 28183 composeBoolean("allDay", element.getAllDayElement()); 28184 } 28185 if (element.hasAvailableStartTimeElement()) { 28186 composeTime("availableStartTime", element.getAvailableStartTimeElement()); 28187 } 28188 if (element.hasAvailableEndTimeElement()) { 28189 composeTime("availableEndTime", element.getAvailableEndTimeElement()); 28190 } 28191 } 28192 28193 protected void composeHealthcareServiceHealthcareServiceNotAvailableComponent(String name, HealthcareService.HealthcareServiceNotAvailableComponent element) throws IOException { 28194 if (element != null) { 28195 composeElementAttributes(element); 28196 xml.enter(FHIR_NS, name); 28197 composeHealthcareServiceHealthcareServiceNotAvailableComponentElements(element); 28198 composeElementClose(element); 28199 xml.exit(FHIR_NS, name); 28200 } 28201 } 28202 28203 protected void composeHealthcareServiceHealthcareServiceNotAvailableComponentElements(HealthcareService.HealthcareServiceNotAvailableComponent element) throws IOException { 28204 composeBackboneElements(element); 28205 if (element.hasDescriptionElement()) { 28206 composeString("description", element.getDescriptionElement()); 28207 } 28208 if (element.hasDuring()) { 28209 composePeriod("during", element.getDuring()); 28210 } 28211 } 28212 28213 protected void composeImagingManifest(String name, ImagingManifest element) throws IOException { 28214 if (element != null) { 28215 composeDomainResourceAttributes(element); 28216 xml.enter(FHIR_NS, name); 28217 composeImagingManifestElements(element); 28218 composeElementClose(element); 28219 xml.exit(FHIR_NS, name); 28220 } 28221 } 28222 28223 protected void composeImagingManifestElements(ImagingManifest element) throws IOException { 28224 composeDomainResourceElements(element); 28225 if (element.hasIdentifier()) { 28226 composeIdentifier("identifier", element.getIdentifier()); 28227 } 28228 if (element.hasPatient()) { 28229 composeReference("patient", element.getPatient()); 28230 } 28231 if (element.hasAuthoringTimeElement()) { 28232 composeDateTime("authoringTime", element.getAuthoringTimeElement()); 28233 } 28234 if (element.hasAuthor()) { 28235 composeReference("author", element.getAuthor()); 28236 } 28237 if (element.hasDescriptionElement()) { 28238 composeString("description", element.getDescriptionElement()); 28239 } 28240 if (element.hasStudy()) { 28241 for (ImagingManifest.StudyComponent e : element.getStudy()) 28242 composeImagingManifestStudyComponent("study", e); 28243 } 28244 } 28245 28246 protected void composeImagingManifestStudyComponent(String name, ImagingManifest.StudyComponent element) throws IOException { 28247 if (element != null) { 28248 composeElementAttributes(element); 28249 xml.enter(FHIR_NS, name); 28250 composeImagingManifestStudyComponentElements(element); 28251 composeElementClose(element); 28252 xml.exit(FHIR_NS, name); 28253 } 28254 } 28255 28256 protected void composeImagingManifestStudyComponentElements(ImagingManifest.StudyComponent element) throws IOException { 28257 composeBackboneElements(element); 28258 if (element.hasUidElement()) { 28259 composeOid("uid", element.getUidElement()); 28260 } 28261 if (element.hasImagingStudy()) { 28262 composeReference("imagingStudy", element.getImagingStudy()); 28263 } 28264 if (element.hasEndpoint()) { 28265 for (Reference e : element.getEndpoint()) 28266 composeReference("endpoint", e); 28267 } 28268 if (element.hasSeries()) { 28269 for (ImagingManifest.SeriesComponent e : element.getSeries()) 28270 composeImagingManifestSeriesComponent("series", e); 28271 } 28272 } 28273 28274 protected void composeImagingManifestSeriesComponent(String name, ImagingManifest.SeriesComponent element) throws IOException { 28275 if (element != null) { 28276 composeElementAttributes(element); 28277 xml.enter(FHIR_NS, name); 28278 composeImagingManifestSeriesComponentElements(element); 28279 composeElementClose(element); 28280 xml.exit(FHIR_NS, name); 28281 } 28282 } 28283 28284 protected void composeImagingManifestSeriesComponentElements(ImagingManifest.SeriesComponent element) throws IOException { 28285 composeBackboneElements(element); 28286 if (element.hasUidElement()) { 28287 composeOid("uid", element.getUidElement()); 28288 } 28289 if (element.hasEndpoint()) { 28290 for (Reference e : element.getEndpoint()) 28291 composeReference("endpoint", e); 28292 } 28293 if (element.hasInstance()) { 28294 for (ImagingManifest.InstanceComponent e : element.getInstance()) 28295 composeImagingManifestInstanceComponent("instance", e); 28296 } 28297 } 28298 28299 protected void composeImagingManifestInstanceComponent(String name, ImagingManifest.InstanceComponent element) throws IOException { 28300 if (element != null) { 28301 composeElementAttributes(element); 28302 xml.enter(FHIR_NS, name); 28303 composeImagingManifestInstanceComponentElements(element); 28304 composeElementClose(element); 28305 xml.exit(FHIR_NS, name); 28306 } 28307 } 28308 28309 protected void composeImagingManifestInstanceComponentElements(ImagingManifest.InstanceComponent element) throws IOException { 28310 composeBackboneElements(element); 28311 if (element.hasSopClassElement()) { 28312 composeOid("sopClass", element.getSopClassElement()); 28313 } 28314 if (element.hasUidElement()) { 28315 composeOid("uid", element.getUidElement()); 28316 } 28317 } 28318 28319 protected void composeImagingStudy(String name, ImagingStudy element) throws IOException { 28320 if (element != null) { 28321 composeDomainResourceAttributes(element); 28322 xml.enter(FHIR_NS, name); 28323 composeImagingStudyElements(element); 28324 composeElementClose(element); 28325 xml.exit(FHIR_NS, name); 28326 } 28327 } 28328 28329 protected void composeImagingStudyElements(ImagingStudy element) throws IOException { 28330 composeDomainResourceElements(element); 28331 if (element.hasUidElement()) { 28332 composeOid("uid", element.getUidElement()); 28333 } 28334 if (element.hasAccession()) { 28335 composeIdentifier("accession", element.getAccession()); 28336 } 28337 if (element.hasIdentifier()) { 28338 for (Identifier e : element.getIdentifier()) 28339 composeIdentifier("identifier", e); 28340 } 28341 if (element.hasAvailabilityElement()) 28342 composeEnumeration("availability", element.getAvailabilityElement(), new ImagingStudy.InstanceAvailabilityEnumFactory()); 28343 if (element.hasModalityList()) { 28344 for (Coding e : element.getModalityList()) 28345 composeCoding("modalityList", e); 28346 } 28347 if (element.hasPatient()) { 28348 composeReference("patient", element.getPatient()); 28349 } 28350 if (element.hasContext()) { 28351 composeReference("context", element.getContext()); 28352 } 28353 if (element.hasStartedElement()) { 28354 composeDateTime("started", element.getStartedElement()); 28355 } 28356 if (element.hasBasedOn()) { 28357 for (Reference e : element.getBasedOn()) 28358 composeReference("basedOn", e); 28359 } 28360 if (element.hasReferrer()) { 28361 composeReference("referrer", element.getReferrer()); 28362 } 28363 if (element.hasInterpreter()) { 28364 for (Reference e : element.getInterpreter()) 28365 composeReference("interpreter", e); 28366 } 28367 if (element.hasEndpoint()) { 28368 for (Reference e : element.getEndpoint()) 28369 composeReference("endpoint", e); 28370 } 28371 if (element.hasNumberOfSeriesElement()) { 28372 composeUnsignedInt("numberOfSeries", element.getNumberOfSeriesElement()); 28373 } 28374 if (element.hasNumberOfInstancesElement()) { 28375 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 28376 } 28377 if (element.hasProcedureReference()) { 28378 for (Reference e : element.getProcedureReference()) 28379 composeReference("procedureReference", e); 28380 } 28381 if (element.hasProcedureCode()) { 28382 for (CodeableConcept e : element.getProcedureCode()) 28383 composeCodeableConcept("procedureCode", e); 28384 } 28385 if (element.hasReason()) { 28386 composeCodeableConcept("reason", element.getReason()); 28387 } 28388 if (element.hasDescriptionElement()) { 28389 composeString("description", element.getDescriptionElement()); 28390 } 28391 if (element.hasSeries()) { 28392 for (ImagingStudy.ImagingStudySeriesComponent e : element.getSeries()) 28393 composeImagingStudyImagingStudySeriesComponent("series", e); 28394 } 28395 } 28396 28397 protected void composeImagingStudyImagingStudySeriesComponent(String name, ImagingStudy.ImagingStudySeriesComponent element) throws IOException { 28398 if (element != null) { 28399 composeElementAttributes(element); 28400 xml.enter(FHIR_NS, name); 28401 composeImagingStudyImagingStudySeriesComponentElements(element); 28402 composeElementClose(element); 28403 xml.exit(FHIR_NS, name); 28404 } 28405 } 28406 28407 protected void composeImagingStudyImagingStudySeriesComponentElements(ImagingStudy.ImagingStudySeriesComponent element) throws IOException { 28408 composeBackboneElements(element); 28409 if (element.hasUidElement()) { 28410 composeOid("uid", element.getUidElement()); 28411 } 28412 if (element.hasNumberElement()) { 28413 composeUnsignedInt("number", element.getNumberElement()); 28414 } 28415 if (element.hasModality()) { 28416 composeCoding("modality", element.getModality()); 28417 } 28418 if (element.hasDescriptionElement()) { 28419 composeString("description", element.getDescriptionElement()); 28420 } 28421 if (element.hasNumberOfInstancesElement()) { 28422 composeUnsignedInt("numberOfInstances", element.getNumberOfInstancesElement()); 28423 } 28424 if (element.hasAvailabilityElement()) 28425 composeEnumeration("availability", element.getAvailabilityElement(), new ImagingStudy.InstanceAvailabilityEnumFactory()); 28426 if (element.hasEndpoint()) { 28427 for (Reference e : element.getEndpoint()) 28428 composeReference("endpoint", e); 28429 } 28430 if (element.hasBodySite()) { 28431 composeCoding("bodySite", element.getBodySite()); 28432 } 28433 if (element.hasLaterality()) { 28434 composeCoding("laterality", element.getLaterality()); 28435 } 28436 if (element.hasStartedElement()) { 28437 composeDateTime("started", element.getStartedElement()); 28438 } 28439 if (element.hasPerformer()) { 28440 for (Reference e : element.getPerformer()) 28441 composeReference("performer", e); 28442 } 28443 if (element.hasInstance()) { 28444 for (ImagingStudy.ImagingStudySeriesInstanceComponent e : element.getInstance()) 28445 composeImagingStudyImagingStudySeriesInstanceComponent("instance", e); 28446 } 28447 } 28448 28449 protected void composeImagingStudyImagingStudySeriesInstanceComponent(String name, ImagingStudy.ImagingStudySeriesInstanceComponent element) throws IOException { 28450 if (element != null) { 28451 composeElementAttributes(element); 28452 xml.enter(FHIR_NS, name); 28453 composeImagingStudyImagingStudySeriesInstanceComponentElements(element); 28454 composeElementClose(element); 28455 xml.exit(FHIR_NS, name); 28456 } 28457 } 28458 28459 protected void composeImagingStudyImagingStudySeriesInstanceComponentElements(ImagingStudy.ImagingStudySeriesInstanceComponent element) throws IOException { 28460 composeBackboneElements(element); 28461 if (element.hasUidElement()) { 28462 composeOid("uid", element.getUidElement()); 28463 } 28464 if (element.hasNumberElement()) { 28465 composeUnsignedInt("number", element.getNumberElement()); 28466 } 28467 if (element.hasSopClassElement()) { 28468 composeOid("sopClass", element.getSopClassElement()); 28469 } 28470 if (element.hasTitleElement()) { 28471 composeString("title", element.getTitleElement()); 28472 } 28473 } 28474 28475 protected void composeImmunization(String name, Immunization element) throws IOException { 28476 if (element != null) { 28477 composeDomainResourceAttributes(element); 28478 xml.enter(FHIR_NS, name); 28479 composeImmunizationElements(element); 28480 composeElementClose(element); 28481 xml.exit(FHIR_NS, name); 28482 } 28483 } 28484 28485 protected void composeImmunizationElements(Immunization element) throws IOException { 28486 composeDomainResourceElements(element); 28487 if (element.hasIdentifier()) { 28488 for (Identifier e : element.getIdentifier()) 28489 composeIdentifier("identifier", e); 28490 } 28491 if (element.hasStatusElement()) 28492 composeEnumeration("status", element.getStatusElement(), new Immunization.ImmunizationStatusEnumFactory()); 28493 if (element.hasNotGivenElement()) { 28494 composeBoolean("notGiven", element.getNotGivenElement()); 28495 } 28496 if (element.hasVaccineCode()) { 28497 composeCodeableConcept("vaccineCode", element.getVaccineCode()); 28498 } 28499 if (element.hasPatient()) { 28500 composeReference("patient", element.getPatient()); 28501 } 28502 if (element.hasEncounter()) { 28503 composeReference("encounter", element.getEncounter()); 28504 } 28505 if (element.hasDateElement()) { 28506 composeDateTime("date", element.getDateElement()); 28507 } 28508 if (element.hasPrimarySourceElement()) { 28509 composeBoolean("primarySource", element.getPrimarySourceElement()); 28510 } 28511 if (element.hasReportOrigin()) { 28512 composeCodeableConcept("reportOrigin", element.getReportOrigin()); 28513 } 28514 if (element.hasLocation()) { 28515 composeReference("location", element.getLocation()); 28516 } 28517 if (element.hasManufacturer()) { 28518 composeReference("manufacturer", element.getManufacturer()); 28519 } 28520 if (element.hasLotNumberElement()) { 28521 composeString("lotNumber", element.getLotNumberElement()); 28522 } 28523 if (element.hasExpirationDateElement()) { 28524 composeDate("expirationDate", element.getExpirationDateElement()); 28525 } 28526 if (element.hasSite()) { 28527 composeCodeableConcept("site", element.getSite()); 28528 } 28529 if (element.hasRoute()) { 28530 composeCodeableConcept("route", element.getRoute()); 28531 } 28532 if (element.hasDoseQuantity()) { 28533 composeSimpleQuantity("doseQuantity", element.getDoseQuantity()); 28534 } 28535 if (element.hasPractitioner()) { 28536 for (Immunization.ImmunizationPractitionerComponent e : element.getPractitioner()) 28537 composeImmunizationImmunizationPractitionerComponent("practitioner", e); 28538 } 28539 if (element.hasNote()) { 28540 for (Annotation e : element.getNote()) 28541 composeAnnotation("note", e); 28542 } 28543 if (element.hasExplanation()) { 28544 composeImmunizationImmunizationExplanationComponent("explanation", element.getExplanation()); 28545 } 28546 if (element.hasReaction()) { 28547 for (Immunization.ImmunizationReactionComponent e : element.getReaction()) 28548 composeImmunizationImmunizationReactionComponent("reaction", e); 28549 } 28550 if (element.hasVaccinationProtocol()) { 28551 for (Immunization.ImmunizationVaccinationProtocolComponent e : element.getVaccinationProtocol()) 28552 composeImmunizationImmunizationVaccinationProtocolComponent("vaccinationProtocol", e); 28553 } 28554 } 28555 28556 protected void composeImmunizationImmunizationPractitionerComponent(String name, Immunization.ImmunizationPractitionerComponent element) throws IOException { 28557 if (element != null) { 28558 composeElementAttributes(element); 28559 xml.enter(FHIR_NS, name); 28560 composeImmunizationImmunizationPractitionerComponentElements(element); 28561 composeElementClose(element); 28562 xml.exit(FHIR_NS, name); 28563 } 28564 } 28565 28566 protected void composeImmunizationImmunizationPractitionerComponentElements(Immunization.ImmunizationPractitionerComponent element) throws IOException { 28567 composeBackboneElements(element); 28568 if (element.hasRole()) { 28569 composeCodeableConcept("role", element.getRole()); 28570 } 28571 if (element.hasActor()) { 28572 composeReference("actor", element.getActor()); 28573 } 28574 } 28575 28576 protected void composeImmunizationImmunizationExplanationComponent(String name, Immunization.ImmunizationExplanationComponent element) throws IOException { 28577 if (element != null) { 28578 composeElementAttributes(element); 28579 xml.enter(FHIR_NS, name); 28580 composeImmunizationImmunizationExplanationComponentElements(element); 28581 composeElementClose(element); 28582 xml.exit(FHIR_NS, name); 28583 } 28584 } 28585 28586 protected void composeImmunizationImmunizationExplanationComponentElements(Immunization.ImmunizationExplanationComponent element) throws IOException { 28587 composeBackboneElements(element); 28588 if (element.hasReason()) { 28589 for (CodeableConcept e : element.getReason()) 28590 composeCodeableConcept("reason", e); 28591 } 28592 if (element.hasReasonNotGiven()) { 28593 for (CodeableConcept e : element.getReasonNotGiven()) 28594 composeCodeableConcept("reasonNotGiven", e); 28595 } 28596 } 28597 28598 protected void composeImmunizationImmunizationReactionComponent(String name, Immunization.ImmunizationReactionComponent element) throws IOException { 28599 if (element != null) { 28600 composeElementAttributes(element); 28601 xml.enter(FHIR_NS, name); 28602 composeImmunizationImmunizationReactionComponentElements(element); 28603 composeElementClose(element); 28604 xml.exit(FHIR_NS, name); 28605 } 28606 } 28607 28608 protected void composeImmunizationImmunizationReactionComponentElements(Immunization.ImmunizationReactionComponent element) throws IOException { 28609 composeBackboneElements(element); 28610 if (element.hasDateElement()) { 28611 composeDateTime("date", element.getDateElement()); 28612 } 28613 if (element.hasDetail()) { 28614 composeReference("detail", element.getDetail()); 28615 } 28616 if (element.hasReportedElement()) { 28617 composeBoolean("reported", element.getReportedElement()); 28618 } 28619 } 28620 28621 protected void composeImmunizationImmunizationVaccinationProtocolComponent(String name, Immunization.ImmunizationVaccinationProtocolComponent element) throws IOException { 28622 if (element != null) { 28623 composeElementAttributes(element); 28624 xml.enter(FHIR_NS, name); 28625 composeImmunizationImmunizationVaccinationProtocolComponentElements(element); 28626 composeElementClose(element); 28627 xml.exit(FHIR_NS, name); 28628 } 28629 } 28630 28631 protected void composeImmunizationImmunizationVaccinationProtocolComponentElements(Immunization.ImmunizationVaccinationProtocolComponent element) throws IOException { 28632 composeBackboneElements(element); 28633 if (element.hasDoseSequenceElement()) { 28634 composePositiveInt("doseSequence", element.getDoseSequenceElement()); 28635 } 28636 if (element.hasDescriptionElement()) { 28637 composeString("description", element.getDescriptionElement()); 28638 } 28639 if (element.hasAuthority()) { 28640 composeReference("authority", element.getAuthority()); 28641 } 28642 if (element.hasSeriesElement()) { 28643 composeString("series", element.getSeriesElement()); 28644 } 28645 if (element.hasSeriesDosesElement()) { 28646 composePositiveInt("seriesDoses", element.getSeriesDosesElement()); 28647 } 28648 if (element.hasTargetDisease()) { 28649 for (CodeableConcept e : element.getTargetDisease()) 28650 composeCodeableConcept("targetDisease", e); 28651 } 28652 if (element.hasDoseStatus()) { 28653 composeCodeableConcept("doseStatus", element.getDoseStatus()); 28654 } 28655 if (element.hasDoseStatusReason()) { 28656 composeCodeableConcept("doseStatusReason", element.getDoseStatusReason()); 28657 } 28658 } 28659 28660 protected void composeImmunizationRecommendation(String name, ImmunizationRecommendation element) throws IOException { 28661 if (element != null) { 28662 composeDomainResourceAttributes(element); 28663 xml.enter(FHIR_NS, name); 28664 composeImmunizationRecommendationElements(element); 28665 composeElementClose(element); 28666 xml.exit(FHIR_NS, name); 28667 } 28668 } 28669 28670 protected void composeImmunizationRecommendationElements(ImmunizationRecommendation element) throws IOException { 28671 composeDomainResourceElements(element); 28672 if (element.hasIdentifier()) { 28673 for (Identifier e : element.getIdentifier()) 28674 composeIdentifier("identifier", e); 28675 } 28676 if (element.hasPatient()) { 28677 composeReference("patient", element.getPatient()); 28678 } 28679 if (element.hasRecommendation()) { 28680 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent e : element.getRecommendation()) 28681 composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent("recommendation", e); 28682 } 28683 } 28684 28685 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element) throws IOException { 28686 if (element != null) { 28687 composeElementAttributes(element); 28688 xml.enter(FHIR_NS, name); 28689 composeImmunizationRecommendationImmunizationRecommendationRecommendationComponentElements(element); 28690 composeElementClose(element); 28691 xml.exit(FHIR_NS, name); 28692 } 28693 } 28694 28695 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationComponentElements(ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent element) throws IOException { 28696 composeBackboneElements(element); 28697 if (element.hasDateElement()) { 28698 composeDateTime("date", element.getDateElement()); 28699 } 28700 if (element.hasVaccineCode()) { 28701 composeCodeableConcept("vaccineCode", element.getVaccineCode()); 28702 } 28703 if (element.hasTargetDisease()) { 28704 composeCodeableConcept("targetDisease", element.getTargetDisease()); 28705 } 28706 if (element.hasDoseNumberElement()) { 28707 composePositiveInt("doseNumber", element.getDoseNumberElement()); 28708 } 28709 if (element.hasForecastStatus()) { 28710 composeCodeableConcept("forecastStatus", element.getForecastStatus()); 28711 } 28712 if (element.hasDateCriterion()) { 28713 for (ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent e : element.getDateCriterion()) 28714 composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent("dateCriterion", e); 28715 } 28716 if (element.hasProtocol()) { 28717 composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent("protocol", element.getProtocol()); 28718 } 28719 if (element.hasSupportingImmunization()) { 28720 for (Reference e : element.getSupportingImmunization()) 28721 composeReference("supportingImmunization", e); 28722 } 28723 if (element.hasSupportingPatientInformation()) { 28724 for (Reference e : element.getSupportingPatientInformation()) 28725 composeReference("supportingPatientInformation", e); 28726 } 28727 } 28728 28729 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element) throws IOException { 28730 if (element != null) { 28731 composeElementAttributes(element); 28732 xml.enter(FHIR_NS, name); 28733 composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponentElements(element); 28734 composeElementClose(element); 28735 xml.exit(FHIR_NS, name); 28736 } 28737 } 28738 28739 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationDateCriterionComponentElements(ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent element) throws IOException { 28740 composeBackboneElements(element); 28741 if (element.hasCode()) { 28742 composeCodeableConcept("code", element.getCode()); 28743 } 28744 if (element.hasValueElement()) { 28745 composeDateTime("value", element.getValueElement()); 28746 } 28747 } 28748 28749 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponent(String name, ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent element) throws IOException { 28750 if (element != null) { 28751 composeElementAttributes(element); 28752 xml.enter(FHIR_NS, name); 28753 composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponentElements(element); 28754 composeElementClose(element); 28755 xml.exit(FHIR_NS, name); 28756 } 28757 } 28758 28759 protected void composeImmunizationRecommendationImmunizationRecommendationRecommendationProtocolComponentElements(ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent element) throws IOException { 28760 composeBackboneElements(element); 28761 if (element.hasDoseSequenceElement()) { 28762 composePositiveInt("doseSequence", element.getDoseSequenceElement()); 28763 } 28764 if (element.hasDescriptionElement()) { 28765 composeString("description", element.getDescriptionElement()); 28766 } 28767 if (element.hasAuthority()) { 28768 composeReference("authority", element.getAuthority()); 28769 } 28770 if (element.hasSeriesElement()) { 28771 composeString("series", element.getSeriesElement()); 28772 } 28773 } 28774 28775 protected void composeImplementationGuide(String name, ImplementationGuide element) throws IOException { 28776 if (element != null) { 28777 composeDomainResourceAttributes(element); 28778 xml.enter(FHIR_NS, name); 28779 composeImplementationGuideElements(element); 28780 composeElementClose(element); 28781 xml.exit(FHIR_NS, name); 28782 } 28783 } 28784 28785 protected void composeImplementationGuideElements(ImplementationGuide element) throws IOException { 28786 composeDomainResourceElements(element); 28787 if (element.hasUrlElement()) { 28788 composeUri("url", element.getUrlElement()); 28789 } 28790 if (element.hasVersionElement()) { 28791 composeString("version", element.getVersionElement()); 28792 } 28793 if (element.hasNameElement()) { 28794 composeString("name", element.getNameElement()); 28795 } 28796 if (element.hasStatusElement()) 28797 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 28798 if (element.hasExperimentalElement()) { 28799 composeBoolean("experimental", element.getExperimentalElement()); 28800 } 28801 if (element.hasDateElement()) { 28802 composeDateTime("date", element.getDateElement()); 28803 } 28804 if (element.hasPublisherElement()) { 28805 composeString("publisher", element.getPublisherElement()); 28806 } 28807 if (element.hasContact()) { 28808 for (ContactDetail e : element.getContact()) 28809 composeContactDetail("contact", e); 28810 } 28811 if (element.hasDescriptionElement()) { 28812 composeMarkdown("description", element.getDescriptionElement()); 28813 } 28814 if (element.hasUseContext()) { 28815 for (UsageContext e : element.getUseContext()) 28816 composeUsageContext("useContext", e); 28817 } 28818 if (element.hasJurisdiction()) { 28819 for (CodeableConcept e : element.getJurisdiction()) 28820 composeCodeableConcept("jurisdiction", e); 28821 } 28822 if (element.hasCopyrightElement()) { 28823 composeMarkdown("copyright", element.getCopyrightElement()); 28824 } 28825 if (element.hasFhirVersionElement()) { 28826 composeId("fhirVersion", element.getFhirVersionElement()); 28827 } 28828 if (element.hasDependency()) { 28829 for (ImplementationGuide.ImplementationGuideDependencyComponent e : element.getDependency()) 28830 composeImplementationGuideImplementationGuideDependencyComponent("dependency", e); 28831 } 28832 if (element.hasPackage()) { 28833 for (ImplementationGuide.ImplementationGuidePackageComponent e : element.getPackage()) 28834 composeImplementationGuideImplementationGuidePackageComponent("package", e); 28835 } 28836 if (element.hasGlobal()) { 28837 for (ImplementationGuide.ImplementationGuideGlobalComponent e : element.getGlobal()) 28838 composeImplementationGuideImplementationGuideGlobalComponent("global", e); 28839 } 28840 if (element.hasBinary()) { 28841 for (UriType e : element.getBinary()) 28842 composeUri("binary", e); 28843 } 28844 if (element.hasPage()) { 28845 composeImplementationGuideImplementationGuidePageComponent("page", element.getPage()); 28846 } 28847 } 28848 28849 protected void composeImplementationGuideImplementationGuideDependencyComponent(String name, ImplementationGuide.ImplementationGuideDependencyComponent element) throws IOException { 28850 if (element != null) { 28851 composeElementAttributes(element); 28852 xml.enter(FHIR_NS, name); 28853 composeImplementationGuideImplementationGuideDependencyComponentElements(element); 28854 composeElementClose(element); 28855 xml.exit(FHIR_NS, name); 28856 } 28857 } 28858 28859 protected void composeImplementationGuideImplementationGuideDependencyComponentElements(ImplementationGuide.ImplementationGuideDependencyComponent element) throws IOException { 28860 composeBackboneElements(element); 28861 if (element.hasTypeElement()) 28862 composeEnumeration("type", element.getTypeElement(), new ImplementationGuide.GuideDependencyTypeEnumFactory()); 28863 if (element.hasUriElement()) { 28864 composeUri("uri", element.getUriElement()); 28865 } 28866 } 28867 28868 protected void composeImplementationGuideImplementationGuidePackageComponent(String name, ImplementationGuide.ImplementationGuidePackageComponent element) throws IOException { 28869 if (element != null) { 28870 composeElementAttributes(element); 28871 xml.enter(FHIR_NS, name); 28872 composeImplementationGuideImplementationGuidePackageComponentElements(element); 28873 composeElementClose(element); 28874 xml.exit(FHIR_NS, name); 28875 } 28876 } 28877 28878 protected void composeImplementationGuideImplementationGuidePackageComponentElements(ImplementationGuide.ImplementationGuidePackageComponent element) throws IOException { 28879 composeBackboneElements(element); 28880 if (element.hasNameElement()) { 28881 composeString("name", element.getNameElement()); 28882 } 28883 if (element.hasDescriptionElement()) { 28884 composeString("description", element.getDescriptionElement()); 28885 } 28886 if (element.hasResource()) { 28887 for (ImplementationGuide.ImplementationGuidePackageResourceComponent e : element.getResource()) 28888 composeImplementationGuideImplementationGuidePackageResourceComponent("resource", e); 28889 } 28890 } 28891 28892 protected void composeImplementationGuideImplementationGuidePackageResourceComponent(String name, ImplementationGuide.ImplementationGuidePackageResourceComponent element) throws IOException { 28893 if (element != null) { 28894 composeElementAttributes(element); 28895 xml.enter(FHIR_NS, name); 28896 composeImplementationGuideImplementationGuidePackageResourceComponentElements(element); 28897 composeElementClose(element); 28898 xml.exit(FHIR_NS, name); 28899 } 28900 } 28901 28902 protected void composeImplementationGuideImplementationGuidePackageResourceComponentElements(ImplementationGuide.ImplementationGuidePackageResourceComponent element) throws IOException { 28903 composeBackboneElements(element); 28904 if (element.hasExampleElement()) { 28905 composeBoolean("example", element.getExampleElement()); 28906 } 28907 if (element.hasNameElement()) { 28908 composeString("name", element.getNameElement()); 28909 } 28910 if (element.hasDescriptionElement()) { 28911 composeString("description", element.getDescriptionElement()); 28912 } 28913 if (element.hasAcronymElement()) { 28914 composeString("acronym", element.getAcronymElement()); 28915 } 28916 if (element.hasSource()) { 28917 composeType("source", element.getSource()); 28918 } if (element.hasExampleFor()) { 28919 composeReference("exampleFor", element.getExampleFor()); 28920 } 28921 } 28922 28923 protected void composeImplementationGuideImplementationGuideGlobalComponent(String name, ImplementationGuide.ImplementationGuideGlobalComponent element) throws IOException { 28924 if (element != null) { 28925 composeElementAttributes(element); 28926 xml.enter(FHIR_NS, name); 28927 composeImplementationGuideImplementationGuideGlobalComponentElements(element); 28928 composeElementClose(element); 28929 xml.exit(FHIR_NS, name); 28930 } 28931 } 28932 28933 protected void composeImplementationGuideImplementationGuideGlobalComponentElements(ImplementationGuide.ImplementationGuideGlobalComponent element) throws IOException { 28934 composeBackboneElements(element); 28935 if (element.hasTypeElement()) { 28936 composeCode("type", element.getTypeElement()); 28937 } 28938 if (element.hasProfile()) { 28939 composeReference("profile", element.getProfile()); 28940 } 28941 } 28942 28943 protected void composeImplementationGuideImplementationGuidePageComponent(String name, ImplementationGuide.ImplementationGuidePageComponent element) throws IOException { 28944 if (element != null) { 28945 composeElementAttributes(element); 28946 xml.enter(FHIR_NS, name); 28947 composeImplementationGuideImplementationGuidePageComponentElements(element); 28948 composeElementClose(element); 28949 xml.exit(FHIR_NS, name); 28950 } 28951 } 28952 28953 protected void composeImplementationGuideImplementationGuidePageComponentElements(ImplementationGuide.ImplementationGuidePageComponent element) throws IOException { 28954 composeBackboneElements(element); 28955 if (element.hasSourceElement()) { 28956 composeUri("source", element.getSourceElement()); 28957 } 28958 if (element.hasTitleElement()) { 28959 composeString("title", element.getTitleElement()); 28960 } 28961 if (element.hasKindElement()) 28962 composeEnumeration("kind", element.getKindElement(), new ImplementationGuide.GuidePageKindEnumFactory()); 28963 if (element.hasType()) { 28964 for (CodeType e : element.getType()) 28965 composeCode("type", e); 28966 } 28967 if (element.hasPackage()) { 28968 for (StringType e : element.getPackage()) 28969 composeString("package", e); 28970 } 28971 if (element.hasFormatElement()) { 28972 composeCode("format", element.getFormatElement()); 28973 } 28974 if (element.hasPage()) { 28975 for (ImplementationGuide.ImplementationGuidePageComponent e : element.getPage()) 28976 composeImplementationGuideImplementationGuidePageComponent("page", e); 28977 } 28978 } 28979 28980 protected void composeLibrary(String name, Library element) throws IOException { 28981 if (element != null) { 28982 composeDomainResourceAttributes(element); 28983 xml.enter(FHIR_NS, name); 28984 composeLibraryElements(element); 28985 composeElementClose(element); 28986 xml.exit(FHIR_NS, name); 28987 } 28988 } 28989 28990 protected void composeLibraryElements(Library element) throws IOException { 28991 composeDomainResourceElements(element); 28992 if (element.hasUrlElement()) { 28993 composeUri("url", element.getUrlElement()); 28994 } 28995 if (element.hasIdentifier()) { 28996 for (Identifier e : element.getIdentifier()) 28997 composeIdentifier("identifier", e); 28998 } 28999 if (element.hasVersionElement()) { 29000 composeString("version", element.getVersionElement()); 29001 } 29002 if (element.hasNameElement()) { 29003 composeString("name", element.getNameElement()); 29004 } 29005 if (element.hasTitleElement()) { 29006 composeString("title", element.getTitleElement()); 29007 } 29008 if (element.hasStatusElement()) 29009 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 29010 if (element.hasExperimentalElement()) { 29011 composeBoolean("experimental", element.getExperimentalElement()); 29012 } 29013 if (element.hasType()) { 29014 composeCodeableConcept("type", element.getType()); 29015 } 29016 if (element.hasDateElement()) { 29017 composeDateTime("date", element.getDateElement()); 29018 } 29019 if (element.hasPublisherElement()) { 29020 composeString("publisher", element.getPublisherElement()); 29021 } 29022 if (element.hasDescriptionElement()) { 29023 composeMarkdown("description", element.getDescriptionElement()); 29024 } 29025 if (element.hasPurposeElement()) { 29026 composeMarkdown("purpose", element.getPurposeElement()); 29027 } 29028 if (element.hasUsageElement()) { 29029 composeString("usage", element.getUsageElement()); 29030 } 29031 if (element.hasApprovalDateElement()) { 29032 composeDate("approvalDate", element.getApprovalDateElement()); 29033 } 29034 if (element.hasLastReviewDateElement()) { 29035 composeDate("lastReviewDate", element.getLastReviewDateElement()); 29036 } 29037 if (element.hasEffectivePeriod()) { 29038 composePeriod("effectivePeriod", element.getEffectivePeriod()); 29039 } 29040 if (element.hasUseContext()) { 29041 for (UsageContext e : element.getUseContext()) 29042 composeUsageContext("useContext", e); 29043 } 29044 if (element.hasJurisdiction()) { 29045 for (CodeableConcept e : element.getJurisdiction()) 29046 composeCodeableConcept("jurisdiction", e); 29047 } 29048 if (element.hasTopic()) { 29049 for (CodeableConcept e : element.getTopic()) 29050 composeCodeableConcept("topic", e); 29051 } 29052 if (element.hasContributor()) { 29053 for (Contributor e : element.getContributor()) 29054 composeContributor("contributor", e); 29055 } 29056 if (element.hasContact()) { 29057 for (ContactDetail e : element.getContact()) 29058 composeContactDetail("contact", e); 29059 } 29060 if (element.hasCopyrightElement()) { 29061 composeMarkdown("copyright", element.getCopyrightElement()); 29062 } 29063 if (element.hasRelatedArtifact()) { 29064 for (RelatedArtifact e : element.getRelatedArtifact()) 29065 composeRelatedArtifact("relatedArtifact", e); 29066 } 29067 if (element.hasParameter()) { 29068 for (ParameterDefinition e : element.getParameter()) 29069 composeParameterDefinition("parameter", e); 29070 } 29071 if (element.hasDataRequirement()) { 29072 for (DataRequirement e : element.getDataRequirement()) 29073 composeDataRequirement("dataRequirement", e); 29074 } 29075 if (element.hasContent()) { 29076 for (Attachment e : element.getContent()) 29077 composeAttachment("content", e); 29078 } 29079 } 29080 29081 protected void composeLinkage(String name, Linkage element) throws IOException { 29082 if (element != null) { 29083 composeDomainResourceAttributes(element); 29084 xml.enter(FHIR_NS, name); 29085 composeLinkageElements(element); 29086 composeElementClose(element); 29087 xml.exit(FHIR_NS, name); 29088 } 29089 } 29090 29091 protected void composeLinkageElements(Linkage element) throws IOException { 29092 composeDomainResourceElements(element); 29093 if (element.hasActiveElement()) { 29094 composeBoolean("active", element.getActiveElement()); 29095 } 29096 if (element.hasAuthor()) { 29097 composeReference("author", element.getAuthor()); 29098 } 29099 if (element.hasItem()) { 29100 for (Linkage.LinkageItemComponent e : element.getItem()) 29101 composeLinkageLinkageItemComponent("item", e); 29102 } 29103 } 29104 29105 protected void composeLinkageLinkageItemComponent(String name, Linkage.LinkageItemComponent element) throws IOException { 29106 if (element != null) { 29107 composeElementAttributes(element); 29108 xml.enter(FHIR_NS, name); 29109 composeLinkageLinkageItemComponentElements(element); 29110 composeElementClose(element); 29111 xml.exit(FHIR_NS, name); 29112 } 29113 } 29114 29115 protected void composeLinkageLinkageItemComponentElements(Linkage.LinkageItemComponent element) throws IOException { 29116 composeBackboneElements(element); 29117 if (element.hasTypeElement()) 29118 composeEnumeration("type", element.getTypeElement(), new Linkage.LinkageTypeEnumFactory()); 29119 if (element.hasResource()) { 29120 composeReference("resource", element.getResource()); 29121 } 29122 } 29123 29124 protected void composeListResource(String name, ListResource element) throws IOException { 29125 if (element != null) { 29126 composeDomainResourceAttributes(element); 29127 xml.enter(FHIR_NS, name); 29128 composeListResourceElements(element); 29129 composeElementClose(element); 29130 xml.exit(FHIR_NS, name); 29131 } 29132 } 29133 29134 protected void composeListResourceElements(ListResource element) throws IOException { 29135 composeDomainResourceElements(element); 29136 if (element.hasIdentifier()) { 29137 for (Identifier e : element.getIdentifier()) 29138 composeIdentifier("identifier", e); 29139 } 29140 if (element.hasStatusElement()) 29141 composeEnumeration("status", element.getStatusElement(), new ListResource.ListStatusEnumFactory()); 29142 if (element.hasModeElement()) 29143 composeEnumeration("mode", element.getModeElement(), new ListResource.ListModeEnumFactory()); 29144 if (element.hasTitleElement()) { 29145 composeString("title", element.getTitleElement()); 29146 } 29147 if (element.hasCode()) { 29148 composeCodeableConcept("code", element.getCode()); 29149 } 29150 if (element.hasSubject()) { 29151 composeReference("subject", element.getSubject()); 29152 } 29153 if (element.hasEncounter()) { 29154 composeReference("encounter", element.getEncounter()); 29155 } 29156 if (element.hasDateElement()) { 29157 composeDateTime("date", element.getDateElement()); 29158 } 29159 if (element.hasSource()) { 29160 composeReference("source", element.getSource()); 29161 } 29162 if (element.hasOrderedBy()) { 29163 composeCodeableConcept("orderedBy", element.getOrderedBy()); 29164 } 29165 if (element.hasNote()) { 29166 for (Annotation e : element.getNote()) 29167 composeAnnotation("note", e); 29168 } 29169 if (element.hasEntry()) { 29170 for (ListResource.ListEntryComponent e : element.getEntry()) 29171 composeListResourceListEntryComponent("entry", e); 29172 } 29173 if (element.hasEmptyReason()) { 29174 composeCodeableConcept("emptyReason", element.getEmptyReason()); 29175 } 29176 } 29177 29178 protected void composeListResourceListEntryComponent(String name, ListResource.ListEntryComponent element) throws IOException { 29179 if (element != null) { 29180 composeElementAttributes(element); 29181 xml.enter(FHIR_NS, name); 29182 composeListResourceListEntryComponentElements(element); 29183 composeElementClose(element); 29184 xml.exit(FHIR_NS, name); 29185 } 29186 } 29187 29188 protected void composeListResourceListEntryComponentElements(ListResource.ListEntryComponent element) throws IOException { 29189 composeBackboneElements(element); 29190 if (element.hasFlag()) { 29191 composeCodeableConcept("flag", element.getFlag()); 29192 } 29193 if (element.hasDeletedElement()) { 29194 composeBoolean("deleted", element.getDeletedElement()); 29195 } 29196 if (element.hasDateElement()) { 29197 composeDateTime("date", element.getDateElement()); 29198 } 29199 if (element.hasItem()) { 29200 composeReference("item", element.getItem()); 29201 } 29202 } 29203 29204 protected void composeLocation(String name, Location element) throws IOException { 29205 if (element != null) { 29206 composeDomainResourceAttributes(element); 29207 xml.enter(FHIR_NS, name); 29208 composeLocationElements(element); 29209 composeElementClose(element); 29210 xml.exit(FHIR_NS, name); 29211 } 29212 } 29213 29214 protected void composeLocationElements(Location element) throws IOException { 29215 composeDomainResourceElements(element); 29216 if (element.hasIdentifier()) { 29217 for (Identifier e : element.getIdentifier()) 29218 composeIdentifier("identifier", e); 29219 } 29220 if (element.hasStatusElement()) 29221 composeEnumeration("status", element.getStatusElement(), new Location.LocationStatusEnumFactory()); 29222 if (element.hasOperationalStatus()) { 29223 composeCoding("operationalStatus", element.getOperationalStatus()); 29224 } 29225 if (element.hasNameElement()) { 29226 composeString("name", element.getNameElement()); 29227 } 29228 if (element.hasAlias()) { 29229 for (StringType e : element.getAlias()) 29230 composeString("alias", e); 29231 } 29232 if (element.hasDescriptionElement()) { 29233 composeString("description", element.getDescriptionElement()); 29234 } 29235 if (element.hasModeElement()) 29236 composeEnumeration("mode", element.getModeElement(), new Location.LocationModeEnumFactory()); 29237 if (element.hasType()) { 29238 composeCodeableConcept("type", element.getType()); 29239 } 29240 if (element.hasTelecom()) { 29241 for (ContactPoint e : element.getTelecom()) 29242 composeContactPoint("telecom", e); 29243 } 29244 if (element.hasAddress()) { 29245 composeAddress("address", element.getAddress()); 29246 } 29247 if (element.hasPhysicalType()) { 29248 composeCodeableConcept("physicalType", element.getPhysicalType()); 29249 } 29250 if (element.hasPosition()) { 29251 composeLocationLocationPositionComponent("position", element.getPosition()); 29252 } 29253 if (element.hasManagingOrganization()) { 29254 composeReference("managingOrganization", element.getManagingOrganization()); 29255 } 29256 if (element.hasPartOf()) { 29257 composeReference("partOf", element.getPartOf()); 29258 } 29259 if (element.hasEndpoint()) { 29260 for (Reference e : element.getEndpoint()) 29261 composeReference("endpoint", e); 29262 } 29263 } 29264 29265 protected void composeLocationLocationPositionComponent(String name, Location.LocationPositionComponent element) throws IOException { 29266 if (element != null) { 29267 composeElementAttributes(element); 29268 xml.enter(FHIR_NS, name); 29269 composeLocationLocationPositionComponentElements(element); 29270 composeElementClose(element); 29271 xml.exit(FHIR_NS, name); 29272 } 29273 } 29274 29275 protected void composeLocationLocationPositionComponentElements(Location.LocationPositionComponent element) throws IOException { 29276 composeBackboneElements(element); 29277 if (element.hasLongitudeElement()) { 29278 composeDecimal("longitude", element.getLongitudeElement()); 29279 } 29280 if (element.hasLatitudeElement()) { 29281 composeDecimal("latitude", element.getLatitudeElement()); 29282 } 29283 if (element.hasAltitudeElement()) { 29284 composeDecimal("altitude", element.getAltitudeElement()); 29285 } 29286 } 29287 29288 protected void composeMeasure(String name, Measure element) throws IOException { 29289 if (element != null) { 29290 composeDomainResourceAttributes(element); 29291 xml.enter(FHIR_NS, name); 29292 composeMeasureElements(element); 29293 composeElementClose(element); 29294 xml.exit(FHIR_NS, name); 29295 } 29296 } 29297 29298 protected void composeMeasureElements(Measure element) throws IOException { 29299 composeDomainResourceElements(element); 29300 if (element.hasUrlElement()) { 29301 composeUri("url", element.getUrlElement()); 29302 } 29303 if (element.hasIdentifier()) { 29304 for (Identifier e : element.getIdentifier()) 29305 composeIdentifier("identifier", e); 29306 } 29307 if (element.hasVersionElement()) { 29308 composeString("version", element.getVersionElement()); 29309 } 29310 if (element.hasNameElement()) { 29311 composeString("name", element.getNameElement()); 29312 } 29313 if (element.hasTitleElement()) { 29314 composeString("title", element.getTitleElement()); 29315 } 29316 if (element.hasStatusElement()) 29317 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 29318 if (element.hasExperimentalElement()) { 29319 composeBoolean("experimental", element.getExperimentalElement()); 29320 } 29321 if (element.hasDateElement()) { 29322 composeDateTime("date", element.getDateElement()); 29323 } 29324 if (element.hasPublisherElement()) { 29325 composeString("publisher", element.getPublisherElement()); 29326 } 29327 if (element.hasDescriptionElement()) { 29328 composeMarkdown("description", element.getDescriptionElement()); 29329 } 29330 if (element.hasPurposeElement()) { 29331 composeMarkdown("purpose", element.getPurposeElement()); 29332 } 29333 if (element.hasUsageElement()) { 29334 composeString("usage", element.getUsageElement()); 29335 } 29336 if (element.hasApprovalDateElement()) { 29337 composeDate("approvalDate", element.getApprovalDateElement()); 29338 } 29339 if (element.hasLastReviewDateElement()) { 29340 composeDate("lastReviewDate", element.getLastReviewDateElement()); 29341 } 29342 if (element.hasEffectivePeriod()) { 29343 composePeriod("effectivePeriod", element.getEffectivePeriod()); 29344 } 29345 if (element.hasUseContext()) { 29346 for (UsageContext e : element.getUseContext()) 29347 composeUsageContext("useContext", e); 29348 } 29349 if (element.hasJurisdiction()) { 29350 for (CodeableConcept e : element.getJurisdiction()) 29351 composeCodeableConcept("jurisdiction", e); 29352 } 29353 if (element.hasTopic()) { 29354 for (CodeableConcept e : element.getTopic()) 29355 composeCodeableConcept("topic", e); 29356 } 29357 if (element.hasContributor()) { 29358 for (Contributor e : element.getContributor()) 29359 composeContributor("contributor", e); 29360 } 29361 if (element.hasContact()) { 29362 for (ContactDetail e : element.getContact()) 29363 composeContactDetail("contact", e); 29364 } 29365 if (element.hasCopyrightElement()) { 29366 composeMarkdown("copyright", element.getCopyrightElement()); 29367 } 29368 if (element.hasRelatedArtifact()) { 29369 for (RelatedArtifact e : element.getRelatedArtifact()) 29370 composeRelatedArtifact("relatedArtifact", e); 29371 } 29372 if (element.hasLibrary()) { 29373 for (Reference e : element.getLibrary()) 29374 composeReference("library", e); 29375 } 29376 if (element.hasDisclaimerElement()) { 29377 composeMarkdown("disclaimer", element.getDisclaimerElement()); 29378 } 29379 if (element.hasScoring()) { 29380 composeCodeableConcept("scoring", element.getScoring()); 29381 } 29382 if (element.hasCompositeScoring()) { 29383 composeCodeableConcept("compositeScoring", element.getCompositeScoring()); 29384 } 29385 if (element.hasType()) { 29386 for (CodeableConcept e : element.getType()) 29387 composeCodeableConcept("type", e); 29388 } 29389 if (element.hasRiskAdjustmentElement()) { 29390 composeString("riskAdjustment", element.getRiskAdjustmentElement()); 29391 } 29392 if (element.hasRateAggregationElement()) { 29393 composeString("rateAggregation", element.getRateAggregationElement()); 29394 } 29395 if (element.hasRationaleElement()) { 29396 composeMarkdown("rationale", element.getRationaleElement()); 29397 } 29398 if (element.hasClinicalRecommendationStatementElement()) { 29399 composeMarkdown("clinicalRecommendationStatement", element.getClinicalRecommendationStatementElement()); 29400 } 29401 if (element.hasImprovementNotationElement()) { 29402 composeString("improvementNotation", element.getImprovementNotationElement()); 29403 } 29404 if (element.hasDefinition()) { 29405 for (MarkdownType e : element.getDefinition()) 29406 composeMarkdown("definition", e); 29407 } 29408 if (element.hasGuidanceElement()) { 29409 composeMarkdown("guidance", element.getGuidanceElement()); 29410 } 29411 if (element.hasSetElement()) { 29412 composeString("set", element.getSetElement()); 29413 } 29414 if (element.hasGroup()) { 29415 for (Measure.MeasureGroupComponent e : element.getGroup()) 29416 composeMeasureMeasureGroupComponent("group", e); 29417 } 29418 if (element.hasSupplementalData()) { 29419 for (Measure.MeasureSupplementalDataComponent e : element.getSupplementalData()) 29420 composeMeasureMeasureSupplementalDataComponent("supplementalData", e); 29421 } 29422 } 29423 29424 protected void composeMeasureMeasureGroupComponent(String name, Measure.MeasureGroupComponent element) throws IOException { 29425 if (element != null) { 29426 composeElementAttributes(element); 29427 xml.enter(FHIR_NS, name); 29428 composeMeasureMeasureGroupComponentElements(element); 29429 composeElementClose(element); 29430 xml.exit(FHIR_NS, name); 29431 } 29432 } 29433 29434 protected void composeMeasureMeasureGroupComponentElements(Measure.MeasureGroupComponent element) throws IOException { 29435 composeBackboneElements(element); 29436 if (element.hasIdentifier()) { 29437 composeIdentifier("identifier", element.getIdentifier()); 29438 } 29439 if (element.hasNameElement()) { 29440 composeString("name", element.getNameElement()); 29441 } 29442 if (element.hasDescriptionElement()) { 29443 composeString("description", element.getDescriptionElement()); 29444 } 29445 if (element.hasPopulation()) { 29446 for (Measure.MeasureGroupPopulationComponent e : element.getPopulation()) 29447 composeMeasureMeasureGroupPopulationComponent("population", e); 29448 } 29449 if (element.hasStratifier()) { 29450 for (Measure.MeasureGroupStratifierComponent e : element.getStratifier()) 29451 composeMeasureMeasureGroupStratifierComponent("stratifier", e); 29452 } 29453 } 29454 29455 protected void composeMeasureMeasureGroupPopulationComponent(String name, Measure.MeasureGroupPopulationComponent element) throws IOException { 29456 if (element != null) { 29457 composeElementAttributes(element); 29458 xml.enter(FHIR_NS, name); 29459 composeMeasureMeasureGroupPopulationComponentElements(element); 29460 composeElementClose(element); 29461 xml.exit(FHIR_NS, name); 29462 } 29463 } 29464 29465 protected void composeMeasureMeasureGroupPopulationComponentElements(Measure.MeasureGroupPopulationComponent element) throws IOException { 29466 composeBackboneElements(element); 29467 if (element.hasIdentifier()) { 29468 composeIdentifier("identifier", element.getIdentifier()); 29469 } 29470 if (element.hasCode()) { 29471 composeCodeableConcept("code", element.getCode()); 29472 } 29473 if (element.hasNameElement()) { 29474 composeString("name", element.getNameElement()); 29475 } 29476 if (element.hasDescriptionElement()) { 29477 composeString("description", element.getDescriptionElement()); 29478 } 29479 if (element.hasCriteriaElement()) { 29480 composeString("criteria", element.getCriteriaElement()); 29481 } 29482 } 29483 29484 protected void composeMeasureMeasureGroupStratifierComponent(String name, Measure.MeasureGroupStratifierComponent element) throws IOException { 29485 if (element != null) { 29486 composeElementAttributes(element); 29487 xml.enter(FHIR_NS, name); 29488 composeMeasureMeasureGroupStratifierComponentElements(element); 29489 composeElementClose(element); 29490 xml.exit(FHIR_NS, name); 29491 } 29492 } 29493 29494 protected void composeMeasureMeasureGroupStratifierComponentElements(Measure.MeasureGroupStratifierComponent element) throws IOException { 29495 composeBackboneElements(element); 29496 if (element.hasIdentifier()) { 29497 composeIdentifier("identifier", element.getIdentifier()); 29498 } 29499 if (element.hasCriteriaElement()) { 29500 composeString("criteria", element.getCriteriaElement()); 29501 } 29502 if (element.hasPathElement()) { 29503 composeString("path", element.getPathElement()); 29504 } 29505 } 29506 29507 protected void composeMeasureMeasureSupplementalDataComponent(String name, Measure.MeasureSupplementalDataComponent element) throws IOException { 29508 if (element != null) { 29509 composeElementAttributes(element); 29510 xml.enter(FHIR_NS, name); 29511 composeMeasureMeasureSupplementalDataComponentElements(element); 29512 composeElementClose(element); 29513 xml.exit(FHIR_NS, name); 29514 } 29515 } 29516 29517 protected void composeMeasureMeasureSupplementalDataComponentElements(Measure.MeasureSupplementalDataComponent element) throws IOException { 29518 composeBackboneElements(element); 29519 if (element.hasIdentifier()) { 29520 composeIdentifier("identifier", element.getIdentifier()); 29521 } 29522 if (element.hasUsage()) { 29523 for (CodeableConcept e : element.getUsage()) 29524 composeCodeableConcept("usage", e); 29525 } 29526 if (element.hasCriteriaElement()) { 29527 composeString("criteria", element.getCriteriaElement()); 29528 } 29529 if (element.hasPathElement()) { 29530 composeString("path", element.getPathElement()); 29531 } 29532 } 29533 29534 protected void composeMeasureReport(String name, MeasureReport element) throws IOException { 29535 if (element != null) { 29536 composeDomainResourceAttributes(element); 29537 xml.enter(FHIR_NS, name); 29538 composeMeasureReportElements(element); 29539 composeElementClose(element); 29540 xml.exit(FHIR_NS, name); 29541 } 29542 } 29543 29544 protected void composeMeasureReportElements(MeasureReport element) throws IOException { 29545 composeDomainResourceElements(element); 29546 if (element.hasIdentifier()) { 29547 composeIdentifier("identifier", element.getIdentifier()); 29548 } 29549 if (element.hasStatusElement()) 29550 composeEnumeration("status", element.getStatusElement(), new MeasureReport.MeasureReportStatusEnumFactory()); 29551 if (element.hasTypeElement()) 29552 composeEnumeration("type", element.getTypeElement(), new MeasureReport.MeasureReportTypeEnumFactory()); 29553 if (element.hasMeasure()) { 29554 composeReference("measure", element.getMeasure()); 29555 } 29556 if (element.hasPatient()) { 29557 composeReference("patient", element.getPatient()); 29558 } 29559 if (element.hasDateElement()) { 29560 composeDateTime("date", element.getDateElement()); 29561 } 29562 if (element.hasReportingOrganization()) { 29563 composeReference("reportingOrganization", element.getReportingOrganization()); 29564 } 29565 if (element.hasPeriod()) { 29566 composePeriod("period", element.getPeriod()); 29567 } 29568 if (element.hasGroup()) { 29569 for (MeasureReport.MeasureReportGroupComponent e : element.getGroup()) 29570 composeMeasureReportMeasureReportGroupComponent("group", e); 29571 } 29572 if (element.hasEvaluatedResources()) { 29573 composeReference("evaluatedResources", element.getEvaluatedResources()); 29574 } 29575 } 29576 29577 protected void composeMeasureReportMeasureReportGroupComponent(String name, MeasureReport.MeasureReportGroupComponent element) throws IOException { 29578 if (element != null) { 29579 composeElementAttributes(element); 29580 xml.enter(FHIR_NS, name); 29581 composeMeasureReportMeasureReportGroupComponentElements(element); 29582 composeElementClose(element); 29583 xml.exit(FHIR_NS, name); 29584 } 29585 } 29586 29587 protected void composeMeasureReportMeasureReportGroupComponentElements(MeasureReport.MeasureReportGroupComponent element) throws IOException { 29588 composeBackboneElements(element); 29589 if (element.hasIdentifier()) { 29590 composeIdentifier("identifier", element.getIdentifier()); 29591 } 29592 if (element.hasPopulation()) { 29593 for (MeasureReport.MeasureReportGroupPopulationComponent e : element.getPopulation()) 29594 composeMeasureReportMeasureReportGroupPopulationComponent("population", e); 29595 } 29596 if (element.hasMeasureScoreElement()) { 29597 composeDecimal("measureScore", element.getMeasureScoreElement()); 29598 } 29599 if (element.hasStratifier()) { 29600 for (MeasureReport.MeasureReportGroupStratifierComponent e : element.getStratifier()) 29601 composeMeasureReportMeasureReportGroupStratifierComponent("stratifier", e); 29602 } 29603 } 29604 29605 protected void composeMeasureReportMeasureReportGroupPopulationComponent(String name, MeasureReport.MeasureReportGroupPopulationComponent element) throws IOException { 29606 if (element != null) { 29607 composeElementAttributes(element); 29608 xml.enter(FHIR_NS, name); 29609 composeMeasureReportMeasureReportGroupPopulationComponentElements(element); 29610 composeElementClose(element); 29611 xml.exit(FHIR_NS, name); 29612 } 29613 } 29614 29615 protected void composeMeasureReportMeasureReportGroupPopulationComponentElements(MeasureReport.MeasureReportGroupPopulationComponent element) throws IOException { 29616 composeBackboneElements(element); 29617 if (element.hasIdentifier()) { 29618 composeIdentifier("identifier", element.getIdentifier()); 29619 } 29620 if (element.hasCode()) { 29621 composeCodeableConcept("code", element.getCode()); 29622 } 29623 if (element.hasCountElement()) { 29624 composeInteger("count", element.getCountElement()); 29625 } 29626 if (element.hasPatients()) { 29627 composeReference("patients", element.getPatients()); 29628 } 29629 } 29630 29631 protected void composeMeasureReportMeasureReportGroupStratifierComponent(String name, MeasureReport.MeasureReportGroupStratifierComponent element) throws IOException { 29632 if (element != null) { 29633 composeElementAttributes(element); 29634 xml.enter(FHIR_NS, name); 29635 composeMeasureReportMeasureReportGroupStratifierComponentElements(element); 29636 composeElementClose(element); 29637 xml.exit(FHIR_NS, name); 29638 } 29639 } 29640 29641 protected void composeMeasureReportMeasureReportGroupStratifierComponentElements(MeasureReport.MeasureReportGroupStratifierComponent element) throws IOException { 29642 composeBackboneElements(element); 29643 if (element.hasIdentifier()) { 29644 composeIdentifier("identifier", element.getIdentifier()); 29645 } 29646 if (element.hasStratum()) { 29647 for (MeasureReport.StratifierGroupComponent e : element.getStratum()) 29648 composeMeasureReportStratifierGroupComponent("stratum", e); 29649 } 29650 } 29651 29652 protected void composeMeasureReportStratifierGroupComponent(String name, MeasureReport.StratifierGroupComponent element) throws IOException { 29653 if (element != null) { 29654 composeElementAttributes(element); 29655 xml.enter(FHIR_NS, name); 29656 composeMeasureReportStratifierGroupComponentElements(element); 29657 composeElementClose(element); 29658 xml.exit(FHIR_NS, name); 29659 } 29660 } 29661 29662 protected void composeMeasureReportStratifierGroupComponentElements(MeasureReport.StratifierGroupComponent element) throws IOException { 29663 composeBackboneElements(element); 29664 if (element.hasValueElement()) { 29665 composeString("value", element.getValueElement()); 29666 } 29667 if (element.hasPopulation()) { 29668 for (MeasureReport.StratifierGroupPopulationComponent e : element.getPopulation()) 29669 composeMeasureReportStratifierGroupPopulationComponent("population", e); 29670 } 29671 if (element.hasMeasureScoreElement()) { 29672 composeDecimal("measureScore", element.getMeasureScoreElement()); 29673 } 29674 } 29675 29676 protected void composeMeasureReportStratifierGroupPopulationComponent(String name, MeasureReport.StratifierGroupPopulationComponent element) throws IOException { 29677 if (element != null) { 29678 composeElementAttributes(element); 29679 xml.enter(FHIR_NS, name); 29680 composeMeasureReportStratifierGroupPopulationComponentElements(element); 29681 composeElementClose(element); 29682 xml.exit(FHIR_NS, name); 29683 } 29684 } 29685 29686 protected void composeMeasureReportStratifierGroupPopulationComponentElements(MeasureReport.StratifierGroupPopulationComponent element) throws IOException { 29687 composeBackboneElements(element); 29688 if (element.hasIdentifier()) { 29689 composeIdentifier("identifier", element.getIdentifier()); 29690 } 29691 if (element.hasCode()) { 29692 composeCodeableConcept("code", element.getCode()); 29693 } 29694 if (element.hasCountElement()) { 29695 composeInteger("count", element.getCountElement()); 29696 } 29697 if (element.hasPatients()) { 29698 composeReference("patients", element.getPatients()); 29699 } 29700 } 29701 29702 protected void composeMedia(String name, Media element) throws IOException { 29703 if (element != null) { 29704 composeDomainResourceAttributes(element); 29705 xml.enter(FHIR_NS, name); 29706 composeMediaElements(element); 29707 composeElementClose(element); 29708 xml.exit(FHIR_NS, name); 29709 } 29710 } 29711 29712 protected void composeMediaElements(Media element) throws IOException { 29713 composeDomainResourceElements(element); 29714 if (element.hasIdentifier()) { 29715 for (Identifier e : element.getIdentifier()) 29716 composeIdentifier("identifier", e); 29717 } 29718 if (element.hasBasedOn()) { 29719 for (Reference e : element.getBasedOn()) 29720 composeReference("basedOn", e); 29721 } 29722 if (element.hasTypeElement()) 29723 composeEnumeration("type", element.getTypeElement(), new Media.DigitalMediaTypeEnumFactory()); 29724 if (element.hasSubtype()) { 29725 composeCodeableConcept("subtype", element.getSubtype()); 29726 } 29727 if (element.hasView()) { 29728 composeCodeableConcept("view", element.getView()); 29729 } 29730 if (element.hasSubject()) { 29731 composeReference("subject", element.getSubject()); 29732 } 29733 if (element.hasContext()) { 29734 composeReference("context", element.getContext()); 29735 } 29736 if (element.hasOccurrence()) { 29737 composeType("occurrence", element.getOccurrence()); 29738 } if (element.hasOperator()) { 29739 composeReference("operator", element.getOperator()); 29740 } 29741 if (element.hasReasonCode()) { 29742 for (CodeableConcept e : element.getReasonCode()) 29743 composeCodeableConcept("reasonCode", e); 29744 } 29745 if (element.hasBodySite()) { 29746 composeCodeableConcept("bodySite", element.getBodySite()); 29747 } 29748 if (element.hasDevice()) { 29749 composeReference("device", element.getDevice()); 29750 } 29751 if (element.hasHeightElement()) { 29752 composePositiveInt("height", element.getHeightElement()); 29753 } 29754 if (element.hasWidthElement()) { 29755 composePositiveInt("width", element.getWidthElement()); 29756 } 29757 if (element.hasFramesElement()) { 29758 composePositiveInt("frames", element.getFramesElement()); 29759 } 29760 if (element.hasDurationElement()) { 29761 composeUnsignedInt("duration", element.getDurationElement()); 29762 } 29763 if (element.hasContent()) { 29764 composeAttachment("content", element.getContent()); 29765 } 29766 if (element.hasNote()) { 29767 for (Annotation e : element.getNote()) 29768 composeAnnotation("note", e); 29769 } 29770 } 29771 29772 protected void composeMedication(String name, Medication element) throws IOException { 29773 if (element != null) { 29774 composeDomainResourceAttributes(element); 29775 xml.enter(FHIR_NS, name); 29776 composeMedicationElements(element); 29777 composeElementClose(element); 29778 xml.exit(FHIR_NS, name); 29779 } 29780 } 29781 29782 protected void composeMedicationElements(Medication element) throws IOException { 29783 composeDomainResourceElements(element); 29784 if (element.hasCode()) { 29785 composeCodeableConcept("code", element.getCode()); 29786 } 29787 if (element.hasStatusElement()) 29788 composeEnumeration("status", element.getStatusElement(), new Medication.MedicationStatusEnumFactory()); 29789 if (element.hasIsBrandElement()) { 29790 composeBoolean("isBrand", element.getIsBrandElement()); 29791 } 29792 if (element.hasIsOverTheCounterElement()) { 29793 composeBoolean("isOverTheCounter", element.getIsOverTheCounterElement()); 29794 } 29795 if (element.hasManufacturer()) { 29796 composeReference("manufacturer", element.getManufacturer()); 29797 } 29798 if (element.hasForm()) { 29799 composeCodeableConcept("form", element.getForm()); 29800 } 29801 if (element.hasIngredient()) { 29802 for (Medication.MedicationIngredientComponent e : element.getIngredient()) 29803 composeMedicationMedicationIngredientComponent("ingredient", e); 29804 } 29805 if (element.hasPackage()) { 29806 composeMedicationMedicationPackageComponent("package", element.getPackage()); 29807 } 29808 if (element.hasImage()) { 29809 for (Attachment e : element.getImage()) 29810 composeAttachment("image", e); 29811 } 29812 } 29813 29814 protected void composeMedicationMedicationIngredientComponent(String name, Medication.MedicationIngredientComponent element) throws IOException { 29815 if (element != null) { 29816 composeElementAttributes(element); 29817 xml.enter(FHIR_NS, name); 29818 composeMedicationMedicationIngredientComponentElements(element); 29819 composeElementClose(element); 29820 xml.exit(FHIR_NS, name); 29821 } 29822 } 29823 29824 protected void composeMedicationMedicationIngredientComponentElements(Medication.MedicationIngredientComponent element) throws IOException { 29825 composeBackboneElements(element); 29826 if (element.hasItem()) { 29827 composeType("item", element.getItem()); 29828 } if (element.hasIsActiveElement()) { 29829 composeBoolean("isActive", element.getIsActiveElement()); 29830 } 29831 if (element.hasAmount()) { 29832 composeRatio("amount", element.getAmount()); 29833 } 29834 } 29835 29836 protected void composeMedicationMedicationPackageComponent(String name, Medication.MedicationPackageComponent element) throws IOException { 29837 if (element != null) { 29838 composeElementAttributes(element); 29839 xml.enter(FHIR_NS, name); 29840 composeMedicationMedicationPackageComponentElements(element); 29841 composeElementClose(element); 29842 xml.exit(FHIR_NS, name); 29843 } 29844 } 29845 29846 protected void composeMedicationMedicationPackageComponentElements(Medication.MedicationPackageComponent element) throws IOException { 29847 composeBackboneElements(element); 29848 if (element.hasContainer()) { 29849 composeCodeableConcept("container", element.getContainer()); 29850 } 29851 if (element.hasContent()) { 29852 for (Medication.MedicationPackageContentComponent e : element.getContent()) 29853 composeMedicationMedicationPackageContentComponent("content", e); 29854 } 29855 if (element.hasBatch()) { 29856 for (Medication.MedicationPackageBatchComponent e : element.getBatch()) 29857 composeMedicationMedicationPackageBatchComponent("batch", e); 29858 } 29859 } 29860 29861 protected void composeMedicationMedicationPackageContentComponent(String name, Medication.MedicationPackageContentComponent element) throws IOException { 29862 if (element != null) { 29863 composeElementAttributes(element); 29864 xml.enter(FHIR_NS, name); 29865 composeMedicationMedicationPackageContentComponentElements(element); 29866 composeElementClose(element); 29867 xml.exit(FHIR_NS, name); 29868 } 29869 } 29870 29871 protected void composeMedicationMedicationPackageContentComponentElements(Medication.MedicationPackageContentComponent element) throws IOException { 29872 composeBackboneElements(element); 29873 if (element.hasItem()) { 29874 composeType("item", element.getItem()); 29875 } if (element.hasAmount()) { 29876 composeSimpleQuantity("amount", element.getAmount()); 29877 } 29878 } 29879 29880 protected void composeMedicationMedicationPackageBatchComponent(String name, Medication.MedicationPackageBatchComponent element) throws IOException { 29881 if (element != null) { 29882 composeElementAttributes(element); 29883 xml.enter(FHIR_NS, name); 29884 composeMedicationMedicationPackageBatchComponentElements(element); 29885 composeElementClose(element); 29886 xml.exit(FHIR_NS, name); 29887 } 29888 } 29889 29890 protected void composeMedicationMedicationPackageBatchComponentElements(Medication.MedicationPackageBatchComponent element) throws IOException { 29891 composeBackboneElements(element); 29892 if (element.hasLotNumberElement()) { 29893 composeString("lotNumber", element.getLotNumberElement()); 29894 } 29895 if (element.hasExpirationDateElement()) { 29896 composeDateTime("expirationDate", element.getExpirationDateElement()); 29897 } 29898 } 29899 29900 protected void composeMedicationAdministration(String name, MedicationAdministration element) throws IOException { 29901 if (element != null) { 29902 composeDomainResourceAttributes(element); 29903 xml.enter(FHIR_NS, name); 29904 composeMedicationAdministrationElements(element); 29905 composeElementClose(element); 29906 xml.exit(FHIR_NS, name); 29907 } 29908 } 29909 29910 protected void composeMedicationAdministrationElements(MedicationAdministration element) throws IOException { 29911 composeDomainResourceElements(element); 29912 if (element.hasIdentifier()) { 29913 for (Identifier e : element.getIdentifier()) 29914 composeIdentifier("identifier", e); 29915 } 29916 if (element.hasDefinition()) { 29917 for (Reference e : element.getDefinition()) 29918 composeReference("definition", e); 29919 } 29920 if (element.hasPartOf()) { 29921 for (Reference e : element.getPartOf()) 29922 composeReference("partOf", e); 29923 } 29924 if (element.hasStatusElement()) 29925 composeEnumeration("status", element.getStatusElement(), new MedicationAdministration.MedicationAdministrationStatusEnumFactory()); 29926 if (element.hasCategory()) { 29927 composeCodeableConcept("category", element.getCategory()); 29928 } 29929 if (element.hasMedication()) { 29930 composeType("medication", element.getMedication()); 29931 } if (element.hasSubject()) { 29932 composeReference("subject", element.getSubject()); 29933 } 29934 if (element.hasContext()) { 29935 composeReference("context", element.getContext()); 29936 } 29937 if (element.hasSupportingInformation()) { 29938 for (Reference e : element.getSupportingInformation()) 29939 composeReference("supportingInformation", e); 29940 } 29941 if (element.hasEffective()) { 29942 composeType("effective", element.getEffective()); 29943 } if (element.hasPerformer()) { 29944 for (MedicationAdministration.MedicationAdministrationPerformerComponent e : element.getPerformer()) 29945 composeMedicationAdministrationMedicationAdministrationPerformerComponent("performer", e); 29946 } 29947 if (element.hasNotGivenElement()) { 29948 composeBoolean("notGiven", element.getNotGivenElement()); 29949 } 29950 if (element.hasReasonNotGiven()) { 29951 for (CodeableConcept e : element.getReasonNotGiven()) 29952 composeCodeableConcept("reasonNotGiven", e); 29953 } 29954 if (element.hasReasonCode()) { 29955 for (CodeableConcept e : element.getReasonCode()) 29956 composeCodeableConcept("reasonCode", e); 29957 } 29958 if (element.hasReasonReference()) { 29959 for (Reference e : element.getReasonReference()) 29960 composeReference("reasonReference", e); 29961 } 29962 if (element.hasPrescription()) { 29963 composeReference("prescription", element.getPrescription()); 29964 } 29965 if (element.hasDevice()) { 29966 for (Reference e : element.getDevice()) 29967 composeReference("device", e); 29968 } 29969 if (element.hasNote()) { 29970 for (Annotation e : element.getNote()) 29971 composeAnnotation("note", e); 29972 } 29973 if (element.hasDosage()) { 29974 composeMedicationAdministrationMedicationAdministrationDosageComponent("dosage", element.getDosage()); 29975 } 29976 if (element.hasEventHistory()) { 29977 for (Reference e : element.getEventHistory()) 29978 composeReference("eventHistory", e); 29979 } 29980 } 29981 29982 protected void composeMedicationAdministrationMedicationAdministrationPerformerComponent(String name, MedicationAdministration.MedicationAdministrationPerformerComponent element) throws IOException { 29983 if (element != null) { 29984 composeElementAttributes(element); 29985 xml.enter(FHIR_NS, name); 29986 composeMedicationAdministrationMedicationAdministrationPerformerComponentElements(element); 29987 composeElementClose(element); 29988 xml.exit(FHIR_NS, name); 29989 } 29990 } 29991 29992 protected void composeMedicationAdministrationMedicationAdministrationPerformerComponentElements(MedicationAdministration.MedicationAdministrationPerformerComponent element) throws IOException { 29993 composeBackboneElements(element); 29994 if (element.hasActor()) { 29995 composeReference("actor", element.getActor()); 29996 } 29997 if (element.hasOnBehalfOf()) { 29998 composeReference("onBehalfOf", element.getOnBehalfOf()); 29999 } 30000 } 30001 30002 protected void composeMedicationAdministrationMedicationAdministrationDosageComponent(String name, MedicationAdministration.MedicationAdministrationDosageComponent element) throws IOException { 30003 if (element != null) { 30004 composeElementAttributes(element); 30005 xml.enter(FHIR_NS, name); 30006 composeMedicationAdministrationMedicationAdministrationDosageComponentElements(element); 30007 composeElementClose(element); 30008 xml.exit(FHIR_NS, name); 30009 } 30010 } 30011 30012 protected void composeMedicationAdministrationMedicationAdministrationDosageComponentElements(MedicationAdministration.MedicationAdministrationDosageComponent element) throws IOException { 30013 composeBackboneElements(element); 30014 if (element.hasTextElement()) { 30015 composeString("text", element.getTextElement()); 30016 } 30017 if (element.hasSite()) { 30018 composeCodeableConcept("site", element.getSite()); 30019 } 30020 if (element.hasRoute()) { 30021 composeCodeableConcept("route", element.getRoute()); 30022 } 30023 if (element.hasMethod()) { 30024 composeCodeableConcept("method", element.getMethod()); 30025 } 30026 if (element.hasDose()) { 30027 composeSimpleQuantity("dose", element.getDose()); 30028 } 30029 if (element.hasRate()) { 30030 composeType("rate", element.getRate()); 30031 } } 30032 30033 protected void composeMedicationDispense(String name, MedicationDispense element) throws IOException { 30034 if (element != null) { 30035 composeDomainResourceAttributes(element); 30036 xml.enter(FHIR_NS, name); 30037 composeMedicationDispenseElements(element); 30038 composeElementClose(element); 30039 xml.exit(FHIR_NS, name); 30040 } 30041 } 30042 30043 protected void composeMedicationDispenseElements(MedicationDispense element) throws IOException { 30044 composeDomainResourceElements(element); 30045 if (element.hasIdentifier()) { 30046 for (Identifier e : element.getIdentifier()) 30047 composeIdentifier("identifier", e); 30048 } 30049 if (element.hasPartOf()) { 30050 for (Reference e : element.getPartOf()) 30051 composeReference("partOf", e); 30052 } 30053 if (element.hasStatusElement()) 30054 composeEnumeration("status", element.getStatusElement(), new MedicationDispense.MedicationDispenseStatusEnumFactory()); 30055 if (element.hasCategory()) { 30056 composeCodeableConcept("category", element.getCategory()); 30057 } 30058 if (element.hasMedication()) { 30059 composeType("medication", element.getMedication()); 30060 } if (element.hasSubject()) { 30061 composeReference("subject", element.getSubject()); 30062 } 30063 if (element.hasContext()) { 30064 composeReference("context", element.getContext()); 30065 } 30066 if (element.hasSupportingInformation()) { 30067 for (Reference e : element.getSupportingInformation()) 30068 composeReference("supportingInformation", e); 30069 } 30070 if (element.hasPerformer()) { 30071 for (MedicationDispense.MedicationDispensePerformerComponent e : element.getPerformer()) 30072 composeMedicationDispenseMedicationDispensePerformerComponent("performer", e); 30073 } 30074 if (element.hasAuthorizingPrescription()) { 30075 for (Reference e : element.getAuthorizingPrescription()) 30076 composeReference("authorizingPrescription", e); 30077 } 30078 if (element.hasType()) { 30079 composeCodeableConcept("type", element.getType()); 30080 } 30081 if (element.hasQuantity()) { 30082 composeSimpleQuantity("quantity", element.getQuantity()); 30083 } 30084 if (element.hasDaysSupply()) { 30085 composeSimpleQuantity("daysSupply", element.getDaysSupply()); 30086 } 30087 if (element.hasWhenPreparedElement()) { 30088 composeDateTime("whenPrepared", element.getWhenPreparedElement()); 30089 } 30090 if (element.hasWhenHandedOverElement()) { 30091 composeDateTime("whenHandedOver", element.getWhenHandedOverElement()); 30092 } 30093 if (element.hasDestination()) { 30094 composeReference("destination", element.getDestination()); 30095 } 30096 if (element.hasReceiver()) { 30097 for (Reference e : element.getReceiver()) 30098 composeReference("receiver", e); 30099 } 30100 if (element.hasNote()) { 30101 for (Annotation e : element.getNote()) 30102 composeAnnotation("note", e); 30103 } 30104 if (element.hasDosageInstruction()) { 30105 for (Dosage e : element.getDosageInstruction()) 30106 composeDosage("dosageInstruction", e); 30107 } 30108 if (element.hasSubstitution()) { 30109 composeMedicationDispenseMedicationDispenseSubstitutionComponent("substitution", element.getSubstitution()); 30110 } 30111 if (element.hasDetectedIssue()) { 30112 for (Reference e : element.getDetectedIssue()) 30113 composeReference("detectedIssue", e); 30114 } 30115 if (element.hasNotDoneElement()) { 30116 composeBoolean("notDone", element.getNotDoneElement()); 30117 } 30118 if (element.hasNotDoneReason()) { 30119 composeType("notDoneReason", element.getNotDoneReason()); 30120 } if (element.hasEventHistory()) { 30121 for (Reference e : element.getEventHistory()) 30122 composeReference("eventHistory", e); 30123 } 30124 } 30125 30126 protected void composeMedicationDispenseMedicationDispensePerformerComponent(String name, MedicationDispense.MedicationDispensePerformerComponent element) throws IOException { 30127 if (element != null) { 30128 composeElementAttributes(element); 30129 xml.enter(FHIR_NS, name); 30130 composeMedicationDispenseMedicationDispensePerformerComponentElements(element); 30131 composeElementClose(element); 30132 xml.exit(FHIR_NS, name); 30133 } 30134 } 30135 30136 protected void composeMedicationDispenseMedicationDispensePerformerComponentElements(MedicationDispense.MedicationDispensePerformerComponent element) throws IOException { 30137 composeBackboneElements(element); 30138 if (element.hasActor()) { 30139 composeReference("actor", element.getActor()); 30140 } 30141 if (element.hasOnBehalfOf()) { 30142 composeReference("onBehalfOf", element.getOnBehalfOf()); 30143 } 30144 } 30145 30146 protected void composeMedicationDispenseMedicationDispenseSubstitutionComponent(String name, MedicationDispense.MedicationDispenseSubstitutionComponent element) throws IOException { 30147 if (element != null) { 30148 composeElementAttributes(element); 30149 xml.enter(FHIR_NS, name); 30150 composeMedicationDispenseMedicationDispenseSubstitutionComponentElements(element); 30151 composeElementClose(element); 30152 xml.exit(FHIR_NS, name); 30153 } 30154 } 30155 30156 protected void composeMedicationDispenseMedicationDispenseSubstitutionComponentElements(MedicationDispense.MedicationDispenseSubstitutionComponent element) throws IOException { 30157 composeBackboneElements(element); 30158 if (element.hasWasSubstitutedElement()) { 30159 composeBoolean("wasSubstituted", element.getWasSubstitutedElement()); 30160 } 30161 if (element.hasType()) { 30162 composeCodeableConcept("type", element.getType()); 30163 } 30164 if (element.hasReason()) { 30165 for (CodeableConcept e : element.getReason()) 30166 composeCodeableConcept("reason", e); 30167 } 30168 if (element.hasResponsibleParty()) { 30169 for (Reference e : element.getResponsibleParty()) 30170 composeReference("responsibleParty", e); 30171 } 30172 } 30173 30174 protected void composeMedicationRequest(String name, MedicationRequest element) throws IOException { 30175 if (element != null) { 30176 composeDomainResourceAttributes(element); 30177 xml.enter(FHIR_NS, name); 30178 composeMedicationRequestElements(element); 30179 composeElementClose(element); 30180 xml.exit(FHIR_NS, name); 30181 } 30182 } 30183 30184 protected void composeMedicationRequestElements(MedicationRequest element) throws IOException { 30185 composeDomainResourceElements(element); 30186 if (element.hasIdentifier()) { 30187 for (Identifier e : element.getIdentifier()) 30188 composeIdentifier("identifier", e); 30189 } 30190 if (element.hasDefinition()) { 30191 for (Reference e : element.getDefinition()) 30192 composeReference("definition", e); 30193 } 30194 if (element.hasBasedOn()) { 30195 for (Reference e : element.getBasedOn()) 30196 composeReference("basedOn", e); 30197 } 30198 if (element.hasGroupIdentifier()) { 30199 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 30200 } 30201 if (element.hasStatusElement()) 30202 composeEnumeration("status", element.getStatusElement(), new MedicationRequest.MedicationRequestStatusEnumFactory()); 30203 if (element.hasIntentElement()) 30204 composeEnumeration("intent", element.getIntentElement(), new MedicationRequest.MedicationRequestIntentEnumFactory()); 30205 if (element.hasCategory()) { 30206 composeCodeableConcept("category", element.getCategory()); 30207 } 30208 if (element.hasPriorityElement()) 30209 composeEnumeration("priority", element.getPriorityElement(), new MedicationRequest.MedicationRequestPriorityEnumFactory()); 30210 if (element.hasMedication()) { 30211 composeType("medication", element.getMedication()); 30212 } if (element.hasSubject()) { 30213 composeReference("subject", element.getSubject()); 30214 } 30215 if (element.hasContext()) { 30216 composeReference("context", element.getContext()); 30217 } 30218 if (element.hasSupportingInformation()) { 30219 for (Reference e : element.getSupportingInformation()) 30220 composeReference("supportingInformation", e); 30221 } 30222 if (element.hasAuthoredOnElement()) { 30223 composeDateTime("authoredOn", element.getAuthoredOnElement()); 30224 } 30225 if (element.hasRequester()) { 30226 composeMedicationRequestMedicationRequestRequesterComponent("requester", element.getRequester()); 30227 } 30228 if (element.hasRecorder()) { 30229 composeReference("recorder", element.getRecorder()); 30230 } 30231 if (element.hasReasonCode()) { 30232 for (CodeableConcept e : element.getReasonCode()) 30233 composeCodeableConcept("reasonCode", e); 30234 } 30235 if (element.hasReasonReference()) { 30236 for (Reference e : element.getReasonReference()) 30237 composeReference("reasonReference", e); 30238 } 30239 if (element.hasNote()) { 30240 for (Annotation e : element.getNote()) 30241 composeAnnotation("note", e); 30242 } 30243 if (element.hasDosageInstruction()) { 30244 for (Dosage e : element.getDosageInstruction()) 30245 composeDosage("dosageInstruction", e); 30246 } 30247 if (element.hasDispenseRequest()) { 30248 composeMedicationRequestMedicationRequestDispenseRequestComponent("dispenseRequest", element.getDispenseRequest()); 30249 } 30250 if (element.hasSubstitution()) { 30251 composeMedicationRequestMedicationRequestSubstitutionComponent("substitution", element.getSubstitution()); 30252 } 30253 if (element.hasPriorPrescription()) { 30254 composeReference("priorPrescription", element.getPriorPrescription()); 30255 } 30256 if (element.hasDetectedIssue()) { 30257 for (Reference e : element.getDetectedIssue()) 30258 composeReference("detectedIssue", e); 30259 } 30260 if (element.hasEventHistory()) { 30261 for (Reference e : element.getEventHistory()) 30262 composeReference("eventHistory", e); 30263 } 30264 } 30265 30266 protected void composeMedicationRequestMedicationRequestRequesterComponent(String name, MedicationRequest.MedicationRequestRequesterComponent element) throws IOException { 30267 if (element != null) { 30268 composeElementAttributes(element); 30269 xml.enter(FHIR_NS, name); 30270 composeMedicationRequestMedicationRequestRequesterComponentElements(element); 30271 composeElementClose(element); 30272 xml.exit(FHIR_NS, name); 30273 } 30274 } 30275 30276 protected void composeMedicationRequestMedicationRequestRequesterComponentElements(MedicationRequest.MedicationRequestRequesterComponent element) throws IOException { 30277 composeBackboneElements(element); 30278 if (element.hasAgent()) { 30279 composeReference("agent", element.getAgent()); 30280 } 30281 if (element.hasOnBehalfOf()) { 30282 composeReference("onBehalfOf", element.getOnBehalfOf()); 30283 } 30284 } 30285 30286 protected void composeMedicationRequestMedicationRequestDispenseRequestComponent(String name, MedicationRequest.MedicationRequestDispenseRequestComponent element) throws IOException { 30287 if (element != null) { 30288 composeElementAttributes(element); 30289 xml.enter(FHIR_NS, name); 30290 composeMedicationRequestMedicationRequestDispenseRequestComponentElements(element); 30291 composeElementClose(element); 30292 xml.exit(FHIR_NS, name); 30293 } 30294 } 30295 30296 protected void composeMedicationRequestMedicationRequestDispenseRequestComponentElements(MedicationRequest.MedicationRequestDispenseRequestComponent element) throws IOException { 30297 composeBackboneElements(element); 30298 if (element.hasValidityPeriod()) { 30299 composePeriod("validityPeriod", element.getValidityPeriod()); 30300 } 30301 if (element.hasNumberOfRepeatsAllowedElement()) { 30302 composePositiveInt("numberOfRepeatsAllowed", element.getNumberOfRepeatsAllowedElement()); 30303 } 30304 if (element.hasQuantity()) { 30305 composeSimpleQuantity("quantity", element.getQuantity()); 30306 } 30307 if (element.hasExpectedSupplyDuration()) { 30308 composeDuration("expectedSupplyDuration", element.getExpectedSupplyDuration()); 30309 } 30310 if (element.hasPerformer()) { 30311 composeReference("performer", element.getPerformer()); 30312 } 30313 } 30314 30315 protected void composeMedicationRequestMedicationRequestSubstitutionComponent(String name, MedicationRequest.MedicationRequestSubstitutionComponent element) throws IOException { 30316 if (element != null) { 30317 composeElementAttributes(element); 30318 xml.enter(FHIR_NS, name); 30319 composeMedicationRequestMedicationRequestSubstitutionComponentElements(element); 30320 composeElementClose(element); 30321 xml.exit(FHIR_NS, name); 30322 } 30323 } 30324 30325 protected void composeMedicationRequestMedicationRequestSubstitutionComponentElements(MedicationRequest.MedicationRequestSubstitutionComponent element) throws IOException { 30326 composeBackboneElements(element); 30327 if (element.hasAllowedElement()) { 30328 composeBoolean("allowed", element.getAllowedElement()); 30329 } 30330 if (element.hasReason()) { 30331 composeCodeableConcept("reason", element.getReason()); 30332 } 30333 } 30334 30335 protected void composeMedicationStatement(String name, MedicationStatement element) throws IOException { 30336 if (element != null) { 30337 composeDomainResourceAttributes(element); 30338 xml.enter(FHIR_NS, name); 30339 composeMedicationStatementElements(element); 30340 composeElementClose(element); 30341 xml.exit(FHIR_NS, name); 30342 } 30343 } 30344 30345 protected void composeMedicationStatementElements(MedicationStatement element) throws IOException { 30346 composeDomainResourceElements(element); 30347 if (element.hasIdentifier()) { 30348 for (Identifier e : element.getIdentifier()) 30349 composeIdentifier("identifier", e); 30350 } 30351 if (element.hasBasedOn()) { 30352 for (Reference e : element.getBasedOn()) 30353 composeReference("basedOn", e); 30354 } 30355 if (element.hasPartOf()) { 30356 for (Reference e : element.getPartOf()) 30357 composeReference("partOf", e); 30358 } 30359 if (element.hasContext()) { 30360 composeReference("context", element.getContext()); 30361 } 30362 if (element.hasStatusElement()) 30363 composeEnumeration("status", element.getStatusElement(), new MedicationStatement.MedicationStatementStatusEnumFactory()); 30364 if (element.hasCategory()) { 30365 composeCodeableConcept("category", element.getCategory()); 30366 } 30367 if (element.hasMedication()) { 30368 composeType("medication", element.getMedication()); 30369 } if (element.hasEffective()) { 30370 composeType("effective", element.getEffective()); 30371 } if (element.hasDateAssertedElement()) { 30372 composeDateTime("dateAsserted", element.getDateAssertedElement()); 30373 } 30374 if (element.hasInformationSource()) { 30375 composeReference("informationSource", element.getInformationSource()); 30376 } 30377 if (element.hasSubject()) { 30378 composeReference("subject", element.getSubject()); 30379 } 30380 if (element.hasDerivedFrom()) { 30381 for (Reference e : element.getDerivedFrom()) 30382 composeReference("derivedFrom", e); 30383 } 30384 if (element.hasTakenElement()) 30385 composeEnumeration("taken", element.getTakenElement(), new MedicationStatement.MedicationStatementTakenEnumFactory()); 30386 if (element.hasReasonNotTaken()) { 30387 for (CodeableConcept e : element.getReasonNotTaken()) 30388 composeCodeableConcept("reasonNotTaken", e); 30389 } 30390 if (element.hasReasonCode()) { 30391 for (CodeableConcept e : element.getReasonCode()) 30392 composeCodeableConcept("reasonCode", e); 30393 } 30394 if (element.hasReasonReference()) { 30395 for (Reference e : element.getReasonReference()) 30396 composeReference("reasonReference", e); 30397 } 30398 if (element.hasNote()) { 30399 for (Annotation e : element.getNote()) 30400 composeAnnotation("note", e); 30401 } 30402 if (element.hasDosage()) { 30403 for (Dosage e : element.getDosage()) 30404 composeDosage("dosage", e); 30405 } 30406 } 30407 30408 protected void composeMessageDefinition(String name, MessageDefinition element) throws IOException { 30409 if (element != null) { 30410 composeDomainResourceAttributes(element); 30411 xml.enter(FHIR_NS, name); 30412 composeMessageDefinitionElements(element); 30413 composeElementClose(element); 30414 xml.exit(FHIR_NS, name); 30415 } 30416 } 30417 30418 protected void composeMessageDefinitionElements(MessageDefinition element) throws IOException { 30419 composeDomainResourceElements(element); 30420 if (element.hasUrlElement()) { 30421 composeUri("url", element.getUrlElement()); 30422 } 30423 if (element.hasIdentifier()) { 30424 composeIdentifier("identifier", element.getIdentifier()); 30425 } 30426 if (element.hasVersionElement()) { 30427 composeString("version", element.getVersionElement()); 30428 } 30429 if (element.hasNameElement()) { 30430 composeString("name", element.getNameElement()); 30431 } 30432 if (element.hasTitleElement()) { 30433 composeString("title", element.getTitleElement()); 30434 } 30435 if (element.hasStatusElement()) 30436 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 30437 if (element.hasExperimentalElement()) { 30438 composeBoolean("experimental", element.getExperimentalElement()); 30439 } 30440 if (element.hasDateElement()) { 30441 composeDateTime("date", element.getDateElement()); 30442 } 30443 if (element.hasPublisherElement()) { 30444 composeString("publisher", element.getPublisherElement()); 30445 } 30446 if (element.hasContact()) { 30447 for (ContactDetail e : element.getContact()) 30448 composeContactDetail("contact", e); 30449 } 30450 if (element.hasDescriptionElement()) { 30451 composeMarkdown("description", element.getDescriptionElement()); 30452 } 30453 if (element.hasUseContext()) { 30454 for (UsageContext e : element.getUseContext()) 30455 composeUsageContext("useContext", e); 30456 } 30457 if (element.hasJurisdiction()) { 30458 for (CodeableConcept e : element.getJurisdiction()) 30459 composeCodeableConcept("jurisdiction", e); 30460 } 30461 if (element.hasPurposeElement()) { 30462 composeMarkdown("purpose", element.getPurposeElement()); 30463 } 30464 if (element.hasCopyrightElement()) { 30465 composeMarkdown("copyright", element.getCopyrightElement()); 30466 } 30467 if (element.hasBase()) { 30468 composeReference("base", element.getBase()); 30469 } 30470 if (element.hasParent()) { 30471 for (Reference e : element.getParent()) 30472 composeReference("parent", e); 30473 } 30474 if (element.hasReplaces()) { 30475 for (Reference e : element.getReplaces()) 30476 composeReference("replaces", e); 30477 } 30478 if (element.hasEvent()) { 30479 composeCoding("event", element.getEvent()); 30480 } 30481 if (element.hasCategoryElement()) 30482 composeEnumeration("category", element.getCategoryElement(), new MessageDefinition.MessageSignificanceCategoryEnumFactory()); 30483 if (element.hasFocus()) { 30484 for (MessageDefinition.MessageDefinitionFocusComponent e : element.getFocus()) 30485 composeMessageDefinitionMessageDefinitionFocusComponent("focus", e); 30486 } 30487 if (element.hasResponseRequiredElement()) { 30488 composeBoolean("responseRequired", element.getResponseRequiredElement()); 30489 } 30490 if (element.hasAllowedResponse()) { 30491 for (MessageDefinition.MessageDefinitionAllowedResponseComponent e : element.getAllowedResponse()) 30492 composeMessageDefinitionMessageDefinitionAllowedResponseComponent("allowedResponse", e); 30493 } 30494 } 30495 30496 protected void composeMessageDefinitionMessageDefinitionFocusComponent(String name, MessageDefinition.MessageDefinitionFocusComponent element) throws IOException { 30497 if (element != null) { 30498 composeElementAttributes(element); 30499 xml.enter(FHIR_NS, name); 30500 composeMessageDefinitionMessageDefinitionFocusComponentElements(element); 30501 composeElementClose(element); 30502 xml.exit(FHIR_NS, name); 30503 } 30504 } 30505 30506 protected void composeMessageDefinitionMessageDefinitionFocusComponentElements(MessageDefinition.MessageDefinitionFocusComponent element) throws IOException { 30507 composeBackboneElements(element); 30508 if (element.hasCodeElement()) { 30509 composeCode("code", element.getCodeElement()); 30510 } 30511 if (element.hasProfile()) { 30512 composeReference("profile", element.getProfile()); 30513 } 30514 if (element.hasMinElement()) { 30515 composeUnsignedInt("min", element.getMinElement()); 30516 } 30517 if (element.hasMaxElement()) { 30518 composeString("max", element.getMaxElement()); 30519 } 30520 } 30521 30522 protected void composeMessageDefinitionMessageDefinitionAllowedResponseComponent(String name, MessageDefinition.MessageDefinitionAllowedResponseComponent element) throws IOException { 30523 if (element != null) { 30524 composeElementAttributes(element); 30525 xml.enter(FHIR_NS, name); 30526 composeMessageDefinitionMessageDefinitionAllowedResponseComponentElements(element); 30527 composeElementClose(element); 30528 xml.exit(FHIR_NS, name); 30529 } 30530 } 30531 30532 protected void composeMessageDefinitionMessageDefinitionAllowedResponseComponentElements(MessageDefinition.MessageDefinitionAllowedResponseComponent element) throws IOException { 30533 composeBackboneElements(element); 30534 if (element.hasMessage()) { 30535 composeReference("message", element.getMessage()); 30536 } 30537 if (element.hasSituationElement()) { 30538 composeMarkdown("situation", element.getSituationElement()); 30539 } 30540 } 30541 30542 protected void composeMessageHeader(String name, MessageHeader element) throws IOException { 30543 if (element != null) { 30544 composeDomainResourceAttributes(element); 30545 xml.enter(FHIR_NS, name); 30546 composeMessageHeaderElements(element); 30547 composeElementClose(element); 30548 xml.exit(FHIR_NS, name); 30549 } 30550 } 30551 30552 protected void composeMessageHeaderElements(MessageHeader element) throws IOException { 30553 composeDomainResourceElements(element); 30554 if (element.hasEvent()) { 30555 composeCoding("event", element.getEvent()); 30556 } 30557 if (element.hasDestination()) { 30558 for (MessageHeader.MessageDestinationComponent e : element.getDestination()) 30559 composeMessageHeaderMessageDestinationComponent("destination", e); 30560 } 30561 if (element.hasReceiver()) { 30562 composeReference("receiver", element.getReceiver()); 30563 } 30564 if (element.hasSender()) { 30565 composeReference("sender", element.getSender()); 30566 } 30567 if (element.hasTimestampElement()) { 30568 composeInstant("timestamp", element.getTimestampElement()); 30569 } 30570 if (element.hasEnterer()) { 30571 composeReference("enterer", element.getEnterer()); 30572 } 30573 if (element.hasAuthor()) { 30574 composeReference("author", element.getAuthor()); 30575 } 30576 if (element.hasSource()) { 30577 composeMessageHeaderMessageSourceComponent("source", element.getSource()); 30578 } 30579 if (element.hasResponsible()) { 30580 composeReference("responsible", element.getResponsible()); 30581 } 30582 if (element.hasReason()) { 30583 composeCodeableConcept("reason", element.getReason()); 30584 } 30585 if (element.hasResponse()) { 30586 composeMessageHeaderMessageHeaderResponseComponent("response", element.getResponse()); 30587 } 30588 if (element.hasFocus()) { 30589 for (Reference e : element.getFocus()) 30590 composeReference("focus", e); 30591 } 30592 } 30593 30594 protected void composeMessageHeaderMessageDestinationComponent(String name, MessageHeader.MessageDestinationComponent element) throws IOException { 30595 if (element != null) { 30596 composeElementAttributes(element); 30597 xml.enter(FHIR_NS, name); 30598 composeMessageHeaderMessageDestinationComponentElements(element); 30599 composeElementClose(element); 30600 xml.exit(FHIR_NS, name); 30601 } 30602 } 30603 30604 protected void composeMessageHeaderMessageDestinationComponentElements(MessageHeader.MessageDestinationComponent element) throws IOException { 30605 composeBackboneElements(element); 30606 if (element.hasNameElement()) { 30607 composeString("name", element.getNameElement()); 30608 } 30609 if (element.hasTarget()) { 30610 composeReference("target", element.getTarget()); 30611 } 30612 if (element.hasEndpointElement()) { 30613 composeUri("endpoint", element.getEndpointElement()); 30614 } 30615 } 30616 30617 protected void composeMessageHeaderMessageSourceComponent(String name, MessageHeader.MessageSourceComponent element) throws IOException { 30618 if (element != null) { 30619 composeElementAttributes(element); 30620 xml.enter(FHIR_NS, name); 30621 composeMessageHeaderMessageSourceComponentElements(element); 30622 composeElementClose(element); 30623 xml.exit(FHIR_NS, name); 30624 } 30625 } 30626 30627 protected void composeMessageHeaderMessageSourceComponentElements(MessageHeader.MessageSourceComponent element) throws IOException { 30628 composeBackboneElements(element); 30629 if (element.hasNameElement()) { 30630 composeString("name", element.getNameElement()); 30631 } 30632 if (element.hasSoftwareElement()) { 30633 composeString("software", element.getSoftwareElement()); 30634 } 30635 if (element.hasVersionElement()) { 30636 composeString("version", element.getVersionElement()); 30637 } 30638 if (element.hasContact()) { 30639 composeContactPoint("contact", element.getContact()); 30640 } 30641 if (element.hasEndpointElement()) { 30642 composeUri("endpoint", element.getEndpointElement()); 30643 } 30644 } 30645 30646 protected void composeMessageHeaderMessageHeaderResponseComponent(String name, MessageHeader.MessageHeaderResponseComponent element) throws IOException { 30647 if (element != null) { 30648 composeElementAttributes(element); 30649 xml.enter(FHIR_NS, name); 30650 composeMessageHeaderMessageHeaderResponseComponentElements(element); 30651 composeElementClose(element); 30652 xml.exit(FHIR_NS, name); 30653 } 30654 } 30655 30656 protected void composeMessageHeaderMessageHeaderResponseComponentElements(MessageHeader.MessageHeaderResponseComponent element) throws IOException { 30657 composeBackboneElements(element); 30658 if (element.hasIdentifierElement()) { 30659 composeId("identifier", element.getIdentifierElement()); 30660 } 30661 if (element.hasCodeElement()) 30662 composeEnumeration("code", element.getCodeElement(), new MessageHeader.ResponseTypeEnumFactory()); 30663 if (element.hasDetails()) { 30664 composeReference("details", element.getDetails()); 30665 } 30666 } 30667 30668 protected void composeNamingSystem(String name, NamingSystem element) throws IOException { 30669 if (element != null) { 30670 composeDomainResourceAttributes(element); 30671 xml.enter(FHIR_NS, name); 30672 composeNamingSystemElements(element); 30673 composeElementClose(element); 30674 xml.exit(FHIR_NS, name); 30675 } 30676 } 30677 30678 protected void composeNamingSystemElements(NamingSystem element) throws IOException { 30679 composeDomainResourceElements(element); 30680 if (element.hasNameElement()) { 30681 composeString("name", element.getNameElement()); 30682 } 30683 if (element.hasStatusElement()) 30684 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 30685 if (element.hasKindElement()) 30686 composeEnumeration("kind", element.getKindElement(), new NamingSystem.NamingSystemTypeEnumFactory()); 30687 if (element.hasDateElement()) { 30688 composeDateTime("date", element.getDateElement()); 30689 } 30690 if (element.hasPublisherElement()) { 30691 composeString("publisher", element.getPublisherElement()); 30692 } 30693 if (element.hasContact()) { 30694 for (ContactDetail e : element.getContact()) 30695 composeContactDetail("contact", e); 30696 } 30697 if (element.hasResponsibleElement()) { 30698 composeString("responsible", element.getResponsibleElement()); 30699 } 30700 if (element.hasType()) { 30701 composeCodeableConcept("type", element.getType()); 30702 } 30703 if (element.hasDescriptionElement()) { 30704 composeMarkdown("description", element.getDescriptionElement()); 30705 } 30706 if (element.hasUseContext()) { 30707 for (UsageContext e : element.getUseContext()) 30708 composeUsageContext("useContext", e); 30709 } 30710 if (element.hasJurisdiction()) { 30711 for (CodeableConcept e : element.getJurisdiction()) 30712 composeCodeableConcept("jurisdiction", e); 30713 } 30714 if (element.hasUsageElement()) { 30715 composeString("usage", element.getUsageElement()); 30716 } 30717 if (element.hasUniqueId()) { 30718 for (NamingSystem.NamingSystemUniqueIdComponent e : element.getUniqueId()) 30719 composeNamingSystemNamingSystemUniqueIdComponent("uniqueId", e); 30720 } 30721 if (element.hasReplacedBy()) { 30722 composeReference("replacedBy", element.getReplacedBy()); 30723 } 30724 } 30725 30726 protected void composeNamingSystemNamingSystemUniqueIdComponent(String name, NamingSystem.NamingSystemUniqueIdComponent element) throws IOException { 30727 if (element != null) { 30728 composeElementAttributes(element); 30729 xml.enter(FHIR_NS, name); 30730 composeNamingSystemNamingSystemUniqueIdComponentElements(element); 30731 composeElementClose(element); 30732 xml.exit(FHIR_NS, name); 30733 } 30734 } 30735 30736 protected void composeNamingSystemNamingSystemUniqueIdComponentElements(NamingSystem.NamingSystemUniqueIdComponent element) throws IOException { 30737 composeBackboneElements(element); 30738 if (element.hasTypeElement()) 30739 composeEnumeration("type", element.getTypeElement(), new NamingSystem.NamingSystemIdentifierTypeEnumFactory()); 30740 if (element.hasValueElement()) { 30741 composeString("value", element.getValueElement()); 30742 } 30743 if (element.hasPreferredElement()) { 30744 composeBoolean("preferred", element.getPreferredElement()); 30745 } 30746 if (element.hasCommentElement()) { 30747 composeString("comment", element.getCommentElement()); 30748 } 30749 if (element.hasPeriod()) { 30750 composePeriod("period", element.getPeriod()); 30751 } 30752 } 30753 30754 protected void composeNutritionOrder(String name, NutritionOrder element) throws IOException { 30755 if (element != null) { 30756 composeDomainResourceAttributes(element); 30757 xml.enter(FHIR_NS, name); 30758 composeNutritionOrderElements(element); 30759 composeElementClose(element); 30760 xml.exit(FHIR_NS, name); 30761 } 30762 } 30763 30764 protected void composeNutritionOrderElements(NutritionOrder element) throws IOException { 30765 composeDomainResourceElements(element); 30766 if (element.hasIdentifier()) { 30767 for (Identifier e : element.getIdentifier()) 30768 composeIdentifier("identifier", e); 30769 } 30770 if (element.hasStatusElement()) 30771 composeEnumeration("status", element.getStatusElement(), new NutritionOrder.NutritionOrderStatusEnumFactory()); 30772 if (element.hasPatient()) { 30773 composeReference("patient", element.getPatient()); 30774 } 30775 if (element.hasEncounter()) { 30776 composeReference("encounter", element.getEncounter()); 30777 } 30778 if (element.hasDateTimeElement()) { 30779 composeDateTime("dateTime", element.getDateTimeElement()); 30780 } 30781 if (element.hasOrderer()) { 30782 composeReference("orderer", element.getOrderer()); 30783 } 30784 if (element.hasAllergyIntolerance()) { 30785 for (Reference e : element.getAllergyIntolerance()) 30786 composeReference("allergyIntolerance", e); 30787 } 30788 if (element.hasFoodPreferenceModifier()) { 30789 for (CodeableConcept e : element.getFoodPreferenceModifier()) 30790 composeCodeableConcept("foodPreferenceModifier", e); 30791 } 30792 if (element.hasExcludeFoodModifier()) { 30793 for (CodeableConcept e : element.getExcludeFoodModifier()) 30794 composeCodeableConcept("excludeFoodModifier", e); 30795 } 30796 if (element.hasOralDiet()) { 30797 composeNutritionOrderNutritionOrderOralDietComponent("oralDiet", element.getOralDiet()); 30798 } 30799 if (element.hasSupplement()) { 30800 for (NutritionOrder.NutritionOrderSupplementComponent e : element.getSupplement()) 30801 composeNutritionOrderNutritionOrderSupplementComponent("supplement", e); 30802 } 30803 if (element.hasEnteralFormula()) { 30804 composeNutritionOrderNutritionOrderEnteralFormulaComponent("enteralFormula", element.getEnteralFormula()); 30805 } 30806 } 30807 30808 protected void composeNutritionOrderNutritionOrderOralDietComponent(String name, NutritionOrder.NutritionOrderOralDietComponent element) throws IOException { 30809 if (element != null) { 30810 composeElementAttributes(element); 30811 xml.enter(FHIR_NS, name); 30812 composeNutritionOrderNutritionOrderOralDietComponentElements(element); 30813 composeElementClose(element); 30814 xml.exit(FHIR_NS, name); 30815 } 30816 } 30817 30818 protected void composeNutritionOrderNutritionOrderOralDietComponentElements(NutritionOrder.NutritionOrderOralDietComponent element) throws IOException { 30819 composeBackboneElements(element); 30820 if (element.hasType()) { 30821 for (CodeableConcept e : element.getType()) 30822 composeCodeableConcept("type", e); 30823 } 30824 if (element.hasSchedule()) { 30825 for (Timing e : element.getSchedule()) 30826 composeTiming("schedule", e); 30827 } 30828 if (element.hasNutrient()) { 30829 for (NutritionOrder.NutritionOrderOralDietNutrientComponent e : element.getNutrient()) 30830 composeNutritionOrderNutritionOrderOralDietNutrientComponent("nutrient", e); 30831 } 30832 if (element.hasTexture()) { 30833 for (NutritionOrder.NutritionOrderOralDietTextureComponent e : element.getTexture()) 30834 composeNutritionOrderNutritionOrderOralDietTextureComponent("texture", e); 30835 } 30836 if (element.hasFluidConsistencyType()) { 30837 for (CodeableConcept e : element.getFluidConsistencyType()) 30838 composeCodeableConcept("fluidConsistencyType", e); 30839 } 30840 if (element.hasInstructionElement()) { 30841 composeString("instruction", element.getInstructionElement()); 30842 } 30843 } 30844 30845 protected void composeNutritionOrderNutritionOrderOralDietNutrientComponent(String name, NutritionOrder.NutritionOrderOralDietNutrientComponent element) throws IOException { 30846 if (element != null) { 30847 composeElementAttributes(element); 30848 xml.enter(FHIR_NS, name); 30849 composeNutritionOrderNutritionOrderOralDietNutrientComponentElements(element); 30850 composeElementClose(element); 30851 xml.exit(FHIR_NS, name); 30852 } 30853 } 30854 30855 protected void composeNutritionOrderNutritionOrderOralDietNutrientComponentElements(NutritionOrder.NutritionOrderOralDietNutrientComponent element) throws IOException { 30856 composeBackboneElements(element); 30857 if (element.hasModifier()) { 30858 composeCodeableConcept("modifier", element.getModifier()); 30859 } 30860 if (element.hasAmount()) { 30861 composeSimpleQuantity("amount", element.getAmount()); 30862 } 30863 } 30864 30865 protected void composeNutritionOrderNutritionOrderOralDietTextureComponent(String name, NutritionOrder.NutritionOrderOralDietTextureComponent element) throws IOException { 30866 if (element != null) { 30867 composeElementAttributes(element); 30868 xml.enter(FHIR_NS, name); 30869 composeNutritionOrderNutritionOrderOralDietTextureComponentElements(element); 30870 composeElementClose(element); 30871 xml.exit(FHIR_NS, name); 30872 } 30873 } 30874 30875 protected void composeNutritionOrderNutritionOrderOralDietTextureComponentElements(NutritionOrder.NutritionOrderOralDietTextureComponent element) throws IOException { 30876 composeBackboneElements(element); 30877 if (element.hasModifier()) { 30878 composeCodeableConcept("modifier", element.getModifier()); 30879 } 30880 if (element.hasFoodType()) { 30881 composeCodeableConcept("foodType", element.getFoodType()); 30882 } 30883 } 30884 30885 protected void composeNutritionOrderNutritionOrderSupplementComponent(String name, NutritionOrder.NutritionOrderSupplementComponent element) throws IOException { 30886 if (element != null) { 30887 composeElementAttributes(element); 30888 xml.enter(FHIR_NS, name); 30889 composeNutritionOrderNutritionOrderSupplementComponentElements(element); 30890 composeElementClose(element); 30891 xml.exit(FHIR_NS, name); 30892 } 30893 } 30894 30895 protected void composeNutritionOrderNutritionOrderSupplementComponentElements(NutritionOrder.NutritionOrderSupplementComponent element) throws IOException { 30896 composeBackboneElements(element); 30897 if (element.hasType()) { 30898 composeCodeableConcept("type", element.getType()); 30899 } 30900 if (element.hasProductNameElement()) { 30901 composeString("productName", element.getProductNameElement()); 30902 } 30903 if (element.hasSchedule()) { 30904 for (Timing e : element.getSchedule()) 30905 composeTiming("schedule", e); 30906 } 30907 if (element.hasQuantity()) { 30908 composeSimpleQuantity("quantity", element.getQuantity()); 30909 } 30910 if (element.hasInstructionElement()) { 30911 composeString("instruction", element.getInstructionElement()); 30912 } 30913 } 30914 30915 protected void composeNutritionOrderNutritionOrderEnteralFormulaComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaComponent element) throws IOException { 30916 if (element != null) { 30917 composeElementAttributes(element); 30918 xml.enter(FHIR_NS, name); 30919 composeNutritionOrderNutritionOrderEnteralFormulaComponentElements(element); 30920 composeElementClose(element); 30921 xml.exit(FHIR_NS, name); 30922 } 30923 } 30924 30925 protected void composeNutritionOrderNutritionOrderEnteralFormulaComponentElements(NutritionOrder.NutritionOrderEnteralFormulaComponent element) throws IOException { 30926 composeBackboneElements(element); 30927 if (element.hasBaseFormulaType()) { 30928 composeCodeableConcept("baseFormulaType", element.getBaseFormulaType()); 30929 } 30930 if (element.hasBaseFormulaProductNameElement()) { 30931 composeString("baseFormulaProductName", element.getBaseFormulaProductNameElement()); 30932 } 30933 if (element.hasAdditiveType()) { 30934 composeCodeableConcept("additiveType", element.getAdditiveType()); 30935 } 30936 if (element.hasAdditiveProductNameElement()) { 30937 composeString("additiveProductName", element.getAdditiveProductNameElement()); 30938 } 30939 if (element.hasCaloricDensity()) { 30940 composeSimpleQuantity("caloricDensity", element.getCaloricDensity()); 30941 } 30942 if (element.hasRouteofAdministration()) { 30943 composeCodeableConcept("routeofAdministration", element.getRouteofAdministration()); 30944 } 30945 if (element.hasAdministration()) { 30946 for (NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent e : element.getAdministration()) 30947 composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent("administration", e); 30948 } 30949 if (element.hasMaxVolumeToDeliver()) { 30950 composeSimpleQuantity("maxVolumeToDeliver", element.getMaxVolumeToDeliver()); 30951 } 30952 if (element.hasAdministrationInstructionElement()) { 30953 composeString("administrationInstruction", element.getAdministrationInstructionElement()); 30954 } 30955 } 30956 30957 protected void composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponent(String name, NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element) throws IOException { 30958 if (element != null) { 30959 composeElementAttributes(element); 30960 xml.enter(FHIR_NS, name); 30961 composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponentElements(element); 30962 composeElementClose(element); 30963 xml.exit(FHIR_NS, name); 30964 } 30965 } 30966 30967 protected void composeNutritionOrderNutritionOrderEnteralFormulaAdministrationComponentElements(NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent element) throws IOException { 30968 composeBackboneElements(element); 30969 if (element.hasSchedule()) { 30970 composeTiming("schedule", element.getSchedule()); 30971 } 30972 if (element.hasQuantity()) { 30973 composeSimpleQuantity("quantity", element.getQuantity()); 30974 } 30975 if (element.hasRate()) { 30976 composeType("rate", element.getRate()); 30977 } } 30978 30979 protected void composeObservation(String name, Observation element) throws IOException { 30980 if (element != null) { 30981 composeDomainResourceAttributes(element); 30982 xml.enter(FHIR_NS, name); 30983 composeObservationElements(element); 30984 composeElementClose(element); 30985 xml.exit(FHIR_NS, name); 30986 } 30987 } 30988 30989 protected void composeObservationElements(Observation element) throws IOException { 30990 composeDomainResourceElements(element); 30991 if (element.hasIdentifier()) { 30992 for (Identifier e : element.getIdentifier()) 30993 composeIdentifier("identifier", e); 30994 } 30995 if (element.hasBasedOn()) { 30996 for (Reference e : element.getBasedOn()) 30997 composeReference("basedOn", e); 30998 } 30999 if (element.hasStatusElement()) 31000 composeEnumeration("status", element.getStatusElement(), new Observation.ObservationStatusEnumFactory()); 31001 if (element.hasCategory()) { 31002 for (CodeableConcept e : element.getCategory()) 31003 composeCodeableConcept("category", e); 31004 } 31005 if (element.hasCode()) { 31006 composeCodeableConcept("code", element.getCode()); 31007 } 31008 if (element.hasSubject()) { 31009 composeReference("subject", element.getSubject()); 31010 } 31011 if (element.hasContext()) { 31012 composeReference("context", element.getContext()); 31013 } 31014 if (element.hasEffective()) { 31015 composeType("effective", element.getEffective()); 31016 } if (element.hasIssuedElement()) { 31017 composeInstant("issued", element.getIssuedElement()); 31018 } 31019 if (element.hasPerformer()) { 31020 for (Reference e : element.getPerformer()) 31021 composeReference("performer", e); 31022 } 31023 if (element.hasValue()) { 31024 composeType("value", element.getValue()); 31025 } if (element.hasDataAbsentReason()) { 31026 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 31027 } 31028 if (element.hasInterpretation()) { 31029 composeCodeableConcept("interpretation", element.getInterpretation()); 31030 } 31031 if (element.hasCommentElement()) { 31032 composeString("comment", element.getCommentElement()); 31033 } 31034 if (element.hasBodySite()) { 31035 composeCodeableConcept("bodySite", element.getBodySite()); 31036 } 31037 if (element.hasMethod()) { 31038 composeCodeableConcept("method", element.getMethod()); 31039 } 31040 if (element.hasSpecimen()) { 31041 composeReference("specimen", element.getSpecimen()); 31042 } 31043 if (element.hasDevice()) { 31044 composeReference("device", element.getDevice()); 31045 } 31046 if (element.hasReferenceRange()) { 31047 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 31048 composeObservationObservationReferenceRangeComponent("referenceRange", e); 31049 } 31050 if (element.hasRelated()) { 31051 for (Observation.ObservationRelatedComponent e : element.getRelated()) 31052 composeObservationObservationRelatedComponent("related", e); 31053 } 31054 if (element.hasComponent()) { 31055 for (Observation.ObservationComponentComponent e : element.getComponent()) 31056 composeObservationObservationComponentComponent("component", e); 31057 } 31058 } 31059 31060 protected void composeObservationObservationReferenceRangeComponent(String name, Observation.ObservationReferenceRangeComponent element) throws IOException { 31061 if (element != null) { 31062 composeElementAttributes(element); 31063 xml.enter(FHIR_NS, name); 31064 composeObservationObservationReferenceRangeComponentElements(element); 31065 composeElementClose(element); 31066 xml.exit(FHIR_NS, name); 31067 } 31068 } 31069 31070 protected void composeObservationObservationReferenceRangeComponentElements(Observation.ObservationReferenceRangeComponent element) throws IOException { 31071 composeBackboneElements(element); 31072 if (element.hasLow()) { 31073 composeSimpleQuantity("low", element.getLow()); 31074 } 31075 if (element.hasHigh()) { 31076 composeSimpleQuantity("high", element.getHigh()); 31077 } 31078 if (element.hasType()) { 31079 composeCodeableConcept("type", element.getType()); 31080 } 31081 if (element.hasAppliesTo()) { 31082 for (CodeableConcept e : element.getAppliesTo()) 31083 composeCodeableConcept("appliesTo", e); 31084 } 31085 if (element.hasAge()) { 31086 composeRange("age", element.getAge()); 31087 } 31088 if (element.hasTextElement()) { 31089 composeString("text", element.getTextElement()); 31090 } 31091 } 31092 31093 protected void composeObservationObservationRelatedComponent(String name, Observation.ObservationRelatedComponent element) throws IOException { 31094 if (element != null) { 31095 composeElementAttributes(element); 31096 xml.enter(FHIR_NS, name); 31097 composeObservationObservationRelatedComponentElements(element); 31098 composeElementClose(element); 31099 xml.exit(FHIR_NS, name); 31100 } 31101 } 31102 31103 protected void composeObservationObservationRelatedComponentElements(Observation.ObservationRelatedComponent element) throws IOException { 31104 composeBackboneElements(element); 31105 if (element.hasTypeElement()) 31106 composeEnumeration("type", element.getTypeElement(), new Observation.ObservationRelationshipTypeEnumFactory()); 31107 if (element.hasTarget()) { 31108 composeReference("target", element.getTarget()); 31109 } 31110 } 31111 31112 protected void composeObservationObservationComponentComponent(String name, Observation.ObservationComponentComponent element) throws IOException { 31113 if (element != null) { 31114 composeElementAttributes(element); 31115 xml.enter(FHIR_NS, name); 31116 composeObservationObservationComponentComponentElements(element); 31117 composeElementClose(element); 31118 xml.exit(FHIR_NS, name); 31119 } 31120 } 31121 31122 protected void composeObservationObservationComponentComponentElements(Observation.ObservationComponentComponent element) throws IOException { 31123 composeBackboneElements(element); 31124 if (element.hasCode()) { 31125 composeCodeableConcept("code", element.getCode()); 31126 } 31127 if (element.hasValue()) { 31128 composeType("value", element.getValue()); 31129 } if (element.hasDataAbsentReason()) { 31130 composeCodeableConcept("dataAbsentReason", element.getDataAbsentReason()); 31131 } 31132 if (element.hasInterpretation()) { 31133 composeCodeableConcept("interpretation", element.getInterpretation()); 31134 } 31135 if (element.hasReferenceRange()) { 31136 for (Observation.ObservationReferenceRangeComponent e : element.getReferenceRange()) 31137 composeObservationObservationReferenceRangeComponent("referenceRange", e); 31138 } 31139 } 31140 31141 protected void composeOperationDefinition(String name, OperationDefinition element) throws IOException { 31142 if (element != null) { 31143 composeDomainResourceAttributes(element); 31144 xml.enter(FHIR_NS, name); 31145 composeOperationDefinitionElements(element); 31146 composeElementClose(element); 31147 xml.exit(FHIR_NS, name); 31148 } 31149 } 31150 31151 protected void composeOperationDefinitionElements(OperationDefinition element) throws IOException { 31152 composeDomainResourceElements(element); 31153 if (element.hasUrlElement()) { 31154 composeUri("url", element.getUrlElement()); 31155 } 31156 if (element.hasVersionElement()) { 31157 composeString("version", element.getVersionElement()); 31158 } 31159 if (element.hasNameElement()) { 31160 composeString("name", element.getNameElement()); 31161 } 31162 if (element.hasStatusElement()) 31163 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 31164 if (element.hasKindElement()) 31165 composeEnumeration("kind", element.getKindElement(), new OperationDefinition.OperationKindEnumFactory()); 31166 if (element.hasExperimentalElement()) { 31167 composeBoolean("experimental", element.getExperimentalElement()); 31168 } 31169 if (element.hasDateElement()) { 31170 composeDateTime("date", element.getDateElement()); 31171 } 31172 if (element.hasPublisherElement()) { 31173 composeString("publisher", element.getPublisherElement()); 31174 } 31175 if (element.hasContact()) { 31176 for (ContactDetail e : element.getContact()) 31177 composeContactDetail("contact", e); 31178 } 31179 if (element.hasDescriptionElement()) { 31180 composeMarkdown("description", element.getDescriptionElement()); 31181 } 31182 if (element.hasUseContext()) { 31183 for (UsageContext e : element.getUseContext()) 31184 composeUsageContext("useContext", e); 31185 } 31186 if (element.hasJurisdiction()) { 31187 for (CodeableConcept e : element.getJurisdiction()) 31188 composeCodeableConcept("jurisdiction", e); 31189 } 31190 if (element.hasPurposeElement()) { 31191 composeMarkdown("purpose", element.getPurposeElement()); 31192 } 31193 if (element.hasIdempotentElement()) { 31194 composeBoolean("idempotent", element.getIdempotentElement()); 31195 } 31196 if (element.hasCodeElement()) { 31197 composeCode("code", element.getCodeElement()); 31198 } 31199 if (element.hasCommentElement()) { 31200 composeString("comment", element.getCommentElement()); 31201 } 31202 if (element.hasBase()) { 31203 composeReference("base", element.getBase()); 31204 } 31205 if (element.hasResource()) { 31206 for (CodeType e : element.getResource()) 31207 composeCode("resource", e); 31208 } 31209 if (element.hasSystemElement()) { 31210 composeBoolean("system", element.getSystemElement()); 31211 } 31212 if (element.hasTypeElement()) { 31213 composeBoolean("type", element.getTypeElement()); 31214 } 31215 if (element.hasInstanceElement()) { 31216 composeBoolean("instance", element.getInstanceElement()); 31217 } 31218 if (element.hasParameter()) { 31219 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getParameter()) 31220 composeOperationDefinitionOperationDefinitionParameterComponent("parameter", e); 31221 } 31222 if (element.hasOverload()) { 31223 for (OperationDefinition.OperationDefinitionOverloadComponent e : element.getOverload()) 31224 composeOperationDefinitionOperationDefinitionOverloadComponent("overload", e); 31225 } 31226 } 31227 31228 protected void composeOperationDefinitionOperationDefinitionParameterComponent(String name, OperationDefinition.OperationDefinitionParameterComponent element) throws IOException { 31229 if (element != null) { 31230 composeElementAttributes(element); 31231 xml.enter(FHIR_NS, name); 31232 composeOperationDefinitionOperationDefinitionParameterComponentElements(element); 31233 composeElementClose(element); 31234 xml.exit(FHIR_NS, name); 31235 } 31236 } 31237 31238 protected void composeOperationDefinitionOperationDefinitionParameterComponentElements(OperationDefinition.OperationDefinitionParameterComponent element) throws IOException { 31239 composeBackboneElements(element); 31240 if (element.hasNameElement()) { 31241 composeCode("name", element.getNameElement()); 31242 } 31243 if (element.hasUseElement()) 31244 composeEnumeration("use", element.getUseElement(), new OperationDefinition.OperationParameterUseEnumFactory()); 31245 if (element.hasMinElement()) { 31246 composeInteger("min", element.getMinElement()); 31247 } 31248 if (element.hasMaxElement()) { 31249 composeString("max", element.getMaxElement()); 31250 } 31251 if (element.hasDocumentationElement()) { 31252 composeString("documentation", element.getDocumentationElement()); 31253 } 31254 if (element.hasTypeElement()) { 31255 composeCode("type", element.getTypeElement()); 31256 } 31257 if (element.hasSearchTypeElement()) 31258 composeEnumeration("searchType", element.getSearchTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 31259 if (element.hasProfile()) { 31260 composeReference("profile", element.getProfile()); 31261 } 31262 if (element.hasBinding()) { 31263 composeOperationDefinitionOperationDefinitionParameterBindingComponent("binding", element.getBinding()); 31264 } 31265 if (element.hasPart()) { 31266 for (OperationDefinition.OperationDefinitionParameterComponent e : element.getPart()) 31267 composeOperationDefinitionOperationDefinitionParameterComponent("part", e); 31268 } 31269 } 31270 31271 protected void composeOperationDefinitionOperationDefinitionParameterBindingComponent(String name, OperationDefinition.OperationDefinitionParameterBindingComponent element) throws IOException { 31272 if (element != null) { 31273 composeElementAttributes(element); 31274 xml.enter(FHIR_NS, name); 31275 composeOperationDefinitionOperationDefinitionParameterBindingComponentElements(element); 31276 composeElementClose(element); 31277 xml.exit(FHIR_NS, name); 31278 } 31279 } 31280 31281 protected void composeOperationDefinitionOperationDefinitionParameterBindingComponentElements(OperationDefinition.OperationDefinitionParameterBindingComponent element) throws IOException { 31282 composeBackboneElements(element); 31283 if (element.hasStrengthElement()) 31284 composeEnumeration("strength", element.getStrengthElement(), new Enumerations.BindingStrengthEnumFactory()); 31285 if (element.hasValueSet()) { 31286 composeType("valueSet", element.getValueSet()); 31287 } } 31288 31289 protected void composeOperationDefinitionOperationDefinitionOverloadComponent(String name, OperationDefinition.OperationDefinitionOverloadComponent element) throws IOException { 31290 if (element != null) { 31291 composeElementAttributes(element); 31292 xml.enter(FHIR_NS, name); 31293 composeOperationDefinitionOperationDefinitionOverloadComponentElements(element); 31294 composeElementClose(element); 31295 xml.exit(FHIR_NS, name); 31296 } 31297 } 31298 31299 protected void composeOperationDefinitionOperationDefinitionOverloadComponentElements(OperationDefinition.OperationDefinitionOverloadComponent element) throws IOException { 31300 composeBackboneElements(element); 31301 if (element.hasParameterName()) { 31302 for (StringType e : element.getParameterName()) 31303 composeString("parameterName", e); 31304 } 31305 if (element.hasCommentElement()) { 31306 composeString("comment", element.getCommentElement()); 31307 } 31308 } 31309 31310 protected void composeOperationOutcome(String name, OperationOutcome element) throws IOException { 31311 if (element != null) { 31312 composeDomainResourceAttributes(element); 31313 xml.enter(FHIR_NS, name); 31314 composeOperationOutcomeElements(element); 31315 composeElementClose(element); 31316 xml.exit(FHIR_NS, name); 31317 } 31318 } 31319 31320 protected void composeOperationOutcomeElements(OperationOutcome element) throws IOException { 31321 composeDomainResourceElements(element); 31322 if (element.hasIssue()) { 31323 for (OperationOutcome.OperationOutcomeIssueComponent e : element.getIssue()) 31324 composeOperationOutcomeOperationOutcomeIssueComponent("issue", e); 31325 } 31326 } 31327 31328 protected void composeOperationOutcomeOperationOutcomeIssueComponent(String name, OperationOutcome.OperationOutcomeIssueComponent element) throws IOException { 31329 if (element != null) { 31330 composeElementAttributes(element); 31331 xml.enter(FHIR_NS, name); 31332 composeOperationOutcomeOperationOutcomeIssueComponentElements(element); 31333 composeElementClose(element); 31334 xml.exit(FHIR_NS, name); 31335 } 31336 } 31337 31338 protected void composeOperationOutcomeOperationOutcomeIssueComponentElements(OperationOutcome.OperationOutcomeIssueComponent element) throws IOException { 31339 composeBackboneElements(element); 31340 if (element.hasSeverityElement()) 31341 composeEnumeration("severity", element.getSeverityElement(), new OperationOutcome.IssueSeverityEnumFactory()); 31342 if (element.hasCodeElement()) 31343 composeEnumeration("code", element.getCodeElement(), new OperationOutcome.IssueTypeEnumFactory()); 31344 if (element.hasDetails()) { 31345 composeCodeableConcept("details", element.getDetails()); 31346 } 31347 if (element.hasDiagnosticsElement()) { 31348 composeString("diagnostics", element.getDiagnosticsElement()); 31349 } 31350 if (element.hasLocation()) { 31351 for (StringType e : element.getLocation()) 31352 composeString("location", e); 31353 } 31354 if (element.hasExpression()) { 31355 for (StringType e : element.getExpression()) 31356 composeString("expression", e); 31357 } 31358 } 31359 31360 protected void composeOrganization(String name, Organization element) throws IOException { 31361 if (element != null) { 31362 composeDomainResourceAttributes(element); 31363 xml.enter(FHIR_NS, name); 31364 composeOrganizationElements(element); 31365 composeElementClose(element); 31366 xml.exit(FHIR_NS, name); 31367 } 31368 } 31369 31370 protected void composeOrganizationElements(Organization element) throws IOException { 31371 composeDomainResourceElements(element); 31372 if (element.hasIdentifier()) { 31373 for (Identifier e : element.getIdentifier()) 31374 composeIdentifier("identifier", e); 31375 } 31376 if (element.hasActiveElement()) { 31377 composeBoolean("active", element.getActiveElement()); 31378 } 31379 if (element.hasType()) { 31380 for (CodeableConcept e : element.getType()) 31381 composeCodeableConcept("type", e); 31382 } 31383 if (element.hasNameElement()) { 31384 composeString("name", element.getNameElement()); 31385 } 31386 if (element.hasAlias()) { 31387 for (StringType e : element.getAlias()) 31388 composeString("alias", e); 31389 } 31390 if (element.hasTelecom()) { 31391 for (ContactPoint e : element.getTelecom()) 31392 composeContactPoint("telecom", e); 31393 } 31394 if (element.hasAddress()) { 31395 for (Address e : element.getAddress()) 31396 composeAddress("address", e); 31397 } 31398 if (element.hasPartOf()) { 31399 composeReference("partOf", element.getPartOf()); 31400 } 31401 if (element.hasContact()) { 31402 for (Organization.OrganizationContactComponent e : element.getContact()) 31403 composeOrganizationOrganizationContactComponent("contact", e); 31404 } 31405 if (element.hasEndpoint()) { 31406 for (Reference e : element.getEndpoint()) 31407 composeReference("endpoint", e); 31408 } 31409 } 31410 31411 protected void composeOrganizationOrganizationContactComponent(String name, Organization.OrganizationContactComponent element) throws IOException { 31412 if (element != null) { 31413 composeElementAttributes(element); 31414 xml.enter(FHIR_NS, name); 31415 composeOrganizationOrganizationContactComponentElements(element); 31416 composeElementClose(element); 31417 xml.exit(FHIR_NS, name); 31418 } 31419 } 31420 31421 protected void composeOrganizationOrganizationContactComponentElements(Organization.OrganizationContactComponent element) throws IOException { 31422 composeBackboneElements(element); 31423 if (element.hasPurpose()) { 31424 composeCodeableConcept("purpose", element.getPurpose()); 31425 } 31426 if (element.hasName()) { 31427 composeHumanName("name", element.getName()); 31428 } 31429 if (element.hasTelecom()) { 31430 for (ContactPoint e : element.getTelecom()) 31431 composeContactPoint("telecom", e); 31432 } 31433 if (element.hasAddress()) { 31434 composeAddress("address", element.getAddress()); 31435 } 31436 } 31437 31438 protected void composePatient(String name, Patient element) throws IOException { 31439 if (element != null) { 31440 composeDomainResourceAttributes(element); 31441 xml.enter(FHIR_NS, name); 31442 composePatientElements(element); 31443 composeElementClose(element); 31444 xml.exit(FHIR_NS, name); 31445 } 31446 } 31447 31448 protected void composePatientElements(Patient element) throws IOException { 31449 composeDomainResourceElements(element); 31450 if (element.hasIdentifier()) { 31451 for (Identifier e : element.getIdentifier()) 31452 composeIdentifier("identifier", e); 31453 } 31454 if (element.hasActiveElement()) { 31455 composeBoolean("active", element.getActiveElement()); 31456 } 31457 if (element.hasName()) { 31458 for (HumanName e : element.getName()) 31459 composeHumanName("name", e); 31460 } 31461 if (element.hasTelecom()) { 31462 for (ContactPoint e : element.getTelecom()) 31463 composeContactPoint("telecom", e); 31464 } 31465 if (element.hasGenderElement()) 31466 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 31467 if (element.hasBirthDateElement()) { 31468 composeDate("birthDate", element.getBirthDateElement()); 31469 } 31470 if (element.hasDeceased()) { 31471 composeType("deceased", element.getDeceased()); 31472 } if (element.hasAddress()) { 31473 for (Address e : element.getAddress()) 31474 composeAddress("address", e); 31475 } 31476 if (element.hasMaritalStatus()) { 31477 composeCodeableConcept("maritalStatus", element.getMaritalStatus()); 31478 } 31479 if (element.hasMultipleBirth()) { 31480 composeType("multipleBirth", element.getMultipleBirth()); 31481 } if (element.hasPhoto()) { 31482 for (Attachment e : element.getPhoto()) 31483 composeAttachment("photo", e); 31484 } 31485 if (element.hasContact()) { 31486 for (Patient.ContactComponent e : element.getContact()) 31487 composePatientContactComponent("contact", e); 31488 } 31489 if (element.hasAnimal()) { 31490 composePatientAnimalComponent("animal", element.getAnimal()); 31491 } 31492 if (element.hasCommunication()) { 31493 for (Patient.PatientCommunicationComponent e : element.getCommunication()) 31494 composePatientPatientCommunicationComponent("communication", e); 31495 } 31496 if (element.hasGeneralPractitioner()) { 31497 for (Reference e : element.getGeneralPractitioner()) 31498 composeReference("generalPractitioner", e); 31499 } 31500 if (element.hasManagingOrganization()) { 31501 composeReference("managingOrganization", element.getManagingOrganization()); 31502 } 31503 if (element.hasLink()) { 31504 for (Patient.PatientLinkComponent e : element.getLink()) 31505 composePatientPatientLinkComponent("link", e); 31506 } 31507 } 31508 31509 protected void composePatientContactComponent(String name, Patient.ContactComponent element) throws IOException { 31510 if (element != null) { 31511 composeElementAttributes(element); 31512 xml.enter(FHIR_NS, name); 31513 composePatientContactComponentElements(element); 31514 composeElementClose(element); 31515 xml.exit(FHIR_NS, name); 31516 } 31517 } 31518 31519 protected void composePatientContactComponentElements(Patient.ContactComponent element) throws IOException { 31520 composeBackboneElements(element); 31521 if (element.hasRelationship()) { 31522 for (CodeableConcept e : element.getRelationship()) 31523 composeCodeableConcept("relationship", e); 31524 } 31525 if (element.hasName()) { 31526 composeHumanName("name", element.getName()); 31527 } 31528 if (element.hasTelecom()) { 31529 for (ContactPoint e : element.getTelecom()) 31530 composeContactPoint("telecom", e); 31531 } 31532 if (element.hasAddress()) { 31533 composeAddress("address", element.getAddress()); 31534 } 31535 if (element.hasGenderElement()) 31536 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 31537 if (element.hasOrganization()) { 31538 composeReference("organization", element.getOrganization()); 31539 } 31540 if (element.hasPeriod()) { 31541 composePeriod("period", element.getPeriod()); 31542 } 31543 } 31544 31545 protected void composePatientAnimalComponent(String name, Patient.AnimalComponent element) throws IOException { 31546 if (element != null) { 31547 composeElementAttributes(element); 31548 xml.enter(FHIR_NS, name); 31549 composePatientAnimalComponentElements(element); 31550 composeElementClose(element); 31551 xml.exit(FHIR_NS, name); 31552 } 31553 } 31554 31555 protected void composePatientAnimalComponentElements(Patient.AnimalComponent element) throws IOException { 31556 composeBackboneElements(element); 31557 if (element.hasSpecies()) { 31558 composeCodeableConcept("species", element.getSpecies()); 31559 } 31560 if (element.hasBreed()) { 31561 composeCodeableConcept("breed", element.getBreed()); 31562 } 31563 if (element.hasGenderStatus()) { 31564 composeCodeableConcept("genderStatus", element.getGenderStatus()); 31565 } 31566 } 31567 31568 protected void composePatientPatientCommunicationComponent(String name, Patient.PatientCommunicationComponent element) throws IOException { 31569 if (element != null) { 31570 composeElementAttributes(element); 31571 xml.enter(FHIR_NS, name); 31572 composePatientPatientCommunicationComponentElements(element); 31573 composeElementClose(element); 31574 xml.exit(FHIR_NS, name); 31575 } 31576 } 31577 31578 protected void composePatientPatientCommunicationComponentElements(Patient.PatientCommunicationComponent element) throws IOException { 31579 composeBackboneElements(element); 31580 if (element.hasLanguage()) { 31581 composeCodeableConcept("language", element.getLanguage()); 31582 } 31583 if (element.hasPreferredElement()) { 31584 composeBoolean("preferred", element.getPreferredElement()); 31585 } 31586 } 31587 31588 protected void composePatientPatientLinkComponent(String name, Patient.PatientLinkComponent element) throws IOException { 31589 if (element != null) { 31590 composeElementAttributes(element); 31591 xml.enter(FHIR_NS, name); 31592 composePatientPatientLinkComponentElements(element); 31593 composeElementClose(element); 31594 xml.exit(FHIR_NS, name); 31595 } 31596 } 31597 31598 protected void composePatientPatientLinkComponentElements(Patient.PatientLinkComponent element) throws IOException { 31599 composeBackboneElements(element); 31600 if (element.hasOther()) { 31601 composeReference("other", element.getOther()); 31602 } 31603 if (element.hasTypeElement()) 31604 composeEnumeration("type", element.getTypeElement(), new Patient.LinkTypeEnumFactory()); 31605 } 31606 31607 protected void composePaymentNotice(String name, PaymentNotice element) throws IOException { 31608 if (element != null) { 31609 composeDomainResourceAttributes(element); 31610 xml.enter(FHIR_NS, name); 31611 composePaymentNoticeElements(element); 31612 composeElementClose(element); 31613 xml.exit(FHIR_NS, name); 31614 } 31615 } 31616 31617 protected void composePaymentNoticeElements(PaymentNotice element) throws IOException { 31618 composeDomainResourceElements(element); 31619 if (element.hasIdentifier()) { 31620 for (Identifier e : element.getIdentifier()) 31621 composeIdentifier("identifier", e); 31622 } 31623 if (element.hasStatusElement()) 31624 composeEnumeration("status", element.getStatusElement(), new PaymentNotice.PaymentNoticeStatusEnumFactory()); 31625 if (element.hasRequest()) { 31626 composeReference("request", element.getRequest()); 31627 } 31628 if (element.hasResponse()) { 31629 composeReference("response", element.getResponse()); 31630 } 31631 if (element.hasStatusDateElement()) { 31632 composeDate("statusDate", element.getStatusDateElement()); 31633 } 31634 if (element.hasCreatedElement()) { 31635 composeDateTime("created", element.getCreatedElement()); 31636 } 31637 if (element.hasTarget()) { 31638 composeReference("target", element.getTarget()); 31639 } 31640 if (element.hasProvider()) { 31641 composeReference("provider", element.getProvider()); 31642 } 31643 if (element.hasOrganization()) { 31644 composeReference("organization", element.getOrganization()); 31645 } 31646 if (element.hasPaymentStatus()) { 31647 composeCodeableConcept("paymentStatus", element.getPaymentStatus()); 31648 } 31649 } 31650 31651 protected void composePaymentReconciliation(String name, PaymentReconciliation element) throws IOException { 31652 if (element != null) { 31653 composeDomainResourceAttributes(element); 31654 xml.enter(FHIR_NS, name); 31655 composePaymentReconciliationElements(element); 31656 composeElementClose(element); 31657 xml.exit(FHIR_NS, name); 31658 } 31659 } 31660 31661 protected void composePaymentReconciliationElements(PaymentReconciliation element) throws IOException { 31662 composeDomainResourceElements(element); 31663 if (element.hasIdentifier()) { 31664 for (Identifier e : element.getIdentifier()) 31665 composeIdentifier("identifier", e); 31666 } 31667 if (element.hasStatusElement()) 31668 composeEnumeration("status", element.getStatusElement(), new PaymentReconciliation.PaymentReconciliationStatusEnumFactory()); 31669 if (element.hasPeriod()) { 31670 composePeriod("period", element.getPeriod()); 31671 } 31672 if (element.hasCreatedElement()) { 31673 composeDateTime("created", element.getCreatedElement()); 31674 } 31675 if (element.hasOrganization()) { 31676 composeReference("organization", element.getOrganization()); 31677 } 31678 if (element.hasRequest()) { 31679 composeReference("request", element.getRequest()); 31680 } 31681 if (element.hasOutcome()) { 31682 composeCodeableConcept("outcome", element.getOutcome()); 31683 } 31684 if (element.hasDispositionElement()) { 31685 composeString("disposition", element.getDispositionElement()); 31686 } 31687 if (element.hasRequestProvider()) { 31688 composeReference("requestProvider", element.getRequestProvider()); 31689 } 31690 if (element.hasRequestOrganization()) { 31691 composeReference("requestOrganization", element.getRequestOrganization()); 31692 } 31693 if (element.hasDetail()) { 31694 for (PaymentReconciliation.DetailsComponent e : element.getDetail()) 31695 composePaymentReconciliationDetailsComponent("detail", e); 31696 } 31697 if (element.hasForm()) { 31698 composeCodeableConcept("form", element.getForm()); 31699 } 31700 if (element.hasTotal()) { 31701 composeMoney("total", element.getTotal()); 31702 } 31703 if (element.hasProcessNote()) { 31704 for (PaymentReconciliation.NotesComponent e : element.getProcessNote()) 31705 composePaymentReconciliationNotesComponent("processNote", e); 31706 } 31707 } 31708 31709 protected void composePaymentReconciliationDetailsComponent(String name, PaymentReconciliation.DetailsComponent element) throws IOException { 31710 if (element != null) { 31711 composeElementAttributes(element); 31712 xml.enter(FHIR_NS, name); 31713 composePaymentReconciliationDetailsComponentElements(element); 31714 composeElementClose(element); 31715 xml.exit(FHIR_NS, name); 31716 } 31717 } 31718 31719 protected void composePaymentReconciliationDetailsComponentElements(PaymentReconciliation.DetailsComponent element) throws IOException { 31720 composeBackboneElements(element); 31721 if (element.hasType()) { 31722 composeCodeableConcept("type", element.getType()); 31723 } 31724 if (element.hasRequest()) { 31725 composeReference("request", element.getRequest()); 31726 } 31727 if (element.hasResponse()) { 31728 composeReference("response", element.getResponse()); 31729 } 31730 if (element.hasSubmitter()) { 31731 composeReference("submitter", element.getSubmitter()); 31732 } 31733 if (element.hasPayee()) { 31734 composeReference("payee", element.getPayee()); 31735 } 31736 if (element.hasDateElement()) { 31737 composeDate("date", element.getDateElement()); 31738 } 31739 if (element.hasAmount()) { 31740 composeMoney("amount", element.getAmount()); 31741 } 31742 } 31743 31744 protected void composePaymentReconciliationNotesComponent(String name, PaymentReconciliation.NotesComponent element) throws IOException { 31745 if (element != null) { 31746 composeElementAttributes(element); 31747 xml.enter(FHIR_NS, name); 31748 composePaymentReconciliationNotesComponentElements(element); 31749 composeElementClose(element); 31750 xml.exit(FHIR_NS, name); 31751 } 31752 } 31753 31754 protected void composePaymentReconciliationNotesComponentElements(PaymentReconciliation.NotesComponent element) throws IOException { 31755 composeBackboneElements(element); 31756 if (element.hasType()) { 31757 composeCodeableConcept("type", element.getType()); 31758 } 31759 if (element.hasTextElement()) { 31760 composeString("text", element.getTextElement()); 31761 } 31762 } 31763 31764 protected void composePerson(String name, Person element) throws IOException { 31765 if (element != null) { 31766 composeDomainResourceAttributes(element); 31767 xml.enter(FHIR_NS, name); 31768 composePersonElements(element); 31769 composeElementClose(element); 31770 xml.exit(FHIR_NS, name); 31771 } 31772 } 31773 31774 protected void composePersonElements(Person element) throws IOException { 31775 composeDomainResourceElements(element); 31776 if (element.hasIdentifier()) { 31777 for (Identifier e : element.getIdentifier()) 31778 composeIdentifier("identifier", e); 31779 } 31780 if (element.hasName()) { 31781 for (HumanName e : element.getName()) 31782 composeHumanName("name", e); 31783 } 31784 if (element.hasTelecom()) { 31785 for (ContactPoint e : element.getTelecom()) 31786 composeContactPoint("telecom", e); 31787 } 31788 if (element.hasGenderElement()) 31789 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 31790 if (element.hasBirthDateElement()) { 31791 composeDate("birthDate", element.getBirthDateElement()); 31792 } 31793 if (element.hasAddress()) { 31794 for (Address e : element.getAddress()) 31795 composeAddress("address", e); 31796 } 31797 if (element.hasPhoto()) { 31798 composeAttachment("photo", element.getPhoto()); 31799 } 31800 if (element.hasManagingOrganization()) { 31801 composeReference("managingOrganization", element.getManagingOrganization()); 31802 } 31803 if (element.hasActiveElement()) { 31804 composeBoolean("active", element.getActiveElement()); 31805 } 31806 if (element.hasLink()) { 31807 for (Person.PersonLinkComponent e : element.getLink()) 31808 composePersonPersonLinkComponent("link", e); 31809 } 31810 } 31811 31812 protected void composePersonPersonLinkComponent(String name, Person.PersonLinkComponent element) throws IOException { 31813 if (element != null) { 31814 composeElementAttributes(element); 31815 xml.enter(FHIR_NS, name); 31816 composePersonPersonLinkComponentElements(element); 31817 composeElementClose(element); 31818 xml.exit(FHIR_NS, name); 31819 } 31820 } 31821 31822 protected void composePersonPersonLinkComponentElements(Person.PersonLinkComponent element) throws IOException { 31823 composeBackboneElements(element); 31824 if (element.hasTarget()) { 31825 composeReference("target", element.getTarget()); 31826 } 31827 if (element.hasAssuranceElement()) 31828 composeEnumeration("assurance", element.getAssuranceElement(), new Person.IdentityAssuranceLevelEnumFactory()); 31829 } 31830 31831 protected void composePlanDefinition(String name, PlanDefinition element) throws IOException { 31832 if (element != null) { 31833 composeDomainResourceAttributes(element); 31834 xml.enter(FHIR_NS, name); 31835 composePlanDefinitionElements(element); 31836 composeElementClose(element); 31837 xml.exit(FHIR_NS, name); 31838 } 31839 } 31840 31841 protected void composePlanDefinitionElements(PlanDefinition element) throws IOException { 31842 composeDomainResourceElements(element); 31843 if (element.hasUrlElement()) { 31844 composeUri("url", element.getUrlElement()); 31845 } 31846 if (element.hasIdentifier()) { 31847 for (Identifier e : element.getIdentifier()) 31848 composeIdentifier("identifier", e); 31849 } 31850 if (element.hasVersionElement()) { 31851 composeString("version", element.getVersionElement()); 31852 } 31853 if (element.hasNameElement()) { 31854 composeString("name", element.getNameElement()); 31855 } 31856 if (element.hasTitleElement()) { 31857 composeString("title", element.getTitleElement()); 31858 } 31859 if (element.hasType()) { 31860 composeCodeableConcept("type", element.getType()); 31861 } 31862 if (element.hasStatusElement()) 31863 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 31864 if (element.hasExperimentalElement()) { 31865 composeBoolean("experimental", element.getExperimentalElement()); 31866 } 31867 if (element.hasDateElement()) { 31868 composeDateTime("date", element.getDateElement()); 31869 } 31870 if (element.hasPublisherElement()) { 31871 composeString("publisher", element.getPublisherElement()); 31872 } 31873 if (element.hasDescriptionElement()) { 31874 composeMarkdown("description", element.getDescriptionElement()); 31875 } 31876 if (element.hasPurposeElement()) { 31877 composeMarkdown("purpose", element.getPurposeElement()); 31878 } 31879 if (element.hasUsageElement()) { 31880 composeString("usage", element.getUsageElement()); 31881 } 31882 if (element.hasApprovalDateElement()) { 31883 composeDate("approvalDate", element.getApprovalDateElement()); 31884 } 31885 if (element.hasLastReviewDateElement()) { 31886 composeDate("lastReviewDate", element.getLastReviewDateElement()); 31887 } 31888 if (element.hasEffectivePeriod()) { 31889 composePeriod("effectivePeriod", element.getEffectivePeriod()); 31890 } 31891 if (element.hasUseContext()) { 31892 for (UsageContext e : element.getUseContext()) 31893 composeUsageContext("useContext", e); 31894 } 31895 if (element.hasJurisdiction()) { 31896 for (CodeableConcept e : element.getJurisdiction()) 31897 composeCodeableConcept("jurisdiction", e); 31898 } 31899 if (element.hasTopic()) { 31900 for (CodeableConcept e : element.getTopic()) 31901 composeCodeableConcept("topic", e); 31902 } 31903 if (element.hasContributor()) { 31904 for (Contributor e : element.getContributor()) 31905 composeContributor("contributor", e); 31906 } 31907 if (element.hasContact()) { 31908 for (ContactDetail e : element.getContact()) 31909 composeContactDetail("contact", e); 31910 } 31911 if (element.hasCopyrightElement()) { 31912 composeMarkdown("copyright", element.getCopyrightElement()); 31913 } 31914 if (element.hasRelatedArtifact()) { 31915 for (RelatedArtifact e : element.getRelatedArtifact()) 31916 composeRelatedArtifact("relatedArtifact", e); 31917 } 31918 if (element.hasLibrary()) { 31919 for (Reference e : element.getLibrary()) 31920 composeReference("library", e); 31921 } 31922 if (element.hasGoal()) { 31923 for (PlanDefinition.PlanDefinitionGoalComponent e : element.getGoal()) 31924 composePlanDefinitionPlanDefinitionGoalComponent("goal", e); 31925 } 31926 if (element.hasAction()) { 31927 for (PlanDefinition.PlanDefinitionActionComponent e : element.getAction()) 31928 composePlanDefinitionPlanDefinitionActionComponent("action", e); 31929 } 31930 } 31931 31932 protected void composePlanDefinitionPlanDefinitionGoalComponent(String name, PlanDefinition.PlanDefinitionGoalComponent element) throws IOException { 31933 if (element != null) { 31934 composeElementAttributes(element); 31935 xml.enter(FHIR_NS, name); 31936 composePlanDefinitionPlanDefinitionGoalComponentElements(element); 31937 composeElementClose(element); 31938 xml.exit(FHIR_NS, name); 31939 } 31940 } 31941 31942 protected void composePlanDefinitionPlanDefinitionGoalComponentElements(PlanDefinition.PlanDefinitionGoalComponent element) throws IOException { 31943 composeBackboneElements(element); 31944 if (element.hasCategory()) { 31945 composeCodeableConcept("category", element.getCategory()); 31946 } 31947 if (element.hasDescription()) { 31948 composeCodeableConcept("description", element.getDescription()); 31949 } 31950 if (element.hasPriority()) { 31951 composeCodeableConcept("priority", element.getPriority()); 31952 } 31953 if (element.hasStart()) { 31954 composeCodeableConcept("start", element.getStart()); 31955 } 31956 if (element.hasAddresses()) { 31957 for (CodeableConcept e : element.getAddresses()) 31958 composeCodeableConcept("addresses", e); 31959 } 31960 if (element.hasDocumentation()) { 31961 for (RelatedArtifact e : element.getDocumentation()) 31962 composeRelatedArtifact("documentation", e); 31963 } 31964 if (element.hasTarget()) { 31965 for (PlanDefinition.PlanDefinitionGoalTargetComponent e : element.getTarget()) 31966 composePlanDefinitionPlanDefinitionGoalTargetComponent("target", e); 31967 } 31968 } 31969 31970 protected void composePlanDefinitionPlanDefinitionGoalTargetComponent(String name, PlanDefinition.PlanDefinitionGoalTargetComponent element) throws IOException { 31971 if (element != null) { 31972 composeElementAttributes(element); 31973 xml.enter(FHIR_NS, name); 31974 composePlanDefinitionPlanDefinitionGoalTargetComponentElements(element); 31975 composeElementClose(element); 31976 xml.exit(FHIR_NS, name); 31977 } 31978 } 31979 31980 protected void composePlanDefinitionPlanDefinitionGoalTargetComponentElements(PlanDefinition.PlanDefinitionGoalTargetComponent element) throws IOException { 31981 composeBackboneElements(element); 31982 if (element.hasMeasure()) { 31983 composeCodeableConcept("measure", element.getMeasure()); 31984 } 31985 if (element.hasDetail()) { 31986 composeType("detail", element.getDetail()); 31987 } if (element.hasDue()) { 31988 composeDuration("due", element.getDue()); 31989 } 31990 } 31991 31992 protected void composePlanDefinitionPlanDefinitionActionComponent(String name, PlanDefinition.PlanDefinitionActionComponent element) throws IOException { 31993 if (element != null) { 31994 composeElementAttributes(element); 31995 xml.enter(FHIR_NS, name); 31996 composePlanDefinitionPlanDefinitionActionComponentElements(element); 31997 composeElementClose(element); 31998 xml.exit(FHIR_NS, name); 31999 } 32000 } 32001 32002 protected void composePlanDefinitionPlanDefinitionActionComponentElements(PlanDefinition.PlanDefinitionActionComponent element) throws IOException { 32003 composeBackboneElements(element); 32004 if (element.hasLabelElement()) { 32005 composeString("label", element.getLabelElement()); 32006 } 32007 if (element.hasTitleElement()) { 32008 composeString("title", element.getTitleElement()); 32009 } 32010 if (element.hasDescriptionElement()) { 32011 composeString("description", element.getDescriptionElement()); 32012 } 32013 if (element.hasTextEquivalentElement()) { 32014 composeString("textEquivalent", element.getTextEquivalentElement()); 32015 } 32016 if (element.hasCode()) { 32017 for (CodeableConcept e : element.getCode()) 32018 composeCodeableConcept("code", e); 32019 } 32020 if (element.hasReason()) { 32021 for (CodeableConcept e : element.getReason()) 32022 composeCodeableConcept("reason", e); 32023 } 32024 if (element.hasDocumentation()) { 32025 for (RelatedArtifact e : element.getDocumentation()) 32026 composeRelatedArtifact("documentation", e); 32027 } 32028 if (element.hasGoalId()) { 32029 for (IdType e : element.getGoalId()) 32030 composeId("goalId", e); 32031 } 32032 if (element.hasTriggerDefinition()) { 32033 for (TriggerDefinition e : element.getTriggerDefinition()) 32034 composeTriggerDefinition("triggerDefinition", e); 32035 } 32036 if (element.hasCondition()) { 32037 for (PlanDefinition.PlanDefinitionActionConditionComponent e : element.getCondition()) 32038 composePlanDefinitionPlanDefinitionActionConditionComponent("condition", e); 32039 } 32040 if (element.hasInput()) { 32041 for (DataRequirement e : element.getInput()) 32042 composeDataRequirement("input", e); 32043 } 32044 if (element.hasOutput()) { 32045 for (DataRequirement e : element.getOutput()) 32046 composeDataRequirement("output", e); 32047 } 32048 if (element.hasRelatedAction()) { 32049 for (PlanDefinition.PlanDefinitionActionRelatedActionComponent e : element.getRelatedAction()) 32050 composePlanDefinitionPlanDefinitionActionRelatedActionComponent("relatedAction", e); 32051 } 32052 if (element.hasTiming()) { 32053 composeType("timing", element.getTiming()); 32054 } if (element.hasParticipant()) { 32055 for (PlanDefinition.PlanDefinitionActionParticipantComponent e : element.getParticipant()) 32056 composePlanDefinitionPlanDefinitionActionParticipantComponent("participant", e); 32057 } 32058 if (element.hasType()) { 32059 composeCoding("type", element.getType()); 32060 } 32061 if (element.hasGroupingBehaviorElement()) 32062 composeEnumeration("groupingBehavior", element.getGroupingBehaviorElement(), new PlanDefinition.ActionGroupingBehaviorEnumFactory()); 32063 if (element.hasSelectionBehaviorElement()) 32064 composeEnumeration("selectionBehavior", element.getSelectionBehaviorElement(), new PlanDefinition.ActionSelectionBehaviorEnumFactory()); 32065 if (element.hasRequiredBehaviorElement()) 32066 composeEnumeration("requiredBehavior", element.getRequiredBehaviorElement(), new PlanDefinition.ActionRequiredBehaviorEnumFactory()); 32067 if (element.hasPrecheckBehaviorElement()) 32068 composeEnumeration("precheckBehavior", element.getPrecheckBehaviorElement(), new PlanDefinition.ActionPrecheckBehaviorEnumFactory()); 32069 if (element.hasCardinalityBehaviorElement()) 32070 composeEnumeration("cardinalityBehavior", element.getCardinalityBehaviorElement(), new PlanDefinition.ActionCardinalityBehaviorEnumFactory()); 32071 if (element.hasDefinition()) { 32072 composeReference("definition", element.getDefinition()); 32073 } 32074 if (element.hasTransform()) { 32075 composeReference("transform", element.getTransform()); 32076 } 32077 if (element.hasDynamicValue()) { 32078 for (PlanDefinition.PlanDefinitionActionDynamicValueComponent e : element.getDynamicValue()) 32079 composePlanDefinitionPlanDefinitionActionDynamicValueComponent("dynamicValue", e); 32080 } 32081 if (element.hasAction()) { 32082 for (PlanDefinition.PlanDefinitionActionComponent e : element.getAction()) 32083 composePlanDefinitionPlanDefinitionActionComponent("action", e); 32084 } 32085 } 32086 32087 protected void composePlanDefinitionPlanDefinitionActionConditionComponent(String name, PlanDefinition.PlanDefinitionActionConditionComponent element) throws IOException { 32088 if (element != null) { 32089 composeElementAttributes(element); 32090 xml.enter(FHIR_NS, name); 32091 composePlanDefinitionPlanDefinitionActionConditionComponentElements(element); 32092 composeElementClose(element); 32093 xml.exit(FHIR_NS, name); 32094 } 32095 } 32096 32097 protected void composePlanDefinitionPlanDefinitionActionConditionComponentElements(PlanDefinition.PlanDefinitionActionConditionComponent element) throws IOException { 32098 composeBackboneElements(element); 32099 if (element.hasKindElement()) 32100 composeEnumeration("kind", element.getKindElement(), new PlanDefinition.ActionConditionKindEnumFactory()); 32101 if (element.hasDescriptionElement()) { 32102 composeString("description", element.getDescriptionElement()); 32103 } 32104 if (element.hasLanguageElement()) { 32105 composeString("language", element.getLanguageElement()); 32106 } 32107 if (element.hasExpressionElement()) { 32108 composeString("expression", element.getExpressionElement()); 32109 } 32110 } 32111 32112 protected void composePlanDefinitionPlanDefinitionActionRelatedActionComponent(String name, PlanDefinition.PlanDefinitionActionRelatedActionComponent element) throws IOException { 32113 if (element != null) { 32114 composeElementAttributes(element); 32115 xml.enter(FHIR_NS, name); 32116 composePlanDefinitionPlanDefinitionActionRelatedActionComponentElements(element); 32117 composeElementClose(element); 32118 xml.exit(FHIR_NS, name); 32119 } 32120 } 32121 32122 protected void composePlanDefinitionPlanDefinitionActionRelatedActionComponentElements(PlanDefinition.PlanDefinitionActionRelatedActionComponent element) throws IOException { 32123 composeBackboneElements(element); 32124 if (element.hasActionIdElement()) { 32125 composeId("actionId", element.getActionIdElement()); 32126 } 32127 if (element.hasRelationshipElement()) 32128 composeEnumeration("relationship", element.getRelationshipElement(), new PlanDefinition.ActionRelationshipTypeEnumFactory()); 32129 if (element.hasOffset()) { 32130 composeType("offset", element.getOffset()); 32131 } } 32132 32133 protected void composePlanDefinitionPlanDefinitionActionParticipantComponent(String name, PlanDefinition.PlanDefinitionActionParticipantComponent element) throws IOException { 32134 if (element != null) { 32135 composeElementAttributes(element); 32136 xml.enter(FHIR_NS, name); 32137 composePlanDefinitionPlanDefinitionActionParticipantComponentElements(element); 32138 composeElementClose(element); 32139 xml.exit(FHIR_NS, name); 32140 } 32141 } 32142 32143 protected void composePlanDefinitionPlanDefinitionActionParticipantComponentElements(PlanDefinition.PlanDefinitionActionParticipantComponent element) throws IOException { 32144 composeBackboneElements(element); 32145 if (element.hasTypeElement()) 32146 composeEnumeration("type", element.getTypeElement(), new PlanDefinition.ActionParticipantTypeEnumFactory()); 32147 if (element.hasRole()) { 32148 composeCodeableConcept("role", element.getRole()); 32149 } 32150 } 32151 32152 protected void composePlanDefinitionPlanDefinitionActionDynamicValueComponent(String name, PlanDefinition.PlanDefinitionActionDynamicValueComponent element) throws IOException { 32153 if (element != null) { 32154 composeElementAttributes(element); 32155 xml.enter(FHIR_NS, name); 32156 composePlanDefinitionPlanDefinitionActionDynamicValueComponentElements(element); 32157 composeElementClose(element); 32158 xml.exit(FHIR_NS, name); 32159 } 32160 } 32161 32162 protected void composePlanDefinitionPlanDefinitionActionDynamicValueComponentElements(PlanDefinition.PlanDefinitionActionDynamicValueComponent element) throws IOException { 32163 composeBackboneElements(element); 32164 if (element.hasDescriptionElement()) { 32165 composeString("description", element.getDescriptionElement()); 32166 } 32167 if (element.hasPathElement()) { 32168 composeString("path", element.getPathElement()); 32169 } 32170 if (element.hasLanguageElement()) { 32171 composeString("language", element.getLanguageElement()); 32172 } 32173 if (element.hasExpressionElement()) { 32174 composeString("expression", element.getExpressionElement()); 32175 } 32176 } 32177 32178 protected void composePractitioner(String name, Practitioner element) throws IOException { 32179 if (element != null) { 32180 composeDomainResourceAttributes(element); 32181 xml.enter(FHIR_NS, name); 32182 composePractitionerElements(element); 32183 composeElementClose(element); 32184 xml.exit(FHIR_NS, name); 32185 } 32186 } 32187 32188 protected void composePractitionerElements(Practitioner element) throws IOException { 32189 composeDomainResourceElements(element); 32190 if (element.hasIdentifier()) { 32191 for (Identifier e : element.getIdentifier()) 32192 composeIdentifier("identifier", e); 32193 } 32194 if (element.hasActiveElement()) { 32195 composeBoolean("active", element.getActiveElement()); 32196 } 32197 if (element.hasName()) { 32198 for (HumanName e : element.getName()) 32199 composeHumanName("name", e); 32200 } 32201 if (element.hasTelecom()) { 32202 for (ContactPoint e : element.getTelecom()) 32203 composeContactPoint("telecom", e); 32204 } 32205 if (element.hasAddress()) { 32206 for (Address e : element.getAddress()) 32207 composeAddress("address", e); 32208 } 32209 if (element.hasGenderElement()) 32210 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 32211 if (element.hasBirthDateElement()) { 32212 composeDate("birthDate", element.getBirthDateElement()); 32213 } 32214 if (element.hasPhoto()) { 32215 for (Attachment e : element.getPhoto()) 32216 composeAttachment("photo", e); 32217 } 32218 if (element.hasQualification()) { 32219 for (Practitioner.PractitionerQualificationComponent e : element.getQualification()) 32220 composePractitionerPractitionerQualificationComponent("qualification", e); 32221 } 32222 if (element.hasCommunication()) { 32223 for (CodeableConcept e : element.getCommunication()) 32224 composeCodeableConcept("communication", e); 32225 } 32226 } 32227 32228 protected void composePractitionerPractitionerQualificationComponent(String name, Practitioner.PractitionerQualificationComponent element) throws IOException { 32229 if (element != null) { 32230 composeElementAttributes(element); 32231 xml.enter(FHIR_NS, name); 32232 composePractitionerPractitionerQualificationComponentElements(element); 32233 composeElementClose(element); 32234 xml.exit(FHIR_NS, name); 32235 } 32236 } 32237 32238 protected void composePractitionerPractitionerQualificationComponentElements(Practitioner.PractitionerQualificationComponent element) throws IOException { 32239 composeBackboneElements(element); 32240 if (element.hasIdentifier()) { 32241 for (Identifier e : element.getIdentifier()) 32242 composeIdentifier("identifier", e); 32243 } 32244 if (element.hasCode()) { 32245 composeCodeableConcept("code", element.getCode()); 32246 } 32247 if (element.hasPeriod()) { 32248 composePeriod("period", element.getPeriod()); 32249 } 32250 if (element.hasIssuer()) { 32251 composeReference("issuer", element.getIssuer()); 32252 } 32253 } 32254 32255 protected void composePractitionerRole(String name, PractitionerRole element) throws IOException { 32256 if (element != null) { 32257 composeDomainResourceAttributes(element); 32258 xml.enter(FHIR_NS, name); 32259 composePractitionerRoleElements(element); 32260 composeElementClose(element); 32261 xml.exit(FHIR_NS, name); 32262 } 32263 } 32264 32265 protected void composePractitionerRoleElements(PractitionerRole element) throws IOException { 32266 composeDomainResourceElements(element); 32267 if (element.hasIdentifier()) { 32268 for (Identifier e : element.getIdentifier()) 32269 composeIdentifier("identifier", e); 32270 } 32271 if (element.hasActiveElement()) { 32272 composeBoolean("active", element.getActiveElement()); 32273 } 32274 if (element.hasPeriod()) { 32275 composePeriod("period", element.getPeriod()); 32276 } 32277 if (element.hasPractitioner()) { 32278 composeReference("practitioner", element.getPractitioner()); 32279 } 32280 if (element.hasOrganization()) { 32281 composeReference("organization", element.getOrganization()); 32282 } 32283 if (element.hasCode()) { 32284 for (CodeableConcept e : element.getCode()) 32285 composeCodeableConcept("code", e); 32286 } 32287 if (element.hasSpecialty()) { 32288 for (CodeableConcept e : element.getSpecialty()) 32289 composeCodeableConcept("specialty", e); 32290 } 32291 if (element.hasLocation()) { 32292 for (Reference e : element.getLocation()) 32293 composeReference("location", e); 32294 } 32295 if (element.hasHealthcareService()) { 32296 for (Reference e : element.getHealthcareService()) 32297 composeReference("healthcareService", e); 32298 } 32299 if (element.hasTelecom()) { 32300 for (ContactPoint e : element.getTelecom()) 32301 composeContactPoint("telecom", e); 32302 } 32303 if (element.hasAvailableTime()) { 32304 for (PractitionerRole.PractitionerRoleAvailableTimeComponent e : element.getAvailableTime()) 32305 composePractitionerRolePractitionerRoleAvailableTimeComponent("availableTime", e); 32306 } 32307 if (element.hasNotAvailable()) { 32308 for (PractitionerRole.PractitionerRoleNotAvailableComponent e : element.getNotAvailable()) 32309 composePractitionerRolePractitionerRoleNotAvailableComponent("notAvailable", e); 32310 } 32311 if (element.hasAvailabilityExceptionsElement()) { 32312 composeString("availabilityExceptions", element.getAvailabilityExceptionsElement()); 32313 } 32314 if (element.hasEndpoint()) { 32315 for (Reference e : element.getEndpoint()) 32316 composeReference("endpoint", e); 32317 } 32318 } 32319 32320 protected void composePractitionerRolePractitionerRoleAvailableTimeComponent(String name, PractitionerRole.PractitionerRoleAvailableTimeComponent element) throws IOException { 32321 if (element != null) { 32322 composeElementAttributes(element); 32323 xml.enter(FHIR_NS, name); 32324 composePractitionerRolePractitionerRoleAvailableTimeComponentElements(element); 32325 composeElementClose(element); 32326 xml.exit(FHIR_NS, name); 32327 } 32328 } 32329 32330 protected void composePractitionerRolePractitionerRoleAvailableTimeComponentElements(PractitionerRole.PractitionerRoleAvailableTimeComponent element) throws IOException { 32331 composeBackboneElements(element); 32332 if (element.hasDaysOfWeek()) 32333 for (Enumeration<PractitionerRole.DaysOfWeek> e : element.getDaysOfWeek()) 32334 composeEnumeration("daysOfWeek", e, new PractitionerRole.DaysOfWeekEnumFactory()); 32335 if (element.hasAllDayElement()) { 32336 composeBoolean("allDay", element.getAllDayElement()); 32337 } 32338 if (element.hasAvailableStartTimeElement()) { 32339 composeTime("availableStartTime", element.getAvailableStartTimeElement()); 32340 } 32341 if (element.hasAvailableEndTimeElement()) { 32342 composeTime("availableEndTime", element.getAvailableEndTimeElement()); 32343 } 32344 } 32345 32346 protected void composePractitionerRolePractitionerRoleNotAvailableComponent(String name, PractitionerRole.PractitionerRoleNotAvailableComponent element) throws IOException { 32347 if (element != null) { 32348 composeElementAttributes(element); 32349 xml.enter(FHIR_NS, name); 32350 composePractitionerRolePractitionerRoleNotAvailableComponentElements(element); 32351 composeElementClose(element); 32352 xml.exit(FHIR_NS, name); 32353 } 32354 } 32355 32356 protected void composePractitionerRolePractitionerRoleNotAvailableComponentElements(PractitionerRole.PractitionerRoleNotAvailableComponent element) throws IOException { 32357 composeBackboneElements(element); 32358 if (element.hasDescriptionElement()) { 32359 composeString("description", element.getDescriptionElement()); 32360 } 32361 if (element.hasDuring()) { 32362 composePeriod("during", element.getDuring()); 32363 } 32364 } 32365 32366 protected void composeProcedure(String name, Procedure element) throws IOException { 32367 if (element != null) { 32368 composeDomainResourceAttributes(element); 32369 xml.enter(FHIR_NS, name); 32370 composeProcedureElements(element); 32371 composeElementClose(element); 32372 xml.exit(FHIR_NS, name); 32373 } 32374 } 32375 32376 protected void composeProcedureElements(Procedure element) throws IOException { 32377 composeDomainResourceElements(element); 32378 if (element.hasIdentifier()) { 32379 for (Identifier e : element.getIdentifier()) 32380 composeIdentifier("identifier", e); 32381 } 32382 if (element.hasDefinition()) { 32383 for (Reference e : element.getDefinition()) 32384 composeReference("definition", e); 32385 } 32386 if (element.hasBasedOn()) { 32387 for (Reference e : element.getBasedOn()) 32388 composeReference("basedOn", e); 32389 } 32390 if (element.hasPartOf()) { 32391 for (Reference e : element.getPartOf()) 32392 composeReference("partOf", e); 32393 } 32394 if (element.hasStatusElement()) 32395 composeEnumeration("status", element.getStatusElement(), new Procedure.ProcedureStatusEnumFactory()); 32396 if (element.hasNotDoneElement()) { 32397 composeBoolean("notDone", element.getNotDoneElement()); 32398 } 32399 if (element.hasNotDoneReason()) { 32400 composeCodeableConcept("notDoneReason", element.getNotDoneReason()); 32401 } 32402 if (element.hasCategory()) { 32403 composeCodeableConcept("category", element.getCategory()); 32404 } 32405 if (element.hasCode()) { 32406 composeCodeableConcept("code", element.getCode()); 32407 } 32408 if (element.hasSubject()) { 32409 composeReference("subject", element.getSubject()); 32410 } 32411 if (element.hasContext()) { 32412 composeReference("context", element.getContext()); 32413 } 32414 if (element.hasPerformed()) { 32415 composeType("performed", element.getPerformed()); 32416 } if (element.hasPerformer()) { 32417 for (Procedure.ProcedurePerformerComponent e : element.getPerformer()) 32418 composeProcedureProcedurePerformerComponent("performer", e); 32419 } 32420 if (element.hasLocation()) { 32421 composeReference("location", element.getLocation()); 32422 } 32423 if (element.hasReasonCode()) { 32424 for (CodeableConcept e : element.getReasonCode()) 32425 composeCodeableConcept("reasonCode", e); 32426 } 32427 if (element.hasReasonReference()) { 32428 for (Reference e : element.getReasonReference()) 32429 composeReference("reasonReference", e); 32430 } 32431 if (element.hasBodySite()) { 32432 for (CodeableConcept e : element.getBodySite()) 32433 composeCodeableConcept("bodySite", e); 32434 } 32435 if (element.hasOutcome()) { 32436 composeCodeableConcept("outcome", element.getOutcome()); 32437 } 32438 if (element.hasReport()) { 32439 for (Reference e : element.getReport()) 32440 composeReference("report", e); 32441 } 32442 if (element.hasComplication()) { 32443 for (CodeableConcept e : element.getComplication()) 32444 composeCodeableConcept("complication", e); 32445 } 32446 if (element.hasComplicationDetail()) { 32447 for (Reference e : element.getComplicationDetail()) 32448 composeReference("complicationDetail", e); 32449 } 32450 if (element.hasFollowUp()) { 32451 for (CodeableConcept e : element.getFollowUp()) 32452 composeCodeableConcept("followUp", e); 32453 } 32454 if (element.hasNote()) { 32455 for (Annotation e : element.getNote()) 32456 composeAnnotation("note", e); 32457 } 32458 if (element.hasFocalDevice()) { 32459 for (Procedure.ProcedureFocalDeviceComponent e : element.getFocalDevice()) 32460 composeProcedureProcedureFocalDeviceComponent("focalDevice", e); 32461 } 32462 if (element.hasUsedReference()) { 32463 for (Reference e : element.getUsedReference()) 32464 composeReference("usedReference", e); 32465 } 32466 if (element.hasUsedCode()) { 32467 for (CodeableConcept e : element.getUsedCode()) 32468 composeCodeableConcept("usedCode", e); 32469 } 32470 } 32471 32472 protected void composeProcedureProcedurePerformerComponent(String name, Procedure.ProcedurePerformerComponent element) throws IOException { 32473 if (element != null) { 32474 composeElementAttributes(element); 32475 xml.enter(FHIR_NS, name); 32476 composeProcedureProcedurePerformerComponentElements(element); 32477 composeElementClose(element); 32478 xml.exit(FHIR_NS, name); 32479 } 32480 } 32481 32482 protected void composeProcedureProcedurePerformerComponentElements(Procedure.ProcedurePerformerComponent element) throws IOException { 32483 composeBackboneElements(element); 32484 if (element.hasRole()) { 32485 composeCodeableConcept("role", element.getRole()); 32486 } 32487 if (element.hasActor()) { 32488 composeReference("actor", element.getActor()); 32489 } 32490 if (element.hasOnBehalfOf()) { 32491 composeReference("onBehalfOf", element.getOnBehalfOf()); 32492 } 32493 } 32494 32495 protected void composeProcedureProcedureFocalDeviceComponent(String name, Procedure.ProcedureFocalDeviceComponent element) throws IOException { 32496 if (element != null) { 32497 composeElementAttributes(element); 32498 xml.enter(FHIR_NS, name); 32499 composeProcedureProcedureFocalDeviceComponentElements(element); 32500 composeElementClose(element); 32501 xml.exit(FHIR_NS, name); 32502 } 32503 } 32504 32505 protected void composeProcedureProcedureFocalDeviceComponentElements(Procedure.ProcedureFocalDeviceComponent element) throws IOException { 32506 composeBackboneElements(element); 32507 if (element.hasAction()) { 32508 composeCodeableConcept("action", element.getAction()); 32509 } 32510 if (element.hasManipulated()) { 32511 composeReference("manipulated", element.getManipulated()); 32512 } 32513 } 32514 32515 protected void composeProcedureRequest(String name, ProcedureRequest element) throws IOException { 32516 if (element != null) { 32517 composeDomainResourceAttributes(element); 32518 xml.enter(FHIR_NS, name); 32519 composeProcedureRequestElements(element); 32520 composeElementClose(element); 32521 xml.exit(FHIR_NS, name); 32522 } 32523 } 32524 32525 protected void composeProcedureRequestElements(ProcedureRequest element) throws IOException { 32526 composeDomainResourceElements(element); 32527 if (element.hasIdentifier()) { 32528 for (Identifier e : element.getIdentifier()) 32529 composeIdentifier("identifier", e); 32530 } 32531 if (element.hasDefinition()) { 32532 for (Reference e : element.getDefinition()) 32533 composeReference("definition", e); 32534 } 32535 if (element.hasBasedOn()) { 32536 for (Reference e : element.getBasedOn()) 32537 composeReference("basedOn", e); 32538 } 32539 if (element.hasReplaces()) { 32540 for (Reference e : element.getReplaces()) 32541 composeReference("replaces", e); 32542 } 32543 if (element.hasRequisition()) { 32544 composeIdentifier("requisition", element.getRequisition()); 32545 } 32546 if (element.hasStatusElement()) 32547 composeEnumeration("status", element.getStatusElement(), new ProcedureRequest.ProcedureRequestStatusEnumFactory()); 32548 if (element.hasIntentElement()) 32549 composeEnumeration("intent", element.getIntentElement(), new ProcedureRequest.ProcedureRequestIntentEnumFactory()); 32550 if (element.hasPriorityElement()) 32551 composeEnumeration("priority", element.getPriorityElement(), new ProcedureRequest.ProcedureRequestPriorityEnumFactory()); 32552 if (element.hasDoNotPerformElement()) { 32553 composeBoolean("doNotPerform", element.getDoNotPerformElement()); 32554 } 32555 if (element.hasCategory()) { 32556 for (CodeableConcept e : element.getCategory()) 32557 composeCodeableConcept("category", e); 32558 } 32559 if (element.hasCode()) { 32560 composeCodeableConcept("code", element.getCode()); 32561 } 32562 if (element.hasSubject()) { 32563 composeReference("subject", element.getSubject()); 32564 } 32565 if (element.hasContext()) { 32566 composeReference("context", element.getContext()); 32567 } 32568 if (element.hasOccurrence()) { 32569 composeType("occurrence", element.getOccurrence()); 32570 } if (element.hasAsNeeded()) { 32571 composeType("asNeeded", element.getAsNeeded()); 32572 } if (element.hasAuthoredOnElement()) { 32573 composeDateTime("authoredOn", element.getAuthoredOnElement()); 32574 } 32575 if (element.hasRequester()) { 32576 composeProcedureRequestProcedureRequestRequesterComponent("requester", element.getRequester()); 32577 } 32578 if (element.hasPerformerType()) { 32579 composeCodeableConcept("performerType", element.getPerformerType()); 32580 } 32581 if (element.hasPerformer()) { 32582 composeReference("performer", element.getPerformer()); 32583 } 32584 if (element.hasReasonCode()) { 32585 for (CodeableConcept e : element.getReasonCode()) 32586 composeCodeableConcept("reasonCode", e); 32587 } 32588 if (element.hasReasonReference()) { 32589 for (Reference e : element.getReasonReference()) 32590 composeReference("reasonReference", e); 32591 } 32592 if (element.hasSupportingInfo()) { 32593 for (Reference e : element.getSupportingInfo()) 32594 composeReference("supportingInfo", e); 32595 } 32596 if (element.hasSpecimen()) { 32597 for (Reference e : element.getSpecimen()) 32598 composeReference("specimen", e); 32599 } 32600 if (element.hasBodySite()) { 32601 for (CodeableConcept e : element.getBodySite()) 32602 composeCodeableConcept("bodySite", e); 32603 } 32604 if (element.hasNote()) { 32605 for (Annotation e : element.getNote()) 32606 composeAnnotation("note", e); 32607 } 32608 if (element.hasRelevantHistory()) { 32609 for (Reference e : element.getRelevantHistory()) 32610 composeReference("relevantHistory", e); 32611 } 32612 } 32613 32614 protected void composeProcedureRequestProcedureRequestRequesterComponent(String name, ProcedureRequest.ProcedureRequestRequesterComponent element) throws IOException { 32615 if (element != null) { 32616 composeElementAttributes(element); 32617 xml.enter(FHIR_NS, name); 32618 composeProcedureRequestProcedureRequestRequesterComponentElements(element); 32619 composeElementClose(element); 32620 xml.exit(FHIR_NS, name); 32621 } 32622 } 32623 32624 protected void composeProcedureRequestProcedureRequestRequesterComponentElements(ProcedureRequest.ProcedureRequestRequesterComponent element) throws IOException { 32625 composeBackboneElements(element); 32626 if (element.hasAgent()) { 32627 composeReference("agent", element.getAgent()); 32628 } 32629 if (element.hasOnBehalfOf()) { 32630 composeReference("onBehalfOf", element.getOnBehalfOf()); 32631 } 32632 } 32633 32634 protected void composeProcessRequest(String name, ProcessRequest element) throws IOException { 32635 if (element != null) { 32636 composeDomainResourceAttributes(element); 32637 xml.enter(FHIR_NS, name); 32638 composeProcessRequestElements(element); 32639 composeElementClose(element); 32640 xml.exit(FHIR_NS, name); 32641 } 32642 } 32643 32644 protected void composeProcessRequestElements(ProcessRequest element) throws IOException { 32645 composeDomainResourceElements(element); 32646 if (element.hasIdentifier()) { 32647 for (Identifier e : element.getIdentifier()) 32648 composeIdentifier("identifier", e); 32649 } 32650 if (element.hasStatusElement()) 32651 composeEnumeration("status", element.getStatusElement(), new ProcessRequest.ProcessRequestStatusEnumFactory()); 32652 if (element.hasActionElement()) 32653 composeEnumeration("action", element.getActionElement(), new ProcessRequest.ActionListEnumFactory()); 32654 if (element.hasTarget()) { 32655 composeReference("target", element.getTarget()); 32656 } 32657 if (element.hasCreatedElement()) { 32658 composeDateTime("created", element.getCreatedElement()); 32659 } 32660 if (element.hasProvider()) { 32661 composeReference("provider", element.getProvider()); 32662 } 32663 if (element.hasOrganization()) { 32664 composeReference("organization", element.getOrganization()); 32665 } 32666 if (element.hasRequest()) { 32667 composeReference("request", element.getRequest()); 32668 } 32669 if (element.hasResponse()) { 32670 composeReference("response", element.getResponse()); 32671 } 32672 if (element.hasNullifyElement()) { 32673 composeBoolean("nullify", element.getNullifyElement()); 32674 } 32675 if (element.hasReferenceElement()) { 32676 composeString("reference", element.getReferenceElement()); 32677 } 32678 if (element.hasItem()) { 32679 for (ProcessRequest.ItemsComponent e : element.getItem()) 32680 composeProcessRequestItemsComponent("item", e); 32681 } 32682 if (element.hasInclude()) { 32683 for (StringType e : element.getInclude()) 32684 composeString("include", e); 32685 } 32686 if (element.hasExclude()) { 32687 for (StringType e : element.getExclude()) 32688 composeString("exclude", e); 32689 } 32690 if (element.hasPeriod()) { 32691 composePeriod("period", element.getPeriod()); 32692 } 32693 } 32694 32695 protected void composeProcessRequestItemsComponent(String name, ProcessRequest.ItemsComponent element) throws IOException { 32696 if (element != null) { 32697 composeElementAttributes(element); 32698 xml.enter(FHIR_NS, name); 32699 composeProcessRequestItemsComponentElements(element); 32700 composeElementClose(element); 32701 xml.exit(FHIR_NS, name); 32702 } 32703 } 32704 32705 protected void composeProcessRequestItemsComponentElements(ProcessRequest.ItemsComponent element) throws IOException { 32706 composeBackboneElements(element); 32707 if (element.hasSequenceLinkIdElement()) { 32708 composeInteger("sequenceLinkId", element.getSequenceLinkIdElement()); 32709 } 32710 } 32711 32712 protected void composeProcessResponse(String name, ProcessResponse element) throws IOException { 32713 if (element != null) { 32714 composeDomainResourceAttributes(element); 32715 xml.enter(FHIR_NS, name); 32716 composeProcessResponseElements(element); 32717 composeElementClose(element); 32718 xml.exit(FHIR_NS, name); 32719 } 32720 } 32721 32722 protected void composeProcessResponseElements(ProcessResponse element) throws IOException { 32723 composeDomainResourceElements(element); 32724 if (element.hasIdentifier()) { 32725 for (Identifier e : element.getIdentifier()) 32726 composeIdentifier("identifier", e); 32727 } 32728 if (element.hasStatusElement()) 32729 composeEnumeration("status", element.getStatusElement(), new ProcessResponse.ProcessResponseStatusEnumFactory()); 32730 if (element.hasCreatedElement()) { 32731 composeDateTime("created", element.getCreatedElement()); 32732 } 32733 if (element.hasOrganization()) { 32734 composeReference("organization", element.getOrganization()); 32735 } 32736 if (element.hasRequest()) { 32737 composeReference("request", element.getRequest()); 32738 } 32739 if (element.hasOutcome()) { 32740 composeCodeableConcept("outcome", element.getOutcome()); 32741 } 32742 if (element.hasDispositionElement()) { 32743 composeString("disposition", element.getDispositionElement()); 32744 } 32745 if (element.hasRequestProvider()) { 32746 composeReference("requestProvider", element.getRequestProvider()); 32747 } 32748 if (element.hasRequestOrganization()) { 32749 composeReference("requestOrganization", element.getRequestOrganization()); 32750 } 32751 if (element.hasForm()) { 32752 composeCodeableConcept("form", element.getForm()); 32753 } 32754 if (element.hasProcessNote()) { 32755 for (ProcessResponse.ProcessResponseProcessNoteComponent e : element.getProcessNote()) 32756 composeProcessResponseProcessResponseProcessNoteComponent("processNote", e); 32757 } 32758 if (element.hasError()) { 32759 for (CodeableConcept e : element.getError()) 32760 composeCodeableConcept("error", e); 32761 } 32762 if (element.hasCommunicationRequest()) { 32763 for (Reference e : element.getCommunicationRequest()) 32764 composeReference("communicationRequest", e); 32765 } 32766 } 32767 32768 protected void composeProcessResponseProcessResponseProcessNoteComponent(String name, ProcessResponse.ProcessResponseProcessNoteComponent element) throws IOException { 32769 if (element != null) { 32770 composeElementAttributes(element); 32771 xml.enter(FHIR_NS, name); 32772 composeProcessResponseProcessResponseProcessNoteComponentElements(element); 32773 composeElementClose(element); 32774 xml.exit(FHIR_NS, name); 32775 } 32776 } 32777 32778 protected void composeProcessResponseProcessResponseProcessNoteComponentElements(ProcessResponse.ProcessResponseProcessNoteComponent element) throws IOException { 32779 composeBackboneElements(element); 32780 if (element.hasType()) { 32781 composeCodeableConcept("type", element.getType()); 32782 } 32783 if (element.hasTextElement()) { 32784 composeString("text", element.getTextElement()); 32785 } 32786 } 32787 32788 protected void composeProvenance(String name, Provenance element) throws IOException { 32789 if (element != null) { 32790 composeDomainResourceAttributes(element); 32791 xml.enter(FHIR_NS, name); 32792 composeProvenanceElements(element); 32793 composeElementClose(element); 32794 xml.exit(FHIR_NS, name); 32795 } 32796 } 32797 32798 protected void composeProvenanceElements(Provenance element) throws IOException { 32799 composeDomainResourceElements(element); 32800 if (element.hasTarget()) { 32801 for (Reference e : element.getTarget()) 32802 composeReference("target", e); 32803 } 32804 if (element.hasPeriod()) { 32805 composePeriod("period", element.getPeriod()); 32806 } 32807 if (element.hasRecordedElement()) { 32808 composeInstant("recorded", element.getRecordedElement()); 32809 } 32810 if (element.hasPolicy()) { 32811 for (UriType e : element.getPolicy()) 32812 composeUri("policy", e); 32813 } 32814 if (element.hasLocation()) { 32815 composeReference("location", element.getLocation()); 32816 } 32817 if (element.hasReason()) { 32818 for (Coding e : element.getReason()) 32819 composeCoding("reason", e); 32820 } 32821 if (element.hasActivity()) { 32822 composeCoding("activity", element.getActivity()); 32823 } 32824 if (element.hasAgent()) { 32825 for (Provenance.ProvenanceAgentComponent e : element.getAgent()) 32826 composeProvenanceProvenanceAgentComponent("agent", e); 32827 } 32828 if (element.hasEntity()) { 32829 for (Provenance.ProvenanceEntityComponent e : element.getEntity()) 32830 composeProvenanceProvenanceEntityComponent("entity", e); 32831 } 32832 if (element.hasSignature()) { 32833 for (Signature e : element.getSignature()) 32834 composeSignature("signature", e); 32835 } 32836 } 32837 32838 protected void composeProvenanceProvenanceAgentComponent(String name, Provenance.ProvenanceAgentComponent element) throws IOException { 32839 if (element != null) { 32840 composeElementAttributes(element); 32841 xml.enter(FHIR_NS, name); 32842 composeProvenanceProvenanceAgentComponentElements(element); 32843 composeElementClose(element); 32844 xml.exit(FHIR_NS, name); 32845 } 32846 } 32847 32848 protected void composeProvenanceProvenanceAgentComponentElements(Provenance.ProvenanceAgentComponent element) throws IOException { 32849 composeBackboneElements(element); 32850 if (element.hasRole()) { 32851 for (CodeableConcept e : element.getRole()) 32852 composeCodeableConcept("role", e); 32853 } 32854 if (element.hasWho()) { 32855 composeType("who", element.getWho()); 32856 } if (element.hasOnBehalfOf()) { 32857 composeType("onBehalfOf", element.getOnBehalfOf()); 32858 } if (element.hasRelatedAgentType()) { 32859 composeCodeableConcept("relatedAgentType", element.getRelatedAgentType()); 32860 } 32861 } 32862 32863 protected void composeProvenanceProvenanceEntityComponent(String name, Provenance.ProvenanceEntityComponent element) throws IOException { 32864 if (element != null) { 32865 composeElementAttributes(element); 32866 xml.enter(FHIR_NS, name); 32867 composeProvenanceProvenanceEntityComponentElements(element); 32868 composeElementClose(element); 32869 xml.exit(FHIR_NS, name); 32870 } 32871 } 32872 32873 protected void composeProvenanceProvenanceEntityComponentElements(Provenance.ProvenanceEntityComponent element) throws IOException { 32874 composeBackboneElements(element); 32875 if (element.hasRoleElement()) 32876 composeEnumeration("role", element.getRoleElement(), new Provenance.ProvenanceEntityRoleEnumFactory()); 32877 if (element.hasWhat()) { 32878 composeType("what", element.getWhat()); 32879 } if (element.hasAgent()) { 32880 for (Provenance.ProvenanceAgentComponent e : element.getAgent()) 32881 composeProvenanceProvenanceAgentComponent("agent", e); 32882 } 32883 } 32884 32885 protected void composeQuestionnaire(String name, Questionnaire element) throws IOException { 32886 if (element != null) { 32887 composeDomainResourceAttributes(element); 32888 xml.enter(FHIR_NS, name); 32889 composeQuestionnaireElements(element); 32890 composeElementClose(element); 32891 xml.exit(FHIR_NS, name); 32892 } 32893 } 32894 32895 protected void composeQuestionnaireElements(Questionnaire element) throws IOException { 32896 composeDomainResourceElements(element); 32897 if (element.hasUrlElement()) { 32898 composeUri("url", element.getUrlElement()); 32899 } 32900 if (element.hasIdentifier()) { 32901 for (Identifier e : element.getIdentifier()) 32902 composeIdentifier("identifier", e); 32903 } 32904 if (element.hasVersionElement()) { 32905 composeString("version", element.getVersionElement()); 32906 } 32907 if (element.hasNameElement()) { 32908 composeString("name", element.getNameElement()); 32909 } 32910 if (element.hasTitleElement()) { 32911 composeString("title", element.getTitleElement()); 32912 } 32913 if (element.hasStatusElement()) 32914 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 32915 if (element.hasExperimentalElement()) { 32916 composeBoolean("experimental", element.getExperimentalElement()); 32917 } 32918 if (element.hasDateElement()) { 32919 composeDateTime("date", element.getDateElement()); 32920 } 32921 if (element.hasPublisherElement()) { 32922 composeString("publisher", element.getPublisherElement()); 32923 } 32924 if (element.hasDescriptionElement()) { 32925 composeMarkdown("description", element.getDescriptionElement()); 32926 } 32927 if (element.hasPurposeElement()) { 32928 composeMarkdown("purpose", element.getPurposeElement()); 32929 } 32930 if (element.hasApprovalDateElement()) { 32931 composeDate("approvalDate", element.getApprovalDateElement()); 32932 } 32933 if (element.hasLastReviewDateElement()) { 32934 composeDate("lastReviewDate", element.getLastReviewDateElement()); 32935 } 32936 if (element.hasEffectivePeriod()) { 32937 composePeriod("effectivePeriod", element.getEffectivePeriod()); 32938 } 32939 if (element.hasUseContext()) { 32940 for (UsageContext e : element.getUseContext()) 32941 composeUsageContext("useContext", e); 32942 } 32943 if (element.hasJurisdiction()) { 32944 for (CodeableConcept e : element.getJurisdiction()) 32945 composeCodeableConcept("jurisdiction", e); 32946 } 32947 if (element.hasContact()) { 32948 for (ContactDetail e : element.getContact()) 32949 composeContactDetail("contact", e); 32950 } 32951 if (element.hasCopyrightElement()) { 32952 composeMarkdown("copyright", element.getCopyrightElement()); 32953 } 32954 if (element.hasCode()) { 32955 for (Coding e : element.getCode()) 32956 composeCoding("code", e); 32957 } 32958 if (element.hasSubjectType()) { 32959 for (CodeType e : element.getSubjectType()) 32960 composeCode("subjectType", e); 32961 } 32962 if (element.hasItem()) { 32963 for (Questionnaire.QuestionnaireItemComponent e : element.getItem()) 32964 composeQuestionnaireQuestionnaireItemComponent("item", e); 32965 } 32966 } 32967 32968 protected void composeQuestionnaireQuestionnaireItemComponent(String name, Questionnaire.QuestionnaireItemComponent element) throws IOException { 32969 if (element != null) { 32970 composeElementAttributes(element); 32971 xml.enter(FHIR_NS, name); 32972 composeQuestionnaireQuestionnaireItemComponentElements(element); 32973 composeElementClose(element); 32974 xml.exit(FHIR_NS, name); 32975 } 32976 } 32977 32978 protected void composeQuestionnaireQuestionnaireItemComponentElements(Questionnaire.QuestionnaireItemComponent element) throws IOException { 32979 composeBackboneElements(element); 32980 if (element.hasLinkIdElement()) { 32981 composeString("linkId", element.getLinkIdElement()); 32982 } 32983 if (element.hasDefinitionElement()) { 32984 composeUri("definition", element.getDefinitionElement()); 32985 } 32986 if (element.hasCode()) { 32987 for (Coding e : element.getCode()) 32988 composeCoding("code", e); 32989 } 32990 if (element.hasPrefixElement()) { 32991 composeString("prefix", element.getPrefixElement()); 32992 } 32993 if (element.hasTextElement()) { 32994 composeString("text", element.getTextElement()); 32995 } 32996 if (element.hasTypeElement()) 32997 composeEnumeration("type", element.getTypeElement(), new Questionnaire.QuestionnaireItemTypeEnumFactory()); 32998 if (element.hasEnableWhen()) { 32999 for (Questionnaire.QuestionnaireItemEnableWhenComponent e : element.getEnableWhen()) 33000 composeQuestionnaireQuestionnaireItemEnableWhenComponent("enableWhen", e); 33001 } 33002 if (element.hasRequiredElement()) { 33003 composeBoolean("required", element.getRequiredElement()); 33004 } 33005 if (element.hasRepeatsElement()) { 33006 composeBoolean("repeats", element.getRepeatsElement()); 33007 } 33008 if (element.hasReadOnlyElement()) { 33009 composeBoolean("readOnly", element.getReadOnlyElement()); 33010 } 33011 if (element.hasMaxLengthElement()) { 33012 composeInteger("maxLength", element.getMaxLengthElement()); 33013 } 33014 if (element.hasOptions()) { 33015 composeReference("options", element.getOptions()); 33016 } 33017 if (element.hasOption()) { 33018 for (Questionnaire.QuestionnaireItemOptionComponent e : element.getOption()) 33019 composeQuestionnaireQuestionnaireItemOptionComponent("option", e); 33020 } 33021 if (element.hasInitial()) { 33022 composeType("initial", element.getInitial()); 33023 } if (element.hasItem()) { 33024 for (Questionnaire.QuestionnaireItemComponent e : element.getItem()) 33025 composeQuestionnaireQuestionnaireItemComponent("item", e); 33026 } 33027 } 33028 33029 protected void composeQuestionnaireQuestionnaireItemEnableWhenComponent(String name, Questionnaire.QuestionnaireItemEnableWhenComponent element) throws IOException { 33030 if (element != null) { 33031 composeElementAttributes(element); 33032 xml.enter(FHIR_NS, name); 33033 composeQuestionnaireQuestionnaireItemEnableWhenComponentElements(element); 33034 composeElementClose(element); 33035 xml.exit(FHIR_NS, name); 33036 } 33037 } 33038 33039 protected void composeQuestionnaireQuestionnaireItemEnableWhenComponentElements(Questionnaire.QuestionnaireItemEnableWhenComponent element) throws IOException { 33040 composeBackboneElements(element); 33041 if (element.hasQuestionElement()) { 33042 composeString("question", element.getQuestionElement()); 33043 } 33044 if (element.hasHasAnswerElement()) { 33045 composeBoolean("hasAnswer", element.getHasAnswerElement()); 33046 } 33047 if (element.hasAnswer()) { 33048 composeType("answer", element.getAnswer()); 33049 } } 33050 33051 protected void composeQuestionnaireQuestionnaireItemOptionComponent(String name, Questionnaire.QuestionnaireItemOptionComponent element) throws IOException { 33052 if (element != null) { 33053 composeElementAttributes(element); 33054 xml.enter(FHIR_NS, name); 33055 composeQuestionnaireQuestionnaireItemOptionComponentElements(element); 33056 composeElementClose(element); 33057 xml.exit(FHIR_NS, name); 33058 } 33059 } 33060 33061 protected void composeQuestionnaireQuestionnaireItemOptionComponentElements(Questionnaire.QuestionnaireItemOptionComponent element) throws IOException { 33062 composeBackboneElements(element); 33063 if (element.hasValue()) { 33064 composeType("value", element.getValue()); 33065 } } 33066 33067 protected void composeQuestionnaireResponse(String name, QuestionnaireResponse element) throws IOException { 33068 if (element != null) { 33069 composeDomainResourceAttributes(element); 33070 xml.enter(FHIR_NS, name); 33071 composeQuestionnaireResponseElements(element); 33072 composeElementClose(element); 33073 xml.exit(FHIR_NS, name); 33074 } 33075 } 33076 33077 protected void composeQuestionnaireResponseElements(QuestionnaireResponse element) throws IOException { 33078 composeDomainResourceElements(element); 33079 if (element.hasIdentifier()) { 33080 composeIdentifier("identifier", element.getIdentifier()); 33081 } 33082 if (element.hasBasedOn()) { 33083 for (Reference e : element.getBasedOn()) 33084 composeReference("basedOn", e); 33085 } 33086 if (element.hasParent()) { 33087 for (Reference e : element.getParent()) 33088 composeReference("parent", e); 33089 } 33090 if (element.hasQuestionnaire()) { 33091 composeReference("questionnaire", element.getQuestionnaire()); 33092 } 33093 if (element.hasStatusElement()) 33094 composeEnumeration("status", element.getStatusElement(), new QuestionnaireResponse.QuestionnaireResponseStatusEnumFactory()); 33095 if (element.hasSubject()) { 33096 composeReference("subject", element.getSubject()); 33097 } 33098 if (element.hasContext()) { 33099 composeReference("context", element.getContext()); 33100 } 33101 if (element.hasAuthoredElement()) { 33102 composeDateTime("authored", element.getAuthoredElement()); 33103 } 33104 if (element.hasAuthor()) { 33105 composeReference("author", element.getAuthor()); 33106 } 33107 if (element.hasSource()) { 33108 composeReference("source", element.getSource()); 33109 } 33110 if (element.hasItem()) { 33111 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 33112 composeQuestionnaireResponseQuestionnaireResponseItemComponent("item", e); 33113 } 33114 } 33115 33116 protected void composeQuestionnaireResponseQuestionnaireResponseItemComponent(String name, QuestionnaireResponse.QuestionnaireResponseItemComponent element) throws IOException { 33117 if (element != null) { 33118 composeElementAttributes(element); 33119 xml.enter(FHIR_NS, name); 33120 composeQuestionnaireResponseQuestionnaireResponseItemComponentElements(element); 33121 composeElementClose(element); 33122 xml.exit(FHIR_NS, name); 33123 } 33124 } 33125 33126 protected void composeQuestionnaireResponseQuestionnaireResponseItemComponentElements(QuestionnaireResponse.QuestionnaireResponseItemComponent element) throws IOException { 33127 composeBackboneElements(element); 33128 if (element.hasLinkIdElement()) { 33129 composeString("linkId", element.getLinkIdElement()); 33130 } 33131 if (element.hasDefinitionElement()) { 33132 composeUri("definition", element.getDefinitionElement()); 33133 } 33134 if (element.hasTextElement()) { 33135 composeString("text", element.getTextElement()); 33136 } 33137 if (element.hasSubject()) { 33138 composeReference("subject", element.getSubject()); 33139 } 33140 if (element.hasAnswer()) { 33141 for (QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent e : element.getAnswer()) 33142 composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponent("answer", e); 33143 } 33144 if (element.hasItem()) { 33145 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 33146 composeQuestionnaireResponseQuestionnaireResponseItemComponent("item", e); 33147 } 33148 } 33149 33150 protected void composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponent(String name, QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent element) throws IOException { 33151 if (element != null) { 33152 composeElementAttributes(element); 33153 xml.enter(FHIR_NS, name); 33154 composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponentElements(element); 33155 composeElementClose(element); 33156 xml.exit(FHIR_NS, name); 33157 } 33158 } 33159 33160 protected void composeQuestionnaireResponseQuestionnaireResponseItemAnswerComponentElements(QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent element) throws IOException { 33161 composeBackboneElements(element); 33162 if (element.hasValue()) { 33163 composeType("value", element.getValue()); 33164 } if (element.hasItem()) { 33165 for (QuestionnaireResponse.QuestionnaireResponseItemComponent e : element.getItem()) 33166 composeQuestionnaireResponseQuestionnaireResponseItemComponent("item", e); 33167 } 33168 } 33169 33170 protected void composeReferralRequest(String name, ReferralRequest element) throws IOException { 33171 if (element != null) { 33172 composeDomainResourceAttributes(element); 33173 xml.enter(FHIR_NS, name); 33174 composeReferralRequestElements(element); 33175 composeElementClose(element); 33176 xml.exit(FHIR_NS, name); 33177 } 33178 } 33179 33180 protected void composeReferralRequestElements(ReferralRequest element) throws IOException { 33181 composeDomainResourceElements(element); 33182 if (element.hasIdentifier()) { 33183 for (Identifier e : element.getIdentifier()) 33184 composeIdentifier("identifier", e); 33185 } 33186 if (element.hasDefinition()) { 33187 for (Reference e : element.getDefinition()) 33188 composeReference("definition", e); 33189 } 33190 if (element.hasBasedOn()) { 33191 for (Reference e : element.getBasedOn()) 33192 composeReference("basedOn", e); 33193 } 33194 if (element.hasReplaces()) { 33195 for (Reference e : element.getReplaces()) 33196 composeReference("replaces", e); 33197 } 33198 if (element.hasGroupIdentifier()) { 33199 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 33200 } 33201 if (element.hasStatusElement()) 33202 composeEnumeration("status", element.getStatusElement(), new ReferralRequest.ReferralRequestStatusEnumFactory()); 33203 if (element.hasIntentElement()) 33204 composeEnumeration("intent", element.getIntentElement(), new ReferralRequest.ReferralCategoryEnumFactory()); 33205 if (element.hasType()) { 33206 composeCodeableConcept("type", element.getType()); 33207 } 33208 if (element.hasPriorityElement()) 33209 composeEnumeration("priority", element.getPriorityElement(), new ReferralRequest.ReferralPriorityEnumFactory()); 33210 if (element.hasServiceRequested()) { 33211 for (CodeableConcept e : element.getServiceRequested()) 33212 composeCodeableConcept("serviceRequested", e); 33213 } 33214 if (element.hasSubject()) { 33215 composeReference("subject", element.getSubject()); 33216 } 33217 if (element.hasContext()) { 33218 composeReference("context", element.getContext()); 33219 } 33220 if (element.hasOccurrence()) { 33221 composeType("occurrence", element.getOccurrence()); 33222 } if (element.hasAuthoredOnElement()) { 33223 composeDateTime("authoredOn", element.getAuthoredOnElement()); 33224 } 33225 if (element.hasRequester()) { 33226 composeReferralRequestReferralRequestRequesterComponent("requester", element.getRequester()); 33227 } 33228 if (element.hasSpecialty()) { 33229 composeCodeableConcept("specialty", element.getSpecialty()); 33230 } 33231 if (element.hasRecipient()) { 33232 for (Reference e : element.getRecipient()) 33233 composeReference("recipient", e); 33234 } 33235 if (element.hasReasonCode()) { 33236 for (CodeableConcept e : element.getReasonCode()) 33237 composeCodeableConcept("reasonCode", e); 33238 } 33239 if (element.hasReasonReference()) { 33240 for (Reference e : element.getReasonReference()) 33241 composeReference("reasonReference", e); 33242 } 33243 if (element.hasDescriptionElement()) { 33244 composeString("description", element.getDescriptionElement()); 33245 } 33246 if (element.hasSupportingInfo()) { 33247 for (Reference e : element.getSupportingInfo()) 33248 composeReference("supportingInfo", e); 33249 } 33250 if (element.hasNote()) { 33251 for (Annotation e : element.getNote()) 33252 composeAnnotation("note", e); 33253 } 33254 if (element.hasRelevantHistory()) { 33255 for (Reference e : element.getRelevantHistory()) 33256 composeReference("relevantHistory", e); 33257 } 33258 } 33259 33260 protected void composeReferralRequestReferralRequestRequesterComponent(String name, ReferralRequest.ReferralRequestRequesterComponent element) throws IOException { 33261 if (element != null) { 33262 composeElementAttributes(element); 33263 xml.enter(FHIR_NS, name); 33264 composeReferralRequestReferralRequestRequesterComponentElements(element); 33265 composeElementClose(element); 33266 xml.exit(FHIR_NS, name); 33267 } 33268 } 33269 33270 protected void composeReferralRequestReferralRequestRequesterComponentElements(ReferralRequest.ReferralRequestRequesterComponent element) throws IOException { 33271 composeBackboneElements(element); 33272 if (element.hasAgent()) { 33273 composeReference("agent", element.getAgent()); 33274 } 33275 if (element.hasOnBehalfOf()) { 33276 composeReference("onBehalfOf", element.getOnBehalfOf()); 33277 } 33278 } 33279 33280 protected void composeRelatedPerson(String name, RelatedPerson element) throws IOException { 33281 if (element != null) { 33282 composeDomainResourceAttributes(element); 33283 xml.enter(FHIR_NS, name); 33284 composeRelatedPersonElements(element); 33285 composeElementClose(element); 33286 xml.exit(FHIR_NS, name); 33287 } 33288 } 33289 33290 protected void composeRelatedPersonElements(RelatedPerson element) throws IOException { 33291 composeDomainResourceElements(element); 33292 if (element.hasIdentifier()) { 33293 for (Identifier e : element.getIdentifier()) 33294 composeIdentifier("identifier", e); 33295 } 33296 if (element.hasActiveElement()) { 33297 composeBoolean("active", element.getActiveElement()); 33298 } 33299 if (element.hasPatient()) { 33300 composeReference("patient", element.getPatient()); 33301 } 33302 if (element.hasRelationship()) { 33303 composeCodeableConcept("relationship", element.getRelationship()); 33304 } 33305 if (element.hasName()) { 33306 for (HumanName e : element.getName()) 33307 composeHumanName("name", e); 33308 } 33309 if (element.hasTelecom()) { 33310 for (ContactPoint e : element.getTelecom()) 33311 composeContactPoint("telecom", e); 33312 } 33313 if (element.hasGenderElement()) 33314 composeEnumeration("gender", element.getGenderElement(), new Enumerations.AdministrativeGenderEnumFactory()); 33315 if (element.hasBirthDateElement()) { 33316 composeDate("birthDate", element.getBirthDateElement()); 33317 } 33318 if (element.hasAddress()) { 33319 for (Address e : element.getAddress()) 33320 composeAddress("address", e); 33321 } 33322 if (element.hasPhoto()) { 33323 for (Attachment e : element.getPhoto()) 33324 composeAttachment("photo", e); 33325 } 33326 if (element.hasPeriod()) { 33327 composePeriod("period", element.getPeriod()); 33328 } 33329 } 33330 33331 protected void composeRequestGroup(String name, RequestGroup element) throws IOException { 33332 if (element != null) { 33333 composeDomainResourceAttributes(element); 33334 xml.enter(FHIR_NS, name); 33335 composeRequestGroupElements(element); 33336 composeElementClose(element); 33337 xml.exit(FHIR_NS, name); 33338 } 33339 } 33340 33341 protected void composeRequestGroupElements(RequestGroup element) throws IOException { 33342 composeDomainResourceElements(element); 33343 if (element.hasIdentifier()) { 33344 for (Identifier e : element.getIdentifier()) 33345 composeIdentifier("identifier", e); 33346 } 33347 if (element.hasDefinition()) { 33348 for (Reference e : element.getDefinition()) 33349 composeReference("definition", e); 33350 } 33351 if (element.hasBasedOn()) { 33352 for (Reference e : element.getBasedOn()) 33353 composeReference("basedOn", e); 33354 } 33355 if (element.hasReplaces()) { 33356 for (Reference e : element.getReplaces()) 33357 composeReference("replaces", e); 33358 } 33359 if (element.hasGroupIdentifier()) { 33360 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 33361 } 33362 if (element.hasStatusElement()) 33363 composeEnumeration("status", element.getStatusElement(), new RequestGroup.RequestStatusEnumFactory()); 33364 if (element.hasIntentElement()) 33365 composeEnumeration("intent", element.getIntentElement(), new RequestGroup.RequestIntentEnumFactory()); 33366 if (element.hasPriorityElement()) 33367 composeEnumeration("priority", element.getPriorityElement(), new RequestGroup.RequestPriorityEnumFactory()); 33368 if (element.hasSubject()) { 33369 composeReference("subject", element.getSubject()); 33370 } 33371 if (element.hasContext()) { 33372 composeReference("context", element.getContext()); 33373 } 33374 if (element.hasAuthoredOnElement()) { 33375 composeDateTime("authoredOn", element.getAuthoredOnElement()); 33376 } 33377 if (element.hasAuthor()) { 33378 composeReference("author", element.getAuthor()); 33379 } 33380 if (element.hasReason()) { 33381 composeType("reason", element.getReason()); 33382 } if (element.hasNote()) { 33383 for (Annotation e : element.getNote()) 33384 composeAnnotation("note", e); 33385 } 33386 if (element.hasAction()) { 33387 for (RequestGroup.RequestGroupActionComponent e : element.getAction()) 33388 composeRequestGroupRequestGroupActionComponent("action", e); 33389 } 33390 } 33391 33392 protected void composeRequestGroupRequestGroupActionComponent(String name, RequestGroup.RequestGroupActionComponent element) throws IOException { 33393 if (element != null) { 33394 composeElementAttributes(element); 33395 xml.enter(FHIR_NS, name); 33396 composeRequestGroupRequestGroupActionComponentElements(element); 33397 composeElementClose(element); 33398 xml.exit(FHIR_NS, name); 33399 } 33400 } 33401 33402 protected void composeRequestGroupRequestGroupActionComponentElements(RequestGroup.RequestGroupActionComponent element) throws IOException { 33403 composeBackboneElements(element); 33404 if (element.hasLabelElement()) { 33405 composeString("label", element.getLabelElement()); 33406 } 33407 if (element.hasTitleElement()) { 33408 composeString("title", element.getTitleElement()); 33409 } 33410 if (element.hasDescriptionElement()) { 33411 composeString("description", element.getDescriptionElement()); 33412 } 33413 if (element.hasTextEquivalentElement()) { 33414 composeString("textEquivalent", element.getTextEquivalentElement()); 33415 } 33416 if (element.hasCode()) { 33417 for (CodeableConcept e : element.getCode()) 33418 composeCodeableConcept("code", e); 33419 } 33420 if (element.hasDocumentation()) { 33421 for (RelatedArtifact e : element.getDocumentation()) 33422 composeRelatedArtifact("documentation", e); 33423 } 33424 if (element.hasCondition()) { 33425 for (RequestGroup.RequestGroupActionConditionComponent e : element.getCondition()) 33426 composeRequestGroupRequestGroupActionConditionComponent("condition", e); 33427 } 33428 if (element.hasRelatedAction()) { 33429 for (RequestGroup.RequestGroupActionRelatedActionComponent e : element.getRelatedAction()) 33430 composeRequestGroupRequestGroupActionRelatedActionComponent("relatedAction", e); 33431 } 33432 if (element.hasTiming()) { 33433 composeType("timing", element.getTiming()); 33434 } if (element.hasParticipant()) { 33435 for (Reference e : element.getParticipant()) 33436 composeReference("participant", e); 33437 } 33438 if (element.hasType()) { 33439 composeCoding("type", element.getType()); 33440 } 33441 if (element.hasGroupingBehaviorElement()) 33442 composeEnumeration("groupingBehavior", element.getGroupingBehaviorElement(), new RequestGroup.ActionGroupingBehaviorEnumFactory()); 33443 if (element.hasSelectionBehaviorElement()) 33444 composeEnumeration("selectionBehavior", element.getSelectionBehaviorElement(), new RequestGroup.ActionSelectionBehaviorEnumFactory()); 33445 if (element.hasRequiredBehaviorElement()) 33446 composeEnumeration("requiredBehavior", element.getRequiredBehaviorElement(), new RequestGroup.ActionRequiredBehaviorEnumFactory()); 33447 if (element.hasPrecheckBehaviorElement()) 33448 composeEnumeration("precheckBehavior", element.getPrecheckBehaviorElement(), new RequestGroup.ActionPrecheckBehaviorEnumFactory()); 33449 if (element.hasCardinalityBehaviorElement()) 33450 composeEnumeration("cardinalityBehavior", element.getCardinalityBehaviorElement(), new RequestGroup.ActionCardinalityBehaviorEnumFactory()); 33451 if (element.hasResource()) { 33452 composeReference("resource", element.getResource()); 33453 } 33454 if (element.hasAction()) { 33455 for (RequestGroup.RequestGroupActionComponent e : element.getAction()) 33456 composeRequestGroupRequestGroupActionComponent("action", e); 33457 } 33458 } 33459 33460 protected void composeRequestGroupRequestGroupActionConditionComponent(String name, RequestGroup.RequestGroupActionConditionComponent element) throws IOException { 33461 if (element != null) { 33462 composeElementAttributes(element); 33463 xml.enter(FHIR_NS, name); 33464 composeRequestGroupRequestGroupActionConditionComponentElements(element); 33465 composeElementClose(element); 33466 xml.exit(FHIR_NS, name); 33467 } 33468 } 33469 33470 protected void composeRequestGroupRequestGroupActionConditionComponentElements(RequestGroup.RequestGroupActionConditionComponent element) throws IOException { 33471 composeBackboneElements(element); 33472 if (element.hasKindElement()) 33473 composeEnumeration("kind", element.getKindElement(), new RequestGroup.ActionConditionKindEnumFactory()); 33474 if (element.hasDescriptionElement()) { 33475 composeString("description", element.getDescriptionElement()); 33476 } 33477 if (element.hasLanguageElement()) { 33478 composeString("language", element.getLanguageElement()); 33479 } 33480 if (element.hasExpressionElement()) { 33481 composeString("expression", element.getExpressionElement()); 33482 } 33483 } 33484 33485 protected void composeRequestGroupRequestGroupActionRelatedActionComponent(String name, RequestGroup.RequestGroupActionRelatedActionComponent element) throws IOException { 33486 if (element != null) { 33487 composeElementAttributes(element); 33488 xml.enter(FHIR_NS, name); 33489 composeRequestGroupRequestGroupActionRelatedActionComponentElements(element); 33490 composeElementClose(element); 33491 xml.exit(FHIR_NS, name); 33492 } 33493 } 33494 33495 protected void composeRequestGroupRequestGroupActionRelatedActionComponentElements(RequestGroup.RequestGroupActionRelatedActionComponent element) throws IOException { 33496 composeBackboneElements(element); 33497 if (element.hasActionIdElement()) { 33498 composeId("actionId", element.getActionIdElement()); 33499 } 33500 if (element.hasRelationshipElement()) 33501 composeEnumeration("relationship", element.getRelationshipElement(), new RequestGroup.ActionRelationshipTypeEnumFactory()); 33502 if (element.hasOffset()) { 33503 composeType("offset", element.getOffset()); 33504 } } 33505 33506 protected void composeResearchStudy(String name, ResearchStudy element) throws IOException { 33507 if (element != null) { 33508 composeDomainResourceAttributes(element); 33509 xml.enter(FHIR_NS, name); 33510 composeResearchStudyElements(element); 33511 composeElementClose(element); 33512 xml.exit(FHIR_NS, name); 33513 } 33514 } 33515 33516 protected void composeResearchStudyElements(ResearchStudy element) throws IOException { 33517 composeDomainResourceElements(element); 33518 if (element.hasIdentifier()) { 33519 for (Identifier e : element.getIdentifier()) 33520 composeIdentifier("identifier", e); 33521 } 33522 if (element.hasTitleElement()) { 33523 composeString("title", element.getTitleElement()); 33524 } 33525 if (element.hasProtocol()) { 33526 for (Reference e : element.getProtocol()) 33527 composeReference("protocol", e); 33528 } 33529 if (element.hasPartOf()) { 33530 for (Reference e : element.getPartOf()) 33531 composeReference("partOf", e); 33532 } 33533 if (element.hasStatusElement()) 33534 composeEnumeration("status", element.getStatusElement(), new ResearchStudy.ResearchStudyStatusEnumFactory()); 33535 if (element.hasCategory()) { 33536 for (CodeableConcept e : element.getCategory()) 33537 composeCodeableConcept("category", e); 33538 } 33539 if (element.hasFocus()) { 33540 for (CodeableConcept e : element.getFocus()) 33541 composeCodeableConcept("focus", e); 33542 } 33543 if (element.hasContact()) { 33544 for (ContactDetail e : element.getContact()) 33545 composeContactDetail("contact", e); 33546 } 33547 if (element.hasRelatedArtifact()) { 33548 for (RelatedArtifact e : element.getRelatedArtifact()) 33549 composeRelatedArtifact("relatedArtifact", e); 33550 } 33551 if (element.hasKeyword()) { 33552 for (CodeableConcept e : element.getKeyword()) 33553 composeCodeableConcept("keyword", e); 33554 } 33555 if (element.hasJurisdiction()) { 33556 for (CodeableConcept e : element.getJurisdiction()) 33557 composeCodeableConcept("jurisdiction", e); 33558 } 33559 if (element.hasDescriptionElement()) { 33560 composeMarkdown("description", element.getDescriptionElement()); 33561 } 33562 if (element.hasEnrollment()) { 33563 for (Reference e : element.getEnrollment()) 33564 composeReference("enrollment", e); 33565 } 33566 if (element.hasPeriod()) { 33567 composePeriod("period", element.getPeriod()); 33568 } 33569 if (element.hasSponsor()) { 33570 composeReference("sponsor", element.getSponsor()); 33571 } 33572 if (element.hasPrincipalInvestigator()) { 33573 composeReference("principalInvestigator", element.getPrincipalInvestigator()); 33574 } 33575 if (element.hasSite()) { 33576 for (Reference e : element.getSite()) 33577 composeReference("site", e); 33578 } 33579 if (element.hasReasonStopped()) { 33580 composeCodeableConcept("reasonStopped", element.getReasonStopped()); 33581 } 33582 if (element.hasNote()) { 33583 for (Annotation e : element.getNote()) 33584 composeAnnotation("note", e); 33585 } 33586 if (element.hasArm()) { 33587 for (ResearchStudy.ResearchStudyArmComponent e : element.getArm()) 33588 composeResearchStudyResearchStudyArmComponent("arm", e); 33589 } 33590 } 33591 33592 protected void composeResearchStudyResearchStudyArmComponent(String name, ResearchStudy.ResearchStudyArmComponent element) throws IOException { 33593 if (element != null) { 33594 composeElementAttributes(element); 33595 xml.enter(FHIR_NS, name); 33596 composeResearchStudyResearchStudyArmComponentElements(element); 33597 composeElementClose(element); 33598 xml.exit(FHIR_NS, name); 33599 } 33600 } 33601 33602 protected void composeResearchStudyResearchStudyArmComponentElements(ResearchStudy.ResearchStudyArmComponent element) throws IOException { 33603 composeBackboneElements(element); 33604 if (element.hasNameElement()) { 33605 composeString("name", element.getNameElement()); 33606 } 33607 if (element.hasCode()) { 33608 composeCodeableConcept("code", element.getCode()); 33609 } 33610 if (element.hasDescriptionElement()) { 33611 composeString("description", element.getDescriptionElement()); 33612 } 33613 } 33614 33615 protected void composeResearchSubject(String name, ResearchSubject element) throws IOException { 33616 if (element != null) { 33617 composeDomainResourceAttributes(element); 33618 xml.enter(FHIR_NS, name); 33619 composeResearchSubjectElements(element); 33620 composeElementClose(element); 33621 xml.exit(FHIR_NS, name); 33622 } 33623 } 33624 33625 protected void composeResearchSubjectElements(ResearchSubject element) throws IOException { 33626 composeDomainResourceElements(element); 33627 if (element.hasIdentifier()) { 33628 composeIdentifier("identifier", element.getIdentifier()); 33629 } 33630 if (element.hasStatusElement()) 33631 composeEnumeration("status", element.getStatusElement(), new ResearchSubject.ResearchSubjectStatusEnumFactory()); 33632 if (element.hasPeriod()) { 33633 composePeriod("period", element.getPeriod()); 33634 } 33635 if (element.hasStudy()) { 33636 composeReference("study", element.getStudy()); 33637 } 33638 if (element.hasIndividual()) { 33639 composeReference("individual", element.getIndividual()); 33640 } 33641 if (element.hasAssignedArmElement()) { 33642 composeString("assignedArm", element.getAssignedArmElement()); 33643 } 33644 if (element.hasActualArmElement()) { 33645 composeString("actualArm", element.getActualArmElement()); 33646 } 33647 if (element.hasConsent()) { 33648 composeReference("consent", element.getConsent()); 33649 } 33650 } 33651 33652 protected void composeRiskAssessment(String name, RiskAssessment element) throws IOException { 33653 if (element != null) { 33654 composeDomainResourceAttributes(element); 33655 xml.enter(FHIR_NS, name); 33656 composeRiskAssessmentElements(element); 33657 composeElementClose(element); 33658 xml.exit(FHIR_NS, name); 33659 } 33660 } 33661 33662 protected void composeRiskAssessmentElements(RiskAssessment element) throws IOException { 33663 composeDomainResourceElements(element); 33664 if (element.hasIdentifier()) { 33665 composeIdentifier("identifier", element.getIdentifier()); 33666 } 33667 if (element.hasBasedOn()) { 33668 composeReference("basedOn", element.getBasedOn()); 33669 } 33670 if (element.hasParent()) { 33671 composeReference("parent", element.getParent()); 33672 } 33673 if (element.hasStatusElement()) 33674 composeEnumeration("status", element.getStatusElement(), new RiskAssessment.RiskAssessmentStatusEnumFactory()); 33675 if (element.hasMethod()) { 33676 composeCodeableConcept("method", element.getMethod()); 33677 } 33678 if (element.hasCode()) { 33679 composeCodeableConcept("code", element.getCode()); 33680 } 33681 if (element.hasSubject()) { 33682 composeReference("subject", element.getSubject()); 33683 } 33684 if (element.hasContext()) { 33685 composeReference("context", element.getContext()); 33686 } 33687 if (element.hasOccurrence()) { 33688 composeType("occurrence", element.getOccurrence()); 33689 } if (element.hasCondition()) { 33690 composeReference("condition", element.getCondition()); 33691 } 33692 if (element.hasPerformer()) { 33693 composeReference("performer", element.getPerformer()); 33694 } 33695 if (element.hasReason()) { 33696 composeType("reason", element.getReason()); 33697 } if (element.hasBasis()) { 33698 for (Reference e : element.getBasis()) 33699 composeReference("basis", e); 33700 } 33701 if (element.hasPrediction()) { 33702 for (RiskAssessment.RiskAssessmentPredictionComponent e : element.getPrediction()) 33703 composeRiskAssessmentRiskAssessmentPredictionComponent("prediction", e); 33704 } 33705 if (element.hasMitigationElement()) { 33706 composeString("mitigation", element.getMitigationElement()); 33707 } 33708 if (element.hasCommentElement()) { 33709 composeString("comment", element.getCommentElement()); 33710 } 33711 } 33712 33713 protected void composeRiskAssessmentRiskAssessmentPredictionComponent(String name, RiskAssessment.RiskAssessmentPredictionComponent element) throws IOException { 33714 if (element != null) { 33715 composeElementAttributes(element); 33716 xml.enter(FHIR_NS, name); 33717 composeRiskAssessmentRiskAssessmentPredictionComponentElements(element); 33718 composeElementClose(element); 33719 xml.exit(FHIR_NS, name); 33720 } 33721 } 33722 33723 protected void composeRiskAssessmentRiskAssessmentPredictionComponentElements(RiskAssessment.RiskAssessmentPredictionComponent element) throws IOException { 33724 composeBackboneElements(element); 33725 if (element.hasOutcome()) { 33726 composeCodeableConcept("outcome", element.getOutcome()); 33727 } 33728 if (element.hasProbability()) { 33729 composeType("probability", element.getProbability()); 33730 } if (element.hasQualitativeRisk()) { 33731 composeCodeableConcept("qualitativeRisk", element.getQualitativeRisk()); 33732 } 33733 if (element.hasRelativeRiskElement()) { 33734 composeDecimal("relativeRisk", element.getRelativeRiskElement()); 33735 } 33736 if (element.hasWhen()) { 33737 composeType("when", element.getWhen()); 33738 } if (element.hasRationaleElement()) { 33739 composeString("rationale", element.getRationaleElement()); 33740 } 33741 } 33742 33743 protected void composeSchedule(String name, Schedule element) throws IOException { 33744 if (element != null) { 33745 composeDomainResourceAttributes(element); 33746 xml.enter(FHIR_NS, name); 33747 composeScheduleElements(element); 33748 composeElementClose(element); 33749 xml.exit(FHIR_NS, name); 33750 } 33751 } 33752 33753 protected void composeScheduleElements(Schedule element) throws IOException { 33754 composeDomainResourceElements(element); 33755 if (element.hasIdentifier()) { 33756 for (Identifier e : element.getIdentifier()) 33757 composeIdentifier("identifier", e); 33758 } 33759 if (element.hasActiveElement()) { 33760 composeBoolean("active", element.getActiveElement()); 33761 } 33762 if (element.hasServiceCategory()) { 33763 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 33764 } 33765 if (element.hasServiceType()) { 33766 for (CodeableConcept e : element.getServiceType()) 33767 composeCodeableConcept("serviceType", e); 33768 } 33769 if (element.hasSpecialty()) { 33770 for (CodeableConcept e : element.getSpecialty()) 33771 composeCodeableConcept("specialty", e); 33772 } 33773 if (element.hasActor()) { 33774 for (Reference e : element.getActor()) 33775 composeReference("actor", e); 33776 } 33777 if (element.hasPlanningHorizon()) { 33778 composePeriod("planningHorizon", element.getPlanningHorizon()); 33779 } 33780 if (element.hasCommentElement()) { 33781 composeString("comment", element.getCommentElement()); 33782 } 33783 } 33784 33785 protected void composeSearchParameter(String name, SearchParameter element) throws IOException { 33786 if (element != null) { 33787 composeDomainResourceAttributes(element); 33788 xml.enter(FHIR_NS, name); 33789 composeSearchParameterElements(element); 33790 composeElementClose(element); 33791 xml.exit(FHIR_NS, name); 33792 } 33793 } 33794 33795 protected void composeSearchParameterElements(SearchParameter element) throws IOException { 33796 composeDomainResourceElements(element); 33797 if (element.hasUrlElement()) { 33798 composeUri("url", element.getUrlElement()); 33799 } 33800 if (element.hasVersionElement()) { 33801 composeString("version", element.getVersionElement()); 33802 } 33803 if (element.hasNameElement()) { 33804 composeString("name", element.getNameElement()); 33805 } 33806 if (element.hasStatusElement()) 33807 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 33808 if (element.hasExperimentalElement()) { 33809 composeBoolean("experimental", element.getExperimentalElement()); 33810 } 33811 if (element.hasDateElement()) { 33812 composeDateTime("date", element.getDateElement()); 33813 } 33814 if (element.hasPublisherElement()) { 33815 composeString("publisher", element.getPublisherElement()); 33816 } 33817 if (element.hasContact()) { 33818 for (ContactDetail e : element.getContact()) 33819 composeContactDetail("contact", e); 33820 } 33821 if (element.hasUseContext()) { 33822 for (UsageContext e : element.getUseContext()) 33823 composeUsageContext("useContext", e); 33824 } 33825 if (element.hasJurisdiction()) { 33826 for (CodeableConcept e : element.getJurisdiction()) 33827 composeCodeableConcept("jurisdiction", e); 33828 } 33829 if (element.hasPurposeElement()) { 33830 composeMarkdown("purpose", element.getPurposeElement()); 33831 } 33832 if (element.hasCodeElement()) { 33833 composeCode("code", element.getCodeElement()); 33834 } 33835 if (element.hasBase()) { 33836 for (CodeType e : element.getBase()) 33837 composeCode("base", e); 33838 } 33839 if (element.hasTypeElement()) 33840 composeEnumeration("type", element.getTypeElement(), new Enumerations.SearchParamTypeEnumFactory()); 33841 if (element.hasDerivedFromElement()) { 33842 composeUri("derivedFrom", element.getDerivedFromElement()); 33843 } 33844 if (element.hasDescriptionElement()) { 33845 composeMarkdown("description", element.getDescriptionElement()); 33846 } 33847 if (element.hasExpressionElement()) { 33848 composeString("expression", element.getExpressionElement()); 33849 } 33850 if (element.hasXpathElement()) { 33851 composeString("xpath", element.getXpathElement()); 33852 } 33853 if (element.hasXpathUsageElement()) 33854 composeEnumeration("xpathUsage", element.getXpathUsageElement(), new SearchParameter.XPathUsageTypeEnumFactory()); 33855 if (element.hasTarget()) { 33856 for (CodeType e : element.getTarget()) 33857 composeCode("target", e); 33858 } 33859 if (element.hasComparator()) 33860 for (Enumeration<SearchParameter.SearchComparator> e : element.getComparator()) 33861 composeEnumeration("comparator", e, new SearchParameter.SearchComparatorEnumFactory()); 33862 if (element.hasModifier()) 33863 for (Enumeration<SearchParameter.SearchModifierCode> e : element.getModifier()) 33864 composeEnumeration("modifier", e, new SearchParameter.SearchModifierCodeEnumFactory()); 33865 if (element.hasChain()) { 33866 for (StringType e : element.getChain()) 33867 composeString("chain", e); 33868 } 33869 if (element.hasComponent()) { 33870 for (SearchParameter.SearchParameterComponentComponent e : element.getComponent()) 33871 composeSearchParameterSearchParameterComponentComponent("component", e); 33872 } 33873 } 33874 33875 protected void composeSearchParameterSearchParameterComponentComponent(String name, SearchParameter.SearchParameterComponentComponent element) throws IOException { 33876 if (element != null) { 33877 composeElementAttributes(element); 33878 xml.enter(FHIR_NS, name); 33879 composeSearchParameterSearchParameterComponentComponentElements(element); 33880 composeElementClose(element); 33881 xml.exit(FHIR_NS, name); 33882 } 33883 } 33884 33885 protected void composeSearchParameterSearchParameterComponentComponentElements(SearchParameter.SearchParameterComponentComponent element) throws IOException { 33886 composeBackboneElements(element); 33887 if (element.hasDefinition()) { 33888 composeReference("definition", element.getDefinition()); 33889 } 33890 if (element.hasExpressionElement()) { 33891 composeString("expression", element.getExpressionElement()); 33892 } 33893 } 33894 33895 protected void composeSequence(String name, Sequence element) throws IOException { 33896 if (element != null) { 33897 composeDomainResourceAttributes(element); 33898 xml.enter(FHIR_NS, name); 33899 composeSequenceElements(element); 33900 composeElementClose(element); 33901 xml.exit(FHIR_NS, name); 33902 } 33903 } 33904 33905 protected void composeSequenceElements(Sequence element) throws IOException { 33906 composeDomainResourceElements(element); 33907 if (element.hasIdentifier()) { 33908 for (Identifier e : element.getIdentifier()) 33909 composeIdentifier("identifier", e); 33910 } 33911 if (element.hasTypeElement()) 33912 composeEnumeration("type", element.getTypeElement(), new Sequence.SequenceTypeEnumFactory()); 33913 if (element.hasCoordinateSystemElement()) { 33914 composeInteger("coordinateSystem", element.getCoordinateSystemElement()); 33915 } 33916 if (element.hasPatient()) { 33917 composeReference("patient", element.getPatient()); 33918 } 33919 if (element.hasSpecimen()) { 33920 composeReference("specimen", element.getSpecimen()); 33921 } 33922 if (element.hasDevice()) { 33923 composeReference("device", element.getDevice()); 33924 } 33925 if (element.hasPerformer()) { 33926 composeReference("performer", element.getPerformer()); 33927 } 33928 if (element.hasQuantity()) { 33929 composeQuantity("quantity", element.getQuantity()); 33930 } 33931 if (element.hasReferenceSeq()) { 33932 composeSequenceSequenceReferenceSeqComponent("referenceSeq", element.getReferenceSeq()); 33933 } 33934 if (element.hasVariant()) { 33935 for (Sequence.SequenceVariantComponent e : element.getVariant()) 33936 composeSequenceSequenceVariantComponent("variant", e); 33937 } 33938 if (element.hasObservedSeqElement()) { 33939 composeString("observedSeq", element.getObservedSeqElement()); 33940 } 33941 if (element.hasQuality()) { 33942 for (Sequence.SequenceQualityComponent e : element.getQuality()) 33943 composeSequenceSequenceQualityComponent("quality", e); 33944 } 33945 if (element.hasReadCoverageElement()) { 33946 composeInteger("readCoverage", element.getReadCoverageElement()); 33947 } 33948 if (element.hasRepository()) { 33949 for (Sequence.SequenceRepositoryComponent e : element.getRepository()) 33950 composeSequenceSequenceRepositoryComponent("repository", e); 33951 } 33952 if (element.hasPointer()) { 33953 for (Reference e : element.getPointer()) 33954 composeReference("pointer", e); 33955 } 33956 } 33957 33958 protected void composeSequenceSequenceReferenceSeqComponent(String name, Sequence.SequenceReferenceSeqComponent element) throws IOException { 33959 if (element != null) { 33960 composeElementAttributes(element); 33961 xml.enter(FHIR_NS, name); 33962 composeSequenceSequenceReferenceSeqComponentElements(element); 33963 composeElementClose(element); 33964 xml.exit(FHIR_NS, name); 33965 } 33966 } 33967 33968 protected void composeSequenceSequenceReferenceSeqComponentElements(Sequence.SequenceReferenceSeqComponent element) throws IOException { 33969 composeBackboneElements(element); 33970 if (element.hasChromosome()) { 33971 composeCodeableConcept("chromosome", element.getChromosome()); 33972 } 33973 if (element.hasGenomeBuildElement()) { 33974 composeString("genomeBuild", element.getGenomeBuildElement()); 33975 } 33976 if (element.hasReferenceSeqId()) { 33977 composeCodeableConcept("referenceSeqId", element.getReferenceSeqId()); 33978 } 33979 if (element.hasReferenceSeqPointer()) { 33980 composeReference("referenceSeqPointer", element.getReferenceSeqPointer()); 33981 } 33982 if (element.hasReferenceSeqStringElement()) { 33983 composeString("referenceSeqString", element.getReferenceSeqStringElement()); 33984 } 33985 if (element.hasStrandElement()) { 33986 composeInteger("strand", element.getStrandElement()); 33987 } 33988 if (element.hasWindowStartElement()) { 33989 composeInteger("windowStart", element.getWindowStartElement()); 33990 } 33991 if (element.hasWindowEndElement()) { 33992 composeInteger("windowEnd", element.getWindowEndElement()); 33993 } 33994 } 33995 33996 protected void composeSequenceSequenceVariantComponent(String name, Sequence.SequenceVariantComponent element) throws IOException { 33997 if (element != null) { 33998 composeElementAttributes(element); 33999 xml.enter(FHIR_NS, name); 34000 composeSequenceSequenceVariantComponentElements(element); 34001 composeElementClose(element); 34002 xml.exit(FHIR_NS, name); 34003 } 34004 } 34005 34006 protected void composeSequenceSequenceVariantComponentElements(Sequence.SequenceVariantComponent element) throws IOException { 34007 composeBackboneElements(element); 34008 if (element.hasStartElement()) { 34009 composeInteger("start", element.getStartElement()); 34010 } 34011 if (element.hasEndElement()) { 34012 composeInteger("end", element.getEndElement()); 34013 } 34014 if (element.hasObservedAlleleElement()) { 34015 composeString("observedAllele", element.getObservedAlleleElement()); 34016 } 34017 if (element.hasReferenceAlleleElement()) { 34018 composeString("referenceAllele", element.getReferenceAlleleElement()); 34019 } 34020 if (element.hasCigarElement()) { 34021 composeString("cigar", element.getCigarElement()); 34022 } 34023 if (element.hasVariantPointer()) { 34024 composeReference("variantPointer", element.getVariantPointer()); 34025 } 34026 } 34027 34028 protected void composeSequenceSequenceQualityComponent(String name, Sequence.SequenceQualityComponent element) throws IOException { 34029 if (element != null) { 34030 composeElementAttributes(element); 34031 xml.enter(FHIR_NS, name); 34032 composeSequenceSequenceQualityComponentElements(element); 34033 composeElementClose(element); 34034 xml.exit(FHIR_NS, name); 34035 } 34036 } 34037 34038 protected void composeSequenceSequenceQualityComponentElements(Sequence.SequenceQualityComponent element) throws IOException { 34039 composeBackboneElements(element); 34040 if (element.hasTypeElement()) 34041 composeEnumeration("type", element.getTypeElement(), new Sequence.QualityTypeEnumFactory()); 34042 if (element.hasStandardSequence()) { 34043 composeCodeableConcept("standardSequence", element.getStandardSequence()); 34044 } 34045 if (element.hasStartElement()) { 34046 composeInteger("start", element.getStartElement()); 34047 } 34048 if (element.hasEndElement()) { 34049 composeInteger("end", element.getEndElement()); 34050 } 34051 if (element.hasScore()) { 34052 composeQuantity("score", element.getScore()); 34053 } 34054 if (element.hasMethod()) { 34055 composeCodeableConcept("method", element.getMethod()); 34056 } 34057 if (element.hasTruthTPElement()) { 34058 composeDecimal("truthTP", element.getTruthTPElement()); 34059 } 34060 if (element.hasQueryTPElement()) { 34061 composeDecimal("queryTP", element.getQueryTPElement()); 34062 } 34063 if (element.hasTruthFNElement()) { 34064 composeDecimal("truthFN", element.getTruthFNElement()); 34065 } 34066 if (element.hasQueryFPElement()) { 34067 composeDecimal("queryFP", element.getQueryFPElement()); 34068 } 34069 if (element.hasGtFPElement()) { 34070 composeDecimal("gtFP", element.getGtFPElement()); 34071 } 34072 if (element.hasPrecisionElement()) { 34073 composeDecimal("precision", element.getPrecisionElement()); 34074 } 34075 if (element.hasRecallElement()) { 34076 composeDecimal("recall", element.getRecallElement()); 34077 } 34078 if (element.hasFScoreElement()) { 34079 composeDecimal("fScore", element.getFScoreElement()); 34080 } 34081 } 34082 34083 protected void composeSequenceSequenceRepositoryComponent(String name, Sequence.SequenceRepositoryComponent element) throws IOException { 34084 if (element != null) { 34085 composeElementAttributes(element); 34086 xml.enter(FHIR_NS, name); 34087 composeSequenceSequenceRepositoryComponentElements(element); 34088 composeElementClose(element); 34089 xml.exit(FHIR_NS, name); 34090 } 34091 } 34092 34093 protected void composeSequenceSequenceRepositoryComponentElements(Sequence.SequenceRepositoryComponent element) throws IOException { 34094 composeBackboneElements(element); 34095 if (element.hasTypeElement()) 34096 composeEnumeration("type", element.getTypeElement(), new Sequence.RepositoryTypeEnumFactory()); 34097 if (element.hasUrlElement()) { 34098 composeUri("url", element.getUrlElement()); 34099 } 34100 if (element.hasNameElement()) { 34101 composeString("name", element.getNameElement()); 34102 } 34103 if (element.hasDatasetIdElement()) { 34104 composeString("datasetId", element.getDatasetIdElement()); 34105 } 34106 if (element.hasVariantsetIdElement()) { 34107 composeString("variantsetId", element.getVariantsetIdElement()); 34108 } 34109 if (element.hasReadsetIdElement()) { 34110 composeString("readsetId", element.getReadsetIdElement()); 34111 } 34112 } 34113 34114 protected void composeServiceDefinition(String name, ServiceDefinition element) throws IOException { 34115 if (element != null) { 34116 composeDomainResourceAttributes(element); 34117 xml.enter(FHIR_NS, name); 34118 composeServiceDefinitionElements(element); 34119 composeElementClose(element); 34120 xml.exit(FHIR_NS, name); 34121 } 34122 } 34123 34124 protected void composeServiceDefinitionElements(ServiceDefinition element) throws IOException { 34125 composeDomainResourceElements(element); 34126 if (element.hasUrlElement()) { 34127 composeUri("url", element.getUrlElement()); 34128 } 34129 if (element.hasIdentifier()) { 34130 for (Identifier e : element.getIdentifier()) 34131 composeIdentifier("identifier", e); 34132 } 34133 if (element.hasVersionElement()) { 34134 composeString("version", element.getVersionElement()); 34135 } 34136 if (element.hasNameElement()) { 34137 composeString("name", element.getNameElement()); 34138 } 34139 if (element.hasTitleElement()) { 34140 composeString("title", element.getTitleElement()); 34141 } 34142 if (element.hasStatusElement()) 34143 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 34144 if (element.hasExperimentalElement()) { 34145 composeBoolean("experimental", element.getExperimentalElement()); 34146 } 34147 if (element.hasDateElement()) { 34148 composeDateTime("date", element.getDateElement()); 34149 } 34150 if (element.hasPublisherElement()) { 34151 composeString("publisher", element.getPublisherElement()); 34152 } 34153 if (element.hasDescriptionElement()) { 34154 composeMarkdown("description", element.getDescriptionElement()); 34155 } 34156 if (element.hasPurposeElement()) { 34157 composeMarkdown("purpose", element.getPurposeElement()); 34158 } 34159 if (element.hasUsageElement()) { 34160 composeString("usage", element.getUsageElement()); 34161 } 34162 if (element.hasApprovalDateElement()) { 34163 composeDate("approvalDate", element.getApprovalDateElement()); 34164 } 34165 if (element.hasLastReviewDateElement()) { 34166 composeDate("lastReviewDate", element.getLastReviewDateElement()); 34167 } 34168 if (element.hasEffectivePeriod()) { 34169 composePeriod("effectivePeriod", element.getEffectivePeriod()); 34170 } 34171 if (element.hasUseContext()) { 34172 for (UsageContext e : element.getUseContext()) 34173 composeUsageContext("useContext", e); 34174 } 34175 if (element.hasJurisdiction()) { 34176 for (CodeableConcept e : element.getJurisdiction()) 34177 composeCodeableConcept("jurisdiction", e); 34178 } 34179 if (element.hasTopic()) { 34180 for (CodeableConcept e : element.getTopic()) 34181 composeCodeableConcept("topic", e); 34182 } 34183 if (element.hasContributor()) { 34184 for (Contributor e : element.getContributor()) 34185 composeContributor("contributor", e); 34186 } 34187 if (element.hasContact()) { 34188 for (ContactDetail e : element.getContact()) 34189 composeContactDetail("contact", e); 34190 } 34191 if (element.hasCopyrightElement()) { 34192 composeMarkdown("copyright", element.getCopyrightElement()); 34193 } 34194 if (element.hasRelatedArtifact()) { 34195 for (RelatedArtifact e : element.getRelatedArtifact()) 34196 composeRelatedArtifact("relatedArtifact", e); 34197 } 34198 if (element.hasTrigger()) { 34199 for (TriggerDefinition e : element.getTrigger()) 34200 composeTriggerDefinition("trigger", e); 34201 } 34202 if (element.hasDataRequirement()) { 34203 for (DataRequirement e : element.getDataRequirement()) 34204 composeDataRequirement("dataRequirement", e); 34205 } 34206 if (element.hasOperationDefinition()) { 34207 composeReference("operationDefinition", element.getOperationDefinition()); 34208 } 34209 } 34210 34211 protected void composeSlot(String name, Slot element) throws IOException { 34212 if (element != null) { 34213 composeDomainResourceAttributes(element); 34214 xml.enter(FHIR_NS, name); 34215 composeSlotElements(element); 34216 composeElementClose(element); 34217 xml.exit(FHIR_NS, name); 34218 } 34219 } 34220 34221 protected void composeSlotElements(Slot element) throws IOException { 34222 composeDomainResourceElements(element); 34223 if (element.hasIdentifier()) { 34224 for (Identifier e : element.getIdentifier()) 34225 composeIdentifier("identifier", e); 34226 } 34227 if (element.hasServiceCategory()) { 34228 composeCodeableConcept("serviceCategory", element.getServiceCategory()); 34229 } 34230 if (element.hasServiceType()) { 34231 for (CodeableConcept e : element.getServiceType()) 34232 composeCodeableConcept("serviceType", e); 34233 } 34234 if (element.hasSpecialty()) { 34235 for (CodeableConcept e : element.getSpecialty()) 34236 composeCodeableConcept("specialty", e); 34237 } 34238 if (element.hasAppointmentType()) { 34239 composeCodeableConcept("appointmentType", element.getAppointmentType()); 34240 } 34241 if (element.hasSchedule()) { 34242 composeReference("schedule", element.getSchedule()); 34243 } 34244 if (element.hasStatusElement()) 34245 composeEnumeration("status", element.getStatusElement(), new Slot.SlotStatusEnumFactory()); 34246 if (element.hasStartElement()) { 34247 composeInstant("start", element.getStartElement()); 34248 } 34249 if (element.hasEndElement()) { 34250 composeInstant("end", element.getEndElement()); 34251 } 34252 if (element.hasOverbookedElement()) { 34253 composeBoolean("overbooked", element.getOverbookedElement()); 34254 } 34255 if (element.hasCommentElement()) { 34256 composeString("comment", element.getCommentElement()); 34257 } 34258 } 34259 34260 protected void composeSpecimen(String name, Specimen element) throws IOException { 34261 if (element != null) { 34262 composeDomainResourceAttributes(element); 34263 xml.enter(FHIR_NS, name); 34264 composeSpecimenElements(element); 34265 composeElementClose(element); 34266 xml.exit(FHIR_NS, name); 34267 } 34268 } 34269 34270 protected void composeSpecimenElements(Specimen element) throws IOException { 34271 composeDomainResourceElements(element); 34272 if (element.hasIdentifier()) { 34273 for (Identifier e : element.getIdentifier()) 34274 composeIdentifier("identifier", e); 34275 } 34276 if (element.hasAccessionIdentifier()) { 34277 composeIdentifier("accessionIdentifier", element.getAccessionIdentifier()); 34278 } 34279 if (element.hasStatusElement()) 34280 composeEnumeration("status", element.getStatusElement(), new Specimen.SpecimenStatusEnumFactory()); 34281 if (element.hasType()) { 34282 composeCodeableConcept("type", element.getType()); 34283 } 34284 if (element.hasSubject()) { 34285 composeReference("subject", element.getSubject()); 34286 } 34287 if (element.hasReceivedTimeElement()) { 34288 composeDateTime("receivedTime", element.getReceivedTimeElement()); 34289 } 34290 if (element.hasParent()) { 34291 for (Reference e : element.getParent()) 34292 composeReference("parent", e); 34293 } 34294 if (element.hasRequest()) { 34295 for (Reference e : element.getRequest()) 34296 composeReference("request", e); 34297 } 34298 if (element.hasCollection()) { 34299 composeSpecimenSpecimenCollectionComponent("collection", element.getCollection()); 34300 } 34301 if (element.hasProcessing()) { 34302 for (Specimen.SpecimenProcessingComponent e : element.getProcessing()) 34303 composeSpecimenSpecimenProcessingComponent("processing", e); 34304 } 34305 if (element.hasContainer()) { 34306 for (Specimen.SpecimenContainerComponent e : element.getContainer()) 34307 composeSpecimenSpecimenContainerComponent("container", e); 34308 } 34309 if (element.hasNote()) { 34310 for (Annotation e : element.getNote()) 34311 composeAnnotation("note", e); 34312 } 34313 } 34314 34315 protected void composeSpecimenSpecimenCollectionComponent(String name, Specimen.SpecimenCollectionComponent element) throws IOException { 34316 if (element != null) { 34317 composeElementAttributes(element); 34318 xml.enter(FHIR_NS, name); 34319 composeSpecimenSpecimenCollectionComponentElements(element); 34320 composeElementClose(element); 34321 xml.exit(FHIR_NS, name); 34322 } 34323 } 34324 34325 protected void composeSpecimenSpecimenCollectionComponentElements(Specimen.SpecimenCollectionComponent element) throws IOException { 34326 composeBackboneElements(element); 34327 if (element.hasCollector()) { 34328 composeReference("collector", element.getCollector()); 34329 } 34330 if (element.hasCollected()) { 34331 composeType("collected", element.getCollected()); 34332 } if (element.hasQuantity()) { 34333 composeSimpleQuantity("quantity", element.getQuantity()); 34334 } 34335 if (element.hasMethod()) { 34336 composeCodeableConcept("method", element.getMethod()); 34337 } 34338 if (element.hasBodySite()) { 34339 composeCodeableConcept("bodySite", element.getBodySite()); 34340 } 34341 } 34342 34343 protected void composeSpecimenSpecimenProcessingComponent(String name, Specimen.SpecimenProcessingComponent element) throws IOException { 34344 if (element != null) { 34345 composeElementAttributes(element); 34346 xml.enter(FHIR_NS, name); 34347 composeSpecimenSpecimenProcessingComponentElements(element); 34348 composeElementClose(element); 34349 xml.exit(FHIR_NS, name); 34350 } 34351 } 34352 34353 protected void composeSpecimenSpecimenProcessingComponentElements(Specimen.SpecimenProcessingComponent element) throws IOException { 34354 composeBackboneElements(element); 34355 if (element.hasDescriptionElement()) { 34356 composeString("description", element.getDescriptionElement()); 34357 } 34358 if (element.hasProcedure()) { 34359 composeCodeableConcept("procedure", element.getProcedure()); 34360 } 34361 if (element.hasAdditive()) { 34362 for (Reference e : element.getAdditive()) 34363 composeReference("additive", e); 34364 } 34365 if (element.hasTime()) { 34366 composeType("time", element.getTime()); 34367 } } 34368 34369 protected void composeSpecimenSpecimenContainerComponent(String name, Specimen.SpecimenContainerComponent element) throws IOException { 34370 if (element != null) { 34371 composeElementAttributes(element); 34372 xml.enter(FHIR_NS, name); 34373 composeSpecimenSpecimenContainerComponentElements(element); 34374 composeElementClose(element); 34375 xml.exit(FHIR_NS, name); 34376 } 34377 } 34378 34379 protected void composeSpecimenSpecimenContainerComponentElements(Specimen.SpecimenContainerComponent element) throws IOException { 34380 composeBackboneElements(element); 34381 if (element.hasIdentifier()) { 34382 for (Identifier e : element.getIdentifier()) 34383 composeIdentifier("identifier", e); 34384 } 34385 if (element.hasDescriptionElement()) { 34386 composeString("description", element.getDescriptionElement()); 34387 } 34388 if (element.hasType()) { 34389 composeCodeableConcept("type", element.getType()); 34390 } 34391 if (element.hasCapacity()) { 34392 composeSimpleQuantity("capacity", element.getCapacity()); 34393 } 34394 if (element.hasSpecimenQuantity()) { 34395 composeSimpleQuantity("specimenQuantity", element.getSpecimenQuantity()); 34396 } 34397 if (element.hasAdditive()) { 34398 composeType("additive", element.getAdditive()); 34399 } } 34400 34401 protected void composeStructureDefinition(String name, StructureDefinition element) throws IOException { 34402 if (element != null) { 34403 composeDomainResourceAttributes(element); 34404 xml.enter(FHIR_NS, name); 34405 composeStructureDefinitionElements(element); 34406 composeElementClose(element); 34407 xml.exit(FHIR_NS, name); 34408 } 34409 } 34410 34411 protected void composeStructureDefinitionElements(StructureDefinition element) throws IOException { 34412 composeDomainResourceElements(element); 34413 if (element.hasUrlElement()) { 34414 composeUri("url", element.getUrlElement()); 34415 } 34416 if (element.hasIdentifier()) { 34417 for (Identifier e : element.getIdentifier()) 34418 composeIdentifier("identifier", e); 34419 } 34420 if (element.hasVersionElement()) { 34421 composeString("version", element.getVersionElement()); 34422 } 34423 if (element.hasNameElement()) { 34424 composeString("name", element.getNameElement()); 34425 } 34426 if (element.hasTitleElement()) { 34427 composeString("title", element.getTitleElement()); 34428 } 34429 if (element.hasStatusElement()) 34430 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 34431 if (element.hasExperimentalElement()) { 34432 composeBoolean("experimental", element.getExperimentalElement()); 34433 } 34434 if (element.hasDateElement()) { 34435 composeDateTime("date", element.getDateElement()); 34436 } 34437 if (element.hasPublisherElement()) { 34438 composeString("publisher", element.getPublisherElement()); 34439 } 34440 if (element.hasContact()) { 34441 for (ContactDetail e : element.getContact()) 34442 composeContactDetail("contact", e); 34443 } 34444 if (element.hasDescriptionElement()) { 34445 composeMarkdown("description", element.getDescriptionElement()); 34446 } 34447 if (element.hasUseContext()) { 34448 for (UsageContext e : element.getUseContext()) 34449 composeUsageContext("useContext", e); 34450 } 34451 if (element.hasJurisdiction()) { 34452 for (CodeableConcept e : element.getJurisdiction()) 34453 composeCodeableConcept("jurisdiction", e); 34454 } 34455 if (element.hasPurposeElement()) { 34456 composeMarkdown("purpose", element.getPurposeElement()); 34457 } 34458 if (element.hasCopyrightElement()) { 34459 composeMarkdown("copyright", element.getCopyrightElement()); 34460 } 34461 if (element.hasKeyword()) { 34462 for (Coding e : element.getKeyword()) 34463 composeCoding("keyword", e); 34464 } 34465 if (element.hasFhirVersionElement()) { 34466 composeId("fhirVersion", element.getFhirVersionElement()); 34467 } 34468 if (element.hasMapping()) { 34469 for (StructureDefinition.StructureDefinitionMappingComponent e : element.getMapping()) 34470 composeStructureDefinitionStructureDefinitionMappingComponent("mapping", e); 34471 } 34472 if (element.hasKindElement()) 34473 composeEnumeration("kind", element.getKindElement(), new StructureDefinition.StructureDefinitionKindEnumFactory()); 34474 if (element.hasAbstractElement()) { 34475 composeBoolean("abstract", element.getAbstractElement()); 34476 } 34477 if (element.hasContextTypeElement()) 34478 composeEnumeration("contextType", element.getContextTypeElement(), new StructureDefinition.ExtensionContextEnumFactory()); 34479 if (element.hasContext()) { 34480 for (StringType e : element.getContext()) 34481 composeString("context", e); 34482 } 34483 if (element.hasContextInvariant()) { 34484 for (StringType e : element.getContextInvariant()) 34485 composeString("contextInvariant", e); 34486 } 34487 if (element.hasTypeElement()) { 34488 composeCode("type", element.getTypeElement()); 34489 } 34490 if (element.hasBaseDefinitionElement()) { 34491 composeUri("baseDefinition", element.getBaseDefinitionElement()); 34492 } 34493 if (element.hasDerivationElement()) 34494 composeEnumeration("derivation", element.getDerivationElement(), new StructureDefinition.TypeDerivationRuleEnumFactory()); 34495 if (element.hasSnapshot()) { 34496 composeStructureDefinitionStructureDefinitionSnapshotComponent("snapshot", element.getSnapshot()); 34497 } 34498 if (element.hasDifferential()) { 34499 composeStructureDefinitionStructureDefinitionDifferentialComponent("differential", element.getDifferential()); 34500 } 34501 } 34502 34503 protected void composeStructureDefinitionStructureDefinitionMappingComponent(String name, StructureDefinition.StructureDefinitionMappingComponent element) throws IOException { 34504 if (element != null) { 34505 composeElementAttributes(element); 34506 xml.enter(FHIR_NS, name); 34507 composeStructureDefinitionStructureDefinitionMappingComponentElements(element); 34508 composeElementClose(element); 34509 xml.exit(FHIR_NS, name); 34510 } 34511 } 34512 34513 protected void composeStructureDefinitionStructureDefinitionMappingComponentElements(StructureDefinition.StructureDefinitionMappingComponent element) throws IOException { 34514 composeBackboneElements(element); 34515 if (element.hasIdentityElement()) { 34516 composeId("identity", element.getIdentityElement()); 34517 } 34518 if (element.hasUriElement()) { 34519 composeUri("uri", element.getUriElement()); 34520 } 34521 if (element.hasNameElement()) { 34522 composeString("name", element.getNameElement()); 34523 } 34524 if (element.hasCommentElement()) { 34525 composeString("comment", element.getCommentElement()); 34526 } 34527 } 34528 34529 protected void composeStructureDefinitionStructureDefinitionSnapshotComponent(String name, StructureDefinition.StructureDefinitionSnapshotComponent element) throws IOException { 34530 if (element != null) { 34531 composeElementAttributes(element); 34532 xml.enter(FHIR_NS, name); 34533 composeStructureDefinitionStructureDefinitionSnapshotComponentElements(element); 34534 composeElementClose(element); 34535 xml.exit(FHIR_NS, name); 34536 } 34537 } 34538 34539 protected void composeStructureDefinitionStructureDefinitionSnapshotComponentElements(StructureDefinition.StructureDefinitionSnapshotComponent element) throws IOException { 34540 composeBackboneElements(element); 34541 if (element.hasElement()) { 34542 for (ElementDefinition e : element.getElement()) 34543 composeElementDefinition("element", e); 34544 } 34545 } 34546 34547 protected void composeStructureDefinitionStructureDefinitionDifferentialComponent(String name, StructureDefinition.StructureDefinitionDifferentialComponent element) throws IOException { 34548 if (element != null) { 34549 composeElementAttributes(element); 34550 xml.enter(FHIR_NS, name); 34551 composeStructureDefinitionStructureDefinitionDifferentialComponentElements(element); 34552 composeElementClose(element); 34553 xml.exit(FHIR_NS, name); 34554 } 34555 } 34556 34557 protected void composeStructureDefinitionStructureDefinitionDifferentialComponentElements(StructureDefinition.StructureDefinitionDifferentialComponent element) throws IOException { 34558 composeBackboneElements(element); 34559 if (element.hasElement()) { 34560 for (ElementDefinition e : element.getElement()) 34561 composeElementDefinition("element", e); 34562 } 34563 } 34564 34565 protected void composeStructureMap(String name, StructureMap element) throws IOException { 34566 if (element != null) { 34567 composeDomainResourceAttributes(element); 34568 xml.enter(FHIR_NS, name); 34569 composeStructureMapElements(element); 34570 composeElementClose(element); 34571 xml.exit(FHIR_NS, name); 34572 } 34573 } 34574 34575 protected void composeStructureMapElements(StructureMap element) throws IOException { 34576 composeDomainResourceElements(element); 34577 if (element.hasUrlElement()) { 34578 composeUri("url", element.getUrlElement()); 34579 } 34580 if (element.hasIdentifier()) { 34581 for (Identifier e : element.getIdentifier()) 34582 composeIdentifier("identifier", e); 34583 } 34584 if (element.hasVersionElement()) { 34585 composeString("version", element.getVersionElement()); 34586 } 34587 if (element.hasNameElement()) { 34588 composeString("name", element.getNameElement()); 34589 } 34590 if (element.hasTitleElement()) { 34591 composeString("title", element.getTitleElement()); 34592 } 34593 if (element.hasStatusElement()) 34594 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 34595 if (element.hasExperimentalElement()) { 34596 composeBoolean("experimental", element.getExperimentalElement()); 34597 } 34598 if (element.hasDateElement()) { 34599 composeDateTime("date", element.getDateElement()); 34600 } 34601 if (element.hasPublisherElement()) { 34602 composeString("publisher", element.getPublisherElement()); 34603 } 34604 if (element.hasContact()) { 34605 for (ContactDetail e : element.getContact()) 34606 composeContactDetail("contact", e); 34607 } 34608 if (element.hasDescriptionElement()) { 34609 composeMarkdown("description", element.getDescriptionElement()); 34610 } 34611 if (element.hasUseContext()) { 34612 for (UsageContext e : element.getUseContext()) 34613 composeUsageContext("useContext", e); 34614 } 34615 if (element.hasJurisdiction()) { 34616 for (CodeableConcept e : element.getJurisdiction()) 34617 composeCodeableConcept("jurisdiction", e); 34618 } 34619 if (element.hasPurposeElement()) { 34620 composeMarkdown("purpose", element.getPurposeElement()); 34621 } 34622 if (element.hasCopyrightElement()) { 34623 composeMarkdown("copyright", element.getCopyrightElement()); 34624 } 34625 if (element.hasStructure()) { 34626 for (StructureMap.StructureMapStructureComponent e : element.getStructure()) 34627 composeStructureMapStructureMapStructureComponent("structure", e); 34628 } 34629 if (element.hasImport()) { 34630 for (UriType e : element.getImport()) 34631 composeUri("import", e); 34632 } 34633 if (element.hasGroup()) { 34634 for (StructureMap.StructureMapGroupComponent e : element.getGroup()) 34635 composeStructureMapStructureMapGroupComponent("group", e); 34636 } 34637 } 34638 34639 protected void composeStructureMapStructureMapStructureComponent(String name, StructureMap.StructureMapStructureComponent element) throws IOException { 34640 if (element != null) { 34641 composeElementAttributes(element); 34642 xml.enter(FHIR_NS, name); 34643 composeStructureMapStructureMapStructureComponentElements(element); 34644 composeElementClose(element); 34645 xml.exit(FHIR_NS, name); 34646 } 34647 } 34648 34649 protected void composeStructureMapStructureMapStructureComponentElements(StructureMap.StructureMapStructureComponent element) throws IOException { 34650 composeBackboneElements(element); 34651 if (element.hasUrlElement()) { 34652 composeUri("url", element.getUrlElement()); 34653 } 34654 if (element.hasModeElement()) 34655 composeEnumeration("mode", element.getModeElement(), new StructureMap.StructureMapModelModeEnumFactory()); 34656 if (element.hasAliasElement()) { 34657 composeString("alias", element.getAliasElement()); 34658 } 34659 if (element.hasDocumentationElement()) { 34660 composeString("documentation", element.getDocumentationElement()); 34661 } 34662 } 34663 34664 protected void composeStructureMapStructureMapGroupComponent(String name, StructureMap.StructureMapGroupComponent element) throws IOException { 34665 if (element != null) { 34666 composeElementAttributes(element); 34667 xml.enter(FHIR_NS, name); 34668 composeStructureMapStructureMapGroupComponentElements(element); 34669 composeElementClose(element); 34670 xml.exit(FHIR_NS, name); 34671 } 34672 } 34673 34674 protected void composeStructureMapStructureMapGroupComponentElements(StructureMap.StructureMapGroupComponent element) throws IOException { 34675 composeBackboneElements(element); 34676 if (element.hasNameElement()) { 34677 composeId("name", element.getNameElement()); 34678 } 34679 if (element.hasExtendsElement()) { 34680 composeId("extends", element.getExtendsElement()); 34681 } 34682 if (element.hasTypeModeElement()) 34683 composeEnumeration("typeMode", element.getTypeModeElement(), new StructureMap.StructureMapGroupTypeModeEnumFactory()); 34684 if (element.hasDocumentationElement()) { 34685 composeString("documentation", element.getDocumentationElement()); 34686 } 34687 if (element.hasInput()) { 34688 for (StructureMap.StructureMapGroupInputComponent e : element.getInput()) 34689 composeStructureMapStructureMapGroupInputComponent("input", e); 34690 } 34691 if (element.hasRule()) { 34692 for (StructureMap.StructureMapGroupRuleComponent e : element.getRule()) 34693 composeStructureMapStructureMapGroupRuleComponent("rule", e); 34694 } 34695 } 34696 34697 protected void composeStructureMapStructureMapGroupInputComponent(String name, StructureMap.StructureMapGroupInputComponent element) throws IOException { 34698 if (element != null) { 34699 composeElementAttributes(element); 34700 xml.enter(FHIR_NS, name); 34701 composeStructureMapStructureMapGroupInputComponentElements(element); 34702 composeElementClose(element); 34703 xml.exit(FHIR_NS, name); 34704 } 34705 } 34706 34707 protected void composeStructureMapStructureMapGroupInputComponentElements(StructureMap.StructureMapGroupInputComponent element) throws IOException { 34708 composeBackboneElements(element); 34709 if (element.hasNameElement()) { 34710 composeId("name", element.getNameElement()); 34711 } 34712 if (element.hasTypeElement()) { 34713 composeString("type", element.getTypeElement()); 34714 } 34715 if (element.hasModeElement()) 34716 composeEnumeration("mode", element.getModeElement(), new StructureMap.StructureMapInputModeEnumFactory()); 34717 if (element.hasDocumentationElement()) { 34718 composeString("documentation", element.getDocumentationElement()); 34719 } 34720 } 34721 34722 protected void composeStructureMapStructureMapGroupRuleComponent(String name, StructureMap.StructureMapGroupRuleComponent element) throws IOException { 34723 if (element != null) { 34724 composeElementAttributes(element); 34725 xml.enter(FHIR_NS, name); 34726 composeStructureMapStructureMapGroupRuleComponentElements(element); 34727 composeElementClose(element); 34728 xml.exit(FHIR_NS, name); 34729 } 34730 } 34731 34732 protected void composeStructureMapStructureMapGroupRuleComponentElements(StructureMap.StructureMapGroupRuleComponent element) throws IOException { 34733 composeBackboneElements(element); 34734 if (element.hasNameElement()) { 34735 composeId("name", element.getNameElement()); 34736 } 34737 if (element.hasSource()) { 34738 for (StructureMap.StructureMapGroupRuleSourceComponent e : element.getSource()) 34739 composeStructureMapStructureMapGroupRuleSourceComponent("source", e); 34740 } 34741 if (element.hasTarget()) { 34742 for (StructureMap.StructureMapGroupRuleTargetComponent e : element.getTarget()) 34743 composeStructureMapStructureMapGroupRuleTargetComponent("target", e); 34744 } 34745 if (element.hasRule()) { 34746 for (StructureMap.StructureMapGroupRuleComponent e : element.getRule()) 34747 composeStructureMapStructureMapGroupRuleComponent("rule", e); 34748 } 34749 if (element.hasDependent()) { 34750 for (StructureMap.StructureMapGroupRuleDependentComponent e : element.getDependent()) 34751 composeStructureMapStructureMapGroupRuleDependentComponent("dependent", e); 34752 } 34753 if (element.hasDocumentationElement()) { 34754 composeString("documentation", element.getDocumentationElement()); 34755 } 34756 } 34757 34758 protected void composeStructureMapStructureMapGroupRuleSourceComponent(String name, StructureMap.StructureMapGroupRuleSourceComponent element) throws IOException { 34759 if (element != null) { 34760 composeElementAttributes(element); 34761 xml.enter(FHIR_NS, name); 34762 composeStructureMapStructureMapGroupRuleSourceComponentElements(element); 34763 composeElementClose(element); 34764 xml.exit(FHIR_NS, name); 34765 } 34766 } 34767 34768 protected void composeStructureMapStructureMapGroupRuleSourceComponentElements(StructureMap.StructureMapGroupRuleSourceComponent element) throws IOException { 34769 composeBackboneElements(element); 34770 if (element.hasContextElement()) { 34771 composeId("context", element.getContextElement()); 34772 } 34773 if (element.hasMinElement()) { 34774 composeInteger("min", element.getMinElement()); 34775 } 34776 if (element.hasMaxElement()) { 34777 composeString("max", element.getMaxElement()); 34778 } 34779 if (element.hasTypeElement()) { 34780 composeString("type", element.getTypeElement()); 34781 } 34782 if (element.hasDefaultValue()) { 34783 composeType("defaultValue", element.getDefaultValue()); 34784 } if (element.hasElementElement()) { 34785 composeString("element", element.getElementElement()); 34786 } 34787 if (element.hasListModeElement()) 34788 composeEnumeration("listMode", element.getListModeElement(), new StructureMap.StructureMapSourceListModeEnumFactory()); 34789 if (element.hasVariableElement()) { 34790 composeId("variable", element.getVariableElement()); 34791 } 34792 if (element.hasConditionElement()) { 34793 composeString("condition", element.getConditionElement()); 34794 } 34795 if (element.hasCheckElement()) { 34796 composeString("check", element.getCheckElement()); 34797 } 34798 } 34799 34800 protected void composeStructureMapStructureMapGroupRuleTargetComponent(String name, StructureMap.StructureMapGroupRuleTargetComponent element) throws IOException { 34801 if (element != null) { 34802 composeElementAttributes(element); 34803 xml.enter(FHIR_NS, name); 34804 composeStructureMapStructureMapGroupRuleTargetComponentElements(element); 34805 composeElementClose(element); 34806 xml.exit(FHIR_NS, name); 34807 } 34808 } 34809 34810 protected void composeStructureMapStructureMapGroupRuleTargetComponentElements(StructureMap.StructureMapGroupRuleTargetComponent element) throws IOException { 34811 composeBackboneElements(element); 34812 if (element.hasContextElement()) { 34813 composeId("context", element.getContextElement()); 34814 } 34815 if (element.hasContextTypeElement()) 34816 composeEnumeration("contextType", element.getContextTypeElement(), new StructureMap.StructureMapContextTypeEnumFactory()); 34817 if (element.hasElementElement()) { 34818 composeString("element", element.getElementElement()); 34819 } 34820 if (element.hasVariableElement()) { 34821 composeId("variable", element.getVariableElement()); 34822 } 34823 if (element.hasListMode()) 34824 for (Enumeration<StructureMap.StructureMapTargetListMode> e : element.getListMode()) 34825 composeEnumeration("listMode", e, new StructureMap.StructureMapTargetListModeEnumFactory()); 34826 if (element.hasListRuleIdElement()) { 34827 composeId("listRuleId", element.getListRuleIdElement()); 34828 } 34829 if (element.hasTransformElement()) 34830 composeEnumeration("transform", element.getTransformElement(), new StructureMap.StructureMapTransformEnumFactory()); 34831 if (element.hasParameter()) { 34832 for (StructureMap.StructureMapGroupRuleTargetParameterComponent e : element.getParameter()) 34833 composeStructureMapStructureMapGroupRuleTargetParameterComponent("parameter", e); 34834 } 34835 } 34836 34837 protected void composeStructureMapStructureMapGroupRuleTargetParameterComponent(String name, StructureMap.StructureMapGroupRuleTargetParameterComponent element) throws IOException { 34838 if (element != null) { 34839 composeElementAttributes(element); 34840 xml.enter(FHIR_NS, name); 34841 composeStructureMapStructureMapGroupRuleTargetParameterComponentElements(element); 34842 composeElementClose(element); 34843 xml.exit(FHIR_NS, name); 34844 } 34845 } 34846 34847 protected void composeStructureMapStructureMapGroupRuleTargetParameterComponentElements(StructureMap.StructureMapGroupRuleTargetParameterComponent element) throws IOException { 34848 composeBackboneElements(element); 34849 if (element.hasValue()) { 34850 composeType("value", element.getValue()); 34851 } } 34852 34853 protected void composeStructureMapStructureMapGroupRuleDependentComponent(String name, StructureMap.StructureMapGroupRuleDependentComponent element) throws IOException { 34854 if (element != null) { 34855 composeElementAttributes(element); 34856 xml.enter(FHIR_NS, name); 34857 composeStructureMapStructureMapGroupRuleDependentComponentElements(element); 34858 composeElementClose(element); 34859 xml.exit(FHIR_NS, name); 34860 } 34861 } 34862 34863 protected void composeStructureMapStructureMapGroupRuleDependentComponentElements(StructureMap.StructureMapGroupRuleDependentComponent element) throws IOException { 34864 composeBackboneElements(element); 34865 if (element.hasNameElement()) { 34866 composeId("name", element.getNameElement()); 34867 } 34868 if (element.hasVariable()) { 34869 for (StringType e : element.getVariable()) 34870 composeString("variable", e); 34871 } 34872 } 34873 34874 protected void composeSubscription(String name, Subscription element) throws IOException { 34875 if (element != null) { 34876 composeDomainResourceAttributes(element); 34877 xml.enter(FHIR_NS, name); 34878 composeSubscriptionElements(element); 34879 composeElementClose(element); 34880 xml.exit(FHIR_NS, name); 34881 } 34882 } 34883 34884 protected void composeSubscriptionElements(Subscription element) throws IOException { 34885 composeDomainResourceElements(element); 34886 if (element.hasStatusElement()) 34887 composeEnumeration("status", element.getStatusElement(), new Subscription.SubscriptionStatusEnumFactory()); 34888 if (element.hasContact()) { 34889 for (ContactPoint e : element.getContact()) 34890 composeContactPoint("contact", e); 34891 } 34892 if (element.hasEndElement()) { 34893 composeInstant("end", element.getEndElement()); 34894 } 34895 if (element.hasReasonElement()) { 34896 composeString("reason", element.getReasonElement()); 34897 } 34898 if (element.hasCriteriaElement()) { 34899 composeString("criteria", element.getCriteriaElement()); 34900 } 34901 if (element.hasErrorElement()) { 34902 composeString("error", element.getErrorElement()); 34903 } 34904 if (element.hasChannel()) { 34905 composeSubscriptionSubscriptionChannelComponent("channel", element.getChannel()); 34906 } 34907 if (element.hasTag()) { 34908 for (Coding e : element.getTag()) 34909 composeCoding("tag", e); 34910 } 34911 } 34912 34913 protected void composeSubscriptionSubscriptionChannelComponent(String name, Subscription.SubscriptionChannelComponent element) throws IOException { 34914 if (element != null) { 34915 composeElementAttributes(element); 34916 xml.enter(FHIR_NS, name); 34917 composeSubscriptionSubscriptionChannelComponentElements(element); 34918 composeElementClose(element); 34919 xml.exit(FHIR_NS, name); 34920 } 34921 } 34922 34923 protected void composeSubscriptionSubscriptionChannelComponentElements(Subscription.SubscriptionChannelComponent element) throws IOException { 34924 composeBackboneElements(element); 34925 if (element.hasTypeElement()) 34926 composeEnumeration("type", element.getTypeElement(), new Subscription.SubscriptionChannelTypeEnumFactory()); 34927 if (element.hasEndpointElement()) { 34928 composeUri("endpoint", element.getEndpointElement()); 34929 } 34930 if (element.hasPayloadElement()) { 34931 composeString("payload", element.getPayloadElement()); 34932 } 34933 if (element.hasHeader()) { 34934 for (StringType e : element.getHeader()) 34935 composeString("header", e); 34936 } 34937 } 34938 34939 protected void composeSubstance(String name, Substance element) throws IOException { 34940 if (element != null) { 34941 composeDomainResourceAttributes(element); 34942 xml.enter(FHIR_NS, name); 34943 composeSubstanceElements(element); 34944 composeElementClose(element); 34945 xml.exit(FHIR_NS, name); 34946 } 34947 } 34948 34949 protected void composeSubstanceElements(Substance element) throws IOException { 34950 composeDomainResourceElements(element); 34951 if (element.hasIdentifier()) { 34952 for (Identifier e : element.getIdentifier()) 34953 composeIdentifier("identifier", e); 34954 } 34955 if (element.hasStatusElement()) 34956 composeEnumeration("status", element.getStatusElement(), new Substance.FHIRSubstanceStatusEnumFactory()); 34957 if (element.hasCategory()) { 34958 for (CodeableConcept e : element.getCategory()) 34959 composeCodeableConcept("category", e); 34960 } 34961 if (element.hasCode()) { 34962 composeCodeableConcept("code", element.getCode()); 34963 } 34964 if (element.hasDescriptionElement()) { 34965 composeString("description", element.getDescriptionElement()); 34966 } 34967 if (element.hasInstance()) { 34968 for (Substance.SubstanceInstanceComponent e : element.getInstance()) 34969 composeSubstanceSubstanceInstanceComponent("instance", e); 34970 } 34971 if (element.hasIngredient()) { 34972 for (Substance.SubstanceIngredientComponent e : element.getIngredient()) 34973 composeSubstanceSubstanceIngredientComponent("ingredient", e); 34974 } 34975 } 34976 34977 protected void composeSubstanceSubstanceInstanceComponent(String name, Substance.SubstanceInstanceComponent element) throws IOException { 34978 if (element != null) { 34979 composeElementAttributes(element); 34980 xml.enter(FHIR_NS, name); 34981 composeSubstanceSubstanceInstanceComponentElements(element); 34982 composeElementClose(element); 34983 xml.exit(FHIR_NS, name); 34984 } 34985 } 34986 34987 protected void composeSubstanceSubstanceInstanceComponentElements(Substance.SubstanceInstanceComponent element) throws IOException { 34988 composeBackboneElements(element); 34989 if (element.hasIdentifier()) { 34990 composeIdentifier("identifier", element.getIdentifier()); 34991 } 34992 if (element.hasExpiryElement()) { 34993 composeDateTime("expiry", element.getExpiryElement()); 34994 } 34995 if (element.hasQuantity()) { 34996 composeSimpleQuantity("quantity", element.getQuantity()); 34997 } 34998 } 34999 35000 protected void composeSubstanceSubstanceIngredientComponent(String name, Substance.SubstanceIngredientComponent element) throws IOException { 35001 if (element != null) { 35002 composeElementAttributes(element); 35003 xml.enter(FHIR_NS, name); 35004 composeSubstanceSubstanceIngredientComponentElements(element); 35005 composeElementClose(element); 35006 xml.exit(FHIR_NS, name); 35007 } 35008 } 35009 35010 protected void composeSubstanceSubstanceIngredientComponentElements(Substance.SubstanceIngredientComponent element) throws IOException { 35011 composeBackboneElements(element); 35012 if (element.hasQuantity()) { 35013 composeRatio("quantity", element.getQuantity()); 35014 } 35015 if (element.hasSubstance()) { 35016 composeType("substance", element.getSubstance()); 35017 } } 35018 35019 protected void composeSupplyDelivery(String name, SupplyDelivery element) throws IOException { 35020 if (element != null) { 35021 composeDomainResourceAttributes(element); 35022 xml.enter(FHIR_NS, name); 35023 composeSupplyDeliveryElements(element); 35024 composeElementClose(element); 35025 xml.exit(FHIR_NS, name); 35026 } 35027 } 35028 35029 protected void composeSupplyDeliveryElements(SupplyDelivery element) throws IOException { 35030 composeDomainResourceElements(element); 35031 if (element.hasIdentifier()) { 35032 composeIdentifier("identifier", element.getIdentifier()); 35033 } 35034 if (element.hasBasedOn()) { 35035 for (Reference e : element.getBasedOn()) 35036 composeReference("basedOn", e); 35037 } 35038 if (element.hasPartOf()) { 35039 for (Reference e : element.getPartOf()) 35040 composeReference("partOf", e); 35041 } 35042 if (element.hasStatusElement()) 35043 composeEnumeration("status", element.getStatusElement(), new SupplyDelivery.SupplyDeliveryStatusEnumFactory()); 35044 if (element.hasPatient()) { 35045 composeReference("patient", element.getPatient()); 35046 } 35047 if (element.hasType()) { 35048 composeCodeableConcept("type", element.getType()); 35049 } 35050 if (element.hasSuppliedItem()) { 35051 composeSupplyDeliverySupplyDeliverySuppliedItemComponent("suppliedItem", element.getSuppliedItem()); 35052 } 35053 if (element.hasOccurrence()) { 35054 composeType("occurrence", element.getOccurrence()); 35055 } if (element.hasSupplier()) { 35056 composeReference("supplier", element.getSupplier()); 35057 } 35058 if (element.hasDestination()) { 35059 composeReference("destination", element.getDestination()); 35060 } 35061 if (element.hasReceiver()) { 35062 for (Reference e : element.getReceiver()) 35063 composeReference("receiver", e); 35064 } 35065 } 35066 35067 protected void composeSupplyDeliverySupplyDeliverySuppliedItemComponent(String name, SupplyDelivery.SupplyDeliverySuppliedItemComponent element) throws IOException { 35068 if (element != null) { 35069 composeElementAttributes(element); 35070 xml.enter(FHIR_NS, name); 35071 composeSupplyDeliverySupplyDeliverySuppliedItemComponentElements(element); 35072 composeElementClose(element); 35073 xml.exit(FHIR_NS, name); 35074 } 35075 } 35076 35077 protected void composeSupplyDeliverySupplyDeliverySuppliedItemComponentElements(SupplyDelivery.SupplyDeliverySuppliedItemComponent element) throws IOException { 35078 composeBackboneElements(element); 35079 if (element.hasQuantity()) { 35080 composeSimpleQuantity("quantity", element.getQuantity()); 35081 } 35082 if (element.hasItem()) { 35083 composeType("item", element.getItem()); 35084 } } 35085 35086 protected void composeSupplyRequest(String name, SupplyRequest element) throws IOException { 35087 if (element != null) { 35088 composeDomainResourceAttributes(element); 35089 xml.enter(FHIR_NS, name); 35090 composeSupplyRequestElements(element); 35091 composeElementClose(element); 35092 xml.exit(FHIR_NS, name); 35093 } 35094 } 35095 35096 protected void composeSupplyRequestElements(SupplyRequest element) throws IOException { 35097 composeDomainResourceElements(element); 35098 if (element.hasIdentifier()) { 35099 composeIdentifier("identifier", element.getIdentifier()); 35100 } 35101 if (element.hasStatusElement()) 35102 composeEnumeration("status", element.getStatusElement(), new SupplyRequest.SupplyRequestStatusEnumFactory()); 35103 if (element.hasCategory()) { 35104 composeCodeableConcept("category", element.getCategory()); 35105 } 35106 if (element.hasPriorityElement()) 35107 composeEnumeration("priority", element.getPriorityElement(), new SupplyRequest.RequestPriorityEnumFactory()); 35108 if (element.hasOrderedItem()) { 35109 composeSupplyRequestSupplyRequestOrderedItemComponent("orderedItem", element.getOrderedItem()); 35110 } 35111 if (element.hasOccurrence()) { 35112 composeType("occurrence", element.getOccurrence()); 35113 } if (element.hasAuthoredOnElement()) { 35114 composeDateTime("authoredOn", element.getAuthoredOnElement()); 35115 } 35116 if (element.hasRequester()) { 35117 composeSupplyRequestSupplyRequestRequesterComponent("requester", element.getRequester()); 35118 } 35119 if (element.hasSupplier()) { 35120 for (Reference e : element.getSupplier()) 35121 composeReference("supplier", e); 35122 } 35123 if (element.hasReason()) { 35124 composeType("reason", element.getReason()); 35125 } if (element.hasDeliverFrom()) { 35126 composeReference("deliverFrom", element.getDeliverFrom()); 35127 } 35128 if (element.hasDeliverTo()) { 35129 composeReference("deliverTo", element.getDeliverTo()); 35130 } 35131 } 35132 35133 protected void composeSupplyRequestSupplyRequestOrderedItemComponent(String name, SupplyRequest.SupplyRequestOrderedItemComponent element) throws IOException { 35134 if (element != null) { 35135 composeElementAttributes(element); 35136 xml.enter(FHIR_NS, name); 35137 composeSupplyRequestSupplyRequestOrderedItemComponentElements(element); 35138 composeElementClose(element); 35139 xml.exit(FHIR_NS, name); 35140 } 35141 } 35142 35143 protected void composeSupplyRequestSupplyRequestOrderedItemComponentElements(SupplyRequest.SupplyRequestOrderedItemComponent element) throws IOException { 35144 composeBackboneElements(element); 35145 if (element.hasQuantity()) { 35146 composeQuantity("quantity", element.getQuantity()); 35147 } 35148 if (element.hasItem()) { 35149 composeType("item", element.getItem()); 35150 } } 35151 35152 protected void composeSupplyRequestSupplyRequestRequesterComponent(String name, SupplyRequest.SupplyRequestRequesterComponent element) throws IOException { 35153 if (element != null) { 35154 composeElementAttributes(element); 35155 xml.enter(FHIR_NS, name); 35156 composeSupplyRequestSupplyRequestRequesterComponentElements(element); 35157 composeElementClose(element); 35158 xml.exit(FHIR_NS, name); 35159 } 35160 } 35161 35162 protected void composeSupplyRequestSupplyRequestRequesterComponentElements(SupplyRequest.SupplyRequestRequesterComponent element) throws IOException { 35163 composeBackboneElements(element); 35164 if (element.hasAgent()) { 35165 composeReference("agent", element.getAgent()); 35166 } 35167 if (element.hasOnBehalfOf()) { 35168 composeReference("onBehalfOf", element.getOnBehalfOf()); 35169 } 35170 } 35171 35172 protected void composeTask(String name, Task element) throws IOException { 35173 if (element != null) { 35174 composeDomainResourceAttributes(element); 35175 xml.enter(FHIR_NS, name); 35176 composeTaskElements(element); 35177 composeElementClose(element); 35178 xml.exit(FHIR_NS, name); 35179 } 35180 } 35181 35182 protected void composeTaskElements(Task element) throws IOException { 35183 composeDomainResourceElements(element); 35184 if (element.hasIdentifier()) { 35185 for (Identifier e : element.getIdentifier()) 35186 composeIdentifier("identifier", e); 35187 } 35188 if (element.hasDefinition()) { 35189 composeType("definition", element.getDefinition()); 35190 } if (element.hasBasedOn()) { 35191 for (Reference e : element.getBasedOn()) 35192 composeReference("basedOn", e); 35193 } 35194 if (element.hasGroupIdentifier()) { 35195 composeIdentifier("groupIdentifier", element.getGroupIdentifier()); 35196 } 35197 if (element.hasPartOf()) { 35198 for (Reference e : element.getPartOf()) 35199 composeReference("partOf", e); 35200 } 35201 if (element.hasStatusElement()) 35202 composeEnumeration("status", element.getStatusElement(), new Task.TaskStatusEnumFactory()); 35203 if (element.hasStatusReason()) { 35204 composeCodeableConcept("statusReason", element.getStatusReason()); 35205 } 35206 if (element.hasBusinessStatus()) { 35207 composeCodeableConcept("businessStatus", element.getBusinessStatus()); 35208 } 35209 if (element.hasIntentElement()) 35210 composeEnumeration("intent", element.getIntentElement(), new Task.TaskIntentEnumFactory()); 35211 if (element.hasPriorityElement()) 35212 composeEnumeration("priority", element.getPriorityElement(), new Task.TaskPriorityEnumFactory()); 35213 if (element.hasCode()) { 35214 composeCodeableConcept("code", element.getCode()); 35215 } 35216 if (element.hasDescriptionElement()) { 35217 composeString("description", element.getDescriptionElement()); 35218 } 35219 if (element.hasFocus()) { 35220 composeReference("focus", element.getFocus()); 35221 } 35222 if (element.hasFor()) { 35223 composeReference("for", element.getFor()); 35224 } 35225 if (element.hasContext()) { 35226 composeReference("context", element.getContext()); 35227 } 35228 if (element.hasExecutionPeriod()) { 35229 composePeriod("executionPeriod", element.getExecutionPeriod()); 35230 } 35231 if (element.hasAuthoredOnElement()) { 35232 composeDateTime("authoredOn", element.getAuthoredOnElement()); 35233 } 35234 if (element.hasLastModifiedElement()) { 35235 composeDateTime("lastModified", element.getLastModifiedElement()); 35236 } 35237 if (element.hasRequester()) { 35238 composeTaskTaskRequesterComponent("requester", element.getRequester()); 35239 } 35240 if (element.hasPerformerType()) { 35241 for (CodeableConcept e : element.getPerformerType()) 35242 composeCodeableConcept("performerType", e); 35243 } 35244 if (element.hasOwner()) { 35245 composeReference("owner", element.getOwner()); 35246 } 35247 if (element.hasReason()) { 35248 composeCodeableConcept("reason", element.getReason()); 35249 } 35250 if (element.hasNote()) { 35251 for (Annotation e : element.getNote()) 35252 composeAnnotation("note", e); 35253 } 35254 if (element.hasRelevantHistory()) { 35255 for (Reference e : element.getRelevantHistory()) 35256 composeReference("relevantHistory", e); 35257 } 35258 if (element.hasRestriction()) { 35259 composeTaskTaskRestrictionComponent("restriction", element.getRestriction()); 35260 } 35261 if (element.hasInput()) { 35262 for (Task.ParameterComponent e : element.getInput()) 35263 composeTaskParameterComponent("input", e); 35264 } 35265 if (element.hasOutput()) { 35266 for (Task.TaskOutputComponent e : element.getOutput()) 35267 composeTaskTaskOutputComponent("output", e); 35268 } 35269 } 35270 35271 protected void composeTaskTaskRequesterComponent(String name, Task.TaskRequesterComponent element) throws IOException { 35272 if (element != null) { 35273 composeElementAttributes(element); 35274 xml.enter(FHIR_NS, name); 35275 composeTaskTaskRequesterComponentElements(element); 35276 composeElementClose(element); 35277 xml.exit(FHIR_NS, name); 35278 } 35279 } 35280 35281 protected void composeTaskTaskRequesterComponentElements(Task.TaskRequesterComponent element) throws IOException { 35282 composeBackboneElements(element); 35283 if (element.hasAgent()) { 35284 composeReference("agent", element.getAgent()); 35285 } 35286 if (element.hasOnBehalfOf()) { 35287 composeReference("onBehalfOf", element.getOnBehalfOf()); 35288 } 35289 } 35290 35291 protected void composeTaskTaskRestrictionComponent(String name, Task.TaskRestrictionComponent element) throws IOException { 35292 if (element != null) { 35293 composeElementAttributes(element); 35294 xml.enter(FHIR_NS, name); 35295 composeTaskTaskRestrictionComponentElements(element); 35296 composeElementClose(element); 35297 xml.exit(FHIR_NS, name); 35298 } 35299 } 35300 35301 protected void composeTaskTaskRestrictionComponentElements(Task.TaskRestrictionComponent element) throws IOException { 35302 composeBackboneElements(element); 35303 if (element.hasRepetitionsElement()) { 35304 composePositiveInt("repetitions", element.getRepetitionsElement()); 35305 } 35306 if (element.hasPeriod()) { 35307 composePeriod("period", element.getPeriod()); 35308 } 35309 if (element.hasRecipient()) { 35310 for (Reference e : element.getRecipient()) 35311 composeReference("recipient", e); 35312 } 35313 } 35314 35315 protected void composeTaskParameterComponent(String name, Task.ParameterComponent element) throws IOException { 35316 if (element != null) { 35317 composeElementAttributes(element); 35318 xml.enter(FHIR_NS, name); 35319 composeTaskParameterComponentElements(element); 35320 composeElementClose(element); 35321 xml.exit(FHIR_NS, name); 35322 } 35323 } 35324 35325 protected void composeTaskParameterComponentElements(Task.ParameterComponent element) throws IOException { 35326 composeBackboneElements(element); 35327 if (element.hasType()) { 35328 composeCodeableConcept("type", element.getType()); 35329 } 35330 if (element.hasValue()) { 35331 composeType("value", element.getValue()); 35332 } } 35333 35334 protected void composeTaskTaskOutputComponent(String name, Task.TaskOutputComponent element) throws IOException { 35335 if (element != null) { 35336 composeElementAttributes(element); 35337 xml.enter(FHIR_NS, name); 35338 composeTaskTaskOutputComponentElements(element); 35339 composeElementClose(element); 35340 xml.exit(FHIR_NS, name); 35341 } 35342 } 35343 35344 protected void composeTaskTaskOutputComponentElements(Task.TaskOutputComponent element) throws IOException { 35345 composeBackboneElements(element); 35346 if (element.hasType()) { 35347 composeCodeableConcept("type", element.getType()); 35348 } 35349 if (element.hasValue()) { 35350 composeType("value", element.getValue()); 35351 } } 35352 35353 protected void composeTestReport(String name, TestReport element) throws IOException { 35354 if (element != null) { 35355 composeDomainResourceAttributes(element); 35356 xml.enter(FHIR_NS, name); 35357 composeTestReportElements(element); 35358 composeElementClose(element); 35359 xml.exit(FHIR_NS, name); 35360 } 35361 } 35362 35363 protected void composeTestReportElements(TestReport element) throws IOException { 35364 composeDomainResourceElements(element); 35365 if (element.hasIdentifier()) { 35366 composeIdentifier("identifier", element.getIdentifier()); 35367 } 35368 if (element.hasNameElement()) { 35369 composeString("name", element.getNameElement()); 35370 } 35371 if (element.hasStatusElement()) 35372 composeEnumeration("status", element.getStatusElement(), new TestReport.TestReportStatusEnumFactory()); 35373 if (element.hasTestScript()) { 35374 composeReference("testScript", element.getTestScript()); 35375 } 35376 if (element.hasResultElement()) 35377 composeEnumeration("result", element.getResultElement(), new TestReport.TestReportResultEnumFactory()); 35378 if (element.hasScoreElement()) { 35379 composeDecimal("score", element.getScoreElement()); 35380 } 35381 if (element.hasTesterElement()) { 35382 composeString("tester", element.getTesterElement()); 35383 } 35384 if (element.hasIssuedElement()) { 35385 composeDateTime("issued", element.getIssuedElement()); 35386 } 35387 if (element.hasParticipant()) { 35388 for (TestReport.TestReportParticipantComponent e : element.getParticipant()) 35389 composeTestReportTestReportParticipantComponent("participant", e); 35390 } 35391 if (element.hasSetup()) { 35392 composeTestReportTestReportSetupComponent("setup", element.getSetup()); 35393 } 35394 if (element.hasTest()) { 35395 for (TestReport.TestReportTestComponent e : element.getTest()) 35396 composeTestReportTestReportTestComponent("test", e); 35397 } 35398 if (element.hasTeardown()) { 35399 composeTestReportTestReportTeardownComponent("teardown", element.getTeardown()); 35400 } 35401 } 35402 35403 protected void composeTestReportTestReportParticipantComponent(String name, TestReport.TestReportParticipantComponent element) throws IOException { 35404 if (element != null) { 35405 composeElementAttributes(element); 35406 xml.enter(FHIR_NS, name); 35407 composeTestReportTestReportParticipantComponentElements(element); 35408 composeElementClose(element); 35409 xml.exit(FHIR_NS, name); 35410 } 35411 } 35412 35413 protected void composeTestReportTestReportParticipantComponentElements(TestReport.TestReportParticipantComponent element) throws IOException { 35414 composeBackboneElements(element); 35415 if (element.hasTypeElement()) 35416 composeEnumeration("type", element.getTypeElement(), new TestReport.TestReportParticipantTypeEnumFactory()); 35417 if (element.hasUriElement()) { 35418 composeUri("uri", element.getUriElement()); 35419 } 35420 if (element.hasDisplayElement()) { 35421 composeString("display", element.getDisplayElement()); 35422 } 35423 } 35424 35425 protected void composeTestReportTestReportSetupComponent(String name, TestReport.TestReportSetupComponent element) throws IOException { 35426 if (element != null) { 35427 composeElementAttributes(element); 35428 xml.enter(FHIR_NS, name); 35429 composeTestReportTestReportSetupComponentElements(element); 35430 composeElementClose(element); 35431 xml.exit(FHIR_NS, name); 35432 } 35433 } 35434 35435 protected void composeTestReportTestReportSetupComponentElements(TestReport.TestReportSetupComponent element) throws IOException { 35436 composeBackboneElements(element); 35437 if (element.hasAction()) { 35438 for (TestReport.SetupActionComponent e : element.getAction()) 35439 composeTestReportSetupActionComponent("action", e); 35440 } 35441 } 35442 35443 protected void composeTestReportSetupActionComponent(String name, TestReport.SetupActionComponent element) throws IOException { 35444 if (element != null) { 35445 composeElementAttributes(element); 35446 xml.enter(FHIR_NS, name); 35447 composeTestReportSetupActionComponentElements(element); 35448 composeElementClose(element); 35449 xml.exit(FHIR_NS, name); 35450 } 35451 } 35452 35453 protected void composeTestReportSetupActionComponentElements(TestReport.SetupActionComponent element) throws IOException { 35454 composeBackboneElements(element); 35455 if (element.hasOperation()) { 35456 composeTestReportSetupActionOperationComponent("operation", element.getOperation()); 35457 } 35458 if (element.hasAssert()) { 35459 composeTestReportSetupActionAssertComponent("assert", element.getAssert()); 35460 } 35461 } 35462 35463 protected void composeTestReportSetupActionOperationComponent(String name, TestReport.SetupActionOperationComponent element) throws IOException { 35464 if (element != null) { 35465 composeElementAttributes(element); 35466 xml.enter(FHIR_NS, name); 35467 composeTestReportSetupActionOperationComponentElements(element); 35468 composeElementClose(element); 35469 xml.exit(FHIR_NS, name); 35470 } 35471 } 35472 35473 protected void composeTestReportSetupActionOperationComponentElements(TestReport.SetupActionOperationComponent element) throws IOException { 35474 composeBackboneElements(element); 35475 if (element.hasResultElement()) 35476 composeEnumeration("result", element.getResultElement(), new TestReport.TestReportActionResultEnumFactory()); 35477 if (element.hasMessageElement()) { 35478 composeMarkdown("message", element.getMessageElement()); 35479 } 35480 if (element.hasDetailElement()) { 35481 composeUri("detail", element.getDetailElement()); 35482 } 35483 } 35484 35485 protected void composeTestReportSetupActionAssertComponent(String name, TestReport.SetupActionAssertComponent element) throws IOException { 35486 if (element != null) { 35487 composeElementAttributes(element); 35488 xml.enter(FHIR_NS, name); 35489 composeTestReportSetupActionAssertComponentElements(element); 35490 composeElementClose(element); 35491 xml.exit(FHIR_NS, name); 35492 } 35493 } 35494 35495 protected void composeTestReportSetupActionAssertComponentElements(TestReport.SetupActionAssertComponent element) throws IOException { 35496 composeBackboneElements(element); 35497 if (element.hasResultElement()) 35498 composeEnumeration("result", element.getResultElement(), new TestReport.TestReportActionResultEnumFactory()); 35499 if (element.hasMessageElement()) { 35500 composeMarkdown("message", element.getMessageElement()); 35501 } 35502 if (element.hasDetailElement()) { 35503 composeString("detail", element.getDetailElement()); 35504 } 35505 } 35506 35507 protected void composeTestReportTestReportTestComponent(String name, TestReport.TestReportTestComponent element) throws IOException { 35508 if (element != null) { 35509 composeElementAttributes(element); 35510 xml.enter(FHIR_NS, name); 35511 composeTestReportTestReportTestComponentElements(element); 35512 composeElementClose(element); 35513 xml.exit(FHIR_NS, name); 35514 } 35515 } 35516 35517 protected void composeTestReportTestReportTestComponentElements(TestReport.TestReportTestComponent element) throws IOException { 35518 composeBackboneElements(element); 35519 if (element.hasNameElement()) { 35520 composeString("name", element.getNameElement()); 35521 } 35522 if (element.hasDescriptionElement()) { 35523 composeString("description", element.getDescriptionElement()); 35524 } 35525 if (element.hasAction()) { 35526 for (TestReport.TestActionComponent e : element.getAction()) 35527 composeTestReportTestActionComponent("action", e); 35528 } 35529 } 35530 35531 protected void composeTestReportTestActionComponent(String name, TestReport.TestActionComponent element) throws IOException { 35532 if (element != null) { 35533 composeElementAttributes(element); 35534 xml.enter(FHIR_NS, name); 35535 composeTestReportTestActionComponentElements(element); 35536 composeElementClose(element); 35537 xml.exit(FHIR_NS, name); 35538 } 35539 } 35540 35541 protected void composeTestReportTestActionComponentElements(TestReport.TestActionComponent element) throws IOException { 35542 composeBackboneElements(element); 35543 if (element.hasOperation()) { 35544 composeTestReportSetupActionOperationComponent("operation", element.getOperation()); 35545 } 35546 if (element.hasAssert()) { 35547 composeTestReportSetupActionAssertComponent("assert", element.getAssert()); 35548 } 35549 } 35550 35551 protected void composeTestReportTestReportTeardownComponent(String name, TestReport.TestReportTeardownComponent element) throws IOException { 35552 if (element != null) { 35553 composeElementAttributes(element); 35554 xml.enter(FHIR_NS, name); 35555 composeTestReportTestReportTeardownComponentElements(element); 35556 composeElementClose(element); 35557 xml.exit(FHIR_NS, name); 35558 } 35559 } 35560 35561 protected void composeTestReportTestReportTeardownComponentElements(TestReport.TestReportTeardownComponent element) throws IOException { 35562 composeBackboneElements(element); 35563 if (element.hasAction()) { 35564 for (TestReport.TeardownActionComponent e : element.getAction()) 35565 composeTestReportTeardownActionComponent("action", e); 35566 } 35567 } 35568 35569 protected void composeTestReportTeardownActionComponent(String name, TestReport.TeardownActionComponent element) throws IOException { 35570 if (element != null) { 35571 composeElementAttributes(element); 35572 xml.enter(FHIR_NS, name); 35573 composeTestReportTeardownActionComponentElements(element); 35574 composeElementClose(element); 35575 xml.exit(FHIR_NS, name); 35576 } 35577 } 35578 35579 protected void composeTestReportTeardownActionComponentElements(TestReport.TeardownActionComponent element) throws IOException { 35580 composeBackboneElements(element); 35581 if (element.hasOperation()) { 35582 composeTestReportSetupActionOperationComponent("operation", element.getOperation()); 35583 } 35584 } 35585 35586 protected void composeTestScript(String name, TestScript element) throws IOException { 35587 if (element != null) { 35588 composeDomainResourceAttributes(element); 35589 xml.enter(FHIR_NS, name); 35590 composeTestScriptElements(element); 35591 composeElementClose(element); 35592 xml.exit(FHIR_NS, name); 35593 } 35594 } 35595 35596 protected void composeTestScriptElements(TestScript element) throws IOException { 35597 composeDomainResourceElements(element); 35598 if (element.hasUrlElement()) { 35599 composeUri("url", element.getUrlElement()); 35600 } 35601 if (element.hasIdentifier()) { 35602 composeIdentifier("identifier", element.getIdentifier()); 35603 } 35604 if (element.hasVersionElement()) { 35605 composeString("version", element.getVersionElement()); 35606 } 35607 if (element.hasNameElement()) { 35608 composeString("name", element.getNameElement()); 35609 } 35610 if (element.hasTitleElement()) { 35611 composeString("title", element.getTitleElement()); 35612 } 35613 if (element.hasStatusElement()) 35614 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 35615 if (element.hasExperimentalElement()) { 35616 composeBoolean("experimental", element.getExperimentalElement()); 35617 } 35618 if (element.hasDateElement()) { 35619 composeDateTime("date", element.getDateElement()); 35620 } 35621 if (element.hasPublisherElement()) { 35622 composeString("publisher", element.getPublisherElement()); 35623 } 35624 if (element.hasContact()) { 35625 for (ContactDetail e : element.getContact()) 35626 composeContactDetail("contact", e); 35627 } 35628 if (element.hasDescriptionElement()) { 35629 composeMarkdown("description", element.getDescriptionElement()); 35630 } 35631 if (element.hasUseContext()) { 35632 for (UsageContext e : element.getUseContext()) 35633 composeUsageContext("useContext", e); 35634 } 35635 if (element.hasJurisdiction()) { 35636 for (CodeableConcept e : element.getJurisdiction()) 35637 composeCodeableConcept("jurisdiction", e); 35638 } 35639 if (element.hasPurposeElement()) { 35640 composeMarkdown("purpose", element.getPurposeElement()); 35641 } 35642 if (element.hasCopyrightElement()) { 35643 composeMarkdown("copyright", element.getCopyrightElement()); 35644 } 35645 if (element.hasOrigin()) { 35646 for (TestScript.TestScriptOriginComponent e : element.getOrigin()) 35647 composeTestScriptTestScriptOriginComponent("origin", e); 35648 } 35649 if (element.hasDestination()) { 35650 for (TestScript.TestScriptDestinationComponent e : element.getDestination()) 35651 composeTestScriptTestScriptDestinationComponent("destination", e); 35652 } 35653 if (element.hasMetadata()) { 35654 composeTestScriptTestScriptMetadataComponent("metadata", element.getMetadata()); 35655 } 35656 if (element.hasFixture()) { 35657 for (TestScript.TestScriptFixtureComponent e : element.getFixture()) 35658 composeTestScriptTestScriptFixtureComponent("fixture", e); 35659 } 35660 if (element.hasProfile()) { 35661 for (Reference e : element.getProfile()) 35662 composeReference("profile", e); 35663 } 35664 if (element.hasVariable()) { 35665 for (TestScript.TestScriptVariableComponent e : element.getVariable()) 35666 composeTestScriptTestScriptVariableComponent("variable", e); 35667 } 35668 if (element.hasRule()) { 35669 for (TestScript.TestScriptRuleComponent e : element.getRule()) 35670 composeTestScriptTestScriptRuleComponent("rule", e); 35671 } 35672 if (element.hasRuleset()) { 35673 for (TestScript.TestScriptRulesetComponent e : element.getRuleset()) 35674 composeTestScriptTestScriptRulesetComponent("ruleset", e); 35675 } 35676 if (element.hasSetup()) { 35677 composeTestScriptTestScriptSetupComponent("setup", element.getSetup()); 35678 } 35679 if (element.hasTest()) { 35680 for (TestScript.TestScriptTestComponent e : element.getTest()) 35681 composeTestScriptTestScriptTestComponent("test", e); 35682 } 35683 if (element.hasTeardown()) { 35684 composeTestScriptTestScriptTeardownComponent("teardown", element.getTeardown()); 35685 } 35686 } 35687 35688 protected void composeTestScriptTestScriptOriginComponent(String name, TestScript.TestScriptOriginComponent element) throws IOException { 35689 if (element != null) { 35690 composeElementAttributes(element); 35691 xml.enter(FHIR_NS, name); 35692 composeTestScriptTestScriptOriginComponentElements(element); 35693 composeElementClose(element); 35694 xml.exit(FHIR_NS, name); 35695 } 35696 } 35697 35698 protected void composeTestScriptTestScriptOriginComponentElements(TestScript.TestScriptOriginComponent element) throws IOException { 35699 composeBackboneElements(element); 35700 if (element.hasIndexElement()) { 35701 composeInteger("index", element.getIndexElement()); 35702 } 35703 if (element.hasProfile()) { 35704 composeCoding("profile", element.getProfile()); 35705 } 35706 } 35707 35708 protected void composeTestScriptTestScriptDestinationComponent(String name, TestScript.TestScriptDestinationComponent element) throws IOException { 35709 if (element != null) { 35710 composeElementAttributes(element); 35711 xml.enter(FHIR_NS, name); 35712 composeTestScriptTestScriptDestinationComponentElements(element); 35713 composeElementClose(element); 35714 xml.exit(FHIR_NS, name); 35715 } 35716 } 35717 35718 protected void composeTestScriptTestScriptDestinationComponentElements(TestScript.TestScriptDestinationComponent element) throws IOException { 35719 composeBackboneElements(element); 35720 if (element.hasIndexElement()) { 35721 composeInteger("index", element.getIndexElement()); 35722 } 35723 if (element.hasProfile()) { 35724 composeCoding("profile", element.getProfile()); 35725 } 35726 } 35727 35728 protected void composeTestScriptTestScriptMetadataComponent(String name, TestScript.TestScriptMetadataComponent element) throws IOException { 35729 if (element != null) { 35730 composeElementAttributes(element); 35731 xml.enter(FHIR_NS, name); 35732 composeTestScriptTestScriptMetadataComponentElements(element); 35733 composeElementClose(element); 35734 xml.exit(FHIR_NS, name); 35735 } 35736 } 35737 35738 protected void composeTestScriptTestScriptMetadataComponentElements(TestScript.TestScriptMetadataComponent element) throws IOException { 35739 composeBackboneElements(element); 35740 if (element.hasLink()) { 35741 for (TestScript.TestScriptMetadataLinkComponent e : element.getLink()) 35742 composeTestScriptTestScriptMetadataLinkComponent("link", e); 35743 } 35744 if (element.hasCapability()) { 35745 for (TestScript.TestScriptMetadataCapabilityComponent e : element.getCapability()) 35746 composeTestScriptTestScriptMetadataCapabilityComponent("capability", e); 35747 } 35748 } 35749 35750 protected void composeTestScriptTestScriptMetadataLinkComponent(String name, TestScript.TestScriptMetadataLinkComponent element) throws IOException { 35751 if (element != null) { 35752 composeElementAttributes(element); 35753 xml.enter(FHIR_NS, name); 35754 composeTestScriptTestScriptMetadataLinkComponentElements(element); 35755 composeElementClose(element); 35756 xml.exit(FHIR_NS, name); 35757 } 35758 } 35759 35760 protected void composeTestScriptTestScriptMetadataLinkComponentElements(TestScript.TestScriptMetadataLinkComponent element) throws IOException { 35761 composeBackboneElements(element); 35762 if (element.hasUrlElement()) { 35763 composeUri("url", element.getUrlElement()); 35764 } 35765 if (element.hasDescriptionElement()) { 35766 composeString("description", element.getDescriptionElement()); 35767 } 35768 } 35769 35770 protected void composeTestScriptTestScriptMetadataCapabilityComponent(String name, TestScript.TestScriptMetadataCapabilityComponent element) throws IOException { 35771 if (element != null) { 35772 composeElementAttributes(element); 35773 xml.enter(FHIR_NS, name); 35774 composeTestScriptTestScriptMetadataCapabilityComponentElements(element); 35775 composeElementClose(element); 35776 xml.exit(FHIR_NS, name); 35777 } 35778 } 35779 35780 protected void composeTestScriptTestScriptMetadataCapabilityComponentElements(TestScript.TestScriptMetadataCapabilityComponent element) throws IOException { 35781 composeBackboneElements(element); 35782 if (element.hasRequiredElement()) { 35783 composeBoolean("required", element.getRequiredElement()); 35784 } 35785 if (element.hasValidatedElement()) { 35786 composeBoolean("validated", element.getValidatedElement()); 35787 } 35788 if (element.hasDescriptionElement()) { 35789 composeString("description", element.getDescriptionElement()); 35790 } 35791 if (element.hasOrigin()) { 35792 for (IntegerType e : element.getOrigin()) 35793 composeInteger("origin", e); 35794 } 35795 if (element.hasDestinationElement()) { 35796 composeInteger("destination", element.getDestinationElement()); 35797 } 35798 if (element.hasLink()) { 35799 for (UriType e : element.getLink()) 35800 composeUri("link", e); 35801 } 35802 if (element.hasCapabilities()) { 35803 composeReference("capabilities", element.getCapabilities()); 35804 } 35805 } 35806 35807 protected void composeTestScriptTestScriptFixtureComponent(String name, TestScript.TestScriptFixtureComponent element) throws IOException { 35808 if (element != null) { 35809 composeElementAttributes(element); 35810 xml.enter(FHIR_NS, name); 35811 composeTestScriptTestScriptFixtureComponentElements(element); 35812 composeElementClose(element); 35813 xml.exit(FHIR_NS, name); 35814 } 35815 } 35816 35817 protected void composeTestScriptTestScriptFixtureComponentElements(TestScript.TestScriptFixtureComponent element) throws IOException { 35818 composeBackboneElements(element); 35819 if (element.hasAutocreateElement()) { 35820 composeBoolean("autocreate", element.getAutocreateElement()); 35821 } 35822 if (element.hasAutodeleteElement()) { 35823 composeBoolean("autodelete", element.getAutodeleteElement()); 35824 } 35825 if (element.hasResource()) { 35826 composeReference("resource", element.getResource()); 35827 } 35828 } 35829 35830 protected void composeTestScriptTestScriptVariableComponent(String name, TestScript.TestScriptVariableComponent element) throws IOException { 35831 if (element != null) { 35832 composeElementAttributes(element); 35833 xml.enter(FHIR_NS, name); 35834 composeTestScriptTestScriptVariableComponentElements(element); 35835 composeElementClose(element); 35836 xml.exit(FHIR_NS, name); 35837 } 35838 } 35839 35840 protected void composeTestScriptTestScriptVariableComponentElements(TestScript.TestScriptVariableComponent element) throws IOException { 35841 composeBackboneElements(element); 35842 if (element.hasNameElement()) { 35843 composeString("name", element.getNameElement()); 35844 } 35845 if (element.hasDefaultValueElement()) { 35846 composeString("defaultValue", element.getDefaultValueElement()); 35847 } 35848 if (element.hasDescriptionElement()) { 35849 composeString("description", element.getDescriptionElement()); 35850 } 35851 if (element.hasExpressionElement()) { 35852 composeString("expression", element.getExpressionElement()); 35853 } 35854 if (element.hasHeaderFieldElement()) { 35855 composeString("headerField", element.getHeaderFieldElement()); 35856 } 35857 if (element.hasHintElement()) { 35858 composeString("hint", element.getHintElement()); 35859 } 35860 if (element.hasPathElement()) { 35861 composeString("path", element.getPathElement()); 35862 } 35863 if (element.hasSourceIdElement()) { 35864 composeId("sourceId", element.getSourceIdElement()); 35865 } 35866 } 35867 35868 protected void composeTestScriptTestScriptRuleComponent(String name, TestScript.TestScriptRuleComponent element) throws IOException { 35869 if (element != null) { 35870 composeElementAttributes(element); 35871 xml.enter(FHIR_NS, name); 35872 composeTestScriptTestScriptRuleComponentElements(element); 35873 composeElementClose(element); 35874 xml.exit(FHIR_NS, name); 35875 } 35876 } 35877 35878 protected void composeTestScriptTestScriptRuleComponentElements(TestScript.TestScriptRuleComponent element) throws IOException { 35879 composeBackboneElements(element); 35880 if (element.hasResource()) { 35881 composeReference("resource", element.getResource()); 35882 } 35883 if (element.hasParam()) { 35884 for (TestScript.RuleParamComponent e : element.getParam()) 35885 composeTestScriptRuleParamComponent("param", e); 35886 } 35887 } 35888 35889 protected void composeTestScriptRuleParamComponent(String name, TestScript.RuleParamComponent element) throws IOException { 35890 if (element != null) { 35891 composeElementAttributes(element); 35892 xml.enter(FHIR_NS, name); 35893 composeTestScriptRuleParamComponentElements(element); 35894 composeElementClose(element); 35895 xml.exit(FHIR_NS, name); 35896 } 35897 } 35898 35899 protected void composeTestScriptRuleParamComponentElements(TestScript.RuleParamComponent element) throws IOException { 35900 composeBackboneElements(element); 35901 if (element.hasNameElement()) { 35902 composeString("name", element.getNameElement()); 35903 } 35904 if (element.hasValueElement()) { 35905 composeString("value", element.getValueElement()); 35906 } 35907 } 35908 35909 protected void composeTestScriptTestScriptRulesetComponent(String name, TestScript.TestScriptRulesetComponent element) throws IOException { 35910 if (element != null) { 35911 composeElementAttributes(element); 35912 xml.enter(FHIR_NS, name); 35913 composeTestScriptTestScriptRulesetComponentElements(element); 35914 composeElementClose(element); 35915 xml.exit(FHIR_NS, name); 35916 } 35917 } 35918 35919 protected void composeTestScriptTestScriptRulesetComponentElements(TestScript.TestScriptRulesetComponent element) throws IOException { 35920 composeBackboneElements(element); 35921 if (element.hasResource()) { 35922 composeReference("resource", element.getResource()); 35923 } 35924 if (element.hasRule()) { 35925 for (TestScript.RulesetRuleComponent e : element.getRule()) 35926 composeTestScriptRulesetRuleComponent("rule", e); 35927 } 35928 } 35929 35930 protected void composeTestScriptRulesetRuleComponent(String name, TestScript.RulesetRuleComponent element) throws IOException { 35931 if (element != null) { 35932 composeElementAttributes(element); 35933 xml.enter(FHIR_NS, name); 35934 composeTestScriptRulesetRuleComponentElements(element); 35935 composeElementClose(element); 35936 xml.exit(FHIR_NS, name); 35937 } 35938 } 35939 35940 protected void composeTestScriptRulesetRuleComponentElements(TestScript.RulesetRuleComponent element) throws IOException { 35941 composeBackboneElements(element); 35942 if (element.hasRuleIdElement()) { 35943 composeId("ruleId", element.getRuleIdElement()); 35944 } 35945 if (element.hasParam()) { 35946 for (TestScript.RulesetRuleParamComponent e : element.getParam()) 35947 composeTestScriptRulesetRuleParamComponent("param", e); 35948 } 35949 } 35950 35951 protected void composeTestScriptRulesetRuleParamComponent(String name, TestScript.RulesetRuleParamComponent element) throws IOException { 35952 if (element != null) { 35953 composeElementAttributes(element); 35954 xml.enter(FHIR_NS, name); 35955 composeTestScriptRulesetRuleParamComponentElements(element); 35956 composeElementClose(element); 35957 xml.exit(FHIR_NS, name); 35958 } 35959 } 35960 35961 protected void composeTestScriptRulesetRuleParamComponentElements(TestScript.RulesetRuleParamComponent element) throws IOException { 35962 composeBackboneElements(element); 35963 if (element.hasNameElement()) { 35964 composeString("name", element.getNameElement()); 35965 } 35966 if (element.hasValueElement()) { 35967 composeString("value", element.getValueElement()); 35968 } 35969 } 35970 35971 protected void composeTestScriptTestScriptSetupComponent(String name, TestScript.TestScriptSetupComponent element) throws IOException { 35972 if (element != null) { 35973 composeElementAttributes(element); 35974 xml.enter(FHIR_NS, name); 35975 composeTestScriptTestScriptSetupComponentElements(element); 35976 composeElementClose(element); 35977 xml.exit(FHIR_NS, name); 35978 } 35979 } 35980 35981 protected void composeTestScriptTestScriptSetupComponentElements(TestScript.TestScriptSetupComponent element) throws IOException { 35982 composeBackboneElements(element); 35983 if (element.hasAction()) { 35984 for (TestScript.SetupActionComponent e : element.getAction()) 35985 composeTestScriptSetupActionComponent("action", e); 35986 } 35987 } 35988 35989 protected void composeTestScriptSetupActionComponent(String name, TestScript.SetupActionComponent element) throws IOException { 35990 if (element != null) { 35991 composeElementAttributes(element); 35992 xml.enter(FHIR_NS, name); 35993 composeTestScriptSetupActionComponentElements(element); 35994 composeElementClose(element); 35995 xml.exit(FHIR_NS, name); 35996 } 35997 } 35998 35999 protected void composeTestScriptSetupActionComponentElements(TestScript.SetupActionComponent element) throws IOException { 36000 composeBackboneElements(element); 36001 if (element.hasOperation()) { 36002 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 36003 } 36004 if (element.hasAssert()) { 36005 composeTestScriptSetupActionAssertComponent("assert", element.getAssert()); 36006 } 36007 } 36008 36009 protected void composeTestScriptSetupActionOperationComponent(String name, TestScript.SetupActionOperationComponent element) throws IOException { 36010 if (element != null) { 36011 composeElementAttributes(element); 36012 xml.enter(FHIR_NS, name); 36013 composeTestScriptSetupActionOperationComponentElements(element); 36014 composeElementClose(element); 36015 xml.exit(FHIR_NS, name); 36016 } 36017 } 36018 36019 protected void composeTestScriptSetupActionOperationComponentElements(TestScript.SetupActionOperationComponent element) throws IOException { 36020 composeBackboneElements(element); 36021 if (element.hasType()) { 36022 composeCoding("type", element.getType()); 36023 } 36024 if (element.hasResourceElement()) { 36025 composeCode("resource", element.getResourceElement()); 36026 } 36027 if (element.hasLabelElement()) { 36028 composeString("label", element.getLabelElement()); 36029 } 36030 if (element.hasDescriptionElement()) { 36031 composeString("description", element.getDescriptionElement()); 36032 } 36033 if (element.hasAcceptElement()) 36034 composeEnumeration("accept", element.getAcceptElement(), new TestScript.ContentTypeEnumFactory()); 36035 if (element.hasContentTypeElement()) 36036 composeEnumeration("contentType", element.getContentTypeElement(), new TestScript.ContentTypeEnumFactory()); 36037 if (element.hasDestinationElement()) { 36038 composeInteger("destination", element.getDestinationElement()); 36039 } 36040 if (element.hasEncodeRequestUrlElement()) { 36041 composeBoolean("encodeRequestUrl", element.getEncodeRequestUrlElement()); 36042 } 36043 if (element.hasOriginElement()) { 36044 composeInteger("origin", element.getOriginElement()); 36045 } 36046 if (element.hasParamsElement()) { 36047 composeString("params", element.getParamsElement()); 36048 } 36049 if (element.hasRequestHeader()) { 36050 for (TestScript.SetupActionOperationRequestHeaderComponent e : element.getRequestHeader()) 36051 composeTestScriptSetupActionOperationRequestHeaderComponent("requestHeader", e); 36052 } 36053 if (element.hasRequestIdElement()) { 36054 composeId("requestId", element.getRequestIdElement()); 36055 } 36056 if (element.hasResponseIdElement()) { 36057 composeId("responseId", element.getResponseIdElement()); 36058 } 36059 if (element.hasSourceIdElement()) { 36060 composeId("sourceId", element.getSourceIdElement()); 36061 } 36062 if (element.hasTargetIdElement()) { 36063 composeId("targetId", element.getTargetIdElement()); 36064 } 36065 if (element.hasUrlElement()) { 36066 composeString("url", element.getUrlElement()); 36067 } 36068 } 36069 36070 protected void composeTestScriptSetupActionOperationRequestHeaderComponent(String name, TestScript.SetupActionOperationRequestHeaderComponent element) throws IOException { 36071 if (element != null) { 36072 composeElementAttributes(element); 36073 xml.enter(FHIR_NS, name); 36074 composeTestScriptSetupActionOperationRequestHeaderComponentElements(element); 36075 composeElementClose(element); 36076 xml.exit(FHIR_NS, name); 36077 } 36078 } 36079 36080 protected void composeTestScriptSetupActionOperationRequestHeaderComponentElements(TestScript.SetupActionOperationRequestHeaderComponent element) throws IOException { 36081 composeBackboneElements(element); 36082 if (element.hasFieldElement()) { 36083 composeString("field", element.getFieldElement()); 36084 } 36085 if (element.hasValueElement()) { 36086 composeString("value", element.getValueElement()); 36087 } 36088 } 36089 36090 protected void composeTestScriptSetupActionAssertComponent(String name, TestScript.SetupActionAssertComponent element) throws IOException { 36091 if (element != null) { 36092 composeElementAttributes(element); 36093 xml.enter(FHIR_NS, name); 36094 composeTestScriptSetupActionAssertComponentElements(element); 36095 composeElementClose(element); 36096 xml.exit(FHIR_NS, name); 36097 } 36098 } 36099 36100 protected void composeTestScriptSetupActionAssertComponentElements(TestScript.SetupActionAssertComponent element) throws IOException { 36101 composeBackboneElements(element); 36102 if (element.hasLabelElement()) { 36103 composeString("label", element.getLabelElement()); 36104 } 36105 if (element.hasDescriptionElement()) { 36106 composeString("description", element.getDescriptionElement()); 36107 } 36108 if (element.hasDirectionElement()) 36109 composeEnumeration("direction", element.getDirectionElement(), new TestScript.AssertionDirectionTypeEnumFactory()); 36110 if (element.hasCompareToSourceIdElement()) { 36111 composeString("compareToSourceId", element.getCompareToSourceIdElement()); 36112 } 36113 if (element.hasCompareToSourceExpressionElement()) { 36114 composeString("compareToSourceExpression", element.getCompareToSourceExpressionElement()); 36115 } 36116 if (element.hasCompareToSourcePathElement()) { 36117 composeString("compareToSourcePath", element.getCompareToSourcePathElement()); 36118 } 36119 if (element.hasContentTypeElement()) 36120 composeEnumeration("contentType", element.getContentTypeElement(), new TestScript.ContentTypeEnumFactory()); 36121 if (element.hasExpressionElement()) { 36122 composeString("expression", element.getExpressionElement()); 36123 } 36124 if (element.hasHeaderFieldElement()) { 36125 composeString("headerField", element.getHeaderFieldElement()); 36126 } 36127 if (element.hasMinimumIdElement()) { 36128 composeString("minimumId", element.getMinimumIdElement()); 36129 } 36130 if (element.hasNavigationLinksElement()) { 36131 composeBoolean("navigationLinks", element.getNavigationLinksElement()); 36132 } 36133 if (element.hasOperatorElement()) 36134 composeEnumeration("operator", element.getOperatorElement(), new TestScript.AssertionOperatorTypeEnumFactory()); 36135 if (element.hasPathElement()) { 36136 composeString("path", element.getPathElement()); 36137 } 36138 if (element.hasRequestMethodElement()) 36139 composeEnumeration("requestMethod", element.getRequestMethodElement(), new TestScript.TestScriptRequestMethodCodeEnumFactory()); 36140 if (element.hasRequestURLElement()) { 36141 composeString("requestURL", element.getRequestURLElement()); 36142 } 36143 if (element.hasResourceElement()) { 36144 composeCode("resource", element.getResourceElement()); 36145 } 36146 if (element.hasResponseElement()) 36147 composeEnumeration("response", element.getResponseElement(), new TestScript.AssertionResponseTypesEnumFactory()); 36148 if (element.hasResponseCodeElement()) { 36149 composeString("responseCode", element.getResponseCodeElement()); 36150 } 36151 if (element.hasRule()) { 36152 composeTestScriptActionAssertRuleComponent("rule", element.getRule()); 36153 } 36154 if (element.hasRuleset()) { 36155 composeTestScriptActionAssertRulesetComponent("ruleset", element.getRuleset()); 36156 } 36157 if (element.hasSourceIdElement()) { 36158 composeId("sourceId", element.getSourceIdElement()); 36159 } 36160 if (element.hasValidateProfileIdElement()) { 36161 composeId("validateProfileId", element.getValidateProfileIdElement()); 36162 } 36163 if (element.hasValueElement()) { 36164 composeString("value", element.getValueElement()); 36165 } 36166 if (element.hasWarningOnlyElement()) { 36167 composeBoolean("warningOnly", element.getWarningOnlyElement()); 36168 } 36169 } 36170 36171 protected void composeTestScriptActionAssertRuleComponent(String name, TestScript.ActionAssertRuleComponent element) throws IOException { 36172 if (element != null) { 36173 composeElementAttributes(element); 36174 xml.enter(FHIR_NS, name); 36175 composeTestScriptActionAssertRuleComponentElements(element); 36176 composeElementClose(element); 36177 xml.exit(FHIR_NS, name); 36178 } 36179 } 36180 36181 protected void composeTestScriptActionAssertRuleComponentElements(TestScript.ActionAssertRuleComponent element) throws IOException { 36182 composeBackboneElements(element); 36183 if (element.hasRuleIdElement()) { 36184 composeId("ruleId", element.getRuleIdElement()); 36185 } 36186 if (element.hasParam()) { 36187 for (TestScript.ActionAssertRuleParamComponent e : element.getParam()) 36188 composeTestScriptActionAssertRuleParamComponent("param", e); 36189 } 36190 } 36191 36192 protected void composeTestScriptActionAssertRuleParamComponent(String name, TestScript.ActionAssertRuleParamComponent element) throws IOException { 36193 if (element != null) { 36194 composeElementAttributes(element); 36195 xml.enter(FHIR_NS, name); 36196 composeTestScriptActionAssertRuleParamComponentElements(element); 36197 composeElementClose(element); 36198 xml.exit(FHIR_NS, name); 36199 } 36200 } 36201 36202 protected void composeTestScriptActionAssertRuleParamComponentElements(TestScript.ActionAssertRuleParamComponent element) throws IOException { 36203 composeBackboneElements(element); 36204 if (element.hasNameElement()) { 36205 composeString("name", element.getNameElement()); 36206 } 36207 if (element.hasValueElement()) { 36208 composeString("value", element.getValueElement()); 36209 } 36210 } 36211 36212 protected void composeTestScriptActionAssertRulesetComponent(String name, TestScript.ActionAssertRulesetComponent element) throws IOException { 36213 if (element != null) { 36214 composeElementAttributes(element); 36215 xml.enter(FHIR_NS, name); 36216 composeTestScriptActionAssertRulesetComponentElements(element); 36217 composeElementClose(element); 36218 xml.exit(FHIR_NS, name); 36219 } 36220 } 36221 36222 protected void composeTestScriptActionAssertRulesetComponentElements(TestScript.ActionAssertRulesetComponent element) throws IOException { 36223 composeBackboneElements(element); 36224 if (element.hasRulesetIdElement()) { 36225 composeId("rulesetId", element.getRulesetIdElement()); 36226 } 36227 if (element.hasRule()) { 36228 for (TestScript.ActionAssertRulesetRuleComponent e : element.getRule()) 36229 composeTestScriptActionAssertRulesetRuleComponent("rule", e); 36230 } 36231 } 36232 36233 protected void composeTestScriptActionAssertRulesetRuleComponent(String name, TestScript.ActionAssertRulesetRuleComponent element) throws IOException { 36234 if (element != null) { 36235 composeElementAttributes(element); 36236 xml.enter(FHIR_NS, name); 36237 composeTestScriptActionAssertRulesetRuleComponentElements(element); 36238 composeElementClose(element); 36239 xml.exit(FHIR_NS, name); 36240 } 36241 } 36242 36243 protected void composeTestScriptActionAssertRulesetRuleComponentElements(TestScript.ActionAssertRulesetRuleComponent element) throws IOException { 36244 composeBackboneElements(element); 36245 if (element.hasRuleIdElement()) { 36246 composeId("ruleId", element.getRuleIdElement()); 36247 } 36248 if (element.hasParam()) { 36249 for (TestScript.ActionAssertRulesetRuleParamComponent e : element.getParam()) 36250 composeTestScriptActionAssertRulesetRuleParamComponent("param", e); 36251 } 36252 } 36253 36254 protected void composeTestScriptActionAssertRulesetRuleParamComponent(String name, TestScript.ActionAssertRulesetRuleParamComponent element) throws IOException { 36255 if (element != null) { 36256 composeElementAttributes(element); 36257 xml.enter(FHIR_NS, name); 36258 composeTestScriptActionAssertRulesetRuleParamComponentElements(element); 36259 composeElementClose(element); 36260 xml.exit(FHIR_NS, name); 36261 } 36262 } 36263 36264 protected void composeTestScriptActionAssertRulesetRuleParamComponentElements(TestScript.ActionAssertRulesetRuleParamComponent element) throws IOException { 36265 composeBackboneElements(element); 36266 if (element.hasNameElement()) { 36267 composeString("name", element.getNameElement()); 36268 } 36269 if (element.hasValueElement()) { 36270 composeString("value", element.getValueElement()); 36271 } 36272 } 36273 36274 protected void composeTestScriptTestScriptTestComponent(String name, TestScript.TestScriptTestComponent element) throws IOException { 36275 if (element != null) { 36276 composeElementAttributes(element); 36277 xml.enter(FHIR_NS, name); 36278 composeTestScriptTestScriptTestComponentElements(element); 36279 composeElementClose(element); 36280 xml.exit(FHIR_NS, name); 36281 } 36282 } 36283 36284 protected void composeTestScriptTestScriptTestComponentElements(TestScript.TestScriptTestComponent element) throws IOException { 36285 composeBackboneElements(element); 36286 if (element.hasNameElement()) { 36287 composeString("name", element.getNameElement()); 36288 } 36289 if (element.hasDescriptionElement()) { 36290 composeString("description", element.getDescriptionElement()); 36291 } 36292 if (element.hasAction()) { 36293 for (TestScript.TestActionComponent e : element.getAction()) 36294 composeTestScriptTestActionComponent("action", e); 36295 } 36296 } 36297 36298 protected void composeTestScriptTestActionComponent(String name, TestScript.TestActionComponent element) throws IOException { 36299 if (element != null) { 36300 composeElementAttributes(element); 36301 xml.enter(FHIR_NS, name); 36302 composeTestScriptTestActionComponentElements(element); 36303 composeElementClose(element); 36304 xml.exit(FHIR_NS, name); 36305 } 36306 } 36307 36308 protected void composeTestScriptTestActionComponentElements(TestScript.TestActionComponent element) throws IOException { 36309 composeBackboneElements(element); 36310 if (element.hasOperation()) { 36311 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 36312 } 36313 if (element.hasAssert()) { 36314 composeTestScriptSetupActionAssertComponent("assert", element.getAssert()); 36315 } 36316 } 36317 36318 protected void composeTestScriptTestScriptTeardownComponent(String name, TestScript.TestScriptTeardownComponent element) throws IOException { 36319 if (element != null) { 36320 composeElementAttributes(element); 36321 xml.enter(FHIR_NS, name); 36322 composeTestScriptTestScriptTeardownComponentElements(element); 36323 composeElementClose(element); 36324 xml.exit(FHIR_NS, name); 36325 } 36326 } 36327 36328 protected void composeTestScriptTestScriptTeardownComponentElements(TestScript.TestScriptTeardownComponent element) throws IOException { 36329 composeBackboneElements(element); 36330 if (element.hasAction()) { 36331 for (TestScript.TeardownActionComponent e : element.getAction()) 36332 composeTestScriptTeardownActionComponent("action", e); 36333 } 36334 } 36335 36336 protected void composeTestScriptTeardownActionComponent(String name, TestScript.TeardownActionComponent element) throws IOException { 36337 if (element != null) { 36338 composeElementAttributes(element); 36339 xml.enter(FHIR_NS, name); 36340 composeTestScriptTeardownActionComponentElements(element); 36341 composeElementClose(element); 36342 xml.exit(FHIR_NS, name); 36343 } 36344 } 36345 36346 protected void composeTestScriptTeardownActionComponentElements(TestScript.TeardownActionComponent element) throws IOException { 36347 composeBackboneElements(element); 36348 if (element.hasOperation()) { 36349 composeTestScriptSetupActionOperationComponent("operation", element.getOperation()); 36350 } 36351 } 36352 36353 protected void composeValueSet(String name, ValueSet element) throws IOException { 36354 if (element != null) { 36355 composeDomainResourceAttributes(element); 36356 xml.enter(FHIR_NS, name); 36357 composeValueSetElements(element); 36358 composeElementClose(element); 36359 xml.exit(FHIR_NS, name); 36360 } 36361 } 36362 36363 protected void composeValueSetElements(ValueSet element) throws IOException { 36364 composeDomainResourceElements(element); 36365 if (element.hasUrlElement()) { 36366 composeUri("url", element.getUrlElement()); 36367 } 36368 if (element.hasIdentifier()) { 36369 for (Identifier e : element.getIdentifier()) 36370 composeIdentifier("identifier", e); 36371 } 36372 if (element.hasVersionElement()) { 36373 composeString("version", element.getVersionElement()); 36374 } 36375 if (element.hasNameElement()) { 36376 composeString("name", element.getNameElement()); 36377 } 36378 if (element.hasTitleElement()) { 36379 composeString("title", element.getTitleElement()); 36380 } 36381 if (element.hasStatusElement()) 36382 composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); 36383 if (element.hasExperimentalElement()) { 36384 composeBoolean("experimental", element.getExperimentalElement()); 36385 } 36386 if (element.hasDateElement()) { 36387 composeDateTime("date", element.getDateElement()); 36388 } 36389 if (element.hasPublisherElement()) { 36390 composeString("publisher", element.getPublisherElement()); 36391 } 36392 if (element.hasContact()) { 36393 for (ContactDetail e : element.getContact()) 36394 composeContactDetail("contact", e); 36395 } 36396 if (element.hasDescriptionElement()) { 36397 composeMarkdown("description", element.getDescriptionElement()); 36398 } 36399 if (element.hasUseContext()) { 36400 for (UsageContext e : element.getUseContext()) 36401 composeUsageContext("useContext", e); 36402 } 36403 if (element.hasJurisdiction()) { 36404 for (CodeableConcept e : element.getJurisdiction()) 36405 composeCodeableConcept("jurisdiction", e); 36406 } 36407 if (element.hasImmutableElement()) { 36408 composeBoolean("immutable", element.getImmutableElement()); 36409 } 36410 if (element.hasPurposeElement()) { 36411 composeMarkdown("purpose", element.getPurposeElement()); 36412 } 36413 if (element.hasCopyrightElement()) { 36414 composeMarkdown("copyright", element.getCopyrightElement()); 36415 } 36416 if (element.hasExtensibleElement()) { 36417 composeBoolean("extensible", element.getExtensibleElement()); 36418 } 36419 if (element.hasCompose()) { 36420 composeValueSetValueSetComposeComponent("compose", element.getCompose()); 36421 } 36422 if (element.hasExpansion()) { 36423 composeValueSetValueSetExpansionComponent("expansion", element.getExpansion()); 36424 } 36425 } 36426 36427 protected void composeValueSetValueSetComposeComponent(String name, ValueSet.ValueSetComposeComponent element) throws IOException { 36428 if (element != null) { 36429 composeElementAttributes(element); 36430 xml.enter(FHIR_NS, name); 36431 composeValueSetValueSetComposeComponentElements(element); 36432 composeElementClose(element); 36433 xml.exit(FHIR_NS, name); 36434 } 36435 } 36436 36437 protected void composeValueSetValueSetComposeComponentElements(ValueSet.ValueSetComposeComponent element) throws IOException { 36438 composeBackboneElements(element); 36439 if (element.hasLockedDateElement()) { 36440 composeDate("lockedDate", element.getLockedDateElement()); 36441 } 36442 if (element.hasInactiveElement()) { 36443 composeBoolean("inactive", element.getInactiveElement()); 36444 } 36445 if (element.hasInclude()) { 36446 for (ValueSet.ConceptSetComponent e : element.getInclude()) 36447 composeValueSetConceptSetComponent("include", e); 36448 } 36449 if (element.hasExclude()) { 36450 for (ValueSet.ConceptSetComponent e : element.getExclude()) 36451 composeValueSetConceptSetComponent("exclude", e); 36452 } 36453 } 36454 36455 protected void composeValueSetConceptSetComponent(String name, ValueSet.ConceptSetComponent element) throws IOException { 36456 if (element != null) { 36457 composeElementAttributes(element); 36458 xml.enter(FHIR_NS, name); 36459 composeValueSetConceptSetComponentElements(element); 36460 composeElementClose(element); 36461 xml.exit(FHIR_NS, name); 36462 } 36463 } 36464 36465 protected void composeValueSetConceptSetComponentElements(ValueSet.ConceptSetComponent element) throws IOException { 36466 composeBackboneElements(element); 36467 if (element.hasSystemElement()) { 36468 composeUri("system", element.getSystemElement()); 36469 } 36470 if (element.hasVersionElement()) { 36471 composeString("version", element.getVersionElement()); 36472 } 36473 if (element.hasConcept()) { 36474 for (ValueSet.ConceptReferenceComponent e : element.getConcept()) 36475 composeValueSetConceptReferenceComponent("concept", e); 36476 } 36477 if (element.hasFilter()) { 36478 for (ValueSet.ConceptSetFilterComponent e : element.getFilter()) 36479 composeValueSetConceptSetFilterComponent("filter", e); 36480 } 36481 if (element.hasValueSet()) { 36482 for (UriType e : element.getValueSet()) 36483 composeUri("valueSet", e); 36484 } 36485 } 36486 36487 protected void composeValueSetConceptReferenceComponent(String name, ValueSet.ConceptReferenceComponent element) throws IOException { 36488 if (element != null) { 36489 composeElementAttributes(element); 36490 xml.enter(FHIR_NS, name); 36491 composeValueSetConceptReferenceComponentElements(element); 36492 composeElementClose(element); 36493 xml.exit(FHIR_NS, name); 36494 } 36495 } 36496 36497 protected void composeValueSetConceptReferenceComponentElements(ValueSet.ConceptReferenceComponent element) throws IOException { 36498 composeBackboneElements(element); 36499 if (element.hasCodeElement()) { 36500 composeCode("code", element.getCodeElement()); 36501 } 36502 if (element.hasDisplayElement()) { 36503 composeString("display", element.getDisplayElement()); 36504 } 36505 if (element.hasDesignation()) { 36506 for (ValueSet.ConceptReferenceDesignationComponent e : element.getDesignation()) 36507 composeValueSetConceptReferenceDesignationComponent("designation", e); 36508 } 36509 } 36510 36511 protected void composeValueSetConceptReferenceDesignationComponent(String name, ValueSet.ConceptReferenceDesignationComponent element) throws IOException { 36512 if (element != null) { 36513 composeElementAttributes(element); 36514 xml.enter(FHIR_NS, name); 36515 composeValueSetConceptReferenceDesignationComponentElements(element); 36516 composeElementClose(element); 36517 xml.exit(FHIR_NS, name); 36518 } 36519 } 36520 36521 protected void composeValueSetConceptReferenceDesignationComponentElements(ValueSet.ConceptReferenceDesignationComponent element) throws IOException { 36522 composeBackboneElements(element); 36523 if (element.hasLanguageElement()) { 36524 composeCode("language", element.getLanguageElement()); 36525 } 36526 if (element.hasUse()) { 36527 composeCoding("use", element.getUse()); 36528 } 36529 if (element.hasValueElement()) { 36530 composeString("value", element.getValueElement()); 36531 } 36532 } 36533 36534 protected void composeValueSetConceptSetFilterComponent(String name, ValueSet.ConceptSetFilterComponent element) throws IOException { 36535 if (element != null) { 36536 composeElementAttributes(element); 36537 xml.enter(FHIR_NS, name); 36538 composeValueSetConceptSetFilterComponentElements(element); 36539 composeElementClose(element); 36540 xml.exit(FHIR_NS, name); 36541 } 36542 } 36543 36544 protected void composeValueSetConceptSetFilterComponentElements(ValueSet.ConceptSetFilterComponent element) throws IOException { 36545 composeBackboneElements(element); 36546 if (element.hasPropertyElement()) { 36547 composeCode("property", element.getPropertyElement()); 36548 } 36549 if (element.hasOpElement()) 36550 composeEnumeration("op", element.getOpElement(), new ValueSet.FilterOperatorEnumFactory()); 36551 if (element.hasValueElement()) { 36552 composeCode("value", element.getValueElement()); 36553 } 36554 } 36555 36556 protected void composeValueSetValueSetExpansionComponent(String name, ValueSet.ValueSetExpansionComponent element) throws IOException { 36557 if (element != null) { 36558 composeElementAttributes(element); 36559 xml.enter(FHIR_NS, name); 36560 composeValueSetValueSetExpansionComponentElements(element); 36561 composeElementClose(element); 36562 xml.exit(FHIR_NS, name); 36563 } 36564 } 36565 36566 protected void composeValueSetValueSetExpansionComponentElements(ValueSet.ValueSetExpansionComponent element) throws IOException { 36567 composeBackboneElements(element); 36568 if (element.hasIdentifierElement()) { 36569 composeUri("identifier", element.getIdentifierElement()); 36570 } 36571 if (element.hasTimestampElement()) { 36572 composeDateTime("timestamp", element.getTimestampElement()); 36573 } 36574 if (element.hasTotalElement()) { 36575 composeInteger("total", element.getTotalElement()); 36576 } 36577 if (element.hasOffsetElement()) { 36578 composeInteger("offset", element.getOffsetElement()); 36579 } 36580 if (element.hasParameter()) { 36581 for (ValueSet.ValueSetExpansionParameterComponent e : element.getParameter()) 36582 composeValueSetValueSetExpansionParameterComponent("parameter", e); 36583 } 36584 if (element.hasContains()) { 36585 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 36586 composeValueSetValueSetExpansionContainsComponent("contains", e); 36587 } 36588 } 36589 36590 protected void composeValueSetValueSetExpansionParameterComponent(String name, ValueSet.ValueSetExpansionParameterComponent element) throws IOException { 36591 if (element != null) { 36592 composeElementAttributes(element); 36593 xml.enter(FHIR_NS, name); 36594 composeValueSetValueSetExpansionParameterComponentElements(element); 36595 composeElementClose(element); 36596 xml.exit(FHIR_NS, name); 36597 } 36598 } 36599 36600 protected void composeValueSetValueSetExpansionParameterComponentElements(ValueSet.ValueSetExpansionParameterComponent element) throws IOException { 36601 composeBackboneElements(element); 36602 if (element.hasNameElement()) { 36603 composeString("name", element.getNameElement()); 36604 } 36605 if (element.hasValue()) { 36606 composeType("value", element.getValue()); 36607 } } 36608 36609 protected void composeValueSetValueSetExpansionContainsComponent(String name, ValueSet.ValueSetExpansionContainsComponent element) throws IOException { 36610 if (element != null) { 36611 composeElementAttributes(element); 36612 xml.enter(FHIR_NS, name); 36613 composeValueSetValueSetExpansionContainsComponentElements(element); 36614 composeElementClose(element); 36615 xml.exit(FHIR_NS, name); 36616 } 36617 } 36618 36619 protected void composeValueSetValueSetExpansionContainsComponentElements(ValueSet.ValueSetExpansionContainsComponent element) throws IOException { 36620 composeBackboneElements(element); 36621 if (element.hasSystemElement()) { 36622 composeUri("system", element.getSystemElement()); 36623 } 36624 if (element.hasAbstractElement()) { 36625 composeBoolean("abstract", element.getAbstractElement()); 36626 } 36627 if (element.hasInactiveElement()) { 36628 composeBoolean("inactive", element.getInactiveElement()); 36629 } 36630 if (element.hasVersionElement()) { 36631 composeString("version", element.getVersionElement()); 36632 } 36633 if (element.hasCodeElement()) { 36634 composeCode("code", element.getCodeElement()); 36635 } 36636 if (element.hasDisplayElement()) { 36637 composeString("display", element.getDisplayElement()); 36638 } 36639 if (element.hasDesignation()) { 36640 for (ValueSet.ConceptReferenceDesignationComponent e : element.getDesignation()) 36641 composeValueSetConceptReferenceDesignationComponent("designation", e); 36642 } 36643 if (element.hasContains()) { 36644 for (ValueSet.ValueSetExpansionContainsComponent e : element.getContains()) 36645 composeValueSetValueSetExpansionContainsComponent("contains", e); 36646 } 36647 } 36648 36649 protected void composeVisionPrescription(String name, VisionPrescription element) throws IOException { 36650 if (element != null) { 36651 composeDomainResourceAttributes(element); 36652 xml.enter(FHIR_NS, name); 36653 composeVisionPrescriptionElements(element); 36654 composeElementClose(element); 36655 xml.exit(FHIR_NS, name); 36656 } 36657 } 36658 36659 protected void composeVisionPrescriptionElements(VisionPrescription element) throws IOException { 36660 composeDomainResourceElements(element); 36661 if (element.hasIdentifier()) { 36662 for (Identifier e : element.getIdentifier()) 36663 composeIdentifier("identifier", e); 36664 } 36665 if (element.hasStatusElement()) 36666 composeEnumeration("status", element.getStatusElement(), new VisionPrescription.VisionStatusEnumFactory()); 36667 if (element.hasPatient()) { 36668 composeReference("patient", element.getPatient()); 36669 } 36670 if (element.hasEncounter()) { 36671 composeReference("encounter", element.getEncounter()); 36672 } 36673 if (element.hasDateWrittenElement()) { 36674 composeDateTime("dateWritten", element.getDateWrittenElement()); 36675 } 36676 if (element.hasPrescriber()) { 36677 composeReference("prescriber", element.getPrescriber()); 36678 } 36679 if (element.hasReason()) { 36680 composeType("reason", element.getReason()); 36681 } if (element.hasDispense()) { 36682 for (VisionPrescription.VisionPrescriptionDispenseComponent e : element.getDispense()) 36683 composeVisionPrescriptionVisionPrescriptionDispenseComponent("dispense", e); 36684 } 36685 } 36686 36687 protected void composeVisionPrescriptionVisionPrescriptionDispenseComponent(String name, VisionPrescription.VisionPrescriptionDispenseComponent element) throws IOException { 36688 if (element != null) { 36689 composeElementAttributes(element); 36690 xml.enter(FHIR_NS, name); 36691 composeVisionPrescriptionVisionPrescriptionDispenseComponentElements(element); 36692 composeElementClose(element); 36693 xml.exit(FHIR_NS, name); 36694 } 36695 } 36696 36697 protected void composeVisionPrescriptionVisionPrescriptionDispenseComponentElements(VisionPrescription.VisionPrescriptionDispenseComponent element) throws IOException { 36698 composeBackboneElements(element); 36699 if (element.hasProduct()) { 36700 composeCodeableConcept("product", element.getProduct()); 36701 } 36702 if (element.hasEyeElement()) 36703 composeEnumeration("eye", element.getEyeElement(), new VisionPrescription.VisionEyesEnumFactory()); 36704 if (element.hasSphereElement()) { 36705 composeDecimal("sphere", element.getSphereElement()); 36706 } 36707 if (element.hasCylinderElement()) { 36708 composeDecimal("cylinder", element.getCylinderElement()); 36709 } 36710 if (element.hasAxisElement()) { 36711 composeInteger("axis", element.getAxisElement()); 36712 } 36713 if (element.hasPrismElement()) { 36714 composeDecimal("prism", element.getPrismElement()); 36715 } 36716 if (element.hasBaseElement()) 36717 composeEnumeration("base", element.getBaseElement(), new VisionPrescription.VisionBaseEnumFactory()); 36718 if (element.hasAddElement()) { 36719 composeDecimal("add", element.getAddElement()); 36720 } 36721 if (element.hasPowerElement()) { 36722 composeDecimal("power", element.getPowerElement()); 36723 } 36724 if (element.hasBackCurveElement()) { 36725 composeDecimal("backCurve", element.getBackCurveElement()); 36726 } 36727 if (element.hasDiameterElement()) { 36728 composeDecimal("diameter", element.getDiameterElement()); 36729 } 36730 if (element.hasDuration()) { 36731 composeSimpleQuantity("duration", element.getDuration()); 36732 } 36733 if (element.hasColorElement()) { 36734 composeString("color", element.getColorElement()); 36735 } 36736 if (element.hasBrandElement()) { 36737 composeString("brand", element.getBrandElement()); 36738 } 36739 if (element.hasNote()) { 36740 for (Annotation e : element.getNote()) 36741 composeAnnotation("note", e); 36742 } 36743 } 36744 36745 @Override 36746 protected void composeResource(Resource resource) throws IOException { 36747 if (resource instanceof Parameters) 36748 composeParameters("Parameters", (Parameters)resource); 36749 else if (resource instanceof Account) 36750 composeAccount("Account", (Account)resource); 36751 else if (resource instanceof ActivityDefinition) 36752 composeActivityDefinition("ActivityDefinition", (ActivityDefinition)resource); 36753 else if (resource instanceof AdverseEvent) 36754 composeAdverseEvent("AdverseEvent", (AdverseEvent)resource); 36755 else if (resource instanceof AllergyIntolerance) 36756 composeAllergyIntolerance("AllergyIntolerance", (AllergyIntolerance)resource); 36757 else if (resource instanceof Appointment) 36758 composeAppointment("Appointment", (Appointment)resource); 36759 else if (resource instanceof AppointmentResponse) 36760 composeAppointmentResponse("AppointmentResponse", (AppointmentResponse)resource); 36761 else if (resource instanceof AuditEvent) 36762 composeAuditEvent("AuditEvent", (AuditEvent)resource); 36763 else if (resource instanceof Basic) 36764 composeBasic("Basic", (Basic)resource); 36765 else if (resource instanceof Binary) 36766 composeBinary("Binary", (Binary)resource); 36767 else if (resource instanceof BodySite) 36768 composeBodySite("BodySite", (BodySite)resource); 36769 else if (resource instanceof Bundle) 36770 composeBundle("Bundle", (Bundle)resource); 36771 else if (resource instanceof CapabilityStatement) 36772 composeCapabilityStatement("CapabilityStatement", (CapabilityStatement)resource); 36773 else if (resource instanceof CarePlan) 36774 composeCarePlan("CarePlan", (CarePlan)resource); 36775 else if (resource instanceof CareTeam) 36776 composeCareTeam("CareTeam", (CareTeam)resource); 36777 else if (resource instanceof ChargeItem) 36778 composeChargeItem("ChargeItem", (ChargeItem)resource); 36779 else if (resource instanceof Claim) 36780 composeClaim("Claim", (Claim)resource); 36781 else if (resource instanceof ClaimResponse) 36782 composeClaimResponse("ClaimResponse", (ClaimResponse)resource); 36783 else if (resource instanceof ClinicalImpression) 36784 composeClinicalImpression("ClinicalImpression", (ClinicalImpression)resource); 36785 else if (resource instanceof CodeSystem) 36786 composeCodeSystem("CodeSystem", (CodeSystem)resource); 36787 else if (resource instanceof Communication) 36788 composeCommunication("Communication", (Communication)resource); 36789 else if (resource instanceof CommunicationRequest) 36790 composeCommunicationRequest("CommunicationRequest", (CommunicationRequest)resource); 36791 else if (resource instanceof CompartmentDefinition) 36792 composeCompartmentDefinition("CompartmentDefinition", (CompartmentDefinition)resource); 36793 else if (resource instanceof Composition) 36794 composeComposition("Composition", (Composition)resource); 36795 else if (resource instanceof ConceptMap) 36796 composeConceptMap("ConceptMap", (ConceptMap)resource); 36797 else if (resource instanceof Condition) 36798 composeCondition("Condition", (Condition)resource); 36799 else if (resource instanceof Consent) 36800 composeConsent("Consent", (Consent)resource); 36801 else if (resource instanceof Contract) 36802 composeContract("Contract", (Contract)resource); 36803 else if (resource instanceof Coverage) 36804 composeCoverage("Coverage", (Coverage)resource); 36805 else if (resource instanceof DataElement) 36806 composeDataElement("DataElement", (DataElement)resource); 36807 else if (resource instanceof DetectedIssue) 36808 composeDetectedIssue("DetectedIssue", (DetectedIssue)resource); 36809 else if (resource instanceof Device) 36810 composeDevice("Device", (Device)resource); 36811 else if (resource instanceof DeviceComponent) 36812 composeDeviceComponent("DeviceComponent", (DeviceComponent)resource); 36813 else if (resource instanceof DeviceMetric) 36814 composeDeviceMetric("DeviceMetric", (DeviceMetric)resource); 36815 else if (resource instanceof DeviceRequest) 36816 composeDeviceRequest("DeviceRequest", (DeviceRequest)resource); 36817 else if (resource instanceof DeviceUseStatement) 36818 composeDeviceUseStatement("DeviceUseStatement", (DeviceUseStatement)resource); 36819 else if (resource instanceof DiagnosticReport) 36820 composeDiagnosticReport("DiagnosticReport", (DiagnosticReport)resource); 36821 else if (resource instanceof DocumentManifest) 36822 composeDocumentManifest("DocumentManifest", (DocumentManifest)resource); 36823 else if (resource instanceof DocumentReference) 36824 composeDocumentReference("DocumentReference", (DocumentReference)resource); 36825 else if (resource instanceof EligibilityRequest) 36826 composeEligibilityRequest("EligibilityRequest", (EligibilityRequest)resource); 36827 else if (resource instanceof EligibilityResponse) 36828 composeEligibilityResponse("EligibilityResponse", (EligibilityResponse)resource); 36829 else if (resource instanceof Encounter) 36830 composeEncounter("Encounter", (Encounter)resource); 36831 else if (resource instanceof Endpoint) 36832 composeEndpoint("Endpoint", (Endpoint)resource); 36833 else if (resource instanceof EnrollmentRequest) 36834 composeEnrollmentRequest("EnrollmentRequest", (EnrollmentRequest)resource); 36835 else if (resource instanceof EnrollmentResponse) 36836 composeEnrollmentResponse("EnrollmentResponse", (EnrollmentResponse)resource); 36837 else if (resource instanceof EpisodeOfCare) 36838 composeEpisodeOfCare("EpisodeOfCare", (EpisodeOfCare)resource); 36839 else if (resource instanceof ExpansionProfile) 36840 composeExpansionProfile("ExpansionProfile", (ExpansionProfile)resource); 36841 else if (resource instanceof ExplanationOfBenefit) 36842 composeExplanationOfBenefit("ExplanationOfBenefit", (ExplanationOfBenefit)resource); 36843 else if (resource instanceof FamilyMemberHistory) 36844 composeFamilyMemberHistory("FamilyMemberHistory", (FamilyMemberHistory)resource); 36845 else if (resource instanceof Flag) 36846 composeFlag("Flag", (Flag)resource); 36847 else if (resource instanceof Goal) 36848 composeGoal("Goal", (Goal)resource); 36849 else if (resource instanceof GraphDefinition) 36850 composeGraphDefinition("GraphDefinition", (GraphDefinition)resource); 36851 else if (resource instanceof Group) 36852 composeGroup("Group", (Group)resource); 36853 else if (resource instanceof GuidanceResponse) 36854 composeGuidanceResponse("GuidanceResponse", (GuidanceResponse)resource); 36855 else if (resource instanceof HealthcareService) 36856 composeHealthcareService("HealthcareService", (HealthcareService)resource); 36857 else if (resource instanceof ImagingManifest) 36858 composeImagingManifest("ImagingManifest", (ImagingManifest)resource); 36859 else if (resource instanceof ImagingStudy) 36860 composeImagingStudy("ImagingStudy", (ImagingStudy)resource); 36861 else if (resource instanceof Immunization) 36862 composeImmunization("Immunization", (Immunization)resource); 36863 else if (resource instanceof ImmunizationRecommendation) 36864 composeImmunizationRecommendation("ImmunizationRecommendation", (ImmunizationRecommendation)resource); 36865 else if (resource instanceof ImplementationGuide) 36866 composeImplementationGuide("ImplementationGuide", (ImplementationGuide)resource); 36867 else if (resource instanceof Library) 36868 composeLibrary("Library", (Library)resource); 36869 else if (resource instanceof Linkage) 36870 composeLinkage("Linkage", (Linkage)resource); 36871 else if (resource instanceof ListResource) 36872 composeListResource("List", (ListResource)resource); 36873 else if (resource instanceof Location) 36874 composeLocation("Location", (Location)resource); 36875 else if (resource instanceof Measure) 36876 composeMeasure("Measure", (Measure)resource); 36877 else if (resource instanceof MeasureReport) 36878 composeMeasureReport("MeasureReport", (MeasureReport)resource); 36879 else if (resource instanceof Media) 36880 composeMedia("Media", (Media)resource); 36881 else if (resource instanceof Medication) 36882 composeMedication("Medication", (Medication)resource); 36883 else if (resource instanceof MedicationAdministration) 36884 composeMedicationAdministration("MedicationAdministration", (MedicationAdministration)resource); 36885 else if (resource instanceof MedicationDispense) 36886 composeMedicationDispense("MedicationDispense", (MedicationDispense)resource); 36887 else if (resource instanceof MedicationRequest) 36888 composeMedicationRequest("MedicationRequest", (MedicationRequest)resource); 36889 else if (resource instanceof MedicationStatement) 36890 composeMedicationStatement("MedicationStatement", (MedicationStatement)resource); 36891 else if (resource instanceof MessageDefinition) 36892 composeMessageDefinition("MessageDefinition", (MessageDefinition)resource); 36893 else if (resource instanceof MessageHeader) 36894 composeMessageHeader("MessageHeader", (MessageHeader)resource); 36895 else if (resource instanceof NamingSystem) 36896 composeNamingSystem("NamingSystem", (NamingSystem)resource); 36897 else if (resource instanceof NutritionOrder) 36898 composeNutritionOrder("NutritionOrder", (NutritionOrder)resource); 36899 else if (resource instanceof Observation) 36900 composeObservation("Observation", (Observation)resource); 36901 else if (resource instanceof OperationDefinition) 36902 composeOperationDefinition("OperationDefinition", (OperationDefinition)resource); 36903 else if (resource instanceof OperationOutcome) 36904 composeOperationOutcome("OperationOutcome", (OperationOutcome)resource); 36905 else if (resource instanceof Organization) 36906 composeOrganization("Organization", (Organization)resource); 36907 else if (resource instanceof Patient) 36908 composePatient("Patient", (Patient)resource); 36909 else if (resource instanceof PaymentNotice) 36910 composePaymentNotice("PaymentNotice", (PaymentNotice)resource); 36911 else if (resource instanceof PaymentReconciliation) 36912 composePaymentReconciliation("PaymentReconciliation", (PaymentReconciliation)resource); 36913 else if (resource instanceof Person) 36914 composePerson("Person", (Person)resource); 36915 else if (resource instanceof PlanDefinition) 36916 composePlanDefinition("PlanDefinition", (PlanDefinition)resource); 36917 else if (resource instanceof Practitioner) 36918 composePractitioner("Practitioner", (Practitioner)resource); 36919 else if (resource instanceof PractitionerRole) 36920 composePractitionerRole("PractitionerRole", (PractitionerRole)resource); 36921 else if (resource instanceof Procedure) 36922 composeProcedure("Procedure", (Procedure)resource); 36923 else if (resource instanceof ProcedureRequest) 36924 composeProcedureRequest("ProcedureRequest", (ProcedureRequest)resource); 36925 else if (resource instanceof ProcessRequest) 36926 composeProcessRequest("ProcessRequest", (ProcessRequest)resource); 36927 else if (resource instanceof ProcessResponse) 36928 composeProcessResponse("ProcessResponse", (ProcessResponse)resource); 36929 else if (resource instanceof Provenance) 36930 composeProvenance("Provenance", (Provenance)resource); 36931 else if (resource instanceof Questionnaire) 36932 composeQuestionnaire("Questionnaire", (Questionnaire)resource); 36933 else if (resource instanceof QuestionnaireResponse) 36934 composeQuestionnaireResponse("QuestionnaireResponse", (QuestionnaireResponse)resource); 36935 else if (resource instanceof ReferralRequest) 36936 composeReferralRequest("ReferralRequest", (ReferralRequest)resource); 36937 else if (resource instanceof RelatedPerson) 36938 composeRelatedPerson("RelatedPerson", (RelatedPerson)resource); 36939 else if (resource instanceof RequestGroup) 36940 composeRequestGroup("RequestGroup", (RequestGroup)resource); 36941 else if (resource instanceof ResearchStudy) 36942 composeResearchStudy("ResearchStudy", (ResearchStudy)resource); 36943 else if (resource instanceof ResearchSubject) 36944 composeResearchSubject("ResearchSubject", (ResearchSubject)resource); 36945 else if (resource instanceof RiskAssessment) 36946 composeRiskAssessment("RiskAssessment", (RiskAssessment)resource); 36947 else if (resource instanceof Schedule) 36948 composeSchedule("Schedule", (Schedule)resource); 36949 else if (resource instanceof SearchParameter) 36950 composeSearchParameter("SearchParameter", (SearchParameter)resource); 36951 else if (resource instanceof Sequence) 36952 composeSequence("Sequence", (Sequence)resource); 36953 else if (resource instanceof ServiceDefinition) 36954 composeServiceDefinition("ServiceDefinition", (ServiceDefinition)resource); 36955 else if (resource instanceof Slot) 36956 composeSlot("Slot", (Slot)resource); 36957 else if (resource instanceof Specimen) 36958 composeSpecimen("Specimen", (Specimen)resource); 36959 else if (resource instanceof StructureDefinition) 36960 composeStructureDefinition("StructureDefinition", (StructureDefinition)resource); 36961 else if (resource instanceof StructureMap) 36962 composeStructureMap("StructureMap", (StructureMap)resource); 36963 else if (resource instanceof Subscription) 36964 composeSubscription("Subscription", (Subscription)resource); 36965 else if (resource instanceof Substance) 36966 composeSubstance("Substance", (Substance)resource); 36967 else if (resource instanceof SupplyDelivery) 36968 composeSupplyDelivery("SupplyDelivery", (SupplyDelivery)resource); 36969 else if (resource instanceof SupplyRequest) 36970 composeSupplyRequest("SupplyRequest", (SupplyRequest)resource); 36971 else if (resource instanceof Task) 36972 composeTask("Task", (Task)resource); 36973 else if (resource instanceof TestReport) 36974 composeTestReport("TestReport", (TestReport)resource); 36975 else if (resource instanceof TestScript) 36976 composeTestScript("TestScript", (TestScript)resource); 36977 else if (resource instanceof ValueSet) 36978 composeValueSet("ValueSet", (ValueSet)resource); 36979 else if (resource instanceof VisionPrescription) 36980 composeVisionPrescription("VisionPrescription", (VisionPrescription)resource); 36981 else if (resource instanceof Binary) 36982 composeBinary("Binary", (Binary)resource); 36983 else 36984 throw new Error("Unhandled resource type "+resource.getClass().getName()); 36985 } 36986 36987 protected void composeResource(String name, Resource resource) throws IOException { 36988 if (resource instanceof Parameters) 36989 composeParameters(name, (Parameters)resource); 36990 else if (resource instanceof Account) 36991 composeAccount(name, (Account)resource); 36992 else if (resource instanceof ActivityDefinition) 36993 composeActivityDefinition(name, (ActivityDefinition)resource); 36994 else if (resource instanceof AdverseEvent) 36995 composeAdverseEvent(name, (AdverseEvent)resource); 36996 else if (resource instanceof AllergyIntolerance) 36997 composeAllergyIntolerance(name, (AllergyIntolerance)resource); 36998 else if (resource instanceof Appointment) 36999 composeAppointment(name, (Appointment)resource); 37000 else if (resource instanceof AppointmentResponse) 37001 composeAppointmentResponse(name, (AppointmentResponse)resource); 37002 else if (resource instanceof AuditEvent) 37003 composeAuditEvent(name, (AuditEvent)resource); 37004 else if (resource instanceof Basic) 37005 composeBasic(name, (Basic)resource); 37006 else if (resource instanceof Binary) 37007 composeBinary(name, (Binary)resource); 37008 else if (resource instanceof BodySite) 37009 composeBodySite(name, (BodySite)resource); 37010 else if (resource instanceof Bundle) 37011 composeBundle(name, (Bundle)resource); 37012 else if (resource instanceof CapabilityStatement) 37013 composeCapabilityStatement(name, (CapabilityStatement)resource); 37014 else if (resource instanceof CarePlan) 37015 composeCarePlan(name, (CarePlan)resource); 37016 else if (resource instanceof CareTeam) 37017 composeCareTeam(name, (CareTeam)resource); 37018 else if (resource instanceof ChargeItem) 37019 composeChargeItem(name, (ChargeItem)resource); 37020 else if (resource instanceof Claim) 37021 composeClaim(name, (Claim)resource); 37022 else if (resource instanceof ClaimResponse) 37023 composeClaimResponse(name, (ClaimResponse)resource); 37024 else if (resource instanceof ClinicalImpression) 37025 composeClinicalImpression(name, (ClinicalImpression)resource); 37026 else if (resource instanceof CodeSystem) 37027 composeCodeSystem(name, (CodeSystem)resource); 37028 else if (resource instanceof Communication) 37029 composeCommunication(name, (Communication)resource); 37030 else if (resource instanceof CommunicationRequest) 37031 composeCommunicationRequest(name, (CommunicationRequest)resource); 37032 else if (resource instanceof CompartmentDefinition) 37033 composeCompartmentDefinition(name, (CompartmentDefinition)resource); 37034 else if (resource instanceof Composition) 37035 composeComposition(name, (Composition)resource); 37036 else if (resource instanceof ConceptMap) 37037 composeConceptMap(name, (ConceptMap)resource); 37038 else if (resource instanceof Condition) 37039 composeCondition(name, (Condition)resource); 37040 else if (resource instanceof Consent) 37041 composeConsent(name, (Consent)resource); 37042 else if (resource instanceof Contract) 37043 composeContract(name, (Contract)resource); 37044 else if (resource instanceof Coverage) 37045 composeCoverage(name, (Coverage)resource); 37046 else if (resource instanceof DataElement) 37047 composeDataElement(name, (DataElement)resource); 37048 else if (resource instanceof DetectedIssue) 37049 composeDetectedIssue(name, (DetectedIssue)resource); 37050 else if (resource instanceof Device) 37051 composeDevice(name, (Device)resource); 37052 else if (resource instanceof DeviceComponent) 37053 composeDeviceComponent(name, (DeviceComponent)resource); 37054 else if (resource instanceof DeviceMetric) 37055 composeDeviceMetric(name, (DeviceMetric)resource); 37056 else if (resource instanceof DeviceRequest) 37057 composeDeviceRequest(name, (DeviceRequest)resource); 37058 else if (resource instanceof DeviceUseStatement) 37059 composeDeviceUseStatement(name, (DeviceUseStatement)resource); 37060 else if (resource instanceof DiagnosticReport) 37061 composeDiagnosticReport(name, (DiagnosticReport)resource); 37062 else if (resource instanceof DocumentManifest) 37063 composeDocumentManifest(name, (DocumentManifest)resource); 37064 else if (resource instanceof DocumentReference) 37065 composeDocumentReference(name, (DocumentReference)resource); 37066 else if (resource instanceof EligibilityRequest) 37067 composeEligibilityRequest(name, (EligibilityRequest)resource); 37068 else if (resource instanceof EligibilityResponse) 37069 composeEligibilityResponse(name, (EligibilityResponse)resource); 37070 else if (resource instanceof Encounter) 37071 composeEncounter(name, (Encounter)resource); 37072 else if (resource instanceof Endpoint) 37073 composeEndpoint(name, (Endpoint)resource); 37074 else if (resource instanceof EnrollmentRequest) 37075 composeEnrollmentRequest(name, (EnrollmentRequest)resource); 37076 else if (resource instanceof EnrollmentResponse) 37077 composeEnrollmentResponse(name, (EnrollmentResponse)resource); 37078 else if (resource instanceof EpisodeOfCare) 37079 composeEpisodeOfCare(name, (EpisodeOfCare)resource); 37080 else if (resource instanceof ExpansionProfile) 37081 composeExpansionProfile(name, (ExpansionProfile)resource); 37082 else if (resource instanceof ExplanationOfBenefit) 37083 composeExplanationOfBenefit(name, (ExplanationOfBenefit)resource); 37084 else if (resource instanceof FamilyMemberHistory) 37085 composeFamilyMemberHistory(name, (FamilyMemberHistory)resource); 37086 else if (resource instanceof Flag) 37087 composeFlag(name, (Flag)resource); 37088 else if (resource instanceof Goal) 37089 composeGoal(name, (Goal)resource); 37090 else if (resource instanceof GraphDefinition) 37091 composeGraphDefinition(name, (GraphDefinition)resource); 37092 else if (resource instanceof Group) 37093 composeGroup(name, (Group)resource); 37094 else if (resource instanceof GuidanceResponse) 37095 composeGuidanceResponse(name, (GuidanceResponse)resource); 37096 else if (resource instanceof HealthcareService) 37097 composeHealthcareService(name, (HealthcareService)resource); 37098 else if (resource instanceof ImagingManifest) 37099 composeImagingManifest(name, (ImagingManifest)resource); 37100 else if (resource instanceof ImagingStudy) 37101 composeImagingStudy(name, (ImagingStudy)resource); 37102 else if (resource instanceof Immunization) 37103 composeImmunization(name, (Immunization)resource); 37104 else if (resource instanceof ImmunizationRecommendation) 37105 composeImmunizationRecommendation(name, (ImmunizationRecommendation)resource); 37106 else if (resource instanceof ImplementationGuide) 37107 composeImplementationGuide(name, (ImplementationGuide)resource); 37108 else if (resource instanceof Library) 37109 composeLibrary(name, (Library)resource); 37110 else if (resource instanceof Linkage) 37111 composeLinkage(name, (Linkage)resource); 37112 else if (resource instanceof ListResource) 37113 composeListResource(name, (ListResource)resource); 37114 else if (resource instanceof Location) 37115 composeLocation(name, (Location)resource); 37116 else if (resource instanceof Measure) 37117 composeMeasure(name, (Measure)resource); 37118 else if (resource instanceof MeasureReport) 37119 composeMeasureReport(name, (MeasureReport)resource); 37120 else if (resource instanceof Media) 37121 composeMedia(name, (Media)resource); 37122 else if (resource instanceof Medication) 37123 composeMedication(name, (Medication)resource); 37124 else if (resource instanceof MedicationAdministration) 37125 composeMedicationAdministration(name, (MedicationAdministration)resource); 37126 else if (resource instanceof MedicationDispense) 37127 composeMedicationDispense(name, (MedicationDispense)resource); 37128 else if (resource instanceof MedicationRequest) 37129 composeMedicationRequest(name, (MedicationRequest)resource); 37130 else if (resource instanceof MedicationStatement) 37131 composeMedicationStatement(name, (MedicationStatement)resource); 37132 else if (resource instanceof MessageDefinition) 37133 composeMessageDefinition(name, (MessageDefinition)resource); 37134 else if (resource instanceof MessageHeader) 37135 composeMessageHeader(name, (MessageHeader)resource); 37136 else if (resource instanceof NamingSystem) 37137 composeNamingSystem(name, (NamingSystem)resource); 37138 else if (resource instanceof NutritionOrder) 37139 composeNutritionOrder(name, (NutritionOrder)resource); 37140 else if (resource instanceof Observation) 37141 composeObservation(name, (Observation)resource); 37142 else if (resource instanceof OperationDefinition) 37143 composeOperationDefinition(name, (OperationDefinition)resource); 37144 else if (resource instanceof OperationOutcome) 37145 composeOperationOutcome(name, (OperationOutcome)resource); 37146 else if (resource instanceof Organization) 37147 composeOrganization(name, (Organization)resource); 37148 else if (resource instanceof Patient) 37149 composePatient(name, (Patient)resource); 37150 else if (resource instanceof PaymentNotice) 37151 composePaymentNotice(name, (PaymentNotice)resource); 37152 else if (resource instanceof PaymentReconciliation) 37153 composePaymentReconciliation(name, (PaymentReconciliation)resource); 37154 else if (resource instanceof Person) 37155 composePerson(name, (Person)resource); 37156 else if (resource instanceof PlanDefinition) 37157 composePlanDefinition(name, (PlanDefinition)resource); 37158 else if (resource instanceof Practitioner) 37159 composePractitioner(name, (Practitioner)resource); 37160 else if (resource instanceof PractitionerRole) 37161 composePractitionerRole(name, (PractitionerRole)resource); 37162 else if (resource instanceof Procedure) 37163 composeProcedure(name, (Procedure)resource); 37164 else if (resource instanceof ProcedureRequest) 37165 composeProcedureRequest(name, (ProcedureRequest)resource); 37166 else if (resource instanceof ProcessRequest) 37167 composeProcessRequest(name, (ProcessRequest)resource); 37168 else if (resource instanceof ProcessResponse) 37169 composeProcessResponse(name, (ProcessResponse)resource); 37170 else if (resource instanceof Provenance) 37171 composeProvenance(name, (Provenance)resource); 37172 else if (resource instanceof Questionnaire) 37173 composeQuestionnaire(name, (Questionnaire)resource); 37174 else if (resource instanceof QuestionnaireResponse) 37175 composeQuestionnaireResponse(name, (QuestionnaireResponse)resource); 37176 else if (resource instanceof ReferralRequest) 37177 composeReferralRequest(name, (ReferralRequest)resource); 37178 else if (resource instanceof RelatedPerson) 37179 composeRelatedPerson(name, (RelatedPerson)resource); 37180 else if (resource instanceof RequestGroup) 37181 composeRequestGroup(name, (RequestGroup)resource); 37182 else if (resource instanceof ResearchStudy) 37183 composeResearchStudy(name, (ResearchStudy)resource); 37184 else if (resource instanceof ResearchSubject) 37185 composeResearchSubject(name, (ResearchSubject)resource); 37186 else if (resource instanceof RiskAssessment) 37187 composeRiskAssessment(name, (RiskAssessment)resource); 37188 else if (resource instanceof Schedule) 37189 composeSchedule(name, (Schedule)resource); 37190 else if (resource instanceof SearchParameter) 37191 composeSearchParameter(name, (SearchParameter)resource); 37192 else if (resource instanceof Sequence) 37193 composeSequence(name, (Sequence)resource); 37194 else if (resource instanceof ServiceDefinition) 37195 composeServiceDefinition(name, (ServiceDefinition)resource); 37196 else if (resource instanceof Slot) 37197 composeSlot(name, (Slot)resource); 37198 else if (resource instanceof Specimen) 37199 composeSpecimen(name, (Specimen)resource); 37200 else if (resource instanceof StructureDefinition) 37201 composeStructureDefinition(name, (StructureDefinition)resource); 37202 else if (resource instanceof StructureMap) 37203 composeStructureMap(name, (StructureMap)resource); 37204 else if (resource instanceof Subscription) 37205 composeSubscription(name, (Subscription)resource); 37206 else if (resource instanceof Substance) 37207 composeSubstance(name, (Substance)resource); 37208 else if (resource instanceof SupplyDelivery) 37209 composeSupplyDelivery(name, (SupplyDelivery)resource); 37210 else if (resource instanceof SupplyRequest) 37211 composeSupplyRequest(name, (SupplyRequest)resource); 37212 else if (resource instanceof Task) 37213 composeTask(name, (Task)resource); 37214 else if (resource instanceof TestReport) 37215 composeTestReport(name, (TestReport)resource); 37216 else if (resource instanceof TestScript) 37217 composeTestScript(name, (TestScript)resource); 37218 else if (resource instanceof ValueSet) 37219 composeValueSet(name, (ValueSet)resource); 37220 else if (resource instanceof VisionPrescription) 37221 composeVisionPrescription(name, (VisionPrescription)resource); 37222 else if (resource instanceof Binary) 37223 composeBinary(name, (Binary)resource); 37224 else 37225 throw new Error("Unhandled resource type "+resource.getClass().getName()); 37226 } 37227 37228 protected void composeType(String prefix, Type type) throws IOException { 37229 if (type == null) 37230 ; 37231 else if (type instanceof SimpleQuantity) 37232 composeSimpleQuantity(prefix+"SimpleQuantity", (SimpleQuantity) type); 37233 else if (type instanceof Duration) 37234 composeDuration(prefix+"Duration", (Duration) type); 37235 else if (type instanceof Count) 37236 composeCount(prefix+"Count", (Count) type); 37237 else if (type instanceof Money) 37238 composeMoney(prefix+"Money", (Money) type); 37239 else if (type instanceof Distance) 37240 composeDistance(prefix+"Distance", (Distance) type); 37241 else if (type instanceof Age) 37242 composeAge(prefix+"Age", (Age) type); 37243 else if (type instanceof Reference) 37244 composeReference(prefix+"Reference", (Reference) type); 37245 else if (type instanceof Quantity) 37246 composeQuantity(prefix+"Quantity", (Quantity) type); 37247 else if (type instanceof Period) 37248 composePeriod(prefix+"Period", (Period) type); 37249 else if (type instanceof Attachment) 37250 composeAttachment(prefix+"Attachment", (Attachment) type); 37251 else if (type instanceof Range) 37252 composeRange(prefix+"Range", (Range) type); 37253 else if (type instanceof Annotation) 37254 composeAnnotation(prefix+"Annotation", (Annotation) type); 37255 else if (type instanceof Identifier) 37256 composeIdentifier(prefix+"Identifier", (Identifier) type); 37257 else if (type instanceof Coding) 37258 composeCoding(prefix+"Coding", (Coding) type); 37259 else if (type instanceof Signature) 37260 composeSignature(prefix+"Signature", (Signature) type); 37261 else if (type instanceof SampledData) 37262 composeSampledData(prefix+"SampledData", (SampledData) type); 37263 else if (type instanceof Ratio) 37264 composeRatio(prefix+"Ratio", (Ratio) type); 37265 else if (type instanceof CodeableConcept) 37266 composeCodeableConcept(prefix+"CodeableConcept", (CodeableConcept) type); 37267 else if (type instanceof Meta) 37268 composeMeta(prefix+"Meta", (Meta) type); 37269 else if (type instanceof Address) 37270 composeAddress(prefix+"Address", (Address) type); 37271 else if (type instanceof TriggerDefinition) 37272 composeTriggerDefinition(prefix+"TriggerDefinition", (TriggerDefinition) type); 37273 else if (type instanceof Contributor) 37274 composeContributor(prefix+"Contributor", (Contributor) type); 37275 else if (type instanceof DataRequirement) 37276 composeDataRequirement(prefix+"DataRequirement", (DataRequirement) type); 37277 else if (type instanceof Dosage) 37278 composeDosage(prefix+"Dosage", (Dosage) type); 37279 else if (type instanceof RelatedArtifact) 37280 composeRelatedArtifact(prefix+"RelatedArtifact", (RelatedArtifact) type); 37281 else if (type instanceof ContactDetail) 37282 composeContactDetail(prefix+"ContactDetail", (ContactDetail) type); 37283 else if (type instanceof HumanName) 37284 composeHumanName(prefix+"HumanName", (HumanName) type); 37285 else if (type instanceof ContactPoint) 37286 composeContactPoint(prefix+"ContactPoint", (ContactPoint) type); 37287 else if (type instanceof UsageContext) 37288 composeUsageContext(prefix+"UsageContext", (UsageContext) type); 37289 else if (type instanceof Timing) 37290 composeTiming(prefix+"Timing", (Timing) type); 37291 else if (type instanceof ElementDefinition) 37292 composeElementDefinition(prefix+"ElementDefinition", (ElementDefinition) type); 37293 else if (type instanceof ParameterDefinition) 37294 composeParameterDefinition(prefix+"ParameterDefinition", (ParameterDefinition) type); 37295 else if (type instanceof CodeType) 37296 composeCode(prefix+"Code", (CodeType) type); 37297 else if (type instanceof OidType) 37298 composeOid(prefix+"Oid", (OidType) type); 37299 else if (type instanceof UuidType) 37300 composeUuid(prefix+"Uuid", (UuidType) type); 37301 else if (type instanceof UnsignedIntType) 37302 composeUnsignedInt(prefix+"UnsignedInt", (UnsignedIntType) type); 37303 else if (type instanceof MarkdownType) 37304 composeMarkdown(prefix+"Markdown", (MarkdownType) type); 37305 else if (type instanceof IdType) 37306 composeId(prefix+"Id", (IdType) type); 37307 else if (type instanceof PositiveIntType) 37308 composePositiveInt(prefix+"PositiveInt", (PositiveIntType) type); 37309 else if (type instanceof DateType) 37310 composeDate(prefix+"Date", (DateType) type); 37311 else if (type instanceof DateTimeType) 37312 composeDateTime(prefix+"DateTime", (DateTimeType) type); 37313 else if (type instanceof StringType) 37314 composeString(prefix+"String", (StringType) type); 37315 else if (type instanceof IntegerType) 37316 composeInteger(prefix+"Integer", (IntegerType) type); 37317 else if (type instanceof UriType) 37318 composeUri(prefix+"Uri", (UriType) type); 37319 else if (type instanceof InstantType) 37320 composeInstant(prefix+"Instant", (InstantType) type); 37321 else if (type instanceof BooleanType) 37322 composeBoolean(prefix+"Boolean", (BooleanType) type); 37323 else if (type instanceof Base64BinaryType) 37324 composeBase64Binary(prefix+"Base64Binary", (Base64BinaryType) type); 37325 else if (type instanceof TimeType) 37326 composeTime(prefix+"Time", (TimeType) type); 37327 else if (type instanceof DecimalType) 37328 composeDecimal(prefix+"Decimal", (DecimalType) type); 37329 else 37330 throw new Error("Unhandled type"); 37331 } 37332 37333}